Disable view source for Developer Tools.
[chromium-blink-merge.git] / chrome / browser / mac / keystone_registration.h
blob3ef981d268695aa5ae35f91b9d5a6e647d5954c4
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CHROME_BROWSER_MAC_KEYSTONE_REGISTRATION_H_
6 #define CHROME_BROWSER_MAC_KEYSTONE_REGISTRATION_H_
8 #import <Foundation/Foundation.h>
9 #include <Security/Authorization.h>
11 // Declarations of the Keystone registration bits needed here. From
12 // KSRegistration.h.
14 namespace keystone_registration {
16 typedef enum {
17 kKSPathExistenceChecker,
18 } KSExistenceCheckerType;
20 typedef enum {
21 kKSRegistrationUserTicket,
22 kKSRegistrationSystemTicket,
23 kKSRegistrationDontKnowWhatKindOfTicket,
24 } KSRegistrationTicketType;
26 extern NSString* KSRegistrationVersionKey;
27 extern NSString* KSRegistrationExistenceCheckerTypeKey;
28 extern NSString* KSRegistrationExistenceCheckerStringKey;
29 extern NSString* KSRegistrationServerURLStringKey;
30 extern NSString* KSRegistrationPreserveTrustedTesterTokenKey;
31 extern NSString* KSRegistrationTagKey;
32 extern NSString* KSRegistrationTagPathKey;
33 extern NSString* KSRegistrationTagKeyKey;
34 extern NSString* KSRegistrationBrandPathKey;
35 extern NSString* KSRegistrationBrandKeyKey;
36 extern NSString* KSRegistrationVersionPathKey;
37 extern NSString* KSRegistrationVersionKeyKey;
39 extern NSString* KSRegistrationDidCompleteNotification;
40 extern NSString* KSRegistrationPromotionDidCompleteNotification;
42 extern NSString* KSRegistrationCheckForUpdateNotification;
43 extern NSString* KSRegistrationStatusKey;
44 extern NSString* KSRegistrationUpdateCheckErrorKey;
46 extern NSString* KSRegistrationStartUpdateNotification;
47 extern NSString* KSUpdateCheckSuccessfulKey;
48 extern NSString* KSUpdateCheckSuccessfullyInstalledKey;
50 extern NSString* KSRegistrationRemoveExistingTag;
51 #define KSRegistrationPreserveExistingTag nil
53 } // namespace keystone_registration
55 @interface KSRegistration : NSObject
57 + (id)registrationWithProductID:(NSString*)productID;
59 - (BOOL)registerWithParameters:(NSDictionary*)args;
61 - (BOOL)promoteWithParameters:(NSDictionary*)args
62 authorization:(AuthorizationRef)authorization;
64 - (void)setActive;
65 - (void)checkForUpdate;
66 - (void)startUpdate;
67 - (keystone_registration::KSRegistrationTicketType)ticketType;
69 @end // @interface KSRegistration
71 #endif // CHROME_BROWSER_MAC_KEYSTONE_REGISTRATION_H_