--- a/upnpavcontrolpoint/avcpengine/src/upnpmetadatacommand.cpp Mon Nov 01 13:44:24 2010 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,232 +0,0 @@
-/** @file
-* Copyright (c) 2005-2006 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: CUpnpMetadataCommand
-*
-*/
-
-
-#include "upnpmetadatacommand.h"
-
-#include "upnppathresolver.h"
-#include "upnppathelement.h"
-#include "upnpavcpmanager.h"
-#include "upnpavcontrolpoint.h"
-
-#include "upnpavcpenginehelper.h"
-using namespace UpnpAVCPEngine;
-
-#include "upnpstring.h"
-
-
-_LIT8(KFilterFlag, "*");
-
-// -----------------------------------------------------------------------------
-// CUpnpMetadataCommand::NewL
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CUpnpMetadataCommand* CUpnpMetadataCommand::NewL(CUpnpAVCPManager& aAVCPManager, CUpnpAVCPEngineSession& aSession, const RMessage2& aMessage)
- {
- CUpnpMetadataCommand* self = new( ELeave ) CUpnpMetadataCommand(aAVCPManager, aSession, aMessage);
-
- CleanupStack::PushL( self );
- self->ConstructL();
- CleanupStack::Pop( self );
-
- return self;
- }
-
-// -----------------------------------------------------------------------------
-// CUpnpMetadataCommand::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CUpnpMetadataCommand::ConstructL()
- {
- CUpnpCommand::BaseConstructL();
- }
-
-// -----------------------------------------------------------------------------
-// CUpnpMetadataCommand::CUpnpMetadataCommand
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// -----------------------------------------------------------------------------
-//
-CUpnpMetadataCommand::CUpnpMetadataCommand(CUpnpAVCPManager& aAVCPManager,
- CUpnpAVCPEngineSession& aSession,
- const RMessage2& aMessage):
- CUpnpCommand( aAVCPManager,
- aSession,
- aMessage)
- {
- }
-
-// -----------------------------------------------------------------------------
-// CUpnpMetadataCommand::~CUpnpMetadataCommand
-// desctructor
-// -----------------------------------------------------------------------------
-//
-CUpnpMetadataCommand::~CUpnpMetadataCommand()
- {
- delete iObjectId;
- delete iResult;
- delete iOldMetadata;
- delete iNewMetadata;
- }
-
-// -----------------------------------------------------------------------------
-// CUpnpMetadataCommand::SessionId
-// -----------------------------------------------------------------------------
-//
-TInt CUpnpMetadataCommand::SessionId()
-{
- return CUpnpCommand::SessionId();
-}
-
-// -----------------------------------------------------------------------------
-// CUpnpMetadataCommand::RunError
-// -----------------------------------------------------------------------------
-//
-void CUpnpMetadataCommand::RunError(TInt aErrorCode)
- {
- return CUpnpCommand::RunError(aErrorCode);
- }
-
-// -----------------------------------------------------------------------------
-// CUpnpMetadataCommand::ExecuteL
-// -----------------------------------------------------------------------------
-//
-void CUpnpMetadataCommand::ExecuteL()
- {
- //ASSERT(iType == EPrepareMetadata || iType == ESetMetadata);
-
- HBufC8* uuid = NULL;
- HBufC8* path = NULL;
- if (iType == EPrepareMetadata)
- {
- DEBUGSTRING(("Execute Metadata command (EPrepareMetadata)"));
- // set command id
- TPckg<TInt> numPckg(iId);
- iMessage.WriteL(0, numPckg);
-
- uuid = ReadDes8FromMessageLC(2);
- DEBUGSTRING8((" uuid: %S",uuid));
- path = ReadDes8FromMessageLC(3);
- DEBUGSTRING8((" path: %S",path));
- }
- else
- {
- DEBUGSTRING(("Execute Metadata command (ESetMetadata)"));
- uuid = ReadDes8FromMessageLC(0);
- DEBUGSTRING8((" uuid: %S",uuid));
- path = ReadDes8FromMessageLC(1);
- DEBUGSTRING8((" path: %S",path));
-
- HBufC8* old = ReadDes8FromMessageLC(2);
- iOldMetadata = UpnpString::EncodeXmlStringL(old);
- CleanupStack::PopAndDestroy( old );
-
- HBufC8* newXML = ReadDes8FromMessageLC(3);
- iNewMetadata = UpnpString::EncodeXmlStringL( newXML );
- CleanupStack::PopAndDestroy( newXML);
- }
-
- iPathResolver = &(iAVCPManager.PathResolverL(*uuid, &iSession));
-
- iPathResolver->ResolveIdL(*path, *this);
-
- CleanupStack::PopAndDestroy(path);
- CleanupStack::PopAndDestroy(uuid);
- }
-
-// -----------------------------------------------------------------------------
-// CUpnpMetadataCommand::SetResultL
-// -----------------------------------------------------------------------------
-//
-void CUpnpMetadataCommand::SetResultL(const RMessage2& aMessage)
- {
- //ASSERT(aMessage.Function() == EDownloadMetadata);
- if (iResult)
- {
- TPtr8 result = iResult->Des();
- aMessage.WriteL(1, result);
- }
- }
-
-// -----------------------------------------------------------------------------
-// CUpnpMetadataCommand::Interpret
-// -----------------------------------------------------------------------------
-//
-void CUpnpMetadataCommand::InterpretL(TInt aErrorCode, CUpnpAction* aAction)
- {
- DEBUGSTRING(("Interpret action response %d", aErrorCode));
- if (aErrorCode == EHttp200Ok)
- {
-
- if (iType == EPrepareMetadata)
- {
- iResult = aAction->ArgumentValue( KResult ).AllocL();
- TInt num = iResult->Length();
- TPckg<TInt> numPckg(num);
- // size of metadata information
- iMessage.WriteL(1, numPckg);
- iMessage.Complete(KErrNone);
- // don't destroy and wait for next command
- }
- else
- {
- // for set metadata
- iMessage.Complete(KErrNone);
- delete this;
- }
-
- }
- else
- {
- iMessage.Complete(KErrAbort);
- delete this;
- }
- }
-
-// -----------------------------------------------------------------------------
-// CUpnpMetadataCommand::ResolvedId
-// -----------------------------------------------------------------------------
-//
-void CUpnpMetadataCommand::ResolvedIdL(TInt aErrCode, CUpnpPathElement* aIdElement)
- {
-
- if (aErrCode == KErrNone)
- {
- iObjectId = aIdElement->Id().AllocL();
- if (iType == EPrepareMetadata)
- {
- iSessionId = iAVCPManager.CdsBrowseActionL(iPathResolver->UUID(), *iObjectId, KBrowseMetadata, KFilterFlag, 0, 0, KNullDesC8);
- }
- else //set metadata
- {
- iSessionId = iAVCPManager.CdsUpdateObjectActionL(iPathResolver->UUID(), *iObjectId, *iOldMetadata, *iNewMetadata);
- delete iOldMetadata;
- iOldMetadata = NULL;
- delete iNewMetadata;
- iNewMetadata = NULL;
- }
- iAVCPManager.RegisterForAction(*this);
- }
- else
- {
- iMessage.Complete(KErrNotFound);
- delete this;
- }
- }
-// End of File