KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > oddjob > framework > OddjobComponentResolver


1 /*
2  * (c) Rob Gordon 2005
3  */

4 package org.oddjob.framework;
5
6 import org.oddjob.Stateful;
7 import org.oddjob.arooa.ComponentProxyResolver;
8
9 /**
10  * Provide an object to particapate in an Oddjob Structural.
11  *
12  * @author Rob Gordon.
13  */

14 public class OddjobComponentResolver implements ComponentProxyResolver {
15
16     public Object JavaDoc proxyFor(Object JavaDoc component) {
17         if (component instanceof Stateful) {
18             return component;
19         }
20         
21         if (component instanceof Runnable JavaDoc){
22             return RunnableWrapper.wrapperFor((Runnable JavaDoc) component);
23         }
24         
25         Service service = Service.serviceFor(component);
26         if (service != null) {
27             return ServiceWrapper.wrapperFor(service);
28         }
29             
30         return component;
31     }
32 }
33
Popular Tags