2009-06-27 3 views
4

Ищите ссылки на примеры или документацию о том, как реализовать метод, возвращающий AsyncToken.ActionScript 3 Реализация AsyncToken

Примечание. Это не касается использования/потребления метода, возвращающего AsyncToken! Я сама хочу написать такие методы.

ответ

2

Внедрение метода, который возвращает AsyncToken прост:

function doStuffLater():AsyncToken { 
    var token:AsyncToken = new AsyncToken(null); 

    // This method will randomly call the responder's 'result' or 'fault' 
    // handler. 
    function doStuff() { 
     var response:String = (Math.random() > 0.5)? "result" : "fault"; 
     for each (responder:IResponder in (token.responders || [])) { 
      // rememeber: this is equivilent to 
      // responder.result(...) or responder.fault(...) 
      responder[response]("Got a result!"); 
     } 
    } 

    setTimeout(doStuff, 1000); 

    return token; 
} 

Обратите внимание, что вы не можете реально использовать applyResult и applyFault методы, потому что они проходят ответчик Event, когда ответчик, за исключением результата или объект повреждения.

0
TestUtil класс

мошенничества Framework имеет некоторые действительно прохладные способы насмешливого поведение AsyncToken:

http://code.google.com/p/swizframework/source/browse/trunk/src/main/flex/org/swizframework/util/TestUtil.as

Brian Kotek имеет очень информативное сообщение в блоге о том, как использовать его для имитации вызовов сервера с помощью фиктивных делегатов:

http://www.briankotek.com/blog/index.cfm/2009/3/16/Swiz-Part-5-Simulating-Server-Calls-with-a-mock-AsyncToken

Смежные вопросы