|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.jboss.proxy.ejb.ProxyFactory
public class ProxyFactory
As we remove the one one association between container STACK and invoker we keep this around. IN the future the creation of proxies is a task done on a container basis but the container as a logical representation. In other words, the container "Entity with RMI/IIOP" is not a container stack but an association at the invocation level that points to all metadata for a given container.
In other words this is here for legacy reason and to not disrupt the container at once. In particular we declare that we "implement" the container invoker interface when we are just implementing the Proxy generation calls. Separation of concern. todo eliminate this class, at least in its present form.
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from interface org.jboss.ejb.GenericEntityObjectFactory |
|---|
GenericEntityObjectFactory.UTIL |
| Field Summary | |
|---|---|
protected static String |
BEAN_INTERCEPTOR
|
protected ArrayList |
beanInterceptorClasses
The proxy-config/client-interceptors/bean stack |
protected Invoker |
beanInvoker
|
protected Container |
container
|
javax.ejb.EJBMetaData |
ejbMetaData
|
protected javax.ejb.EJBHome |
home
|
protected static String |
HOME_INTERCEPTOR
|
protected ArrayList |
homeInterceptorClasses
The proxy-config/client-interceptors/home stack |
protected Invoker |
homeInvoker
|
protected boolean |
includeIClientIface
A flag indicating if the IClientContainer interface should be added |
protected InvokerProxyBindingMetaData |
invokerMetaData
|
protected boolean |
isServiceEndpointOnly
|
protected javax.management.ObjectName |
jmxName
|
protected int |
jmxNameHash
|
protected String |
jndiBinding
|
protected static String |
LIST_ENTITY_INTERCEPTOR
|
protected ArrayList |
listEntityInterceptorClasses
The proxy-config/client-interceptors/entity-list stack |
protected static org.jboss.logging.Logger |
log
|
protected Constructor |
proxyClassConstructor
|
protected javax.ejb.EJBObject |
statelessObject
|
| Constructor Summary | |
|---|---|
ProxyFactory()
|
|
| Method Summary | |
|---|---|
protected void |
bindProxy()
The bindProxy method creates the home proxy and binds
the home into jndi. |
void |
create()
|
void |
destroy()
|
Object |
getEJBHome()
This method is called whenever the EJBHome implementation for this container is needed. |
javax.ejb.EJBMetaData |
getEJBMetaData()
This method is called whenever the metadata for this container is needed. |
Collection |
getEntityCollection(Collection ids)
Create a Collection EJBObject proxies for an entity given its primary keys. |
Object |
getEntityEJBObject(Object id)
Create an EJBObject proxy for an entity given its primary key. |
Object |
getStatefulSessionEJBObject(Object id)
Create an EJBObject proxy for a stateful session given its session id. |
Object |
getStatelessSessionEJBObject()
Return the EJBObject proxy for stateless sessions. |
protected void |
initInterceptorClasses()
Load the client interceptor classes |
boolean |
isIdentical(Container container,
Invocation mi)
Protocol specific isIdentical implementation |
protected void |
loadInterceptorChain(ArrayList chain,
ClientContainer client)
The loadInterceptorChain create instances of interceptor
classes previously loaded in loadInterceptorClasses |
protected void |
loadInterceptorClasses(ArrayList classes,
Element interceptors)
The loadInterceptorClasses load an interceptor classes from
configuration |
protected void |
rebindHomeProxy()
|
void |
setContainer(Container con)
This callback is set by the container so that the plugin may access it |
void |
setInvokerBinding(String binding)
Set the invoker jndi binding |
void |
setInvokerMetaData(InvokerProxyBindingMetaData metadata)
Set the invoker meta data so that the ProxyFactory can initialize properly |
protected void |
setupInvokers()
Lookup the invokers in the object registry. |
void |
start()
Become fully available. |
void |
stop()
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected static final String HOME_INTERCEPTOR
protected static final String BEAN_INTERCEPTOR
protected static final String LIST_ENTITY_INTERCEPTOR
protected static org.jboss.logging.Logger log
public javax.ejb.EJBMetaData ejbMetaData
protected boolean isServiceEndpointOnly
protected javax.ejb.EJBHome home
protected javax.ejb.EJBObject statelessObject
protected String jndiBinding
protected javax.management.ObjectName jmxName
protected int jmxNameHash
protected Invoker beanInvoker
protected Invoker homeInvoker
protected InvokerProxyBindingMetaData invokerMetaData
protected ArrayList homeInterceptorClasses
protected ArrayList beanInterceptorClasses
protected ArrayList listEntityInterceptorClasses
protected boolean includeIClientIface
protected Container container
protected Constructor proxyClassConstructor
| Constructor Detail |
|---|
public ProxyFactory()
| Method Detail |
|---|
public void setContainer(Container con)
ContainerPlugin
setContainer in interface ContainerPlugincon - The container using this plugin. This may be null if the
plugin is being disassociated from a container.public void setInvokerMetaData(InvokerProxyBindingMetaData metadata)
EJBProxyFactory
setInvokerMetaData in interface EJBProxyFactorypublic void setInvokerBinding(String binding)
EJBProxyFactory
setInvokerBinding in interface EJBProxyFactory
public void create()
throws Exception
create in interface org.jboss.system.ServiceException
public void start()
throws Exception
start in interface org.jboss.system.ServiceException
protected void setupInvokers()
throws Exception
Exception
protected void initInterceptorClasses()
throws Exception
Exception
protected void loadInterceptorClasses(ArrayList classes,
Element interceptors)
throws Exception
loadInterceptorClasses load an interceptor classes from
configuration
Exception - if an error occurs
protected void loadInterceptorChain(ArrayList chain,
ClientContainer client)
throws Exception
loadInterceptorChain create instances of interceptor
classes previously loaded in loadInterceptorClasses
Exception - if an error occurs
protected void bindProxy()
throws Exception
bindProxy method creates the home proxy and binds
the home into jndi. It also creates the InvocationContext and client
container and interceptor chain.
Exception - if an error occurs
protected void rebindHomeProxy()
throws NamingException
NamingExceptionpublic void stop()
stop in interface org.jboss.system.Servicepublic void destroy()
destroy in interface org.jboss.system.Service
public boolean isIdentical(Container container,
Invocation mi)
EJBProxyFactory
isIdentical in interface EJBProxyFactorycontainer - the containermi - the invocation
public javax.ejb.EJBMetaData getEJBMetaData()
EJBProxyFactory
getEJBMetaData in interface EJBProxyFactorypublic Object getEJBHome()
EJBProxyFactory
getEJBHome in interface EJBProxyFactorypublic Object getStatelessSessionEJBObject()
getStatelessSessionEJBObject in interface EJBProxyFactorypublic Object getStatefulSessionEJBObject(Object id)
getStatefulSessionEJBObject in interface EJBProxyFactoryid - The id of the session.
public Object getEntityEJBObject(Object id)
getEntityEJBObject in interface EJBProxyFactorygetEntityEJBObject in interface GenericEntityObjectFactoryid - The primary key of the entity.
public Collection getEntityCollection(Collection ids)
getEntityCollection in interface EJBProxyFactoryids - Enumeration of primary keys.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||