public class org.apache.activemq.broker.jmx.HealthView extends java.lang.Object implements org.apache.activemq.broker.jmx.HealthViewMBean
{
private org.apache.activemq.broker.jmx.ManagedRegionBroker broker;
private volatile java.lang.String currentState;
public void <init>(org.apache.activemq.broker.jmx.ManagedRegionBroker)
{
org.apache.activemq.broker.jmx.ManagedRegionBroker v;
org.apache.activemq.broker.jmx.HealthView v;
v := @this: org.apache.activemq.broker.jmx.HealthView;
v := @parameter: org.apache.activemq.broker.jmx.ManagedRegionBroker;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<org.apache.activemq.broker.jmx.HealthView: java.lang.String currentState> = "Good";
v.<org.apache.activemq.broker.jmx.HealthView: org.apache.activemq.broker.jmx.ManagedRegionBroker broker> = v;
return;
}
public javax.management.openmbean.TabularData health() throws java.lang.Exception
{
org.apache.activemq.broker.jmx.OpenTypeSupport$OpenTypeFactory v;
javax.management.openmbean.CompositeType v;
java.util.Iterator v;
java.lang.String[] v;
java.util.List v;
javax.management.openmbean.TabularType v;
org.apache.activemq.broker.jmx.HealthView v;
java.util.Map v;
javax.management.openmbean.TabularDataSupport v;
java.lang.Object v;
javax.management.openmbean.CompositeDataSupport v;
boolean v;
v := @this: org.apache.activemq.broker.jmx.HealthView;
v = staticinvoke <org.apache.activemq.broker.jmx.OpenTypeSupport: org.apache.activemq.broker.jmx.OpenTypeSupport$OpenTypeFactory getFactory(java.lang.Class)>(class "Lorg/apache/activemq/broker/jmx/HealthStatus;");
v = interfaceinvoke v.<org.apache.activemq.broker.jmx.OpenTypeSupport$OpenTypeFactory: javax.management.openmbean.CompositeType getCompositeType()>();
v = new javax.management.openmbean.TabularType;
v = newarray (java.lang.String)[4];
v[0] = "healthId";
v[1] = "level";
v[2] = "message";
v[3] = "resource";
specialinvoke v.<javax.management.openmbean.TabularType: void <init>(java.lang.String,java.lang.String,javax.management.openmbean.CompositeType,java.lang.String[])>("HealthStatus", "HealthStatus", v, v);
v = new javax.management.openmbean.TabularDataSupport;
specialinvoke v.<javax.management.openmbean.TabularDataSupport: void <init>(javax.management.openmbean.TabularType)>(v);
v = virtualinvoke v.<org.apache.activemq.broker.jmx.HealthView: java.util.List healthList()>();
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 = new javax.management.openmbean.CompositeDataSupport;
v = interfaceinvoke v.<org.apache.activemq.broker.jmx.OpenTypeSupport$OpenTypeFactory: java.util.Map getFields(java.lang.Object)>(v);
specialinvoke v.<javax.management.openmbean.CompositeDataSupport: void <init>(javax.management.openmbean.CompositeType,java.util.Map)>(v, v);
virtualinvoke v.<javax.management.openmbean.TabularDataSupport: void put(javax.management.openmbean.CompositeData)>(v);
goto label;
label:
return v;
}
public java.util.List healthList() throws java.lang.Exception
{
org.apache.activemq.usage.TempUsage v, v;
byte v, v, v, v, v, v, v, v, v;
java.util.Map v;
org.apache.activemq.usage.SystemUsage v, v;
org.apache.activemq.broker.BrokerService v;
java.util.Set v;
java.lang.StringBuilder v, v;
long v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.util.ArrayList v;
org.apache.activemq.broker.jmx.ManagedRegionBroker v, v;
org.apache.activemq.broker.jmx.HealthView v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.io.File v, v, v, v, v, v;
org.apache.activemq.usage.StoreUsage v;
org.apache.activemq.store.PersistenceAdapter v, v;
boolean v, v, v, v, v, v, v, v, v, v, v;
org.apache.activemq.broker.jmx.HealthStatus v, v, v, v, v, v;
org.apache.activemq.usage.JobSchedulerUsage v;
org.apache.activemq.broker.scheduler.JobSchedulerStore v, v;
java.util.Iterator v, v;
java.lang.Object v, v, v, v;
v := @this: org.apache.activemq.broker.jmx.HealthView;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = v.<org.apache.activemq.broker.jmx.HealthView: org.apache.activemq.broker.jmx.ManagedRegionBroker broker>;
v = virtualinvoke v.<org.apache.activemq.broker.jmx.ManagedRegionBroker: java.util.Map getQueueViews()>();
v = interfaceinvoke v.<java.util.Map: java.util.Set entrySet()>();
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 = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getValue()>();
v = virtualinvoke v.<org.apache.activemq.broker.jmx.DestinationView: long getConsumerCount()>();
v = v cmp 0L;
if v != 0 goto label;
v = virtualinvoke v.<org.apache.activemq.broker.jmx.DestinationView: long getProducerCount()>();
v = v cmp 0L;
if v <= 0 goto label;
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getKey()>();
v = virtualinvoke v.<org.apache.activemq.broker.jmx.DestinationView: java.lang.String getName()>();
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[])>("Queue \u has no consumers");
v = new org.apache.activemq.broker.jmx.HealthStatus;
v = virtualinvoke v.<javax.management.ObjectName: java.lang.String toString()>();
specialinvoke v.<org.apache.activemq.broker.jmx.HealthStatus: void <init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String)>("org.apache.activemq.noConsumer", "WARNING", v, v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = v.<org.apache.activemq.broker.jmx.HealthView: org.apache.activemq.broker.jmx.ManagedRegionBroker broker>;
v = virtualinvoke v.<org.apache.activemq.broker.jmx.ManagedRegionBroker: org.apache.activemq.broker.BrokerService getBrokerService()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.broker.BrokerService: org.apache.activemq.store.PersistenceAdapter getPersistenceAdapter()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.broker.BrokerService: org.apache.activemq.store.PersistenceAdapter getPersistenceAdapter()>();
v = interfaceinvoke v.<org.apache.activemq.store.PersistenceAdapter: java.io.File getDirectory()>();
v = virtualinvoke v.<org.apache.activemq.broker.BrokerService: boolean isPersistent()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.activemq.broker.BrokerService: org.apache.activemq.usage.SystemUsage getSystemUsage()>();
if v == null goto label;
if v == null goto label;
v = virtualinvoke v.<java.io.File: java.lang.String getAbsolutePath()>();
v = virtualinvoke v.<java.io.File: boolean isAbsolute()>();
if v != 0 goto label;
v = new java.io.File;
specialinvoke v.<java.io.File: void <init>(java.lang.String)>(v);
v = v;
label:
if v == null goto label;
v = virtualinvoke v.<java.io.File: boolean isDirectory()>();
if v != 0 goto label;
v = virtualinvoke v.<java.io.File: java.io.File getParentFile()>();
goto label;
label:
v = interfaceinvoke v.<org.apache.activemq.store.PersistenceAdapter: long size()>();
v = virtualinvoke v.<org.apache.activemq.usage.SystemUsage: org.apache.activemq.usage.StoreUsage getStoreUsage()>();
v = virtualinvoke v.<org.apache.activemq.usage.StoreUsage: long getLimit()>();
v = virtualinvoke v.<java.io.File: long getUsableSpace()>();
v = v cmp 0L;
if v == 0 goto label;
v = v cmp 0L;
if v == 0 goto label;
v = v * 100L;
v = v / v;
if v <= 90 goto label;
v = new org.apache.activemq.broker.jmx.HealthStatus;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(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[])>("Message Store size is within \u0001% of its limit");
v = virtualinvoke v.<java.lang.Object: java.lang.String toString()>();
specialinvoke v.<org.apache.activemq.broker.jmx.HealthStatus: void <init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String)>("org.apache.activemq.StoreLimit", "WARNING", v, v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
v = v - v;
v = v cmp v;
if v <= 0 goto label;
v = v / 1048576L;
v = virtualinvoke v.<java.io.File: java.lang.String getAbsolutePath()>();
v = v / 1048576L;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (long,java.lang.String,long)>(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[])>("Store limit is \u mb, whilst the data directory: \u only has \u mb of usable space");
v = new org.apache.activemq.broker.jmx.HealthStatus;
v = virtualinvoke v.<java.lang.Object: java.lang.String toString()>();
specialinvoke v.<org.apache.activemq.broker.jmx.HealthStatus: void <init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String)>("org.apache.activemq.FreeDiskSpaceLeft", "WARNING", v, v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
v = virtualinvoke v.<org.apache.activemq.broker.BrokerService: java.io.File getTmpDataDirectory()>();
if v == null goto label;
v = virtualinvoke v.<java.io.File: java.lang.String getAbsolutePath()>();
v = virtualinvoke v.<java.io.File: boolean isAbsolute()>();
if v != 0 goto label;
v = new java.io.File;
specialinvoke v.<java.io.File: void <init>(java.lang.String)>(v);
v = v;
label:
v = virtualinvoke v.<org.apache.activemq.usage.SystemUsage: org.apache.activemq.usage.TempUsage getTempUsage()>();
v = virtualinvoke v.<org.apache.activemq.usage.TempUsage: long getUsage()>();
v = virtualinvoke v.<org.apache.activemq.usage.SystemUsage: org.apache.activemq.usage.TempUsage getTempUsage()>();
v = virtualinvoke v.<org.apache.activemq.usage.TempUsage: long getLimit()>();
label:
if v == null goto label;
v = virtualinvoke v.<java.io.File: boolean isDirectory()>();
if v != 0 goto label;
v = virtualinvoke v.<java.io.File: java.io.File getParentFile()>();
goto label;
label:
v = v cmp 0L;
if v == 0 goto label;
v = v * 100L;
v = v / v;
if v <= 90 goto label;
v = new org.apache.activemq.broker.jmx.HealthStatus;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(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[])>("TempMessage Store size is within \u0001% of its limit");
v = virtualinvoke v.<java.lang.Object: java.lang.String toString()>();
specialinvoke v.<org.apache.activemq.broker.jmx.HealthStatus: void <init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String)>("org.apache.activemq.TempStoreLimit", "WARNING", v, v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.broker.BrokerService: org.apache.activemq.broker.scheduler.JobSchedulerStore getJobSchedulerStore()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.broker.BrokerService: org.apache.activemq.broker.scheduler.JobSchedulerStore getJobSchedulerStore()>();
v = interfaceinvoke v.<org.apache.activemq.broker.scheduler.JobSchedulerStore: java.io.File getDirectory()>();
v = virtualinvoke v.<org.apache.activemq.broker.BrokerService: boolean isPersistent()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.activemq.broker.BrokerService: org.apache.activemq.usage.SystemUsage getSystemUsage()>();
if v == null goto label;
if v == null goto label;
v = virtualinvoke v.<java.io.File: java.lang.String getAbsolutePath()>();
v = virtualinvoke v.<java.io.File: boolean isAbsolute()>();
if v != 0 goto label;
v = new java.io.File;
specialinvoke v.<java.io.File: void <init>(java.lang.String)>(v);
v = v;
label:
if v == null goto label;
v = virtualinvoke v.<java.io.File: boolean isDirectory()>();
if v != 0 goto label;
v = virtualinvoke v.<java.io.File: java.io.File getParentFile()>();
goto label;
label:
v = interfaceinvoke v.<org.apache.activemq.broker.scheduler.JobSchedulerStore: long size()>();
v = virtualinvoke v.<org.apache.activemq.usage.SystemUsage: org.apache.activemq.usage.JobSchedulerUsage getJobSchedulerUsage()>();
v = virtualinvoke v.<org.apache.activemq.usage.JobSchedulerUsage: long getLimit()>();
v = virtualinvoke v.<java.io.File: long getUsableSpace()>();
v = v cmp 0L;
if v == 0 goto label;
v = v cmp 0L;
if v == 0 goto label;
v = v * 100L;
v = v / v;
if v <= 90 goto label;
v = new org.apache.activemq.broker.jmx.HealthStatus;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(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[])>("JobSchedulerMessage Store size is within \u0001% of its limit");
v = virtualinvoke v.<java.lang.Object: java.lang.String toString()>();
specialinvoke v.<org.apache.activemq.broker.jmx.HealthStatus: void <init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String)>("org.apache.activemq.JobSchedulerLimit", "WARNING", v, v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
v = v - v;
v = v cmp v;
if v <= 0 goto label;
v = v / 1048576L;
v = virtualinvoke v.<java.io.File: java.lang.String getAbsolutePath()>();
v = v / 1048576L;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (long,java.lang.String,long)>(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[])>("JobSchedulerStore limit is \u mb, whilst the data directory: \u only has \u mb of usable space");
v = new org.apache.activemq.broker.jmx.HealthStatus;
v = virtualinvoke v.<java.lang.Object: java.lang.String toString()>();
specialinvoke v.<org.apache.activemq.broker.jmx.HealthStatus: void <init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String)>("org.apache.activemq.FreeDiskSpaceLeft", "WARNING", v, v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>()>();
v = interfaceinvoke v.<java.util.List: boolean isEmpty()>();
if v != 0 goto label;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>("Getting Worried {");
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 = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.Object)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(" , ");
goto label;
label:
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(" }");
goto label;
label:
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>("Good");
label:
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
v.<org.apache.activemq.broker.jmx.HealthView: java.lang.String currentState> = v;
return v;
}
public java.lang.String healthStatus() throws java.lang.Exception
{
java.lang.String v;
org.apache.activemq.broker.jmx.HealthView v;
v := @this: org.apache.activemq.broker.jmx.HealthView;
virtualinvoke v.<org.apache.activemq.broker.jmx.HealthView: java.util.List healthList()>();
v = virtualinvoke v.<org.apache.activemq.broker.jmx.HealthView: java.lang.String getCurrentStatus()>();
return v;
}
public java.lang.String getCurrentStatus()
{
java.lang.String v;
org.apache.activemq.broker.jmx.HealthView v;
v := @this: org.apache.activemq.broker.jmx.HealthView;
v = v.<org.apache.activemq.broker.jmx.HealthView: java.lang.String currentState>;
return v;
}
}