From e943f84129326ab885cc7a69dcfa17f766b72b89 Mon Sep 17 00:00:00 2001 From: Takeshi Aimi Date: Fri, 8 Oct 2010 23:05:49 +0900 Subject: Update of DRM framework - Overload openDecryptSession() with uri parameter in order to accept URI of DRM content, Following API is added, DecryptHandle*openDecryptSession(const char* uri);. - Unify texisting three event types of processDrmInfo() so that caller of DRM framework does not have to handle many event types. - Let DrmManagerService call load/unload plugins API so that client of DRM framework does not have to manage plug-in load/unload. - Trivial fix in DrmManagerClient.java is also incorporated. Changes are made by Sony Corporation. Change-Id: If62b47fa0360718fdc943e6e6143671d7db26adc --- include/drm/DrmManagerClient.h | 31 +++++++++++-------------------- 1 file changed, 11 insertions(+), 20 deletions(-) (limited to 'include/drm/DrmManagerClient.h') diff --git a/include/drm/DrmManagerClient.h b/include/drm/DrmManagerClient.h index c2ad084..5963c42 100644 --- a/include/drm/DrmManagerClient.h +++ b/include/drm/DrmManagerClient.h @@ -17,6 +17,7 @@ #ifndef __DRM_MANAGER_CLIENT_H__ #define __DRM_MANAGER_CLIENT_H__ +#include #include #include "drm_framework_common.h" @@ -67,6 +68,15 @@ public: DecryptHandle* openDecryptSession(int fd, int offset, int length); /** + * Open the decrypt session to decrypt the given protected content + * + * @param[in] uri Path of the protected content to be decrypted + * @return + * Handle for the decryption session + */ + DecryptHandle* openDecryptSession(const char* uri); + + /** * Close the decrypt session for the given handle * * @param[in] decryptHandle Handle for the decryption session @@ -339,27 +349,8 @@ public: status_t getAllSupportInfo(int* length, DrmSupportInfo** drmSupportInfoArray); private: - /** - * Initialize DRM Manager - * load available plug-ins from default plugInDirPath - * - * @return status_t - * Returns DRM_NO_ERROR for success, DRM_ERROR_UNKNOWN for failure - */ - status_t loadPlugIns(); - - /** - * Finalize DRM Manager - * release resources associated with each plug-in - * unload all plug-ins and etc. - * - * @return status_t - * Returns DRM_NO_ERROR for success, DRM_ERROR_UNKNOWN for failure - */ - status_t unloadPlugIns(); - -private: int mUniqueId; + Mutex mDecryptLock; DrmManagerClientImpl* mDrmManagerClientImpl; }; -- cgit v1.1