use of org.apache.activemq.transport.Transport in project activemq-artemis by apache.
the class TcpTransportServerTest method testDefaultPropertiesSetOnTransport.
public void testDefaultPropertiesSetOnTransport() throws Exception {
TcpTransportServer server = (TcpTransportServer) TransportFactory.bind(new URI("tcp://localhost:61616?trace=true"));
server.setTransportOption(new HashMap<String, Object>());
server.setAcceptListener(new TransportAcceptListener() {
@Override
public void onAccept(Transport transport) {
assertTrue("This transport does not have a TransportLogger!!", hasTransportLogger(transport));
}
@Override
public void onAcceptError(Exception error) {
fail("Should not have received an error!");
}
});
server.start();
Socket socket = new Socket("localhost", 61616);
server.handleSocket(socket);
server.stop();
}
use of org.apache.activemq.transport.Transport in project pinpoint by naver.
the class ActiveMQMessageConsumerDispatchInterceptor method validateTransport.
private boolean validateTransport(ActiveMQSession session) {
if (session == null) {
return false;
}
ActiveMQConnection connection = session.getConnection();
if (!(connection instanceof TransportGetter)) {
if (isDebug) {
logger.debug("Invalid connection object. Need field accessor({}).", TransportGetter.class.getName());
}
return false;
}
Transport transport = getRootTransport(((TransportGetter) connection)._$PINPOINT$_getTransport());
if (!(transport instanceof SocketGetter)) {
if (isDebug) {
logger.debug("Transport not traceable({}).", transport.getClass().getName());
}
return false;
}
return true;
}
use of org.apache.activemq.transport.Transport in project pinpoint by naver.
the class ActiveMQMessageProducerSendInterceptor method validateTransport.
private boolean validateTransport(ActiveMQSession session) {
if (session == null) {
return false;
}
ActiveMQConnection connection = session.getConnection();
if (!(connection instanceof TransportGetter)) {
if (isDebug) {
logger.debug("Invalid connection object. Need field accessor({}).", TransportGetter.class.getName());
}
return false;
}
Transport transport = getRootTransport(((TransportGetter) connection)._$PINPOINT$_getTransport());
if (!(transport instanceof SocketGetter)) {
if (isDebug) {
logger.debug("Transport not traceable({}).", transport.getClass().getName());
}
return false;
}
return true;
}
use of org.apache.activemq.transport.Transport in project pinpoint by naver.
the class ActiveMQMessageConsumerDispatchInterceptor method doInBeforeTrace.
@Override
protected void doInBeforeTrace(SpanRecorder recorder, Object target, Object[] args) {
recorder.recordServiceType(ActiveMQClientConstants.ACTIVEMQ_CLIENT);
ActiveMQSession session = ((ActiveMQSessionGetter) target)._$PINPOINT$_getActiveMQSession();
ActiveMQConnection connection = session.getConnection();
Transport transport = getRootTransport(((TransportGetter) connection)._$PINPOINT$_getTransport());
Socket socket = ((SocketGetter) transport)._$PINPOINT$_getSocket();
SocketAddress localSocketAddress = socket.getLocalSocketAddress();
String endPoint = ActiveMQClientUtils.getEndPoint(localSocketAddress);
// Endpoint should be the local socket address of the consumer.
recorder.recordEndPoint(endPoint);
SocketAddress remoteSocketAddress = socket.getRemoteSocketAddress();
String remoteAddress = ActiveMQClientUtils.getEndPoint(remoteSocketAddress);
// Remote address is the socket address of where the consumer is connected to.
recorder.recordRemoteAddress(remoteAddress);
MessageDispatch md = (MessageDispatch) args[0];
ActiveMQMessage message = (ActiveMQMessage) md.getMessage();
ActiveMQDestination destination = message.getDestination();
// Rpc name is the URI of the queue/topic we're consuming from.
recorder.recordRpcName(destination.getQualifiedName());
// Record acceptor host as the queue/topic name in order to generate virtual queue node.
recorder.recordAcceptorHost(destination.getPhysicalName());
String parentApplicationName = ActiveMQClientHeader.getParentApplicationName(message, null);
if (!recorder.isRoot() && parentApplicationName != null) {
short parentApplicationType = ActiveMQClientHeader.getParentApplicationType(message, ServiceType.UNDEFINED.getCode());
recorder.recordParentApplication(parentApplicationName, parentApplicationType);
}
}
use of org.apache.activemq.transport.Transport in project activemq-artemis by apache.
the class ActiveMQConnectionFactory method createTransport.
protected Transport createTransport() throws JMSException {
try {
System.out.println("xxxxxcreating conn: " + brokerURL.toString());
Transport t = TransportFactory.connect(brokerURL);
System.out.println("xxxxxxxxxxxx created transport" + t);
return t;
} catch (Exception e) {
throw JMSExceptionSupport.create("Could not create Transport. Reason: " + e, e);
}
}
Aggregations