DrmInfoEvent.java revision d074e30ce44b9e33da43b67a4515b8986ca72b26
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 an entity class which would be passed to caller in
21d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi * {@link DrmManagerClient.OnInfoListener#onInfo(DrmManagerClient, DrmInfoEvent)}
22d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi *
23d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi */
24d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshipublic class DrmInfoEvent extends DrmEvent {
25d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi    /**
26d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     * TYPE_ALREADY_REGISTERED_BY_ANOTHER_ACCOUNT, when registration has been already done
27d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     * by another account ID.
28d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     */
29d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi    public static final int TYPE_ALREADY_REGISTERED_BY_ANOTHER_ACCOUNT = 0x0000001;
30d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi    /**
31d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     * TYPE_REMOVE_RIGHTS, when the rights needs to be removed completely.
32d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     */
33d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi    public static final int TYPE_REMOVE_RIGHTS = 0x0000002;
34d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi    /**
35d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     * TYPE_RIGHTS_INSTALLED, when the rights are downloaded and installed ok.
36d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     */
37d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi    public static final int TYPE_RIGHTS_INSTALLED = 0x0000003;
38d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi    /**
39d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     * TYPE_RIGHTS_NOT_INSTALLED, when something went wrong installing the rights.
40d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     */
41d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi    public static final int TYPE_RIGHTS_NOT_INSTALLED = 0x0000004;
42d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi    /**
43d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     * TYPE_RIGHTS_RENEWAL_NOT_ALLOWED, when the server rejects renewal of rights.
44d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     */
45d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi    public static final int TYPE_RIGHTS_RENEWAL_NOT_ALLOWED = 0x0000005;
46d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi    /**
47d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     * TYPE_NOT_SUPPORTED, when answer from server can not be handled by the native agent.
48d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     */
49d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi    public static final int TYPE_NOT_SUPPORTED = 0x0000006;
50d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi    /**
51d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     * TYPE_WAIT_FOR_RIGHTS, rights object is on it's way to phone,
52d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     * wait before calling checkRights again.
53d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     */
54d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi    public static final int TYPE_WAIT_FOR_RIGHTS = 0x0000007;
55d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi    /**
56d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     * TYPE_OUT_OF_MEMORY, when memory allocation fail during renewal.
57d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     * Can in the future perhaps be used to trigger garbage collector.
58d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     */
59d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi    public static final int TYPE_OUT_OF_MEMORY = 0x0000008;
60d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi    /**
61d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     * TYPE_NO_INTERNET_CONNECTION, when the Internet connection is missing and no attempt
62d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     * can be made to renew rights.
63d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     */
64d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi    public static final int TYPE_NO_INTERNET_CONNECTION = 0x0000009;
65d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi
66d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi    /**
67d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     * constructor to create DrmInfoEvent object with given parameters
68d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     *
69d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     * @param uniqueId Unique session identifier
70d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     * @param type Type of information
71d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     * @param message Message description
72d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi     */
73d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi    public DrmInfoEvent(int uniqueId, int type, String message) {
74d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi        super(uniqueId, type, message);
75d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi    }
76d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi}
77d074e30ce44b9e33da43b67a4515b8986ca72b26aimitakeshi
78