public class org.glassfish.weld.services.CDIAroundConstructCallback extends java.lang.Object implements org.jboss.weld.construction.api.AroundConstructCallback
{
private com.sun.ejb.containers.BaseContainer container;
private com.sun.ejb.containers.EJBContextImpl ejbContext;
private final java.util.concurrent.atomic.AtomicReference target;
private org.jboss.weld.construction.api.ConstructionHandle handle;
private java.lang.Object[] parameters;
public void <init>(com.sun.ejb.containers.BaseContainer, com.sun.ejb.containers.EJBContextImpl)
{
com.sun.ejb.containers.BaseContainer v;
org.glassfish.weld.services.CDIAroundConstructCallback v;
com.sun.ejb.containers.EJBContextImpl v;
java.util.concurrent.atomic.AtomicReference v;
v := @this: org.glassfish.weld.services.CDIAroundConstructCallback;
v := @parameter: com.sun.ejb.containers.BaseContainer;
v := @parameter: com.sun.ejb.containers.EJBContextImpl;
specialinvoke v.<java.lang.Object: void <init>()>();
v = new java.util.concurrent.atomic.AtomicReference;
specialinvoke v.<java.util.concurrent.atomic.AtomicReference: void <init>()>();
v.<org.glassfish.weld.services.CDIAroundConstructCallback: java.util.concurrent.atomic.AtomicReference target> = v;
v.<org.glassfish.weld.services.CDIAroundConstructCallback: com.sun.ejb.containers.BaseContainer container> = v;
v.<org.glassfish.weld.services.CDIAroundConstructCallback: com.sun.ejb.containers.EJBContextImpl ejbContext> = v;
return;
}
public java.lang.Object aroundConstruct(org.jboss.weld.construction.api.ConstructionHandle, jakarta.enterprise.inject.spi.AnnotatedConstructor, java.lang.Object[], java.util.Map)
{
java.lang.Throwable v;
java.lang.Object[] v;
org.glassfish.weld.services.CDIAroundConstructCallback v;
com.sun.enterprise.deployment.LifecycleCallbackDescriptor$CallbackType v;
com.sun.ejb.containers.EJBContextImpl v;
java.util.HashMap v;
java.util.concurrent.atomic.AtomicReference v, v, v;
java.util.Map v;
org.jboss.weld.exceptions.WeldException v;
jakarta.enterprise.inject.spi.AnnotatedConstructor v;
java.lang.RuntimeException v;
com.sun.ejb.containers.BaseContainer v;
java.lang.Object v, v, v;
org.jboss.weld.construction.api.ConstructionHandle v;
v := @this: org.glassfish.weld.services.CDIAroundConstructCallback;
v := @parameter: org.jboss.weld.construction.api.ConstructionHandle;
v := @parameter: jakarta.enterprise.inject.spi.AnnotatedConstructor;
v := @parameter: java.lang.Object[];
v := @parameter: java.util.Map;
v.<org.glassfish.weld.services.CDIAroundConstructCallback: org.jboss.weld.construction.api.ConstructionHandle handle> = v;
v.<org.glassfish.weld.services.CDIAroundConstructCallback: java.lang.Object[] parameters> = v;
label:
v = v.<org.glassfish.weld.services.CDIAroundConstructCallback: com.sun.ejb.containers.BaseContainer container>;
v = <com.sun.enterprise.deployment.LifecycleCallbackDescriptor$CallbackType: com.sun.enterprise.deployment.LifecycleCallbackDescriptor$CallbackType AROUND_CONSTRUCT>;
v = v.<org.glassfish.weld.services.CDIAroundConstructCallback: com.sun.ejb.containers.EJBContextImpl ejbContext>;
virtualinvoke v.<com.sun.ejb.containers.BaseContainer: boolean intercept(com.sun.enterprise.deployment.LifecycleCallbackDescriptor$CallbackType,com.sun.ejb.containers.EJBContextImpl)>(v, v);
v = v.<org.glassfish.weld.services.CDIAroundConstructCallback: java.util.concurrent.atomic.AtomicReference target>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
if v != null goto label;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = interfaceinvoke v.<org.jboss.weld.construction.api.ConstructionHandle: java.lang.Object proceed(java.lang.Object[],java.util.Map)>(v, v);
v = v.<org.glassfish.weld.services.CDIAroundConstructCallback: java.util.concurrent.atomic.AtomicReference target>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: void set(java.lang.Object)>(v);
label:
goto label;
label:
v := @caughtexception;
throw v;
label:
v := @caughtexception;
v = new org.jboss.weld.exceptions.WeldException;
specialinvoke v.<org.jboss.weld.exceptions.WeldException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
v = v.<org.glassfish.weld.services.CDIAroundConstructCallback: java.util.concurrent.atomic.AtomicReference target>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
return v;
catch java.lang.RuntimeException from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public java.lang.Object createEjb()
{
java.lang.Object[] v;
org.glassfish.weld.services.CDIAroundConstructCallback v;
java.lang.Object v;
java.util.HashMap v;
org.jboss.weld.construction.api.ConstructionHandle v, v;
java.util.concurrent.atomic.AtomicReference v;
v := @this: org.glassfish.weld.services.CDIAroundConstructCallback;
v = null;
v = v.<org.glassfish.weld.services.CDIAroundConstructCallback: org.jboss.weld.construction.api.ConstructionHandle handle>;
if v == null goto label;
v = v.<org.glassfish.weld.services.CDIAroundConstructCallback: org.jboss.weld.construction.api.ConstructionHandle handle>;
v = v.<org.glassfish.weld.services.CDIAroundConstructCallback: java.lang.Object[] parameters>;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = interfaceinvoke v.<org.jboss.weld.construction.api.ConstructionHandle: java.lang.Object proceed(java.lang.Object[],java.util.Map)>(v, v);
label:
v = v.<org.glassfish.weld.services.CDIAroundConstructCallback: java.util.concurrent.atomic.AtomicReference target>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: void set(java.lang.Object)>(v);
return v;
}
}