diff -r fc7b30ed2058 -r 05bc53fe583b cmmanager/cmmgr/cmmapi/inc/cmconnectionmethodwrapper.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/cmmanager/cmmgr/cmmapi/inc/cmconnectionmethodwrapper.h Tue Aug 31 15:35:44 2010 +0300 @@ -0,0 +1,127 @@ +/* +* Copyright (c) 2009-2010 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: +* Collects API calls from RCmConnectionMethod- and +* RCmConnectionMethodExt-classes. +* +*/ + + +#ifndef CMCONNECTIONMETHODWRAPPER_H +#define CMCONNECTIONMETHODWRAPPER_H + +#include +#include "cmconnectionmethodapi.h" + +class RCmManagerApi; + + +NONSHARABLE_CLASS( CCmConnectionMethodWrapper ) : public CBase + { +public: + static CCmConnectionMethodWrapper* NewL(); + static CCmConnectionMethodWrapper* NewLC(); + virtual ~CCmConnectionMethodWrapper(); + +public: + CCmConnectionMethodWrapper(); + +public: + void GetConnMethodWithIdL( + RCmManagerApi* aCmManagerApi, + const TUint32 aIapId, + TInt& aExistingHandle ); + void GetConnMethodFromDestWithIndexL( + RCmManagerApi* aCmManagerApi, + const TInt aDestHandle, + const TInt aIndex, + TInt& aExistingHandle ); + void GetConnMethodFromDestWithIdL( + RCmManagerApi* aCmManagerApi, + const TInt aDestHandle, + const TInt aIapId, + TInt& aExistingHandle ); + void CreateConnMethodL( + RCmManagerApi* aCmManagerApi, + const TUint32 aBearerType ); + void CreateConnMethodWithIdL( + RCmManagerApi* aCmManagerApi, + const TUint32 aBearerType, + const TUint32 aIapId ); + TInt CreateConnMethodCopy( + RCmManagerApi* aCmManagerApi, + const TInt aConnMethodHandle ); + void CreateConnMethodToDestL( + RCmManagerApi* aCmManagerApi, + const TInt aDestHandle, + const TUint32 aBearerType ); + void CreateConnMethodToDestWithIdL( + RCmManagerApi* aCmManagerApi, + const TInt aDestHandle, + const TUint32 aBearerType, + const TUint32 aIapId ); + + TInt GetIntAttribute( + const TUint32 aAttribute, + TUint32& aValue ); + TInt GetBoolAttribute( + const TUint32 aAttribute, + TBool& aValue ); + TInt GetStringAttribute( + const TUint32 aAttribute, + HBufC* aBuffer ); + TInt GetString8Attribute( + const TUint32 aAttribute, + HBufC8* aBuffer ); + + TInt SetIntAttribute( + const TUint32 aAttribute, + const TUint32 aValue ); + TInt SetBoolAttribute( + const TUint32 aAttribute, + const TBool aValue ); + TInt SetStringAttribute( + const TUint32 aAttribute, + const TDesC16& aValue ); + TInt SetString8Attribute( + const TUint32 aAttribute, + const TDesC8& aValue ); + + TInt Update(); + TInt Refresh(); + TInt Delete( TBool& aResult ); + TInt IsEqual( const TInt aHandle, TBool& aResult ); + + TBool SessionConnected() const; + void CloseSession(); + TInt GetHandle() const; + RCmManagerApi* GetMainSession() const; + + void IncreaseReferenceCounter(); + TInt DecreaseReferenceCounter(); + +private: + // Subsession to server representing this connection method handle. + RCmConnectionMethodApi iCmConnectionMethodApi; + + // Pointer for main session to server. + RCmManagerApi* iCmManagerApi; // Not owned. + + // Counts the number of references client has to this specific handle. + TInt iReferenceCounter; + }; + +#endif // CMCONNECTIONMETHODWRAPPER_H + +// End of file