diff -r 000000000000 -r 62f9d29f7211 webservices/wsframework/src/seninternalserviceconsumer.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/webservices/wsframework/src/seninternalserviceconsumer.cpp Thu Jan 07 16:19:19 2010 +0200 @@ -0,0 +1,168 @@ +/* +* Copyright (c) 2002-2005 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: +* +*/ + + + + + + + + + + + +// INCLUDE FILES +#include + +#include "seninternalserviceconsumer.h" +#include "senservicesession.h" +#include "senidentifier.h" + +//#include "MSenPolicy.h" // internal ServiceDescription\inc +#include "senpolicy.h" // internal ServiceDescription\inc +#include "sendebug.h" // internal Utils\inc + +EXPORT_C CSenInternalServiceConsumer::CSenInternalServiceConsumer( + TDescriptionClassType aType, + CSIF& aSIF) +: CSenWSDescription(aType), + iSIF(aSIF), + //iPolicy(NULL), // deprecated, not in use + ipConsumerId(NULL), + ipIdentifier(NULL) + { + } + + +EXPORT_C void CSenInternalServiceConsumer::ConstructL() + { + // Set the local name to "ServiceDescription" + // and initialize the inner ipElement + CSenWSDescription::ConstructL(); + + // Construct an empty policy + // iPolicy = CSenPolicy::NewL(); // deprecated, not in use + + ipConsumerId = iSIF.Manager().RandomGuidL(); + ipIdentifier = CSenIdentifier::NewL(SenIdentifier::ESession, + *ipConsumerId); + } + +EXPORT_C CSenInternalServiceConsumer::~CSenInternalServiceConsumer() + { + //delete iPolicy; // deprecated, not in use + delete ipConsumerId; + delete ipIdentifier; + } + +EXPORT_C TBool CSenInternalServiceConsumer::IsReadyL() + { + if(!ServiceSession()) + { + return EFalse; + } + else + { + return ServiceSession()->IsReadyL(); + } + } + +EXPORT_C const TDesC8& CSenInternalServiceConsumer::Id() const + { + if(ipConsumerId) + { + return *ipConsumerId; + } + else + { + return KNullDesC8(); + } + } + +EXPORT_C TInt CSenInternalServiceConsumer::SetSessionL(MSenRemoteServiceSession& /* aServiceSession */) + { + return KErrNone; + } + +EXPORT_C TInt CSenInternalServiceConsumer::HandleMessageL(HBufC8* apMessage, + const TInt /* aTxnId */, + MSenProperties* /* aResponseTransportProperties */) + { + delete apMessage; + return KErrNone; // KErrNotImplemented + } + + +EXPORT_C TInt CSenInternalServiceConsumer::HandleErrorL(HBufC8* apError, + const TInt /* aErrorCode */, + const TInt /* aTxnId */, + MSenProperties* /* aResponseTransportProperties */) + { + delete apError; + return KErrNone; // KErrNotImplemented + } + +EXPORT_C void CSenInternalServiceConsumer::SetStatusL(const TInt /* aStatus */) + { + } + +EXPORT_C CSIF& CSenInternalServiceConsumer::Framework() + { + return iSIF; + } + +/* +EXPORT_C RFileLogger* CSenInternalServiceConsumer::Log() const + { + // logs all into the service invocation framework's log: + return iSIF.Log(); +*/ + +EXPORT_C CSenIdentifier& CSenInternalServiceConsumer::Identifier() const + { + return *ipIdentifier; + } + +EXPORT_C TInt CSenInternalServiceConsumer::ChunkByTxnIdL(TInt /* aTxnId */, CSenChunk*& /* aChunk */) + { + return KErrNotSupported; + } + +EXPORT_C TBool CSenInternalServiceConsumer::HasSuperClass( TDescriptionClassType aType ) + { + if( aType == MSenServiceDescription::EWSDescription ) // direct superclass! + { + // If asked type is the know *direct* father/mother, return true: + return ETrue; + } + else + { + // Otherwise, ask from superclass (chain, recursively) + return CSenWSDescription::HasSuperClass( aType ); + } + } + +EXPORT_C void CSenInternalServiceConsumer::FileProgress(TInt /*aTxnId*/, TBool /*aIncoming*/, TBool /*aIsSoap*/, + const TDesC8& /*aSoapOrCid*/, TInt /*aProgress*/) + { + } +EXPORT_C void CSenInternalServiceConsumer::SetDataTrafficDetails( TSenDataTrafficDetails& /* aDetails*/) + { + } + + +// End of File