Hola a todos, perdonad si el título no es muy claro, pero no sabía cómo
plantearlo de un modo más sencillo.

El problema que tengo es el siguiente: estoy desarrollando una aplicación en
flex, y utilizo amfphp para conectar con el servidor. En un intento de
reutilizar código, me he encontrado con lo siguiente:

1.- He creado una clase "RpcManager", que se encarga de gestionar todas las
llamadas a los servicios.
2.- "RpcManager" tiene un método público call al que se le pasa un
identificador del servicio y un número variable de argumentos

        public function call( serviceID:Number, ... args ) : void {
            var service:RemoteService = services[serviceID];
            gateway.call( service.address, service.responder, args );
        }

El problema reside en que dentro de esta función, args es un Array, que es
lo que se envía al hacer la llamada, en vez de una serie de parámetros, por
lo que al llegar al script, éste detecta un único argumento de tipo array,
en vez de una serie de ellos.

3.- Como gateway es de tipo NetConnection, y su método call también acepta
un número variable de argumentos, este problema puede solucionarse haciendo:

             gateway.call( service.address, service.responder , args[0],
args[1], args[2], args[3], args[4], args[5], args[6]);

     lo cual, aunque funcional, resulta bastante extraño y poco ortodoxo.

¿Se os ocurre alguna manera de hacerlo de un modo más limpio?

Muchas gracias por todo!
-----------------------------------------------------
ASNativos
www.5dms.com
subscripciones/desubscripciones
http://asnativos.5dms.com
-----------------------------------------------------

Responder a