public class org.glassfish.jms.injection.JMSContextMetadata extends java.lang.Object implements java.io.Serializable
{
static final org.glassfish.api.naming.SimpleJndiName DEFAULT_CONNECTION_FACTORY;
private static final long serialVersionUID;
private static final java.util.logging.Logger logger;
private final org.glassfish.api.naming.SimpleJndiName lookup;
private final int sessionMode;
private final java.lang.String userName;
private final java.lang.String password;
private java.lang.String fingerPrint;
void <init>(jakarta.jms.JMSConnectionFactory, jakarta.jms.JMSSessionMode, jakarta.jms.JMSPasswordCredential)
{
jakarta.jms.JMSSessionMode v;
jakarta.jms.JMSConnectionFactory v;
jakarta.jms.JMSPasswordCredential v;
int v;
org.glassfish.api.naming.SimpleJndiName v;
java.lang.String v, v, v, v, v;
org.glassfish.jms.injection.JMSContextMetadata v;
v := @this: org.glassfish.jms.injection.JMSContextMetadata;
v := @parameter: jakarta.jms.JMSConnectionFactory;
v := @parameter: jakarta.jms.JMSSessionMode;
v := @parameter: jakarta.jms.JMSPasswordCredential;
specialinvoke v.<java.lang.Object: void <init>()>();
if v != null goto label;
v.<org.glassfish.jms.injection.JMSContextMetadata: org.glassfish.api.naming.SimpleJndiName lookup> = null;
goto label;
label:
v = new org.glassfish.api.naming.SimpleJndiName;
v = interfaceinvoke v.<jakarta.jms.JMSConnectionFactory: java.lang.String value()>();
v = virtualinvoke v.<java.lang.String: java.lang.String trim()>();
specialinvoke v.<org.glassfish.api.naming.SimpleJndiName: void <init>(java.lang.String)>(v);
v.<org.glassfish.jms.injection.JMSContextMetadata: org.glassfish.api.naming.SimpleJndiName lookup> = v;
label:
if v != null goto label;
v.<org.glassfish.jms.injection.JMSContextMetadata: int sessionMode> = 1;
goto label;
label:
v = interfaceinvoke v.<jakarta.jms.JMSSessionMode: int value()>();
v.<org.glassfish.jms.injection.JMSContextMetadata: int sessionMode> = v;
label:
if v != null goto label;
v.<org.glassfish.jms.injection.JMSContextMetadata: java.lang.String userName> = null;
v.<org.glassfish.jms.injection.JMSContextMetadata: java.lang.String password> = null;
goto label;
label:
v = interfaceinvoke v.<jakarta.jms.JMSPasswordCredential: java.lang.String userName()>();
v.<org.glassfish.jms.injection.JMSContextMetadata: java.lang.String userName> = v;
v = interfaceinvoke v.<jakarta.jms.JMSPasswordCredential: java.lang.String password()>();
v = specialinvoke v.<org.glassfish.jms.injection.JMSContextMetadata: java.lang.String getUnAliasedPwd(java.lang.String)>(v);
v.<org.glassfish.jms.injection.JMSContextMetadata: java.lang.String password> = v;
label:
return;
}
public org.glassfish.api.naming.SimpleJndiName getLookup()
{
org.glassfish.api.naming.SimpleJndiName v;
org.glassfish.jms.injection.JMSContextMetadata v;
v := @this: org.glassfish.jms.injection.JMSContextMetadata;
v = v.<org.glassfish.jms.injection.JMSContextMetadata: org.glassfish.api.naming.SimpleJndiName lookup>;
return v;
}
public int getSessionMode()
{
int v;
org.glassfish.jms.injection.JMSContextMetadata v;
v := @this: org.glassfish.jms.injection.JMSContextMetadata;
v = v.<org.glassfish.jms.injection.JMSContextMetadata: int sessionMode>;
return v;
}
public java.lang.String getUserName()
{
java.lang.String v;
org.glassfish.jms.injection.JMSContextMetadata v;
v := @this: org.glassfish.jms.injection.JMSContextMetadata;
v = v.<org.glassfish.jms.injection.JMSContextMetadata: java.lang.String userName>;
return v;
}
public java.lang.String getPassword()
{
java.lang.String v;
org.glassfish.jms.injection.JMSContextMetadata v;
v := @this: org.glassfish.jms.injection.JMSContextMetadata;
v = v.<org.glassfish.jms.injection.JMSContextMetadata: java.lang.String password>;
return v;
}
public java.lang.String toString()
{
int v;
java.lang.StringBuilder v, v, v, v, v;
org.glassfish.api.naming.SimpleJndiName v;
java.lang.String v, v, v, v;
org.glassfish.jms.injection.JMSContextMetadata v;
v := @this: org.glassfish.jms.injection.JMSContextMetadata;
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>()>();
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>("JMSContextMetadata[");
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>("lookup=");
v = v.<org.glassfish.jms.injection.JMSContextMetadata: org.glassfish.api.naming.SimpleJndiName lookup>;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.Object)>(v);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(", sessionMode=");
v = v.<org.glassfish.jms.injection.JMSContextMetadata: int sessionMode>;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(int)>(v);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(", username=");
v = v.<org.glassfish.jms.injection.JMSContextMetadata: java.lang.String userName>;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(", password=");
v = v.<org.glassfish.jms.injection.JMSContextMetadata: java.lang.String password>;
if v == null goto label;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>("xxxxxx");
goto label;
label:
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>("null");
label:
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(" [fingerPrint[");
v = virtualinvoke v.<org.glassfish.jms.injection.JMSContextMetadata: java.lang.String getFingerPrint()>();
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>("]]");
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
return v;
}
public java.lang.String getFingerPrint()
{
byte[] v, v, v, v;
java.security.MessageDigest v;
short v;
byte v;
int v, v, v, v;
java.lang.String v, v, v, v, v, v, v, v, v;
org.glassfish.jms.injection.JMSContextMetadata v;
java.lang.RuntimeException v;
java.lang.Exception v;
java.lang.StringBuilder v;
org.glassfish.api.naming.SimpleJndiName v, v;
v := @this: org.glassfish.jms.injection.JMSContextMetadata;
v = v.<org.glassfish.jms.injection.JMSContextMetadata: java.lang.String fingerPrint>;
if v != null goto label;
label:
v = staticinvoke <java.security.MessageDigest: java.security.MessageDigest getInstance(java.lang.String)>("MD5");
virtualinvoke v.<java.security.MessageDigest: void update(byte)>(124);
v = v.<org.glassfish.jms.injection.JMSContextMetadata: org.glassfish.api.naming.SimpleJndiName lookup>;
v = v.<org.glassfish.jms.injection.JMSContextMetadata: org.glassfish.api.naming.SimpleJndiName lookup>;
if v != null goto label;
v = <org.glassfish.jms.injection.JMSContextMetadata: org.glassfish.api.naming.SimpleJndiName DEFAULT_CONNECTION_FACTORY>;
label:
v = virtualinvoke v.<org.glassfish.api.naming.SimpleJndiName: java.lang.String toString()>();
v = virtualinvoke v.<java.lang.String: byte[] getBytes(java.lang.String)>("ISO-8859-1");
virtualinvoke v.<java.security.MessageDigest: void update(byte[])>(v);
virtualinvoke v.<java.security.MessageDigest: void update(byte)>(124);
v = v.<org.glassfish.jms.injection.JMSContextMetadata: int sessionMode>;
virtualinvoke v.<java.security.MessageDigest: void update(byte)>(v);
virtualinvoke v.<java.security.MessageDigest: void update(byte)>(124);
v = v.<org.glassfish.jms.injection.JMSContextMetadata: java.lang.String userName>;
if v == null goto label;
v = v.<org.glassfish.jms.injection.JMSContextMetadata: java.lang.String userName>;
v = virtualinvoke v.<java.lang.String: byte[] getBytes(java.lang.String)>("ISO-8859-1");
virtualinvoke v.<java.security.MessageDigest: void update(byte[])>(v);
label:
virtualinvoke v.<java.security.MessageDigest: void update(byte)>(124);
v = v.<org.glassfish.jms.injection.JMSContextMetadata: java.lang.String password>;
if v == null goto label;
v = v.<org.glassfish.jms.injection.JMSContextMetadata: java.lang.String password>;
v = virtualinvoke v.<java.lang.String: byte[] getBytes(java.lang.String)>("ISO-8859-1");
virtualinvoke v.<java.security.MessageDigest: void update(byte[])>(v);
label:
virtualinvoke v.<java.security.MessageDigest: void update(byte)>(124);
v = virtualinvoke v.<java.security.MessageDigest: byte[] digest()>();
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = v & 255;
v = staticinvoke <java.lang.Integer: java.lang.String toHexString(int)>(v);
v = virtualinvoke v.<java.lang.String: int length()>();
if v >= 2 goto label;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(48);
label:
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
v = v + 1;
goto label;
label:
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
v.<org.glassfish.jms.injection.JMSContextMetadata: java.lang.String fingerPrint> = v;
label:
goto label;
label:
v := @caughtexception;
v = new java.lang.RuntimeException;
specialinvoke v.<java.lang.RuntimeException: void <init>(java.lang.String,java.lang.Throwable)>("Couldn\'t make digest of JMSContextMetadata content", v);
throw v;
label:
v = v.<org.glassfish.jms.injection.JMSContextMetadata: java.lang.String fingerPrint>;
return v;
catch java.lang.Exception from label to label with label;
}
private boolean isPasswordAlias(java.lang.String)
{
java.lang.String v;
org.glassfish.jms.injection.JMSContextMetadata v;
boolean v;
v := @this: org.glassfish.jms.injection.JMSContextMetadata;
v := @parameter: java.lang.String;
if v == null goto label;
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("${ALIAS=");
if v == 0 goto label;
return 1;
label:
return 0;
}
private java.lang.String getUnAliasedPwd(java.lang.String)
{
java.util.logging.Logger v;
java.lang.Exception v;
java.util.logging.Level v;
java.lang.String v, v;
org.glassfish.jms.injection.JMSContextMetadata v;
boolean v, v;
v := @this: org.glassfish.jms.injection.JMSContextMetadata;
v := @parameter: java.lang.String;
if v == null goto label;
v = specialinvoke v.<org.glassfish.jms.injection.JMSContextMetadata: boolean isPasswordAlias(java.lang.String)>(v);
if v == 0 goto label;
label:
v = staticinvoke <org.glassfish.internal.api.RelativePathResolver: java.lang.String getRealPasswordFromAlias(java.lang.String)>(v);
if v == null goto label;
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v != 0 goto label;
label:
return v;
label:
v := @caughtexception;
v = <org.glassfish.jms.injection.JMSContextMetadata: java.util.logging.Logger logger>;
v = <java.util.logging.Level: java.util.logging.Level WARNING>;
virtualinvoke v.<java.util.logging.Logger: void log(java.util.logging.Level,java.lang.String,java.lang.Throwable)>(v, "Failed to unalias password.", v);
label:
return v;
catch java.lang.Exception from label to label with label;
}
static void <clinit>()
{
org.glassfish.api.naming.SimpleJndiName v;
java.util.logging.Logger v;
v = new org.glassfish.api.naming.SimpleJndiName;
specialinvoke v.<org.glassfish.api.naming.SimpleJndiName: void <init>(java.lang.String)>("java:comp/DefaultJMSConnectionFactory");
<org.glassfish.jms.injection.JMSContextMetadata: org.glassfish.api.naming.SimpleJndiName DEFAULT_CONNECTION_FACTORY> = v;
v = staticinvoke <java.util.logging.Logger: java.util.logging.Logger getLogger(java.lang.String)>("jakarta.enterprise.resource.jms.injection");
<org.glassfish.jms.injection.JMSContextMetadata: java.util.logging.Logger logger> = v;
return;
}
}