diff -r 000000000000 -r 2c201484c85f contentmgmt/contentaccessfwfordrm/source/caf/Rightsmanager.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/contentmgmt/contentaccessfwfordrm/source/caf/Rightsmanager.cpp Wed Jul 08 11:25:26 2009 +0100 @@ -0,0 +1,94 @@ +/* +* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of the License "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 "rightsmanager.h" +#include "agentfactory.h" +#include "agentinfo.h" +#include "agentinterface.h" + +using namespace ContentAccess; + +CRightsManager* CRightsManager::NewL(TUid aUid) + { + CRightsManager *self = new (ELeave) CRightsManager; + CleanupStack::PushL(self); + self->ConstructL(aUid); + CleanupStack::Pop(self); + return self; + } + +CRightsManager::CRightsManager() + { + + } + +CRightsManager::~CRightsManager() + { + delete iAgentRightsManager; + delete iAgentFactory; + REComSession::FinalClose(); + } + +void CRightsManager::ConstructL(TUid aUid) + { + // create our own agent factory (de-facto session handle for ECOM) + iAgentFactory = CAgentFactory::NewL(aUid); + + // Create an instance of the Agent's CAgentData + iAgentRightsManager = iAgentFactory->CreateRightsManagerL(); + } + +EXPORT_C void CRightsManager::ListAllRightsL(RStreamablePtrArray& aArray) const + { + iAgentRightsManager->ListAllRightsL(aArray); + } + +EXPORT_C void CRightsManager::ListRightsL(RStreamablePtrArray& aArray, const TDesC& aUri) const + { + iAgentRightsManager->ListRightsL(aArray, aUri); + } + +EXPORT_C void CRightsManager::ListRightsL(RStreamablePtrArray& aArray, TVirtualPathPtr& aVirtualPath) const + { + iAgentRightsManager->ListRightsL(aArray, aVirtualPath); + } + +EXPORT_C void CRightsManager::ListContentL(RStreamablePtrArray& aArray, CRightsInfo& aRightsInfo) const + { + iAgentRightsManager->ListContentL(aArray, aRightsInfo); + } + +EXPORT_C MAgentRightsBase* CRightsManager::GetRightsDataL(const CRightsInfo& aRightsInfo) const + { + return iAgentRightsManager->GetRightsDataL(aRightsInfo); + } + +EXPORT_C TInt CRightsManager::DeleteRightsObject(const CRightsInfo& aRightsInfo) + { + return iAgentRightsManager->DeleteRightsObject(aRightsInfo); + } + +EXPORT_C TInt CRightsManager::DeleteAllRightsObjects(const TVirtualPathPtr& aVirtualPathPtr) + { + return iAgentRightsManager->DeleteAllRightsObjects(aVirtualPathPtr); + } + +EXPORT_C TInt CRightsManager::SetProperty(TAgentProperty aProperty, TInt aValue) + { + return iAgentRightsManager->SetProperty(aProperty, aValue); + }