diff -r 2669f8761a99 -r fbd2e7cec7ef presencefwsimpleadpt/inc/simplepluginvariation.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/presencefwsimpleadpt/inc/simplepluginvariation.h Wed Sep 01 12:23:14 2010 +0100 @@ -0,0 +1,201 @@ +/* +* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: CSimplePluginVariation implementation. +* +*/ + + + + +#ifndef CSIMPLEPLUGINVARIATION_H +#define CSIMPLEPLUGINVARIATION_H + +#include + +class CRepository; + +/** + * CSimplePluginVariation + * + * Implementation of MXIMPProtocolConnection + * + * @lib ?library + * @since s60 v5.0 + */ +NONSHARABLE_CLASS(CSimplePluginVariation) : public CBase + { + +public: + + enum TSimplePluginAuthRule + { + ERuleNone, + ERulePoliteBlock, + ERuleBlock, + ERuleConfirm, + ERuleAllow + }; + + static CSimplePluginVariation* NewL( ); + + ~CSimplePluginVariation(); + +private: + + CSimplePluginVariation(); + + + void ConstructL( ); + + +public: + + /** + * Get data from CenRep + */ + void InitL(); + + /** + * Grant rule name + * @return rule name + */ + TPtrC GrantRuleName(); + + /** + * Grant own rule name + * @return rule name + */ + TPtrC GrantOwnRuleName(); + + /** + * Default rule name + * @return rule name + */ + TPtrC DefaultRuleName(); + + /** + * Block rule name + * @return rule name + */ + TPtrC BlockRuleName(); + + /** + * Default rule action + * @return action + */ + TSimplePluginAuthRule DefaultRuleAction(); + + /** + * Block rule action + * @return action + */ + TSimplePluginAuthRule BlockRuleAction(); + + /** + * RlsGroupUriTemplate + * @return RlsGroupUriTemplate + */ + TPtrC RlsGroupUriTemplate(); + + /** + * SharedXdmTop + * @return SharedXdmTop + */ + TPtrC SharedXdmTop(); + + /** + * GrantListName + * @return GrantListName + */ + TPtrC GrantListName(); + +private: + + void InitGrantRuleNameL( CRepository* aRepository ); + + void InitGrantOwnRuleNameL( CRepository* aRepository ); + + void InitDefaultRuleNameL( CRepository* aRepository ); + + void InitBlockRuleNameL( CRepository* aRepository ); + + void InitDefaultRuleActionL( CRepository* aRepository ); + + void InitBlockRuleActionL( CRepository* aRepository ); + + void InitRlsGroupUriTemplateL( CRepository* aRepository ); + + void InitSharedXdmTopL( CRepository* aRepository ); + + void InitGrantListNameL( CRepository* aRepository ); + + +private: // data members + + /** + * Id for rule to grant all elements + * Own + */ + HBufC* iGrantAllRuleName; + + /** + * Id for rule to grant own data + * Own + */ + HBufC* iGrantOwnRuleName; + + /** + * Id for default rule + * Own + */ + HBufC* iDefaultRuleName; + + /** + * Id for block rule + * Own + */ + HBufC* iBlockRuleName; + + /** + * Default rule action, allow/confirm/block/polite-block + */ + TSimplePluginAuthRule iDefaultRuleAction; + + /** + * Block rule action, block/polite-block + */ + TSimplePluginAuthRule iBlockRuleAction; + + /** + * Template for RLS service URI for a user group + * Own + */ + HBufC* iRlsGroupUriTemplate; + + /** + * Top level for lists in shared XDM index document + * Own + */ + HBufC* iSharedXdmTop; + + /** + * Name of list for granted users in XDM list + * Own + */ + HBufC* iGrantListName; + + }; + + +#endif // CSIMPLEPLUGINVARIATION_H