From dff06cb06f68b149f840f7f6a9bbc621c9b16087 Mon Sep 17 00:00:00 2001 From: PacketVideo CM Date: Tue, 15 Jun 2010 16:35:57 -0700 Subject: RIO-8608: Cleaned up DRM plugin interface Change-Id: I9c1697169cb894d68848b0c3a73a7bcbd524b933 --- engines/2way/src/pv_2way_sdkinfo.h | 2 +- engines/author/src/pv_author_sdkinfo.h | 2 +- engines/player/src/pv_player_sdkinfo.h | 2 +- .../include/pvmf_cpmplugin_domain_interface.h | 131 ------------------ .../pvmf_cpmplugin_license_manager_interface.h | 128 ----------------- .../include/pvmf_cpmplugin_metering_interface.h | 152 --------------------- 6 files changed, 3 insertions(+), 414 deletions(-) delete mode 100644 pvmi/content_policy_manager/plugins/common/include/pvmf_cpmplugin_domain_interface.h delete mode 100644 pvmi/content_policy_manager/plugins/common/include/pvmf_cpmplugin_license_manager_interface.h delete mode 100644 pvmi/content_policy_manager/plugins/common/include/pvmf_cpmplugin_metering_interface.h diff --git a/engines/2way/src/pv_2way_sdkinfo.h b/engines/2way/src/pv_2way_sdkinfo.h index 489220974..7c2cc27a2 100644 --- a/engines/2way/src/pv_2way_sdkinfo.h +++ b/engines/2way/src/pv_2way_sdkinfo.h @@ -21,7 +21,7 @@ // This header file is automatically generated at build-time // *** OFFICIAL RELEASE INFO -- Will not auto update -#define PV2WAY_ENGINE_SDKINFO_LABEL "1467301" +#define PV2WAY_ENGINE_SDKINFO_LABEL "1467359" #define PV2WAY_ENGINE_SDKINFO_DATE 0x20100528 #endif //PV_2WAY_SDKINFO_H_INCLUDED diff --git a/engines/author/src/pv_author_sdkinfo.h b/engines/author/src/pv_author_sdkinfo.h index 86081128b..41d516b82 100644 --- a/engines/author/src/pv_author_sdkinfo.h +++ b/engines/author/src/pv_author_sdkinfo.h @@ -21,7 +21,7 @@ // This header file is automatically generated at build-time // *** OFFICIAL RELEASE INFO -- Will not auto update -#define PVAUTHOR_ENGINE_SDKINFO_LABEL "1467301" +#define PVAUTHOR_ENGINE_SDKINFO_LABEL "1467359" #define PVAUTHOR_ENGINE_SDKINFO_DATE 0x20100528 #endif //PV_AUTHOR_SDKINFO_H_INCLUDED diff --git a/engines/player/src/pv_player_sdkinfo.h b/engines/player/src/pv_player_sdkinfo.h index 00c103150..c525ce377 100644 --- a/engines/player/src/pv_player_sdkinfo.h +++ b/engines/player/src/pv_player_sdkinfo.h @@ -21,7 +21,7 @@ // This header file is automatically generated at build-time // *** OFFICIAL RELEASE INFO -- Will not auto update -#define PVPLAYER_ENGINE_SDKINFO_LABEL "1467301" +#define PVPLAYER_ENGINE_SDKINFO_LABEL "1467359" #define PVPLAYER_ENGINE_SDKINFO_DATE 0x20100528 #endif //PV_PLAYER_SDKINFO_H_INCLUDED diff --git a/pvmi/content_policy_manager/plugins/common/include/pvmf_cpmplugin_domain_interface.h b/pvmi/content_policy_manager/plugins/common/include/pvmf_cpmplugin_domain_interface.h deleted file mode 100644 index cce629693..000000000 --- a/pvmi/content_policy_manager/plugins/common/include/pvmf_cpmplugin_domain_interface.h +++ /dev/null @@ -1,131 +0,0 @@ -/* ------------------------------------------------------------------ - * Copyright (C) 1998-2009 PacketVideo - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either - * express or implied. - * See the License for the specific language governing permissions - * and limitations under the License. - * ------------------------------------------------------------------- - */ -#ifndef PVMF_CPMPLUGIN_DOMAIN_INTERFACE_H_INCLUDED -#define PVMF_CPMPLUGIN_DOMAIN_INTERFACE_H_INCLUDED - -#ifndef OSCL_BASE_H_INCLUDED -#include "oscl_base.h" -#endif -#ifndef OSCL_TYPES_H_INCLUDED -#include "oscl_types.h" -#endif -#ifndef OSCL_VECTOR_H_INCLUDED -#include "oscl_vector.h" -#endif -#ifndef OSCL_STRING_H_INCLUDED -#include "oscl_string.h" -#endif -#ifndef PV_UUID_H_INCLUDED -#include "pv_uuid.h" -#endif -#ifndef PV_INTERFACE_H_INCLUDED -#include "pv_interface.h" -#endif -#include "pvmf_return_codes.h" -#include "pvmf_event_handling.h" -#include "pvmf_cpmplugin_domain_interface_types.h" - -#define PVMF_CPMPLUGIN_DOMAIN_INTERFACE_MIMETYPE "pvxxx/pvmf/cpm/plugin/domain_interface" -#define PVMFCPMPluginDomainInterfaceUuid PVUuid(0x379e6e10,0x8a53,0x11db,0xb6,0x06,0x08,0x00,0x20,0x0c,0x9a,0x66) - - -/** - * License interface for all Content Policy Manager Plugins - */ -class PVMFCPMPluginDomainInterface : public PVInterface -{ - public: - /** - * Method to get the current number of domains - * - * @param [out] aCount: number of domains - * @param [out] errcode: error code in case of failure. - * - * @returns PVMFSuccess or an error. - */ - virtual PVMFStatus GetDomainCount( - uint32& aCount - , uint32& errcode) = 0; - - /** - * Method to get the current domains. - * - * @param [in] aIndex: zero-based index of the desired domain info. - * - * @param [out] aDomainCertData the domain cert data. - * - * @param [out] errcode: error code in case of failure. - * - * @returns PVMFSuccess or an error. - */ - virtual PVMFStatus GetDomain( - uint32 aIndex - , PVMFCPMDomainCertData& aDomainCertData - , uint32& errcode) = 0; - - /** - * Method to check existence of a domain certificate. - * - * @param [in] aDomainId: ID of the domain to check - * - * @param [out] errcode: error code in case of failure. - * - * @returns PVMFSuccess or an error. - */ - virtual PVMFStatus CheckDomainCertificate( - const PVMFCPMDomainId& aDomainId - , uint32& errcode) = 0; - - /** - * Method to join a domain - * - * @param [in] aSessionId: The assigned plugin session ID to use for this request - * - * @param [in] aJoinData: request parameters. - * - * @param [in] Timeout for the request in milliseconds, or (-1) for - * infinite wait. - * - * @returns A unique command id for asynchronous completion. - */ - virtual PVMFCommandId JoinDomain( - PVMFSessionId aSessionId - , const PVMFCPMDomainJoinData& aJoinData - , int32 aTimeoutMsec = (-1)) = 0; - - /** - * Method to leave a domain - * - * @param [in] aSessionId: The assigned plugin session ID to use for this request - * - * @param [in] aLeaveData: request parameters. - * - * @param [in] Timeout for the request in milliseconds, or (-1) for - * infinite wait. - * - * @returns A unique command id for asynchronous completion. - */ - virtual PVMFCommandId LeaveDomain( - PVMFSessionId aSessionId - , const PVMFCPMDomainLeaveData& aLeaveData - , int32 aTimeoutMsec = (-1)) = 0; - -}; - -#endif //PVMF_CPMPLUGIN_DOMAIN_INTERFACE_H_INCLUDED - diff --git a/pvmi/content_policy_manager/plugins/common/include/pvmf_cpmplugin_license_manager_interface.h b/pvmi/content_policy_manager/plugins/common/include/pvmf_cpmplugin_license_manager_interface.h deleted file mode 100644 index ee5c400d8..000000000 --- a/pvmi/content_policy_manager/plugins/common/include/pvmf_cpmplugin_license_manager_interface.h +++ /dev/null @@ -1,128 +0,0 @@ -/* ------------------------------------------------------------------ - * Copyright (C) 1998-2010 PacketVideo - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either - * express or implied. - * See the License for the specific language governing permissions - * and limitations under the License. - * ------------------------------------------------------------------- - */ -#ifndef PVMF_CPMPLUGIN_LICENSE_MANAGER_INTERFACE_H_INCLUDED -#define PVMF_CPMPLUGIN_LICENSE_MANAGER_INTERFACE_H_INCLUDED - -#ifndef OSCL_BASE_H_INCLUDED -#include "oscl_base.h" -#endif -#ifndef OSCL_TYPES_H_INCLUDED -#include "oscl_types.h" -#endif -#ifndef OSCL_VECTOR_H_INCLUDED -#include "oscl_vector.h" -#endif -#ifndef OSCL_STRING_H_INCLUDED -#include "oscl_string.h" -#endif -#ifndef PV_UUID_H_INCLUDED -#include "pv_uuid.h" -#endif -#ifndef PV_INTERFACE_H_INCLUDED -#include "pv_interface.h" -#endif -#include "pvmf_return_codes.h" -#include "pvmf_event_handling.h" -#include "pvmf_cpmplugin_license_manager_interface_types.h" -#include "pvmf_cpmplugin_domain_interface_types.h" - -#define PVMF_CPMPLUGIN_LICENSE_MANAGER_INTERFACE_MIMETYPE "pvxxx/pvmf/cpm/plugin/license_manager_interface" -#define PVMFCPMPluginLicenseManagerInterfaceUuid PVUuid(0x05b8186a,0xc2b1,0x11db,0x83,0x14,0x08,0x00,0x20,0x0c,0x9a,0x66) - -/** - * License Manager interface for all Content Policy Manager Plugins - */ -class PVMFCPMPluginLicenseManagerInterface : public PVInterface -{ - public: - - /** - * Method to perform license store maintenance. - * - * @param [out] Additional error code - * @param [in] Optional opaque data associated with the request. - * @param [in] Size of the optional opaque data. - * - * @returns PVMFSuccess or an error - */ - virtual PVMFStatus LicenseStoreMaintenance(uint32 &aErrCode, OsclAny* aData = NULL - , uint32 aDataSize = 0) = 0; - - /** - * Method to get the status of an ongoing or recently completed - * LicenseStoreMaintenance command. - * - * @param [out] aStatus: clean store status output - * - * @returns: PVMFSuccess if status is available, an error - * otherwise. - */ - virtual PVMFStatus GetLicenseStoreMaintenanceStatus( - PVMFCPMLicenseStoreMaintenanceStatus& aStatus) = 0; - - /** - * Method to delete a license from the store - * - * @param [in] content ID - * @param [out] aErrcode: additional error code - * - * @returns PVMFSuccess or an error - */ - virtual PVMFStatus DeleteLicense(const OSCL_String& aContentID - , uint32 &aErrcode) = 0; - - /** - * Method to retrieve the list of licenses that are pending expiry and need to - * be updated/renewed from the server. This method gives greater control to the - * application, since it gives greater flexibility and control of updating licenses - * that it deems necessary. - * - * @param [out] aSyncList: A vector that would contain the list of licenses based on the - * filtering criteria below. - * @param [out] aErrCode: error code in case of failure. - * @param [in] aMaxRemainingCount: For counted licenses, retrieve only those that have - * less than the specified number of play counts remaining. To retrieve all counted - * licenses regardless of the counts remaining, use (-1). - * @param [in] aMaxRemainingHours: For time-based licenses, retrieve only those that have - * less than the specified value of hours remaining. To retrieve all time-based - * licenses regardless of the time remaining, use (-1). - * - * @returns: PVMFSuccess if licenses are available, an error otherwise. - */ - - virtual PVMFStatus GetLicenseSyncList( - Oscl_Vector &aSyncList - , uint32& aErrCode - , int32 aMaxRemainingCount = -1 - , int32 aMaxRemainingHours = -1) = 0; - - /** - * Method to delete all stored licenses for streaming content. - * - * @param [out] errcode: error code in case of failure. - * @returns: PVMFSuccess if separate store for streaming licenses is available, - * an error otherwise. - */ - - virtual PVMFStatus PurgeStreamingLicenses( - uint32& errcode) = 0; -}; - - -#endif //PVMF_CPMPLUGIN_LICENSE_INTERFACE_H_INCLUDED - diff --git a/pvmi/content_policy_manager/plugins/common/include/pvmf_cpmplugin_metering_interface.h b/pvmi/content_policy_manager/plugins/common/include/pvmf_cpmplugin_metering_interface.h deleted file mode 100644 index 61bd4c2af..000000000 --- a/pvmi/content_policy_manager/plugins/common/include/pvmf_cpmplugin_metering_interface.h +++ /dev/null @@ -1,152 +0,0 @@ -/* ------------------------------------------------------------------ - * Copyright (C) 1998-2010 PacketVideo - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either - * express or implied. - * See the License for the specific language governing permissions - * and limitations under the License. - * ------------------------------------------------------------------- - */ -#ifndef PVMF_CPMPLUGIN_METERING_INTERFACE_H_INCLUDED -#define PVMF_CPMPLUGIN_METERING_INTERFACE_H_INCLUDED - -#ifndef OSCL_BASE_H_INCLUDED -#include "oscl_base.h" -#endif -#ifndef OSCL_TYPES_H_INCLUDED -#include "oscl_types.h" -#endif -#ifndef OSCL_VECTOR_H_INCLUDED -#include "oscl_vector.h" -#endif -#ifndef OSCL_STRING_H_INCLUDED -#include "oscl_string.h" -#endif -#ifndef PV_UUID_H_INCLUDED -#include "pv_uuid.h" -#endif -#ifndef PV_INTERFACE_H_INCLUDED -#include "pv_interface.h" -#endif -#include "pvmf_return_codes.h" -#include "pvmf_event_handling.h" -#include "pvmf_cpmplugin_metering_interface_types.h" - -#define PVMF_CPMPLUGIN_METERING_INTERFACE_MIMETYPE "pvxxx/pvmf/cpm/plugin/metering_interface" -#define PVMFCPMPluginMeteringInterfaceUuid PVUuid(0x5efe8be0,0xb62f,0x11db,0xab,0xbd,0x08,0x00,0x20,0x0c,0x9a,0x66) - - -/** - * Metering interface for all Content Policy Manager Plugins - */ -class PVMFCPMPluginMeteringInterface : public PVInterface -{ - public: - - /** - * Method to report metering data for a specific Meter ID. - * The meter cert store will be searched for a certificate with - * the given meter ID. If the meter ID is found but there is no - * certificate, then an attempt will be made to acquire the - * certificate from the server. If the certificate is acquired - * successfully then metering will be reported for that certificate. - * - * To get status during or after this operation, use GetMeteringStatus. - * To interrupt and cancel metering, use the plugin CancelCommand. - * - * @param [in] aSessionId: The observer session Id. - * @param [in] aMeteringData: PVMFCPMMeteringData structure containing - * data related to this metering request. - * @param [in] aTimeoutMsec: Optional timeout in milliseconds - * for each server communication. Use -1 to indicate infinite wait. - * @param [in] aContextData: Optional user data that will be returned - * in the command completion callback. - * - * @returns A unique command id for asynchronous completion. - */ - virtual PVMFCommandId ReportMeteringData( - PVMFSessionId aSessionId, - const PVMFCPMMeteringData& aMeteringData, - int32 aTimeoutMsec = (-1), - OsclAny* aContextData = NULL) = 0; - - /** - * Method to get count of meter certificates present in the store. - * - * @param [out] aCount: Number of meter certs present. - * @param [out] aErrCode: WMDRM error code in case an error occurred. - * - * @returns: PVMFSuccess or an error. - */ - virtual PVMFStatus GetMeterIDCount( - uint32& aCount - , uint32& errcode) = 0; - - /** - * Method to get MID of a meter cert present in the store. - * - * @param [in] aIndex: Zero-based index of the desired meter cert. - * Meter cert count can be obtained using GetMeterCertCount(). - * - * @param [out] aMID: MID of the meter cert at index aIndex. - * - * @param [out] errcode: error code in case of failure. - * - * @returns PVMFSuccess or an error. - */ - virtual PVMFStatus GetMeterID( - uint32 aIndex, - PVMFCPMMeterId &aMID, - uint32& aErrCode) = 0; - - /** - * Method to get the status of an ongoing or recently completed - * metering sequence. - * - * @param [out] aStatus: meter status output - * - * @returns: PVMFSuccess if meter status is available, an error - * otherwise. - */ - virtual PVMFStatus GetMeteringStatus( - PVMFCPMMeterStatus& aStatus) = 0; - - /** - * Method deletes a metering certificate from the metering certificate - * store. - * - * @param [in] aMeteringData: PVMFCPMMeteringData structure containing - * data related to this metering request. - * @param [out] aErrCode: Error code - * - * @returns PVMFSuccess or error - */ - virtual PVMFStatus DeleteMeterCertificate( - const PVMFCPMMeterId& aMeteringData, - uint32& aErrCode) = 0; - - /** - * Method invalidates a metering certificate in a metering certificate context. - * store. - * - * @param [in] aMeteringData: PVMFCPMMeteringData structure containing - * data related to this metering request. - * @param [out] aErrCode: Error code. - * - * @returns PVMFSuccess or error - */ - virtual PVMFStatus InvalidateMeterCertificate( - const PVMFCPMMeterId& aMeteringData, - uint32& aErrCode) = 0; -}; - -#endif //PVMF_CPMPLUGIN_DOMAIN_INTERFACE_H_INCLUDED - -- cgit v1.2.3