cmmanager/cmmgr/cmmserver/src/cmmconnmethodinstance.cpp
changeset 44 a0c4ceac30d0
parent 40 c5b848e6c7d1
--- a/cmmanager/cmmgr/cmmserver/src/cmmconnmethodinstance.cpp	Thu Jun 24 11:36:05 2010 +0300
+++ b/cmmanager/cmmgr/cmmserver/src/cmmconnmethodinstance.cpp	Fri Jul 09 10:25:55 2010 +0300
@@ -104,6 +104,7 @@
     iConnMethodId = 0;
     iBearerType = 0;
     iStatus = ECmmConnMethodStatusChanged;
+    iRecordStatus = ECmmRecordStatusBlank;
     iHandle = 0;
 
     OstTraceFunctionExit0( DUP1_CCMMCONNMETHODINSTANCE_CCMMCONNMETHODINSTANCE_EXIT );
@@ -256,11 +257,13 @@
         case ECmmConnMethodStatusToBeDeleted:
             {
             iStatus = ECmmConnMethodStatusChanged;
+            iRecordStatus = ECmmRecordStatusUnsaved;
             }
             break;
         case ECmmConnMethodStatusValid:
             {
             iStatus = ECmmConnMethodStatusValid;
+            iRecordStatus = ECmmRecordStatusLoaded;
             }
             break;
         case ECmmConnMethodStatusChanged:
@@ -466,6 +469,8 @@
 
     iPlugin->SetIntAttributeL( aAttribute, aValue, iPluginDataInstance );
 
+    iRecordStatus = ECmmRecordStatusModified;
+
     OstTraceFunctionExit0( CCMMCONNMETHODINSTANCE_SETINTATTRIBUTEL_EXIT );
     }
 
@@ -486,6 +491,8 @@
 
     iPlugin->SetBoolAttributeL( aAttribute, aValue, iPluginDataInstance );
 
+    iRecordStatus = ECmmRecordStatusModified;
+
     OstTraceFunctionExit0( CCMMCONNMETHODINSTANCE_SETBOOLATTRIBUTEL_EXIT );
     }
 
@@ -506,6 +513,8 @@
 
     iPlugin->SetStringAttributeL( aAttribute, aValue, iPluginDataInstance );
 
+    iRecordStatus = ECmmRecordStatusModified;
+
     OstTraceFunctionExit0( CCMMCONNMETHODINSTANCE_SETSTRINGATTRIBUTEL_EXIT );
     }
 
@@ -526,6 +535,8 @@
 
     iPlugin->SetString8AttributeL( aAttribute, aValue, iPluginDataInstance );
 
+    iRecordStatus = ECmmRecordStatusModified;
+
     OstTraceFunctionExit0( CCMMCONNMETHODINSTANCE_SETSTRING8ATTRIBUTEL_EXIT );
     }
 
@@ -533,7 +544,7 @@
 // Sets a new status value.
 // ---------------------------------------------------------------------------
 //
-void CCmmConnMethodInstance::SetStatus( const TCmmConnMethodStatus& aStatus )
+void CCmmConnMethodInstance::SetStatus( const TCmmConnMethodStatus aStatus )
     {
     OstTraceFunctionEntry0( CCMMCONNMETHODINSTANCE_SETSTATUS_ENTRY );
 
@@ -553,6 +564,7 @@
     OstTraceFunctionEntry0( CCMMCONNMETHODINSTANCE_UPDATESUCCESSFUL_ENTRY );
 
     SetStatus( ECmmConnMethodStatusValid );
+    iRecordStatus = ECmmRecordStatusLoaded;
 
     OstTraceFunctionExit0( CCMMCONNMETHODINSTANCE_UPDATESUCCESSFUL_EXIT );
     }
@@ -568,6 +580,7 @@
     OstTraceFunctionEntry0( CCMMCONNMETHODINSTANCE_DELETESUCCESSFUL_ENTRY );
 
     SetStatus( ECmmConnMethodStatusChanged );
+    iRecordStatus = ECmmRecordStatusModified;
     SetId( aNewSecondaryId );
 
     OstTraceFunctionExit0( CCMMCONNMETHODINSTANCE_DELETESUCCESSFUL_EXIT );
@@ -606,4 +619,13 @@
         }
     }
 
+// ---------------------------------------------------------------------------
+// Gets the current status value.
+// ---------------------------------------------------------------------------
+//
+TCmmConnMethodStatus CCmmConnMethodInstance::GetStatus() const
+    {
+    return iStatus;
+    }
+
 // End of file