contentmgmt/contentaccessfwfordrm/source/caf/attribute.cpp
branchRCL_3
changeset 61 641f389e9157
parent 45 030c4fbc13d7
child 62 a71299154b21
--- a/contentmgmt/contentaccessfwfordrm/source/caf/attribute.cpp	Thu Aug 19 11:38:48 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/source/caf/attribute.cpp	Tue Aug 31 17:00:08 2010 +0300
@@ -48,6 +48,16 @@
 	return self;
 	}
 	
+#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
+CAttribute* CAttribute::NewLC(TUid aAgentUid, const TDesC8& aHeaderData)
+	{
+	CAttribute* self = new(ELeave) CAttribute();
+	CleanupStack::PushL(self);
+	self->ConstructL(aAgentUid, aHeaderData);
+	return self;
+	}
+#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
+
 CAttribute::CAttribute()
 	{
 	}
@@ -84,6 +94,18 @@
 	iResponseSet = CBitset::NewL(static_cast<TInt>(KAttrTop));
     }
 
+#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
+void CAttribute::ConstructL(TUid aAgentUid, const TDesC8& aHeaderData)
+	{
+	// create a agent factory implementation (pseudo ECOM handle)
+	iAgentFactory = CAgentFactory::NewL(aAgentUid);
+	iAgentContent = iAgentFactory->CreateContentBrowserL(aHeaderData);
+
+	iQuerySet = CBitset::NewL(static_cast<TInt>(KAttrTop));
+	iResponseSet = CBitset::NewL(static_cast<TInt>(KAttrTop));
+    }
+#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
+
 EXPORT_C void CAttribute::Reset()
 	{
 	iQuerySet->Reset();