Packagesystem.process
Classpublic class BatchTask
InheritanceBatchTask Inheritance TaskGroup Inheritance CoreAction Inheritance Task Inheritance Object

Batchs tasks and notify when all actions are finished.

Example :

     package examples
     {
         import system.process.Action;
         import system.process.BatchTask;
         import system.process.Pause;
         
         import flash.display.Sprite;
         
         [SWF(width="740", height="480", frameRate="24", backgroundColor="#666666")]
         
         public class BatchTaskExample extends Sprite
         {
             public function BatchTaskExample()
             {
                 batch = new BatchTask() ;
                 
                 // batch.mode = BatchTask.TRANSIENT ;
                 
                 batch.changeIt.connect( change ) ;
                 batch.finishIt.connect( finish ) ;
                 batch.progressIt.connect( progress ) ;
                 batch.startIt.connect( start ) ;
                 
                 batch.addAction( new Pause(  2 , true ) , 0 , true ) ;
                 batch.addAction( new Pause( 10 , true ) ) ;
                 batch.addAction( new Pause(  1 , true ) , 0 , true ) ;
                 batch.addAction( new Pause(  5 , true ) ) ;
                 batch.addAction( new Pause(  7 , true ) , 0 , true ) ;
                 batch.addAction( new Pause(  2 , true ) ) ;
                 
                 batch.run() ;
             }
             
             public var batch:BatchTask ;
             
             public function change( action:Action ):void
             {
                 trace( "change :  " + batch.current ) ;
             }
             
             public function finish( action:Action ):void
             {
                 trace( "finish length:" + batch.length ) ;
             }
             
             public function progress( action:Action ):void
             {
                 trace( "progress :  " + batch.current ) ;
             }
             
             public function start( action:Action ):void
             {
                 trace( "start" ) ;
             }
         }
     }
     



Public Properties
 PropertyDefined By
 InheritedchangeIt : Signaler
This signal emit when the notifyChanged method is invoked.
CoreAction
 InheritedclearIt : Signaler
This signal emit when the notifyCleared method is invoked.
CoreAction
  current : Action
[read-only] Indicates the current Action reference when the batch is in progress.
BatchTask
 InheritedfinishIt : Signaler
This signal emit when the notifyFinished method is invoked.
Task
 Inheritedfixed : Boolean
Indicates whether the group length is fixed (true) or can be changed (false).
TaskGroup
 InheritedinfoIt : Signaler
This signal emit when the notifyInfo method is invoked.
CoreAction
 Inheritedlength : uint
Indicates the numbers of actions register in the task-group.
TaskGroup
 Inheritedlogger : Logger
Determinates the internal Logger reference of this Loggable object.
Task
 Inheritedlooping : Boolean
The flag to determinate if the Action object is looped.
CoreAction
 InheritedloopIt : Signaler
This signal emit when the notifyLooped method is invoked.
CoreAction
 Inheritedmode : String
Determinates the mode of the group.
TaskGroup
 InheritedpauseIt : Signaler
This signal emit when the notifyPause method is invoked.
CoreAction
 Inheritedphase : String
[read-only] The current phase of the action.
Task
 InheritedprogressIt : Signaler
This signal emit when the notifyProgress method is invoked.
CoreAction
 InheritedresumeIt : Signaler
This signal emit when the notifyResumed method is invoked.
CoreAction
 Inheritedrunning : Boolean
[read-only] Indicates true if the process is in progress.
Task
 InheritedstartIt : Signaler
This signal emit when the notifyStarted method is invoked.
Task
 InheritedstopIt : Signaler
This signal emit when the notifyStopped method is invoked.
CoreAction
 Inheritedstopped : Boolean
[read-only] Indicates if the group is stopped.
TaskGroup
 InheritedtimeoutIt : Signaler
This signal emit when the notifyTimeOut method is invoked.
CoreAction
 Inheritedverbose : Boolean
Defines the verbose mode of the task group (use it in the toString() method)
TaskGroup
Public Methods
 MethodDefined By
  
BatchTask(length:uint = 0, fixed:Boolean = false, mode:String = normal, actions:* = null)
Creates a new BatchTask instance.
BatchTask
  
addAction(action:Action, priority:int = 0, autoRemove:Boolean = false):Boolean
[override] Insert an action in thechainr.
BatchTask
  
clone():*
[override] Returns a shallow copy of this object.
BatchTask
 Inherited
dispose():void
Dispose the task-group and disconnect all actions but don't remove them.
TaskGroup
 Inherited
getActionAt(index:uint):Action
Returns the action register in the task group at the specified index value or null.
TaskGroup
 Inherited
hasAction(action:Action):Boolean
Returns true if the specified Action is register in the task-group.
TaskGroup
 Inherited
isEmpty():Boolean
Returns true if the task-group is empty.
TaskGroup
 Inherited
isLocked():Boolean
Returns true if the object is locked.
Task
 Inherited
lock():void
Locks the object.
Task
 Inherited
Notify when the process is changed.
CoreAction
 Inherited
Notify when the process is cleared.
CoreAction
 Inherited
Notify an ActionEvent when the process is finished.
Task
 Inherited
notifyInfo(info:*):void
Notify a specific information when the process is changed.
CoreAction
 Inherited
Notify when the process is looped.
CoreAction
 Inherited
Notify when the process is paused.
CoreAction
 Inherited
Notify when the process is in progress.
CoreAction
 Inherited
Notify when the process is resumed.
CoreAction
 Inherited
Notify an ActionEvent when the process is started.
Task
 Inherited
Notify when the process is stopped.
CoreAction
 Inherited
Notify when the process is out of time.
CoreAction
  
removeAction(action:Action = null):Boolean
[override] Remove a specific action register in the chain and if the passed-in argument is null all actions register in the chain are removed.
BatchTask
  
resume():void
[override] Resume the chain.
BatchTask
  
run(... arguments):void
[override] Launchs the chain process.
BatchTask
 Inherited
setup(length:uint = 0, fixed:Boolean = false):void
Sets the internal Vector of the group.
TaskGroup
 Inherited
start():void
Starts the chain.
TaskGroup
  
stop():void
[override] Stops the batch and stop all Stoppable task in the batch.
BatchTask
 Inherited
toArray():Array
Returns the Array representation of the object.
TaskGroup
 Inherited
toString():String
Returns the String representation of the object.
TaskGroup
 Inherited
toVector(fixed:Boolean = false):Vector.<Action>
Returns the Vector (of Action) representation of the chain.
TaskGroup
 Inherited
unlock():void
Unlocks the display.
Task
Protected Methods
 MethodDefined By
  
next(action:Action = null):void
[override] Invoked when a task process in the batch is finished.
BatchTask
 Inherited
setRunning(b:Boolean):void
Changes the running property value.
Task
Public Constants
 ConstantDefined By
  EVERLASTING : String = everlasting
[static] Determinates the "everlasting" mode of the batch.
BatchTask
  NORMAL : String = normal
[static] Determinates the "normal" mode of the batch.
BatchTask
  TRANSIENT : String = transient
[static] Determinates the "transient" mode of the batch.
BatchTask
Property Detail
currentproperty
current:Action  [read-only]

Indicates the current Action reference when the batch is in progress.


Implementation
    public function get current():Action
Constructor Detail
BatchTask()Constructor
public function BatchTask(length:uint = 0, fixed:Boolean = false, mode:String = normal, actions:* = null)

Creates a new BatchTask instance.

Parameters
length:uint (default = 0) — The initial length (number of elements) of the Vector. If this parameter is greater than zero, the specified number of Vector elements are created and populated with the default value appropriate to the base type (null for reference types).
 
fixed:Boolean (default = false) — Whether the chain length is fixed (true) or can be changed (false). This value can also be set using the fixed property.
 
mode:String (default = normal) — Specifies the mode of the chain. The mode can be "normal" (default), "transient" or "everlasting".
 
actions:* (default = null) — A dynamic object who contains Action references to initialize the chain.
Method Detail
addAction()method
override public function addAction(action:Action, priority:int = 0, autoRemove:Boolean = false):Boolean

Insert an action in thechainr.

Parameters

action:Action — Determinates the priority level of the action in the chain. The priority is designated by a signed 32-bit integer. The higher the number, the higher the priority. All actions with priority n are processed before actions of priority n-1. If two or more actions share the same priority, they are processed in the order in which they were added. The default priority is 0.
 
priority:int (default = 0) — Apply a removeAction after the first finish notification.
 
autoRemove:Boolean (default = false)

Returns
Booleantrue if the insert is success.
clone()method 
override public function clone():*

Returns a shallow copy of this object.

Returns
* — a shallow copy of this object.
next()method 
override protected function next(action:Action = null):void

Invoked when a task process in the batch is finished.

Parameters

action:Action (default = null)

removeAction()method 
override public function removeAction(action:Action = null):Boolean

Remove a specific action register in the chain and if the passed-in argument is null all actions register in the chain are removed. If the chain is running the stop() method is called.

Parameters

action:Action (default = null)

Returns
Booleantrue if the method success.
resume()method 
override public function resume():void

Resume the chain.

run()method 
override public function run(... arguments):void

Launchs the chain process.

Parameters

... arguments

stop()method 
override public function stop():void

Stops the batch and stop all Stoppable task in the batch.

Constant Detail
EVERLASTINGConstant
public static const EVERLASTING:String = everlasting

Determinates the "everlasting" mode of the batch. In this mode the action register in the batch can't be auto-remove.

NORMALConstant 
public static const NORMAL:String = normal

Determinates the "normal" mode of the batch. In this mode the batch has a normal life cycle.

TRANSIENTConstant 
public static const TRANSIENT:String = transient

Determinates the "transient" mode of the batch. In this mode all actions are strictly auto-remove in the batch when are invoked.