ipcm_pub/connection_settings_api/inc/cmconnectionmethod.h
changeset 20 9c97ad6591ae
parent 0 5a93021fdf25
child 58 83ca720e2b9a
--- a/ipcm_pub/connection_settings_api/inc/cmconnectionmethod.h	Fri Apr 16 15:21:37 2010 +0300
+++ b/ipcm_pub/connection_settings_api/inc/cmconnectionmethod.h	Mon May 03 12:53:07 2010 +0300
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies). 
+* Copyright (c) 2006-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"
@@ -11,20 +11,22 @@
 *
 * Contributors:
 *
-* Description:  Connection Method interface class.
+* Description:
+* Connection Method interface class.
 *
 */
 
+
 #ifndef CMCONNECTIONMETHOD_H
 #define CMCONNECTIONMETHOD_H
 
-// INCLUDES
 #include <e32base.h>
 #include <cmconnectionmethoddef.h>
 
-// CLASS DECLARATION
-class CCmPluginBaseEng;
+// Forward declarations
 class RCmDestination;
+class CCmConnectionMethodWrapper;
+
 
 /**
  *  RCmConnectionMethod is for getting/setting values of a connection method.
@@ -33,39 +35,30 @@
  */
 NONSHARABLE_CLASS( RCmConnectionMethod )
     {
-    //=====================================================================
-    // Constructors/Destructors
-    // 
     public:
-    
         /**
-        * Default constructor. 
+        * Default constructor.
         */
         IMPORT_C RCmConnectionMethod();
 
+        /**
+        * Copy constructor.
+        */
+        IMPORT_C RCmConnectionMethod( const RCmConnectionMethod& aConnMethod );
 
         /**
-        * Copy constructor. 
-        */
-        IMPORT_C RCmConnectionMethod(const RCmConnectionMethod& aItem);
-
-
-        /**
-        * Destructor. 
+        * Destructor.
         */
         IMPORT_C ~RCmConnectionMethod();
 
-    //=====================================================================
-    // API functions
     public:
-    
         /**
         * Close the session
         *
         * @since S60 3.2
         */
         IMPORT_C void Close();
-        
+
         /**
         * Gets the value for a TInt attribute.
         *
@@ -93,7 +86,7 @@
         * @return copy of the requested attribute. Ownership is passed.
         */
         IMPORT_C HBufC* GetStringAttributeL( TUint32 aAttribute ) const;
-        
+
         /**
         * Gets the value for a String8 attribute.
         * HBuf ownership is passed to the caller
@@ -102,8 +95,8 @@
         * @param aAttribute Identifies the attribute to be retrieved.
         * @return copy of the requested attribute. Ownership is passed.
         */
-        IMPORT_C HBufC8* GetString8AttributeL( 
-                                        const TUint32 aAttribute ) const;
+        IMPORT_C HBufC8* GetString8AttributeL(
+                const TUint32 aAttribute ) const;
 
         /**
         * Call this function only if this CM is an embedded destination!
@@ -113,42 +106,42 @@
         */
         IMPORT_C RCmDestination DestinationL() const;
 
-        
+
         /**
-        * checks if connection methods are the same 
-        * 
+        * checks if connection methods are the same
+        *
         * @since S60 3.2
         * @param aConnMethod the connection method being compared
         * @return ETrue if the destinations are the same
         */
         IMPORT_C TBool operator==( RCmConnectionMethod& aConnMethod ) const;
-        
+
         /**
-        * checks if connection methods are not the same 
-        * 
+        * checks if connection methods are not the same
+        *
         * @since S60 3.2
         * @param aConnMethod the connection method being compared
         * @return ETrue if the destinations are different
         */
         IMPORT_C TBool operator!=( RCmConnectionMethod& aConnMethod ) const;
-        
+
 
         /**
-        * assignment operator 
-        * 
+        * assignment operator
+        *
         * @since S60 3.2
         * @return RCmConnectionMethod
         */
-        IMPORT_C RCmConnectionMethod& operator=(const RCmConnectionMethod& 
-                                                    aConnMethod);
+        IMPORT_C RCmConnectionMethod& operator=(
+                const RCmConnectionMethod& aConnMethod );
 
         /**
-        * Creates a copy of this connection method. UpdateL() has to be called 
+        * Creates a copy of this connection method. UpdateL() has to be called
         * to store new connection method in database. Ownership is passed.
         */
         IMPORT_C RCmConnectionMethod CreateCopyL();
 
-                /**
+        /**
         * Sets the value for a TInt attribute.
         * @param aAttribute Identifies the attribute to be set.
         * @param aValue The value to be set.
@@ -170,8 +163,9 @@
         * @param aValue The value to be set.
         * @return None.
         */
-        IMPORT_C void SetStringAttributeL( TUint32 aAttribute, 
-                                           const TDesC16& aValue );
+        IMPORT_C void SetStringAttributeL(
+                TUint32 aAttribute,
+                const TDesC16& aValue );
 
         /**
         * Sets the value for a String8 attribute.
@@ -179,12 +173,13 @@
         * @param aValue The value to be set.
         * @return None.
         */
-        IMPORT_C void SetString8AttributeL( TUint32 aAttribute, 
-                                            const TDesC8& aValue );
+        IMPORT_C void SetString8AttributeL(
+                TUint32 aAttribute,
+                const TDesC8& aValue );
 
         /**
-        * Try to delete the connection method. If it is referenced from 
-        * any destination, then the references are removed and the 
+        * Try to delete the connection method. If it is referenced from
+        * any destination, then the references are removed and the
         * connection method is deleted.
         * Do NOT call this function if you got this
         * connection method from a destination. Call destination's
@@ -196,22 +191,40 @@
         /**
         * Update in the database.
         * @return None.
-        */        
+        */
         IMPORT_C void UpdateL();
 
+        /**
+         * Gets the icon identifier(name) of the connection method. It can
+         * contain path information. HBufC* ownership is passed to the caller.
+         * @return Returns pointer to a buffer which identifies the requested
+         * icon.
+         */
+        IMPORT_C HBufC* GetIconL() const;
+
+        /**
+         * Sets the icon identifier(name) of the connection method. It can
+         * contain path information.
+         * @param aIcon Identifier of the connection method icon.
+         */
+        IMPORT_C void SetIconL( const TDesC& aIcon );
+
+        /**
+        * Reload the contents of the connection method from database.
+        * Any current changes made to the connection method are lost.
+        * @return None.
+        */
+        IMPORT_C void RefreshL();
+
+
     private:
-    
         friend class RCmDestination;
         friend class RCmManager;
-        
+
     private:
-        
-        /**
-         * the implementation class
-         */
-        CCmPluginBaseEng* iImplementation;
+        CCmConnectionMethodWrapper* iCmConnectionMethodWrapper;
     };
 
-#include <cmconnectionmethod.inl>
-    
-#endif      // CMCONNECTIONMETHOD_H
+#endif // CMCONNECTIONMETHOD_H
+
+// End of file