secureswitools/swisistools/source/xmlparser/xmlparser.h
changeset 25 98b66e4fb0be
parent 0 ba25891c3a9e
child 50 c6e8afe0ba85
child 60 245df5276b97
equal deleted inserted replaced
24:84a16765cd86 25:98b66e4fb0be
     1 /*
     1 /*
     2 * Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
     2 * Copyright (c) 2008-2010 Nokia Corporation and/or its subsidiary(-ies).
     3 * All rights reserved.
     3 * All rights reserved.
     4 * This component and the accompanying materials are made available
     4 * This component and the accompanying materials are made available
     5 * under the terms of the License "Eclipse Public License v1.0"
     5 * under the terms of the License "Eclipse Public License v1.0"
     6 * which accompanies this distribution, and is available
     6 * which accompanies this distribution, and is available
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
   111 {
   111 {
   112 	struct TScrEnvironmentDetails
   112 	struct TScrEnvironmentDetails
   113 			{
   113 			{
   114 		public:
   114 		public:
   115 			TScrEnvironmentDetails()
   115 			TScrEnvironmentDetails()
   116 			:iSifPluginUid(0),
   116 			:iSifPluginUid(0)
   117 			iInstallerSid(0),
       
   118 			iExecutionLayerSid(0)
       
   119 			{}
   117 			{}
   120 			
   118 			
   121 			class TLocalizedSoftwareTypeName
   119 			class TLocalizedSoftwareTypeName
   122 				{
   120 				{
   123 			public:
   121 			public:
   126 				{}
   124 				{}
   127 								
   125 								
   128 				int iLocale;
   126 				int iLocale;
   129 				std::wstring iName;
   127 				std::wstring iName;
   130 				};
   128 				};
       
   129 
       
   130             class TCustomAcessList
       
   131 				{
       
   132 			public:
       
   133 				TCustomAcessList()
       
   134 				:iAccessMode(1)
       
   135 				{}
       
   136 								
       
   137 				int iSecureId;
       
   138 				int iAccessMode;;
       
   139 				};
   131 			
   140 			
   132 			std::wstring iUniqueSoftwareTypeName;
   141 			std::wstring iUniqueSoftwareTypeName;
   133 			std::vector<TLocalizedSoftwareTypeName> iLocalizedSoftwareTypeNames;
   142 			std::vector<TLocalizedSoftwareTypeName> iLocalizedSoftwareTypeNames;
   134 			int iSifPluginUid;
   143 			int iSifPluginUid;
   135 			int iInstallerSid;
   144             std::wstring iLauncherExecutable;
   136 			int iExecutionLayerSid;
   145 			std::vector<TCustomAcessList> iCustomAcessList;
   137 			std::vector<std::wstring> iMIMEDetails;
   146 			std::vector<std::wstring> iMIMEDetails;
   138 			};
   147 			};
   139 
   148 
   140 		
   149 		
   141 	class TScrPreProvisionDetail
   150 	class TScrPreProvisionDetail
   216 		class TComponentDetails
   225 		class TComponentDetails
   217 			{
   226 			{
   218 			public:
   227 			public:
   219 			TComponentDetails()
   228 			TComponentDetails()
   220 
   229 
   221 			:iIsRemovable(1),
   230 			:iIsRomApplication(0),
       
   231 			iIsRemovable(1),
   222 			iSize(0),
   232 			iSize(0),
   223 			iScomoState(1),
   233 			iScomoState(1),
   224 			iOriginVerified(1),
   234 			iOriginVerified(1),
   225 			iIsHidden(0)
   235 			iIsHidden(0)
   226 			{}
   236 			{}
   236 				std::wstring iMajor;
   246 				std::wstring iMajor;
   237 				std::wstring iMinor;
   247 				std::wstring iMinor;
   238 				std::wstring iBuild;
   248 				std::wstring iBuild;
   239 				};
   249 				};
   240 
   250 
       
   251 			int iIsRomApplication;
   241 			int iIsRemovable;
   252 			int iIsRemovable;
   242 			__int64 iSize;
   253 			__int64 iSize;
   243 			int iScomoState;
   254 			int iScomoState;
   244 			std::wstring iGlobalId;
   255 			std::wstring iGlobalId;
   245 			TVersion iVersion;
   256 			TVersion iVersion;
   246 			int iOriginVerified;
   257 			int iOriginVerified;
   247 			int iIsHidden;
   258 			int iIsHidden;
   248 			};
   259 			};
   249 
   260 		
       
   261 		class TApplicationRegistrationInfo
       
   262 			{
       
   263 			public:
       
   264 				TApplicationRegistrationInfo()
       
   265 				{}
       
   266 
       
   267 				class TAppAttribute
       
   268 					{
       
   269 					public:
       
   270 					TAppAttribute()
       
   271 					:iIsIntValue(false),
       
   272 					iIsStr8Bit(false)
       
   273 					{}
       
   274 					std::wstring iName;
       
   275 					std::wstring iValue;
       
   276 					bool iIsIntValue;
       
   277 					int iIsStr8Bit;
       
   278 					};
       
   279 
       
   280 				class TDataType
       
   281 					{
       
   282 					public:
       
   283 					TDataType()
       
   284 					{}
       
   285 					int iPriority;
       
   286 					std::wstring iType;
       
   287 					};
       
   288 
       
   289 				class TOpaqueDataType
       
   290 					{
       
   291 					public:
       
   292 					TOpaqueDataType()
       
   293 					:iLocale(0)
       
   294 					{}
       
   295 					int iLocale;
       
   296 					int iServiceUid;
       
   297 					std::wstring iOpaqueData;
       
   298 					};
       
   299 
       
   300 				class TAppServiceInfo
       
   301 					{
       
   302 					public:
       
   303 					TAppServiceInfo()
       
   304 					{}
       
   305 					int iUid;
       
   306 					std::vector<TDataType> iDataType;
       
   307 					};
       
   308 
       
   309 				class TAppLocalizableInfo
       
   310 					{
       
   311 					public:
       
   312 					TAppLocalizableInfo()
       
   313 					{}
       
   314 
       
   315 					class TLocalizableAttribute
       
   316 						{
       
   317 						public:
       
   318 						TLocalizableAttribute()
       
   319 						:iIsIntValue(false),
       
   320 						iIsStr8Bit(false)
       
   321 						{}
       
   322 						std::wstring iName;
       
   323 						std::wstring iValue;
       
   324 						bool iIsIntValue;
       
   325 						int iIsStr8Bit;
       
   326 						};
       
   327 
       
   328 					class TViewData
       
   329 						{
       
   330 						public:
       
   331 						TViewData()
       
   332 						{}
       
   333 
       
   334 						class TViewDataAttributes
       
   335 						{
       
   336 						public:
       
   337 						TViewDataAttributes()
       
   338 						:iIsIntValue(false),
       
   339 						iIsStr8Bit(false)
       
   340 						{}
       
   341 						std::wstring iName;
       
   342 						std::wstring iValue;
       
   343 						bool iIsIntValue;
       
   344 						int iIsStr8Bit;
       
   345 						};
       
   346 						
       
   347 						std::vector<TViewDataAttributes> iViewDataAttributes;
       
   348 						};
       
   349 
       
   350 					std::vector<TLocalizableAttribute> iLocalizableAttribute;
       
   351 					std::vector<TViewData> iViewData;
       
   352 					};
       
   353 
       
   354 				class TAppProperty
       
   355 					{
       
   356 					public:
       
   357 					TAppProperty()
       
   358 					:iLocale(0),
       
   359 					iIntValue(0)
       
   360 					{}
       
   361 					int iLocale;
       
   362 					std::wstring iName;
       
   363 					int iServiceUid;
       
   364 					int iIntValue;
       
   365 					std::wstring iStrValue;
       
   366 					bool iIsStr8Bit;
       
   367 					};
       
   368 
       
   369 			std::vector<TAppAttribute> iApplicationAttribute;
       
   370 			std::vector<std::wstring> iFileOwnershipInfo;
       
   371 			std::vector<TAppServiceInfo> iApplicationServiceInfo;
       
   372 			std::vector<TAppLocalizableInfo> iApplicationLocalizableInfo;
       
   373 			std::vector<TAppProperty> iApplicationProperty;
       
   374 			std::vector<TOpaqueDataType> iOpaqueDataType;
       
   375 			};
       
   376 		
   250 		class TComponent
   377 		class TComponent
   251 			{
   378 			{
   252 			public:
   379 			public:
   253 			TComponent()
   380 			TComponent()
   254 			:iComponentDetails()
   381 			:iComponentDetails()
   256 
   383 
   257 			std::vector<TComponentLocalizable>	iComponentLocalizables;
   384 			std::vector<TComponentLocalizable>	iComponentLocalizables;
   258 			std::vector<TComponentProperty>		iComponentProperties;
   385 			std::vector<TComponentProperty>		iComponentProperties;
   259 			std::vector<TComponentFile>			iComponentFiles;
   386 			std::vector<TComponentFile>			iComponentFiles;
   260 			TComponentDependency iComponentDependency;
   387 			TComponentDependency iComponentDependency;
       
   388 			std::vector<TApplicationRegistrationInfo> iApplicationRegistrationInfo;
   261 			TComponentDetails iComponentDetails;
   389 			TComponentDetails iComponentDetails;
   262 			};
   390 			};
   263 
   391 
   264 		std::wstring iSoftwareTypeName;
   392 		std::wstring iSoftwareTypeName;
   265 		std::vector<TComponent> iComponents;
   393 		std::vector<TComponent> iComponents;
   314 		
   442 		
   315 		XmlDetails::TScrPreProvisionDetail::TComponentFile::TFileProperty GetFileProperty( const XERCES_CPP_NAMESPACE::DOMElement* aDOMElement);
   443 		XmlDetails::TScrPreProvisionDetail::TComponentFile::TFileProperty GetFileProperty( const XERCES_CPP_NAMESPACE::DOMElement* aDOMElement);
   316 		
   444 		
   317 		XmlDetails::TScrPreProvisionDetail::TComponentDetails GetComponentDetails( const XERCES_CPP_NAMESPACE::DOMElement* aDOMElement);
   445 		XmlDetails::TScrPreProvisionDetail::TComponentDetails GetComponentDetails( const XERCES_CPP_NAMESPACE::DOMElement* aDOMElement);
   318 		
   446 		
       
   447 		XmlDetails::TScrPreProvisionDetail::TApplicationRegistrationInfo GetApplicationRegistrationInfo(const XERCES_CPP_NAMESPACE::DOMElement* aDOMElement);
       
   448 
       
   449 		XmlDetails::TScrPreProvisionDetail::TApplicationRegistrationInfo::TAppAttribute GetAppAttribute( const XERCES_CPP_NAMESPACE::DOMElement* aDOMElement);
       
   450 
       
   451 		std::wstring GetFileOwnershipInfo( const XERCES_CPP_NAMESPACE::DOMElement* aDOMElement);
       
   452 
       
   453 		XmlDetails::TScrPreProvisionDetail::TApplicationRegistrationInfo::TDataType GetDataType( const XERCES_CPP_NAMESPACE::DOMElement* aDOMElement);
       
   454 
       
   455 		XmlDetails::TScrPreProvisionDetail::TApplicationRegistrationInfo::TOpaqueDataType GetOpaqueDataType( const XERCES_CPP_NAMESPACE::DOMElement* aDOMElement);
       
   456 
       
   457 		XmlDetails::TScrPreProvisionDetail::TApplicationRegistrationInfo::TOpaqueDataType GetServiceOpaqueDataType( const XERCES_CPP_NAMESPACE::DOMElement* aDOMElement);
       
   458 
       
   459 		XmlDetails::TScrPreProvisionDetail::TApplicationRegistrationInfo::TAppServiceInfo GetAppServiceInfo( const XERCES_CPP_NAMESPACE::DOMElement* aDOMElement, XmlDetails::TScrPreProvisionDetail::TApplicationRegistrationInfo& aAppRegistrationInfo);
       
   460 
       
   461 		XmlDetails::TScrPreProvisionDetail::TApplicationRegistrationInfo::TAppLocalizableInfo GetAppLocalizableInfo( const XERCES_CPP_NAMESPACE::DOMElement* aDOMElement);
       
   462 
       
   463 		XmlDetails::TScrPreProvisionDetail::TApplicationRegistrationInfo::TAppLocalizableInfo::TLocalizableAttribute GetAppLocalizableAttribute( const XERCES_CPP_NAMESPACE::DOMElement* aDOMElement);
       
   464 
       
   465 		XmlDetails::TScrPreProvisionDetail::TApplicationRegistrationInfo::TAppLocalizableInfo::TViewData GetAppLocalizableViewData( const XERCES_CPP_NAMESPACE::DOMElement* aDOMElement);
       
   466 
       
   467 		XmlDetails::TScrPreProvisionDetail::TApplicationRegistrationInfo::TAppLocalizableInfo::TViewData::TViewDataAttributes GetAppLocalizableViewDataAttributes( const XERCES_CPP_NAMESPACE::DOMElement* aDOMElement);
       
   468 
       
   469 		XmlDetails::TScrPreProvisionDetail::TApplicationRegistrationInfo::TAppProperty GetAppProperty( const XERCES_CPP_NAMESPACE::DOMElement* aDOMElement);
       
   470 
   319 		XmlDetails::TScrEnvironmentDetails::TLocalizedSoftwareTypeName GetLocalizedSoftwareTypeName( const XERCES_CPP_NAMESPACE::DOMElement* aDOMElement);
   471 		XmlDetails::TScrEnvironmentDetails::TLocalizedSoftwareTypeName GetLocalizedSoftwareTypeName( const XERCES_CPP_NAMESPACE::DOMElement* aDOMElement);
   320 		
   472 		
       
   473         XmlDetails::TScrEnvironmentDetails::TCustomAcessList GetCustomAcessList(const XERCES_CPP_NAMESPACE::DOMElement* aDOMElement);
       
   474 
   321 		void ConfigDomParser(xercesc::XercesDOMParser& aDomParser);
   475 		void ConfigDomParser(xercesc::XercesDOMParser& aDomParser);
   322 	};
   476 	};
   323 
   477 
   324 
   478 
   325 XERCES_CPP_NAMESPACE_BEGIN
   479 XERCES_CPP_NAMESPACE_BEGIN