forked from aosp-mirror/platform_frameworks_base
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDrmEvent.java
More file actions
130 lines (114 loc) · 3.75 KB
/
DrmEvent.java
File metadata and controls
130 lines (114 loc) · 3.75 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
/*
* Copyright (C) 2010 The Android Open Source Project
*
* 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.
*/
package android.drm;
import java.util.HashMap;
/**
* A base class that is used to send asynchronous event information from the DRM framework.
*
* @deprecated Please use {@link android.media.MediaDrm}
*/
@Deprecated
public class DrmEvent {
// Please do not add type constants in this class. More event type constants
// should go to DrmInfoEvent or DrmErrorEvent classes.
/**
* All of the rights information associated with all DRM schemes have been successfully removed.
*/
public static final int TYPE_ALL_RIGHTS_REMOVED = 1001;
/**
* The given DRM information has been successfully processed.
*/
public static final int TYPE_DRM_INFO_PROCESSED = 1002;
/**
* The key that is used in the <code>attributes</code> HashMap to pass the return status.
*/
public static final String DRM_INFO_STATUS_OBJECT = "drm_info_status_object";
/**
* The key that is used in the <code>attributes</code> HashMap to pass the
* {@link DrmInfo} object.
*/
public static final String DRM_INFO_OBJECT = "drm_info_object";
private final int mUniqueId;
private final int mType;
private String mMessage = "";
private HashMap<String, Object> mAttributes = new HashMap<String, Object>();
/**
* Creates a <code>DrmEvent</code> object with the specified parameters.
*
* @param uniqueId Unique session identifier.
* @param type Type of information.
* @param message Message description.
* @param attributes Attributes for extensible information.
*/
protected DrmEvent(int uniqueId, int type, String message,
HashMap<String, Object> attributes) {
mUniqueId = uniqueId;
mType = type;
if (null != message) {
mMessage = message;
}
if (null != attributes) {
mAttributes = attributes;
}
}
/**
* Creates a <code>DrmEvent</code> object with the specified parameters.
*
* @param uniqueId Unique session identifier.
* @param type Type of information.
* @param message Message description.
*/
protected DrmEvent(int uniqueId, int type, String message) {
mUniqueId = uniqueId;
mType = type;
if (null != message) {
mMessage = message;
}
}
/**
* Retrieves the unique session identifier associated with this object.
*
* @return The unique session identifier.
*/
public int getUniqueId() {
return mUniqueId;
}
/**
* Retrieves the type of information that is associated with this object.
*
* @return The type of information.
*/
public int getType() {
return mType;
}
/**
* Retrieves the message description associated with this object.
*
* @return The message description.
*/
public String getMessage() {
return mMessage;
}
/**
* Retrieves the attribute associated with the specified key.
*
* @return One of the attributes or null if no mapping for
* the key is found.
*/
public Object getAttribute(String key) {
return mAttributes.get(key);
}
}