public class org.apache.activemq.network.jms.SimpleJmsTopicConnector extends org.apache.activemq.network.jms.JmsConnector
{
private static final org.slf4j.Logger LOG;
private java.lang.String outboundTopicConnectionFactoryName;
private java.lang.String localConnectionFactoryName;
private javax.jms.TopicConnectionFactory outboundTopicConnectionFactory;
private javax.jms.TopicConnectionFactory localTopicConnectionFactory;
private org.apache.activemq.network.jms.InboundTopicBridge[] inboundTopicBridges;
private org.apache.activemq.network.jms.OutboundTopicBridge[] outboundTopicBridges;
public void <init>()
{
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
specialinvoke v.<org.apache.activemq.network.jms.JmsConnector: void <init>()>();
return;
}
public org.apache.activemq.network.jms.InboundTopicBridge[] getInboundTopicBridges()
{
org.apache.activemq.network.jms.InboundTopicBridge[] v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.network.jms.InboundTopicBridge[] inboundTopicBridges>;
return v;
}
public void setInboundTopicBridges(org.apache.activemq.network.jms.InboundTopicBridge[])
{
org.apache.activemq.network.jms.InboundTopicBridge[] v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
v := @parameter: org.apache.activemq.network.jms.InboundTopicBridge[];
v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.network.jms.InboundTopicBridge[] inboundTopicBridges> = v;
return;
}
public org.apache.activemq.network.jms.OutboundTopicBridge[] getOutboundTopicBridges()
{
org.apache.activemq.network.jms.OutboundTopicBridge[] v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.network.jms.OutboundTopicBridge[] outboundTopicBridges>;
return v;
}
public void setOutboundTopicBridges(org.apache.activemq.network.jms.OutboundTopicBridge[])
{
org.apache.activemq.network.jms.OutboundTopicBridge[] v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
v := @parameter: org.apache.activemq.network.jms.OutboundTopicBridge[];
v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.network.jms.OutboundTopicBridge[] outboundTopicBridges> = v;
return;
}
public javax.jms.TopicConnectionFactory getLocalTopicConnectionFactory()
{
javax.jms.TopicConnectionFactory v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: javax.jms.TopicConnectionFactory localTopicConnectionFactory>;
return v;
}
public void setLocalTopicConnectionFactory(javax.jms.TopicConnectionFactory)
{
javax.jms.TopicConnectionFactory v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
v := @parameter: javax.jms.TopicConnectionFactory;
v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: javax.jms.TopicConnectionFactory localTopicConnectionFactory> = v;
return;
}
public javax.jms.TopicConnectionFactory getOutboundTopicConnectionFactory()
{
javax.jms.TopicConnectionFactory v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: javax.jms.TopicConnectionFactory outboundTopicConnectionFactory>;
return v;
}
public java.lang.String getOutboundTopicConnectionFactoryName()
{
java.lang.String v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String outboundTopicConnectionFactoryName>;
return v;
}
public void setOutboundTopicConnectionFactoryName(java.lang.String)
{
java.lang.String v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
v := @parameter: java.lang.String;
v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String outboundTopicConnectionFactoryName> = v;
return;
}
public java.lang.String getLocalConnectionFactoryName()
{
java.lang.String v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String localConnectionFactoryName>;
return v;
}
public void setLocalConnectionFactoryName(java.lang.String)
{
java.lang.String v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
v := @parameter: java.lang.String;
v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String localConnectionFactoryName> = v;
return;
}
public javax.jms.TopicConnection getLocalTopicConnection()
{
java.lang.Object v;
java.util.concurrent.atomic.AtomicReference v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.util.concurrent.atomic.AtomicReference localConnection>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
return v;
}
public void setLocalTopicConnection(javax.jms.TopicConnection)
{
javax.jms.TopicConnection v;
java.util.concurrent.atomic.AtomicReference v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
v := @parameter: javax.jms.TopicConnection;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.util.concurrent.atomic.AtomicReference localConnection>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: void set(java.lang.Object)>(v);
return;
}
public javax.jms.TopicConnection getOutboundTopicConnection()
{
java.lang.Object v;
java.util.concurrent.atomic.AtomicReference v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.util.concurrent.atomic.AtomicReference foreignConnection>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
return v;
}
public void setOutboundTopicConnection(javax.jms.TopicConnection)
{
javax.jms.TopicConnection v;
java.util.concurrent.atomic.AtomicReference v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
v := @parameter: javax.jms.TopicConnection;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.util.concurrent.atomic.AtomicReference foreignConnection>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: void set(java.lang.Object)>(v);
return;
}
public void setOutboundTopicConnectionFactory(javax.jms.TopicConnectionFactory)
{
javax.jms.TopicConnectionFactory v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
v := @parameter: javax.jms.TopicConnectionFactory;
v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: javax.jms.TopicConnectionFactory outboundTopicConnectionFactory> = v;
return;
}
protected void initializeForeignConnection() throws javax.naming.NamingException, javax.jms.JMSException
{
java.util.concurrent.atomic.AtomicReference v, v, v;
org.apache.activemq.network.jms.JmsMesageConvertor v;
int v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector$1 v;
javax.jms.TopicConnection v;
javax.jms.JMSException v;
java.lang.Exception v;
org.apache.activemq.network.jms.JndiLookupFactory v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
java.lang.Object v, v, v;
javax.jms.TopicConnectionFactory v, v, v, v, v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
v = null;
label:
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.util.concurrent.atomic.AtomicReference foreignConnection>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
if v != null goto label;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: javax.jms.TopicConnectionFactory outboundTopicConnectionFactory>;
if v != null goto label;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String outboundTopicConnectionFactoryName>;
if v == null goto label;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.network.jms.JndiLookupFactory jndiOutboundTemplate>;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String outboundTopicConnectionFactoryName>;
v = virtualinvoke v.<org.apache.activemq.network.jms.JndiLookupFactory: java.lang.Object lookup(java.lang.String,java.lang.Class)>(v, class "Ljavax/jms/TopicConnectionFactory;");
v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: javax.jms.TopicConnectionFactory outboundTopicConnectionFactory> = v;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String outboundUsername>;
if v == null goto label;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: javax.jms.TopicConnectionFactory outboundTopicConnectionFactory>;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String outboundUsername>;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String outboundPassword>;
v = interfaceinvoke v.<javax.jms.TopicConnectionFactory: javax.jms.TopicConnection createTopicConnection(java.lang.String,java.lang.String)>(v, v);
goto label;
label:
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: javax.jms.TopicConnectionFactory outboundTopicConnectionFactory>;
v = interfaceinvoke v.<javax.jms.TopicConnectionFactory: javax.jms.TopicConnection createTopicConnection()>();
goto label;
label:
v = new javax.jms.JMSException;
specialinvoke v.<javax.jms.JMSException: void <init>(java.lang.String)>("Cannot create foreignConnection - no information");
throw v;
label:
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String outboundUsername>;
if v == null goto label;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: javax.jms.TopicConnectionFactory outboundTopicConnectionFactory>;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String outboundUsername>;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String outboundPassword>;
v = interfaceinvoke v.<javax.jms.TopicConnectionFactory: javax.jms.TopicConnection createTopicConnection(java.lang.String,java.lang.String)>(v, v);
goto label;
label:
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: javax.jms.TopicConnectionFactory outboundTopicConnectionFactory>;
v = interfaceinvoke v.<javax.jms.TopicConnectionFactory: javax.jms.TopicConnection createTopicConnection()>();
goto label;
label:
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.util.concurrent.atomic.AtomicReference foreignConnection>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object getAndSet(java.lang.Object)>(null);
label:
v = new org.apache.activemq.network.jms.SimpleJmsTopicConnector$1;
specialinvoke v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector$1: void <init>(org.apache.activemq.network.jms.SimpleJmsTopicConnector)>(v);
interfaceinvoke v.<javax.jms.TopicConnection: void setExceptionListener(javax.jms.ExceptionListener)>(v);
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String outboundClientId>;
if v == null goto label;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String outboundClientId>;
v = virtualinvoke v.<java.lang.String: int length()>();
if v <= 0 goto label;
v = virtualinvoke v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String getOutboundClientId()>();
interfaceinvoke v.<javax.jms.TopicConnection: void setClientID(java.lang.String)>(v);
label:
interfaceinvoke v.<javax.jms.TopicConnection: void start()>();
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.network.jms.JmsMesageConvertor outboundMessageConvertor>;
interfaceinvoke v.<org.apache.activemq.network.jms.JmsMesageConvertor: void setConnection(javax.jms.Connection)>(v);
virtualinvoke v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: void initializeInboundDestinationBridgesOutboundSide(javax.jms.TopicConnection)>(v);
virtualinvoke v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: void initializeOutboundDestinationBridgesOutboundSide(javax.jms.TopicConnection)>(v);
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.util.concurrent.atomic.AtomicReference foreignConnection>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: void set(java.lang.Object)>(v);
label:
goto label;
label:
v := @caughtexception;
throw v;
label:
return;
catch java.lang.Exception from label to label with label;
}
protected void initializeLocalConnection() throws javax.naming.NamingException, javax.jms.JMSException
{
org.apache.activemq.network.jms.JmsMesageConvertor v;
javax.jms.JMSException v;
java.lang.Exception v;
org.apache.activemq.ActiveMQConnectionFactory v, v;
org.apache.activemq.network.jms.JndiLookupFactory v;
java.util.concurrent.atomic.AtomicReference v, v, v;
int v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector$2 v;
javax.jms.TopicConnection v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
java.lang.Object v, v, v;
javax.jms.TopicConnectionFactory v, v, v, v, v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
v = null;
label:
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.util.concurrent.atomic.AtomicReference localConnection>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
if v != null goto label;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: javax.jms.TopicConnectionFactory localTopicConnectionFactory>;
if v != null goto label;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.ActiveMQConnectionFactory embeddedConnectionFactory>;
if v != null goto label;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String localConnectionFactoryName>;
if v == null goto label;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.network.jms.JndiLookupFactory jndiLocalTemplate>;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String localConnectionFactoryName>;
v = virtualinvoke v.<org.apache.activemq.network.jms.JndiLookupFactory: java.lang.Object lookup(java.lang.String,java.lang.Class)>(v, class "Ljavax/jms/TopicConnectionFactory;");
v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: javax.jms.TopicConnectionFactory localTopicConnectionFactory> = v;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String localUsername>;
if v == null goto label;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: javax.jms.TopicConnectionFactory localTopicConnectionFactory>;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String localUsername>;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String localPassword>;
v = interfaceinvoke v.<javax.jms.TopicConnectionFactory: javax.jms.TopicConnection createTopicConnection(java.lang.String,java.lang.String)>(v, v);
goto label;
label:
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: javax.jms.TopicConnectionFactory localTopicConnectionFactory>;
v = interfaceinvoke v.<javax.jms.TopicConnectionFactory: javax.jms.TopicConnection createTopicConnection()>();
goto label;
label:
v = new javax.jms.JMSException;
specialinvoke v.<javax.jms.JMSException: void <init>(java.lang.String)>("Cannot create localConnection - no information");
throw v;
label:
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.ActiveMQConnectionFactory embeddedConnectionFactory>;
v = virtualinvoke v.<org.apache.activemq.ActiveMQConnectionFactory: javax.jms.TopicConnection createTopicConnection()>();
goto label;
label:
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String localUsername>;
if v == null goto label;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: javax.jms.TopicConnectionFactory localTopicConnectionFactory>;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String localUsername>;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String localPassword>;
v = interfaceinvoke v.<javax.jms.TopicConnectionFactory: javax.jms.TopicConnection createTopicConnection(java.lang.String,java.lang.String)>(v, v);
goto label;
label:
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: javax.jms.TopicConnectionFactory localTopicConnectionFactory>;
v = interfaceinvoke v.<javax.jms.TopicConnectionFactory: javax.jms.TopicConnection createTopicConnection()>();
goto label;
label:
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.util.concurrent.atomic.AtomicReference localConnection>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object getAndSet(java.lang.Object)>(null);
label:
v = new org.apache.activemq.network.jms.SimpleJmsTopicConnector$2;
specialinvoke v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector$2: void <init>(org.apache.activemq.network.jms.SimpleJmsTopicConnector)>(v);
interfaceinvoke v.<javax.jms.TopicConnection: void setExceptionListener(javax.jms.ExceptionListener)>(v);
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String localClientId>;
if v == null goto label;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String localClientId>;
v = virtualinvoke v.<java.lang.String: int length()>();
if v <= 0 goto label;
v = virtualinvoke v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.lang.String getLocalClientId()>();
interfaceinvoke v.<javax.jms.TopicConnection: void setClientID(java.lang.String)>(v);
label:
interfaceinvoke v.<javax.jms.TopicConnection: void start()>();
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.network.jms.JmsMesageConvertor inboundMessageConvertor>;
interfaceinvoke v.<org.apache.activemq.network.jms.JmsMesageConvertor: void setConnection(javax.jms.Connection)>(v);
virtualinvoke v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: void initializeInboundDestinationBridgesLocalSide(javax.jms.TopicConnection)>(v);
virtualinvoke v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: void initializeOutboundDestinationBridgesLocalSide(javax.jms.TopicConnection)>(v);
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.util.concurrent.atomic.AtomicReference localConnection>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: void set(java.lang.Object)>(v);
label:
goto label;
label:
v := @caughtexception;
throw v;
label:
return;
catch java.lang.Exception from label to label with label;
}
protected void initializeInboundDestinationBridgesOutboundSide(javax.jms.TopicConnection) throws javax.jms.JMSException
{
javax.jms.TopicConnection v;
org.apache.activemq.network.jms.InboundTopicBridge v;
javax.jms.Topic v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
int v, v;
javax.jms.TopicSession v;
java.lang.String v;
org.apache.activemq.network.jms.InboundTopicBridge[] v, v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
v := @parameter: javax.jms.TopicConnection;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.network.jms.InboundTopicBridge[] inboundTopicBridges>;
if v == null goto label;
v = interfaceinvoke v.<javax.jms.TopicConnection: javax.jms.TopicSession createTopicSession(boolean,int)>(0, 1);
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.network.jms.InboundTopicBridge[] inboundTopicBridges>;
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<org.apache.activemq.network.jms.InboundTopicBridge: java.lang.String getInboundTopicName()>();
v = virtualinvoke v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: javax.jms.Topic createForeignTopic(javax.jms.TopicSession,java.lang.String)>(v, v);
virtualinvoke v.<org.apache.activemq.network.jms.InboundTopicBridge: void setConsumer(javax.jms.MessageConsumer)>(null);
virtualinvoke v.<org.apache.activemq.network.jms.InboundTopicBridge: void setConsumerTopic(javax.jms.Topic)>(v);
virtualinvoke v.<org.apache.activemq.network.jms.InboundTopicBridge: void setConsumerConnection(javax.jms.TopicConnection)>(v);
virtualinvoke v.<org.apache.activemq.network.jms.InboundTopicBridge: void setJmsConnector(org.apache.activemq.network.jms.JmsConnector)>(v);
virtualinvoke v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: void addInboundBridge(org.apache.activemq.network.jms.DestinationBridge)>(v);
v = v + 1;
goto label;
label:
interfaceinvoke v.<javax.jms.TopicSession: void close()>();
label:
return;
}
protected void initializeInboundDestinationBridgesLocalSide(javax.jms.TopicConnection) throws javax.jms.JMSException
{
javax.jms.TopicConnection v;
org.apache.activemq.network.jms.InboundTopicBridge v;
javax.jms.Topic v;
org.apache.activemq.network.jms.JmsMesageConvertor v, v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
int v, v;
javax.jms.TopicSession v;
java.lang.String v;
org.apache.activemq.network.jms.InboundTopicBridge[] v, v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
v := @parameter: javax.jms.TopicConnection;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.network.jms.InboundTopicBridge[] inboundTopicBridges>;
if v == null goto label;
v = interfaceinvoke v.<javax.jms.TopicConnection: javax.jms.TopicSession createTopicSession(boolean,int)>(0, 1);
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.network.jms.InboundTopicBridge[] inboundTopicBridges>;
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<org.apache.activemq.network.jms.InboundTopicBridge: java.lang.String getLocalTopicName()>();
v = virtualinvoke v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: javax.jms.Topic createActiveMQTopic(javax.jms.TopicSession,java.lang.String)>(v, v);
virtualinvoke v.<org.apache.activemq.network.jms.InboundTopicBridge: void setProducerTopic(javax.jms.Topic)>(v);
virtualinvoke v.<org.apache.activemq.network.jms.InboundTopicBridge: void setProducerConnection(javax.jms.TopicConnection)>(v);
v = virtualinvoke v.<org.apache.activemq.network.jms.InboundTopicBridge: org.apache.activemq.network.jms.JmsMesageConvertor getJmsMessageConvertor()>();
if v != null goto label;
v = virtualinvoke v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.network.jms.JmsMesageConvertor getInboundMessageConvertor()>();
virtualinvoke v.<org.apache.activemq.network.jms.InboundTopicBridge: void setJmsMessageConvertor(org.apache.activemq.network.jms.JmsMesageConvertor)>(v);
label:
virtualinvoke v.<org.apache.activemq.network.jms.InboundTopicBridge: void setJmsConnector(org.apache.activemq.network.jms.JmsConnector)>(v);
virtualinvoke v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: void addInboundBridge(org.apache.activemq.network.jms.DestinationBridge)>(v);
v = v + 1;
goto label;
label:
interfaceinvoke v.<javax.jms.TopicSession: void close()>();
label:
return;
}
protected void initializeOutboundDestinationBridgesOutboundSide(javax.jms.TopicConnection) throws javax.jms.JMSException
{
javax.jms.TopicConnection v;
org.apache.activemq.network.jms.OutboundTopicBridge[] v, v;
javax.jms.Topic v;
org.apache.activemq.network.jms.JmsMesageConvertor v, v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
org.apache.activemq.network.jms.OutboundTopicBridge v;
int v, v;
javax.jms.TopicSession v;
java.lang.String v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
v := @parameter: javax.jms.TopicConnection;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.network.jms.OutboundTopicBridge[] outboundTopicBridges>;
if v == null goto label;
v = interfaceinvoke v.<javax.jms.TopicConnection: javax.jms.TopicSession createTopicSession(boolean,int)>(0, 1);
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.network.jms.OutboundTopicBridge[] outboundTopicBridges>;
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<org.apache.activemq.network.jms.OutboundTopicBridge: java.lang.String getOutboundTopicName()>();
v = virtualinvoke v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: javax.jms.Topic createForeignTopic(javax.jms.TopicSession,java.lang.String)>(v, v);
virtualinvoke v.<org.apache.activemq.network.jms.OutboundTopicBridge: void setProducerTopic(javax.jms.Topic)>(v);
virtualinvoke v.<org.apache.activemq.network.jms.OutboundTopicBridge: void setProducerConnection(javax.jms.TopicConnection)>(v);
v = virtualinvoke v.<org.apache.activemq.network.jms.OutboundTopicBridge: org.apache.activemq.network.jms.JmsMesageConvertor getJmsMessageConvertor()>();
if v != null goto label;
v = virtualinvoke v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.network.jms.JmsMesageConvertor getOutboundMessageConvertor()>();
virtualinvoke v.<org.apache.activemq.network.jms.OutboundTopicBridge: void setJmsMessageConvertor(org.apache.activemq.network.jms.JmsMesageConvertor)>(v);
label:
virtualinvoke v.<org.apache.activemq.network.jms.OutboundTopicBridge: void setJmsConnector(org.apache.activemq.network.jms.JmsConnector)>(v);
virtualinvoke v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: void addOutboundBridge(org.apache.activemq.network.jms.DestinationBridge)>(v);
v = v + 1;
goto label;
label:
interfaceinvoke v.<javax.jms.TopicSession: void close()>();
label:
return;
}
protected void initializeOutboundDestinationBridgesLocalSide(javax.jms.TopicConnection) throws javax.jms.JMSException
{
javax.jms.TopicConnection v;
org.apache.activemq.network.jms.OutboundTopicBridge[] v, v;
javax.jms.Topic v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
org.apache.activemq.network.jms.OutboundTopicBridge v;
int v, v;
javax.jms.TopicSession v;
java.lang.String v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
v := @parameter: javax.jms.TopicConnection;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.network.jms.OutboundTopicBridge[] outboundTopicBridges>;
if v == null goto label;
v = interfaceinvoke v.<javax.jms.TopicConnection: javax.jms.TopicSession createTopicSession(boolean,int)>(0, 1);
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.network.jms.OutboundTopicBridge[] outboundTopicBridges>;
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<org.apache.activemq.network.jms.OutboundTopicBridge: java.lang.String getLocalTopicName()>();
v = virtualinvoke v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: javax.jms.Topic createActiveMQTopic(javax.jms.TopicSession,java.lang.String)>(v, v);
virtualinvoke v.<org.apache.activemq.network.jms.OutboundTopicBridge: void setConsumer(javax.jms.MessageConsumer)>(null);
virtualinvoke v.<org.apache.activemq.network.jms.OutboundTopicBridge: void setConsumerTopic(javax.jms.Topic)>(v);
virtualinvoke v.<org.apache.activemq.network.jms.OutboundTopicBridge: void setConsumerConnection(javax.jms.TopicConnection)>(v);
virtualinvoke v.<org.apache.activemq.network.jms.OutboundTopicBridge: void setJmsConnector(org.apache.activemq.network.jms.JmsConnector)>(v);
virtualinvoke v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: void addOutboundBridge(org.apache.activemq.network.jms.DestinationBridge)>(v);
v = v + 1;
goto label;
label:
interfaceinvoke v.<javax.jms.TopicSession: void close()>();
label:
return;
}
protected javax.jms.Destination createReplyToBridge(javax.jms.Destination, javax.jms.Connection, javax.jms.Connection)
{
java.util.concurrent.atomic.AtomicReference v;
org.apache.activemq.network.jms.JmsMesageConvertor v, v, v, v;
javax.jms.TopicSession v, v;
org.apache.activemq.util.LRUCache v, v, v, v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector$3 v;
boolean v;
javax.jms.Connection v, v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector$4 v;
org.slf4j.Logger v, v, v, v;
javax.jms.TemporaryTopic v, v;
javax.jms.Topic v, v;
java.lang.Exception v, v;
javax.jms.Destination v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
java.lang.Object v, v, v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
v := @parameter: javax.jms.Destination;
v := @parameter: javax.jms.Connection;
v := @parameter: javax.jms.Connection;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: java.util.concurrent.atomic.AtomicReference localConnection>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.util.LRUCache replyToBridges>;
v = virtualinvoke v.<org.apache.activemq.util.LRUCache: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
v = new org.apache.activemq.network.jms.SimpleJmsTopicConnector$3;
specialinvoke v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector$3: void <init>(org.apache.activemq.network.jms.SimpleJmsTopicConnector)>(v);
v = v;
label:
v = interfaceinvoke v.<javax.jms.TopicConnection: javax.jms.TopicSession createTopicSession(boolean,int)>(0, 1);
v = interfaceinvoke v.<javax.jms.TopicSession: javax.jms.TemporaryTopic createTemporaryTopic()>();
interfaceinvoke v.<javax.jms.TopicSession: void close()>();
virtualinvoke v.<org.apache.activemq.network.jms.InboundTopicBridge: void setConsumerTopic(javax.jms.Topic)>(v);
virtualinvoke v.<org.apache.activemq.network.jms.InboundTopicBridge: void setProducerTopic(javax.jms.Topic)>(v);
virtualinvoke v.<org.apache.activemq.network.jms.InboundTopicBridge: void setProducerConnection(javax.jms.TopicConnection)>(v);
virtualinvoke v.<org.apache.activemq.network.jms.InboundTopicBridge: void setConsumerConnection(javax.jms.TopicConnection)>(v);
virtualinvoke v.<org.apache.activemq.network.jms.InboundTopicBridge: void setDoHandleReplyTo(boolean)>(0);
v = virtualinvoke v.<org.apache.activemq.network.jms.InboundTopicBridge: org.apache.activemq.network.jms.JmsMesageConvertor getJmsMessageConvertor()>();
if v != null goto label;
v = virtualinvoke v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.network.jms.JmsMesageConvertor getInboundMessageConvertor()>();
virtualinvoke v.<org.apache.activemq.network.jms.InboundTopicBridge: void setJmsMessageConvertor(org.apache.activemq.network.jms.JmsMesageConvertor)>(v);
label:
virtualinvoke v.<org.apache.activemq.network.jms.InboundTopicBridge: void setJmsConnector(org.apache.activemq.network.jms.JmsConnector)>(v);
virtualinvoke v.<org.apache.activemq.network.jms.InboundTopicBridge: void start()>();
v = <org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object)>("Created replyTo bridge for {}", v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Object,java.lang.Object)>("Failed to create replyTo bridge for topic: {}", v, v);
return null;
label:
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.util.LRUCache replyToBridges>;
virtualinvoke v.<org.apache.activemq.util.LRUCache: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
v = virtualinvoke v.<org.apache.activemq.network.jms.InboundTopicBridge: javax.jms.Topic getConsumerTopic()>();
return v;
label:
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.util.LRUCache replyToBridges>;
v = virtualinvoke v.<org.apache.activemq.util.LRUCache: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
v = new org.apache.activemq.network.jms.SimpleJmsTopicConnector$4;
specialinvoke v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector$4: void <init>(org.apache.activemq.network.jms.SimpleJmsTopicConnector)>(v);
v = v;
label:
v = interfaceinvoke v.<javax.jms.TopicConnection: javax.jms.TopicSession createTopicSession(boolean,int)>(0, 1);
v = interfaceinvoke v.<javax.jms.TopicSession: javax.jms.TemporaryTopic createTemporaryTopic()>();
interfaceinvoke v.<javax.jms.TopicSession: void close()>();
virtualinvoke v.<org.apache.activemq.network.jms.OutboundTopicBridge: void setConsumerTopic(javax.jms.Topic)>(v);
virtualinvoke v.<org.apache.activemq.network.jms.OutboundTopicBridge: void setProducerTopic(javax.jms.Topic)>(v);
virtualinvoke v.<org.apache.activemq.network.jms.OutboundTopicBridge: void setProducerConnection(javax.jms.TopicConnection)>(v);
virtualinvoke v.<org.apache.activemq.network.jms.OutboundTopicBridge: void setConsumerConnection(javax.jms.TopicConnection)>(v);
virtualinvoke v.<org.apache.activemq.network.jms.OutboundTopicBridge: void setDoHandleReplyTo(boolean)>(0);
v = virtualinvoke v.<org.apache.activemq.network.jms.OutboundTopicBridge: org.apache.activemq.network.jms.JmsMesageConvertor getJmsMessageConvertor()>();
if v != null goto label;
v = virtualinvoke v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.network.jms.JmsMesageConvertor getOutboundMessageConvertor()>();
virtualinvoke v.<org.apache.activemq.network.jms.OutboundTopicBridge: void setJmsMessageConvertor(org.apache.activemq.network.jms.JmsMesageConvertor)>(v);
label:
virtualinvoke v.<org.apache.activemq.network.jms.OutboundTopicBridge: void setJmsConnector(org.apache.activemq.network.jms.JmsConnector)>(v);
virtualinvoke v.<org.apache.activemq.network.jms.OutboundTopicBridge: void start()>();
v = <org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object)>("Created replyTo bridge for {}", v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Object,java.lang.Object)>("Failed to create replyTo bridge for topic: {}", v, v);
return null;
label:
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.util.LRUCache replyToBridges>;
virtualinvoke v.<org.apache.activemq.util.LRUCache: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
v = virtualinvoke v.<org.apache.activemq.network.jms.OutboundTopicBridge: javax.jms.Topic getConsumerTopic()>();
return v;
catch java.lang.Exception from label to label with label;
catch java.lang.Exception from label to label with label;
}
protected javax.jms.Topic createActiveMQTopic(javax.jms.TopicSession, java.lang.String) throws javax.jms.JMSException
{
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
javax.jms.Topic v;
javax.jms.TopicSession v;
java.lang.String v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
v := @parameter: javax.jms.TopicSession;
v := @parameter: java.lang.String;
v = interfaceinvoke v.<javax.jms.TopicSession: javax.jms.Topic createTopic(java.lang.String)>(v);
return v;
}
protected javax.jms.Topic createForeignTopic(javax.jms.TopicSession, java.lang.String) throws javax.jms.JMSException
{
java.lang.Throwable v, v;
javax.naming.NamingException v, v;
javax.jms.TopicSession v;
java.lang.String v, v, v;
boolean v;
org.slf4j.Logger v, v;
javax.jms.JMSException v, v;
org.apache.activemq.network.jms.JndiLookupFactory v, v;
org.apache.activemq.network.jms.SimpleJmsTopicConnector v;
java.lang.Object v;
v := @this: org.apache.activemq.network.jms.SimpleJmsTopicConnector;
v := @parameter: javax.jms.TopicSession;
v := @parameter: java.lang.String;
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: boolean preferJndiDestinationLookup>;
if v == 0 goto label;
label:
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.network.jms.JndiLookupFactory jndiOutboundTemplate>;
v = virtualinvoke v.<org.apache.activemq.network.jms.JndiLookupFactory: java.lang.Object lookup(java.lang.String,java.lang.Class)>(v, class "Ljavax/jms/Topic;");
label:
goto label;
label:
v := @caughtexception;
label:
v = interfaceinvoke v.<javax.jms.TopicSession: javax.jms.Topic createTopic(java.lang.String)>(v);
label:
goto label;
label:
v := @caughtexception;
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[])>("Failed to look-up or create Topic for name: \u0001");
v = <org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>(v, v);
v = new javax.jms.JMSException;
specialinvoke v.<javax.jms.JMSException: void <init>(java.lang.String)>(v);
virtualinvoke v.<javax.jms.JMSException: void setLinkedException(java.lang.Exception)>(v);
throw v;
label:
v = interfaceinvoke v.<javax.jms.TopicSession: javax.jms.Topic createTopic(java.lang.String)>(v);
label:
goto label;
label:
v := @caughtexception;
label:
v = v.<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.apache.activemq.network.jms.JndiLookupFactory jndiOutboundTemplate>;
virtualinvoke v.<org.apache.activemq.network.jms.JndiLookupFactory: java.lang.Object lookup(java.lang.String,java.lang.Class)>(v, class "Ljavax/jms/Topic;");
label:
goto label;
label:
v := @caughtexception;
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[])>("Failed to look-up Topic for name: \u0001");
v = <org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>(v, v);
v = new javax.jms.JMSException;
specialinvoke v.<javax.jms.JMSException: void <init>(java.lang.String)>(v);
virtualinvoke v.<javax.jms.JMSException: void setLinkedException(java.lang.Exception)>(v);
throw v;
label:
return v;
catch javax.naming.NamingException from label to label with label;
catch javax.jms.JMSException from label to label with label;
catch javax.jms.JMSException from label to label with label;
catch javax.naming.NamingException from label to label with label;
}
static void <clinit>()
{
org.slf4j.Logger v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/activemq/network/jms/SimpleJmsTopicConnector;");
<org.apache.activemq.network.jms.SimpleJmsTopicConnector: org.slf4j.Logger LOG> = v;
return;
}
}