public class org.apache.activemq.ActiveMQConnection extends java.lang.Object implements javax.jms.Connection, javax.jms.TopicConnection, javax.jms.QueueConnection, org.apache.activemq.management.StatsCapable, org.apache.activemq.Closeable, org.apache.activemq.transport.TransportListener, org.apache.activemq.EnhancedConnection
{
public static final java.lang.String DEFAULT_USER;
public static final java.lang.String DEFAULT_PASSWORD;
public static final java.lang.String DEFAULT_BROKER_URL;
public static int DEFAULT_THREAD_POOL_SIZE;
private static final org.slf4j.Logger LOG;
public final java.util.concurrent.ConcurrentMap activeTempDestinations;
protected boolean dispatchAsync;
protected boolean alwaysSessionAsync;
private org.apache.activemq.thread.TaskRunnerFactory sessionTaskRunner;
private final java.util.concurrent.ThreadPoolExecutor executor;
private final org.apache.activemq.command.ConnectionInfo info;
private javax.jms.ExceptionListener exceptionListener;
private org.apache.activemq.ClientInternalExceptionListener clientInternalExceptionListener;
private boolean clientIDSet;
private boolean isConnectionInfoSentToBroker;
private boolean userSpecifiedClientID;
private org.apache.activemq.ActiveMQPrefetchPolicy prefetchPolicy;
private org.apache.activemq.blob.BlobTransferPolicy blobTransferPolicy;
private org.apache.activemq.broker.region.policy.RedeliveryPolicyMap redeliveryPolicyMap;
private org.apache.activemq.MessageTransformer transformer;
private boolean disableTimeStampsByDefault;
private boolean optimizedMessageDispatch;
private boolean copyMessageOnSend;
private boolean useCompression;
private boolean objectMessageSerializationDefered;
private boolean useAsyncSend;
private boolean optimizeAcknowledge;
private long optimizeAcknowledgeTimeOut;
private long optimizedAckScheduledAckInterval;
private boolean nestedMapAndListEnabled;
private boolean useRetroactiveConsumer;
private boolean exclusiveConsumer;
private boolean alwaysSyncSend;
private int closeTimeout;
private boolean watchTopicAdvisories;
private long warnAboutUnstartedConnectionTimeout;
private int sendTimeout;
private boolean sendAcksAsync;
private boolean checkForDuplicates;
private boolean queueOnlyConnection;
private boolean consumerExpiryCheckEnabled;
private final org.apache.activemq.transport.Transport transport;
private final org.apache.activemq.util.IdGenerator clientIdGenerator;
private final org.apache.activemq.management.JMSStatsImpl factoryStats;
private final org.apache.activemq.management.JMSConnectionStatsImpl stats;
private final java.util.concurrent.atomic.AtomicBoolean started;
private final java.util.concurrent.atomic.AtomicBoolean closing;
private final java.util.concurrent.atomic.AtomicBoolean closed;
private final java.util.concurrent.atomic.AtomicBoolean transportFailed;
private final java.util.concurrent.CopyOnWriteArrayList sessions;
private final java.util.concurrent.CopyOnWriteArrayList connectionConsumers;
private final java.util.concurrent.CopyOnWriteArrayList transportListeners;
private final java.util.concurrent.ConcurrentMap dispatchers;
private final java.util.concurrent.ConcurrentMap producers;
private final org.apache.activemq.util.LongSequenceGenerator sessionIdGenerator;
private final org.apache.activemq.command.SessionId connectionSessionId;
private final org.apache.activemq.util.LongSequenceGenerator consumerIdGenerator;
private final org.apache.activemq.util.LongSequenceGenerator tempDestinationIdGenerator;
private final org.apache.activemq.util.LongSequenceGenerator localTransactionIdGenerator;
private org.apache.activemq.AdvisoryConsumer advisoryConsumer;
private final java.util.concurrent.CountDownLatch brokerInfoReceived;
private org.apache.activemq.command.BrokerInfo brokerInfo;
private java.io.IOException firstFailureError;
private int producerWindowSize;
private final java.util.concurrent.atomic.AtomicInteger protocolVersion;
private final java.util.concurrent.atomic.AtomicLong maxFrameSize;
private final long timeCreated;
private final org.apache.activemq.ConnectionAudit connectionAudit;
private org.apache.activemq.advisory.DestinationSource destinationSource;
private final java.lang.Object ensureConnectionInfoSentMutex;
private boolean useDedicatedTaskRunner;
protected java.util.concurrent.atomic.AtomicInteger transportInterruptionProcessingComplete;
private long consumerFailoverRedeliveryWaitPeriod;
private volatile org.apache.activemq.thread.Scheduler scheduler;
private final java.lang.Object schedulerLock;
private boolean messagePrioritySupported;
private boolean transactedIndividualAck;
private boolean nonBlockingRedelivery;
private boolean rmIdFromConnectionId;
private int maxThreadPoolSize;
private java.util.concurrent.RejectedExecutionHandler rejectedTaskHandler;
private java.util.List trustedPackages;
private boolean trustAllPackages;
private int connectResponseTimeout;
protected void <init>(org.apache.activemq.transport.Transport, org.apache.activemq.util.IdGenerator, org.apache.activemq.util.IdGenerator, org.apache.activemq.management.JMSStatsImpl) throws java.lang.Exception
{
org.apache.activemq.management.JMSStatsImpl v, v;
java.util.concurrent.atomic.AtomicInteger v, v;
org.apache.activemq.management.JMSConnectionStatsImpl v;
org.apache.activemq.ActiveMQPrefetchPolicy v;
boolean v, v, v;
org.apache.activemq.command.SessionId v;
java.util.concurrent.ConcurrentHashMap v, v, v;
org.apache.activemq.transport.Transport v, v;
org.apache.activemq.ActiveMQConnection v;
java.util.concurrent.LinkedBlockingQueue v;
java.util.concurrent.CountDownLatch v;
org.apache.activemq.util.LongSequenceGenerator v, v, v, v;
java.util.concurrent.CopyOnWriteArrayList v, v, v, v;
java.util.concurrent.ThreadPoolExecutor v;
java.util.concurrent.atomic.AtomicBoolean v, v, v, v;
long v;
java.util.ArrayList v;
org.apache.activemq.command.ConnectionInfo v, v, v, v;
int v;
java.lang.String v;
org.apache.activemq.ConnectionAudit v, v;
org.apache.activemq.ActiveMQConnection$1 v;
org.apache.activemq.command.ConnectionId v, v;
java.util.concurrent.TimeUnit v;
java.util.concurrent.atomic.AtomicLong v;
java.lang.Object v, v;
org.apache.activemq.util.IdGenerator v, v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.transport.Transport;
v := @parameter: org.apache.activemq.util.IdGenerator;
v := @parameter: org.apache.activemq.util.IdGenerator;
v := @parameter: org.apache.activemq.management.JMSStatsImpl;
specialinvoke v.<java.lang.Object: void <init>()>();
v = new java.util.concurrent.ConcurrentHashMap;
specialinvoke v.<java.util.concurrent.ConcurrentHashMap: void <init>()>();
v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ConcurrentMap activeTempDestinations> = v;
v.<org.apache.activemq.ActiveMQConnection: boolean dispatchAsync> = 1;
v.<org.apache.activemq.ActiveMQConnection: boolean alwaysSessionAsync> = 1;
v = new org.apache.activemq.ActiveMQPrefetchPolicy;
specialinvoke v.<org.apache.activemq.ActiveMQPrefetchPolicy: void <init>()>();
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.ActiveMQPrefetchPolicy prefetchPolicy> = v;
v.<org.apache.activemq.ActiveMQConnection: boolean optimizedMessageDispatch> = 1;
v.<org.apache.activemq.ActiveMQConnection: boolean copyMessageOnSend> = 1;
v.<org.apache.activemq.ActiveMQConnection: long optimizeAcknowledgeTimeOut> = 0L;
v.<org.apache.activemq.ActiveMQConnection: long optimizedAckScheduledAckInterval> = 0L;
v.<org.apache.activemq.ActiveMQConnection: boolean nestedMapAndListEnabled> = 1;
v.<org.apache.activemq.ActiveMQConnection: int closeTimeout> = 15000;
v.<org.apache.activemq.ActiveMQConnection: boolean watchTopicAdvisories> = 1;
v.<org.apache.activemq.ActiveMQConnection: long warnAboutUnstartedConnectionTimeout> = 500L;
v.<org.apache.activemq.ActiveMQConnection: int sendTimeout> = 0;
v.<org.apache.activemq.ActiveMQConnection: boolean sendAcksAsync> = 1;
v.<org.apache.activemq.ActiveMQConnection: boolean checkForDuplicates> = 1;
v.<org.apache.activemq.ActiveMQConnection: boolean queueOnlyConnection> = 0;
v.<org.apache.activemq.ActiveMQConnection: boolean consumerExpiryCheckEnabled> = 1;
v = new java.util.concurrent.atomic.AtomicBoolean;
specialinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void <init>(boolean)>(0);
v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean started> = v;
v = new java.util.concurrent.atomic.AtomicBoolean;
specialinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void <init>(boolean)>(0);
v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean closing> = v;
v = new java.util.concurrent.atomic.AtomicBoolean;
specialinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void <init>(boolean)>(0);
v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean closed> = v;
v = new java.util.concurrent.atomic.AtomicBoolean;
specialinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void <init>(boolean)>(0);
v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean transportFailed> = v;
v = new java.util.concurrent.CopyOnWriteArrayList;
specialinvoke v.<java.util.concurrent.CopyOnWriteArrayList: void <init>()>();
v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList sessions> = v;
v = new java.util.concurrent.CopyOnWriteArrayList;
specialinvoke v.<java.util.concurrent.CopyOnWriteArrayList: void <init>()>();
v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList connectionConsumers> = v;
v = new java.util.concurrent.CopyOnWriteArrayList;
specialinvoke v.<java.util.concurrent.CopyOnWriteArrayList: void <init>()>();
v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList transportListeners> = v;
v = new java.util.concurrent.ConcurrentHashMap;
specialinvoke v.<java.util.concurrent.ConcurrentHashMap: void <init>()>();
v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ConcurrentMap dispatchers> = v;
v = new java.util.concurrent.ConcurrentHashMap;
specialinvoke v.<java.util.concurrent.ConcurrentHashMap: void <init>()>();
v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ConcurrentMap producers> = v;
v = new org.apache.activemq.util.LongSequenceGenerator;
specialinvoke v.<org.apache.activemq.util.LongSequenceGenerator: void <init>()>();
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.util.LongSequenceGenerator sessionIdGenerator> = v;
v = new org.apache.activemq.util.LongSequenceGenerator;
specialinvoke v.<org.apache.activemq.util.LongSequenceGenerator: void <init>()>();
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.util.LongSequenceGenerator consumerIdGenerator> = v;
v = new org.apache.activemq.util.LongSequenceGenerator;
specialinvoke v.<org.apache.activemq.util.LongSequenceGenerator: void <init>()>();
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.util.LongSequenceGenerator tempDestinationIdGenerator> = v;
v = new org.apache.activemq.util.LongSequenceGenerator;
specialinvoke v.<org.apache.activemq.util.LongSequenceGenerator: void <init>()>();
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.util.LongSequenceGenerator localTransactionIdGenerator> = v;
v = new java.util.concurrent.CountDownLatch;
specialinvoke v.<java.util.concurrent.CountDownLatch: void <init>(int)>(1);
v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CountDownLatch brokerInfoReceived> = v;
v.<org.apache.activemq.ActiveMQConnection: int producerWindowSize> = 0;
v = new java.util.concurrent.atomic.AtomicInteger;
specialinvoke v.<java.util.concurrent.atomic.AtomicInteger: void <init>(int)>(12);
v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicInteger protocolVersion> = v;
v = new java.util.concurrent.atomic.AtomicLong;
specialinvoke v.<java.util.concurrent.atomic.AtomicLong: void <init>(long)>(9223372036854775807L);
v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicLong maxFrameSize> = v;
v = new org.apache.activemq.ConnectionAudit;
specialinvoke v.<org.apache.activemq.ConnectionAudit: void <init>()>();
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.ConnectionAudit connectionAudit> = v;
v = new java.lang.Object;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<org.apache.activemq.ActiveMQConnection: java.lang.Object ensureConnectionInfoSentMutex> = v;
v = new java.util.concurrent.atomic.AtomicInteger;
specialinvoke v.<java.util.concurrent.atomic.AtomicInteger: void <init>(int)>(0);
v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicInteger transportInterruptionProcessingComplete> = v;
v = new java.lang.Object;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<org.apache.activemq.ActiveMQConnection: java.lang.Object schedulerLock> = v;
v.<org.apache.activemq.ActiveMQConnection: boolean messagePrioritySupported> = 0;
v.<org.apache.activemq.ActiveMQConnection: boolean transactedIndividualAck> = 0;
v.<org.apache.activemq.ActiveMQConnection: boolean nonBlockingRedelivery> = 0;
v.<org.apache.activemq.ActiveMQConnection: boolean rmIdFromConnectionId> = 0;
v = <org.apache.activemq.ActiveMQConnection: int DEFAULT_THREAD_POOL_SIZE>;
v.<org.apache.activemq.ActiveMQConnection: int maxThreadPoolSize> = v;
v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.RejectedExecutionHandler rejectedTaskHandler> = null;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v.<org.apache.activemq.ActiveMQConnection: java.util.List trustedPackages> = v;
v.<org.apache.activemq.ActiveMQConnection: boolean trustAllPackages> = 0;
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.transport.Transport transport> = v;
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.util.IdGenerator clientIdGenerator> = v;
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.management.JMSStatsImpl factoryStats> = v;
v = new java.util.concurrent.ThreadPoolExecutor;
v = <java.util.concurrent.TimeUnit: java.util.concurrent.TimeUnit SECONDS>;
v = new java.util.concurrent.LinkedBlockingQueue;
specialinvoke v.<java.util.concurrent.LinkedBlockingQueue: void <init>()>();
v = new org.apache.activemq.ActiveMQConnection$1;
specialinvoke v.<org.apache.activemq.ActiveMQConnection$1: void <init>(org.apache.activemq.ActiveMQConnection,org.apache.activemq.transport.Transport)>(v, v);
specialinvoke v.<java.util.concurrent.ThreadPoolExecutor: void <init>(int,int,long,java.util.concurrent.TimeUnit,java.util.concurrent.BlockingQueue,java.util.concurrent.ThreadFactory)>(1, 1, 5L, v, v, v);
v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ThreadPoolExecutor executor> = v;
v = virtualinvoke v.<org.apache.activemq.util.IdGenerator: java.lang.String generateId()>();
v = new org.apache.activemq.command.ConnectionInfo;
v = new org.apache.activemq.command.ConnectionId;
specialinvoke v.<org.apache.activemq.command.ConnectionId: void <init>(java.lang.String)>(v);
specialinvoke v.<org.apache.activemq.command.ConnectionInfo: void <init>(org.apache.activemq.command.ConnectionId)>(v);
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info> = v;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: void setManageable(boolean)>(1);
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
v = interfaceinvoke v.<org.apache.activemq.transport.Transport: boolean isFaultTolerant()>();
virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: void setFaultTolerant(boolean)>(v);
v = new org.apache.activemq.command.SessionId;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
specialinvoke v.<org.apache.activemq.command.SessionId: void <init>(org.apache.activemq.command.ConnectionId,long)>(v, -1L);
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.SessionId connectionSessionId> = v;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.transport.Transport transport>;
interfaceinvoke v.<org.apache.activemq.transport.Transport: void setTransportListener(org.apache.activemq.transport.TransportListener)>(v);
v = new org.apache.activemq.management.JMSConnectionStatsImpl;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList sessions>;
v = v instanceof javax.jms.XAConnection;
specialinvoke v.<org.apache.activemq.management.JMSConnectionStatsImpl: void <init>(java.util.List,boolean)>(v, v);
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.management.JMSConnectionStatsImpl stats> = v;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.management.JMSStatsImpl factoryStats>;
virtualinvoke v.<org.apache.activemq.management.JMSStatsImpl: void addConnection(org.apache.activemq.ActiveMQConnection)>(v);
v = staticinvoke <java.lang.System: long currentTimeMillis()>();
v.<org.apache.activemq.ActiveMQConnection: long timeCreated> = v;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.ConnectionAudit connectionAudit>;
v = interfaceinvoke v.<org.apache.activemq.transport.Transport: boolean isFaultTolerant()>();
virtualinvoke v.<org.apache.activemq.ConnectionAudit: void setCheckForDuplicates(boolean)>(v);
return;
}
protected void setUserName(java.lang.String)
{
java.lang.String v;
org.apache.activemq.command.ConnectionInfo v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: java.lang.String;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: void setUserName(java.lang.String)>(v);
return;
}
protected void setPassword(java.lang.String)
{
java.lang.String v;
org.apache.activemq.command.ConnectionInfo v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: java.lang.String;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: void setPassword(java.lang.String)>(v);
return;
}
public static org.apache.activemq.ActiveMQConnection makeConnection() throws javax.jms.JMSException
{
javax.jms.Connection v;
org.apache.activemq.ActiveMQConnectionFactory v;
v = new org.apache.activemq.ActiveMQConnectionFactory;
specialinvoke v.<org.apache.activemq.ActiveMQConnectionFactory: void <init>()>();
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnectionFactory: javax.jms.Connection createConnection()>();
return v;
}
public static org.apache.activemq.ActiveMQConnection makeConnection(java.lang.String) throws javax.jms.JMSException, java.net.URISyntaxException
{
javax.jms.Connection v;
java.lang.String v;
org.apache.activemq.ActiveMQConnectionFactory v;
v := @parameter: java.lang.String;
v = new org.apache.activemq.ActiveMQConnectionFactory;
specialinvoke v.<org.apache.activemq.ActiveMQConnectionFactory: void <init>(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnectionFactory: javax.jms.Connection createConnection()>();
return v;
}
public static org.apache.activemq.ActiveMQConnection makeConnection(java.lang.String, java.lang.String, java.lang.String) throws javax.jms.JMSException, java.net.URISyntaxException
{
javax.jms.Connection v;
java.lang.String v, v, v;
java.net.URI v;
org.apache.activemq.ActiveMQConnectionFactory v;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v = new org.apache.activemq.ActiveMQConnectionFactory;
v = new java.net.URI;
specialinvoke v.<java.net.URI: void <init>(java.lang.String)>(v);
specialinvoke v.<org.apache.activemq.ActiveMQConnectionFactory: void <init>(java.lang.String,java.lang.String,java.net.URI)>(v, v, v);
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnectionFactory: javax.jms.Connection createConnection()>();
return v;
}
public org.apache.activemq.management.JMSConnectionStatsImpl getConnectionStats()
{
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.management.JMSConnectionStatsImpl v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.management.JMSConnectionStatsImpl stats>;
return v;
}
public javax.jms.Session createSession(boolean, int) throws javax.jms.JMSException
{
org.apache.activemq.command.SessionId v;
org.apache.activemq.ActiveMQConnection v;
javax.jms.JMSException v, v;
int v, v;
java.lang.String v;
org.apache.activemq.ActiveMQSession v;
boolean v, v, v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v := @parameter: int;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void checkClosedOrFailed()>();
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void ensureConnectionInfoSent()>();
if v != 0 goto label;
if v != 0 goto label;
v = new javax.jms.JMSException;
specialinvoke v.<javax.jms.JMSException: void <init>(java.lang.String)>("acknowledgeMode SESSION_TRANSACTED cannot be used for an non-transacted Session");
throw v;
label:
if v < 0 goto label;
if v <= 4 goto label;
label:
v = new javax.jms.JMSException;
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[])>("invalid acknowledgeMode: \u. Valid values are Session.AUTO_ACKNOWLEDGE (1), Session.CLIENT_ACKNOWLEDGE (2), Session.DUPS_OK_ACKNOWLEDGE (3), ActiveMQSession.INDIVIDUAL_ACKNOWLEDGE (4) or for transacted sessions Session.SESSION_TRANSACTED (0)");
specialinvoke v.<javax.jms.JMSException: void <init>(java.lang.String)>(v);
throw v;
label:
v = new org.apache.activemq.ActiveMQSession;
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.SessionId getNextSessionId()>();
if v == 0 goto label;
v = 0;
goto label;
label:
v = v;
label:
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: boolean isDispatchAsync()>();
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: boolean isAlwaysSessionAsync()>();
specialinvoke v.<org.apache.activemq.ActiveMQSession: void <init>(org.apache.activemq.ActiveMQConnection,org.apache.activemq.command.SessionId,int,boolean,boolean)>(v, v, v, v, v);
return v;
}
protected org.apache.activemq.command.SessionId getNextSessionId()
{
org.apache.activemq.command.ConnectionInfo v;
org.apache.activemq.util.LongSequenceGenerator v;
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.command.SessionId v;
long v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = new org.apache.activemq.command.SessionId;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.util.LongSequenceGenerator sessionIdGenerator>;
v = virtualinvoke v.<org.apache.activemq.util.LongSequenceGenerator: long getNextSequenceId()>();
specialinvoke v.<org.apache.activemq.command.SessionId: void <init>(org.apache.activemq.command.ConnectionId,long)>(v, v);
return v;
}
public java.lang.String getClientID() throws javax.jms.JMSException
{
java.lang.String v;
org.apache.activemq.command.ConnectionInfo v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void checkClosedOrFailed()>();
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: java.lang.String getClientId()>();
return v;
}
public void setClientID(java.lang.String) throws javax.jms.JMSException
{
org.apache.activemq.command.ConnectionInfo v;
java.lang.String v;
javax.jms.IllegalStateException v, v;
org.apache.activemq.ActiveMQConnection v;
boolean v, v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: java.lang.String;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void checkClosedOrFailed()>();
v = v.<org.apache.activemq.ActiveMQConnection: boolean clientIDSet>;
if v == 0 goto label;
v = new javax.jms.IllegalStateException;
specialinvoke v.<javax.jms.IllegalStateException: void <init>(java.lang.String)>("The clientID has already been set");
throw v;
label:
v = v.<org.apache.activemq.ActiveMQConnection: boolean isConnectionInfoSentToBroker>;
if v == 0 goto label;
v = new javax.jms.IllegalStateException;
specialinvoke v.<javax.jms.IllegalStateException: void <init>(java.lang.String)>("Setting clientID on a used Connection is not allowed");
throw v;
label:
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: void setClientId(java.lang.String)>(v);
v.<org.apache.activemq.ActiveMQConnection: boolean userSpecifiedClientID> = 1;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void ensureConnectionInfoSent()>();
return;
}
public void setDefaultClientID(java.lang.String) throws javax.jms.JMSException
{
java.lang.String v;
org.apache.activemq.command.ConnectionInfo v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: java.lang.String;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: void setClientId(java.lang.String)>(v);
v.<org.apache.activemq.ActiveMQConnection: boolean userSpecifiedClientID> = 1;
return;
}
public javax.jms.ConnectionMetaData getMetaData() throws javax.jms.JMSException
{
org.apache.activemq.ActiveMQConnectionMetaData v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void checkClosedOrFailed()>();
v = <org.apache.activemq.ActiveMQConnectionMetaData: org.apache.activemq.ActiveMQConnectionMetaData INSTANCE>;
return v;
}
public javax.jms.ExceptionListener getExceptionListener() throws javax.jms.JMSException
{
org.apache.activemq.ActiveMQConnection v;
javax.jms.ExceptionListener v;
v := @this: org.apache.activemq.ActiveMQConnection;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void checkClosedOrFailed()>();
v = v.<org.apache.activemq.ActiveMQConnection: javax.jms.ExceptionListener exceptionListener>;
return v;
}
public void setExceptionListener(javax.jms.ExceptionListener) throws javax.jms.JMSException
{
org.apache.activemq.ActiveMQConnection v;
javax.jms.ExceptionListener v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: javax.jms.ExceptionListener;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void checkClosedOrFailed()>();
v.<org.apache.activemq.ActiveMQConnection: javax.jms.ExceptionListener exceptionListener> = v;
return;
}
public org.apache.activemq.ClientInternalExceptionListener getClientInternalExceptionListener()
{
org.apache.activemq.ClientInternalExceptionListener v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.ClientInternalExceptionListener clientInternalExceptionListener>;
return v;
}
public void setClientInternalExceptionListener(org.apache.activemq.ClientInternalExceptionListener)
{
org.apache.activemq.ClientInternalExceptionListener v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.ClientInternalExceptionListener;
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.ClientInternalExceptionListener clientInternalExceptionListener> = v;
return;
}
public void start() throws javax.jms.JMSException
{
java.util.Iterator v;
java.util.concurrent.atomic.AtomicBoolean v;
java.lang.Object v;
org.apache.activemq.ActiveMQConnection v;
boolean v, v;
java.util.concurrent.CopyOnWriteArrayList v;
v := @this: org.apache.activemq.ActiveMQConnection;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void checkClosedOrFailed()>();
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void ensureConnectionInfoSent()>();
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean started>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean compareAndSet(boolean,boolean)>(0, 1);
if v == 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList sessions>;
v = virtualinvoke v.<java.util.concurrent.CopyOnWriteArrayList: 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()>();
virtualinvoke v.<org.apache.activemq.ActiveMQSession: void start()>();
goto label;
label:
return;
}
public void stop() throws javax.jms.JMSException
{
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void doStop(boolean)>(1);
return;
}
void doStop(boolean) throws javax.jms.JMSException
{
java.lang.Throwable v;
java.util.Iterator v;
java.util.concurrent.atomic.AtomicBoolean v;
org.apache.activemq.ActiveMQConnection v;
java.lang.Object v;
boolean v, v, v;
java.util.concurrent.CopyOnWriteArrayList v, v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
if v == 0 goto label;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void checkClosedOrFailed()>();
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean started>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean compareAndSet(boolean,boolean)>(1, 0);
if v == 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList sessions>;
entermonitor v;
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList sessions>;
v = virtualinvoke v.<java.util.concurrent.CopyOnWriteArrayList: 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()>();
virtualinvoke v.<org.apache.activemq.ActiveMQSession: void stop()>();
goto label;
label:
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
}
public void close() throws javax.jms.JMSException
{
org.apache.activemq.management.JMSStatsImpl v, v;
boolean v, v, v, v, v, v, v;
org.apache.activemq.transport.Transport v, v;
org.apache.activemq.ActiveMQConnection v;
javax.jms.JMSException v;
java.lang.Exception v;
org.apache.activemq.command.ShutdownInfo v;
org.apache.activemq.thread.TaskRunnerFactory v, v, v, v;
java.util.concurrent.CopyOnWriteArrayList v, v;
org.apache.activemq.advisory.DestinationSource v, v;
java.lang.Throwable v, v, v, v, v, v, v;
java.util.concurrent.ThreadPoolExecutor v, v, v, v, v, v;
java.util.concurrent.atomic.AtomicBoolean v, v, v, v, v, v, v, v, v, v;
long v, v;
org.apache.activemq.command.RemoveInfo v;
java.util.concurrent.ConcurrentMap v;
org.apache.activemq.command.ConnectionInfo v;
int v;
java.lang.String v, v;
org.slf4j.Logger v, v;
java.util.Iterator v, v;
org.apache.activemq.AdvisoryConsumer v, v;
org.apache.activemq.thread.Scheduler v;
java.lang.Object v, v;
v := @this: org.apache.activemq.ActiveMQConnection;
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean closed>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
if v != 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean transportFailed>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
if v != 0 goto label;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void doStop(boolean)>(0);
label:
entermonitor v;
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean closed>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
if v != 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean closing>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void set(boolean)>(1);
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.advisory.DestinationSource destinationSource>;
if v == null goto label;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.advisory.DestinationSource destinationSource>;
virtualinvoke v.<org.apache.activemq.advisory.DestinationSource: void stop()>();
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.advisory.DestinationSource destinationSource> = null;
label:
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.AdvisoryConsumer advisoryConsumer>;
if v == null goto label;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.AdvisoryConsumer advisoryConsumer>;
virtualinvoke v.<org.apache.activemq.AdvisoryConsumer: void dispose()>();
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.AdvisoryConsumer advisoryConsumer> = null;
label:
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.thread.Scheduler scheduler>;
if v == null goto label;
label:
virtualinvoke v.<org.apache.activemq.thread.Scheduler: void stop()>();
label:
goto label;
label:
v := @caughtexception;
v = staticinvoke <org.apache.activemq.util.JMSExceptionSupport: javax.jms.JMSException create(java.lang.Exception)>(v);
throw v;
label:
v = -1L;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList sessions>;
v = virtualinvoke v.<java.util.concurrent.CopyOnWriteArrayList: 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()>();
virtualinvoke v.<org.apache.activemq.ActiveMQSession: void dispose()>();
v = virtualinvoke v.<org.apache.activemq.ActiveMQSession: long getLastDeliveredSequenceId()>();
v = staticinvoke <java.lang.Math: long max(long,long)>(v, v);
goto label;
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList connectionConsumers>;
v = virtualinvoke v.<java.util.concurrent.CopyOnWriteArrayList: 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()>();
virtualinvoke v.<org.apache.activemq.ActiveMQConnectionConsumer: void dispose()>();
goto label;
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ConcurrentMap activeTempDestinations>;
interfaceinvoke v.<java.util.concurrent.ConcurrentMap: void clear()>();
label:
v = v.<org.apache.activemq.ActiveMQConnection: boolean isConnectionInfoSentToBroker>;
if v == 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: org.apache.activemq.command.RemoveInfo createRemoveCommand()>();
virtualinvoke v.<org.apache.activemq.command.RemoveInfo: void setLastDeliveredSequenceId(long)>(v);
label:
v = v.<org.apache.activemq.ActiveMQConnection: int closeTimeout>;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.Response syncSendPacket(org.apache.activemq.command.Command,int)>(v, v);
label:
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<javax.jms.JMSException: java.lang.Throwable getCause()>();
v = v instanceof org.apache.activemq.transport.RequestTimedOutIOException;
if v != 0 goto label;
throw v;
label:
v = new org.apache.activemq.command.ShutdownInfo;
specialinvoke v.<org.apache.activemq.command.ShutdownInfo: void <init>()>();
specialinvoke v.<org.apache.activemq.ActiveMQConnection: void doAsyncSendPacket(org.apache.activemq.command.Command)>(v);
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean started>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void set(boolean)>(0);
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.thread.TaskRunnerFactory sessionTaskRunner>;
if v == null goto label;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.thread.TaskRunnerFactory sessionTaskRunner>;
virtualinvoke v.<org.apache.activemq.thread.TaskRunnerFactory: void shutdown()>();
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean closed>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void set(boolean)>(1);
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean closing>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void set(boolean)>(0);
goto label;
label:
v := @caughtexception;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean started>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void set(boolean)>(0);
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.thread.TaskRunnerFactory sessionTaskRunner>;
if v == null goto label;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.thread.TaskRunnerFactory sessionTaskRunner>;
virtualinvoke v.<org.apache.activemq.thread.TaskRunnerFactory: void shutdown()>();
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean closed>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void set(boolean)>(1);
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean closing>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void set(boolean)>(0);
throw v;
label:
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ThreadPoolExecutor executor>;
if v == null goto label;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ThreadPoolExecutor executor>;
staticinvoke <org.apache.activemq.util.ThreadPoolUtils: void shutdown(java.util.concurrent.ExecutorService)>(v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.activemq.ActiveMQConnection: org.slf4j.Logger LOG>;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ThreadPoolExecutor executor>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.util.concurrent.ThreadPoolExecutor)>(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[])>("Error shutting down thread pool: \u. This exception will be ignored.");
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Throwable)>(v, v);
label:
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.transport.Transport transport>;
staticinvoke <org.apache.activemq.util.ServiceSupport: void dispose(org.apache.activemq.Service)>(v);
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.management.JMSStatsImpl factoryStats>;
virtualinvoke v.<org.apache.activemq.management.JMSStatsImpl: void removeConnection(org.apache.activemq.ActiveMQConnection)>(v);
goto label;
label:
v := @caughtexception;
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ThreadPoolExecutor executor>;
if v == null goto label;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ThreadPoolExecutor executor>;
staticinvoke <org.apache.activemq.util.ThreadPoolUtils: void shutdown(java.util.concurrent.ExecutorService)>(v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.activemq.ActiveMQConnection: org.slf4j.Logger LOG>;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ThreadPoolExecutor executor>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.util.concurrent.ThreadPoolExecutor)>(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[])>("Error shutting down thread pool: \u. This exception will be ignored.");
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Throwable)>(v, v);
label:
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.transport.Transport transport>;
staticinvoke <org.apache.activemq.util.ServiceSupport: void dispose(org.apache.activemq.Service)>(v);
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.management.JMSStatsImpl factoryStats>;
virtualinvoke v.<org.apache.activemq.management.JMSStatsImpl: void removeConnection(org.apache.activemq.ActiveMQConnection)>(v);
throw v;
label:
return;
catch java.lang.Exception from label to label with label;
catch javax.jms.JMSException from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public javax.jms.ConnectionConsumer createDurableConnectionConsumer(javax.jms.Topic, java.lang.String, java.lang.String, javax.jms.ServerSessionPool, int) throws javax.jms.JMSException
{
javax.jms.ConnectionConsumer v;
int v;
javax.jms.Topic v;
java.lang.String v, v;
org.apache.activemq.ActiveMQConnection v;
javax.jms.ServerSessionPool v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: javax.jms.Topic;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: javax.jms.ServerSessionPool;
v := @parameter: int;
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: javax.jms.ConnectionConsumer createDurableConnectionConsumer(javax.jms.Topic,java.lang.String,java.lang.String,javax.jms.ServerSessionPool,int,boolean)>(v, v, v, v, v, 0);
return v;
}
public javax.jms.ConnectionConsumer createDurableConnectionConsumer(javax.jms.Topic, java.lang.String, java.lang.String, javax.jms.ServerSessionPool, int, boolean) throws javax.jms.JMSException
{
org.apache.activemq.ActiveMQConnectionConsumer v;
java.util.HashMap v;
long v;
org.apache.activemq.command.ConsumerId v;
javax.jms.ServerSessionPool v;
org.apache.activemq.command.ConnectionInfo v, v;
java.util.Map v, v;
int v;
java.lang.String v, v;
org.apache.activemq.command.ConsumerInfo v;
boolean v, v, v;
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.command.SessionId v;
javax.jms.Topic v;
javax.jms.IllegalStateException v;
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.command.ActiveMQDestination v, v, v;
org.apache.activemq.util.LongSequenceGenerator v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: javax.jms.Topic;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: javax.jms.ServerSessionPool;
v := @parameter: int;
v := @parameter: boolean;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void checkClosedOrFailed()>();
v = v.<org.apache.activemq.ActiveMQConnection: boolean queueOnlyConnection>;
if v == 0 goto label;
v = new javax.jms.IllegalStateException;
specialinvoke v.<javax.jms.IllegalStateException: void <init>(java.lang.String)>("QueueConnection cannot be used to create Pub/Sub based resources.");
throw v;
label:
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void ensureConnectionInfoSent()>();
v = new org.apache.activemq.command.SessionId;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
specialinvoke v.<org.apache.activemq.command.SessionId: void <init>(org.apache.activemq.command.ConnectionId,long)>(v, -1L);
v = new org.apache.activemq.command.ConsumerInfo;
v = new org.apache.activemq.command.ConsumerId;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.util.LongSequenceGenerator consumerIdGenerator>;
v = virtualinvoke v.<org.apache.activemq.util.LongSequenceGenerator: long getNextSequenceId()>();
specialinvoke v.<org.apache.activemq.command.ConsumerId: void <init>(org.apache.activemq.command.SessionId,long)>(v, v);
specialinvoke v.<org.apache.activemq.command.ConsumerInfo: void <init>(org.apache.activemq.command.ConsumerId)>(v);
v = staticinvoke <org.apache.activemq.ActiveMQMessageTransformation: org.apache.activemq.command.ActiveMQDestination transformDestination(javax.jms.Destination)>(v);
virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: void setDestination(org.apache.activemq.command.ActiveMQDestination)>(v);
virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: void setSubscriptionName(java.lang.String)>(v);
virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: void setSelector(java.lang.String)>(v);
virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: void setPrefetchSize(int)>(v);
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: boolean isDispatchAsync()>();
virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: void setDispatchAsync(boolean)>(v);
v = virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: org.apache.activemq.command.ActiveMQDestination getDestination()>();
v = virtualinvoke v.<org.apache.activemq.command.ActiveMQDestination: java.util.Map getOptions()>();
if v == null goto label;
v = new java.util.HashMap;
v = virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: org.apache.activemq.command.ActiveMQDestination getDestination()>();
v = virtualinvoke v.<org.apache.activemq.command.ActiveMQDestination: java.util.Map getOptions()>();
specialinvoke v.<java.util.HashMap: void <init>(java.util.Map)>(v);
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
staticinvoke <org.apache.activemq.util.IntrospectionSupport: boolean setProperties(java.lang.Object,java.util.Map,java.lang.String)>(v, v, "consumer.");
label:
v = new org.apache.activemq.ActiveMQConnectionConsumer;
specialinvoke v.<org.apache.activemq.ActiveMQConnectionConsumer: void <init>(org.apache.activemq.ActiveMQConnection,javax.jms.ServerSessionPool,org.apache.activemq.command.ConsumerInfo)>(v, v, v);
return v;
}
public boolean isStarted()
{
java.util.concurrent.atomic.AtomicBoolean v;
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean started>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
return v;
}
public boolean isClosed()
{
java.util.concurrent.atomic.AtomicBoolean v;
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean closed>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
return v;
}
public boolean isClosing()
{
java.util.concurrent.atomic.AtomicBoolean v;
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean closing>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
return v;
}
public boolean isTransportFailed()
{
java.util.concurrent.atomic.AtomicBoolean v;
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean transportFailed>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
return v;
}
public org.apache.activemq.ActiveMQPrefetchPolicy getPrefetchPolicy()
{
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.ActiveMQPrefetchPolicy v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.ActiveMQPrefetchPolicy prefetchPolicy>;
return v;
}
public void setPrefetchPolicy(org.apache.activemq.ActiveMQPrefetchPolicy)
{
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.ActiveMQPrefetchPolicy v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.ActiveMQPrefetchPolicy;
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.ActiveMQPrefetchPolicy prefetchPolicy> = v;
return;
}
public org.apache.activemq.transport.Transport getTransportChannel()
{
org.apache.activemq.transport.Transport v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.transport.Transport transport>;
return v;
}
public java.lang.String getInitializedClientID() throws javax.jms.JMSException
{
java.lang.String v;
org.apache.activemq.command.ConnectionInfo v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void ensureConnectionInfoSent()>();
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: java.lang.String getClientId()>();
return v;
}
public boolean isDisableTimeStampsByDefault()
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: boolean disableTimeStampsByDefault>;
return v;
}
public void setDisableTimeStampsByDefault(boolean)
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v.<org.apache.activemq.ActiveMQConnection: boolean disableTimeStampsByDefault> = v;
return;
}
public boolean isOptimizedMessageDispatch()
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: boolean optimizedMessageDispatch>;
return v;
}
public void setOptimizedMessageDispatch(boolean)
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v.<org.apache.activemq.ActiveMQConnection: boolean optimizedMessageDispatch> = v;
return;
}
public int getCloseTimeout()
{
int v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: int closeTimeout>;
return v;
}
public void setCloseTimeout(int)
{
int v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: int;
v.<org.apache.activemq.ActiveMQConnection: int closeTimeout> = v;
return;
}
public org.apache.activemq.command.ConnectionInfo getConnectionInfo()
{
org.apache.activemq.command.ConnectionInfo v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
return v;
}
public boolean isUseRetroactiveConsumer()
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: boolean useRetroactiveConsumer>;
return v;
}
public void setUseRetroactiveConsumer(boolean)
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v.<org.apache.activemq.ActiveMQConnection: boolean useRetroactiveConsumer> = v;
return;
}
public boolean isNestedMapAndListEnabled()
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: boolean nestedMapAndListEnabled>;
return v;
}
public void setNestedMapAndListEnabled(boolean)
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v.<org.apache.activemq.ActiveMQConnection: boolean nestedMapAndListEnabled> = v;
return;
}
public boolean isExclusiveConsumer()
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: boolean exclusiveConsumer>;
return v;
}
public void setExclusiveConsumer(boolean)
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v.<org.apache.activemq.ActiveMQConnection: boolean exclusiveConsumer> = v;
return;
}
public void addTransportListener(org.apache.activemq.transport.TransportListener)
{
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.transport.TransportListener v;
java.util.concurrent.CopyOnWriteArrayList v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.transport.TransportListener;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList transportListeners>;
virtualinvoke v.<java.util.concurrent.CopyOnWriteArrayList: boolean add(java.lang.Object)>(v);
return;
}
public void removeTransportListener(org.apache.activemq.transport.TransportListener)
{
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.transport.TransportListener v;
java.util.concurrent.CopyOnWriteArrayList v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.transport.TransportListener;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList transportListeners>;
virtualinvoke v.<java.util.concurrent.CopyOnWriteArrayList: boolean remove(java.lang.Object)>(v);
return;
}
public boolean isUseDedicatedTaskRunner()
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: boolean useDedicatedTaskRunner>;
return v;
}
public void setUseDedicatedTaskRunner(boolean)
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v.<org.apache.activemq.ActiveMQConnection: boolean useDedicatedTaskRunner> = v;
return;
}
public org.apache.activemq.thread.TaskRunnerFactory getSessionTaskRunner()
{
java.lang.Throwable v;
org.apache.activemq.ActiveMQConnection v;
java.util.concurrent.RejectedExecutionHandler v;
org.apache.activemq.thread.TaskRunnerFactory v, v, v, v;
int v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
entermonitor v;
label:
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.thread.TaskRunnerFactory sessionTaskRunner>;
if v != null goto label;
v = new org.apache.activemq.thread.TaskRunnerFactory;
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: boolean isUseDedicatedTaskRunner()>();
v = v.<org.apache.activemq.ActiveMQConnection: int maxThreadPoolSize>;
specialinvoke v.<org.apache.activemq.thread.TaskRunnerFactory: void <init>(java.lang.String,int,boolean,int,boolean,int)>("ActiveMQ Session Task", 7, 0, 1000, v, v);
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.thread.TaskRunnerFactory sessionTaskRunner> = v;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.thread.TaskRunnerFactory sessionTaskRunner>;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.RejectedExecutionHandler rejectedTaskHandler>;
virtualinvoke v.<org.apache.activemq.thread.TaskRunnerFactory: void setRejectedTaskHandler(java.util.concurrent.RejectedExecutionHandler)>(v);
label:
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.thread.TaskRunnerFactory sessionTaskRunner>;
return v;
catch java.lang.Throwable from label to label with label;
}
public void setSessionTaskRunner(org.apache.activemq.thread.TaskRunnerFactory)
{
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.thread.TaskRunnerFactory v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.thread.TaskRunnerFactory;
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.thread.TaskRunnerFactory sessionTaskRunner> = v;
return;
}
public org.apache.activemq.MessageTransformer getTransformer()
{
org.apache.activemq.MessageTransformer v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.MessageTransformer transformer>;
return v;
}
public void setTransformer(org.apache.activemq.MessageTransformer)
{
org.apache.activemq.MessageTransformer v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.MessageTransformer;
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.MessageTransformer transformer> = v;
return;
}
public boolean isStatsEnabled()
{
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.management.JMSConnectionStatsImpl v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.management.JMSConnectionStatsImpl stats>;
v = virtualinvoke v.<org.apache.activemq.management.JMSConnectionStatsImpl: boolean isEnabled()>();
return v;
}
public void setStatsEnabled(boolean)
{
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.management.JMSConnectionStatsImpl v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.management.JMSConnectionStatsImpl stats>;
virtualinvoke v.<org.apache.activemq.management.JMSConnectionStatsImpl: void setEnabled(boolean)>(v);
return;
}
public org.apache.activemq.advisory.DestinationSource getDestinationSource() throws javax.jms.JMSException
{
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.advisory.DestinationSource v, v, v, v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.advisory.DestinationSource destinationSource>;
if v != null goto label;
v = new org.apache.activemq.advisory.DestinationSource;
specialinvoke v.<org.apache.activemq.advisory.DestinationSource: void <init>(javax.jms.Connection)>(v);
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.advisory.DestinationSource destinationSource> = v;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.advisory.DestinationSource destinationSource>;
virtualinvoke v.<org.apache.activemq.advisory.DestinationSource: void start()>();
label:
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.advisory.DestinationSource destinationSource>;
return v;
}
protected void addSession(org.apache.activemq.ActiveMQSession) throws javax.jms.JMSException
{
int v;
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.ActiveMQSession v;
boolean v;
java.util.concurrent.CopyOnWriteArrayList v, v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.ActiveMQSession;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList sessions>;
virtualinvoke v.<java.util.concurrent.CopyOnWriteArrayList: boolean add(java.lang.Object)>(v);
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList sessions>;
v = virtualinvoke v.<java.util.concurrent.CopyOnWriteArrayList: int size()>();
if v > 1 goto label;
v = virtualinvoke v.<org.apache.activemq.ActiveMQSession: boolean isTransacted()>();
if v == 0 goto label;
label:
v.<org.apache.activemq.ActiveMQConnection: boolean optimizedMessageDispatch> = 0;
label:
return;
}
protected void removeSession(org.apache.activemq.ActiveMQSession)
{
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.ActiveMQSession v;
java.util.concurrent.CopyOnWriteArrayList v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.ActiveMQSession;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList sessions>;
virtualinvoke v.<java.util.concurrent.CopyOnWriteArrayList: boolean remove(java.lang.Object)>(v);
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void removeDispatcher(org.apache.activemq.ActiveMQDispatcher)>(v);
return;
}
protected void addConnectionConsumer(org.apache.activemq.ActiveMQConnectionConsumer) throws javax.jms.JMSException
{
org.apache.activemq.ActiveMQConnectionConsumer v;
org.apache.activemq.ActiveMQConnection v;
java.util.concurrent.CopyOnWriteArrayList v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.ActiveMQConnectionConsumer;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList connectionConsumers>;
virtualinvoke v.<java.util.concurrent.CopyOnWriteArrayList: boolean add(java.lang.Object)>(v);
return;
}
protected void removeConnectionConsumer(org.apache.activemq.ActiveMQConnectionConsumer)
{
org.apache.activemq.ActiveMQConnectionConsumer v;
org.apache.activemq.ActiveMQConnection v;
java.util.concurrent.CopyOnWriteArrayList v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.ActiveMQConnectionConsumer;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList connectionConsumers>;
virtualinvoke v.<java.util.concurrent.CopyOnWriteArrayList: boolean remove(java.lang.Object)>(v);
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void removeDispatcher(org.apache.activemq.ActiveMQDispatcher)>(v);
return;
}
public javax.jms.TopicSession createTopicSession(boolean, int) throws javax.jms.JMSException
{
javax.jms.Session v;
int v;
org.apache.activemq.ActiveMQConnection v;
boolean v;
org.apache.activemq.ActiveMQTopicSession v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v := @parameter: int;
v = new org.apache.activemq.ActiveMQTopicSession;
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: javax.jms.Session createSession(boolean,int)>(v, v);
specialinvoke v.<org.apache.activemq.ActiveMQTopicSession: void <init>(javax.jms.TopicSession)>(v);
return v;
}
public javax.jms.ConnectionConsumer createConnectionConsumer(javax.jms.Topic, java.lang.String, javax.jms.ServerSessionPool, int) throws javax.jms.JMSException
{
javax.jms.ConnectionConsumer v;
int v;
javax.jms.Topic v;
java.lang.String v;
org.apache.activemq.ActiveMQConnection v;
javax.jms.ServerSessionPool v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: javax.jms.Topic;
v := @parameter: java.lang.String;
v := @parameter: javax.jms.ServerSessionPool;
v := @parameter: int;
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: javax.jms.ConnectionConsumer createConnectionConsumer(javax.jms.Destination,java.lang.String,javax.jms.ServerSessionPool,int,boolean)>(v, v, v, v, 0);
return v;
}
public javax.jms.ConnectionConsumer createConnectionConsumer(javax.jms.Queue, java.lang.String, javax.jms.ServerSessionPool, int) throws javax.jms.JMSException
{
javax.jms.Queue v;
javax.jms.ConnectionConsumer v;
int v;
java.lang.String v;
org.apache.activemq.ActiveMQConnection v;
javax.jms.ServerSessionPool v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: javax.jms.Queue;
v := @parameter: java.lang.String;
v := @parameter: javax.jms.ServerSessionPool;
v := @parameter: int;
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: javax.jms.ConnectionConsumer createConnectionConsumer(javax.jms.Destination,java.lang.String,javax.jms.ServerSessionPool,int,boolean)>(v, v, v, v, 0);
return v;
}
public javax.jms.ConnectionConsumer createConnectionConsumer(javax.jms.Destination, java.lang.String, javax.jms.ServerSessionPool, int) throws javax.jms.JMSException
{
javax.jms.ConnectionConsumer v;
javax.jms.Destination v;
int v;
java.lang.String v;
org.apache.activemq.ActiveMQConnection v;
javax.jms.ServerSessionPool v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: javax.jms.Destination;
v := @parameter: java.lang.String;
v := @parameter: javax.jms.ServerSessionPool;
v := @parameter: int;
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: javax.jms.ConnectionConsumer createConnectionConsumer(javax.jms.Destination,java.lang.String,javax.jms.ServerSessionPool,int,boolean)>(v, v, v, v, 0);
return v;
}
public javax.jms.ConnectionConsumer createConnectionConsumer(javax.jms.Destination, java.lang.String, javax.jms.ServerSessionPool, int, boolean) throws javax.jms.JMSException
{
org.apache.activemq.ActiveMQConnectionConsumer v;
java.util.HashMap v;
org.apache.activemq.command.ConsumerId v;
javax.jms.ServerSessionPool v;
java.util.Map v, v;
int v;
java.lang.String v;
org.apache.activemq.command.ConsumerInfo v;
boolean v, v;
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.command.ActiveMQDestination v, v, v;
javax.jms.Destination v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: javax.jms.Destination;
v := @parameter: java.lang.String;
v := @parameter: javax.jms.ServerSessionPool;
v := @parameter: int;
v := @parameter: boolean;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void checkClosedOrFailed()>();
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void ensureConnectionInfoSent()>();
v = specialinvoke v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConsumerId createConsumerId()>();
v = new org.apache.activemq.command.ConsumerInfo;
specialinvoke v.<org.apache.activemq.command.ConsumerInfo: void <init>(org.apache.activemq.command.ConsumerId)>(v);
v = staticinvoke <org.apache.activemq.ActiveMQMessageTransformation: org.apache.activemq.command.ActiveMQDestination transformDestination(javax.jms.Destination)>(v);
virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: void setDestination(org.apache.activemq.command.ActiveMQDestination)>(v);
virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: void setSelector(java.lang.String)>(v);
virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: void setPrefetchSize(int)>(v);
virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: void setNoLocal(boolean)>(v);
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: boolean isDispatchAsync()>();
virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: void setDispatchAsync(boolean)>(v);
v = virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: org.apache.activemq.command.ActiveMQDestination getDestination()>();
v = virtualinvoke v.<org.apache.activemq.command.ActiveMQDestination: java.util.Map getOptions()>();
if v == null goto label;
v = new java.util.HashMap;
v = virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: org.apache.activemq.command.ActiveMQDestination getDestination()>();
v = virtualinvoke v.<org.apache.activemq.command.ActiveMQDestination: java.util.Map getOptions()>();
specialinvoke v.<java.util.HashMap: void <init>(java.util.Map)>(v);
staticinvoke <org.apache.activemq.util.IntrospectionSupport: boolean setProperties(java.lang.Object,java.util.Map,java.lang.String)>(v, v, "consumer.");
label:
v = new org.apache.activemq.ActiveMQConnectionConsumer;
specialinvoke v.<org.apache.activemq.ActiveMQConnectionConsumer: void <init>(org.apache.activemq.ActiveMQConnection,javax.jms.ServerSessionPool,org.apache.activemq.command.ConsumerInfo)>(v, v, v);
return v;
}
private org.apache.activemq.command.ConsumerId createConsumerId()
{
org.apache.activemq.util.LongSequenceGenerator v;
org.apache.activemq.command.SessionId v;
long v;
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.command.ConsumerId v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = new org.apache.activemq.command.ConsumerId;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.SessionId connectionSessionId>;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.util.LongSequenceGenerator consumerIdGenerator>;
v = virtualinvoke v.<org.apache.activemq.util.LongSequenceGenerator: long getNextSequenceId()>();
specialinvoke v.<org.apache.activemq.command.ConsumerId: void <init>(org.apache.activemq.command.SessionId,long)>(v, v);
return v;
}
public javax.jms.QueueSession createQueueSession(boolean, int) throws javax.jms.JMSException
{
javax.jms.Session v;
int v;
org.apache.activemq.ActiveMQQueueSession v;
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v := @parameter: int;
v = new org.apache.activemq.ActiveMQQueueSession;
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: javax.jms.Session createSession(boolean,int)>(v, v);
specialinvoke v.<org.apache.activemq.ActiveMQQueueSession: void <init>(javax.jms.QueueSession)>(v);
return v;
}
public void checkClientIDWasManuallySpecified() throws javax.jms.JMSException
{
org.apache.activemq.ActiveMQConnection v;
javax.jms.JMSException v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: boolean userSpecifiedClientID>;
if v != 0 goto label;
v = new javax.jms.JMSException;
specialinvoke v.<javax.jms.JMSException: void <init>(java.lang.String)>("You cannot create a durable subscriber without specifying a unique clientID on a Connection");
throw v;
label:
return;
}
public void asyncSendPacket(org.apache.activemq.command.Command) throws javax.jms.JMSException
{
org.apache.activemq.ConnectionClosedException v;
org.apache.activemq.command.Command v;
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.command.Command;
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: boolean isClosed()>();
if v == 0 goto label;
v = new org.apache.activemq.ConnectionClosedException;
specialinvoke v.<org.apache.activemq.ConnectionClosedException: void <init>()>();
throw v;
label:
specialinvoke v.<org.apache.activemq.ActiveMQConnection: void doAsyncSendPacket(org.apache.activemq.command.Command)>(v);
return;
}
private void doAsyncSendPacket(org.apache.activemq.command.Command) throws javax.jms.JMSException
{
org.apache.activemq.command.Command v;
java.io.IOException v;
org.apache.activemq.transport.Transport v;
org.apache.activemq.ActiveMQConnection v;
javax.jms.JMSException v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.command.Command;
label:
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.transport.Transport transport>;
interfaceinvoke v.<org.apache.activemq.transport.Transport: void oneway(java.lang.Object)>(v);
label:
goto label;
label:
v := @caughtexception;
v = staticinvoke <org.apache.activemq.util.JMSExceptionSupport: javax.jms.JMSException create(java.lang.Exception)>(v);
throw v;
label:
return;
catch java.io.IOException from label to label with label;
}
public void syncSendPacket(org.apache.activemq.command.Command, org.apache.activemq.AsyncCallback) throws javax.jms.JMSException
{
org.apache.activemq.ConnectionClosedException v;
org.apache.activemq.ActiveMQConnection$2 v;
org.apache.activemq.command.Command v;
org.apache.activemq.AsyncCallback v;
java.io.IOException v;
org.apache.activemq.transport.Transport v;
org.apache.activemq.ActiveMQConnection v;
javax.jms.JMSException v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.command.Command;
v := @parameter: org.apache.activemq.AsyncCallback;
if v != null goto label;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.Response syncSendPacket(org.apache.activemq.command.Command)>(v);
goto label;
label:
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: boolean isClosed()>();
if v == 0 goto label;
v = new org.apache.activemq.ConnectionClosedException;
specialinvoke v.<org.apache.activemq.ConnectionClosedException: void <init>()>();
throw v;
label:
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.transport.Transport transport>;
v = new org.apache.activemq.ActiveMQConnection$2;
specialinvoke v.<org.apache.activemq.ActiveMQConnection$2: void <init>(org.apache.activemq.ActiveMQConnection,org.apache.activemq.AsyncCallback,org.apache.activemq.command.Command)>(v, v, v);
interfaceinvoke v.<org.apache.activemq.transport.Transport: org.apache.activemq.transport.FutureResponse asyncRequest(java.lang.Object,org.apache.activemq.transport.ResponseCallback)>(v, v);
label:
goto label;
label:
v := @caughtexception;
v = staticinvoke <org.apache.activemq.util.JMSExceptionSupport: javax.jms.JMSException create(java.lang.Exception)>(v);
throw v;
label:
return;
catch java.io.IOException from label to label with label;
}
private void forceCloseOnSecurityException(java.lang.Throwable)
{
java.lang.Throwable v;
java.lang.Object[] v;
org.slf4j.Logger v;
java.io.IOException v;
org.apache.activemq.transport.Transport v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: java.lang.Throwable;
v = <org.apache.activemq.ActiveMQConnection: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[3];
v[0] = v;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.transport.Transport transport>;
v[1] = v;
v[2] = v;
interfaceinvoke v.<org.slf4j.Logger: void trace(java.lang.String,java.lang.Object[])>("force close on security exception:{}, transport={}", v);
v = new java.io.IOException;
specialinvoke v.<java.io.IOException: void <init>(java.lang.String,java.lang.Throwable)>("Force close due to SecurityException on connect", v);
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void onException(java.io.IOException)>(v);
return;
}
public org.apache.activemq.command.Response syncSendPacket(org.apache.activemq.command.Command, int) throws javax.jms.JMSException
{
java.lang.Throwable v, v, v, v, v, v, v;
org.apache.activemq.command.Response v;
java.util.concurrent.atomic.AtomicBoolean v;
int v;
java.lang.String v;
boolean v, v, v, v, v, v, v;
org.apache.activemq.ConnectionClosedException v;
org.slf4j.Logger v, v;
org.apache.activemq.command.Command v;
java.io.IOException v;
org.apache.activemq.transport.Transport v, v;
org.apache.activemq.ActiveMQConnection v;
javax.jms.JMSException v, v, v;
java.lang.Object v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.command.Command;
v := @parameter: int;
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: boolean isClosed()>();
if v == 0 goto label;
v = new org.apache.activemq.ConnectionClosedException;
specialinvoke v.<org.apache.activemq.ConnectionClosedException: void <init>()>();
throw v;
label:
if v <= 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.transport.Transport transport>;
v = interfaceinvoke v.<org.apache.activemq.transport.Transport: java.lang.Object request(java.lang.Object,int)>(v, v);
goto label;
label:
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.transport.Transport transport>;
v = interfaceinvoke v.<org.apache.activemq.transport.Transport: java.lang.Object request(java.lang.Object)>(v);
label:
v = virtualinvoke v.<org.apache.activemq.command.Response: boolean isException()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.activemq.command.ExceptionResponse: java.lang.Throwable getException()>();
v = v instanceof javax.jms.JMSException;
if v == 0 goto label;
virtualinvoke v.<org.apache.activemq.command.ExceptionResponse: java.lang.Throwable getException()>();
throw v;
label:
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: boolean isClosed()>();
if v != 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean closing>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
if v == 0 goto label;
label:
v = <org.apache.activemq.ActiveMQConnection: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>("Received an exception but connection is closing");
label:
v = null;
label:
v = virtualinvoke v.<org.apache.activemq.command.ExceptionResponse: java.lang.Throwable getException()>();
v = staticinvoke <org.apache.activemq.util.JMSExceptionSupport: javax.jms.JMSException create(java.lang.Throwable)>(v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.activemq.ActiveMQConnection: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.activemq.command.ExceptionResponse: java.lang.Throwable getException()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.Throwable)>(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[])>("Caught an exception trying to create a JMSException for \u0001");
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>(v, v);
label:
v = virtualinvoke v.<org.apache.activemq.command.ExceptionResponse: java.lang.Throwable getException()>();
v = v instanceof java.lang.SecurityException;
if v == 0 goto label;
v = v instanceof org.apache.activemq.command.ConnectionInfo;
if v == 0 goto label;
label:
v = virtualinvoke v.<org.apache.activemq.command.ExceptionResponse: java.lang.Throwable getException()>();
specialinvoke v.<org.apache.activemq.ActiveMQConnection: void forceCloseOnSecurityException(java.lang.Throwable)>(v);
label:
goto label;
label:
v := @caughtexception;
label:
if v == null goto label;
throw v;
label:
return v;
label:
v := @caughtexception;
v = staticinvoke <org.apache.activemq.util.JMSExceptionSupport: javax.jms.JMSException create(java.lang.Exception)>(v);
throw v;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.io.IOException from label to label with label;
}
public org.apache.activemq.command.Response syncSendPacket(org.apache.activemq.command.Command) throws javax.jms.JMSException
{
org.apache.activemq.command.Response v;
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.command.Command v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.command.Command;
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.Response syncSendPacket(org.apache.activemq.command.Command,int)>(v, 0);
return v;
}
public org.apache.activemq.management.StatsImpl getStats()
{
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.management.JMSConnectionStatsImpl v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.management.JMSConnectionStatsImpl stats>;
return v;
}
protected synchronized void checkClosedOrFailed() throws javax.jms.JMSException
{
org.apache.activemq.ConnectionFailedException v;
java.util.concurrent.atomic.AtomicBoolean v;
java.io.IOException v;
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void checkClosed()>();
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean transportFailed>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
if v == 0 goto label;
v = new org.apache.activemq.ConnectionFailedException;
v = v.<org.apache.activemq.ActiveMQConnection: java.io.IOException firstFailureError>;
specialinvoke v.<org.apache.activemq.ConnectionFailedException: void <init>(java.io.IOException)>(v);
throw v;
label:
return;
}
protected synchronized void checkClosed() throws javax.jms.JMSException
{
org.apache.activemq.ConnectionClosedException v;
java.util.concurrent.atomic.AtomicBoolean v;
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean closed>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
if v == 0 goto label;
v = new org.apache.activemq.ConnectionClosedException;
specialinvoke v.<org.apache.activemq.ConnectionClosedException: void <init>()>();
throw v;
label:
return;
}
protected void ensureConnectionInfoSent() throws javax.jms.JMSException
{
java.lang.Throwable v;
java.util.concurrent.atomic.AtomicBoolean v;
long v;
org.apache.activemq.command.ConsumerId v;
org.apache.activemq.command.ConnectionInfo v, v, v, v, v, v;
int v, v;
java.lang.String v, v, v, v;
boolean v, v, v;
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.command.SessionId v;
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.AdvisoryConsumer v;
org.apache.activemq.util.LongSequenceGenerator v;
java.lang.Object v;
org.apache.activemq.util.IdGenerator v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: java.lang.Object ensureConnectionInfoSentMutex>;
entermonitor v;
label:
v = v.<org.apache.activemq.ActiveMQConnection: boolean isConnectionInfoSentToBroker>;
if v != 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean closed>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
if v == 0 goto label;
label:
exitmonitor v;
label:
return;
label:
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: java.lang.String getClientId()>();
if v == null goto label;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: java.lang.String getClientId()>();
v = virtualinvoke v.<java.lang.String: java.lang.String trim()>();
v = virtualinvoke v.<java.lang.String: int length()>();
if v != 0 goto label;
label:
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.util.IdGenerator clientIdGenerator>;
v = virtualinvoke v.<org.apache.activemq.util.IdGenerator: java.lang.String generateId()>();
virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: void setClientId(java.lang.String)>(v);
label:
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: org.apache.activemq.command.ConnectionInfo copy()>();
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: int getConnectResponseTimeout()>();
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.Response syncSendPacket(org.apache.activemq.command.Command,int)>(v, v);
v.<org.apache.activemq.ActiveMQConnection: boolean isConnectionInfoSentToBroker> = 1;
v = new org.apache.activemq.command.ConsumerId;
v = new org.apache.activemq.command.SessionId;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
specialinvoke v.<org.apache.activemq.command.SessionId: void <init>(org.apache.activemq.command.ConnectionId,long)>(v, -1L);
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.util.LongSequenceGenerator consumerIdGenerator>;
v = virtualinvoke v.<org.apache.activemq.util.LongSequenceGenerator: long getNextSequenceId()>();
specialinvoke v.<org.apache.activemq.command.ConsumerId: void <init>(org.apache.activemq.command.SessionId,long)>(v, v);
v = v.<org.apache.activemq.ActiveMQConnection: boolean watchTopicAdvisories>;
if v == 0 goto label;
v = new org.apache.activemq.AdvisoryConsumer;
specialinvoke v.<org.apache.activemq.AdvisoryConsumer: void <init>(org.apache.activemq.ActiveMQConnection,org.apache.activemq.command.ConsumerId)>(v, v);
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.AdvisoryConsumer advisoryConsumer> = v;
label:
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public synchronized boolean isWatchTopicAdvisories()
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: boolean watchTopicAdvisories>;
return v;
}
public synchronized void setWatchTopicAdvisories(boolean)
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v.<org.apache.activemq.ActiveMQConnection: boolean watchTopicAdvisories> = v;
return;
}
public boolean isUseAsyncSend()
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: boolean useAsyncSend>;
return v;
}
public void setUseAsyncSend(boolean)
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v.<org.apache.activemq.ActiveMQConnection: boolean useAsyncSend> = v;
return;
}
public boolean isAlwaysSyncSend()
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: boolean alwaysSyncSend>;
return v;
}
public void setAlwaysSyncSend(boolean)
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v.<org.apache.activemq.ActiveMQConnection: boolean alwaysSyncSend> = v;
return;
}
public boolean isMessagePrioritySupported()
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: boolean messagePrioritySupported>;
return v;
}
public void setMessagePrioritySupported(boolean)
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v.<org.apache.activemq.ActiveMQConnection: boolean messagePrioritySupported> = v;
return;
}
public void cleanup() throws javax.jms.JMSException
{
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void doCleanup(boolean)>(0);
return;
}
public boolean isUserSpecifiedClientID()
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: boolean userSpecifiedClientID>;
return v;
}
public void doCleanup(boolean) throws javax.jms.JMSException
{
java.util.concurrent.atomic.AtomicBoolean v, v, v;
org.apache.activemq.command.RemoveInfo v;
org.apache.activemq.command.ConnectionInfo v, v;
boolean v, v, v, v, v, v, v, v;
java.util.Iterator v, v;
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.AdvisoryConsumer v, v;
java.lang.Object v, v;
java.util.concurrent.CopyOnWriteArrayList v, v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.AdvisoryConsumer advisoryConsumer>;
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: boolean isTransportFailed()>();
if v != 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.AdvisoryConsumer advisoryConsumer>;
virtualinvoke v.<org.apache.activemq.AdvisoryConsumer: void dispose()>();
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.AdvisoryConsumer advisoryConsumer> = null;
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList sessions>;
v = virtualinvoke v.<java.util.concurrent.CopyOnWriteArrayList: 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()>();
virtualinvoke v.<org.apache.activemq.ActiveMQSession: void dispose()>();
goto label;
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList connectionConsumers>;
v = virtualinvoke v.<java.util.concurrent.CopyOnWriteArrayList: 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()>();
virtualinvoke v.<org.apache.activemq.ActiveMQConnectionConsumer: void dispose()>();
goto label;
label:
if v == 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: boolean isConnectionInfoSentToBroker>;
if v == 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean transportFailed>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
if v != 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean closing>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
if v != 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: org.apache.activemq.command.RemoveInfo createRemoveCommand()>();
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.Response syncSendPacket(org.apache.activemq.command.Command)>(v);
label:
v.<org.apache.activemq.ActiveMQConnection: boolean isConnectionInfoSentToBroker> = 0;
label:
v = v.<org.apache.activemq.ActiveMQConnection: boolean userSpecifiedClientID>;
if v == 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: void setClientId(java.lang.String)>(null);
v.<org.apache.activemq.ActiveMQConnection: boolean userSpecifiedClientID> = 0;
label:
v.<org.apache.activemq.ActiveMQConnection: boolean clientIDSet> = 0;
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean started>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void set(boolean)>(0);
return;
}
public void changeUserInfo(java.lang.String, java.lang.String) throws javax.jms.JMSException
{
org.apache.activemq.command.ConnectionInfo v, v;
java.lang.String v, v;
javax.jms.IllegalStateException v;
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v = v.<org.apache.activemq.ActiveMQConnection: boolean isConnectionInfoSentToBroker>;
if v == 0 goto label;
v = new javax.jms.IllegalStateException;
specialinvoke v.<javax.jms.IllegalStateException: void <init>(java.lang.String)>("changeUserInfo used Connection is not allowed");
throw v;
label:
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: void setUserName(java.lang.String)>(v);
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: void setPassword(java.lang.String)>(v);
return;
}
public java.lang.String getResourceManagerId() throws javax.jms.JMSException
{
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.ActiveMQConnection v;
javax.jms.JMSException v;
org.apache.activemq.command.ConnectionInfo v;
org.apache.activemq.command.BrokerInfo v, v;
org.apache.activemq.command.BrokerId v;
java.lang.String v, v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: boolean isRmIdFromConnectionId()>();
if v == 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
v = virtualinvoke v.<org.apache.activemq.command.ConnectionId: java.lang.String getValue()>();
return v;
label:
specialinvoke v.<org.apache.activemq.ActiveMQConnection: void waitForBrokerInfo()>();
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.BrokerInfo brokerInfo>;
if v != null goto label;
v = new javax.jms.JMSException;
specialinvoke v.<javax.jms.JMSException: void <init>(java.lang.String)>("Connection failed before Broker info was received.");
throw v;
label:
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.BrokerInfo brokerInfo>;
v = virtualinvoke v.<org.apache.activemq.command.BrokerInfo: org.apache.activemq.command.BrokerId getBrokerId()>();
v = virtualinvoke v.<org.apache.activemq.command.BrokerId: java.lang.String getValue()>();
return v;
}
public java.lang.String getBrokerName()
{
org.apache.activemq.ActiveMQConnection v;
java.util.concurrent.TimeUnit v;
java.util.concurrent.CountDownLatch v;
java.lang.InterruptedException v;
org.apache.activemq.command.BrokerInfo v, v;
java.lang.Thread v;
java.lang.String v;
v := @this: org.apache.activemq.ActiveMQConnection;
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CountDownLatch brokerInfoReceived>;
v = <java.util.concurrent.TimeUnit: java.util.concurrent.TimeUnit SECONDS>;
virtualinvoke v.<java.util.concurrent.CountDownLatch: boolean await(long,java.util.concurrent.TimeUnit)>(5L, v);
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.BrokerInfo brokerInfo>;
if v != null goto label;
label:
return null;
label:
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.BrokerInfo brokerInfo>;
v = virtualinvoke v.<org.apache.activemq.command.BrokerInfo: java.lang.String getBrokerName()>();
label:
return v;
label:
v := @caughtexception;
v = staticinvoke <java.lang.Thread: java.lang.Thread currentThread()>();
virtualinvoke v.<java.lang.Thread: void interrupt()>();
return null;
catch java.lang.InterruptedException from label to label with label;
catch java.lang.InterruptedException from label to label with label;
}
public org.apache.activemq.command.BrokerInfo getBrokerInfo()
{
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.command.BrokerInfo v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.BrokerInfo brokerInfo>;
return v;
}
public org.apache.activemq.RedeliveryPolicy getRedeliveryPolicy() throws javax.jms.JMSException
{
org.apache.activemq.RedeliveryPolicy v;
org.apache.activemq.broker.region.policy.RedeliveryPolicyMap v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.broker.region.policy.RedeliveryPolicyMap redeliveryPolicyMap>;
v = virtualinvoke v.<org.apache.activemq.broker.region.policy.RedeliveryPolicyMap: org.apache.activemq.RedeliveryPolicy getDefaultEntry()>();
return v;
}
public void setRedeliveryPolicy(org.apache.activemq.RedeliveryPolicy)
{
org.apache.activemq.RedeliveryPolicy v;
org.apache.activemq.broker.region.policy.RedeliveryPolicyMap v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.RedeliveryPolicy;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.broker.region.policy.RedeliveryPolicyMap redeliveryPolicyMap>;
virtualinvoke v.<org.apache.activemq.broker.region.policy.RedeliveryPolicyMap: void setDefaultEntry(org.apache.activemq.RedeliveryPolicy)>(v);
return;
}
public org.apache.activemq.blob.BlobTransferPolicy getBlobTransferPolicy()
{
org.apache.activemq.blob.BlobTransferPolicy v, v, v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.blob.BlobTransferPolicy blobTransferPolicy>;
if v != null goto label;
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.blob.BlobTransferPolicy createBlobTransferPolicy()>();
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.blob.BlobTransferPolicy blobTransferPolicy> = v;
label:
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.blob.BlobTransferPolicy blobTransferPolicy>;
return v;
}
public void setBlobTransferPolicy(org.apache.activemq.blob.BlobTransferPolicy)
{
org.apache.activemq.blob.BlobTransferPolicy v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.blob.BlobTransferPolicy;
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.blob.BlobTransferPolicy blobTransferPolicy> = v;
return;
}
public boolean isAlwaysSessionAsync()
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: boolean alwaysSessionAsync>;
return v;
}
public void setAlwaysSessionAsync(boolean)
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v.<org.apache.activemq.ActiveMQConnection: boolean alwaysSessionAsync> = v;
return;
}
public boolean isOptimizeAcknowledge()
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: boolean optimizeAcknowledge>;
return v;
}
public void setOptimizeAcknowledge(boolean)
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v.<org.apache.activemq.ActiveMQConnection: boolean optimizeAcknowledge> = v;
return;
}
public void setOptimizeAcknowledgeTimeOut(long)
{
long v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: long;
v.<org.apache.activemq.ActiveMQConnection: long optimizeAcknowledgeTimeOut> = v;
return;
}
public long getOptimizeAcknowledgeTimeOut()
{
long v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: long optimizeAcknowledgeTimeOut>;
return v;
}
public long getWarnAboutUnstartedConnectionTimeout()
{
long v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: long warnAboutUnstartedConnectionTimeout>;
return v;
}
public void setWarnAboutUnstartedConnectionTimeout(long)
{
long v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: long;
v.<org.apache.activemq.ActiveMQConnection: long warnAboutUnstartedConnectionTimeout> = v;
return;
}
public int getSendTimeout()
{
int v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: int sendTimeout>;
return v;
}
public void setSendTimeout(int)
{
int v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: int;
v.<org.apache.activemq.ActiveMQConnection: int sendTimeout> = v;
return;
}
public boolean isSendAcksAsync()
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: boolean sendAcksAsync>;
return v;
}
public void setSendAcksAsync(boolean)
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v.<org.apache.activemq.ActiveMQConnection: boolean sendAcksAsync> = v;
return;
}
public long getTimeCreated()
{
long v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: long timeCreated>;
return v;
}
private void waitForBrokerInfo() throws javax.jms.JMSException
{
java.util.concurrent.CountDownLatch v;
java.lang.InterruptedException v;
java.lang.Thread v;
org.apache.activemq.ActiveMQConnection v;
javax.jms.JMSException v;
v := @this: org.apache.activemq.ActiveMQConnection;
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CountDownLatch brokerInfoReceived>;
virtualinvoke v.<java.util.concurrent.CountDownLatch: void await()>();
label:
goto label;
label:
v := @caughtexception;
v = staticinvoke <java.lang.Thread: java.lang.Thread currentThread()>();
virtualinvoke v.<java.lang.Thread: void interrupt()>();
v = staticinvoke <org.apache.activemq.util.JMSExceptionSupport: javax.jms.JMSException create(java.lang.Exception)>(v);
throw v;
label:
return;
catch java.lang.InterruptedException from label to label with label;
}
public org.apache.activemq.transport.Transport getTransport()
{
org.apache.activemq.transport.Transport v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.transport.Transport transport>;
return v;
}
public void addProducer(org.apache.activemq.command.ProducerId, org.apache.activemq.ActiveMQMessageProducer)
{
org.apache.activemq.command.ProducerId v;
org.apache.activemq.ActiveMQMessageProducer v;
org.apache.activemq.ActiveMQConnection v;
java.util.concurrent.ConcurrentMap v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.command.ProducerId;
v := @parameter: org.apache.activemq.ActiveMQMessageProducer;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ConcurrentMap producers>;
interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
return;
}
public void removeProducer(org.apache.activemq.command.ProducerId)
{
org.apache.activemq.command.ProducerId v;
org.apache.activemq.ActiveMQConnection v;
java.util.concurrent.ConcurrentMap v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.command.ProducerId;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ConcurrentMap producers>;
interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object remove(java.lang.Object)>(v);
return;
}
public void addDispatcher(org.apache.activemq.command.ConsumerId, org.apache.activemq.ActiveMQDispatcher)
{
org.apache.activemq.ActiveMQDispatcher v;
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.command.ConsumerId v;
java.util.concurrent.ConcurrentMap v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.command.ConsumerId;
v := @parameter: org.apache.activemq.ActiveMQDispatcher;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ConcurrentMap dispatchers>;
interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
return;
}
public void removeDispatcher(org.apache.activemq.command.ConsumerId)
{
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.command.ConsumerId v;
java.util.concurrent.ConcurrentMap v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.command.ConsumerId;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ConcurrentMap dispatchers>;
interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object remove(java.lang.Object)>(v);
return;
}
public boolean hasDispatcher(org.apache.activemq.command.ConsumerId)
{
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.command.ConsumerId v;
boolean v;
java.util.concurrent.ConcurrentMap v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.command.ConsumerId;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ConcurrentMap dispatchers>;
v = interfaceinvoke v.<java.util.concurrent.ConcurrentMap: boolean containsKey(java.lang.Object)>(v);
return v;
}
public void onCommand(java.lang.Object)
{
org.apache.activemq.ActiveMQConnection$3 v;
java.util.Iterator v;
java.util.concurrent.atomic.AtomicBoolean v;
org.apache.activemq.ActiveMQConnection v;
java.lang.Exception v;
java.lang.Object v, v;
boolean v, v;
java.util.concurrent.CopyOnWriteArrayList v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: java.lang.Object;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean closed>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
if v != 0 goto label;
if v == null goto label;
label:
v = new org.apache.activemq.ActiveMQConnection$3;
specialinvoke v.<org.apache.activemq.ActiveMQConnection$3: void <init>(org.apache.activemq.ActiveMQConnection,org.apache.activemq.command.Command)>(v, v);
interfaceinvoke v.<org.apache.activemq.command.Command: org.apache.activemq.command.Response visit(org.apache.activemq.state.CommandVisitor)>(v);
label:
goto label;
label:
v := @caughtexception;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void onClientInternalException(java.lang.Throwable)>(v);
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList transportListeners>;
v = virtualinvoke v.<java.util.concurrent.CopyOnWriteArrayList: 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.TransportListener: void onCommand(java.lang.Object)>(v);
goto label;
label:
return;
catch java.lang.Exception from label to label with label;
}
protected void onWireFormatInfo(org.apache.activemq.command.WireFormatInfo)
{
java.io.IOException v;
long v;
org.apache.activemq.ActiveMQConnection v;
java.util.concurrent.atomic.AtomicLong v;
byte v;
java.util.concurrent.atomic.AtomicInteger v;
int v;
org.apache.activemq.command.WireFormatInfo v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.command.WireFormatInfo;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicInteger protocolVersion>;
v = virtualinvoke v.<org.apache.activemq.command.WireFormatInfo: int getVersion()>();
virtualinvoke v.<java.util.concurrent.atomic.AtomicInteger: void set(int)>(v);
v = 0L;
label:
v = virtualinvoke v.<org.apache.activemq.command.WireFormatInfo: long getMaxFrameSize()>();
label:
goto label;
label:
v := @caughtexception;
label:
v = v cmp 0L;
if v <= 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicLong maxFrameSize>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: void set(long)>(v);
label:
return;
catch java.io.IOException from label to label with label;
}
public void onClientInternalException(java.lang.Throwable)
{
java.lang.Throwable v;
org.apache.activemq.ActiveMQConnection$4 v;
org.slf4j.Logger v;
java.util.concurrent.ThreadPoolExecutor v;
java.util.concurrent.atomic.AtomicBoolean v, v;
org.apache.activemq.ClientInternalExceptionListener v;
org.apache.activemq.ActiveMQConnection v;
boolean v, v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: java.lang.Throwable;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean closed>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
if v != 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean closing>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
if v != 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.ClientInternalExceptionListener clientInternalExceptionListener>;
if v == null goto label;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ThreadPoolExecutor executor>;
v = new org.apache.activemq.ActiveMQConnection$4;
specialinvoke v.<org.apache.activemq.ActiveMQConnection$4: void <init>(org.apache.activemq.ActiveMQConnection,java.lang.Throwable)>(v, v);
virtualinvoke v.<java.util.concurrent.ThreadPoolExecutor: void execute(java.lang.Runnable)>(v);
goto label;
label:
v = <org.apache.activemq.ActiveMQConnection: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object,java.lang.Object)>("Async client internal exception occurred with no exception listener registered: {}", v, v);
label:
return;
}
public void onAsyncException(java.lang.Throwable)
{
org.apache.activemq.ActiveMQConnection$5 v;
org.slf4j.Logger v;
java.util.concurrent.ThreadPoolExecutor v;
java.util.concurrent.atomic.AtomicBoolean v, v;
org.apache.activemq.ActiveMQConnection v;
javax.jms.ExceptionListener v;
java.lang.Object v;
boolean v, v, v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: java.lang.Throwable;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean closed>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
if v != 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean closing>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
if v != 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: javax.jms.ExceptionListener exceptionListener>;
if v == null goto label;
v = v instanceof javax.jms.JMSException;
if v != 0 goto label;
v = staticinvoke <org.apache.activemq.util.JMSExceptionSupport: javax.jms.JMSException create(java.lang.Throwable)>(v);
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ThreadPoolExecutor executor>;
v = new org.apache.activemq.ActiveMQConnection$5;
specialinvoke v.<org.apache.activemq.ActiveMQConnection$5: void <init>(org.apache.activemq.ActiveMQConnection,javax.jms.JMSException)>(v, v);
virtualinvoke v.<java.util.concurrent.ThreadPoolExecutor: void execute(java.lang.Runnable)>(v);
goto label;
label:
v = <org.apache.activemq.ActiveMQConnection: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object,java.lang.Object)>("Async exception with no exception listener: {}", v, v);
label:
return;
}
public void onException(java.io.IOException)
{
java.util.concurrent.ThreadPoolExecutor v;
java.util.concurrent.atomic.AtomicBoolean v, v;
java.io.IOException v;
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.ActiveMQConnection$6 v;
boolean v, v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: java.io.IOException;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void onAsyncException(java.lang.Throwable)>(v);
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean closed>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
if v != 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean closing>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
if v != 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ThreadPoolExecutor executor>;
v = new org.apache.activemq.ActiveMQConnection$6;
specialinvoke v.<org.apache.activemq.ActiveMQConnection$6: void <init>(org.apache.activemq.ActiveMQConnection,java.io.IOException)>(v, v);
virtualinvoke v.<java.util.concurrent.ThreadPoolExecutor: void execute(java.lang.Runnable)>(v);
label:
return;
}
public void transportInterupted()
{
java.util.concurrent.atomic.AtomicInteger v, v, v, v, v;
int v, v;
java.lang.String v;
boolean v, v, v, v;
org.slf4j.Logger v, v;
java.util.Iterator v, v, v;
org.apache.activemq.ActiveMQConnection v;
java.lang.Object v, v, v;
java.util.concurrent.CopyOnWriteArrayList v, v, v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicInteger transportInterruptionProcessingComplete>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicInteger: void set(int)>(1);
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList sessions>;
v = virtualinvoke v.<java.util.concurrent.CopyOnWriteArrayList: 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.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicInteger transportInterruptionProcessingComplete>;
virtualinvoke v.<org.apache.activemq.ActiveMQSession: void clearMessagesInProgress(java.util.concurrent.atomic.AtomicInteger)>(v);
goto label;
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList connectionConsumers>;
v = virtualinvoke v.<java.util.concurrent.CopyOnWriteArrayList: 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.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicInteger transportInterruptionProcessingComplete>;
virtualinvoke v.<org.apache.activemq.ActiveMQConnectionConsumer: void clearMessagesInProgress(java.util.concurrent.atomic.AtomicInteger)>(v);
goto label;
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicInteger transportInterruptionProcessingComplete>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicInteger: int decrementAndGet()>();
if v <= 0 goto label;
v = <org.apache.activemq.ActiveMQConnection: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.activemq.ActiveMQConnection: org.slf4j.Logger LOG>;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicInteger transportInterruptionProcessingComplete>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicInteger: int get()>();
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[])>("transport interrupted - processing required, dispatchers: \u0001");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>(v);
label:
specialinvoke v.<org.apache.activemq.ActiveMQConnection: void signalInterruptionProcessingNeeded()>();
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList transportListeners>;
v = virtualinvoke v.<java.util.concurrent.CopyOnWriteArrayList: 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.TransportListener: void transportInterupted()>();
goto label;
label:
return;
}
public void transportResumed()
{
java.util.Iterator v;
java.lang.Object v;
org.apache.activemq.ActiveMQConnection v;
boolean v;
java.util.concurrent.CopyOnWriteArrayList v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList transportListeners>;
v = virtualinvoke v.<java.util.concurrent.CopyOnWriteArrayList: 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.TransportListener: void transportResumed()>();
goto label;
label:
return;
}
protected org.apache.activemq.command.ActiveMQTempDestination createTempDestination(boolean) throws javax.jms.JMSException
{
org.apache.activemq.command.ActiveMQTempDestination v;
org.apache.activemq.command.ActiveMQTempQueue v;
long v, v;
org.apache.activemq.command.ActiveMQTempTopic v;
java.util.concurrent.ConcurrentMap v;
org.apache.activemq.command.ConnectionInfo v, v, v;
org.apache.activemq.command.DestinationInfo v;
boolean v;
org.apache.activemq.command.ConnectionId v, v, v;
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.util.LongSequenceGenerator v, v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
if v == 0 goto label;
v = new org.apache.activemq.command.ActiveMQTempTopic;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.util.LongSequenceGenerator tempDestinationIdGenerator>;
v = virtualinvoke v.<org.apache.activemq.util.LongSequenceGenerator: long getNextSequenceId()>();
specialinvoke v.<org.apache.activemq.command.ActiveMQTempTopic: void <init>(org.apache.activemq.command.ConnectionId,long)>(v, v);
v = v;
goto label;
label:
v = new org.apache.activemq.command.ActiveMQTempQueue;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.util.LongSequenceGenerator tempDestinationIdGenerator>;
v = virtualinvoke v.<org.apache.activemq.util.LongSequenceGenerator: long getNextSequenceId()>();
specialinvoke v.<org.apache.activemq.command.ActiveMQTempQueue: void <init>(org.apache.activemq.command.ConnectionId,long)>(v, v);
v = v;
label:
v = new org.apache.activemq.command.DestinationInfo;
specialinvoke v.<org.apache.activemq.command.DestinationInfo: void <init>()>();
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
virtualinvoke v.<org.apache.activemq.command.DestinationInfo: void setConnectionId(org.apache.activemq.command.ConnectionId)>(v);
virtualinvoke v.<org.apache.activemq.command.DestinationInfo: void setOperationType(byte)>(0);
virtualinvoke v.<org.apache.activemq.command.DestinationInfo: void setDestination(org.apache.activemq.command.ActiveMQDestination)>(v);
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.Response syncSendPacket(org.apache.activemq.command.Command)>(v);
virtualinvoke v.<org.apache.activemq.command.ActiveMQTempDestination: void setConnection(org.apache.activemq.ActiveMQConnection)>(v);
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ConcurrentMap activeTempDestinations>;
interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
return v;
}
public void deleteTempDestination(org.apache.activemq.command.ActiveMQTempDestination) throws javax.jms.JMSException
{
java.util.Iterator v;
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.command.ActiveMQTempDestination v;
org.apache.activemq.ActiveMQConnection v;
javax.jms.JMSException v;
java.util.concurrent.ConcurrentMap v;
org.apache.activemq.command.ConnectionInfo v;
java.lang.Object v;
org.apache.activemq.command.DestinationInfo v;
boolean v, v;
java.util.concurrent.CopyOnWriteArrayList v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.command.ActiveMQTempDestination;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void checkClosedOrFailed()>();
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList sessions>;
v = virtualinvoke v.<java.util.concurrent.CopyOnWriteArrayList: 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.ActiveMQSession: boolean isInUse(org.apache.activemq.command.ActiveMQTempDestination)>(v);
if v == 0 goto label;
v = new javax.jms.JMSException;
specialinvoke v.<javax.jms.JMSException: void <init>(java.lang.String)>("A consumer is consuming from the temporary destination");
throw v;
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ConcurrentMap activeTempDestinations>;
interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object remove(java.lang.Object)>(v);
v = new org.apache.activemq.command.DestinationInfo;
specialinvoke v.<org.apache.activemq.command.DestinationInfo: void <init>()>();
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
virtualinvoke v.<org.apache.activemq.command.DestinationInfo: void setConnectionId(org.apache.activemq.command.ConnectionId)>(v);
virtualinvoke v.<org.apache.activemq.command.DestinationInfo: void setOperationType(byte)>(1);
virtualinvoke v.<org.apache.activemq.command.DestinationInfo: void setDestination(org.apache.activemq.command.ActiveMQDestination)>(v);
virtualinvoke v.<org.apache.activemq.command.DestinationInfo: void setTimeout(long)>(0L);
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.Response syncSendPacket(org.apache.activemq.command.Command)>(v);
return;
}
public boolean isDeleted(org.apache.activemq.command.ActiveMQDestination)
{
org.apache.activemq.AdvisoryConsumer v;
org.apache.activemq.ActiveMQConnection v;
boolean v, v;
java.util.concurrent.ConcurrentMap v;
org.apache.activemq.command.ActiveMQDestination v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.command.ActiveMQDestination;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.AdvisoryConsumer advisoryConsumer>;
if v != null goto label;
return 0;
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ConcurrentMap activeTempDestinations>;
v = interfaceinvoke v.<java.util.concurrent.ConcurrentMap: boolean containsValue(java.lang.Object)>(v);
if v != 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public boolean isCopyMessageOnSend()
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: boolean copyMessageOnSend>;
return v;
}
public org.apache.activemq.util.LongSequenceGenerator getLocalTransactionIdGenerator()
{
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.util.LongSequenceGenerator v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.util.LongSequenceGenerator localTransactionIdGenerator>;
return v;
}
public boolean isUseCompression()
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: boolean useCompression>;
return v;
}
public void setUseCompression(boolean)
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v.<org.apache.activemq.ActiveMQConnection: boolean useCompression> = v;
return;
}
public void destroyDestination(org.apache.activemq.command.ActiveMQDestination) throws javax.jms.JMSException
{
org.apache.activemq.command.ConnectionInfo v;
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.command.DestinationInfo v;
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.command.ActiveMQDestination v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.command.ActiveMQDestination;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void checkClosedOrFailed()>();
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void ensureConnectionInfoSent()>();
v = new org.apache.activemq.command.DestinationInfo;
specialinvoke v.<org.apache.activemq.command.DestinationInfo: void <init>()>();
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
virtualinvoke v.<org.apache.activemq.command.DestinationInfo: void setConnectionId(org.apache.activemq.command.ConnectionId)>(v);
virtualinvoke v.<org.apache.activemq.command.DestinationInfo: void setOperationType(byte)>(1);
virtualinvoke v.<org.apache.activemq.command.DestinationInfo: void setDestination(org.apache.activemq.command.ActiveMQDestination)>(v);
virtualinvoke v.<org.apache.activemq.command.DestinationInfo: void setTimeout(long)>(0L);
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.Response syncSendPacket(org.apache.activemq.command.Command)>(v);
return;
}
public boolean isDispatchAsync()
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: boolean dispatchAsync>;
return v;
}
public void setDispatchAsync(boolean)
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v.<org.apache.activemq.ActiveMQConnection: boolean dispatchAsync> = v;
return;
}
public boolean isObjectMessageSerializationDefered()
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: boolean objectMessageSerializationDefered>;
return v;
}
public void setObjectMessageSerializationDefered(boolean)
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v.<org.apache.activemq.ActiveMQConnection: boolean objectMessageSerializationDefered> = v;
return;
}
public void unsubscribe(java.lang.String) throws javax.jms.InvalidDestinationException, javax.jms.JMSException
{
org.apache.activemq.command.RemoveSubscriptionInfo v;
org.apache.activemq.command.ConnectionInfo v, v;
org.apache.activemq.command.ConnectionId v;
java.lang.String v, v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: java.lang.String;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void checkClosedOrFailed()>();
v = new org.apache.activemq.command.RemoveSubscriptionInfo;
specialinvoke v.<org.apache.activemq.command.RemoveSubscriptionInfo: void <init>()>();
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo getConnectionInfo()>();
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
virtualinvoke v.<org.apache.activemq.command.RemoveSubscriptionInfo: void setConnectionId(org.apache.activemq.command.ConnectionId)>(v);
virtualinvoke v.<org.apache.activemq.command.RemoveSubscriptionInfo: void setSubscriptionName(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo getConnectionInfo()>();
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: java.lang.String getClientId()>();
virtualinvoke v.<org.apache.activemq.command.RemoveSubscriptionInfo: void setClientId(java.lang.String)>(v);
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.Response syncSendPacket(org.apache.activemq.command.Command)>(v);
return;
}
void send(org.apache.activemq.command.ActiveMQDestination, org.apache.activemq.command.ActiveMQMessage, org.apache.activemq.command.MessageId, int, int, long, boolean) throws javax.jms.JMSException
{
org.apache.activemq.command.ActiveMQMessage v;
long v, v, v;
byte v;
int v, v;
java.lang.String v, v;
boolean v, v, v, v, v;
org.slf4j.Logger v, v;
org.apache.activemq.command.MessageId v, v;
org.apache.activemq.ActiveMQConnection v;
javax.jms.JMSException v;
org.apache.activemq.command.ActiveMQDestination v;
org.apache.activemq.command.ProducerId v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.command.ActiveMQDestination;
v := @parameter: org.apache.activemq.command.ActiveMQMessage;
v := @parameter: org.apache.activemq.command.MessageId;
v := @parameter: int;
v := @parameter: int;
v := @parameter: long;
v := @parameter: boolean;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void checkClosedOrFailed()>();
v = virtualinvoke v.<org.apache.activemq.command.ActiveMQDestination: boolean isTemporary()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: boolean isDeleted(org.apache.activemq.command.ActiveMQDestination)>(v);
if v == 0 goto label;
v = new javax.jms.JMSException;
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[])>("Cannot publish to a deleted Destination: \u0001");
specialinvoke v.<javax.jms.JMSException: void <init>(java.lang.String)>(v);
throw v;
label:
virtualinvoke v.<org.apache.activemq.command.ActiveMQMessage: void setJMSDestination(javax.jms.Destination)>(v);
virtualinvoke v.<org.apache.activemq.command.ActiveMQMessage: void setJMSDeliveryMode(int)>(v);
v = 0L;
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: boolean isDisableTimeStampsByDefault()>();
if v != 0 goto label;
v = staticinvoke <java.lang.System: long currentTimeMillis()>();
virtualinvoke v.<org.apache.activemq.command.ActiveMQMessage: void setJMSTimestamp(long)>(v);
v = v cmp 0L;
if v <= 0 goto label;
v = v + v;
label:
virtualinvoke v.<org.apache.activemq.command.ActiveMQMessage: void setJMSExpiration(long)>(v);
virtualinvoke v.<org.apache.activemq.command.ActiveMQMessage: void setJMSPriority(int)>(v);
virtualinvoke v.<org.apache.activemq.command.ActiveMQMessage: void setJMSRedelivered(boolean)>(0);
virtualinvoke v.<org.apache.activemq.command.ActiveMQMessage: void setMessageId(org.apache.activemq.command.MessageId)>(v);
virtualinvoke v.<org.apache.activemq.command.ActiveMQMessage: void onSend()>();
v = virtualinvoke v.<org.apache.activemq.command.ActiveMQMessage: org.apache.activemq.command.MessageId getMessageId()>();
v = virtualinvoke v.<org.apache.activemq.command.MessageId: org.apache.activemq.command.ProducerId getProducerId()>();
virtualinvoke v.<org.apache.activemq.command.ActiveMQMessage: void setProducerId(org.apache.activemq.command.ProducerId)>(v);
v = <org.apache.activemq.ActiveMQConnection: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.activemq.ActiveMQConnection: org.slf4j.Logger LOG>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.activemq.command.ActiveMQMessage)>(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[])>("Sending message: \u0001");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>(v);
label:
if v == 0 goto label;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void asyncSendPacket(org.apache.activemq.command.Command)>(v);
goto label;
label:
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.Response syncSendPacket(org.apache.activemq.command.Command)>(v);
label:
return;
}
protected void onConnectionControl(org.apache.activemq.command.ConnectionControl)
{
java.util.Iterator v;
java.lang.Object v;
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.command.ConnectionControl v;
boolean v, v;
java.util.concurrent.CopyOnWriteArrayList v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.command.ConnectionControl;
v = virtualinvoke v.<org.apache.activemq.command.ConnectionControl: boolean isFaultTolerant()>();
if v == 0 goto label;
v.<org.apache.activemq.ActiveMQConnection: boolean optimizeAcknowledge> = 0;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList sessions>;
v = virtualinvoke v.<java.util.concurrent.CopyOnWriteArrayList: 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()>();
virtualinvoke v.<org.apache.activemq.ActiveMQSession: void setOptimizeAcknowledge(boolean)>(0);
goto label;
label:
return;
}
protected void onConsumerControl(org.apache.activemq.command.ConsumerControl)
{
org.apache.activemq.command.ConsumerId v, v, v, v;
int v, v;
org.apache.activemq.command.ConsumerInfo v;
boolean v, v, v, v, v;
java.util.Iterator v, v, v;
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.command.ConsumerControl v;
java.lang.Object v, v, v;
java.util.concurrent.CopyOnWriteArrayList v, v, v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.command.ConsumerControl;
v = virtualinvoke v.<org.apache.activemq.command.ConsumerControl: boolean isClose()>();
if v == 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList sessions>;
v = virtualinvoke v.<java.util.concurrent.CopyOnWriteArrayList: 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.command.ConsumerControl: org.apache.activemq.command.ConsumerId getConsumerId()>();
virtualinvoke v.<org.apache.activemq.ActiveMQSession: void close(org.apache.activemq.command.ConsumerId)>(v);
goto label;
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList sessions>;
v = virtualinvoke v.<java.util.concurrent.CopyOnWriteArrayList: 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.command.ConsumerControl: org.apache.activemq.command.ConsumerId getConsumerId()>();
v = virtualinvoke v.<org.apache.activemq.command.ConsumerControl: int getPrefetch()>();
virtualinvoke v.<org.apache.activemq.ActiveMQSession: void setPrefetchSize(org.apache.activemq.command.ConsumerId,int)>(v, v);
goto label;
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList connectionConsumers>;
v = virtualinvoke v.<java.util.concurrent.CopyOnWriteArrayList: 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.ActiveMQConnectionConsumer: org.apache.activemq.command.ConsumerInfo getConsumerInfo()>();
v = virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: org.apache.activemq.command.ConsumerId getConsumerId()>();
v = virtualinvoke v.<org.apache.activemq.command.ConsumerControl: org.apache.activemq.command.ConsumerId getConsumerId()>();
v = virtualinvoke v.<org.apache.activemq.command.ConsumerId: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = virtualinvoke v.<org.apache.activemq.command.ConsumerControl: int getPrefetch()>();
virtualinvoke v.<org.apache.activemq.command.ConsumerInfo: void setPrefetchSize(int)>(v);
goto label;
label:
return;
}
protected void transportFailed(java.io.IOException)
{
java.util.concurrent.atomic.AtomicBoolean v;
java.io.IOException v, v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: java.io.IOException;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean transportFailed>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void set(boolean)>(1);
v = v.<org.apache.activemq.ActiveMQConnection: java.io.IOException firstFailureError>;
if v != null goto label;
v.<org.apache.activemq.ActiveMQConnection: java.io.IOException firstFailureError> = v;
label:
return;
}
public void setCopyMessageOnSend(boolean)
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v.<org.apache.activemq.ActiveMQConnection: boolean copyMessageOnSend> = v;
return;
}
public java.lang.String toString()
{
org.apache.activemq.command.ConnectionId v;
java.util.concurrent.atomic.AtomicBoolean v;
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.command.ConnectionInfo v, v;
java.lang.String v, v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: java.lang.String getClientId()>();
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean started>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.activemq.command.ConnectionId,java.lang.String,boolean)>(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[])>("ActiveMQConnection {id=\u,clientId=\u,started=\u0001}");
return v;
}
protected org.apache.activemq.blob.BlobTransferPolicy createBlobTransferPolicy()
{
org.apache.activemq.blob.BlobTransferPolicy v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = new org.apache.activemq.blob.BlobTransferPolicy;
specialinvoke v.<org.apache.activemq.blob.BlobTransferPolicy: void <init>()>();
return v;
}
public int getProtocolVersion()
{
int v;
org.apache.activemq.ActiveMQConnection v;
java.util.concurrent.atomic.AtomicInteger v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicInteger protocolVersion>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicInteger: int get()>();
return v;
}
public int getProducerWindowSize()
{
int v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: int producerWindowSize>;
return v;
}
public void setProducerWindowSize(int)
{
int v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: int;
v.<org.apache.activemq.ActiveMQConnection: int producerWindowSize> = v;
return;
}
public void setAuditDepth(int)
{
int v;
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.ConnectionAudit v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: int;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.ConnectionAudit connectionAudit>;
virtualinvoke v.<org.apache.activemq.ConnectionAudit: void setAuditDepth(int)>(v);
return;
}
public void setAuditMaximumProducerNumber(int)
{
int v;
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.ConnectionAudit v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: int;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.ConnectionAudit connectionAudit>;
virtualinvoke v.<org.apache.activemq.ConnectionAudit: void setAuditMaximumProducerNumber(int)>(v);
return;
}
protected void removeDispatcher(org.apache.activemq.ActiveMQDispatcher)
{
org.apache.activemq.ActiveMQDispatcher v;
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.ConnectionAudit v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.ActiveMQDispatcher;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.ConnectionAudit connectionAudit>;
virtualinvoke v.<org.apache.activemq.ConnectionAudit: void removeDispatcher(org.apache.activemq.ActiveMQDispatcher)>(v);
return;
}
protected boolean isDuplicate(org.apache.activemq.ActiveMQDispatcher, org.apache.activemq.command.Message)
{
org.apache.activemq.ActiveMQDispatcher v;
org.apache.activemq.command.Message v;
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.ConnectionAudit v;
boolean v, v, v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.ActiveMQDispatcher;
v := @parameter: org.apache.activemq.command.Message;
v = v.<org.apache.activemq.ActiveMQConnection: boolean checkForDuplicates>;
if v == 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.ConnectionAudit connectionAudit>;
v = virtualinvoke v.<org.apache.activemq.ConnectionAudit: boolean isDuplicate(org.apache.activemq.ActiveMQDispatcher,org.apache.activemq.command.Message)>(v, v);
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
protected void rollbackDuplicate(org.apache.activemq.ActiveMQDispatcher, org.apache.activemq.command.Message)
{
org.apache.activemq.ActiveMQDispatcher v;
org.apache.activemq.command.Message v;
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.ConnectionAudit v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.ActiveMQDispatcher;
v := @parameter: org.apache.activemq.command.Message;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.ConnectionAudit connectionAudit>;
virtualinvoke v.<org.apache.activemq.ConnectionAudit: void rollbackDuplicate(org.apache.activemq.ActiveMQDispatcher,org.apache.activemq.command.Message)>(v, v);
return;
}
public java.io.IOException getFirstFailureError()
{
java.io.IOException v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: java.io.IOException firstFailureError>;
return v;
}
protected void waitForTransportInterruptionProcessingToComplete() throws java.lang.InterruptedException
{
org.slf4j.Logger v;
java.util.concurrent.atomic.AtomicBoolean v, v;
org.apache.activemq.ActiveMQConnection v;
java.util.concurrent.atomic.AtomicInteger v, v;
int v, v;
java.lang.String v;
boolean v, v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean closed>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
if v != 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicBoolean transportFailed>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
if v != 0 goto label;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicInteger transportInterruptionProcessingComplete>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicInteger: int get()>();
if v <= 0 goto label;
v = <org.apache.activemq.ActiveMQConnection: org.slf4j.Logger LOG>;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicInteger transportInterruptionProcessingComplete>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicInteger: int get()>();
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[])>("dispatch with outstanding dispatch interruption processing count \u0001");
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String)>(v);
specialinvoke v.<org.apache.activemq.ActiveMQConnection: void signalInterruptionProcessingComplete()>();
label:
return;
}
protected void transportInterruptionProcessingComplete()
{
int v;
org.apache.activemq.ActiveMQConnection v;
java.util.concurrent.atomic.AtomicInteger v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicInteger transportInterruptionProcessingComplete>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicInteger: int decrementAndGet()>();
if v != 0 goto label;
specialinvoke v.<org.apache.activemq.ActiveMQConnection: void signalInterruptionProcessingComplete()>();
label:
return;
}
private void signalInterruptionProcessingComplete()
{
org.apache.activemq.command.ConnectionInfo v, v, v;
java.util.concurrent.atomic.AtomicInteger v, v;
int v;
java.lang.String v, v;
boolean v, v;
org.slf4j.Logger v, v, v, v;
org.apache.activemq.command.ConnectionId v, v, v;
org.apache.activemq.transport.Transport v;
org.apache.activemq.ActiveMQConnection v;
java.lang.Object v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = <org.apache.activemq.ActiveMQConnection: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.activemq.ActiveMQConnection: org.slf4j.Logger LOG>;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicInteger transportInterruptionProcessingComplete>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicInteger: int get()>();
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo getConnectionInfo()>();
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int,org.apache.activemq.command.ConnectionId)>(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[])>("transportInterruptionProcessingComplete: \u for:\u0001");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>(v);
label:
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.transport.Transport transport>;
v = interfaceinvoke v.<org.apache.activemq.transport.Transport: java.lang.Object narrow(java.lang.Class)>(class "Lorg/apache/activemq/transport/failover/FailoverTransport;");
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo getConnectionInfo()>();
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
virtualinvoke v.<org.apache.activemq.transport.failover.FailoverTransport: void connectionInterruptProcessingComplete(org.apache.activemq.command.ConnectionId)>(v);
v = <org.apache.activemq.ActiveMQConnection: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.activemq.ActiveMQConnection: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo getConnectionInfo()>();
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.activemq.transport.failover.FailoverTransport,org.apache.activemq.command.ConnectionId)>(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[])>("notified failover transport (\u) of interruption completion for: \u0001");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>(v);
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.atomic.AtomicInteger transportInterruptionProcessingComplete>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicInteger: void set(int)>(0);
return;
}
private void signalInterruptionProcessingNeeded()
{
org.slf4j.Logger v, v;
org.apache.activemq.command.ConnectionId v, v;
org.apache.activemq.state.ConnectionStateTracker v;
org.apache.activemq.transport.Transport v;
org.apache.activemq.ActiveMQConnection v;
org.apache.activemq.command.ConnectionInfo v, v;
java.lang.Object v;
java.lang.String v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.transport.Transport transport>;
v = interfaceinvoke v.<org.apache.activemq.transport.Transport: java.lang.Object narrow(java.lang.Class)>(class "Lorg/apache/activemq/transport/failover/FailoverTransport;");
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.transport.failover.FailoverTransport: org.apache.activemq.state.ConnectionStateTracker getStateTracker()>();
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo getConnectionInfo()>();
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
virtualinvoke v.<org.apache.activemq.state.ConnectionStateTracker: void transportInterrupted(org.apache.activemq.command.ConnectionId)>(v);
v = <org.apache.activemq.ActiveMQConnection: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.activemq.ActiveMQConnection: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo getConnectionInfo()>();
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.activemq.transport.failover.FailoverTransport,org.apache.activemq.command.ConnectionId)>(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[])>("notified failover transport (\u) of pending interruption processing for: \u0001");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>(v);
label:
return;
}
public void setConsumerFailoverRedeliveryWaitPeriod(long)
{
long v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: long;
v.<org.apache.activemq.ActiveMQConnection: long consumerFailoverRedeliveryWaitPeriod> = v;
return;
}
public long getConsumerFailoverRedeliveryWaitPeriod()
{
long v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: long consumerFailoverRedeliveryWaitPeriod>;
return v;
}
protected org.apache.activemq.thread.Scheduler getScheduler() throws javax.jms.JMSException
{
java.lang.Throwable v;
org.apache.activemq.ConnectionClosedException v;
org.apache.activemq.command.ConnectionId v;
org.apache.activemq.ActiveMQConnection v;
javax.jms.JMSException v;
java.lang.Exception v;
org.apache.activemq.command.ConnectionInfo v;
org.apache.activemq.thread.Scheduler v, v;
java.lang.Object v;
java.lang.String v, v;
boolean v, v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.thread.Scheduler scheduler>;
if v != null goto label;
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: boolean isClosing()>();
if v != 0 goto label;
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnection: boolean isClosed()>();
if v == 0 goto label;
label:
v = new org.apache.activemq.ConnectionClosedException;
specialinvoke v.<org.apache.activemq.ConnectionClosedException: void <init>()>();
throw v;
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.lang.Object schedulerLock>;
entermonitor v;
label:
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.thread.Scheduler scheduler>;
if v != null goto label;
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void checkClosed()>();
label:
v = new org.apache.activemq.thread.Scheduler;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
v = virtualinvoke v.<org.apache.activemq.command.ConnectionId: java.lang.String getValue()>();
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[])>("ActiveMQConnection[\u] Scheduler");
specialinvoke v.<org.apache.activemq.thread.Scheduler: void <init>(java.lang.String)>(v);
v = v;
virtualinvoke v.<org.apache.activemq.thread.Scheduler: void start()>();
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.thread.Scheduler scheduler> = v;
label:
goto label;
label:
v := @caughtexception;
v = staticinvoke <org.apache.activemq.util.JMSExceptionSupport: javax.jms.JMSException create(java.lang.Exception)>(v);
throw v;
label:
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
return v;
catch java.lang.Exception from label to label with label;
catch java.lang.Throwable from label to label with label;
}
protected java.util.concurrent.ThreadPoolExecutor getExecutor()
{
org.apache.activemq.ActiveMQConnection v;
java.util.concurrent.ThreadPoolExecutor v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ThreadPoolExecutor executor>;
return v;
}
protected java.util.concurrent.CopyOnWriteArrayList getSessions()
{
org.apache.activemq.ActiveMQConnection v;
java.util.concurrent.CopyOnWriteArrayList v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.CopyOnWriteArrayList sessions>;
return v;
}
public boolean isCheckForDuplicates()
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: boolean checkForDuplicates>;
return v;
}
public void setCheckForDuplicates(boolean)
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v.<org.apache.activemq.ActiveMQConnection: boolean checkForDuplicates> = v;
return;
}
public boolean isTransactedIndividualAck()
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: boolean transactedIndividualAck>;
return v;
}
public void setTransactedIndividualAck(boolean)
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v.<org.apache.activemq.ActiveMQConnection: boolean transactedIndividualAck> = v;
return;
}
public boolean isNonBlockingRedelivery()
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: boolean nonBlockingRedelivery>;
return v;
}
public void setNonBlockingRedelivery(boolean)
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v.<org.apache.activemq.ActiveMQConnection: boolean nonBlockingRedelivery> = v;
return;
}
public boolean isRmIdFromConnectionId()
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: boolean rmIdFromConnectionId>;
return v;
}
public void setRmIdFromConnectionId(boolean)
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v.<org.apache.activemq.ActiveMQConnection: boolean rmIdFromConnectionId> = v;
return;
}
public void cleanUpTempDestinations()
{
java.util.concurrent.ConcurrentMap v, v, v;
org.apache.activemq.command.ConnectionInfo v, v;
java.lang.String v, v, v;
boolean v, v, v;
java.util.Iterator v;
org.apache.activemq.command.ConnectionId v, v;
java.util.Set v;
org.apache.activemq.ActiveMQConnection v;
java.lang.Exception v;
java.lang.Object v, v, v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ConcurrentMap activeTempDestinations>;
if v == null goto label;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ConcurrentMap activeTempDestinations>;
v = interfaceinvoke v.<java.util.concurrent.ConcurrentMap: boolean isEmpty()>();
if v == 0 goto label;
label:
return;
label:
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.ConcurrentMap activeTempDestinations>;
v = interfaceinvoke v.<java.util.concurrent.ConcurrentMap: 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()>();
label:
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getValue()>();
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
if v != null goto label;
v = "";
goto label;
label:
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.command.ConnectionInfo info>;
v = virtualinvoke v.<org.apache.activemq.command.ConnectionInfo: org.apache.activemq.command.ConnectionId getConnectionId()>();
v = virtualinvoke v.<org.apache.activemq.command.ConnectionId: java.lang.String toString()>();
label:
v = virtualinvoke v.<org.apache.activemq.command.ActiveMQTempDestination: java.lang.String getConnectionId()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.activemq.command.ActiveMQTempDestination: java.lang.String getConnectionId()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getValue()>();
virtualinvoke v.<org.apache.activemq.ActiveMQConnection: void deleteTempDestination(org.apache.activemq.command.ActiveMQTempDestination)>(v);
label:
goto label;
label:
v := @caughtexception;
goto label;
label:
return;
catch java.lang.Exception from label to label with label;
}
public void setRedeliveryPolicyMap(org.apache.activemq.broker.region.policy.RedeliveryPolicyMap)
{
org.apache.activemq.broker.region.policy.RedeliveryPolicyMap v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: org.apache.activemq.broker.region.policy.RedeliveryPolicyMap;
v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.broker.region.policy.RedeliveryPolicyMap redeliveryPolicyMap> = v;
return;
}
public org.apache.activemq.broker.region.policy.RedeliveryPolicyMap getRedeliveryPolicyMap()
{
org.apache.activemq.broker.region.policy.RedeliveryPolicyMap v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: org.apache.activemq.broker.region.policy.RedeliveryPolicyMap redeliveryPolicyMap>;
return v;
}
public int getMaxThreadPoolSize()
{
int v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: int maxThreadPoolSize>;
return v;
}
public void setMaxThreadPoolSize(int)
{
int v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: int;
v.<org.apache.activemq.ActiveMQConnection: int maxThreadPoolSize> = v;
return;
}
org.apache.activemq.ActiveMQConnection enforceQueueOnlyConnection()
{
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v.<org.apache.activemq.ActiveMQConnection: boolean queueOnlyConnection> = 1;
return v;
}
public java.util.concurrent.RejectedExecutionHandler getRejectedTaskHandler()
{
org.apache.activemq.ActiveMQConnection v;
java.util.concurrent.RejectedExecutionHandler v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.RejectedExecutionHandler rejectedTaskHandler>;
return v;
}
public void setRejectedTaskHandler(java.util.concurrent.RejectedExecutionHandler)
{
org.apache.activemq.ActiveMQConnection v;
java.util.concurrent.RejectedExecutionHandler v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: java.util.concurrent.RejectedExecutionHandler;
v.<org.apache.activemq.ActiveMQConnection: java.util.concurrent.RejectedExecutionHandler rejectedTaskHandler> = v;
return;
}
public long getOptimizedAckScheduledAckInterval()
{
long v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: long optimizedAckScheduledAckInterval>;
return v;
}
public void setOptimizedAckScheduledAckInterval(long)
{
long v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: long;
v.<org.apache.activemq.ActiveMQConnection: long optimizedAckScheduledAckInterval> = v;
return;
}
public boolean isConsumerExpiryCheckEnabled()
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: boolean consumerExpiryCheckEnabled>;
return v;
}
public void setConsumerExpiryCheckEnabled(boolean)
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v.<org.apache.activemq.ActiveMQConnection: boolean consumerExpiryCheckEnabled> = v;
return;
}
public java.util.List getTrustedPackages()
{
java.util.List v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: java.util.List trustedPackages>;
return v;
}
public void setTrustedPackages(java.util.List)
{
java.util.List v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: java.util.List;
v.<org.apache.activemq.ActiveMQConnection: java.util.List trustedPackages> = v;
return;
}
public boolean isTrustAllPackages()
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: boolean trustAllPackages>;
return v;
}
public void setTrustAllPackages(boolean)
{
org.apache.activemq.ActiveMQConnection v;
boolean v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: boolean;
v.<org.apache.activemq.ActiveMQConnection: boolean trustAllPackages> = v;
return;
}
public int getConnectResponseTimeout()
{
int v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v = v.<org.apache.activemq.ActiveMQConnection: int connectResponseTimeout>;
return v;
}
public void setConnectResponseTimeout(int)
{
int v;
org.apache.activemq.ActiveMQConnection v;
v := @this: org.apache.activemq.ActiveMQConnection;
v := @parameter: int;
v.<org.apache.activemq.ActiveMQConnection: int connectResponseTimeout> = v;
return;
}
static void <clinit>()
{
org.slf4j.Logger v;
java.lang.String v, v, v;
v = <org.apache.activemq.ActiveMQConnectionFactory: java.lang.String DEFAULT_USER>;
<org.apache.activemq.ActiveMQConnection: java.lang.String DEFAULT_USER> = v;
v = <org.apache.activemq.ActiveMQConnectionFactory: java.lang.String DEFAULT_PASSWORD>;
<org.apache.activemq.ActiveMQConnection: java.lang.String DEFAULT_PASSWORD> = v;
v = <org.apache.activemq.ActiveMQConnectionFactory: java.lang.String DEFAULT_BROKER_URL>;
<org.apache.activemq.ActiveMQConnection: java.lang.String DEFAULT_BROKER_URL> = v;
<org.apache.activemq.ActiveMQConnection: int DEFAULT_THREAD_POOL_SIZE> = 1000;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/activemq/ActiveMQConnection;");
<org.apache.activemq.ActiveMQConnection: org.slf4j.Logger LOG> = v;
return;
}
}