Adobe® Flex® 4 Language Reference
Hide Packages and Classes List |  Packages  |  Classes  |  Index  |  Appendixes
flash.events 
DRMErrorEvent 
Packageflash.events
Classpublic class DRMErrorEvent
InheritanceDRMErrorEvent Inheritance ErrorEvent Inheritance TextEvent Inheritance Event Inheritance Object

Language Version: ActionScript 3.0
Runtime Versions: AIR 1.0

AIR dispatches a DRMErrorEvent object when a NetStream object, trying to play a digital rights management (DRM) encrypted file, encounters a DRM-related error. For example, a DRMErrorEvent object is dispatched when the content provider does not support the viewing application, or when the user authorization fails, possibly because the user has not purchased the content.

In the case of invalid user credentials, the DRMAuthenticateEvent object handles the error by repeatedly dispatching until the user enters valid credentials, or the AIR application denies further attempts. The application should listen to any other DRM error events in order to detect, identify, and handle the DRM-related errors.

This class provides properties containing the object throwing the exception, the error code, and, where applicable, a suberror code and text message containing information related to the error.

Error codeSuberror codeError DetailsDescription
3300 Adobe Policy Server error code n/aThe application detected an invalid voucher associated with the content.
3301 0 n/aUser authentication failed.
3302 0 n/aSecure Sockets Layer (SSL) is not supported by the Flash Media Rights Management Server (FMRMS).
3303 0 n/aThe content has expired and is no longer available for viewing.
3304 0 n/aUser authorization failure. This can occur even if the user is authenticated, for example, if the user has not purchased the rights to view the content.
3305 0 Server URL Cannot connect to the server.
3306 0 n/aA client update is required; Flash Media Rights Management Server requires a new digital rights management client engine.
3307 0 n/aGeneric internal digital rights management failure.
3308 Detailed decryption error code n/aAn incorrect license key.
3309 0 n/aVideo content is corrupted.
3310 0 publisherID:applicationID The ID of the viewing application does not match a valid ID supported by the content publisher. The content provider does not support the application.
3311 0 Min=x:max=y Application version does not match what is specified in the voucher.
3312 0 n/aVerification of the voucher associated with the encrypted content failed, indicating that the content may be corrupted.
3313 0 n/aThe voucher associated with the encrypted content could not be saved to Microsafe.
3314 0 n/aVerification of the FLV header integrity failed, indicating that the content may be corrupted.
3315 0 n/aRemote playback of the DRM protected content is not allowed.
3316 0 n/aMissing AdobeCP module.
3317 0 n/aLoad AdobeCP module failed.
3318 0 n/aIncompatible AdobeCP Version found.
3319 0 n/aMissing AdobeCP API entry point.
3320 0 n/aAdobeCP module is not authenticated.

View the examples

See also



Public Properties
 PropertyDefined By
 Inheritedbubbles : Boolean
[read-only] Indicates whether an event is a bubbling event.
Event
 Inheritedcancelable : Boolean
[read-only] Indicates whether the behavior associated with the event can be prevented.
Event
 Inheritedconstructor : Object
A reference to the class object or constructor function for a given object instance.
Object
  contentData : DRMContentData
The DRMContentData for the media file.
DRMErrorEvent
 InheritedcurrentTarget : Object
[read-only] The object that is actively processing the Event object with an event listener.
Event
 InheritedAIR-only errorID : int
[read-only] Contains the reference number associated with the specific error.
ErrorEvent
 InheritedeventPhase : uint
[read-only] The current phase in the event flow.
Event
 Inheritedprototype : Object
[static] A reference to the prototype object of a class or function object.
Object
  AIR-only subErrorID : int
[read-only] An error ID that indicates more detailed information about the underlying problem.
DRMErrorEvent
 Inheritedtarget : Object
[read-only] The event target.
Event
 Inheritedtext : String
For a textInput event, the character or sequence of characters entered by the user.
TextEvent
 Inheritedtype : String
[read-only] The type of event.
Event
Public Methods
 MethodDefined By
  
AIR-only DRMErrorEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, inErrorDetail:String = "", inErrorCode:int = 0, insubErrorID:int = 0, inMetadata:DRMContentData = null)
Creates an Event object that contains specific information about DRM error events.
DRMErrorEvent
  
[override] Creates a copy of the DRMErrorEvent object and sets the value of each property to match that of the original.
DRMErrorEvent
 Inherited
formatToString(className:String, ... arguments):String
A utility function for implementing the toString() method in custom ActionScript 3.0 Event classes.
Event
 Inherited
Indicates whether an object has a specified property defined.
Object
 Inherited
Checks whether the preventDefault() method has been called on the event.
Event
 Inherited
Indicates whether an instance of the Object class is in the prototype chain of the object specified as the parameter.
Object
 Inherited
Cancels an event's default behavior if that behavior can be canceled.
Event
 Inherited
Indicates whether the specified property exists and is enumerable.
Object
 Inherited
Sets the availability of a dynamic property for loop operations.
Object
 Inherited
Prevents processing of any event listeners in the current node and any subsequent nodes in the event flow.
Event
 Inherited
Prevents processing of any event listeners in nodes subsequent to the current node in the event flow.
Event
 Inherited
Returns the string representation of this object, formatted according to locale-specific conventions.
Object
  
[override] Returns a string that contains all the properties of the DRMErrorEvent object.
DRMErrorEvent
 Inherited
Returns the primitive value of the specified object.
Object
Public Constants
 ConstantDefined By
 InheritedACTIVATE : String = "activate"
[static] The ACTIVATE constant defines the value of the type property of an activate event object.
Event
 InheritedADDED : String = "added"
[static] The Event.ADDED constant defines the value of the type property of an added event object.
Event
 InheritedADDED_TO_STAGE : String = "addedToStage"
[static] The Event.ADDED_TO_STAGE constant defines the value of the type property of an addedToStage event object.
Event
 InheritedCANCEL : String = "cancel"
[static] The Event.CANCEL constant defines the value of the type property of a cancel event object.
Event
 InheritedCHANGE : String = "change"
[static] The Event.CHANGE constant defines the value of the type property of a change event object.
Event
 InheritedCLEAR : String = "clear"
[static] The Event.CLEAR constant efines the value of the type property of a clear event object.
Event
 InheritedCLOSE : String = "close"
[static] The Event.CLOSE constant defines the value of the type property of a close event object.
Event
 InheritedAIR-only CLOSING : String = "closing"
[static] The Event.CLOSING constant defines the value of the type property of a closing event object.
Event
 InheritedCOMPLETE : String = "complete"
[static] The Event.COMPLETE constant defines the value of the type property of a complete event object.
Event
 InheritedCONNECT : String = "connect"
[static] The Event.CONNECT constant defines the value of the type property of a connect event object.
Event
 InheritedCOPY : String = "copy"
[static] Defines the value of the type property of a copy event object.
Event
 InheritedCUT : String = "cut"
[static] Defines the value of the type property of a cut event object.
Event
 InheritedDEACTIVATE : String = "deactivate"
[static] The Event.DEACTIVATE constant defines the value of the type property of a deactivate event object.
Event
 InheritedDISPLAYING : String = "displaying"
[static] The Event.DISPLAYING constant defines the value of the type property of a displaying event object.
Event
  AIR-only DRM_ERROR : String = "drmError"
[static] The DRMErrorEvent.DRM_ERROR constant defines the value of the type property of a drmError event object.
DRMErrorEvent
 InheritedENTER_FRAME : String = "enterFrame"
[static] The Event.ENTER_FRAME constant defines the value of the type property of an enterFrame event object.
Event
 InheritedERROR : String = "error"
[static] Defines the value of the type property of an error event object.
ErrorEvent
 InheritedEXIT_FRAME : String = "exitFrame"
[static] The Event.EXIT_FRAME constant defines the value of the type property of an exitFrame event object.
Event
 InheritedAIR-only EXITING : String = "exiting"
[static] The Event.EXITING constant defines the value of the type property of an exiting event object.
Event
 InheritedFRAME_CONSTRUCTED : String = "frameConstructed"
[static] The Event.FRAME_CONSTRUCTED constant defines the value of the type property of an frameConstructed event object.
Event
 InheritedFULLSCREEN : String = "fullScreen"
[static] The Event.FULL_SCREEN constant defines the value of the type property of a fullScreen event object.
Event
 InheritedAIR-only HTML_BOUNDS_CHANGE : String = "htmlBoundsChange"
[static] The Event.HTML_BOUNDS_CHANGE constant defines the value of the type property of an htmlBoundsChange event object.
Event
 InheritedAIR-only HTML_DOM_INITIALIZE : String = "htmlDOMInitialize"
[static] The Event.HTML_DOM_INITIALIZE constant defines the value of the type property of an htmlDOMInitialize event object.
Event
 InheritedAIR-only HTML_RENDER : String = "htmlRender"
[static] The Event.HTML_RENDER constant defines the value of the type property of an htmlRender event object.
Event
 InheritedID3 : String = "id3"
[static] The Event.ID3 constant defines the value of the type property of an id3 event object.
Event
 InheritedINIT : String = "init"
[static] The Event.INIT constant defines the value of the type property of an init event object.
Event
 InheritedLINK : String = "link"
[static] Defines the value of the type property of a link event object.
TextEvent
 InheritedAIR-only LOCATION_CHANGE : String = "locationChange"
[static] The Event.LOCATION_CHANGE constant defines the value of the type property of a locationChange event object.
Event
 InheritedMOUSE_LEAVE : String = "mouseLeave"
[static] The Event.MOUSE_LEAVE constant defines the value of the type property of a mouseLeave event object.
Event
 InheritedAIR-only NETWORK_CHANGE : String = "networkChange"
[static] The Event.NETWORK_CHANGE constant defines the value of the type property of a networkChange event object.
Event
 InheritedOPEN : String = "open"
[static] The Event.OPEN constant defines the value of the type property of an open event object.
Event
 InheritedPASTE : String = "paste"
[static] The Event.PASTE constant defines the value of the type property of a paste event object.
Event
 InheritedREMOVED : String = "removed"
[static] The Event.REMOVED constant defines the value of the type property of a removed event object.
Event
 InheritedREMOVED_FROM_STAGE : String = "removedFromStage"
[static] The Event.REMOVED_FROM_STAGE constant defines the value of the type property of a removedFromStage event object.
Event
 InheritedRENDER : String = "render"
[static] The Event.RENDER constant defines the value of the type property of a render event object.
Event
 InheritedRESIZE : String = "resize"
[static] The Event.RESIZE constant defines the value of the type property of a resize event object.
Event
 InheritedSCROLL : String = "scroll"
[static] The Event.SCROLL constant defines the value of the type property of a scroll event object.
Event
 InheritedSELECT : String = "select"
[static] The Event.SELECT constant defines the value of the type property of a select event object.
Event
 InheritedSELECT_ALL : String = "selectAll"
[static] The Event.SELECT_ALL constant defines the value of the type property of a selectAll event object.
Event
 InheritedSOUND_COMPLETE : String = "soundComplete"
[static] The Event.SOUND_COMPLETE constant defines the value of the type property of a soundComplete event object.
Event
 InheritedTAB_CHILDREN_CHANGE : String = "tabChildrenChange"
[static] The Event.TAB_CHILDREN_CHANGE constant defines the value of the type property of a tabChildrenChange event object.
Event
 InheritedTAB_ENABLED_CHANGE : String = "tabEnabledChange"
[static] The Event.TAB_ENABLED_CHANGE constant defines the value of the type property of a tabEnabledChange event object.
Event
 InheritedTAB_INDEX_CHANGE : String = "tabIndexChange"
[static] The Event.TAB_INDEX_CHANGE constant defines the value of the type property of a tabIndexChange event object.
Event
 InheritedTEXT_INPUT : String = "textInput"
[static] Defines the value of the type property of a textInput event object.
TextEvent
 InheritedUNLOAD : String = "unload"
[static] The Event.UNLOAD constant defines the value of the type property of an unload event object.
Event
 InheritedAIR-only USER_IDLE : String = "userIdle"
[static] The Event.USER_IDLE constant defines the value of the type property of a userIdle event object.
Event
 InheritedAIR-only USER_PRESENT : String = "userPresent"
[static] The Event.USER_PRESENT constant defines the value of the type property of a userPresent event object.
Event
Property Detail

contentData

property
contentData:DRMContentData

The DRMContentData for the media file.

You can use the object referenced by the contentData property to retrieve the related DRM voucher from the DRMManager voucher cache. The voucher properties describe the license available to the user and may explain why the DRM-protected content cannot be viewed.



Implementation
    public function get contentData():DRMContentData
    public function set contentData(value:DRMContentData):void
AIR-only 

subErrorID

property 
subErrorID:int  [read-only]

Language Version: ActionScript 3.0
Runtime Versions: AIR 1.0

An error ID that indicates more detailed information about the underlying problem.



Implementation
    public function get subErrorID():int
Constructor Detail
AIR-only 

DRMErrorEvent

()Constructor
public function DRMErrorEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, inErrorDetail:String = "", inErrorCode:int = 0, insubErrorID:int = 0, inMetadata:DRMContentData = null)

Language Version: ActionScript 3.0
Runtime Versions: AIR 1.0

Creates an Event object that contains specific information about DRM error events. Event objects are passed as parameters to event listeners.

Parameters
type:String (default = NaN) — The type of the event. Event listeners can access this information through the inherited type property. There is only one type of DRMAuthenticate event: DRMAuthenticateEvent.DRM_AUTHENTICATE.
 
bubbles:Boolean (default = false) — Determines whether the Event object participates in the bubbling stage of the event flow. Event listeners can access this information through the inherited bubbles property.
 
cancelable:Boolean (default = false) — Determines whether the Event object can be canceled. Event listeners can access this information through the inherited cancelable property.
 
inErrorDetail:String (default = "") — Where applicable, the specific syntactical details of the error.
 
inErrorCode:int (default = 0) — The major error code.
 
insubErrorID:int (default = 0) — The minor error ID.
 
inMetadata:DRMContentData (default = null)
Method Detail

AIR-only clone

()method
override public function clone():Event

Language Version: ActionScript 3.0
Runtime Versions: AIR 1.0

Creates a copy of the DRMErrorEvent object and sets the value of each property to match that of the original.

Returns
Event — A new DRMErrorEvent object with property values that match those of the original.

AIR-only toString

()method 
override public function toString():String

Runtime Versions: AIR 1.0

Returns a string that contains all the properties of the DRMErrorEvent object. The string is in the following format:

[DRMErrorEvent type=value bubbles=value cancelable=value eventPhase=value errroID=value subErrorID=value text=value

Returns
String — A string that contains all the properties of the DRMErrorEvent object.
Constant Detail
AIR-only 

DRM_ERROR

Constant
public static const DRM_ERROR:String = "drmError"

Language Version: ActionScript 3.0
Runtime Versions: AIR 1.0

The DRMErrorEvent.DRM_ERROR constant defines the value of the type property of a drmError event object.

This event has the following properties:

PropertyValue
bubblesfalse
cancelablefalse; there is no default behavior to cancel.
errorIDA numerical error code assigned to the problem.
subErrorIDAn error code that indicates more detailed information about the underlying problem.
targetThe NetStream object.

See also

DRMErrorEventExample.as

package
{
    import flash.display.Sprite;
    import flash.events.AsyncErrorEvent;
    import flash.events.NetStatusEvent;
    import flash.events.DRMErrorEvent;
    import flash.media.Video;
    import flash.net.NetConnection;
    import flash.net.NetStream;

    public class DRMVideoExample extends Sprite
    {
        var videoURL:String = "Video.flv";
        var videoConnection:NetConnection;
        var videoStream:NetStream;
        var video:Video = new Video();            

        public function DRMVideoExample()
        {
            videoConnection = new NetConnection();
            videoConnection.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
            videoConnection.connect(null);
        }

        private function connectStream():void {
            videoStream = new NetStream(videoConnection);
            videoStream.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
            videoStream.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);
            videoStream.addEventListener(DRMErrorEvent.DRM_ERROR, drmErrorEventHandler);
            video.attachNetStream(videoStream);
            videoStream.play(videoURL);
            addChild(video);
        }

        private function netStatusHandler(event:NetStatusEvent):void {
            switch (event.info.code) {
                case "NetConnection.Connect.Success":
                    connectStream();
                    break;
                case "NetStream.Play.StreamNotFound":
                    trace("Unable to locate video: " + videoURL);
                    break;
            }
        }

        private function asyncErrorHandler(event:AsyncErrorEvent):void {
            // ignore AsyncErrorEvent events.
        }

        private function drmErrorEventHandler(event:DRMErrorEvent):void {
            trace(event.toString());
        }
     }
}