status_t BpDrmManagerService::saveRights( int uniqueId, const DrmRights& drmRights, const String8& rightsPath, const String8& contentPath) { LOGV("Save Rights"); Parcel data, reply; data.writeInterfaceToken(IDrmManagerService::getInterfaceDescriptor()); data.writeInt32(uniqueId); //Filling Drm Rights const DrmBuffer dataBuffer = drmRights.getData(); data.writeInt32(dataBuffer.length); data.write(dataBuffer.data, dataBuffer.length); const String8 mimeType = drmRights.getMimeType(); data.writeString8((mimeType == String8("")) ? String8("NULL") : mimeType); const String8 accountId = drmRights.getAccountId(); data.writeString8((accountId == String8("")) ? String8("NULL") : accountId); const String8 subscriptionId = drmRights.getSubscriptionId(); data.writeString8((subscriptionId == String8("")) ? String8("NULL") : subscriptionId); data.writeString8((rightsPath == String8("")) ? String8("NULL") : rightsPath); data.writeString8((contentPath == String8("")) ? String8("NULL") : contentPath); remote()->transact(SAVE_RIGHTS, data, &reply); return reply.readInt32(); }
void DrmManager::saveRights(int uniqueId, const DrmRights& drmRights, const String8& rightsPath, const String8& contentPath) { const String8 plugInId = getSupportedPlugInId(drmRights.getMimeType()); if (EMPTY_STRING != plugInId) { IDrmEngine& rDrmEngine = mPlugInManager.getPlugIn(plugInId); rDrmEngine.saveRights(uniqueId, drmRights, rightsPath, contentPath); } }
status_t DrmManager::saveRights(int uniqueId, const DrmRights& drmRights, const String8& rightsPath, const String8& contentPath) { const String8 plugInId = getSupportedPlugInId(drmRights.getMimeType()); status_t result = DRM_ERROR_UNKNOWN; if (EMPTY_STRING != plugInId) { IDrmEngine& rDrmEngine = mPlugInManager.getPlugIn(plugInId); result = rDrmEngine.saveRights(uniqueId, drmRights, rightsPath, contentPath); } return result; }