applayerpluginsandutils/httptransportplugins/httptransporthandler/mcommsinfoprovider.h
changeset 0 b16258d2340f
child 13 26ce6fb6aee2
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/applayerpluginsandutils/httptransportplugins/httptransporthandler/mcommsinfoprovider.h	Tue Feb 02 01:09:52 2010 +0200
@@ -0,0 +1,83 @@
+// Copyright (c) 2003-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:
+//
+
+#ifndef __MCOMMSINFOPROVIDER_H__
+#define __MCOMMSINFOPROVIDER_H__
+
+#include <e32std.h>
+#include <in_sock.h>
+
+class MSecurityPolicy;
+
+class MCommsInfoProvider
+/** 
+	The MCommsInfoProvider API provides accessors to a connected socket server
+	session and the protocol description for a particular protocol.
+	@internalComponent
+*/
+	{
+public:	// methods
+
+/**	
+	Accessor to the socket server session.
+	@return		A reference to the connected socket server session.
+*/
+	virtual RSocketServ& SocketServer() =0;
+
+/**
+	Accessor to the protocol description.
+	@return		A reference to the protocol description.
+*/
+	virtual TProtocolDesc& ProtocolDescription() =0;
+
+/**
+	Accessor to the comms connection.
+	@return		A reference to the connected comms connection.
+*/
+	virtual RConnection& Connection() =0;
+
+/**	
+	Accessor to the security preferences.
+	@param		aDialogPrompt Boolean indicating whether a secure dialog prompt should be used.
+	@param		aSecurityPolicy The security policy, can be NULL if not provided
+*/
+	virtual void SecurityPreferences(TBool& aDialogPrompt, MSecurityPolicy*& aSecurityPolicy) =0;
+
+/**	
+	Indicates whether the connection is owned by the transport layer or not.
+	@return		A boolean indicating whether the connection is owned.
+*/
+	virtual TBool OwnsConnection() =0;	
+	
+	/**
+	Returns the protocal layer session ID. 
+	
+	@return		A negative error code or the Session ID. This returns KErrNotSupported
+				if the implementation does not support session IDs
+*/
+	virtual TInt SessionId() =0;
+
+	/**
+	Returns ETrue if there is a connection, otherwise returns EFalse				
+	*/
+	virtual TBool HasConnection () =0;
+	
+	/**
+	Starts a default RConnection
+	*/
+	virtual void StartDefaultCommsConnectionL () =0;
+	};
+
+#endif	// __MCOMMSINFOPROVIDER_H__