diff -r a7bc3704293e -r 88330f36f634 omadrm/drmengine/server/inc/DRMRightsServer.h --- a/omadrm/drmengine/server/inc/DRMRightsServer.h Fri Jun 11 13:56:06 2010 +0300 +++ b/omadrm/drmengine/server/inc/DRMRightsServer.h Wed Jun 23 18:30:42 2010 +0300 @@ -40,7 +40,20 @@ class CDRMBackup; class RMobilePhone; -// CLASS DECLARATION +// CLASS DECLARATIONS + +// Data Class: +NONSHARABLE_CLASS( CUsageUrl ) : public CBase + { + public: + CUsageUrl(); + virtual ~CUsageUrl(); + + public: // Data + HBufC8* iUrl; + TInt iRefCounter; + }; + /** * This class implements the DRM5 Rights Server functionality. @@ -49,7 +62,7 @@ * @since S60Rel2.5 */ NONSHARABLE_CLASS( CDRMRightsServer ) : public CServer2, public MWatcherObserver - { + { public: // Constructors and destructor /** @@ -162,6 +175,34 @@ */ void AddActiveCountConstraintL( const TDesC8& aContentId ); + + /** + * Checks if a content ID is in the list of currently consumed contents + * + * @since 5.2 + * @param aContentId content ID to search for + * @return Index or the Url if the content ID is in the list + * KErrNotFound if the content ID is not in the list + */ + TInt IsAccessingUrl( const TDesC8& aContentId ); + + /** + * Removes a content ID from the list of currently consumed contents + * + * @since 5.2 + * @param aContentId content ID to remove + */ + void RemoveAccessingUrl( const TDesC8& aContentId ); + + /** + * Adds a content ID to the list of currently consumed contents + * + * @since 5.2 + * @param aContentId content ID to add + */ + void AddAccessingUrlL( const TDesC8& aContentId ); + + /** * Import rights objects on startup * @@ -275,6 +316,7 @@ RDRMClockClient iClock; RPointerArray* iXOmaHeaders; RPointerArray iActiveCountConstraints; + RPointerArray iActiveUrls; HBufC* iIMEI; @@ -307,6 +349,7 @@ }; + #endif // CDRMRIGHTSSERVER_H // End of File