DrmEvent.java revision dc549d60f98d809f626c99de614960409a847054
1d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi/* 2d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * Copyright (C) 2010 The Android Open Source Project 3d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * 4d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * Licensed under the Apache License, Version 2.0 (the "License"); 5d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * you may not use this file except in compliance with the License. 6d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * You may obtain a copy of the License at 7d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * 8d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * http://www.apache.org/licenses/LICENSE-2.0 9d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * 10d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * Unless required by applicable law or agreed to in writing, software 11d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * distributed under the License is distributed on an "AS IS" BASIS, 12d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * See the License for the specific language governing permissions and 14d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * limitations under the License. 15d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi */ 16d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi 17d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshipackage android.drm; 18d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi 19d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi/** 20d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * This is the base class which would be used to notify the caller 21d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * about any event occurred in DRM framework. 22d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * 23d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi */ 24d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshipublic class DrmEvent { 25dc549d60f98d809f626c99de614960409a847054Takeshi Aimi /** 26dc549d60f98d809f626c99de614960409a847054Takeshi Aimi * Constant field signifies that unload and finalize the loaded plugins successfully 27dc549d60f98d809f626c99de614960409a847054Takeshi Aimi */ 28dc549d60f98d809f626c99de614960409a847054Takeshi Aimi public static final int TYPE_FINALIZED = 1001; 29dc549d60f98d809f626c99de614960409a847054Takeshi Aimi /** 30dc549d60f98d809f626c99de614960409a847054Takeshi Aimi * Constant field signifies that register with the service successfully 31dc549d60f98d809f626c99de614960409a847054Takeshi Aimi */ 32dc549d60f98d809f626c99de614960409a847054Takeshi Aimi public static final int TYPE_REGISTERED = 1002; 33dc549d60f98d809f626c99de614960409a847054Takeshi Aimi /** 34dc549d60f98d809f626c99de614960409a847054Takeshi Aimi * Constant field signifies that load and initialized the available plugins successfully 35dc549d60f98d809f626c99de614960409a847054Takeshi Aimi */ 36dc549d60f98d809f626c99de614960409a847054Takeshi Aimi public static final int TYPE_INITIALIZED = 1003; 37dc549d60f98d809f626c99de614960409a847054Takeshi Aimi /** 38dc549d60f98d809f626c99de614960409a847054Takeshi Aimi * Constant field signifies that unregister with the service successfully 39dc549d60f98d809f626c99de614960409a847054Takeshi Aimi */ 40dc549d60f98d809f626c99de614960409a847054Takeshi Aimi public static final int TYPE_UNREGISTERED = 1004; 41dc549d60f98d809f626c99de614960409a847054Takeshi Aimi /** 42dc549d60f98d809f626c99de614960409a847054Takeshi Aimi * Constant field signifies that rights information is acquired successfully 43dc549d60f98d809f626c99de614960409a847054Takeshi Aimi */ 44dc549d60f98d809f626c99de614960409a847054Takeshi Aimi public static final int TYPE_RIGHTS_ACQUIRED = 1005; 45dc549d60f98d809f626c99de614960409a847054Takeshi Aimi /** 46dc549d60f98d809f626c99de614960409a847054Takeshi Aimi * Constant field signifies that all the rights information associated with 47dc549d60f98d809f626c99de614960409a847054Takeshi Aimi * all DRM schemes are removed successfully 48dc549d60f98d809f626c99de614960409a847054Takeshi Aimi */ 49dc549d60f98d809f626c99de614960409a847054Takeshi Aimi public static final int TYPE_ALL_RIGHTS_REMOVED = 1006; 50dc549d60f98d809f626c99de614960409a847054Takeshi Aimi /** 51dc549d60f98d809f626c99de614960409a847054Takeshi Aimi * Constant field signifies that the required information to communicate with 52dc549d60f98d809f626c99de614960409a847054Takeshi Aimi * the service is acquired sucessfully 53dc549d60f98d809f626c99de614960409a847054Takeshi Aimi */ 54dc549d60f98d809f626c99de614960409a847054Takeshi Aimi public static final int TYPE_DRM_INFO_ACQUIRED = 1007; 55dc549d60f98d809f626c99de614960409a847054Takeshi Aimi 56dc549d60f98d809f626c99de614960409a847054Takeshi Aimi public static final String DRM_INFO_STATUS_OBJECT = "drm_info_status_object"; 57dc549d60f98d809f626c99de614960409a847054Takeshi Aimi public static final String DRM_INFO_OBJECT = "drm_info_object"; 58dc549d60f98d809f626c99de614960409a847054Takeshi Aimi 59d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi private final int mUniqueId; 60d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi private final int mType; 61d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi private String mMessage = ""; 62d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi 63d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi /** 64d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * constructor for DrmEvent class 65d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * 66d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * @param uniqueId Unique session identifier 67d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * @param type Type of information 68d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * @param message Message description 69d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi */ 70d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi protected DrmEvent(int uniqueId, int type, String message) { 71d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi mUniqueId = uniqueId; 72d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi mType = type; 73d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi 74d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi if (null != message) { 75d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi mMessage = message; 76d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi } 77d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi } 78d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi 79d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi /** 80d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * Returns the Unique Id associated with this object 81d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * 82d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * @return Unique Id 83d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi */ 84d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi public int getUniqueId() { 85d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi return mUniqueId; 86d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi } 87d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi 88d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi /** 89d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * Returns the Type of information associated with this object 90d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * 91d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * @return Type of information 92d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi */ 93d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi public int getType() { 94d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi return mType; 95d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi } 96d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi 97d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi /** 98d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * Returns the message description associated with this object 99d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * 100d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * @return message description 101d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi */ 102d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi public String getMessage() { 103d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi return mMessage; 104d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi } 105d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi} 106d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi 107