realtimenetprots/sipfw/ClientResolver/Server/inc/CSIPCRITCUtility.h
changeset 0 307788aac0a8
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/realtimenetprots/sipfw/ClientResolver/Server/inc/CSIPCRITCUtility.h	Tue Feb 02 01:03:15 2010 +0200
@@ -0,0 +1,105 @@
+/*
+* Copyright (c) 2004-2009 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:
+* Name          : CSIPCRITCUtility.h
+* Part of       : SIP Client Resolver
+* Version       : 1.0 
+*
+*/
+
+
+
+
+/**
+ @internalComponent
+*/
+
+#ifndef CSIPCRITCUTILITY_H
+#define CSIPCRITCUTILITY_H
+
+//  INCLUDES
+#include <e32base.h>
+#include "sipCRclientserver.h"
+
+// FORWARD DECLARATIONS
+class SIPCRSerializer;
+class CSIPRequest;
+
+
+class CSIPCRITCUtility : public CBase
+    {
+public:
+	static CSIPCRITCUtility* NewL ();
+	
+	static CSIPCRITCUtility* NewLC ();
+	
+	~CSIPCRITCUtility ();
+	
+	void ReadSIPRequestL(const RMessage2& aMessage,
+	                     CSIPRequest& aRequest);
+
+    TUid ReadResolverUidL(const RMessage2& aMessage) const;
+
+    void WriteChannelUidL(const RMessage2& aMessage,
+                          const TUid& aUid) const;
+
+	void WriteSIPResponseL(const RMessage2& aMessage,
+                           CBufFlat& aResponse) const;
+                           
+	void WriteSIPResponseContentL(const RMessage2& aMessage,
+                                  const TDesC8& aContent) const;                           
+                             
+	TUid ReadUIDL (const RMessage2& aMessage) const;
+
+	void WriteUIDL(const RMessage2& aMessage, TUid aUID) const;
+	
+	void WriteRequestIdL (const RMessage2& aMessage,TUint32 aId) const;
+	
+	void WriteClientResolvedL (const RMessage2& aMessage, 
+	                           TSIPCRIpcResponses aResponse) const;
+	
+	void WriteResponseSizeL (const RMessage2& aMessage,
+	                         TSIPCRMessageBufSizes aSizes) const;
+
+	TUint32 ReadRequestIdL (const RMessage2& aMessage) const;
+	
+	void Complete (const RMessage2& aMessage,
+                   TInt aCompletionCode) const;           
+
+    static void WaitForMutexLC(RMutex& aMutex);	
+
+    static void SignalMutex(TAny* aMutex);
+                                       
+private:
+
+    void ConstructL ();
+    
+    void WriteL (TSIPCRIpcArguments aItcArgIndex,
+                 const RMessage2&  aMessage,
+                 const TDesC8&    aDes) const;
+
+    HBufC8* ReadL (TSIPCRIpcArguments aItcArgIndex,
+				   const RMessage2&  aMessage) const;
+								
+    HBufC8* ReadLC (TSIPCRIpcArguments aItcArgIndex,
+					const RMessage2&  aMessage) const;
+    
+private: // Data
+    
+    SIPCRSerializer* iSerializer;
+    };
+
+#endif //CSIPCRITCUTILITY_H
+
+//  End of File