public abstract class org.glassfish.internal.deployment.GenericSniffer extends java.lang.Object implements org.glassfish.api.container.Sniffer
{
protected com.sun.enterprise.module.ModulesRegistry modulesRegistry;
protected org.glassfish.hk.api.ServiceLocator habitat;
private final java.lang.String containerName;
private final java.lang.String appStigma;
private final java.lang.String urlPattern;
private static final javax.xml.stream.XMLInputFactory xmlInputFactory;
private com.sun.enterprise.module.HK2Module[] modules;
public void <init>(java.lang.String, java.lang.String, java.lang.String)
{
org.glassfish.internal.deployment.GenericSniffer v;
java.lang.String v, v, v;
v := @this: org.glassfish.internal.deployment.GenericSniffer;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<org.glassfish.internal.deployment.GenericSniffer: java.lang.String containerName> = v;
v.<org.glassfish.internal.deployment.GenericSniffer: java.lang.String appStigma> = v;
v.<org.glassfish.internal.deployment.GenericSniffer: java.lang.String urlPattern> = v;
return;
}
public boolean handles(org.glassfish.api.deployment.DeploymentContext)
{
java.lang.'annotation'.Annotation[] v;
org.glassfish.api.deployment.archive.ArchiveHandler v;
org.glassfish.internal.deployment.GenericSniffer v;
org.glassfish.api.deployment.archive.ReadableArchive v;
org.glassfish.api.deployment.DeploymentContext v;
java.lang.Object v;
java.lang.String v;
org.glassfish.hk.api.ServiceLocator v;
boolean v, v;
v := @this: org.glassfish.internal.deployment.GenericSniffer;
v := @parameter: org.glassfish.api.deployment.DeploymentContext;
v = v.<org.glassfish.internal.deployment.GenericSniffer: org.glassfish.hk.api.ServiceLocator habitat>;
v = interfaceinvoke v.<org.glassfish.api.deployment.DeploymentContext: org.glassfish.api.deployment.archive.ArchiveHandler getArchiveHandler()>();
v = interfaceinvoke v.<org.glassfish.api.deployment.archive.ArchiveHandler: java.lang.String getArchiveType()>();
v = newarray (java.lang.'annotation'.Annotation)[0];
v = interfaceinvoke v.<org.glassfish.hk.api.ServiceLocator: java.lang.Object getService(java.lang.Class,java.lang.String,java.lang.'annotation'.Annotation[])>(class "Lorg/glassfish/api/deployment/archive/ArchiveType;", v, v);
if v == null goto label;
v = virtualinvoke v.<org.glassfish.internal.deployment.GenericSniffer: boolean supportsArchiveType(org.glassfish.api.deployment.archive.ArchiveType)>(v);
if v != 0 goto label;
return 0;
label:
v = interfaceinvoke v.<org.glassfish.api.deployment.DeploymentContext: org.glassfish.api.deployment.archive.ReadableArchive getSource()>();
v = virtualinvoke v.<org.glassfish.internal.deployment.GenericSniffer: boolean handles(org.glassfish.api.deployment.archive.ReadableArchive)>(v);
return v;
}
public java.lang.String[] getAnnotationNames(org.glassfish.api.deployment.DeploymentContext)
{
java.lang.Object[] v;
java.lang.Class[] v;
java.lang.String[] v;
java.util.ArrayList v;
org.glassfish.internal.deployment.GenericSniffer v;
org.glassfish.api.deployment.DeploymentContext v;
int v, v, v;
java.lang.Class v;
java.lang.String v;
v := @this: org.glassfish.internal.deployment.GenericSniffer;
v := @parameter: org.glassfish.api.deployment.DeploymentContext;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = virtualinvoke v.<org.glassfish.internal.deployment.GenericSniffer: java.lang.Class[] getAnnotationTypes()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = v + 1;
goto label;
label:
v = interfaceinvoke v.<java.util.List: int size()>();
v = newarray (java.lang.String)[v];
v = interfaceinvoke v.<java.util.List: java.lang.Object[] toArray(java.lang.Object[])>(v);
return v;
}
public boolean handles(org.glassfish.api.deployment.archive.ReadableArchive)
{
org.glassfish.internal.deployment.GenericSniffer v;
org.glassfish.api.deployment.archive.ReadableArchive v;
java.io.IOException v;
java.lang.String v, v;
boolean v;
v := @this: org.glassfish.internal.deployment.GenericSniffer;
v := @parameter: org.glassfish.api.deployment.archive.ReadableArchive;
v = v.<org.glassfish.internal.deployment.GenericSniffer: java.lang.String appStigma>;
if v == null goto label;
label:
v = v.<org.glassfish.internal.deployment.GenericSniffer: java.lang.String appStigma>;
v = interfaceinvoke v.<org.glassfish.api.deployment.archive.ReadableArchive: boolean exists(java.lang.String)>(v);
if v == 0 goto label;
label:
return 1;
label:
v := @caughtexception;
label:
return 0;
catch java.io.IOException from label to label with label;
}
public java.lang.String[] getURLPatterns()
{
org.glassfish.internal.deployment.GenericSniffer v;
java.lang.String[] v;
java.lang.String v, v;
v := @this: org.glassfish.internal.deployment.GenericSniffer;
v = v.<org.glassfish.internal.deployment.GenericSniffer: java.lang.String urlPattern>;
if v == null goto label;
v = newarray (java.lang.String)[1];
v = v.<org.glassfish.internal.deployment.GenericSniffer: java.lang.String urlPattern>;
v[0] = v;
return v;
label:
return null;
}
public java.lang.String getModuleType()
{
org.glassfish.internal.deployment.GenericSniffer v;
java.lang.String v;
v := @this: org.glassfish.internal.deployment.GenericSniffer;
v = v.<org.glassfish.internal.deployment.GenericSniffer: java.lang.String containerName>;
return v;
}
public synchronized com.sun.enterprise.module.HK2Module[] setup(java.lang.String, java.util.logging.Logger) throws java.io.IOException
{
java.lang.Object[] v, v;
com.sun.enterprise.module.HK2Module[] v, v, v, v;
java.lang.String[] v;
java.util.ArrayList v;
java.util.logging.Level v, v;
int v, v, v;
java.lang.String v, v, v, v;
boolean v;
com.sun.enterprise.module.HK2Module v;
java.lang.RuntimeException v;
java.util.logging.Logger v;
com.sun.enterprise.module.ModulesRegistry v;
org.glassfish.internal.deployment.GenericSniffer v;
v := @this: org.glassfish.internal.deployment.GenericSniffer;
v := @parameter: java.lang.String;
v := @parameter: java.util.logging.Logger;
v = v.<org.glassfish.internal.deployment.GenericSniffer: com.sun.enterprise.module.HK2Module[] modules>;
if v == null goto label;
v = <java.util.logging.Level: java.util.logging.Level FINE>;
v = virtualinvoke v.<java.util.logging.Logger: boolean isLoggable(java.util.logging.Level)>(v);
if v == 0 goto label;
v = <java.util.logging.Level: java.util.logging.Level FINE>;
v = newarray (java.lang.Object)[2];
v[0] = v;
v = v.<org.glassfish.internal.deployment.GenericSniffer: java.lang.String containerName>;
v[1] = v;
virtualinvoke v.<java.util.logging.Logger: void logp(java.util.logging.Level,java.lang.String,java.lang.String,java.lang.String,java.lang.Object[])>(v, "GenericSniffer", "setup", "{0} has already setup {1} container, so just returning.", v);
label:
v = v.<org.glassfish.internal.deployment.GenericSniffer: com.sun.enterprise.module.HK2Module[] modules>;
return v;
label:
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = virtualinvoke v.<org.glassfish.internal.deployment.GenericSniffer: java.lang.String[] getContainerModuleNames()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = v.<org.glassfish.internal.deployment.GenericSniffer: com.sun.enterprise.module.ModulesRegistry modulesRegistry>;
v = interfaceinvoke v.<com.sun.enterprise.module.ModulesRegistry: com.sun.enterprise.module.HK2Module makeModuleFor(java.lang.String,java.lang.String)>(v, null);
if v == null goto label;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = new java.lang.RuntimeException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Unable to set up module \u0001");
specialinvoke v.<java.lang.RuntimeException: void <init>(java.lang.String)>(v);
throw v;
label:
v = v + 1;
goto label;
label:
v = interfaceinvoke v.<java.util.List: int size()>();
v = newarray (com.sun.enterprise.module.HK2Module)[v];
v = interfaceinvoke v.<java.util.List: java.lang.Object[] toArray(java.lang.Object[])>(v);
v.<org.glassfish.internal.deployment.GenericSniffer: com.sun.enterprise.module.HK2Module[] modules> = v;
v = v.<org.glassfish.internal.deployment.GenericSniffer: com.sun.enterprise.module.HK2Module[] modules>;
return v;
}
protected java.lang.String[] getContainerModuleNames()
{
java.lang.String[] v;
org.glassfish.internal.deployment.GenericSniffer v;
v := @this: org.glassfish.internal.deployment.GenericSniffer;
v = newarray (java.lang.String)[0];
return v;
}
public void tearDown()
{
org.glassfish.internal.deployment.GenericSniffer v;
v := @this: org.glassfish.internal.deployment.GenericSniffer;
return;
}
public java.lang.Class[] getAnnotationTypes()
{
java.lang.Class[] v;
org.glassfish.internal.deployment.GenericSniffer v;
v := @this: org.glassfish.internal.deployment.GenericSniffer;
v = newarray (java.lang.Class)[0];
return v;
}
public boolean isUserVisible()
{
org.glassfish.internal.deployment.GenericSniffer v;
v := @this: org.glassfish.internal.deployment.GenericSniffer;
return 0;
}
public boolean isJakartaEE()
{
org.glassfish.internal.deployment.GenericSniffer v;
v := @this: org.glassfish.internal.deployment.GenericSniffer;
return 0;
}
public boolean equals(java.lang.Object)
{
org.glassfish.internal.deployment.GenericSniffer v;
java.lang.Object v;
java.lang.String v, v;
boolean v, v;
v := @this: org.glassfish.internal.deployment.GenericSniffer;
v := @parameter: java.lang.Object;
v = v instanceof org.glassfish.api.container.Sniffer;
if v == 0 goto label;
v = virtualinvoke v.<org.glassfish.internal.deployment.GenericSniffer: java.lang.String getModuleType()>();
v = interfaceinvoke v.<org.glassfish.api.container.Sniffer: java.lang.String getModuleType()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
return v;
label:
return 0;
}
public int hashCode()
{
org.glassfish.internal.deployment.GenericSniffer v;
int v, v;
java.lang.String v, v;
v := @this: org.glassfish.internal.deployment.GenericSniffer;
v = virtualinvoke v.<org.glassfish.internal.deployment.GenericSniffer: java.lang.String getModuleType()>();
if v == null goto label;
v = virtualinvoke v.<org.glassfish.internal.deployment.GenericSniffer: java.lang.String getModuleType()>();
v = virtualinvoke v.<java.lang.String: int hashCode()>();
goto label;
label:
v = 0;
label:
v = 355 + v;
return v;
}
public java.util.Map getDeploymentConfigurations(org.glassfish.api.deployment.archive.ReadableArchive) throws java.io.IOException
{
java.lang.Throwable v;
java.util.Iterator v;
java.util.HashMap v;
java.util.List v;
org.glassfish.internal.deployment.GenericSniffer v;
org.glassfish.api.deployment.archive.ReadableArchive v;
java.lang.Object v;
java.lang.String v;
boolean v;
java.io.InputStream v;
v := @this: org.glassfish.internal.deployment.GenericSniffer;
v := @parameter: org.glassfish.api.deployment.archive.ReadableArchive;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = virtualinvoke v.<org.glassfish.internal.deployment.GenericSniffer: java.util.List getDeploymentConfigurationPaths()>();
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = null;
label:
v = interfaceinvoke v.<org.glassfish.api.deployment.archive.ReadableArchive: java.io.InputStream getEntry(java.lang.String)>(v);
if v == null goto label;
v = specialinvoke v.<org.glassfish.internal.deployment.GenericSniffer: java.lang.String readDeploymentConfig(java.io.InputStream)>(v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
if v == null goto label;
virtualinvoke v.<java.io.InputStream: void close()>();
goto label;
label:
v := @caughtexception;
if v == null goto label;
virtualinvoke v.<java.io.InputStream: void close()>();
label:
throw v;
label:
return v;
catch java.lang.Throwable from label to label with label;
}
protected java.util.List getDeploymentConfigurationPaths()
{
java.util.List v;
org.glassfish.internal.deployment.GenericSniffer v;
v := @this: org.glassfish.internal.deployment.GenericSniffer;
v = <java.util.Collections: java.util.List EMPTY_LIST>;
return v;
}
public java.lang.String[] getIncompatibleSnifferTypes()
{
org.glassfish.internal.deployment.GenericSniffer v;
v := @this: org.glassfish.internal.deployment.GenericSniffer;
return null;
}
private java.lang.String readDeploymentConfig(java.io.InputStream) throws java.io.IOException
{
byte[] v, v;
java.io.ByteArrayOutputStream v;
javax.xml.stream.XMLInputFactory v;
javax.xml.stream.events.XMLEvent v;
javax.xml.stream.XMLStreamException v;
int v, v;
java.lang.String v, v;
boolean v, v;
javax.xml.stream.XMLEventReader v;
java.io.IOException v;
java.io.InputStreamReader v;
org.glassfish.internal.deployment.GenericSniffer v;
java.io.InputStream v;
v := @this: org.glassfish.internal.deployment.GenericSniffer;
v := @parameter: java.io.InputStream;
v = null;
label:
virtualinvoke v.<java.io.InputStream: void mark(int)>(2147483647);
v = <org.glassfish.internal.deployment.GenericSniffer: javax.xml.stream.XMLInputFactory xmlInputFactory>;
v = new java.io.InputStreamReader;
specialinvoke v.<java.io.InputStreamReader: void <init>(java.io.InputStream)>(v);
v = virtualinvoke v.<javax.xml.stream.XMLInputFactory: javax.xml.stream.XMLEventReader createXMLEventReader(java.io.Reader)>(v);
label:
v = interfaceinvoke v.<javax.xml.stream.XMLEventReader: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<javax.xml.stream.XMLEventReader: javax.xml.stream.events.XMLEvent nextEvent()>();
v = interfaceinvoke v.<javax.xml.stream.events.XMLEvent: boolean isStartDocument()>();
if v == 0 goto label;
v = interfaceinvoke v.<javax.xml.stream.events.StartDocument: java.lang.String getCharacterEncodingScheme()>();
goto label;
label:
v := @caughtexception;
v = new java.io.IOException;
specialinvoke v.<java.io.IOException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
if v != null goto label;
v = "UTF-8";
label:
virtualinvoke v.<java.io.InputStream: void reset()>();
v = new java.io.ByteArrayOutputStream;
specialinvoke v.<java.io.ByteArrayOutputStream: void <init>()>();
v = newarray (byte)[1024];
label:
v = virtualinvoke v.<java.io.InputStream: int read(byte[])>(v);
v = (int) -1;
if v == v goto label;
virtualinvoke v.<java.io.ByteArrayOutputStream: void write(byte[],int,int)>(v, 0, v);
goto label;
label:
virtualinvoke v.<java.io.InputStream: void close()>();
v = new java.lang.String;
v = virtualinvoke v.<java.io.ByteArrayOutputStream: byte[] toByteArray()>();
specialinvoke v.<java.lang.String: void <init>(byte[],java.lang.String)>(v, v);
return v;
catch javax.xml.stream.XMLStreamException from label to label with label;
}
static void <clinit>()
{
javax.xml.stream.XMLInputFactory v;
v = staticinvoke <javax.xml.stream.XMLInputFactory: javax.xml.stream.XMLInputFactory newInstance()>();
<org.glassfish.internal.deployment.GenericSniffer: javax.xml.stream.XMLInputFactory xmlInputFactory> = v;
return;
}
}