Factory creates uses, directly or indirectly, via DI or MetaFactory Service Stub implements Service Skeleton knows, uses Stub Factory creates uses, directly or indirectly, via DI or MetaFactory calls calls calls Freitag, 12. April 13
implements Service Factory creates uses, directly or indirectly, via DI or MetaFactory Service Stub implements Service Skeleton knows, uses Stub Factory creates uses, directly or indirectly, via DI or MetaFactory calls via rmi calls calls Freitag, 12. April 13
Service Factory creates uses, directly or indirectly, via DI or MetaFactory Service Stub implements Service Skeleton knows, uses Stub Factory creates uses, directly or indirectly, via DI or MetaFactory calls calls calls code written by developer code written by developer generated code Freitag, 12. April 13
service2 ServiceVM C service4 ... ApplicationServer n service3 ... ServiceVM Q service 11 ServiceVM R service3 service12 ... RegistryServer RegistryTomcat VM registry.war Client 001 ClientTomcat VM ClientA.war Client 025 ClientTomcat VM ClientB.war Client 076 Client VM ClientC.jar Client 123 Client VM ClientD.jar Client VM ClientE.jar ... ... ... C l i e n t S i d e S e r v e r S i d e Freitag, 12. April 13
} Service Interface Service Implementation public class EchoServiceImpl implements EchoService{ @Override public long echo(long parameter) { return parameter; } } Client public static void main(String a[]) throws Exception{ EchoService service = ... omitted; long param = 123; long echo = service.echo(param); System.out.println(“Service replied: “+echo); } public class EchoServiceFactory { public EchoService create(){ return new EchoServiceImpl(); } } Service Factory package org.distributeme.test.echo; http://svn.anotheria.net/opensource/distributeme/trunk Freitag, 12. April 13