チェンジセット 304
- コミット日時:
- 2008/03/26 01:45:48 (4 年前)
- ファイル:
-
- as3/Commands/src/AsyncCommand.as (削除)
- as3/Commands/src/BatchCommand.as (削除)
- as3/Commands/src/Command.as (削除)
- as3/Commands/src/CommandBase.as (削除)
- as3/Commands/src/CommandContainer.as (削除)
- as3/Commands/src/FrameWaitCommand.as (削除)
- as3/Commands/src/ICommand.as (削除)
- as3/Commands/src/LoopCommand.as (削除)
- as3/Commands/src/ParallelCommand.as (削除)
- as3/Commands/src/SerialCommand.as (削除)
- as3/Commands/src/WaitCommand.as (削除)
- as3/Commands/src/commands/CommandContainer.as (更新) (1 diff)
- as3/Commands/src/commands/FrameWaitCommand.as (更新) (4 diffs)
- as3/Commands/src/commands/ext/URLLoaderCommand.as (更新) (6 diffs)
凡例:
- 変更無し
- 追加
- 削除
- 更新
- コピー
- 移動
as3/Commands/src/commands/CommandContainer.as
r250 r304 45 45 } 46 46 47 public function get numCommands():int47 public static function get numCommands():int 48 48 { 49 49 return _numCommands; 50 } 51 52 public static function dump():void 53 { 54 for (var prop:* in commandDict){ 55 trace(commandDict[prop]); 56 } 50 57 } 51 58 as3/Commands/src/commands/FrameWaitCommand.as
r232 r304 1 1 package commands 2 2 { 3 import sketchbook.SketchBook;4 3 import flash.events.Event; 4 import flash.display.Stage; 5 5 6 6 /** … … 13 13 protected var count:int 14 14 15 public static var stage:Stage 16 15 17 public function FrameWaitCommand( count:int ) 16 18 { … … 20 22 override public function execute():void 21 23 { 22 SketchBook.stage.addEventListener(Event.ENTER_FRAME, _enterFrameHandler, false, 0, true); 24 if(!stage) 25 throw new Error("FrameWaitCommand.stage should be set before you use FrameWaitCommand.execute"); 26 stage.addEventListener(Event.ENTER_FRAME, _enterFrameHandler, false, 0, true); 23 27 } 24 28 … … 27 31 { 28 32 if(count<=0){ 29 SketchBook.stage.removeEventListener(Event.ENTER_FRAME, _enterFrameHandler);33 stage.removeEventListener(Event.ENTER_FRAME, _enterFrameHandler); 30 34 this.dispatchComplete(); 31 35 } as3/Commands/src/commands/ext/URLLoaderCommand.as
r232 r304 7 7 import flash.events.Event; 8 8 import commands.CommandBase; 9 import flash.events.IOErrorEvent; 9 10 10 11 /* … … 19 20 * loader:URLLoader 任意のURLLoaderを使う場合。指定しない場合はCommand内で自前でURLLoaderが作られる。 20 21 * dataFormat 自動作成されるURLLoaderで用いられるデータフォーマット。ディフォルトはURLLoaderDataFormat.TEXT 22 * 23 * urlVariables: URLVariablesによる変数指定があるならここで渡せる 24 * method: URLRequestMethod.GET or URLRequestMethod.POST 25 * 26 * ignoreIOError Boolean IOErrorがでた場合もそのまま処理をすすめるフラグ 27 * ignoreCache Boolean 乱数をGETで送信してキャッシュを無効にするフラグ。キャッシュブレイカーの挙動については検証すること!! 28 * 21 29 * 22 30 * parser : Function 独自のパース関数を使いたい場合、関数にURLLoader.dataが渡されるので加工後にreturnしてください。ない場合はprotectedのformatData関数が呼ばれます。 … … 40 48 loader = buildURLLoader(); 41 49 loader.addEventListener(Event.COMPLETE, _completeHandler, false, 0, true); 50 loader.addEventListener(IOErrorEvent.IO_ERROR, _ioErrorHandler, false, 0, true); 42 51 loader.load(req); 52 53 loader.data = 5; 54 } 55 56 57 protected function _ioErrorHandler(e:IOErrorEvent):void 58 { 59 trace("URLLoaderCommand._ioErrorHandler IOErrorが発生しました"); 60 removeListeners(); 61 62 if(paramObj.ignoreIOError){ 63 paramObj = null; 64 loader = null; 65 66 dispatchComplete(); 67 }else{ 68 throw new Error("URLLoaderCommand._ioErrorHandler"); 69 } 43 70 } 44 71 … … 46 73 //event handler for URLLoader 47 74 protected function _completeHandler(e:Event):void{ 48 loader.removeEventListener(Event.COMPLETE, _completeHandler);75 removeListeners(); 49 76 50 77 if(paramObj.dataScope && paramObj.dataProp){ … … 64 91 65 92 93 protected function removeListeners():void 94 { 95 loader.removeEventListener(Event.COMPLETE, _completeHandler); 96 loader.removeEventListener(IOErrorEvent.IO_ERROR, _ioErrorHandler); 97 } 98 99 66 100 //creates UrlRequest from paramObj 67 101 protected function buildRequest():URLRequest … … 75 109 req = new URLRequest( paramObj.urlScope[paramObj.urlProp] ); 76 110 } 111 112 if( paramObj.method) 113 req.method = paramObj.method; 114 115 if( paramObj.urlVariables){ 116 if(paramObj.ignoreCache) 117 paramObj.urlVariables.rnd = new Date().getTime(); 118 119 req.data = paramObj.urlVariables; 120 } 121 122 //CacheBreakerを追加 123 if( !paramObj.urlVariables){ 124 if(paramObj.ignoreCache) 125 req.url = req.url + "?rnd=" + new Date().getTime(); 126 } 127 77 128 return req; 78 129 }

