2 // Open Service Platform
3 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
5 // Licensed under the Apache License, Version 2.0 (the License);
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
9 // http://www.apache.org/licenses/LICENSE-2.0
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an "AS IS" BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
18 * @file InstallationContext.h
19 * @brief This is the header file for the %InstallationContext class.
21 * This header file contains the declarations of the %InstallationContext class.
23 #ifndef _INSTALLATION_CONTEXT_H_
24 #define _INSTALLATION_CONTEXT_H_
26 #include <FAppTypes.h>
27 #include <FSecCertX509CertificatePath.h>
29 #include "InstallerDefs.h"
30 #include "IInstallationStep.h"
31 #include "DrmLicense.h"
32 #include "InstallationContextData.h"
34 class IInstallationStep;
37 * @class InstallationContext
38 * @brief This class represents the class of InstallationContext.
41 * This class represents the class of InstallationContext.
44 class InstallationContext
47 InstallationContext(void);
48 virtual ~InstallationContext(void);
50 InstallerError Construct(void);
52 bool ChangeStep(InstallationStep step);
53 InstallerError Run(void);
55 InstallationStep GetCurrentInstallationStep(void);
56 void SetCurrentInstallationStep(InstallationStep step);
58 InstallerError GetError(void);
59 void SetError(InstallerError installerError);
61 InstallationState GetState(void);
62 void SetState(InstallationState installationState);
64 IInstallationStep* GetStep(void);
66 void SetInstallerOperation(InstallerOperation op);
67 InstallerOperation GetInstallerOperation(void) const;
69 bool IsContinue(void);
70 void SetContinue(bool cont);
72 Tizen::Base::String GetSignatureXmlPath(void);
73 Tizen::Base::String GetAuthorSignatureXmlPath(void);
75 const Tizen::Base::Collection::ArrayList* GetPrivilegeList(void) const;
76 void SetPrivilegeList(Tizen::Base::Collection::ArrayList* privilegeList);
78 Tizen::Base::Collection::ArrayList* GetContentDataList(void) const;
79 void SetContentDataList(Tizen::Base::Collection::ArrayList* pContentDataList);
82 InstallationContext(const InstallationContext& value);
83 InstallationContext& operator =(const InstallationContext& source);
85 IInstallationStep* __pStep;
86 DrmLicense* __pDrmLicense;
87 InstallerError __error;
88 InstallationStep __step;
90 InstallationState __state;
95 Tizen::Base::Collection::IListT<AppData *>* __pAppDataList;
100 bool __isHybridService;
101 bool __isVerificationMode;
105 InstallerOperation __operation;
106 InstallationStorage __storage;
107 RootCertificateType __rootCertType;
108 int __privilegeLevel;
109 int __packageNameType;
110 void* __pApp2ExtHandle;
112 Tizen::Base::Collection::ArrayList* __pPrivilegeList;
113 Tizen::Base::Collection::ArrayList* __pStringPrivilegeList;
114 Tizen::Base::Collection::ArrayList* __pContentDataList;
115 Tizen::Security::Cert::X509CertificatePath* __pAuthorCertPath;
116 Tizen::Security::Cert::X509CertificatePath* __pDistributorCertPath;
118 Tizen::Base::Collection::ArrayListT<Tizen::Base::String *>* __pAuthorCertList;
119 Tizen::Base::Collection::ArrayListT<Tizen::Base::String *>* __pDistributorCertList;
121 Tizen::Base::String __coreXmlPath;
122 Tizen::Base::String __inputPath;
123 Tizen::Base::String __packagePath;
124 Tizen::Base::String __licensePath;
125 Tizen::Base::String __temporaryDir;
126 Tizen::Base::String __installDir;
127 Tizen::Base::String __workingDir;
128 Tizen::App::PackageId __packageId;
129 Tizen::Base::String __version;
130 Tizen::Base::String __rootPath;
131 Tizen::Base::String __mainAppName;
132 Tizen::Base::String __apiVersion;
133 Tizen::Base::String __displayName;
134 Tizen::Base::String __privileges;
135 Tizen::Base::String __hmacPrivileges;
136 Tizen::Base::String __author;
137 Tizen::Base::String __url;
138 Tizen::Base::String __description;
142 }; // InstallationContext
144 #endif // _INSTALLATION_CONTEXT_H_