Pergunta

Procurando um exemplo ou links de documentação sobre como implementar um método retornando asynctoken.

Observe que não se trata de usar/consumir um método que retorna asynctoken! Desejo escrever esses métodos.

Foi útil?

Solução

A implementação de um método que retorna um assíncroken é simples:

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;
}

Observe que você não pode realmente usar o applyResult e applyFault métodos, porque eles passam aos respondedores um Event, quando o respondente, exceto o resultado ou objeto de falha.

Outras dicas

A classe Testutil da Swiz Framework tem algumas maneiras muito legais de zombar do comportamento assíncroado:

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

Brian Kotek tem um post muito informativo sobre como usá -lo para simular chamadas de servidor usando delegados simulados:

http://www.briankotek.com/blog/index.cfm/2009/3/16/swiz-part-5-simulating-server-calls-with-a-mock-asynctoken

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top