omadrm/drmengine/server/inc/DRMRightsServer.h
changeset 56 88330f36f634
parent 23 493788a4a8a4
child 49 69d8e75812b7
--- 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<CDRMXOma>* iXOmaHeaders;
         RPointerArray<HBufC8> iActiveCountConstraints;
+        RPointerArray<class CUsageUrl> iActiveUrls;
 
         HBufC* iIMEI;
 
@@ -307,6 +349,7 @@
 
 };
 
+
 #endif      // CDRMRIGHTSSERVER_H
 
 // End of File