mx.messaging

# Consumer - AS3 BlazeDS LCDS

Package | mx.messaging
Class | public class Consumer
Inheritance | Consumer AbstractConsumer MessageAgent EventDispatcher Object

Language Version: | ActionScript 3.0

Product Versions: | BlazeDS 4, Adobe Digital Enterprise Platform Data Services for Java EE 3

Runtime Versions: | Flash Player 9, AIR 1.1

A Consumer subscribes to a destination to receive messages. Consumers send subscribe and unsubscribe messages which generate a MessageAckEvent or MessageFaultEvent depending upon whether the operation was successful or not. Once subscribed, a Consumer dispatches a MessageEvent for each message it receives. Consumers provide the ability to filter messages using a selector. These selectors must be understood by the destination.

MXML Syntax Show MXML Syntax
Hide MXML Syntax

The <mx:Consumer> tag inherits all the tag attributes of its superclass, and adds the following tag attributes:

       <mx:Consumer
        Properties
        resubscribeAttempts="5"
        resubscribeInterval="5000"
        selector="No default."
        timestamp="No default."
      />

Public Properties
Hide Inherited Public Properties
Show Inherited Public Properties

| Property | Defined By
--- | --- | ---
|  | authenticated : Boolean [read-only] Indicates if this MessageAgent is using an authenticated connection to its destination. | MessageAgent
|  | channelSet : ChannelSet Provides access to the ChannelSet used by the MessageAgent. | MessageAgent
|  | clientId : String [read-only] Provides access to the client id for the MessageAgent. | MessageAgent
|  | connected : Boolean [read-only] Indicates whether this MessageAgent is currently connected to its destination via its ChannelSet. | MessageAgent
|  | constructor : Object A reference to the class object or constructor function for a given object instance. | Object
|  | destination : String Provides access to the destination for the MessageAgent. | MessageAgent
|  | maxFrequency : uint Determines the maximum number of messages per second the Consumer wants to receive. | AbstractConsumer
|  | requestTimeout : int Provides access to the request timeout in seconds for sent messages. | MessageAgent
|  | resubscribeAttempts : int The number of resubscribe attempts that the Consumer makes in the event that the destination is unavailable or the connection to the destination fails. | AbstractConsumer
|  | resubscribeInterval : int The number of milliseconds between resubscribe attempts. | AbstractConsumer
|  | selector : String The selector for the Consumer. | Consumer
|  | subscribed : Boolean [read-only] Indicates whether the Consumer is currently subscribed. | AbstractConsumer
|  | subtopic : String Provides access to the subtopic for the remote destination that the MessageAgent uses. | Consumer
|  | timestamp : Number Contains the timestamp of the most recent message this Consumer has received. | AbstractConsumer

Protected Properties
Hide Inherited Protected Properties
Show Inherited Protected Properties

| Property | Defined By
--- | --- | ---
|  | _shouldBeSubscribed : Boolean Flag indicating whether this consumer should be subscribed or not. | AbstractConsumer

Public Methods
Hide Inherited Public Methods
Show Inherited Public Methods

| Method | Defined By
--- | --- | ---
|  | Consumer(messageType:String = "flex.messaging.messages.AsyncMessage") Constructor. | Consumer
|  | acknowledge(ackMsg:AcknowledgeMessage, msg:IMessage):void Invoked by a MessageResponder upon receiving a result for a sent message. | MessageAgent
|  | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void Registers an event listener object with an EventDispatcher object so that the listener receives notification of an event. | EventDispatcher
|  | channelConnectHandler(event:ChannelEvent):void Handles a CONNECT ChannelEvent. | MessageAgent
|  | channelDisconnectHandler(event:ChannelEvent):void Handles a DISCONNECT ChannelEvent. | MessageAgent
|  | channelFaultHandler(event:ChannelFaultEvent):void Handles a ChannelFaultEvent. | MessageAgent
|  | disconnect():void [override] Disconnects the Consumer from its remote destination. | AbstractConsumer
|  | dispatchEvent(event:Event):Boolean Dispatches an event into the event flow. | EventDispatcher
|  | fault(errMsg:ErrorMessage, msg:IMessage):void Invoked by a MessageResponder upon receiving a fault for a sent message. | MessageAgent
|  | hasEventListener(type:String):Boolean Checks whether the EventDispatcher object has any listeners registered for a specific type of event. | EventDispatcher
|  | hasOwnProperty(name:String):Boolean Indicates whether an object has a specified property defined. | Object
|  | hasPendingRequestForMessage(msg:IMessage):Boolean Returns true if there are any pending requests for the passed in message. | MessageAgent
|  | initialized(document:Object, id:String):void Called after the implementing object has been created and all properties specified on the tag have been assigned. | MessageAgent
|  | isPrototypeOf(theClass:Object):Boolean Indicates whether an instance of the Object class is in the prototype chain of the object specified as the parameter. | Object
|  | logout():void Logs the MessageAgent out from its remote destination. | MessageAgent
|  | propertyIsEnumerable(name:String):Boolean Indicates whether the specified property exists and is enumerable. | Object
|  | receive(timestamp:Number = 0):void Requests any messages that are queued for this Consumer on the server. | AbstractConsumer
|  | removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void Removes a listener from the EventDispatcher object. | EventDispatcher
|  | setCredentials(username:String, password:String, charset:String = null):void Sets the credentials that the MessageAgent uses to authenticate to destinations. | MessageAgent
|  | setPropertyIsEnumerable(name:String, isEnum:Boolean = true):void Sets the availability of a dynamic property for loop operations. | Object
|  | setRemoteCredentials(username:String, password:String, charset:String = null):void Sets the remote credentials that will be passed through to the remote destination for authenticating to secondary systems. | MessageAgent
|  | subscribe(clientId:String = null):void Subscribes to the remote destination. | AbstractConsumer
|  | toLocaleString():String Returns the string representation of this object, formatted according to locale-specific conventions. | Object
|  | toString():String Returns the string representation of the specified object. | Object
|  | unsubscribe(preserveDurable:Boolean = false):void Unsubscribes from the remote destination. | AbstractConsumer
|  | valueOf():Object Returns the primitive value of the specified object. | Object
|  | willTrigger(type:String):Boolean Checks whether an event listener is registered with this EventDispatcher object or any of its ancestors for the specified event type. | EventDispatcher

Protected Methods
Hide Inherited Protected Methods
Show Inherited Protected Methods

| Method | Defined By
--- | --- | ---
|  | buildSubscribeMessage():CommandMessage Returns a subscribe message. | AbstractConsumer
|  | buildUnsubscribeMessage(preserveDurable:Boolean):CommandMessage Returns an unsubscribe message. | AbstractConsumer
|  | handleAuthenticationFault(errMsg:ErrorMessage, msg:IMessage):void Handles the authentication fault on the server. | MessageAgent
|  | initChannelSet(message:IMessage):void Used to automatically initialize the channelSet property for the MessageAgent before it connects for the first time. | MessageAgent
|  | internalSend(message:IMessage, waitForClientId:Boolean = true):void Sends a Message from the MessageAgent to its destination using the agent's ChannelSet. | MessageAgent
|  | reAuthorize(msg:IMessage):void This function should be overriden by sublasses to implement reauthentication due to server session time-out behavior specific to them. | MessageAgent

Events
Click for more information on events
Hide Inherited Events
Show Inherited Events

| Event | Summary | Defined By
--- | --- | --- | ---
|  | acknowledge | Dispatched when an acknowledge message is received for a sent message. | MessageAgent
|  | activate | [broadcast event] Dispatched when the Flash Player or AIR application gains operating system focus and becomes active. | EventDispatcher
|  | channelConnect | Dispatched when the underlying Channel the MessageAgent is using connects. | MessageAgent
|  | channelDisconnect | Dispatched when the underlying Channel the MessageAgent is using disconnects. | MessageAgent
|  | channelFault | Dispatched when the underlying Channel the MessageAgent is using faults. | MessageAgent
|  | deactivate | [broadcast event] Dispatched when the Flash Player or AIR application operating loses system focus and is becoming inactive. | EventDispatcher
|  | fault | Dispatched when a message fault occurs. | MessageAgent
|  | message | Dispatched when a message is received by the Consumer. | Consumer
|  | propertyChange | Dispatched when the connected property of the MessageAgent changes. | MessageAgent

Property Detail

### selector

property

`selector:String`

Language Version: | ActionScript 3.0

Product Versions: | BlazeDS 4, Adobe Digital Enterprise Platform Data Services for Java EE 3

Runtime Versions: | Flash Player 9, AIR 1.1

The selector for the Consumer. This is an expression that is passed to the destination which uses it to filter the messages delivered to the Consumer.

Before a call to the `subscribe()` method, this property can be set with no side effects. After the Consumer has subscribed to its destination, changing this value has the side effect of updating the Consumer's subscription to use the new selector expression immediately.

The remote destination must understand the value of the selector expression.

This property can be used as the source for data binding. When this property is modified, it dispatches the `propertyChange` event.

Implementation
`public function get selector():String`
`public function set selector(value:String):void`

### subtopic

property

`subtopic:String`

Language Version: | ActionScript 3.0

Product Versions: | BlazeDS 4, Adobe Digital Enterprise Platform Data Services for Java EE 3

Runtime Versions: | Flash Player 9, AIR 1.1

Provides access to the subtopic for the remote destination that the MessageAgent uses.

This property can be used as the source for data binding. When this property is modified, it dispatches the `propertyChange` event.

Implementation
`public function get subtopic():String`
`public function set subtopic(value:String):void`
Constructor Detail

### Consumer

()
Constructor

`public function Consumer(messageType:String = "flex.messaging.messages.AsyncMessage")`

Language Version: | ActionScript 3.0

Product Versions: | BlazeDS 4, Adobe Digital Enterprise Platform Data Services for Java EE 3

Runtime Versions: | Flash Player 9, AIR 1.1

Constructor.

Parameters

| `messageType:String` (default = "`flex.messaging.messages.AsyncMessage`")`` — The alias for the message type processed by the service hosting the remote destination the Consumer will subscribe to. This parameter is deprecated and it is ignored by the constructor.

Example ( How to use this example )
Copy

           function initConsumer():void
           {
               var consumer:Consumer = new Consumer();
               consumer.destination = "NASDAQ";
               consumer.selector = "operation IN ('Bid','Ask')";
               consumer.addEventListener(MessageEvent.MESSAGE, messageHandler);
               consumer.subscribe();
           }

           function messageHandler(event:MessageEvent):void
           {
               var msg:IMessage = event.message;
               var info:Object = msg.body;
               trace("-App recieved message: " + msg.toString());
           }

Event Detail

### message

Event

Event Object Type: `mx.messaging.events.MessageEvent`
property MessageEvent.type = `mx.messaging.events.MessageEvent.MESSAGE`

Language Version: | ActionScript 3.0

Product Versions: | BlazeDS 4, Adobe Digital Enterprise Platform Data Services for Java EE 3

Runtime Versions: | Flash Player 9, AIR 1.1

Dispatched when a message is received by the Consumer.

The MESSAGE event type; dispatched upon receipt of a message.

The value of this constant is `"message"`.

The properties of the event object have the following values:

Property | Value
--- | ---
`bubbles` | false
`cancelable` | false
`currentTarget` | The Object that defines the event listener that handles the event. For example, if you use `myButton.addEventListener()` to register an event listener, myButton is the value of the `currentTarget`.
`message` | The message associated with this event.
`target` | The Object that dispatched the event; it is not always the Object listening for the event. Use the `currentTarget` property to always access the Object listening for the event.

© 2015 Adobe Systems Incorporated. All rights reserved.
Mon Apr 10 2017, 12:28 PM -07:00