installationservices/swi/source/sislauncher/server/swtypereginfoparser.h
branchRCL_3
changeset 26 8b7f4e561641
parent 25 7333d7932ef7
equal deleted inserted replaced
25:7333d7932ef7 26:8b7f4e561641
     1 /*
     1 /*
     2 * Copyright (c) 2008-2010 Nokia Corporation and/or its subsidiary(-ies).
     2 * Copyright (c) 2008-2009 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".
    36 		{
    36 		{
    37 	public:
    37 	public:
    38 		static CSoftwareTypeRegInfoParser* NewL();
    38 		static CSoftwareTypeRegInfoParser* NewL();
    39 		virtual ~CSoftwareTypeRegInfoParser();
    39 		virtual ~CSoftwareTypeRegInfoParser();
    40 		
    40 		
    41 		void ParseL(const TDesC8& aDocument, RPointerArray<Usif::CSoftwareTypeRegInfo>& aSwTypeRegInfoArray);
    41 		void ParseL(const TDesC8& aDocument, RPointerArray<CSoftwareTypeRegInfo>& aSwTypeRegInfoArray);
    42 
    42 
    43 	private:
    43 	private:
    44 		// From MContentHandler
    44 		// From MContentHandler
    45 		virtual void OnStartDocumentL(const Xml::RDocumentParameters& aDocParam, TInt aErrorCode);
    45 		virtual void OnStartDocumentL(const Xml::RDocumentParameters& aDocParam, TInt aErrorCode);
    46 		virtual void OnEndDocumentL(TInt aErrorCode);
    46 		virtual void OnEndDocumentL(TInt aErrorCode);
    56 		virtual TAny* GetExtendedInterface(const TInt32 aUid);
    56 		virtual TAny* GetExtendedInterface(const TInt32 aUid);
    57 
    57 
    58 	private:
    58 	private:
    59 		CSoftwareTypeRegInfoParser();
    59 		CSoftwareTypeRegInfoParser();
    60 		
    60 		
    61 		RPointerArray<Usif::CSoftwareTypeRegInfo>* iSwTypeRegInfoArray;
    61 		RPointerArray<CSoftwareTypeRegInfo>* iSwTypeRegInfoArray;
    62 		HBufC8* iContentChunks;
    62 		HBufC8* iContentChunks;
    63 		TLanguage iLocalizedNameLanguage;
    63 		TLanguage iLocalizedNameLanguage;
    64 		TSecureId iSecureId;
       
    65 		TInt iAccessMode;
       
    66 		
    64 		
    67 		enum TXmlNode
    65 		enum TXmlNode
    68 			{
    66 			{
    69 			ENodeNone,
    67 			ENodeNone,
    70 			ENodeSoftwareTypeRegistrationData,
    68 			ENodeSoftwareTypeRegistrationData,
    71 			ENodeSoftwareType,
    69 			ENodeSoftwareType,
    72 			ENodeLocalizedName,
    70 			ENodeLocalizedName,
    73 			ENodeMimeType,
    71 			ENodeMimeType,
    74 			ENodeSifPluginUid,
    72 			ENodeSifPluginUid,
    75 			ENodeCustomAccess,
    73 			ENodeInstallerSecureId,
    76 			ENodeLauncherExecutable
    74 			ENodeExecutionLayerSecureId
    77 			};
    75 			};
    78 		RArray<TXmlNode> iNodes;
    76 		RArray<TXmlNode> iNodes;
    79 		
    77 		
    80 		TXmlNode ElementNameToNode(const TDesC8& aName) const;
    78 		TXmlNode ElementNameToNode(const TDesC8& aName) const;
    81 		void PushNodeL(TXmlNode aNew, TXmlNode aExpectedParent);
    79 		void PushNodeL(TXmlNode aNew, TXmlNode aExpectedParent);