public final class io.netty.util.Version extends java.lang.Object
{
private static final java.lang.String PROP_VERSION;
private static final java.lang.String PROP_BUILD_DATE;
private static final java.lang.String PROP_COMMIT_DATE;
private static final java.lang.String PROP_SHORT_COMMIT_HASH;
private static final java.lang.String PROP_LONG_COMMIT_HASH;
private static final java.lang.String PROP_REPO_STATUS;
private final java.lang.String artifactId;
private final java.lang.String artifactVersion;
private final long buildTimeMillis;
private final long commitTimeMillis;
private final java.lang.String shortCommitHash;
private final java.lang.String longCommitHash;
private final java.lang.String repositoryStatus;
public static java.util.Map identify()
{
java.util.Map v;
v = staticinvoke <io.netty.util.Version: java.util.Map identify(java.lang.ClassLoader)>(null);
return v;
}
public static java.util.Map identify(java.lang.ClassLoader)
{
java.util.Enumeration v;
boolean v, v, v, v, v, v, v, v, v;
java.util.Set v;
java.lang.Exception v;
io.netty.util.Version v;
java.lang.ClassLoader v;
java.lang.Throwable v;
long v, v;
java.util.HashSet v;
int v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.util.Properties v;
java.util.Iterator v, v;
java.util.TreeMap v;
java.lang.Object v, v, v;
java.io.InputStream v;
v := @parameter: java.lang.ClassLoader;
if v != null goto label;
v = staticinvoke <io.netty.util.internal.PlatformDependent: java.lang.ClassLoader getContextClassLoader()>();
label:
v = new java.util.Properties;
specialinvoke v.<java.util.Properties: void <init>()>();
label:
v = virtualinvoke v.<java.lang.ClassLoader: java.util.Enumeration getResources(java.lang.String)>("META-INF/io.netty.versions.properties");
label:
v = interfaceinvoke v.<java.util.Enumeration: boolean hasMoreElements()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Enumeration: java.lang.Object nextElement()>();
v = virtualinvoke v.<java.net.URL: java.io.InputStream openStream()>();
label:
virtualinvoke v.<java.util.Properties: void load(java.io.InputStream)>(v);
label:
goto label;
label:
v := @caughtexception;
throw v;
label:
v := @caughtexception;
label:
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
v = virtualinvoke v.<java.util.Properties: java.util.Set keySet()>();
v = interfaceinvoke v.<java.util.Set: 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 = virtualinvoke v.<java.lang.String: int indexOf(int)>(46);
if v <= 0 goto label;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(0, v);
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[])>("\u.version");
v = virtualinvoke v.<java.util.Properties: boolean containsKey(java.lang.Object)>(v);
if v == 0 goto label;
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[])>("\u.buildDate");
v = virtualinvoke v.<java.util.Properties: boolean containsKey(java.lang.Object)>(v);
if v == 0 goto label;
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[])>("\u.commitDate");
v = virtualinvoke v.<java.util.Properties: boolean containsKey(java.lang.Object)>(v);
if v == 0 goto label;
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[])>("\u.shortCommitHash");
v = virtualinvoke v.<java.util.Properties: boolean containsKey(java.lang.Object)>(v);
if v == 0 goto label;
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[])>("\u.longCommitHash");
v = virtualinvoke v.<java.util.Properties: boolean containsKey(java.lang.Object)>(v);
if v == 0 goto label;
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[])>("\u.repoStatus");
v = virtualinvoke v.<java.util.Properties: boolean containsKey(java.lang.Object)>(v);
if v == 0 goto label;
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
goto label;
label:
v = new java.util.TreeMap;
specialinvoke v.<java.util.TreeMap: void <init>()>();
v = interfaceinvoke v.<java.util.Set: 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 = new io.netty.util.Version;
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[])>("\u.version");
v = virtualinvoke v.<java.util.Properties: java.lang.String getProperty(java.lang.String)>(v);
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[])>("\u.buildDate");
v = virtualinvoke v.<java.util.Properties: java.lang.String getProperty(java.lang.String)>(v);
v = staticinvoke <io.netty.util.Version: long parseIso8601(java.lang.String)>(v);
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[])>("\u.commitDate");
v = virtualinvoke v.<java.util.Properties: java.lang.String getProperty(java.lang.String)>(v);
v = staticinvoke <io.netty.util.Version: long parseIso8601(java.lang.String)>(v);
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[])>("\u.shortCommitHash");
v = virtualinvoke v.<java.util.Properties: java.lang.String getProperty(java.lang.String)>(v);
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[])>("\u.longCommitHash");
v = virtualinvoke v.<java.util.Properties: java.lang.String getProperty(java.lang.String)>(v);
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[])>("\u.repoStatus");
v = virtualinvoke v.<java.util.Properties: java.lang.String getProperty(java.lang.String)>(v);
specialinvoke v.<io.netty.util.Version: void <init>(java.lang.String,java.lang.String,long,long,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, v, v, v, v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
goto label;
label:
return v;
catch java.lang.Throwable from label to label with label;
catch java.lang.Exception from label to label with label;
}
private static long parseIso8601(java.lang.String)
{
java.util.Date v;
java.text.SimpleDateFormat v;
long v;
java.lang.String v;
java.text.ParseException v;
v := @parameter: java.lang.String;
label:
v = new java.text.SimpleDateFormat;
specialinvoke v.<java.text.SimpleDateFormat: void <init>(java.lang.String)>("yyyy-MM-dd HH:mm:ss Z");
v = virtualinvoke v.<java.text.SimpleDateFormat: java.util.Date parse(java.lang.String)>(v);
v = virtualinvoke v.<java.util.Date: long getTime()>();
label:
return v;
label:
v := @caughtexception;
return 0L;
catch java.text.ParseException from label to label with label;
}
public static void main(java.lang.String[])
{
java.io.PrintStream v;
java.util.Iterator v;
java.util.Collection v;
java.util.Map v;
java.lang.Object v;
java.lang.String[] v;
boolean v;
v := @parameter: java.lang.String[];
v = staticinvoke <io.netty.util.Version: java.util.Map identify()>();
v = interfaceinvoke v.<java.util.Map: java.util.Collection values()>();
v = interfaceinvoke v.<java.util.Collection: 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 = <java.lang.System: java.io.PrintStream err>;
virtualinvoke v.<java.io.PrintStream: void println(java.lang.Object)>(v);
goto label;
label:
return;
}
private void <init>(java.lang.String, java.lang.String, long, long, java.lang.String, java.lang.String, java.lang.String)
{
long v, v;
io.netty.util.Version v;
java.lang.String v, v, v, v, v;
v := @this: io.netty.util.Version;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: long;
v := @parameter: long;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<io.netty.util.Version: java.lang.String artifactId> = v;
v.<io.netty.util.Version: java.lang.String artifactVersion> = v;
v.<io.netty.util.Version: long buildTimeMillis> = v;
v.<io.netty.util.Version: long commitTimeMillis> = v;
v.<io.netty.util.Version: java.lang.String shortCommitHash> = v;
v.<io.netty.util.Version: java.lang.String longCommitHash> = v;
v.<io.netty.util.Version: java.lang.String repositoryStatus> = v;
return;
}
public java.lang.String artifactId()
{
io.netty.util.Version v;
java.lang.String v;
v := @this: io.netty.util.Version;
v = v.<io.netty.util.Version: java.lang.String artifactId>;
return v;
}
public java.lang.String artifactVersion()
{
io.netty.util.Version v;
java.lang.String v;
v := @this: io.netty.util.Version;
v = v.<io.netty.util.Version: java.lang.String artifactVersion>;
return v;
}
public long buildTimeMillis()
{
io.netty.util.Version v;
long v;
v := @this: io.netty.util.Version;
v = v.<io.netty.util.Version: long buildTimeMillis>;
return v;
}
public long commitTimeMillis()
{
io.netty.util.Version v;
long v;
v := @this: io.netty.util.Version;
v = v.<io.netty.util.Version: long commitTimeMillis>;
return v;
}
public java.lang.String shortCommitHash()
{
io.netty.util.Version v;
java.lang.String v;
v := @this: io.netty.util.Version;
v = v.<io.netty.util.Version: java.lang.String shortCommitHash>;
return v;
}
public java.lang.String longCommitHash()
{
io.netty.util.Version v;
java.lang.String v;
v := @this: io.netty.util.Version;
v = v.<io.netty.util.Version: java.lang.String longCommitHash>;
return v;
}
public java.lang.String repositoryStatus()
{
io.netty.util.Version v;
java.lang.String v;
v := @this: io.netty.util.Version;
v = v.<io.netty.util.Version: java.lang.String repositoryStatus>;
return v;
}
public java.lang.String toString()
{
io.netty.util.Version v;
java.lang.String v, v, v, v, v, v, v, v;
boolean v;
v := @this: io.netty.util.Version;
v = v.<io.netty.util.Version: java.lang.String artifactId>;
v = v.<io.netty.util.Version: java.lang.String artifactVersion>;
v = v.<io.netty.util.Version: java.lang.String shortCommitHash>;
v = "clean";
v = v.<io.netty.util.Version: java.lang.String repositoryStatus>;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = "";
goto label;
label:
v = v.<io.netty.util.Version: java.lang.String repositoryStatus>;
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[])>(" (repository: \u)");
label:
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, 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[])>("\u0001-\u.\u0001\u0001");
return v;
}
}