public class org.apache.activemq.state.ConnectionStateTracker extends org.apache.activemq.state.CommandVisitorAdapter
{
private static final org.slf4j.Logger LOG;
private static final org.apache.activemq.state.Tracked TRACKED_RESPONSE_MARKER;
private static final int MESSAGE_PULL_SIZE;
protected final java.util.concurrent.ConcurrentMap connectionStates;
private boolean trackTransactions;
private boolean restoreSessions;
private boolean restoreConsumers;
private boolean restoreProducers;
private boolean restoreTransaction;
private boolean trackMessages;
private boolean trackTransactionProducers;
private int maxCacheSize;
private long currentCacheSize;
private final java.util.Map messageCache;
public void <init>()
{
java.util.concurrent.ConcurrentHashMap v;
org.apache.activemq.state.ConnectionStateTracker v;
org.apache.activemq.state.ConnectionStateTracker$1 v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
specialinvoke v.<org.apache.activemq.state.CommandVisitorAdapter: void <init>()>();
v = new java.util.concurrent.ConcurrentHashMap;
specialinvoke v.<java.util.concurrent.ConcurrentHashMap: void <init>()>();
v.<org.apache.activemq.state.ConnectionStateTracker: java.util.concurrent.ConcurrentMap connectionStates> = v;
v.<org.apache.activemq.state.ConnectionStateTracker: boolean restoreSessions> = 1;
v.<org.apache.activemq.state.ConnectionStateTracker: boolean restoreConsumers> = 1;
v.<org.apache.activemq.state.ConnectionStateTracker: boolean restoreProducers> = 1;
v.<org.apache.activemq.state.ConnectionStateTracker: boolean restoreTransaction> = 1;
v.<org.apache.activemq.state.ConnectionStateTracker: boolean trackMessages> = 1;
v.<org.apache.activemq.state.ConnectionStateTracker: boolean trackTransactionProducers> = 1;
v.<org.apache.activemq.state.ConnectionStateTracker: int maxCacheSize> = 131072;
v = new org.apache.activemq.state.ConnectionStateTracker$1;
specialinvoke v.<org.apache.activemq.state.ConnectionStateTracker$1: void <init>(org.apache.activemq.state.ConnectionStateTracker)>(v);
v.<org.apache.activemq.state.ConnectionStateTracker: java.util.Map messageCache> = v;
return;
}
public org.apache.activemq.state.Tracked track(org.apache.activemq.command.Command) throws java.io.IOException
{
java.lang.Throwable v;
org.apache.activemq.command.Response v;
org.apache.activemq.command.Command v;
org.apache.activemq.state.ConnectionStateTracker v;
java.io.IOException v, v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.command.Command;
label:
v = interfaceinvoke v.<org.apache.activemq.command.Command: org.apache.activemq.command.Response visit(org.apache.activemq.state.CommandVisitor)>(v);
label:
return v;
label:
v := @caughtexception;
throw v;
label:
v := @caughtexception;
v = staticinvoke <org.apache.activemq.util.IOExceptionSupport: java.io.IOException create(java.lang.Throwable)>(v);
throw v;
catch java.io.IOException from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public void trackBack(org.apache.activemq.command.Command)
{
org.apache.activemq.command.Command v;
org.apache.activemq.state.ConnectionStateTracker v;
long v, v, v, v;
int v;
org.apache.activemq.command.TransactionId v;
boolean v, v, v, v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.command.Command;
if v == null goto label;
v = v.<org.apache.activemq.state.ConnectionStateTracker: boolean trackMessages>;
if v == 0 goto label;
v = interfaceinvoke v.<org.apache.activemq.command.Command: boolean isMessage()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.activemq.command.Message: org.apache.activemq.command.TransactionId getTransactionId()>();
if v != null goto label;
v = v.<org.apache.activemq.state.ConnectionStateTracker: long currentCacheSize>;
v = virtualinvoke v.<org.apache.activemq.command.Message: int getSize()>();
v = v + v;
v.<org.apache.activemq.state.ConnectionStateTracker: long currentCacheSize> = v;
goto label;
label:
v = v instanceof org.apache.activemq.command.MessagePull;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.activemq.command.MessagePull: boolean isTracked()>();
if v == 0 goto label;
v = v.<org.apache.activemq.state.ConnectionStateTracker: long currentCacheSize>;
v = v + 400L;
v.<org.apache.activemq.state.ConnectionStateTracker: long currentCacheSize> = v;
label:
return;
}
public void restore(org.apache.activemq.transport.Transport) throws java.io.IOException
{
java.util.concurrent.ConcurrentMap v;
org.apache.activemq.command.ConnectionInfo v, v, v;
java.util.Map v;
java.lang.String v, v;
boolean v, v, v, v, v, v, v;
org.slf4j.Logger v, v, v, v;
java.util.Iterator v, v;
org.apache.activemq.command.Command v;
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.state.ConnectionStateTracker v;
java.util.Collection v, v;
org.apache.activemq.transport.Transport v;
org.apache.activemq.command.DataStructure v;
java.lang.Object v, v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.transport.Transport;
v = v.<org.apache.activemq.state.ConnectionStateTracker: java.util.concurrent.ConcurrentMap connectionStates>;
v = interfaceinvoke v.<java.util.concurrent.ConcurrentMap: 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 = virtualinvoke v.<org.apache.activemq.state.ConnectionState: org.apache.activemq.command.ConnectionInfo getInfo()>();
virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: void setFailoverReconnect(boolean)>(1);
v = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.activemq.state.ConnectionState: org.apache.activemq.command.ConnectionInfo getInfo()>();
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.activemq.command.ConnectionId)>(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[])>("conn: \u0001");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>(v);
label:
v = virtualinvoke v.<org.apache.activemq.state.ConnectionState: org.apache.activemq.command.ConnectionInfo getInfo()>();
interfaceinvoke v.<org.apache.activemq.transport.Transport: void oneway(java.lang.Object)>(v);
virtualinvoke v.<org.apache.activemq.state.ConnectionStateTracker: void restoreTempDestinations(org.apache.activemq.transport.Transport,org.apache.activemq.state.ConnectionState)>(v, v);
v = v.<org.apache.activemq.state.ConnectionStateTracker: boolean restoreSessions>;
if v == 0 goto label;
virtualinvoke v.<org.apache.activemq.state.ConnectionStateTracker: void restoreSessions(org.apache.activemq.transport.Transport,org.apache.activemq.state.ConnectionState)>(v, v);
label:
v = v.<org.apache.activemq.state.ConnectionStateTracker: boolean restoreTransaction>;
if v == 0 goto label;
specialinvoke v.<org.apache.activemq.state.ConnectionStateTracker: void restoreTransactions(org.apache.activemq.transport.Transport,org.apache.activemq.state.ConnectionState)>(v, v);
goto label;
label:
v = v.<org.apache.activemq.state.ConnectionStateTracker: java.util.Map messageCache>;
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 = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.apache.activemq.command.Command: boolean isMessage()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.activemq.command.Message: org.apache.activemq.command.MessageId getMessageId()>();
goto label;
label:
v = v;
label:
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.activemq.command.DataStructure)>(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[])>("command: \u0001");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>(v);
label:
interfaceinvoke v.<org.apache.activemq.transport.Transport: void oneway(java.lang.Object)>(v);
goto label;
label:
return;
}
private void restoreTransactions(org.apache.activemq.transport.Transport, org.apache.activemq.state.ConnectionState) throws java.io.IOException
{
java.util.Vector v;
byte v;
java.util.Map v, v;
javax.jms.TransactionRolledBackException v;
org.apache.activemq.command.RemoveInfo v;
java.lang.String v, v, v, v, v, v;
org.apache.activemq.command.TransactionId v, v, v;
org.apache.activemq.transport.TransportListener v;
boolean v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.activemq.state.ConnectionStateTracker v;
java.util.Collection v, v, v;
org.apache.activemq.transport.Transport v;
java.util.List v, v, v, v;
int v, v, v;
org.slf4j.Logger v, v, v, v, v, v, v, v, v, v;
java.util.Iterator v, v, v, v, v;
org.apache.activemq.command.Command v;
org.apache.activemq.state.ConnectionState v;
org.apache.activemq.command.ExceptionResponse v;
org.apache.activemq.command.ProducerInfo v, v, v, v;
java.lang.Object v, v, v, v, v, v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.transport.Transport;
v := @parameter: org.apache.activemq.state.ConnectionState;
v = new java.util.Vector;
specialinvoke v.<java.util.Vector: void <init>()>();
v = virtualinvoke v.<org.apache.activemq.state.ConnectionState: java.util.Collection getTransactionStates()>();
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 = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.activemq.state.TransactionState: org.apache.activemq.command.TransactionId getId()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.activemq.command.TransactionId)>(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[])>("tx: \u0001");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>(v);
label:
v = virtualinvoke v.<org.apache.activemq.state.TransactionState: java.util.List getCommands()>();
v = interfaceinvoke v.<java.util.List: boolean isEmpty()>();
if v != 0 goto label;
v = virtualinvoke v.<org.apache.activemq.state.TransactionState: java.util.List getCommands()>();
v = virtualinvoke v.<org.apache.activemq.state.TransactionState: java.util.List getCommands()>();
v = interfaceinvoke v.<java.util.List: int size()>();
v = v - 1;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(v);
v = v instanceof org.apache.activemq.command.TransactionInfo;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.activemq.command.TransactionInfo: byte getType()>();
if v != 2 goto label;
v = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.activemq.state.TransactionState: org.apache.activemq.command.TransactionId getId()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.activemq.command.TransactionId)>(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[])>("rolling back potentially completed tx: \u0001");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>(v);
label:
virtualinvoke v.<java.util.Vector: boolean add(java.lang.Object)>(v);
goto label;
label:
v = virtualinvoke v.<org.apache.activemq.state.TransactionState: java.util.Map getProducerStates()>();
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 = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.activemq.state.ProducerState: org.apache.activemq.command.ProducerInfo getInfo()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.activemq.command.ProducerInfo)>(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[])>("tx replay producer :\u0001");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>(v);
label:
v = virtualinvoke v.<org.apache.activemq.state.ProducerState: org.apache.activemq.command.ProducerInfo getInfo()>();
interfaceinvoke v.<org.apache.activemq.transport.Transport: void oneway(java.lang.Object)>(v);
goto label;
label:
v = virtualinvoke v.<org.apache.activemq.state.TransactionState: java.util.List getCommands()>();
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 = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.activemq.command.Command)>(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[])>("tx replay: \u0001");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>(v);
label:
interfaceinvoke v.<org.apache.activemq.transport.Transport: void oneway(java.lang.Object)>(v);
goto label;
label:
v = virtualinvoke v.<org.apache.activemq.state.TransactionState: java.util.Map getProducerStates()>();
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 = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.activemq.state.ProducerState: org.apache.activemq.command.ProducerInfo getInfo()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.activemq.command.ProducerInfo)>(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[])>("tx remove replayed producer :\u0001");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>(v);
label:
v = virtualinvoke v.<org.apache.activemq.state.ProducerState: org.apache.activemq.command.ProducerInfo getInfo()>();
v = virtualinvoke v.<org.apache.activemq.command.ProducerInfo: org.apache.activemq.command.RemoveInfo createRemoveCommand()>();
interfaceinvoke v.<org.apache.activemq.transport.Transport: void oneway(java.lang.Object)>(v);
goto label;
label:
v = virtualinvoke v.<java.util.Vector: 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 org.apache.activemq.command.ExceptionResponse;
specialinvoke v.<org.apache.activemq.command.ExceptionResponse: void <init>()>();
v = new javax.jms.TransactionRolledBackException;
v = virtualinvoke v.<org.apache.activemq.command.TransactionInfo: org.apache.activemq.command.TransactionId getTransactionId()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.activemq.command.TransactionId)>(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[])>("Transaction completion in doubt due to failover. Forcing rollback of \u0001");
specialinvoke v.<javax.jms.TransactionRolledBackException: void <init>(java.lang.String)>(v);
virtualinvoke v.<org.apache.activemq.command.ExceptionResponse: void setException(java.lang.Throwable)>(v);
v = virtualinvoke v.<org.apache.activemq.command.TransactionInfo: int getCommandId()>();
virtualinvoke v.<org.apache.activemq.command.ExceptionResponse: void setCorrelationId(int)>(v);
v = interfaceinvoke v.<org.apache.activemq.transport.Transport: org.apache.activemq.transport.TransportListener getTransportListener()>();
interfaceinvoke v.<org.apache.activemq.transport.TransportListener: void onCommand(java.lang.Object)>(v);
goto label;
label:
return;
}
protected void restoreSessions(org.apache.activemq.transport.Transport, org.apache.activemq.state.ConnectionState) throws java.io.IOException
{
org.apache.activemq.command.SessionInfo v, v;
java.lang.String v;
boolean v, v, v, v;
org.slf4j.Logger v, v;
java.util.Iterator v;
org.apache.activemq.state.ConnectionStateTracker v;
org.apache.activemq.command.SessionId v;
java.util.Collection v;
org.apache.activemq.state.ConnectionState v;
org.apache.activemq.transport.Transport v;
java.lang.Object v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.transport.Transport;
v := @parameter: org.apache.activemq.state.ConnectionState;
v = virtualinvoke v.<org.apache.activemq.state.ConnectionState: java.util.Collection getSessionStates()>();
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 = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.activemq.state.SessionState: org.apache.activemq.command.SessionInfo getInfo()>();
v = virtualinvoke v.<org.apache.activemq.command.SessionInfo: org.apache.activemq.command.SessionId getSessionId()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.activemq.command.SessionId)>(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[])>("session: \u0001");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>(v);
label:
v = virtualinvoke v.<org.apache.activemq.state.SessionState: org.apache.activemq.command.SessionInfo getInfo()>();
interfaceinvoke v.<org.apache.activemq.transport.Transport: void oneway(java.lang.Object)>(v);
v = v.<org.apache.activemq.state.ConnectionStateTracker: boolean restoreProducers>;
if v == 0 goto label;
virtualinvoke v.<org.apache.activemq.state.ConnectionStateTracker: void restoreProducers(org.apache.activemq.transport.Transport,org.apache.activemq.state.SessionState)>(v, v);
label:
v = v.<org.apache.activemq.state.ConnectionStateTracker: boolean restoreConsumers>;
if v == 0 goto label;
virtualinvoke v.<org.apache.activemq.state.ConnectionStateTracker: void restoreConsumers(org.apache.activemq.transport.Transport,org.apache.activemq.state.SessionState)>(v, v);
goto label;
label:
return;
}
protected void restoreConsumers(org.apache.activemq.transport.Transport, org.apache.activemq.state.SessionState) throws java.io.IOException
{
org.apache.activemq.command.ConsumerId v, v, v;
java.util.concurrent.ConcurrentMap v;
org.apache.activemq.state.SessionState v;
org.apache.activemq.command.SessionInfo v;
java.util.Map v;
int v, v;
java.lang.String v, v;
org.apache.activemq.command.ConsumerInfo v, v, v, v;
boolean v, v, v, v;
org.slf4j.Logger v, v, v, v;
java.util.Iterator v;
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.state.ConnectionStateTracker v;
org.apache.activemq.command.SessionId v;
java.util.Collection v;
org.apache.activemq.transport.Transport v;
java.lang.Object v, v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.transport.Transport;
v := @parameter: org.apache.activemq.state.SessionState;
v = v.<org.apache.activemq.state.ConnectionStateTracker: java.util.concurrent.ConcurrentMap connectionStates>;
v = virtualinvoke v.<org.apache.activemq.state.SessionState: org.apache.activemq.command.SessionInfo getInfo()>();
v = virtualinvoke v.<org.apache.activemq.command.SessionInfo: org.apache.activemq.command.SessionId getSessionId()>();
v = virtualinvoke v.<org.apache.activemq.command.SessionId: org.apache.activemq.command.ConnectionId getParentId()>();
v = interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object get(java.lang.Object)>(v);
v = virtualinvoke v.<org.apache.activemq.state.ConnectionState: boolean isConnectionInterruptProcessingComplete()>();
v = virtualinvoke v.<org.apache.activemq.state.SessionState: java.util.Collection getConsumerStates()>();
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 = virtualinvoke v.<org.apache.activemq.state.ConsumerState: org.apache.activemq.command.ConsumerInfo getInfo()>();
if v != 0 goto label;
v = virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: int getPrefetchSize()>();
if v <= 0 goto label;
v = virtualinvoke v.<org.apache.activemq.state.ConsumerState: org.apache.activemq.command.ConsumerInfo getInfo()>();
v = virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: org.apache.activemq.command.ConsumerInfo copy()>();
v = virtualinvoke v.<org.apache.activemq.state.ConnectionState: java.util.Map getRecoveringPullConsumers()>();
v = virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: org.apache.activemq.command.ConsumerId getConsumerId()>();
v = virtualinvoke v.<org.apache.activemq.state.ConsumerState: org.apache.activemq.command.ConsumerInfo getInfo()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: void setPrefetchSize(int)>(0);
v = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: org.apache.activemq.command.ConsumerId getConsumerId()>();
v = virtualinvoke v.<org.apache.activemq.state.ConsumerState: org.apache.activemq.command.ConsumerInfo getInfo()>();
v = virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: int getPrefetchSize()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.activemq.command.ConsumerId,int)>(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[])>("restore consumer: \u in pull mode pending recovery, overriding prefetch: \u0001");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>(v);
label:
v = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: org.apache.activemq.command.ConsumerId getConsumerId()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.activemq.command.ConsumerId)>(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[])>("consumer: \u0001");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>(v);
label:
interfaceinvoke v.<org.apache.activemq.transport.Transport: void oneway(java.lang.Object)>(v);
goto label;
label:
return;
}
protected void restoreProducers(org.apache.activemq.transport.Transport, org.apache.activemq.state.SessionState) throws java.io.IOException
{
org.slf4j.Logger v, v;
java.util.Iterator v;
org.apache.activemq.state.ConnectionStateTracker v;
java.util.Collection v;
org.apache.activemq.transport.Transport v;
org.apache.activemq.command.ProducerId v;
org.apache.activemq.state.SessionState v;
org.apache.activemq.command.ProducerInfo v, v;
java.lang.Object v;
java.lang.String v;
boolean v, v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.transport.Transport;
v := @parameter: org.apache.activemq.state.SessionState;
v = virtualinvoke v.<org.apache.activemq.state.SessionState: java.util.Collection getProducerStates()>();
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 = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.activemq.state.ProducerState: org.apache.activemq.command.ProducerInfo getInfo()>();
v = virtualinvoke v.<org.apache.activemq.command.ProducerInfo: org.apache.activemq.command.ProducerId getProducerId()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.activemq.command.ProducerId)>(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[])>("producer: \u0001");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>(v);
label:
v = virtualinvoke v.<org.apache.activemq.state.ProducerState: org.apache.activemq.command.ProducerInfo getInfo()>();
interfaceinvoke v.<org.apache.activemq.transport.Transport: void oneway(java.lang.Object)>(v);
goto label;
label:
return;
}
protected void restoreTempDestinations(org.apache.activemq.transport.Transport, org.apache.activemq.state.ConnectionState) throws java.io.IOException
{
org.slf4j.Logger v, v;
java.util.Iterator v;
org.apache.activemq.state.ConnectionStateTracker v;
org.apache.activemq.state.ConnectionState v;
org.apache.activemq.transport.Transport v;
org.apache.activemq.command.ActiveMQDestination v;
java.util.List v;
java.lang.Object v;
java.lang.String v;
boolean v, v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.transport.Transport;
v := @parameter: org.apache.activemq.state.ConnectionState;
v = virtualinvoke v.<org.apache.activemq.state.ConnectionState: java.util.List getTempDestinations()>();
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()>();
interfaceinvoke v.<org.apache.activemq.transport.Transport: void oneway(java.lang.Object)>(v);
v = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.activemq.command.DestinationInfo: org.apache.activemq.command.ActiveMQDestination getDestination()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.activemq.command.ActiveMQDestination)>(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[])>("tempDest: \u0001");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>(v);
goto label;
label:
return;
}
public org.apache.activemq.command.Response processAddDestination(org.apache.activemq.command.DestinationInfo)
{
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.state.ConnectionStateTracker v;
java.util.concurrent.ConcurrentMap v;
org.apache.activemq.command.ActiveMQDestination v;
org.apache.activemq.state.Tracked v;
java.lang.Object v;
org.apache.activemq.command.DestinationInfo v;
boolean v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.command.DestinationInfo;
if v == null goto label;
v = v.<org.apache.activemq.state.ConnectionStateTracker: java.util.concurrent.ConcurrentMap connectionStates>;
v = virtualinvoke v.<org.apache.activemq.command.DestinationInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
v = interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.DestinationInfo: org.apache.activemq.command.ActiveMQDestination getDestination()>();
v = virtualinvoke v.<org.apache.activemq.command.ActiveMQDestination: boolean isTemporary()>();
if v == 0 goto label;
virtualinvoke v.<org.apache.activemq.state.ConnectionState: void addTempDestination(org.apache.activemq.command.DestinationInfo)>(v);
label:
v = <org.apache.activemq.state.ConnectionStateTracker: org.apache.activemq.state.Tracked TRACKED_RESPONSE_MARKER>;
return v;
}
public org.apache.activemq.command.Response processRemoveDestination(org.apache.activemq.command.DestinationInfo)
{
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.state.ConnectionStateTracker v;
java.util.concurrent.ConcurrentMap v;
org.apache.activemq.command.ActiveMQDestination v, v;
org.apache.activemq.state.Tracked v;
java.lang.Object v;
org.apache.activemq.command.DestinationInfo v;
boolean v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.command.DestinationInfo;
if v == null goto label;
v = v.<org.apache.activemq.state.ConnectionStateTracker: java.util.concurrent.ConcurrentMap connectionStates>;
v = virtualinvoke v.<org.apache.activemq.command.DestinationInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
v = interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.DestinationInfo: org.apache.activemq.command.ActiveMQDestination getDestination()>();
v = virtualinvoke v.<org.apache.activemq.command.ActiveMQDestination: boolean isTemporary()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.activemq.command.DestinationInfo: org.apache.activemq.command.ActiveMQDestination getDestination()>();
virtualinvoke v.<org.apache.activemq.state.ConnectionState: void removeTempDestination(org.apache.activemq.command.ActiveMQDestination)>(v);
label:
v = <org.apache.activemq.state.ConnectionStateTracker: org.apache.activemq.state.Tracked TRACKED_RESPONSE_MARKER>;
return v;
}
public org.apache.activemq.command.Response processAddProducer(org.apache.activemq.command.ProducerInfo)
{
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.state.ConnectionStateTracker v;
org.apache.activemq.command.SessionId v;
java.util.concurrent.ConcurrentMap v;
org.apache.activemq.command.ProducerId v, v;
org.apache.activemq.state.Tracked v, v;
org.apache.activemq.state.SessionState v;
org.apache.activemq.command.ProducerInfo v;
org.apache.activemq.state.ConnectionStateTracker$ExceptionResponseCheckAction v;
java.lang.Object v;
boolean v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.command.ProducerInfo;
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.ProducerInfo: org.apache.activemq.command.ProducerId getProducerId()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.ProducerInfo: org.apache.activemq.command.ProducerId getProducerId()>();
v = virtualinvoke v.<org.apache.activemq.command.ProducerId: org.apache.activemq.command.SessionId getParentId()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.SessionId: org.apache.activemq.command.ConnectionId getParentId()>();
if v == null goto label;
v = v.<org.apache.activemq.state.ConnectionStateTracker: java.util.concurrent.ConcurrentMap connectionStates>;
v = interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.state.ConnectionState: org.apache.activemq.state.SessionState getSessionState(org.apache.activemq.command.SessionId)>(v);
if v == null goto label;
virtualinvoke v.<org.apache.activemq.state.SessionState: void addProducer(org.apache.activemq.command.ProducerInfo)>(v);
v = virtualinvoke v.<org.apache.activemq.command.ProducerInfo: boolean isResponseRequired()>();
if v == 0 goto label;
v = new org.apache.activemq.state.Tracked;
v = new org.apache.activemq.state.ConnectionStateTracker$ExceptionResponseCheckAction;
specialinvoke v.<org.apache.activemq.state.ConnectionStateTracker$ExceptionResponseCheckAction: void <init>(org.apache.activemq.state.ConnectionStateTracker,org.apache.activemq.command.Command)>(v, v);
specialinvoke v.<org.apache.activemq.state.Tracked: void <init>(org.apache.activemq.state.ResponseHandler)>(v);
return v;
label:
v = <org.apache.activemq.state.ConnectionStateTracker: org.apache.activemq.state.Tracked TRACKED_RESPONSE_MARKER>;
return v;
}
public org.apache.activemq.command.Response processRemoveProducer(org.apache.activemq.command.ProducerId)
{
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.state.ConnectionStateTracker v;
org.apache.activemq.command.SessionId v;
java.util.concurrent.ConcurrentMap v;
org.apache.activemq.command.ProducerId v;
org.apache.activemq.state.Tracked v;
org.apache.activemq.state.SessionState v;
java.lang.Object v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.command.ProducerId;
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.ProducerId: org.apache.activemq.command.SessionId getParentId()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.SessionId: org.apache.activemq.command.ConnectionId getParentId()>();
if v == null goto label;
v = v.<org.apache.activemq.state.ConnectionStateTracker: java.util.concurrent.ConcurrentMap connectionStates>;
v = interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.state.ConnectionState: org.apache.activemq.state.SessionState getSessionState(org.apache.activemq.command.SessionId)>(v);
if v == null goto label;
virtualinvoke v.<org.apache.activemq.state.SessionState: org.apache.activemq.state.ProducerState removeProducer(org.apache.activemq.command.ProducerId)>(v);
label:
v = <org.apache.activemq.state.ConnectionStateTracker: org.apache.activemq.state.Tracked TRACKED_RESPONSE_MARKER>;
return v;
}
public org.apache.activemq.command.Response processAddConsumer(org.apache.activemq.command.ConsumerInfo)
{
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.state.ConnectionStateTracker v;
org.apache.activemq.command.SessionId v;
org.apache.activemq.command.ConsumerId v;
java.util.concurrent.ConcurrentMap v;
org.apache.activemq.state.Tracked v, v;
org.apache.activemq.state.SessionState v;
org.apache.activemq.state.ConnectionStateTracker$ExceptionResponseCheckAction v;
java.lang.Object v;
org.apache.activemq.command.ConsumerInfo v;
boolean v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.command.ConsumerInfo;
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: org.apache.activemq.command.ConsumerId getConsumerId()>();
v = virtualinvoke v.<org.apache.activemq.command.ConsumerId: org.apache.activemq.command.SessionId getParentId()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.SessionId: org.apache.activemq.command.ConnectionId getParentId()>();
if v == null goto label;
v = v.<org.apache.activemq.state.ConnectionStateTracker: java.util.concurrent.ConcurrentMap connectionStates>;
v = interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.state.ConnectionState: org.apache.activemq.state.SessionState getSessionState(org.apache.activemq.command.SessionId)>(v);
if v == null goto label;
virtualinvoke v.<org.apache.activemq.state.SessionState: void addConsumer(org.apache.activemq.command.ConsumerInfo)>(v);
v = virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: boolean isResponseRequired()>();
if v == 0 goto label;
v = new org.apache.activemq.state.Tracked;
v = new org.apache.activemq.state.ConnectionStateTracker$ExceptionResponseCheckAction;
specialinvoke v.<org.apache.activemq.state.ConnectionStateTracker$ExceptionResponseCheckAction: void <init>(org.apache.activemq.state.ConnectionStateTracker,org.apache.activemq.command.Command)>(v, v);
specialinvoke v.<org.apache.activemq.state.Tracked: void <init>(org.apache.activemq.state.ResponseHandler)>(v);
return v;
label:
v = <org.apache.activemq.state.ConnectionStateTracker: org.apache.activemq.state.Tracked TRACKED_RESPONSE_MARKER>;
return v;
}
public org.apache.activemq.command.Response processRemoveConsumer(org.apache.activemq.command.ConsumerId, long)
{
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.state.ConnectionStateTracker v;
org.apache.activemq.command.SessionId v;
long v;
org.apache.activemq.command.ConsumerId v;
java.util.concurrent.ConcurrentMap v;
org.apache.activemq.state.Tracked v;
org.apache.activemq.state.SessionState v;
java.util.Map v;
java.lang.Object v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.command.ConsumerId;
v := @parameter: long;
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.ConsumerId: org.apache.activemq.command.SessionId getParentId()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.SessionId: org.apache.activemq.command.ConnectionId getParentId()>();
if v == null goto label;
v = v.<org.apache.activemq.state.ConnectionStateTracker: java.util.concurrent.ConcurrentMap connectionStates>;
v = interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.state.ConnectionState: org.apache.activemq.state.SessionState getSessionState(org.apache.activemq.command.SessionId)>(v);
if v == null goto label;
virtualinvoke v.<org.apache.activemq.state.SessionState: org.apache.activemq.state.ConsumerState removeConsumer(org.apache.activemq.command.ConsumerId)>(v);
label:
v = virtualinvoke v.<org.apache.activemq.state.ConnectionState: java.util.Map getRecoveringPullConsumers()>();
interfaceinvoke v.<java.util.Map: java.lang.Object remove(java.lang.Object)>(v);
label:
v = <org.apache.activemq.state.ConnectionStateTracker: org.apache.activemq.state.Tracked TRACKED_RESPONSE_MARKER>;
return v;
}
public org.apache.activemq.command.Response processAddSession(org.apache.activemq.command.SessionInfo)
{
org.apache.activemq.state.Tracked v;
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.state.ConnectionStateTracker v;
org.apache.activemq.command.SessionId v;
org.apache.activemq.command.SessionInfo v;
java.lang.Object v;
java.util.concurrent.ConcurrentMap v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.command.SessionInfo;
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.SessionInfo: org.apache.activemq.command.SessionId getSessionId()>();
v = virtualinvoke v.<org.apache.activemq.command.SessionId: org.apache.activemq.command.ConnectionId getParentId()>();
if v == null goto label;
v = v.<org.apache.activemq.state.ConnectionStateTracker: java.util.concurrent.ConcurrentMap connectionStates>;
v = interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
virtualinvoke v.<org.apache.activemq.state.ConnectionState: void addSession(org.apache.activemq.command.SessionInfo)>(v);
label:
v = <org.apache.activemq.state.ConnectionStateTracker: org.apache.activemq.state.Tracked TRACKED_RESPONSE_MARKER>;
return v;
}
public org.apache.activemq.command.Response processRemoveSession(org.apache.activemq.command.SessionId, long)
{
org.apache.activemq.state.Tracked v;
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.state.ConnectionStateTracker v;
org.apache.activemq.command.SessionId v;
java.lang.Object v;
long v;
java.util.concurrent.ConcurrentMap v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.command.SessionId;
v := @parameter: long;
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.SessionId: org.apache.activemq.command.ConnectionId getParentId()>();
if v == null goto label;
v = v.<org.apache.activemq.state.ConnectionStateTracker: java.util.concurrent.ConcurrentMap connectionStates>;
v = interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
virtualinvoke v.<org.apache.activemq.state.ConnectionState: org.apache.activemq.state.SessionState removeSession(org.apache.activemq.command.SessionId)>(v);
label:
v = <org.apache.activemq.state.ConnectionStateTracker: org.apache.activemq.state.Tracked TRACKED_RESPONSE_MARKER>;
return v;
}
public org.apache.activemq.command.Response processAddConnection(org.apache.activemq.command.ConnectionInfo)
{
org.apache.activemq.state.Tracked v;
org.apache.activemq.command.ConnectionInfo v;
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.state.ConnectionStateTracker v;
org.apache.activemq.state.ConnectionState v;
java.util.concurrent.ConcurrentMap v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.command.ConnectionInfo;
if v == null goto label;
v = v.<org.apache.activemq.state.ConnectionStateTracker: java.util.concurrent.ConcurrentMap connectionStates>;
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
v = new org.apache.activemq.state.ConnectionState;
specialinvoke v.<org.apache.activemq.state.ConnectionState: void <init>(org.apache.activemq.command.ConnectionInfo)>(v);
interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
v = <org.apache.activemq.state.ConnectionStateTracker: org.apache.activemq.state.Tracked TRACKED_RESPONSE_MARKER>;
return v;
}
public org.apache.activemq.command.Response processRemoveConnection(org.apache.activemq.command.ConnectionId, long) throws java.lang.Exception
{
org.apache.activemq.state.Tracked v;
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.state.ConnectionStateTracker v;
long v;
java.util.concurrent.ConcurrentMap v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.command.ConnectionId;
v := @parameter: long;
if v == null goto label;
v = v.<org.apache.activemq.state.ConnectionStateTracker: java.util.concurrent.ConcurrentMap connectionStates>;
interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object remove(java.lang.Object)>(v);
label:
v = <org.apache.activemq.state.ConnectionStateTracker: org.apache.activemq.state.Tracked TRACKED_RESPONSE_MARKER>;
return v;
}
public org.apache.activemq.command.Response processMessage(org.apache.activemq.command.Message) throws java.lang.Exception
{
java.util.concurrent.ConcurrentMap v;
org.apache.activemq.command.Message v;
org.apache.activemq.state.ProducerState v;
org.apache.activemq.state.SessionState v;
java.util.Map v;
org.apache.activemq.command.TransactionId v, v;
boolean v, v, v;
org.apache.activemq.state.TransactionState v;
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.state.ConnectionStateTracker v;
org.apache.activemq.command.MessageId v;
org.apache.activemq.command.SessionId v, v;
org.apache.activemq.command.ProducerId v;
org.apache.activemq.state.Tracked v;
java.lang.Object v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.command.Message;
if v == null goto label;
v = v.<org.apache.activemq.state.ConnectionStateTracker: boolean trackTransactions>;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.activemq.command.Message: org.apache.activemq.command.TransactionId getTransactionId()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.Message: org.apache.activemq.command.ProducerId getProducerId()>();
v = virtualinvoke v.<org.apache.activemq.command.ProducerId: org.apache.activemq.command.SessionId getParentId()>();
v = virtualinvoke v.<org.apache.activemq.command.SessionId: org.apache.activemq.command.ConnectionId getParentId()>();
if v == null goto label;
v = v.<org.apache.activemq.state.ConnectionStateTracker: java.util.concurrent.ConcurrentMap connectionStates>;
v = interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.Message: org.apache.activemq.command.TransactionId getTransactionId()>();
v = virtualinvoke v.<org.apache.activemq.state.ConnectionState: org.apache.activemq.state.TransactionState getTransactionState(org.apache.activemq.command.TransactionId)>(v);
if v == null goto label;
virtualinvoke v.<org.apache.activemq.state.TransactionState: void addCommand(org.apache.activemq.command.Command)>(v);
v = v.<org.apache.activemq.state.ConnectionStateTracker: boolean trackTransactionProducers>;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.activemq.command.ProducerId: org.apache.activemq.command.SessionId getParentId()>();
v = virtualinvoke v.<org.apache.activemq.state.ConnectionState: org.apache.activemq.state.SessionState getSessionState(org.apache.activemq.command.SessionId)>(v);
v = virtualinvoke v.<org.apache.activemq.state.SessionState: org.apache.activemq.state.ProducerState getProducerState(org.apache.activemq.command.ProducerId)>(v);
virtualinvoke v.<org.apache.activemq.state.ProducerState: void setTransactionState(org.apache.activemq.state.TransactionState)>(v);
label:
v = <org.apache.activemq.state.ConnectionStateTracker: org.apache.activemq.state.Tracked TRACKED_RESPONSE_MARKER>;
return v;
label:
v = v.<org.apache.activemq.state.ConnectionStateTracker: boolean trackMessages>;
if v == 0 goto label;
v = v.<org.apache.activemq.state.ConnectionStateTracker: java.util.Map messageCache>;
v = virtualinvoke v.<org.apache.activemq.command.Message: org.apache.activemq.command.MessageId getMessageId()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
return null;
}
public org.apache.activemq.command.Response processBeginTransaction(org.apache.activemq.command.TransactionInfo)
{
org.apache.activemq.state.TransactionState v;
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.state.ConnectionStateTracker v;
java.util.concurrent.ConcurrentMap v;
org.apache.activemq.state.Tracked v;
org.apache.activemq.command.TransactionInfo v;
java.lang.Object v;
org.apache.activemq.command.TransactionId v, v, v;
boolean v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.command.TransactionInfo;
v = v.<org.apache.activemq.state.ConnectionStateTracker: boolean trackTransactions>;
if v == 0 goto label;
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.TransactionInfo: org.apache.activemq.command.TransactionId getTransactionId()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.TransactionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
if v == null goto label;
v = v.<org.apache.activemq.state.ConnectionStateTracker: java.util.concurrent.ConcurrentMap connectionStates>;
v = interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.TransactionInfo: org.apache.activemq.command.TransactionId getTransactionId()>();
virtualinvoke v.<org.apache.activemq.state.ConnectionState: void addTransactionState(org.apache.activemq.command.TransactionId)>(v);
v = virtualinvoke v.<org.apache.activemq.command.TransactionInfo: org.apache.activemq.command.TransactionId getTransactionId()>();
v = virtualinvoke v.<org.apache.activemq.state.ConnectionState: org.apache.activemq.state.TransactionState getTransactionState(org.apache.activemq.command.TransactionId)>(v);
virtualinvoke v.<org.apache.activemq.state.TransactionState: void addCommand(org.apache.activemq.command.Command)>(v);
label:
v = <org.apache.activemq.state.ConnectionStateTracker: org.apache.activemq.state.Tracked TRACKED_RESPONSE_MARKER>;
return v;
label:
return null;
}
public org.apache.activemq.command.Response processPrepareTransaction(org.apache.activemq.command.TransactionInfo) throws java.lang.Exception
{
org.apache.activemq.state.TransactionState v;
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.state.ConnectionStateTracker v;
org.apache.activemq.state.ConnectionStateTracker$PrepareReadonlyTransactionAction v;
java.util.concurrent.ConcurrentMap v;
org.apache.activemq.state.Tracked v;
org.apache.activemq.command.TransactionInfo v;
java.lang.Object v;
org.apache.activemq.command.TransactionId v, v;
boolean v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.command.TransactionInfo;
v = v.<org.apache.activemq.state.ConnectionStateTracker: boolean trackTransactions>;
if v == 0 goto label;
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.TransactionInfo: org.apache.activemq.command.TransactionId getTransactionId()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.TransactionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
if v == null goto label;
v = v.<org.apache.activemq.state.ConnectionStateTracker: java.util.concurrent.ConcurrentMap connectionStates>;
v = interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.TransactionInfo: org.apache.activemq.command.TransactionId getTransactionId()>();
v = virtualinvoke v.<org.apache.activemq.state.ConnectionState: org.apache.activemq.state.TransactionState getTransactionState(org.apache.activemq.command.TransactionId)>(v);
if v == null goto label;
virtualinvoke v.<org.apache.activemq.state.TransactionState: void addCommand(org.apache.activemq.command.Command)>(v);
v = new org.apache.activemq.state.Tracked;
v = new org.apache.activemq.state.ConnectionStateTracker$PrepareReadonlyTransactionAction;
specialinvoke v.<org.apache.activemq.state.ConnectionStateTracker$PrepareReadonlyTransactionAction: void <init>(org.apache.activemq.state.ConnectionStateTracker,org.apache.activemq.command.TransactionInfo)>(v, v);
specialinvoke v.<org.apache.activemq.state.Tracked: void <init>(org.apache.activemq.state.ResponseHandler)>(v);
return v;
label:
return null;
}
public org.apache.activemq.command.Response processCommitTransactionOnePhase(org.apache.activemq.command.TransactionInfo) throws java.lang.Exception
{
org.apache.activemq.state.TransactionState v;
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.state.ConnectionStateTracker v;
org.apache.activemq.state.ConnectionStateTracker$RemoveTransactionAction v;
java.util.concurrent.ConcurrentMap v;
org.apache.activemq.state.Tracked v;
org.apache.activemq.command.TransactionInfo v;
java.lang.Object v;
org.apache.activemq.command.TransactionId v, v;
boolean v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.command.TransactionInfo;
v = v.<org.apache.activemq.state.ConnectionStateTracker: boolean trackTransactions>;
if v == 0 goto label;
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.TransactionInfo: org.apache.activemq.command.TransactionId getTransactionId()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.TransactionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
if v == null goto label;
v = v.<org.apache.activemq.state.ConnectionStateTracker: java.util.concurrent.ConcurrentMap connectionStates>;
v = interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.TransactionInfo: org.apache.activemq.command.TransactionId getTransactionId()>();
v = virtualinvoke v.<org.apache.activemq.state.ConnectionState: org.apache.activemq.state.TransactionState getTransactionState(org.apache.activemq.command.TransactionId)>(v);
if v == null goto label;
virtualinvoke v.<org.apache.activemq.state.TransactionState: void addCommand(org.apache.activemq.command.Command)>(v);
v = new org.apache.activemq.state.Tracked;
v = new org.apache.activemq.state.ConnectionStateTracker$RemoveTransactionAction;
specialinvoke v.<org.apache.activemq.state.ConnectionStateTracker$RemoveTransactionAction: void <init>(org.apache.activemq.state.ConnectionStateTracker,org.apache.activemq.command.TransactionInfo)>(v, v);
specialinvoke v.<org.apache.activemq.state.Tracked: void <init>(org.apache.activemq.state.ResponseHandler)>(v);
return v;
label:
return null;
}
public org.apache.activemq.command.Response processCommitTransactionTwoPhase(org.apache.activemq.command.TransactionInfo) throws java.lang.Exception
{
org.apache.activemq.state.TransactionState v;
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.state.ConnectionStateTracker v;
org.apache.activemq.state.ConnectionStateTracker$RemoveTransactionAction v;
java.util.concurrent.ConcurrentMap v;
org.apache.activemq.state.Tracked v;
org.apache.activemq.command.TransactionInfo v;
java.lang.Object v;
org.apache.activemq.command.TransactionId v, v;
boolean v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.command.TransactionInfo;
v = v.<org.apache.activemq.state.ConnectionStateTracker: boolean trackTransactions>;
if v == 0 goto label;
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.TransactionInfo: org.apache.activemq.command.TransactionId getTransactionId()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.TransactionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
if v == null goto label;
v = v.<org.apache.activemq.state.ConnectionStateTracker: java.util.concurrent.ConcurrentMap connectionStates>;
v = interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.TransactionInfo: org.apache.activemq.command.TransactionId getTransactionId()>();
v = virtualinvoke v.<org.apache.activemq.state.ConnectionState: org.apache.activemq.state.TransactionState getTransactionState(org.apache.activemq.command.TransactionId)>(v);
if v == null goto label;
virtualinvoke v.<org.apache.activemq.state.TransactionState: void addCommand(org.apache.activemq.command.Command)>(v);
v = new org.apache.activemq.state.Tracked;
v = new org.apache.activemq.state.ConnectionStateTracker$RemoveTransactionAction;
specialinvoke v.<org.apache.activemq.state.ConnectionStateTracker$RemoveTransactionAction: void <init>(org.apache.activemq.state.ConnectionStateTracker,org.apache.activemq.command.TransactionInfo)>(v, v);
specialinvoke v.<org.apache.activemq.state.Tracked: void <init>(org.apache.activemq.state.ResponseHandler)>(v);
return v;
label:
return null;
}
public org.apache.activemq.command.Response processRollbackTransaction(org.apache.activemq.command.TransactionInfo) throws java.lang.Exception
{
org.apache.activemq.state.TransactionState v;
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.state.ConnectionStateTracker v;
org.apache.activemq.state.ConnectionStateTracker$RemoveTransactionAction v;
java.util.concurrent.ConcurrentMap v;
org.apache.activemq.state.Tracked v;
org.apache.activemq.command.TransactionInfo v;
java.lang.Object v;
org.apache.activemq.command.TransactionId v, v;
boolean v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.command.TransactionInfo;
v = v.<org.apache.activemq.state.ConnectionStateTracker: boolean trackTransactions>;
if v == 0 goto label;
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.TransactionInfo: org.apache.activemq.command.TransactionId getTransactionId()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.TransactionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
if v == null goto label;
v = v.<org.apache.activemq.state.ConnectionStateTracker: java.util.concurrent.ConcurrentMap connectionStates>;
v = interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.TransactionInfo: org.apache.activemq.command.TransactionId getTransactionId()>();
v = virtualinvoke v.<org.apache.activemq.state.ConnectionState: org.apache.activemq.state.TransactionState getTransactionState(org.apache.activemq.command.TransactionId)>(v);
if v == null goto label;
virtualinvoke v.<org.apache.activemq.state.TransactionState: void addCommand(org.apache.activemq.command.Command)>(v);
v = new org.apache.activemq.state.Tracked;
v = new org.apache.activemq.state.ConnectionStateTracker$RemoveTransactionAction;
specialinvoke v.<org.apache.activemq.state.ConnectionStateTracker$RemoveTransactionAction: void <init>(org.apache.activemq.state.ConnectionStateTracker,org.apache.activemq.command.TransactionInfo)>(v, v);
specialinvoke v.<org.apache.activemq.state.Tracked: void <init>(org.apache.activemq.state.ResponseHandler)>(v);
return v;
label:
return null;
}
public org.apache.activemq.command.Response processEndTransaction(org.apache.activemq.command.TransactionInfo) throws java.lang.Exception
{
org.apache.activemq.state.TransactionState v;
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.state.ConnectionStateTracker v;
java.util.concurrent.ConcurrentMap v;
org.apache.activemq.state.Tracked v;
org.apache.activemq.command.TransactionInfo v;
java.lang.Object v;
org.apache.activemq.command.TransactionId v, v;
boolean v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.command.TransactionInfo;
v = v.<org.apache.activemq.state.ConnectionStateTracker: boolean trackTransactions>;
if v == 0 goto label;
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.TransactionInfo: org.apache.activemq.command.TransactionId getTransactionId()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.TransactionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
if v == null goto label;
v = v.<org.apache.activemq.state.ConnectionStateTracker: java.util.concurrent.ConcurrentMap connectionStates>;
v = interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.TransactionInfo: org.apache.activemq.command.TransactionId getTransactionId()>();
v = virtualinvoke v.<org.apache.activemq.state.ConnectionState: org.apache.activemq.state.TransactionState getTransactionState(org.apache.activemq.command.TransactionId)>(v);
if v == null goto label;
virtualinvoke v.<org.apache.activemq.state.TransactionState: void addCommand(org.apache.activemq.command.Command)>(v);
label:
v = <org.apache.activemq.state.ConnectionStateTracker: org.apache.activemq.state.Tracked TRACKED_RESPONSE_MARKER>;
return v;
label:
return null;
}
public org.apache.activemq.command.Response processMessagePull(org.apache.activemq.command.MessagePull) throws java.lang.Exception
{
org.apache.activemq.state.ConnectionStateTracker v;
org.apache.activemq.command.ConsumerId v;
org.apache.activemq.command.MessagePull v;
org.apache.activemq.command.ActiveMQDestination v;
java.util.Map v;
java.lang.Object v;
java.lang.String v, v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.command.MessagePull;
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.MessagePull: org.apache.activemq.command.ActiveMQDestination getDestination()>();
v = virtualinvoke v.<org.apache.activemq.command.MessagePull: org.apache.activemq.command.ConsumerId getConsumerId()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.activemq.command.ActiveMQDestination,org.apache.activemq.command.ConsumerId)>(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::\u0001");
v = v.<org.apache.activemq.state.ConnectionStateTracker: java.util.Map messageCache>;
v = virtualinvoke v.<java.lang.String: java.lang.String intern()>();
v = interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
if v != null goto label;
virtualinvoke v.<org.apache.activemq.command.MessagePull: void setTracked(boolean)>(1);
label:
return null;
}
public boolean isRestoreConsumers()
{
org.apache.activemq.state.ConnectionStateTracker v;
boolean v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v = v.<org.apache.activemq.state.ConnectionStateTracker: boolean restoreConsumers>;
return v;
}
public void setRestoreConsumers(boolean)
{
org.apache.activemq.state.ConnectionStateTracker v;
boolean v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: boolean;
v.<org.apache.activemq.state.ConnectionStateTracker: boolean restoreConsumers> = v;
return;
}
public boolean isRestoreProducers()
{
org.apache.activemq.state.ConnectionStateTracker v;
boolean v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v = v.<org.apache.activemq.state.ConnectionStateTracker: boolean restoreProducers>;
return v;
}
public void setRestoreProducers(boolean)
{
org.apache.activemq.state.ConnectionStateTracker v;
boolean v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: boolean;
v.<org.apache.activemq.state.ConnectionStateTracker: boolean restoreProducers> = v;
return;
}
public boolean isRestoreSessions()
{
org.apache.activemq.state.ConnectionStateTracker v;
boolean v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v = v.<org.apache.activemq.state.ConnectionStateTracker: boolean restoreSessions>;
return v;
}
public void setRestoreSessions(boolean)
{
org.apache.activemq.state.ConnectionStateTracker v;
boolean v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: boolean;
v.<org.apache.activemq.state.ConnectionStateTracker: boolean restoreSessions> = v;
return;
}
public boolean isTrackTransactions()
{
org.apache.activemq.state.ConnectionStateTracker v;
boolean v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v = v.<org.apache.activemq.state.ConnectionStateTracker: boolean trackTransactions>;
return v;
}
public void setTrackTransactions(boolean)
{
org.apache.activemq.state.ConnectionStateTracker v;
boolean v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: boolean;
v.<org.apache.activemq.state.ConnectionStateTracker: boolean trackTransactions> = v;
return;
}
public boolean isTrackTransactionProducers()
{
org.apache.activemq.state.ConnectionStateTracker v;
boolean v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v = v.<org.apache.activemq.state.ConnectionStateTracker: boolean trackTransactionProducers>;
return v;
}
public void setTrackTransactionProducers(boolean)
{
org.apache.activemq.state.ConnectionStateTracker v;
boolean v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: boolean;
v.<org.apache.activemq.state.ConnectionStateTracker: boolean trackTransactionProducers> = v;
return;
}
public boolean isRestoreTransaction()
{
org.apache.activemq.state.ConnectionStateTracker v;
boolean v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v = v.<org.apache.activemq.state.ConnectionStateTracker: boolean restoreTransaction>;
return v;
}
public void setRestoreTransaction(boolean)
{
org.apache.activemq.state.ConnectionStateTracker v;
boolean v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: boolean;
v.<org.apache.activemq.state.ConnectionStateTracker: boolean restoreTransaction> = v;
return;
}
public boolean isTrackMessages()
{
org.apache.activemq.state.ConnectionStateTracker v;
boolean v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v = v.<org.apache.activemq.state.ConnectionStateTracker: boolean trackMessages>;
return v;
}
public void setTrackMessages(boolean)
{
org.apache.activemq.state.ConnectionStateTracker v;
boolean v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: boolean;
v.<org.apache.activemq.state.ConnectionStateTracker: boolean trackMessages> = v;
return;
}
public int getMaxCacheSize()
{
int v;
org.apache.activemq.state.ConnectionStateTracker v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v = v.<org.apache.activemq.state.ConnectionStateTracker: int maxCacheSize>;
return v;
}
public void setMaxCacheSize(int)
{
int v;
org.apache.activemq.state.ConnectionStateTracker v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: int;
v.<org.apache.activemq.state.ConnectionStateTracker: int maxCacheSize> = v;
return;
}
public long getCurrentCacheSize()
{
long v;
org.apache.activemq.state.ConnectionStateTracker v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v = v.<org.apache.activemq.state.ConnectionStateTracker: long currentCacheSize>;
return v;
}
public void connectionInterruptProcessingComplete(org.apache.activemq.transport.Transport, org.apache.activemq.command.ConnectionId)
{
org.apache.activemq.command.ConsumerId v, v;
java.util.concurrent.ConcurrentMap v;
java.util.Map v;
int v, v, v;
java.lang.String v, v;
boolean v, v, v;
org.slf4j.Logger v, v, v, v;
java.util.Iterator v;
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.state.ConnectionStateTracker v;
java.util.Set v;
org.apache.activemq.transport.Transport v;
java.lang.Exception v;
org.apache.activemq.command.ActiveMQDestination v;
org.apache.activemq.command.ConsumerControl v;
java.lang.Object v, v, v, v, v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.transport.Transport;
v := @parameter: org.apache.activemq.command.ConnectionId;
v = v.<org.apache.activemq.state.ConnectionStateTracker: java.util.concurrent.ConcurrentMap connectionStates>;
v = interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
virtualinvoke v.<org.apache.activemq.state.ConnectionState: void setConnectionInterruptProcessingComplete(boolean)>(1);
v = virtualinvoke v.<org.apache.activemq.state.ConnectionState: java.util.Map getRecoveringPullConsumers()>();
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 = new org.apache.activemq.command.ConsumerControl;
specialinvoke v.<org.apache.activemq.command.ConsumerControl: void <init>()>();
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getKey()>();
virtualinvoke v.<org.apache.activemq.command.ConsumerControl: void setConsumerId(org.apache.activemq.command.ConsumerId)>(v);
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getValue()>();
v = virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: int getPrefetchSize()>();
virtualinvoke v.<org.apache.activemq.command.ConsumerControl: void setPrefetch(int)>(v);
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getValue()>();
v = virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: org.apache.activemq.command.ActiveMQDestination getDestination()>();
virtualinvoke v.<org.apache.activemq.command.ConsumerControl: void setDestination(org.apache.activemq.command.ActiveMQDestination)>(v);
label:
v = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.activemq.command.ConsumerControl: org.apache.activemq.command.ConsumerId getConsumerId()>();
v = virtualinvoke v.<org.apache.activemq.command.ConsumerControl: int getPrefetch()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.activemq.command.ConsumerId,int)>(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[])>("restored recovering consumer: \u with: \u0001");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>(v);
label:
interfaceinvoke v.<org.apache.activemq.transport.Transport: void oneway(java.lang.Object)>(v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.activemq.command.ConsumerControl: org.apache.activemq.command.ConsumerId getConsumerId()>();
v = virtualinvoke v.<org.apache.activemq.command.ConsumerControl: int getPrefetch()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.activemq.command.ConsumerId,int)>(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[])>("Failed to submit control for consumer: \u with: \u0001");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Throwable)>(v, v);
goto label;
label:
interfaceinvoke v.<java.util.Map: void clear()>();
label:
return;
catch java.lang.Exception from label to label with label;
}
public void transportInterrupted(org.apache.activemq.command.ConnectionId)
{
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.state.ConnectionStateTracker v;
java.lang.Object v;
java.util.concurrent.ConcurrentMap v;
v := @this: org.apache.activemq.state.ConnectionStateTracker;
v := @parameter: org.apache.activemq.command.ConnectionId;
v = v.<org.apache.activemq.state.ConnectionStateTracker: java.util.concurrent.ConcurrentMap connectionStates>;
v = interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
virtualinvoke v.<org.apache.activemq.state.ConnectionState: void setConnectionInterruptProcessingComplete(boolean)>(0);
label:
return;
}
static void <clinit>()
{
org.apache.activemq.state.Tracked v;
org.slf4j.Logger v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/activemq/state/ConnectionStateTracker;");
<org.apache.activemq.state.ConnectionStateTracker: org.slf4j.Logger LOG> = v;
v = new org.apache.activemq.state.Tracked;
specialinvoke v.<org.apache.activemq.state.Tracked: void <init>(org.apache.activemq.state.ResponseHandler)>(null);
<org.apache.activemq.state.ConnectionStateTracker: org.apache.activemq.state.Tracked TRACKED_RESPONSE_MARKER> = v;
return;
}
}