public class org.apache.dubbo.config.spring.status.SpringStatusChecker extends java.lang.Object implements org.apache.dubbo.common.status.StatusChecker
{
private static final org.apache.dubbo.common.logger.Logger logger;
public void <init>()
{
org.apache.dubbo.config.spring.status.SpringStatusChecker v;
v := @this: org.apache.dubbo.config.spring.status.SpringStatusChecker;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public org.apache.dubbo.common.status.Status check()
{
java.lang.Throwable v;
java.lang.Object[] v;
java.lang.NoSuchMethodException v;
org.apache.dubbo.common.status.Status$Level v, v;
int v, v, v, v;
java.lang.String v, v, v;
org.apache.dubbo.config.spring.status.SpringStatusChecker v;
java.lang.reflect.Method v;
boolean v, v, v, v;
java.util.Iterator v;
org.apache.dubbo.common.logger.Logger v;
java.lang.Class[] v;
java.util.Set v;
org.springframework.context.ApplicationContext v;
org.apache.dubbo.common.status.Status v, v;
java.lang.Class v;
java.lang.Object v, v;
java.lang.StringBuilder v;
v := @this: org.apache.dubbo.config.spring.status.SpringStatusChecker;
v = null;
v = staticinvoke <org.apache.dubbo.config.spring.extension.SpringExtensionFactory: java.util.Set getContexts()>();
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 = v instanceof org.springframework.web.context.support.GenericWebApplicationContext;
if v != 0 goto label;
if v == null goto label;
v = v;
label:
if v != null goto label;
v = new org.apache.dubbo.common.status.Status;
v = <org.apache.dubbo.common.status.Status$Level: org.apache.dubbo.common.status.Status$Level UNKNOWN>;
specialinvoke v.<org.apache.dubbo.common.status.Status: void <init>(org.apache.dubbo.common.status.Status$Level)>(v);
return v;
label:
v = v instanceof org.springframework.context.Lifecycle;
if v == 0 goto label;
v = interfaceinvoke v.<org.springframework.context.Lifecycle: boolean isRunning()>();
if v == 0 goto label;
v = <org.apache.dubbo.common.status.Status$Level: org.apache.dubbo.common.status.Status$Level OK>;
goto label;
label:
v = <org.apache.dubbo.common.status.Status$Level: org.apache.dubbo.common.status.Status$Level ERROR>;
goto label;
label:
v = <org.apache.dubbo.common.status.Status$Level: org.apache.dubbo.common.status.Status$Level UNKNOWN>;
label:
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>()>();
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = null;
label:
if v == null goto label;
if v != null goto label;
label:
v = newarray (java.lang.Class)[0];
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Method getDeclaredMethod(java.lang.String,java.lang.Class[])>("getConfigLocations", v);
label:
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<java.lang.Class: java.lang.Class getSuperclass()>();
goto label;
label:
if v == null goto label;
staticinvoke <org.apache.dubbo.common.utils.ReflectUtils: void makeAccessible(java.lang.reflect.Method)>(v);
v = newarray (java.lang.Object)[0];
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Object invoke(java.lang.Object,java.lang.Object[])>(v, v);
if v == null goto label;
v = lengthof v;
if v <= 0 goto label;
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<java.lang.StringBuilder: int length()>();
if v <= 0 goto label;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(",");
label:
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
v = v + 1;
goto label;
label:
v := @caughtexception;
v = <org.apache.dubbo.config.spring.status.SpringStatusChecker: org.apache.dubbo.common.logger.Logger logger>;
v = virtualinvoke v.<java.lang.Throwable: java.lang.String getMessage()>();
interfaceinvoke v.<org.apache.dubbo.common.logger.Logger: void warn(java.lang.String,java.lang.Throwable)>(v, v);
label:
v = new org.apache.dubbo.common.status.Status;
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
specialinvoke v.<org.apache.dubbo.common.status.Status: void <init>(org.apache.dubbo.common.status.Status$Level,java.lang.String)>(v, v);
return v;
catch java.lang.NoSuchMethodException from label to label with label;
catch java.lang.Throwable from label to label with label;
}
static void <clinit>()
{
org.apache.dubbo.common.logger.Logger v;
v = staticinvoke <org.apache.dubbo.common.logger.LoggerFactory: org.apache.dubbo.common.logger.Logger getLogger(java.lang.Class)>(class "Lorg/apache/dubbo/config/spring/status/SpringStatusChecker;");
<org.apache.dubbo.config.spring.status.SpringStatusChecker: org.apache.dubbo.common.logger.Logger logger> = v;
return;
}
}