phoneclientserver/phoneserver/Src/CommandHandler/CPhSrvComHandRequest.cpp
author Pat Downey <patd@symbian.org>
Wed, 01 Sep 2010 12:15:03 +0100
branchRCL_3
changeset 20 987c9837762f
parent 19 7d48bed6ce0c
permissions -rw-r--r--
Revert incorrect RCL_3 drop: Revision: 201033 Kit: 201035

/*
* Copyright (c) 2003-2004 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:  Command Handler Request.
*
*/


// INCLUDE FILES

#include "CPhSrvComHandRequest.h"
#include "PhSrvUtils.h"




// ============================ MEMBER FUNCTIONS ===============================


// -----------------------------------------------------------------------------
// CPhSrvComHandRequest::CPhSrvComHandRequest
// 
// Constructor.
// -----------------------------------------------------------------------------
//
CPhSrvComHandRequest::CPhSrvComHandRequest( 
    const RMessage2& aMessage, 
    const TPhCltComHandCommandParameters& aParams, 
    TInt aSubSessionHandle )
:   iPendingRequestPointer( aMessage ), 
    iComHandParams( aParams ), 
    iSubSessionHandle( aSubSessionHandle )
    {
    }


// -----------------------------------------------------------------------------
// CPhSrvComHandRequest::CPhSrvComHandRequest
// 
// Constructor.
// -----------------------------------------------------------------------------
//
CPhSrvComHandRequest::CPhSrvComHandRequest()
    {
    }


// -----------------------------------------------------------------------------
// CPhSrvComHandRequest::NewLC
// 
// Static Symbian OS two-phase constructor. Return an instance
// and leave it on the cleanup stack.
// -----------------------------------------------------------------------------
//
CPhSrvComHandRequest* CPhSrvComHandRequest::NewLC( 
    const RMessage2& aMessage, 
    const TPhCltComHandCommandParameters& aParams, 
    TInt aSubSessionHandle )
    {
    CPhSrvComHandRequest* self = new( ELeave ) CPhSrvComHandRequest( 
        aMessage, 
        aParams, 
        aSubSessionHandle );
    CleanupStack::PushL( self );
    return self;
    }


// -----------------------------------------------------------------------------
// CPhSrvComHandRequest::NewL
// 
// Static Symbian OS two-phase constructor.
// -----------------------------------------------------------------------------
//
CPhSrvComHandRequest* CPhSrvComHandRequest::NewL()
    {
    CPhSrvComHandRequest* self = new( ELeave ) CPhSrvComHandRequest();
    return self;
    }


// -----------------------------------------------------------------------------
// CPhSrvComHandRequest::InformOfComHandRequestAttemptResult
// 
// Complete a client request which will indicate the result
// of attempting to perform a request.
// -----------------------------------------------------------------------------
//
void CPhSrvComHandRequest::InformOfComHandRequestAttemptResult( 
    TPhCltPhoneResults aResultOfAttemptingRequest )
    {
    // Complete the client's pending request, indicating 
    // the result of the command handler request attempt.
    iPendingRequestPointer.Complete( aResultOfAttemptingRequest );
    }


// -----------------------------------------------------------------------------
// CPhSrvComHandRequest::Cancel
// 
// Complete the client's request with KErrCancel.
// -----------------------------------------------------------------------------
//
void CPhSrvComHandRequest::Cancel()
    {
    iPendingRequestPointer.Complete( KErrCancel );
    }


// -----------------------------------------------------------------------------
// CPhSrvComHandRequest::SubSessionHandle
// 
// Return the handle of the subsession that initiated the
// original command handler request.
// -----------------------------------------------------------------------------
//
TInt CPhSrvComHandRequest::SubSessionHandle() const
    {
    return iSubSessionHandle;
    }


// -----------------------------------------------------------------------------
// CPhSrvComHandRequest::ComHandParameters
// 
// Returns the command handler parameters.
// -----------------------------------------------------------------------------
//
const TPhCltComHandCommandParameters& 
    CPhSrvComHandRequest::ComHandParameters() const
    {
    return iComHandParams;
    }


// -----------------------------------------------------------------------------
// CPhSrvComHandRequest::UpdateEmergencyRequest
// 
// Set new parameters to emergency request object.
// -----------------------------------------------------------------------------
//
void CPhSrvComHandRequest::UpdateEmergencyRequest( 
    const RMessage2& aMessage, 
    const TPhCltComHandCommandParameters& aParams, 
    TInt aSubSessionHandle )
    {
    iPendingRequestPointer = aMessage;
    iComHandParams = aParams;
    iSubSessionHandle = aSubSessionHandle;
    }


// -----------------------------------------------------------------------------
// CPhSrvComHandRequest::ClearEmergencyRequest
// 
// Empties Emergency request data.
// -----------------------------------------------------------------------------
//
void CPhSrvComHandRequest::ClearEmergencyRequest()
    {
    iSubSessionHandle = 0;
    }


// End of File