Hello :)
Pour ma part je crée une définition d'objet de type RemotingService par méthode et son listener correspondant (seule classe à créer)
Du coup tu as par exemple :
Gallery.getGallery() : tout récupérer
Gallery.getPicture( $id ) : récupérer un seul PictureVO
Je crée du coup 2 classes qui héritent de la classe RemotingServiceListener :
project.net.remoting.gallery.GetGallery
project.net.remoting.gallery.GetPicture
Du coup dans l'IoC j'ai un fichier eden par méthode :
context/net/remoting/gallery/GetGallery.eden
context/net/remoting/gallery/GetPicture.eden
Chaque fichier eden contient 2 définitions d'objets au minimum, exemple :
"get_gallery_listener" et "get_gallery_service" dans GetGallery.eden
"get_picture_listener" et "get_picture_service" dans GetPicture.eden
Ensuite pour lancer un service suffit de le passer par référence ou d'utiliser le fabrique avec par exemple le code suivant :
var service:RemotingService = factory.getObject(ServiceList.GET_PICTURE) as RemotingService ;
if( service != null )
{
service.run( pictureID ) ;
}
Une fois ce code lancé c'est le listener de type GetPicture qui va recevoir le résultat dans sa méthode result(e:Result) et qui permettra de remplir un modèle ou autre...
Voilà :) Avec cette technique cela permet de cabler super rapidement les services et d'optimiser en fonction des besoins les listeners suivant la situation directement via l'IoC.
EKA+ :)