public class com.codahale.metrics.graphite.GraphiteRabbitMQ extends java.lang.Object implements com.codahale.metrics.graphite.GraphiteSender
{
private static final java.lang.Integer DEFAULT_RABBIT_CONNECTION_TIMEOUT_MS;
private static final java.lang.Integer DEFAULT_RABBIT_SOCKET_TIMEOUT_MS;
private static final java.lang.Integer DEFAULT_RABBIT_REQUESTED_HEARTBEAT_SEC;
private com.rabbitmq.client.ConnectionFactory connectionFactory;
private com.rabbitmq.client.Connection connection;
private com.rabbitmq.client.Channel channel;
private java.lang.String exchange;
private int failures;
public void <init>(com.rabbitmq.client.ConnectionFactory, java.lang.String)
{
java.lang.String v;
com.codahale.metrics.graphite.GraphiteRabbitMQ v;
com.rabbitmq.client.ConnectionFactory v;
v := @this: com.codahale.metrics.graphite.GraphiteRabbitMQ;
v := @parameter: com.rabbitmq.client.ConnectionFactory;
v := @parameter: java.lang.String;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: com.rabbitmq.client.ConnectionFactory connectionFactory> = v;
v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: java.lang.String exchange> = v;
return;
}
public void <init>(java.lang.String, java.lang.Integer, java.lang.String, java.lang.String, java.lang.String)
{
java.lang.Integer v, v, v, v;
com.codahale.metrics.graphite.GraphiteRabbitMQ v;
java.lang.String v, v, v, v;
v := @this: com.codahale.metrics.graphite.GraphiteRabbitMQ;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Integer;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v = <com.codahale.metrics.graphite.GraphiteRabbitMQ: java.lang.Integer DEFAULT_RABBIT_CONNECTION_TIMEOUT_MS>;
v = <com.codahale.metrics.graphite.GraphiteRabbitMQ: java.lang.Integer DEFAULT_RABBIT_SOCKET_TIMEOUT_MS>;
v = <com.codahale.metrics.graphite.GraphiteRabbitMQ: java.lang.Integer DEFAULT_RABBIT_REQUESTED_HEARTBEAT_SEC>;
specialinvoke v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: void <init>(java.lang.String,java.lang.Integer,java.lang.String,java.lang.String,java.lang.String,java.lang.Integer,java.lang.Integer,java.lang.Integer)>(v, v, v, v, v, v, v, v);
return;
}
public void <init>(java.lang.String, java.lang.Integer, java.lang.String, java.lang.String, java.lang.String, java.lang.Integer, java.lang.Integer, java.lang.Integer)
{
java.lang.Integer v, v, v, v;
int v, v, v;
java.lang.String v, v, v, v;
com.rabbitmq.client.ConnectionFactory v, v, v, v, v, v, v, v;
com.codahale.metrics.graphite.GraphiteRabbitMQ$1 v;
com.codahale.metrics.graphite.GraphiteRabbitMQ v;
v := @this: com.codahale.metrics.graphite.GraphiteRabbitMQ;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Integer;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Integer;
v := @parameter: java.lang.Integer;
v := @parameter: java.lang.Integer;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: java.lang.String exchange> = v;
v = new com.rabbitmq.client.ConnectionFactory;
specialinvoke v.<com.rabbitmq.client.ConnectionFactory: void <init>()>();
v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: com.rabbitmq.client.ConnectionFactory connectionFactory> = v;
v = v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: com.rabbitmq.client.ConnectionFactory connectionFactory>;
v = new com.codahale.metrics.graphite.GraphiteRabbitMQ$1;
specialinvoke v.<com.codahale.metrics.graphite.GraphiteRabbitMQ$1: void <init>(com.codahale.metrics.graphite.GraphiteRabbitMQ,java.lang.Integer)>(v, v);
virtualinvoke v.<com.rabbitmq.client.ConnectionFactory: void setSocketConfigurator(com.rabbitmq.client.SocketConfigurator)>(v);
v = v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: com.rabbitmq.client.ConnectionFactory connectionFactory>;
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
virtualinvoke v.<com.rabbitmq.client.ConnectionFactory: void setConnectionTimeout(int)>(v);
v = v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: com.rabbitmq.client.ConnectionFactory connectionFactory>;
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
virtualinvoke v.<com.rabbitmq.client.ConnectionFactory: void setRequestedHeartbeat(int)>(v);
v = v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: com.rabbitmq.client.ConnectionFactory connectionFactory>;
virtualinvoke v.<com.rabbitmq.client.ConnectionFactory: void setHost(java.lang.String)>(v);
v = v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: com.rabbitmq.client.ConnectionFactory connectionFactory>;
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
virtualinvoke v.<com.rabbitmq.client.ConnectionFactory: void setPort(int)>(v);
v = v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: com.rabbitmq.client.ConnectionFactory connectionFactory>;
virtualinvoke v.<com.rabbitmq.client.ConnectionFactory: void setUsername(java.lang.String)>(v);
v = v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: com.rabbitmq.client.ConnectionFactory connectionFactory>;
virtualinvoke v.<com.rabbitmq.client.ConnectionFactory: void setPassword(java.lang.String)>(v);
return;
}
public void connect() throws java.lang.IllegalStateException, java.io.IOException
{
java.lang.IllegalStateException v, v;
com.rabbitmq.client.ConnectionFactory v;
java.util.concurrent.TimeoutException v;
com.rabbitmq.client.Connection v, v;
com.codahale.metrics.graphite.GraphiteRabbitMQ v;
com.rabbitmq.client.Channel v;
boolean v;
v := @this: com.codahale.metrics.graphite.GraphiteRabbitMQ;
v = virtualinvoke v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: boolean isConnected()>();
if v == 0 goto label;
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>("Already connected");
throw v;
label:
v = v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: com.rabbitmq.client.ConnectionFactory connectionFactory>;
v = virtualinvoke v.<com.rabbitmq.client.ConnectionFactory: com.rabbitmq.client.Connection newConnection()>();
v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: com.rabbitmq.client.Connection connection> = v;
label:
goto label;
label:
v := @caughtexception;
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
v = v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: com.rabbitmq.client.Connection connection>;
v = interfaceinvoke v.<com.rabbitmq.client.Connection: com.rabbitmq.client.Channel createChannel()>();
v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: com.rabbitmq.client.Channel channel> = v;
return;
catch java.util.concurrent.TimeoutException from label to label with label;
}
public boolean isConnected()
{
com.codahale.metrics.graphite.GraphiteRabbitMQ v;
com.rabbitmq.client.Connection v, v;
boolean v, v;
v := @this: com.codahale.metrics.graphite.GraphiteRabbitMQ;
v = v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: com.rabbitmq.client.Connection connection>;
if v == null goto label;
v = v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: com.rabbitmq.client.Connection connection>;
v = interfaceinvoke v.<com.rabbitmq.client.Connection: boolean isOpen()>();
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public void send(java.lang.String, java.lang.String, long) throws java.io.IOException
{
byte[] v;
java.io.IOException v;
long v;
com.codahale.metrics.graphite.GraphiteRabbitMQ v;
java.nio.charset.Charset v;
int v, v;
java.lang.String v, v, v, v, v, v, v;
com.rabbitmq.client.Channel v;
v := @this: com.codahale.metrics.graphite.GraphiteRabbitMQ;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: long;
label:
v = virtualinvoke v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: java.lang.String sanitize(java.lang.String)>(v);
v = virtualinvoke v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: java.lang.String sanitize(java.lang.String)>(v);
v = staticinvoke <java.lang.Long: java.lang.String toString(long)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(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[])>("\u \u \u0001\n");
v = v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: com.rabbitmq.client.Channel channel>;
v = v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: java.lang.String exchange>;
v = <java.nio.charset.StandardCharsets: java.nio.charset.Charset UTF_8>;
v = virtualinvoke v.<java.lang.String: byte[] getBytes(java.nio.charset.Charset)>(v);
interfaceinvoke v.<com.rabbitmq.client.Channel: void basicPublish(java.lang.String,java.lang.String,com.rabbitmq.client.AMQP$BasicProperties,byte[])>(v, v, null, v);
label:
goto label;
label:
v := @caughtexception;
v = v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: int failures>;
v = v + 1;
v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: int failures> = v;
throw v;
label:
return;
catch java.io.IOException from label to label with label;
}
public void flush() throws java.io.IOException
{
com.codahale.metrics.graphite.GraphiteRabbitMQ v;
v := @this: com.codahale.metrics.graphite.GraphiteRabbitMQ;
return;
}
public void close() throws java.io.IOException
{
com.rabbitmq.client.Connection v, v;
com.codahale.metrics.graphite.GraphiteRabbitMQ v;
v := @this: com.codahale.metrics.graphite.GraphiteRabbitMQ;
v = v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: com.rabbitmq.client.Connection connection>;
if v == null goto label;
v = v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: com.rabbitmq.client.Connection connection>;
interfaceinvoke v.<com.rabbitmq.client.Connection: void close()>();
label:
return;
}
public int getFailures()
{
int v;
com.codahale.metrics.graphite.GraphiteRabbitMQ v;
v := @this: com.codahale.metrics.graphite.GraphiteRabbitMQ;
v = v.<com.codahale.metrics.graphite.GraphiteRabbitMQ: int failures>;
return v;
}
public java.lang.String sanitize(java.lang.String)
{
java.lang.String v, v;
com.codahale.metrics.graphite.GraphiteRabbitMQ v;
v := @this: com.codahale.metrics.graphite.GraphiteRabbitMQ;
v := @parameter: java.lang.String;
v = staticinvoke <com.codahale.metrics.graphite.GraphiteSanitize: java.lang.String sanitize(java.lang.String)>(v);
return v;
}
static void <clinit>()
{
java.lang.Integer v, v, v;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(500);
<com.codahale.metrics.graphite.GraphiteRabbitMQ: java.lang.Integer DEFAULT_RABBIT_CONNECTION_TIMEOUT_MS> = v;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(5000);
<com.codahale.metrics.graphite.GraphiteRabbitMQ: java.lang.Integer DEFAULT_RABBIT_SOCKET_TIMEOUT_MS> = v;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(10);
<com.codahale.metrics.graphite.GraphiteRabbitMQ: java.lang.Integer DEFAULT_RABBIT_REQUESTED_HEARTBEAT_SEC> = v;
return;
}
}