1 22 package org.jboss.ejb3.remoting; 23 24 import java.lang.reflect.InvocationHandler ; 25 import java.lang.reflect.Method ; 26 import org.jboss.aop.advice.Interceptor; 27 import org.jboss.aop.metadata.SimpleMetaData; 28 29 35 public abstract class BaseRemoteProxy implements java.io.Serializable , InvocationHandler , RemoteProxy 36 { 37 protected Object containerId; 38 protected Interceptor[] interceptors; 39 protected SimpleMetaData metadata; 40 41 protected BaseRemoteProxy(Object containerId, Interceptor[] interceptors) 42 { 43 this.containerId = containerId; 44 this.interceptors = interceptors; 45 } 46 47 protected BaseRemoteProxy() 48 { 49 } 50 51 public SimpleMetaData getMetaData() 52 { 53 synchronized (this) 54 { 55 if (metadata == null) metadata = new SimpleMetaData(); 56 } 57 return metadata; 58 } 59 60 public abstract Object invoke(Object proxy, Method method, Object [] args) 61 throws Throwable ; 62 63 public abstract String toString(); 65 } 66 | Popular Tags |