webservices/wsoviplugin/src/wsovitokencreationresponse.cpp
changeset 23 a1df79fa35b4
parent 0 62f9d29f7211
--- a/webservices/wsoviplugin/src/wsovitokencreationresponse.cpp	Fri Apr 16 16:07:50 2010 +0300
+++ b/webservices/wsoviplugin/src/wsovitokencreationresponse.cpp	Fri Jun 11 14:42:58 2010 +0300
@@ -45,8 +45,7 @@
 // Second phase construction.
 void CWSOviTokenCreationResponse::ConstructL()
     {
-        CSenBaseFragment::BaseConstructL(TPtrC8(NULL,0),
-        		KTokenCreationResponseLocalName);
+    CSenBaseFragment::BaseConstructL(TPtrC8(NULL,0), KTokenCreationResponseLocalName);
     }
 
 void CWSOviTokenCreationResponse::StartElementL(const TDesC8& /*aNsUri*/,
@@ -78,14 +77,18 @@
         		{
         		iState = KStateSave;
         		}
-            else if (aLocalName == KTokenLocalName)
-                {
-                iState = KStateSave;
-                }
-        	else if (aLocalName == KTTLLocalName)
-        		{
-        		iState = KStateSave;
-        		}
+          else if (aLocalName == KTokenLocalName)
+              {
+              iState = KStateSave;
+              }
+          else if (aLocalName == KTTLLocalName)
+	          {
+	      	  iState = KStateSave;
+	          }
+          else if (aLocalName == KExpiresLocalName)
+              {
+              iState = KStateSave;
+              }        	
         	break;
         	}
         case KStateParsingUserInfo:
@@ -154,6 +157,21 @@
                 ResetContentL();
                 iState = KStateParsingTokenInfo;
                 }
+            else if (aLocalName == KExpiresLocalName)
+                {
+                if(iValidUntil)
+                	{
+                	delete iValidUntil;
+                	iValidUntil = NULL;
+                	}
+                TLSLOG_L(KSenCoreServiceManagerLogChannelBase  , KMinLogLevel,"WSOviTokenCreationResponse::expires parsing");
+                TLSLOG_FORMAT((KSenCoreServiceManagerLogChannelBase  , KMinLogLevel, _L8("iValidUntil : %S"), &content));
+                
+                iValidUntil = content.AllocL();
+                
+                ResetContentL();
+                iState = KStateParsingTokenInfo;
+                }            
             else if ( aLocalName == KUserNameLocalName)
                 {
                 if (iUsername)
@@ -202,6 +220,7 @@
 	delete iTokenSecret;
 	delete iTTL;
 	delete iUsername;
+	delete iValidUntil;
 	}
 
 TPtrC8 CWSOviTokenCreationResponse::Token()
@@ -240,6 +259,18 @@
         }
     }
 
+TPtrC8 CWSOviTokenCreationResponse::ValidUntil()
+    {
+    if (iValidUntil)
+        {
+        return *iValidUntil;    
+        }
+    else 
+        {
+        return KNullDesC8();
+        }    	
+    }
+
 TPtrC8 CWSOviTokenCreationResponse::Username()
     {
     if (iUsername)