/* * 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; /** * This class defines all the constants used by DRM framework * */ public class DrmStore { /** * Columns representing drm constraints */ public interface ConstraintsColumns { /** * The max repeat count *
Type: INTEGER
*/ public static final String MAX_REPEAT_COUNT = "max_repeat_count"; /** * The remaining repeat count *Type: INTEGER
*/ public static final String REMAINING_REPEAT_COUNT = "remaining_repeat_count"; /** * The time before which the protected file can not be played/viewed *Type: TEXT
*/ public static final String LICENSE_START_TIME = "license_start_time"; /** * The time after which the protected file can not be played/viewed *Type: TEXT
*/ public static final String LICENSE_EXPIRY_TIME = "license_expiry_time"; /** * The available time for license *Type: TEXT
*/ public static final String LICENSE_AVAILABLE_TIME = "license_available_time"; /** * The data stream for extended metadata *Type: TEXT
*/ public static final String EXTENDED_METADATA = "extended_metadata"; } /** * Defines constants related to DRM types */ public static class DrmObjectType { /** * Field specifies the unknown type */ public static final int UNKNOWN = 0x00; /** * Field specifies the protected content type */ public static final int CONTENT = 0x01; /** * Field specifies the rights information */ public static final int RIGHTS_OBJECT = 0x02; /** * Field specifies the trigger information */ public static final int TRIGGER_OBJECT = 0x03; } /** * Defines constants related to playback */ public static class Playback { /** * Constant field signifies playback start */ public static final int START = 0x00; /** * Constant field signifies playback stop */ public static final int STOP = 0x01; /** * Constant field signifies playback paused */ public static final int PAUSE = 0x02; /** * Constant field signifies playback resumed */ public static final int RESUME = 0x03; /* package */ static boolean isValid(int playbackStatus) { boolean isValid = false; switch (playbackStatus) { case START: case STOP: case PAUSE: case RESUME: isValid = true; } return isValid; } } /** * Defines actions that can be performed on protected content */ public static class Action { /** * Constant field signifies that the default action */ public static final int DEFAULT = 0x00; /** * Constant field signifies that the content can be played */ public static final int PLAY = 0x01; /** * Constant field signifies that the content can be set as ring tone */ public static final int RINGTONE = 0x02; /** * Constant field signifies that the content can be transfered */ public static final int TRANSFER = 0x03; /** * Constant field signifies that the content can be set as output */ public static final int OUTPUT = 0x04; /** * Constant field signifies that preview is allowed */ public static final int PREVIEW = 0x05; /** * Constant field signifies that the content can be executed */ public static final int EXECUTE = 0x06; /** * Constant field signifies that the content can displayed */ public static final int DISPLAY = 0x07; /* package */ static boolean isValid(int action) { boolean isValid = false; switch (action) { case DEFAULT: case PLAY: case RINGTONE: case TRANSFER: case OUTPUT: case PREVIEW: case EXECUTE: case DISPLAY: isValid = true; } return isValid; } } /** * Defines constants related to status of the rights */ public static class RightsStatus { /** * Constant field signifies that the rights are valid */ public static final int RIGHTS_VALID = 0x00; /** * Constant field signifies that the rights are invalid */ public static final int RIGHTS_INVALID = 0x01; /** * Constant field signifies that the rights are expired for the content */ public static final int RIGHTS_EXPIRED = 0x02; /** * Constant field signifies that the rights are not acquired for the content */ public static final int RIGHTS_NOT_ACQUIRED = 0x03; } }