ContentAccess::CRightsManager Class Reference

class ContentAccess::CRightsManager : public CBase

Manages and retrieves rights objects from an agent.

Inherits from

  • ContentAccess::CRightsManager

Constructor & Destructor Documentation

CRightsManager()

CRightsManager ( ) [private]

Constructor

~CRightsManager()

~CRightsManager ( ) [virtual]

Member Functions Documentation

ConstructL(TUid)

void ConstructL ( TUid aUid ) [private, virtual]

2nd phase constructor

Parameters

TUid aUid

DeleteAllRightsObjects(const TVirtualPathPtr &)

IMPORT_C TInt DeleteAllRightsObjects ( const TVirtualPathPtr & aVirtualPathPtr )

Deletes all rights associated with a particular content object

The agent may display a dialog asking the user to confirm the delete. Execution will be blocked until the dialog is complete. Applications can request to disable the agents user interface using the SetProperty() command.

capability
DRM Access to DRM rights is not permitted for processes without DRM capability.

Parameters

const TVirtualPathPtr & aVirtualPathPtr The content object.

DeleteAllRightsObjects(RFile &, const TDesC &)

IMPORT_C TInt DeleteAllRightsObjects ( RFile & aFile,
const TDesC & aUniqueId
)

Deletes all rights associated with a particular content object in a file specified by file handle. Can be used when the source file is in the client's private directory.

The agent may display a dialog asking the user to confirm the delete. Execution will be blocked until the dialog is complete. Applications can request to disable the agents user interface using the SetProperty() command.

capability
DRM Access to DRM rights is not permitted for processes without DRM capability.

Parameters

RFile & aFile The file handle for the file containing the content object.
const TDesC & aUniqueId The unique id of the content object.

DeleteRightsObject(const CRightsInfo &)

IMPORT_C TInt DeleteRightsObject ( const CRightsInfo & aRightsInfo )

Asks the DRM agent to delete a rights object

The agent may display a dialog asking the user to confirm the delete. Execution will be blocked until the dialog is complete. Applications can request to disable the agents user interface using the SetProperty() command.

capability
DRM Access to DRM rights is not permitted for processes without DRM capability.

Parameters

const CRightsInfo & aRightsInfo The rights object.

GetRightsDataL(const CRightsInfo &)

IMPORT_C MAgentRightsBase * GetRightsDataL ( const CRightsInfo & aRightsInfo ) const
This will be used by applications to retrieve an agent specific rights object
leave
KErrPermissionDenied If the agent does not permit the client to access rights information.
leave
... One of the CAF error codes defined in caferr.h or one of the other system-wide error codes for any other errors.
capability
DRM Access to DRM rights is not permitted for processes without DRM capability.

Parameters

const CRightsInfo & aRightsInfo The rights object.

ListAllRightsL(RStreamablePtrArray< CRightsInfo > &)

IMPORT_C void ListAllRightsL ( RStreamablePtrArray < CRightsInfo > & aArray ) const
List all rights held by the agent.
leave
KErrPermissionDenied If the agent does not permit the client to access rights information.
leave
... One of the CAF error codes defined in caferr.h or one of the other system-wide error codes for any other errors.
capability
DRM Access to DRM rights is not permitted for processes without DRM capability.

Parameters

RStreamablePtrArray < CRightsInfo > & aArray The client supplied array used to store the CRightsInfo objects. The agent will add CRightsInfo objects to the supplied array.

ListContentL(RStreamablePtrArray< CVirtualPath > &, CRightsInfo &)

IMPORT_C void ListContentL ( RStreamablePtrArray < CVirtualPath > & aArray,
CRightsInfo & aRightsInfo
) const
List all content associated with a particular rights object.
leave
KErrPermissionDenied If the agent does not permit the client to access rights information.
leave
... One of the CAF error codes defined in caferr.h or one of the other system-wide error codes for any other errors.
capability
DRM Access to DRM rights is not permitted for processes without DRM capability.

Parameters

RStreamablePtrArray < CVirtualPath > & aArray The client supplied array used to store the list of content objects. The agent will add CVirtualPath objects to the supplied array.
CRightsInfo & aRightsInfo The rights object.

ListRightsL(RStreamablePtrArray< CRightsInfo > &, const TDesC &)

IMPORT_C void ListRightsL ( RStreamablePtrArray < CRightsInfo > & aArray,
const TDesC & aUri
) const
List all rights associated with a particular file.
leave
KErrPermissionDenied If the agent does not permit the client to access rights information.
leave
... One of the CAF error codes defined in caferr.h or one of the other system-wide error codes for any other errors.
capability
DRM Access to DRM rights is not permitted for processes without DRM capability.

Parameters

RStreamablePtrArray < CRightsInfo > & aArray The client supplied array used to store the CRightsInfo objects. The agent will add CRightsInfo objects to the supplied array.
const TDesC & aUri The name of the file.

ListRightsL(RStreamablePtrArray< CRightsInfo > &, TVirtualPathPtr &)

IMPORT_C void ListRightsL ( RStreamablePtrArray < CRightsInfo > & aArray,
TVirtualPathPtr & aVirtualPath
) const
List all rights associated with a particular content object
leave
KErrPermissionDenied If the agent does not permit the client to access rights information.
leave
... One of the CAF error codes defined in caferr.h or one of the other system-wide error codes for any other errors.
capability
DRM Access to DRM rights is not permitted for processes without DRM capability.

Parameters

RStreamablePtrArray < CRightsInfo > & aArray The client supplied array used to store the CRightsInfo objects. The agent will add CRightsInfo objects to the supplied array.
TVirtualPathPtr & aVirtualPath The content object.

ListRightsL(RStreamablePtrArray< CRightsInfo > &, RFile &, const TDesC &)

IMPORT_C void ListRightsL ( RStreamablePtrArray < CRightsInfo > & aArray,
RFile & aFile,
const TDesC & aUniqueId
) const

List all rights associated with a particular content object in a file specified by file handle. Can be used when the source file is in the client's private directory.

leave
KErrCANotSupported if the feature not supported.
leave
KErrPermissionDenied If the agent does not permit the client to access rights information.
leave
... One of the CAF error codes defined in caferr.h or one of the other system-wide error codes for any other errors.
capability
DRM Access to DRM rights is not permitted for processes without DRM capability.

Parameters

RStreamablePtrArray < CRightsInfo > & aArray The client supplied array used to store the CRightsInfo objects. The agent will add CRightsInfo objects to the supplied array.
RFile & aFile The file handle for the file containing the content object.
const TDesC & aUniqueId The unique id of the content object.

NewL(TUid)

CRightsManager * NewL ( TUid aUid ) [private, static]

Only created by CManager

Parameters

TUid aUid

SetProperty(TAgentProperty, TInt)

IMPORT_C TInt SetProperty ( TAgentProperty aProperty,
TInt aValue
)

Request the agent to set a property value. If the property is set it is only set for this CRightsManager session and does not impact other CAF users.

ContentAccess::TAgentProperty
capability
DRM Access to DRM protected content is not permitted for processes without DRM capability. Access to unprotected content is unrestricted.

Parameters

TAgentProperty aProperty The property to set.
TInt aValue The value of the property.

Member Data Documentation

CAgentFactory * iAgentFactory

CAgentFactory * iAgentFactory [private]

CAgentRightsManager * iAgentRightsManager

CAgentRightsManager * iAgentRightsManager [private]