public abstract class org.glassfish.ejb.deployment.'annotation'.handlers.AbstractEjbHandler extends com.sun.enterprise.deployment.'annotation'.handlers.AbstractHandler { private org.glassfish.internal.deployment.AnnotationTypesProvider provider; protected static final com.sun.enterprise.util.LocalStringManagerImpl localStrings; public void () { java.lang.Object v; java.lang.'annotation'.Annotation[] v; org.glassfish.ejb.deployment.'annotation'.handlers.AbstractEjbHandler v; org.glassfish.hk.api.ServiceLocator v; v := @this: org.glassfish.ejb.deployment.'annotation'.handlers.AbstractEjbHandler; specialinvoke v.()>(); v = staticinvoke (); if v == null goto label; v = newarray (java.lang.'annotation'.Annotation)[0]; v = interfaceinvoke v.(class "Lorg/glassfish/internal/deployment/AnnotationTypesProvider;", "EJB", v); v. = v; label: return; } protected abstract java.lang.String getAnnotatedName(java.lang.'annotation'.Annotation); protected abstract boolean isValidEjbDescriptor(org.glassfish.ejb.deployment.descriptor.EjbDescriptor, java.lang.'annotation'.Annotation); protected abstract org.glassfish.ejb.deployment.descriptor.EjbDescriptor createEjbDescriptor(java.lang.String, org.glassfish.apf.AnnotationInfo) throws org.glassfish.apf.AnnotationProcessorException; protected abstract org.glassfish.apf.HandlerProcessingResult setEjbDescriptorInfo(org.glassfish.ejb.deployment.descriptor.EjbDescriptor, org.glassfish.apf.AnnotationInfo) throws org.glassfish.apf.AnnotationProcessorException; public org.glassfish.apf.HandlerProcessingResult processAnnotation(org.glassfish.apf.AnnotationInfo) throws org.glassfish.apf.AnnotationProcessorException { org.glassfish.apf.HandlerProcessingResult v, v, v, v, v, v; java.lang.reflect.AnnotatedElement v; java.lang.Object[] v, v, v; org.glassfish.apf.ProcessingContext v, v, v; com.sun.enterprise.util.LocalStringManagerImpl v, v, v; java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v; com.sun.enterprise.deployment.EjbDescriptor v, v; com.sun.enterprise.deployment.EjbBundleDescriptor v; boolean v, v, v, v, v, v, v, v, v, v, v; java.util.logging.Logger v, v, v, v, v, v, v, v, v; java.lang.'annotation'.Annotation v; org.glassfish.ejb.deployment.'annotation'.handlers.AbstractEjbHandler v; org.glassfish.ejb.deployment.descriptor.EjbDescriptor v, v; com.sun.enterprise.deployment.EjbDescriptor[] v; java.util.logging.Level v, v, v, v, v, v, v, v; org.glassfish.apf.AnnotationInfo v; int v, v, v; com.sun.enterprise.deployment.'annotation'.context.EjbContext v; java.lang.IllegalArgumentException v; org.glassfish.apf.AnnotatedElementHandler v, v; com.sun.enterprise.deployment.'annotation'.context.EjbsContext v; java.lang.Class v; java.lang.Object v; v := @this: org.glassfish.ejb.deployment.'annotation'.handlers.AbstractEjbHandler; v := @parameter: org.glassfish.apf.AnnotationInfo; v = virtualinvoke v.(); v = virtualinvoke v.(); v = ; v = ; v = virtualinvoke v.(v); if v == 0 goto label; v = ; v = dynamicinvoke "makeConcatWithConstants" (v, v) ("@ process ejb annotation \u in \u0001"); virtualinvoke v.(v); label: v = virtualinvoke v.(); v = interfaceinvoke v.(); if v == null goto label; v = v instanceof com.sun.enterprise.deployment.'annotation'.context.EjbContext; if v == 0 goto label; v = virtualinvoke v.(); v = virtualinvoke v.(v, v); if v == 0 goto label; v = virtualinvoke v.(); return v; label: v = ; v = ; v = newarray (java.lang.Object)[2]; v = virtualinvoke v.(); v[0] = v; v = virtualinvoke v.(); v[1] = v; v = virtualinvoke v.("enterprise.deployment.annotation.handlers.notcompsuperclass", "The annotation symbol defined in super-class is not compatible with {0} ejb {1}.", v); virtualinvoke v.(v, v, v); v = virtualinvoke v.(); return v; label: if v == null goto label; v = v instanceof com.sun.enterprise.deployment.'annotation'.context.EjbBundleContext; if v != 0 goto label; label: v = virtualinvoke v.(); v = interfaceinvoke v.(); v = virtualinvoke v.(v, v); return v; label: v = ; v = ; virtualinvoke v.(v, "My context is {0}", v); v = virtualinvoke v.(v); v = virtualinvoke v.(); if v == 0 goto label; v = virtualinvoke v.(); label: v = virtualinvoke v.(); v = null; label: v = virtualinvoke v.(v); label: goto label; label: v := @caughtexception; label: if v == null goto label; v = v instanceof org.glassfish.ejb.deployment.descriptor.DummyEjbDescriptor; if v != 0 goto label; v = ; v = ; v = virtualinvoke v.(v); if v == 0 goto label; v = ; v = virtualinvoke v.(); v = dynamicinvoke "makeConcatWithConstants" (v) ("Overriding rules apply for \u0001"); virtualinvoke v.(v); label: v = virtualinvoke v.(v, v); if v != 0 goto label; v = ; v = ; v = newarray (java.lang.Object)[1]; v[0] = v; v = virtualinvoke v.("enterprise.deployment.annotation.handlers.wrongejbtype", "Wrong annotation symbol for ejb {0}", v); virtualinvoke v.(v, v, v); v = virtualinvoke v.(); return v; label: v = virtualinvoke v.(); if v != null goto label; v = virtualinvoke v.(); virtualinvoke v.(v); virtualinvoke v.(); goto label; label: v = virtualinvoke v.(); v = virtualinvoke v.(v); if v != 0 goto label; v = ; v = ; v = newarray (java.lang.Object)[3]; v[0] = v; v[1] = v; v = virtualinvoke v.(); v[2] = v; v = virtualinvoke v.("enterprise.deployment.annotation.handlers.ejbclsmismatch", "", v); virtualinvoke v.(v, v, v); v = virtualinvoke v.(); return v; label: v = ; v = ; v = virtualinvoke v.(v); if v == 0 goto label; v = ; v = virtualinvoke v.(); v = dynamicinvoke "makeConcatWithConstants" (v) ("Creating a new descriptor for \u0001"); virtualinvoke v.(v); label: v = v; v = virtualinvoke v.(v, v); if v == null goto label; virtualinvoke v.(v); virtualinvoke v.(v); v = virtualinvoke v.(); virtualinvoke v.(v); label: virtualinvoke v.(v); v = ; v = ; v = virtualinvoke v.(v); if v == 0 goto label; v = ; v = virtualinvoke v.(); v = virtualinvoke v.(); v = dynamicinvoke "makeConcatWithConstants" (v, v) ("New \u bean \u0001"); virtualinvoke v.(v); label: v = virtualinvoke v.(); v = virtualinvoke v.(v); v = null; v = lengthof v; v = 0; label: if v >= v goto label; v = v[v]; v = virtualinvoke v.(v, v); specialinvoke v.(v, v); v = v + 1; goto label; label: v = lengthof v; if v != 1 goto label; v = new com.sun.enterprise.deployment.'annotation'.context.EjbContext; specialinvoke v.(com.sun.enterprise.deployment.EjbDescriptor,java.lang.Class)>(v, v); v = v; goto label; label: v = new com.sun.enterprise.deployment.'annotation'.context.EjbsContext; specialinvoke v.(com.sun.enterprise.deployment.EjbDescriptor[],java.lang.Class)>(v, v); v = v; label: v = virtualinvoke v.(); interfaceinvoke v.(v); return v; catch java.lang.IllegalArgumentException from label to label with label; } private void doTimedObjectProcessing(java.lang.Class, org.glassfish.ejb.deployment.descriptor.EjbDescriptor) { java.lang.String[] v; java.lang.reflect.Method[] v; int v, v; java.lang.String v; java.lang.reflect.Method v; boolean v; com.sun.enterprise.deployment.MethodDescriptor v, v, v; java.lang.'annotation'.Annotation v; java.lang.Class v, v, v, v; org.glassfish.ejb.deployment.'annotation'.handlers.AbstractEjbHandler v; org.glassfish.ejb.deployment.descriptor.EjbDescriptor v; v := @this: org.glassfish.ejb.deployment.'annotation'.handlers.AbstractEjbHandler; v := @parameter: java.lang.Class; v := @parameter: org.glassfish.ejb.deployment.descriptor.EjbDescriptor; v = null; v = v; label: if v == class "Ljava/lang/Object;" goto label; if v == null goto label; if v != null goto label; v = virtualinvoke v.(); v = lengthof v; v = 0; label: if v >= v goto label; v = v[v]; v = virtualinvoke v.(class "Ljakarta/ejb/Timeout;"); if v == null goto label; v = new com.sun.enterprise.deployment.MethodDescriptor; specialinvoke v.(java.lang.reflect.Method,java.lang.String)>(v, "Timer"); v = v; goto label; label: v = v + 1; goto label; label: v = virtualinvoke v.(); goto label; label: if v != null goto label; v = class "Ljakarta/ejb/TimedObject;"; v = virtualinvoke v.(v); if v == 0 goto label; v = new com.sun.enterprise.deployment.MethodDescriptor; v = newarray (java.lang.String)[1]; v = class "Ljakarta/ejb/Timer;"; v = virtualinvoke v.(); v[0] = v; specialinvoke v.(java.lang.String,java.lang.String,java.lang.String[],java.lang.String)>("ejbTimeout", "@Timeout method", v, "Timer"); v = v; label: if v == null goto label; virtualinvoke v.(v); label: return; } protected org.glassfish.apf.HandlerProcessingResult setBusinessAndHomeInterfaces(org.glassfish.ejb.deployment.descriptor.EjbDescriptor, org.glassfish.apf.AnnotationInfo) throws org.glassfish.apf.AnnotationProcessorException { org.glassfish.apf.HandlerProcessingResult v, v, v; org.glassfish.apf.AnnotationProcessorException v, v, v; java.util.Set v, v, v, v; java.lang.Exception v; java.lang.reflect.AnnotatedElement v; java.lang.Object[] v, v, v, v, v; java.util.ArrayList v, v; com.sun.enterprise.util.LocalStringManagerImpl v, v, v, v, v; java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v; java.lang.Class[] v, v, v; boolean v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v; java.lang.'annotation'.Annotation v, v, v, v, v, v, v, v, v, v, v, v; org.glassfish.ejb.deployment.'annotation'.handlers.AbstractEjbHandler v; org.glassfish.ejb.deployment.descriptor.EjbDescriptor v; java.util.logging.Level v, v, v; java.util.HashSet v, v, v; org.glassfish.apf.AnnotationInfo v; int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v; java.util.Iterator v, v, v, v; org.glassfish.internal.deployment.AnnotationTypesProvider v; java.lang.Class v, v, v, v, v, v, v, v, v, v; java.lang.Object v, v, v, v; v := @this: org.glassfish.ejb.deployment.'annotation'.handlers.AbstractEjbHandler; v := @parameter: org.glassfish.ejb.deployment.descriptor.EjbDescriptor; v := @parameter: org.glassfish.apf.AnnotationInfo; v = new java.util.HashSet; specialinvoke v.()>(); v = new java.util.HashSet; specialinvoke v.()>(); v = new java.util.HashSet; specialinvoke v.()>(); v = virtualinvoke v.(); v = virtualinvoke v.(class "Ljakarta/ejb/Remote;"); v = 0; if v == null goto label; v = interfaceinvoke v.(); v = lengthof v; v = 0; label: if v >= v goto label; v = v[v]; v = virtualinvoke v.(class "Ljakarta/ejb/Local;"); if v == null goto label; v = new org.glassfish.apf.AnnotationProcessorException; v = ; v = newarray (java.lang.Object)[1]; v = virtualinvoke v.(); v[0] = v; v = virtualinvoke v.("enterprise.deployment.annotation.handlers.invalidbusinessinterface", "The interface {0} cannot be both a local and a remote business interface.", v); specialinvoke v.(java.lang.String)>(v); virtualinvoke v.(1); throw v; label: interfaceinvoke v.(v); interfaceinvoke v.(v); v = v + 1; goto label; label: v = interfaceinvoke v.(); label: v = virtualinvoke v.(class "Ljakarta/ejb/Local;"); if v == null goto label; v = interfaceinvoke v.(); v = lengthof v; v = 0; label: if v >= v goto label; v = v[v]; v = virtualinvoke v.(class "Ljakarta/ejb/Remote;"); if v == null goto label; v = new org.glassfish.apf.AnnotationProcessorException; v = ; v = newarray (java.lang.Object)[1]; v = virtualinvoke v.(); v[0] = v; v = virtualinvoke v.("enterprise.deployment.annotation.handlers.invalidbusinessinterface", "The interface {0} cannot be both a local and a remote business interface.", v); specialinvoke v.(java.lang.String)>(v); virtualinvoke v.(1); throw v; label: interfaceinvoke v.(v); interfaceinvoke v.(v); v = v + 1; goto label; label: v = new java.util.ArrayList; specialinvoke v.()>(); v = new java.util.ArrayList; specialinvoke v.()>(); v = virtualinvoke v.(); v = lengthof v; v = 0; label: if v >= v goto label; v = v[v]; v = virtualinvoke v.(v); if v != 0 goto label; v = virtualinvoke v.(class "Ljakarta/ejb/Local;"); if v != null goto label; v = virtualinvoke v.(class "Ljakarta/ejb/Remote;"); if v == null goto label; label: interfaceinvoke v.(v); label: interfaceinvoke v.(v); label: v = v + 1; goto label; label: v = virtualinvoke v.(class "Ljakarta/ejb/LocalBean;"); if v == null goto label; virtualinvoke v.(1); label: v = interfaceinvoke v.(); v = interfaceinvoke v.(); v = v + v; v = virtualinvoke v.(); v = interfaceinvoke v.(); v = v + v; v = virtualinvoke v.(); v = interfaceinvoke v.(); v = v + v; v = interfaceinvoke v.(); v = v + v; v = interfaceinvoke v.(); label: v = interfaceinvoke v.(); if v == 0 goto label; v = interfaceinvoke v.(); v = virtualinvoke v.(); v = interfaceinvoke v.(v); if v != 0 goto label; v = interfaceinvoke v.(v); if v != 0 goto label; v = virtualinvoke v.(); v = interfaceinvoke v.(v); if v != 0 goto label; v = virtualinvoke v.(); v = interfaceinvoke v.(v); if v != 0 goto label; v = virtualinvoke v.(class "Ljakarta/ejb/Local;"); if v == null goto label; interfaceinvoke v.(v); interfaceinvoke v.(v); goto label; label: v = virtualinvoke v.(class "Ljakarta/ejb/Remote;"); if v == null goto label; interfaceinvoke v.(v); interfaceinvoke v.(v); goto label; label: if v != 0 goto label; v = virtualinvoke v.(); if v != 0 goto label; if v == 0 goto label; interfaceinvoke v.(v); goto label; label: interfaceinvoke v.(v); label: interfaceinvoke v.(v); goto label; label: v = interfaceinvoke v.(); label: v = interfaceinvoke v.(); if v == 0 goto label; v = interfaceinvoke v.(); v = interfaceinvoke v.(v); if v == 0 goto label; v = interfaceinvoke v.(v); if v == 0 goto label; v = new org.glassfish.apf.AnnotationProcessorException; v = ; v = newarray (java.lang.Object)[1]; v = virtualinvoke v.(); v[0] = v; v = virtualinvoke v.("enterprise.deployment.annotation.handlers.invalidbusinessinterface", "The interface {0} cannot be both a local and a remote business interface.", v); specialinvoke v.(java.lang.String)>(v); virtualinvoke v.(1); throw v; label: v = interfaceinvoke v.(); if v <= 0 goto label; v = interfaceinvoke v.(); label: v = interfaceinvoke v.(); if v == 0 goto label; v = interfaceinvoke v.(); v = virtualinvoke v.(); virtualinvoke v.(v); goto label; label: v = interfaceinvoke v.(); if v <= 0 goto label; v = interfaceinvoke v.(); label: v = interfaceinvoke v.(); if v == 0 goto label; v = interfaceinvoke v.(); v = virtualinvoke v.(); virtualinvoke v.(v); goto label; label: v = virtualinvoke v.(class "Ljakarta/ejb/RemoteHome;"); if v == null goto label; v = interfaceinvoke v.(); v = specialinvoke v.(v); v = class "Ljakarta/ejb/EJBHome;"; v = virtualinvoke v.(v); if v == 0 goto label; if v == null goto label; interfaceinvoke v.(v); v = virtualinvoke v.(); virtualinvoke v.(v); v = virtualinvoke v.(); virtualinvoke v.(v); goto label; label: v = ; v = ; v = newarray (java.lang.Object)[1]; v[0] = v; v = virtualinvoke v.("enterprise.deployment.annotation.handlers.invalidremotehome", "Encountered invalid @RemoteHome interface {0}.", v); virtualinvoke v.(v, v, v); v = virtualinvoke v.(); return v; label: v = virtualinvoke v.(class "Ljakarta/ejb/LocalHome;"); if v == null goto label; v = interfaceinvoke v.(); v = specialinvoke v.(v); v = class "Ljakarta/ejb/EJBLocalHome;"; v = virtualinvoke v.(v); if v == 0 goto label; if v == null goto label; interfaceinvoke v.(v); v = virtualinvoke v.(); virtualinvoke v.(v); v = virtualinvoke v.(); virtualinvoke v.(v); goto label; label: v = ; v = ; v = newarray (java.lang.Object)[1]; v[0] = v; v = virtualinvoke v.("enterprise.deployment.annotation.handlers.invalidlocalhome", "Encountered invalid @LocalHome interface {0}.", v); virtualinvoke v.(v, v, v); v = virtualinvoke v.(); return v; label: v = 0; label: v = v.; v = interfaceinvoke v.("jakarta.jws.WebService"); if v == null goto label; v = 1; goto label; label: v = 0; label: v = v; label: goto label; label: v := @caughtexception; v = ; v = virtualinvoke v.(); virtualinvoke v.(v, v, v); label: v = virtualinvoke v.(); if v != 0 goto label; v = interfaceinvoke v.(); if v != 0 goto label; v = virtualinvoke v.(); if v != 0 goto label; if v == 0 goto label; v = virtualinvoke v.(class "Ljakarta/jws/WebService;"); if v != null goto label; label: virtualinvoke v.(1); label: v = virtualinvoke v.(); if v == 0 goto label; specialinvoke v.(v, v); label: v = virtualinvoke v.(); return v; catch java.lang.Exception from label to label with label; } private void addNoInterfaceLocalBeanClasses(org.glassfish.ejb.deployment.descriptor.EjbDescriptor, java.lang.Class) { java.lang.Class v, v; java.lang.String v; org.glassfish.ejb.deployment.'annotation'.handlers.AbstractEjbHandler v; org.glassfish.ejb.deployment.descriptor.EjbDescriptor v; v := @this: org.glassfish.ejb.deployment.'annotation'.handlers.AbstractEjbHandler; v := @parameter: org.glassfish.ejb.deployment.descriptor.EjbDescriptor; v := @parameter: java.lang.Class; v = v; label: if v == class "Ljava/lang/Object;" goto label; if v == null goto label; v = virtualinvoke v.(); virtualinvoke v.(v); v = virtualinvoke v.(); goto label; label: return; } private java.lang.Class getComponentIntfFromHome(java.lang.Class) { java.lang.reflect.Method[] v; int v, v; java.lang.Class v, v; java.lang.String v; org.glassfish.ejb.deployment.'annotation'.handlers.AbstractEjbHandler v; java.lang.reflect.Method v; boolean v; v := @this: org.glassfish.ejb.deployment.'annotation'.handlers.AbstractEjbHandler; v := @parameter: java.lang.Class; v = null; v = virtualinvoke v.(); v = lengthof v; v = 0; label: if v >= v goto label; v = v[v]; v = virtualinvoke v.(); v = virtualinvoke v.("create"); if v == 0 goto label; v = virtualinvoke v.(); goto label; label: v = v + 1; goto label; label: return v; } protected boolean excludedFromImplementsClause(java.lang.Class) { java.lang.Package v, v; java.lang.Class v; java.lang.String v; org.glassfish.ejb.deployment.'annotation'.handlers.AbstractEjbHandler v; boolean v, v; v := @this: org.glassfish.ejb.deployment.'annotation'.handlers.AbstractEjbHandler; v := @parameter: java.lang.Class; if v == class "Ljava/io/Serializable;" goto label; if v == class "Ljava/io/Externalizable;" goto label; v = virtualinvoke v.(); if v == null goto label; v = virtualinvoke v.(); v = virtualinvoke v.(); v = virtualinvoke v.("jakarta.ejb"); if v == 0 goto label; label: v = 1; goto label; label: v = 0; label: return v; } protected void doDescriptionProcessing(java.lang.String, org.glassfish.ejb.deployment.descriptor.EjbDescriptor) { java.lang.String v; org.glassfish.ejb.deployment.'annotation'.handlers.AbstractEjbHandler v; org.glassfish.ejb.deployment.descriptor.EjbDescriptor v; boolean v; v := @this: org.glassfish.ejb.deployment.'annotation'.handlers.AbstractEjbHandler; v := @parameter: java.lang.String; v := @parameter: org.glassfish.ejb.deployment.descriptor.EjbDescriptor; if v == null goto label; v = virtualinvoke v.(); if v != 0 goto label; virtualinvoke v.(v); label: return; } protected void doMappedNameProcessing(java.lang.String, org.glassfish.ejb.deployment.descriptor.EjbDescriptor) { java.lang.String v, v; org.glassfish.ejb.deployment.'annotation'.handlers.AbstractEjbHandler v; org.glassfish.ejb.deployment.descriptor.EjbDescriptor v; boolean v, v; v := @this: org.glassfish.ejb.deployment.'annotation'.handlers.AbstractEjbHandler; v := @parameter: java.lang.String; v := @parameter: org.glassfish.ejb.deployment.descriptor.EjbDescriptor; v = virtualinvoke v.(); v = virtualinvoke v.(); if v == 0 goto label; v = virtualinvoke v.(); if v != 0 goto label; virtualinvoke v.(v); label: return; } static void () { com.sun.enterprise.util.LocalStringManagerImpl v; v = new com.sun.enterprise.util.LocalStringManagerImpl; specialinvoke v.(java.lang.Class)>(class "Lorg/glassfish/ejb/deployment/annotation/handlers/AbstractEjbHandler;"); = v; return; } }