Msrp/MsrpClient/src/RMSRPSession.cpp
branchMSRP_FrameWork
changeset 25 505ad3f0ce5c
child 58 cdb720e67852
equal deleted inserted replaced
22:f1578314b8da 25:505ad3f0ce5c
       
     1 /*
       
     2 * Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies).
       
     3 * All rights reserved.
       
     4 * This component and the accompanying materials are made available
       
     5 * under the terms of "Eclipse Public License v1.0"
       
     6 * which accompanies this distribution, and is available
       
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html."
       
     8 * Initial Contributors:
       
     9 * Nokia Corporation - initial contribution.
       
    10 * Contributors:
       
    11 *
       
    12 * Description:
       
    13 * MSRP Implementation
       
    14 *
       
    15 */
       
    16 
       
    17 #ifndef RMSRPSESSION_CPP_
       
    18 #define RMSRPSESSION_CPP_
       
    19 
       
    20 
       
    21 //  Include Files
       
    22 #include "MsrpCommon.h"
       
    23 #include "RMSRPSession.h"
       
    24 #include "RMSRP.h"
       
    25 
       
    26 
       
    27 //  Member Functions
       
    28 
       
    29 RMSRPSession::RMSRPSession() :
       
    30     RSubSessionBase()
       
    31     {
       
    32     MSRPLOG("RMSRP Session.. Ctor");
       
    33     }
       
    34 
       
    35 
       
    36 TInt RMSRPSession::CreateServerSubSession( RMSRP& aRMSRP, const TUint32 aIapId )
       
    37     {
       
    38     MSRPLOG("RMSRP Session.. Create client-server SubSession");
       
    39     
       
    40     return CreateSubSession( aRMSRP, EMSRPCreateSubSession, TIpcArgs( aIapId ) );
       
    41     }
       
    42 
       
    43 
       
    44 void RMSRPSession::CloseServerSubSession( )
       
    45     {
       
    46     MSRPLOG("RMSRP Session.. Close client-server SubSession");
       
    47     CloseSubSession(EMSRPCloseSubSession);
       
    48     }
       
    49 
       
    50 
       
    51 void RMSRPSession::GetLocalPathL( TDes8 &aLocalHost, TDes8 &aSessionID )
       
    52     {
       
    53     MSRPLOG("RMSRP Session.. GetLocalPath");
       
    54     
       
    55     User::LeaveIfError( SendReceive(EMSRPLocalPath, TIpcArgs( &iLocalPathMSRPDataPckg )) );
       
    56     
       
    57     aLocalHost = iLocalPathMSRPDataPckg().iLocalHost;
       
    58     aSessionID = iLocalPathMSRPDataPckg().iSessionID;    
       
    59     }
       
    60 
       
    61 
       
    62 void RMSRPSession::Connect( const TDesC8& aRemoteHost,
       
    63                             const TUint aRemotePort,
       
    64                             const TDesC8& aRemoteSessionID,
       
    65                             TRequestStatus& aStatus )
       
    66     {
       
    67     MSRPLOG("RMSRP Session.. Connect");
       
    68     
       
    69     iConnectMSRPDataPckg().iRemoteHost = aRemoteHost;
       
    70     iConnectMSRPDataPckg().iRemotePort = aRemotePort;
       
    71     iConnectMSRPDataPckg().iRemoteSessionID = aRemoteSessionID;
       
    72     
       
    73     SendReceive( EMSRPConnect, TIpcArgs( &iConnectMSRPDataPckg ), aStatus );    
       
    74     }
       
    75 
       
    76 
       
    77 void RMSRPSession::ListenConnections( const TDesC8& aRemoteHost,
       
    78                                       const TUint aRemotePort,
       
    79                                       const TDesC8& aRemoteSessionID,
       
    80                                       TBool aIsMessage,
       
    81                                       TRequestStatus& aStatus )
       
    82     {
       
    83     MSRPLOG("RMSRP Session.. Listen for incoming connections");
       
    84     
       
    85     iListenMSRPDataPckg().iRemoteHost = aRemoteHost;
       
    86     iListenMSRPDataPckg().iRemotePort = aRemotePort;
       
    87     iListenMSRPDataPckg().iRemoteSessionID = aRemoteSessionID;
       
    88     iListenMSRPDataPckg().iIsMessage = aIsMessage;
       
    89         
       
    90     SendReceive( EMSRPListenConnections, TIpcArgs( &iListenMSRPDataPckg ), aStatus );    
       
    91     }
       
    92 
       
    93 
       
    94 void RMSRPSession::ListenMessages( TBool aIsMessage,
       
    95                                    TRequestStatus& aStatus )
       
    96     {
       
    97     MSRPLOG("RMSRP Session.. Listen for incoming messages");
       
    98     
       
    99     iListenMSRPDataPckg().iIsMessage = aIsMessage;
       
   100     
       
   101     SendReceive( EMSRPListenMessages, TIpcArgs( &iListenMSRPDataPckg ), aStatus );    
       
   102     }
       
   103 
       
   104 
       
   105 void RMSRPSession::ListenSendResult( const TDesC8& aSessionID, TRequestStatus& aStatus )
       
   106     {
       
   107     MSRPLOG("RMSRP Session.. ListenSendResult");
       
   108     
       
   109     iSendResultListenMSRPDataPckg().iSessionID = aSessionID;
       
   110     
       
   111     SendReceive( EMSRPListenSendResult, TIpcArgs( &iSendResultListenMSRPDataPckg ), aStatus );    
       
   112     }
       
   113 
       
   114 
       
   115 TInt RMSRPSession::SendMessage( TDesC8& aMessageBuffer )
       
   116     {
       
   117     MSRPLOG("RMSRP Session.. SendMessage");
       
   118     
       
   119     iSendMSRPDataPckg().iExtMessageBuffer = aMessageBuffer;
       
   120 
       
   121     return SendReceive( EMSRPSendMessage, TIpcArgs( &iSendMSRPDataPckg ) );
       
   122     }
       
   123 
       
   124 
       
   125 TInt RMSRPSession::CancelSending( TDesC8& aMessageId )
       
   126     {
       
   127     MSRPLOG("RMSRP Session.. CancelSending");
       
   128     return SendReceive( EMSRPCancelSending, TIpcArgs( &aMessageId ) );
       
   129     }
       
   130 
       
   131 
       
   132 void RMSRPSession::CancelReceiving( )
       
   133     {
       
   134     MSRPLOG("RMSRP Session.. CancelReceiving Entered");
       
   135     SendReceive( EMSRPCancelReceiving );
       
   136     MSRPLOG("RMSRP Session.. CancelReceiving Done ");
       
   137     }
       
   138     
       
   139 
       
   140 void RMSRPSession::CancelSendResultListening( )
       
   141     {
       
   142     MSRPLOG("RMSRP Session.. CancelSendRespListening");
       
   143     SendReceive( EMSRPCancelSendRespListening );
       
   144     }
       
   145 
       
   146 
       
   147 const TDesC8& RMSRPSession::GetMessageIdOfSentMessage() const
       
   148     {
       
   149     MSRPLOG("RMSRP Session.. GetMessageIdOfSentMessage");
       
   150     return iSendResultListenMSRPDataPckg().iMessageId;
       
   151     }
       
   152     
       
   153 
       
   154 TInt RMSRPSession::GetStatusOfSentMessage() const
       
   155     {
       
   156     MSRPLOG("RMSRP Session.. GetStatusOfSentMessage");
       
   157     return iSendResultListenMSRPDataPckg().iStatus;
       
   158     }
       
   159     
       
   160 
       
   161 TInt RMSRPSession::GetStatusOfReceivedMessage() const
       
   162     {
       
   163     MSRPLOG("RMSRP Session.. GetStatusOfReceivedMessage");
       
   164     return iListenMSRPDataPckg().iStatus;
       
   165     }
       
   166 
       
   167 
       
   168 const TDesC8& RMSRPSession::GetReceivedMessage() const
       
   169     {
       
   170     MSRPLOG("RMSRP Session.. GetReceivedMessage");
       
   171     return iListenMSRPDataPckg().iExtMessageBuffer;
       
   172     }
       
   173 
       
   174 TBool RMSRPSession::GetListenProgress() const
       
   175     {
       
   176     MSRPLOG("RMSRP Session.. GetListenProgress");
       
   177     return iListenMSRPDataPckg().iIsProgress;
       
   178     }
       
   179 
       
   180 TInt RMSRPSession::GetBytesReceived() const
       
   181     {
       
   182     MSRPLOG("RMSRP Session.. GetBytesReceived");
       
   183     return iListenMSRPDataPckg().iBytesRecvd;
       
   184     }
       
   185 
       
   186 TInt RMSRPSession::GetTotalBytesReceived() const
       
   187     {
       
   188     MSRPLOG("RMSRP Session.. GetTotalBytesReceived");
       
   189     return iListenMSRPDataPckg().iTotalBytes;
       
   190     }
       
   191 
       
   192 TBool RMSRPSession::GetSendProgress() const
       
   193     {
       
   194     MSRPLOG("RMSRP Session.. GetSendProgress");
       
   195     return iSendResultListenMSRPDataPckg().iIsProgress;
       
   196     }
       
   197 
       
   198 TInt RMSRPSession::GetBytesSent() const
       
   199     {
       
   200     MSRPLOG("RMSRP Session.. GetBytesSent");
       
   201     return iSendResultListenMSRPDataPckg().iBytesSent;
       
   202     }
       
   203 
       
   204 TInt RMSRPSession::GetTotalBytes() const
       
   205     {
       
   206     MSRPLOG("RMSRP Session.. GetTotalBytes");
       
   207     return iSendResultListenMSRPDataPckg().iTotalBytes;
       
   208     }
       
   209 
       
   210 
       
   211 TInt RMSRPSession::SendFileL(TDesC8& aFileParamBuffer)
       
   212     {
       
   213     /* Send File Params to the sub-session */
       
   214     MSRPLOG("RMSRP Session.. SendFileParams");
       
   215     iSendMSRPDataPckg().iExtMessageBuffer = aFileParamBuffer;
       
   216     return SendReceive( EMSRPSendFile, TIpcArgs( &iSendMSRPDataPckg ) );
       
   217     }
       
   218 
       
   219 TInt RMSRPSession::ReceiveFileL(TDesC8& aFileParamBuffer)
       
   220     {
       
   221     /* Send File Params to the sub-session */
       
   222     MSRPLOG("RMSRP Session.. SendFileParams");
       
   223     iSendMSRPDataPckg().iExtMessageBuffer = aFileParamBuffer;
       
   224     return SendReceive( EMSRPReceiveFile, TIpcArgs( &iSendMSRPDataPckg ) );
       
   225     }
       
   226 #endif /* RMSRPSESSION_CPP_ */