/** * @param ejbProxy The EJB proxy * @throws IllegalArgumentException If the passed proxy is not an EJB proxy */ SerializableEJBProxy(final Object ejbProxy) { // we hold on to the EJB locator and the EJB client context identifier this.ejbLocator = EJBClient.getLocatorFor(ejbProxy); }
/** * Get the strong affinity of a proxy. This is a shortcut for {@code getLocatorFor(proxy).getAffinity()}. * * @param proxy the proxy (may not be {@code null}) * @return the proxy strong affinity * @throws IllegalArgumentException if the given proxy is not a valid client proxy instance */ public static Affinity getStrongAffinity(Object proxy) throws IllegalArgumentException { Assert.checkNotNullParam("proxy", proxy); return getLocatorFor(proxy).getAffinity(); }
private static <T extends EJBObject, H extends EJBHome> EntityEJBMetaData<T, ? extends H> createEntityMetaData(Class<T> remoteClass, Class<H> homeClass, EJBHome home, Class<?> pkClass) { return new EntityEJBMetaData<>(remoteClass, EJBClient.getLocatorFor(home).<H>narrowAsHome(homeClass), pkClass); }
private static <T extends EJBObject, H extends EJBHome> StatefulEJBMetaData<T, ? extends H> createStatefulMetaData(Class<T> remoteClass, Class<H> homeClass, EJBHome home) { return new StatefulEJBMetaData<>(remoteClass, EJBClient.getLocatorFor(home).<H>narrowAsHome(homeClass)); }
private static <T extends EJBObject, H extends EJBHome> StatelessEJBMetaData<T, ? extends H> createStatelessMetaData(Class<T> remoteClass, Class<H> homeClass, EJBHome home) { return new StatelessEJBMetaData<>(remoteClass, EJBClient.getLocatorFor(home).<H>narrowAsHome(homeClass)); }
private Object createIIOPReferenceForBean(Object object, DeploymentRepository deploymentRepository) { EJBLocator<? extends Object> locator; try { locator = EJBClient.getLocatorFor(object); } catch (Exception e) { //not an EJB proxy locator = null; } if (locator != null) { final EjbIIOPService factory = serviceForLocator(locator, deploymentRepository); if (factory != null) { return factory.referenceForLocator(locator); } } return object; }
public AbstractEJBMetaData<?, ?> toAbstractEJBMetaData() { final EJBHomeLocator<? extends EJBHome> homeLocator = EJBClient.getLocatorFor(home).narrowAsHome(homeClass); final Class<? extends EJBObject> ejbObjectClass = remoteClass.asSubclass(EJBObject.class); if (session || statelessSession) { if (statelessSession) { return StatelessEJBMetaData.create(ejbObjectClass, homeLocator); } return StatefulEJBMetaData.create(ejbObjectClass, homeLocator); } else { return EntityEJBMetaData.create(ejbObjectClass, homeLocator, pkClass); } }
final Object invokedProxy = context.getInvokedProxy(); EJBClient.convertToStateful(invokedProxy, sessionID); context.setLocator(EJBClient.getLocatorFor(invokedProxy));
pk = metadata.getPrimaryKeyClass(); final EJBLocator<?> locator = EJBClient.getLocatorFor(metadata.getEJBHome()); final EjbIIOPService factory = serviceForLocator(locator, deploymentRepository); return new EJBMetaDataImplIIOP(metadata.getRemoteInterfaceClass(), metadata.getHomeInterfaceClass(), pk, metadata.isSession(), metadata.isStatelessSession(), (HomeHandle) factory.handleForLocator(locator));
/** * @param ejbProxy The EJB proxy * @throws IllegalArgumentException If the passed proxy is not an EJB proxy */ SerializableEJBProxyWithEJBClientContextIdentifier(final Object ejbProxy) { // we hold on to the EJB locator and the EJB client context identifier this.ejbLocator = EJBClient.getLocatorFor(ejbProxy); this.ejbClientContextIdentifier = EJBClient.getEJBClientContextIdentifierFor(ejbProxy); }
/** * Get the strong affinity of a proxy. This is a shortcut for {@code getLocatorFor(proxy).getAffinity()}. * * @param proxy the proxy (may not be {@code null}) * @return the proxy strong affinity * @throws IllegalArgumentException if the given proxy is not a valid client proxy instance */ public static Affinity getStrongAffinity(Object proxy) throws IllegalArgumentException { Assert.checkNotNullParam("proxy", proxy); return getLocatorFor(proxy).getAffinity(); }
/** * Get the strong affinity of a proxy. This is a shortcut for {@code getLocatorFor(proxy).getAffinity()}. * * @param proxy the proxy (may not be {@code null}) * @return the proxy strong affinity * @throws IllegalArgumentException if the given proxy is not a valid client proxy instance */ public static Affinity getStrongAffinity(Object proxy) throws IllegalArgumentException { Assert.checkNotNullParam("proxy", proxy); return getLocatorFor(proxy).getAffinity(); }
@Override public Object handleLookupReturnInstance(Object instance) { if (instance == null) { return null; } if (!EJBClient.isEJBProxy(instance)) { return instance; } final EJBLocator ejbLocator = EJBClient.getLocatorFor(instance); // recreate the proxy by associating it with the EJB client context identifier applicable for this // remote naming context return EJBClient.createProxy(ejbLocator, this.ejbClientContextIdentifier); }
private Object createIIOPReferenceForBean(Object object, DeploymentRepository deploymentRepository) { EJBLocator<? extends Object> locator; try { locator = EJBClient.getLocatorFor(object); } catch (Exception e) { //not a EJB proxy locator = null; } if (locator != null) { final EjbIIOPService factory = serviceForLocator(locator, deploymentRepository); if (factory != null) { return factory.referenceForLocator(locator); } } return object; }
public AbstractEJBMetaData<?, ?> toAbstractEJBMetaData() { final EJBHomeLocator<? extends EJBHome> homeLocator = EJBClient.getLocatorFor(home).narrowAsHome(homeClass); final Class<? extends EJBObject> ejbObjectClass = remoteClass.asSubclass(EJBObject.class); if (session || statelessSession) { if (statelessSession) { return StatelessEJBMetaData.create(ejbObjectClass, homeLocator); } return StatefulEJBMetaData.create(ejbObjectClass, homeLocator); } else { return EntityEJBMetaData.create(ejbObjectClass, homeLocator, pkClass); } }
public AbstractEJBMetaData<?, ?> toAbstractEJBMetaData() { final EJBHomeLocator<? extends EJBHome> homeLocator = EJBClient.getLocatorFor(home).narrowAsHome(homeClass); final Class<? extends EJBObject> ejbObjectClass = remoteClass.asSubclass(EJBObject.class); if (session || statelessSession) { if (statelessSession) { return StatelessEJBMetaData.create(ejbObjectClass, homeLocator); } return StatefulEJBMetaData.create(ejbObjectClass, homeLocator); } else { return EntityEJBMetaData.create(ejbObjectClass, homeLocator, pkClass); } }
final Object invokedProxy = context.getInvokedProxy(); EJBClient.convertToStateful(invokedProxy, sessionID); context.setLocator(EJBClient.getLocatorFor(invokedProxy));
final Object invokedProxy = context.getInvokedProxy(); EJBClient.convertToStateful(invokedProxy, sessionID); context.setLocator(EJBClient.getLocatorFor(invokedProxy));
pk = metadata.getPrimaryKeyClass(); final EJBLocator<?> locator = EJBClient.getLocatorFor(metadata.getEJBHome()); final EjbIIOPService factory = serviceForLocator(locator, deploymentRepository); return new EJBMetaDataImplIIOP(metadata.getRemoteInterfaceClass(), metadata.getHomeInterfaceClass(), pk, metadata.isSession(), metadata.isStatelessSession(), (HomeHandle) factory.handleForLocator(locator));