public class org.apache.activemq.transport.amqp.message.JMSMappingInboundTransformer extends org.apache.activemq.transport.amqp.message.InboundTransformer
{
public void <init>()
{
org.apache.activemq.transport.amqp.message.JMSMappingInboundTransformer v;
v := @this: org.apache.activemq.transport.amqp.message.JMSMappingInboundTransformer;
specialinvoke v.<org.apache.activemq.transport.amqp.message.InboundTransformer: void <init>()>();
return;
}
public java.lang.String getTransformerName()
{
org.apache.activemq.transport.amqp.message.JMSMappingInboundTransformer v;
v := @this: org.apache.activemq.transport.amqp.message.JMSMappingInboundTransformer;
return "jms";
}
public org.apache.activemq.transport.amqp.message.InboundTransformer getFallbackTransformer()
{
org.apache.activemq.transport.amqp.message.JMSMappingInboundTransformer v;
org.apache.activemq.transport.amqp.message.AMQPNativeInboundTransformer v;
v := @this: org.apache.activemq.transport.amqp.message.JMSMappingInboundTransformer;
v = new org.apache.activemq.transport.amqp.message.AMQPNativeInboundTransformer;
specialinvoke v.<org.apache.activemq.transport.amqp.message.AMQPNativeInboundTransformer: void <init>()>();
return v;
}
protected org.apache.activemq.command.ActiveMQMessage doTransform(org.apache.activemq.transport.amqp.message.EncodedMessage) throws java.lang.Exception
{
byte v;
org.apache.activemq.command.ActiveMQMessage v;
long v, v;
org.apache.qpid.proton.message.Message v;
org.apache.activemq.transport.amqp.message.JMSMappingInboundTransformer v;
org.apache.activemq.transport.amqp.message.EncodedMessage v;
v := @this: org.apache.activemq.transport.amqp.message.JMSMappingInboundTransformer;
v := @parameter: org.apache.activemq.transport.amqp.message.EncodedMessage;
v = virtualinvoke v.<org.apache.activemq.transport.amqp.message.EncodedMessage: org.apache.qpid.proton.message.Message decode()>();
v = specialinvoke v.<org.apache.activemq.transport.amqp.message.JMSMappingInboundTransformer: org.apache.activemq.command.ActiveMQMessage createMessage(org.apache.qpid.proton.message.Message,org.apache.activemq.transport.amqp.message.EncodedMessage)>(v, v);
virtualinvoke v.<org.apache.activemq.transport.amqp.message.JMSMappingInboundTransformer: void populateMessage(org.apache.activemq.command.ActiveMQMessage,org.apache.qpid.proton.message.Message)>(v, v);
v = virtualinvoke v.<org.apache.activemq.transport.amqp.message.EncodedMessage: long getMessageFormat()>();
v = v cmp 0L;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.activemq.transport.amqp.message.EncodedMessage: long getMessageFormat()>();
virtualinvoke v.<org.apache.activemq.command.ActiveMQMessage: void setLongProperty(java.lang.String,long)>("JMS_AMQP_MESSAGE_FORMAT", v);
label:
return v;
}
private org.apache.activemq.command.ActiveMQMessage createMessage(org.apache.qpid.proton.message.Message, org.apache.activemq.transport.amqp.message.EncodedMessage) throws java.lang.Exception
{
byte[] v, v, v, v, v, v, v;
byte v;
java.nio.charset.CharsetDecoder v;
org.apache.activemq.transport.amqp.message.EncodedMessage v;
org.apache.qpid.proton.amqp.messaging.Section v;
java.nio.charset.CharacterCodingException v;
org.apache.activemq.command.ActiveMQObjectMessage v;
java.lang.String v, v, v, v;
java.lang.RuntimeException v;
org.apache.activemq.command.ActiveMQMessage v, v, v;
java.nio.ByteBuffer v;
org.apache.qpid.proton.amqp.Binary v;
boolean v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.nio.CharBuffer v;
java.util.List v;
org.apache.activemq.command.ActiveMQBytesMessage v;
org.apache.activemq.command.ActiveMQTextMessage v;
java.nio.charset.Charset v, v, v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.qpid.proton.message.Message v;
java.util.Iterator v, v;
org.apache.activemq.command.ActiveMQStreamMessage v, v;
java.lang.Class v;
java.lang.Object v, v, v;
org.apache.activemq.transport.amqp.AmqpProtocolException v;
org.apache.activemq.transport.amqp.message.JMSMappingInboundTransformer v;
v := @this: org.apache.activemq.transport.amqp.message.JMSMappingInboundTransformer;
v := @parameter: org.apache.qpid.proton.message.Message;
v := @parameter: org.apache.activemq.transport.amqp.message.EncodedMessage;
v = interfaceinvoke v.<org.apache.qpid.proton.message.Message: org.apache.qpid.proton.amqp.messaging.Section getBody()>();
if v != null goto label;
v = staticinvoke <org.apache.activemq.transport.amqp.message.AmqpMessageSupport: boolean isContentType(java.lang.String,org.apache.qpid.proton.message.Message)>("application/x-java-serialized-object", v);
if v == 0 goto label;
v = new org.apache.activemq.command.ActiveMQObjectMessage;
specialinvoke v.<org.apache.activemq.command.ActiveMQObjectMessage: void <init>()>();
v = v;
goto label;
label:
v = staticinvoke <org.apache.activemq.transport.amqp.message.AmqpMessageSupport: boolean isContentType(java.lang.String,org.apache.qpid.proton.message.Message)>("application/octet-stream", v);
if v != 0 goto label;
v = staticinvoke <org.apache.activemq.transport.amqp.message.AmqpMessageSupport: boolean isContentType(java.lang.String,org.apache.qpid.proton.message.Message)>(null, v);
if v == 0 goto label;
label:
v = new org.apache.activemq.command.ActiveMQBytesMessage;
specialinvoke v.<org.apache.activemq.command.ActiveMQBytesMessage: void <init>()>();
v = v;
goto label;
label:
v = interfaceinvoke v.<org.apache.qpid.proton.message.Message: java.lang.String getContentType()>();
v = staticinvoke <org.apache.activemq.transport.amqp.message.AmqpMessageSupport: java.nio.charset.Charset getCharsetForTextualContent(java.lang.String)>(v);
if v == null goto label;
v = new org.apache.activemq.command.ActiveMQTextMessage;
specialinvoke v.<org.apache.activemq.command.ActiveMQTextMessage: void <init>()>();
v = v;
goto label;
label:
v = new org.apache.activemq.command.ActiveMQMessage;
specialinvoke v.<org.apache.activemq.command.ActiveMQMessage: void <init>()>();
v = v;
label:
virtualinvoke v.<org.apache.activemq.command.ActiveMQMessage: void setShortProperty(java.lang.String,short)>("JMS_AMQP_ORIGINAL_ENCODING", 1);
goto label;
label:
v = v instanceof org.apache.qpid.proton.amqp.messaging.Data;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.qpid.proton.amqp.messaging.Data: org.apache.qpid.proton.amqp.Binary getValue()>();
v = staticinvoke <org.apache.activemq.transport.amqp.message.AmqpMessageSupport: boolean isContentType(java.lang.String,org.apache.qpid.proton.message.Message)>("application/x-java-serialized-object", v);
if v == 0 goto label;
v = virtualinvoke v.<org.apache.qpid.proton.amqp.Binary: byte[] getArray()>();
v = virtualinvoke v.<org.apache.qpid.proton.amqp.Binary: int getArrayOffset()>();
v = virtualinvoke v.<org.apache.qpid.proton.amqp.Binary: int getLength()>();
v = staticinvoke <org.apache.activemq.transport.amqp.message.JMSMappingInboundTransformer: org.apache.activemq.command.ActiveMQObjectMessage createObjectMessage(byte[],int,int)>(v, v, v);
goto label;
label:
v = staticinvoke <org.apache.activemq.transport.amqp.message.AmqpMessageSupport: boolean isContentType(java.lang.String,org.apache.qpid.proton.message.Message)>("application/octet-stream", v);
if v == 0 goto label;
v = virtualinvoke v.<org.apache.qpid.proton.amqp.Binary: byte[] getArray()>();
v = virtualinvoke v.<org.apache.qpid.proton.amqp.Binary: int getArrayOffset()>();
v = virtualinvoke v.<org.apache.qpid.proton.amqp.Binary: int getLength()>();
v = staticinvoke <org.apache.activemq.transport.amqp.message.JMSMappingInboundTransformer: org.apache.activemq.command.ActiveMQBytesMessage createBytesMessage(byte[],int,int)>(v, v, v);
goto label;
label:
v = interfaceinvoke v.<org.apache.qpid.proton.message.Message: java.lang.String getContentType()>();
v = staticinvoke <org.apache.activemq.transport.amqp.message.AmqpMessageSupport: java.nio.charset.Charset getCharsetForTextualContent(java.lang.String)>(v);
v = <java.nio.charset.StandardCharsets: java.nio.charset.Charset UTF_8>;
v = virtualinvoke v.<java.nio.charset.Charset: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = virtualinvoke v.<org.apache.qpid.proton.amqp.Binary: byte[] getArray()>();
v = virtualinvoke v.<org.apache.qpid.proton.amqp.Binary: int getArrayOffset()>();
v = virtualinvoke v.<org.apache.qpid.proton.amqp.Binary: int getLength()>();
v = staticinvoke <java.nio.ByteBuffer: java.nio.ByteBuffer wrap(byte[],int,int)>(v, v, v);
label:
v = virtualinvoke v.<java.nio.charset.Charset: java.nio.charset.CharsetDecoder newDecoder()>();
v = virtualinvoke v.<java.nio.charset.CharsetDecoder: java.nio.CharBuffer decode(java.nio.ByteBuffer)>(v);
v = staticinvoke <java.lang.String: java.lang.String valueOf(java.lang.Object)>(v);
v = staticinvoke <org.apache.activemq.transport.amqp.message.JMSMappingInboundTransformer: org.apache.activemq.command.ActiveMQTextMessage createTextMessage(java.lang.String)>(v);
label:
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<org.apache.qpid.proton.amqp.Binary: byte[] getArray()>();
v = virtualinvoke v.<org.apache.qpid.proton.amqp.Binary: int getArrayOffset()>();
v = virtualinvoke v.<org.apache.qpid.proton.amqp.Binary: int getLength()>();
v = staticinvoke <org.apache.activemq.transport.amqp.message.JMSMappingInboundTransformer: org.apache.activemq.command.ActiveMQBytesMessage createBytesMessage(byte[],int,int)>(v, v, v);
goto label;
label:
v = virtualinvoke v.<org.apache.qpid.proton.amqp.Binary: byte[] getArray()>();
v = virtualinvoke v.<org.apache.qpid.proton.amqp.Binary: int getArrayOffset()>();
v = virtualinvoke v.<org.apache.qpid.proton.amqp.Binary: int getLength()>();
v = staticinvoke <org.apache.activemq.transport.amqp.message.JMSMappingInboundTransformer: org.apache.activemq.command.ActiveMQBytesMessage createBytesMessage(byte[],int,int)>(v, v, v);
label:
virtualinvoke v.<org.apache.activemq.command.ActiveMQMessage: void setShortProperty(java.lang.String,short)>("JMS_AMQP_ORIGINAL_ENCODING", 2);
goto label;
label:
v = v instanceof org.apache.qpid.proton.amqp.messaging.AmqpSequence;
if v == 0 goto label;
v = new org.apache.activemq.command.ActiveMQStreamMessage;
specialinvoke v.<org.apache.activemq.command.ActiveMQStreamMessage: void <init>()>();
v = virtualinvoke v.<org.apache.qpid.proton.amqp.messaging.AmqpSequence: java.util.List getValue()>();
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
virtualinvoke v.<org.apache.activemq.command.ActiveMQStreamMessage: void writeObject(java.lang.Object)>(v);
goto label;
label:
v = v;
virtualinvoke v.<org.apache.activemq.command.ActiveMQMessage: void setShortProperty(java.lang.String,short)>("JMS_AMQP_ORIGINAL_ENCODING", 3);
goto label;
label:
v = v instanceof org.apache.qpid.proton.amqp.messaging.AmqpValue;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.qpid.proton.amqp.messaging.AmqpValue: java.lang.Object getValue()>();
if v == null goto label;
v = v instanceof java.lang.String;
if v == 0 goto label;
label:
v = staticinvoke <org.apache.activemq.transport.amqp.message.JMSMappingInboundTransformer: org.apache.activemq.command.ActiveMQTextMessage createTextMessage(java.lang.String)>(v);
v = v;
if v != null goto label;
v = 4;
goto label;
label:
v = 5;
label:
virtualinvoke v.<org.apache.activemq.command.ActiveMQMessage: void setShortProperty(java.lang.String,short)>("JMS_AMQP_ORIGINAL_ENCODING", v);
goto label;
label:
v = v instanceof org.apache.qpid.proton.amqp.Binary;
if v == 0 goto label;
v = staticinvoke <org.apache.activemq.transport.amqp.message.AmqpMessageSupport: boolean isContentType(java.lang.String,org.apache.qpid.proton.message.Message)>("application/x-java-serialized-object", v);
if v == 0 goto label;
v = virtualinvoke v.<org.apache.qpid.proton.amqp.Binary: byte[] getArray()>();
v = virtualinvoke v.<org.apache.qpid.proton.amqp.Binary: int getArrayOffset()>();
v = virtualinvoke v.<org.apache.qpid.proton.amqp.Binary: int getLength()>();
v = staticinvoke <org.apache.activemq.transport.amqp.message.JMSMappingInboundTransformer: org.apache.activemq.command.ActiveMQObjectMessage createObjectMessage(byte[],int,int)>(v, v, v);
goto label;
label:
v = virtualinvoke v.<org.apache.qpid.proton.amqp.Binary: byte[] getArray()>();
v = virtualinvoke v.<org.apache.qpid.proton.amqp.Binary: int getArrayOffset()>();
v = virtualinvoke v.<org.apache.qpid.proton.amqp.Binary: int getLength()>();
v = staticinvoke <org.apache.activemq.transport.amqp.message.JMSMappingInboundTransformer: org.apache.activemq.command.ActiveMQBytesMessage createBytesMessage(byte[],int,int)>(v, v, v);
label:
virtualinvoke v.<org.apache.activemq.command.ActiveMQMessage: void setShortProperty(java.lang.String,short)>("JMS_AMQP_ORIGINAL_ENCODING", 6);
goto label;
label:
v = v instanceof java.util.List;
if v == 0 goto label;
v = new org.apache.activemq.command.ActiveMQStreamMessage;
specialinvoke v.<org.apache.activemq.command.ActiveMQStreamMessage: void <init>()>();
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
virtualinvoke v.<org.apache.activemq.command.ActiveMQStreamMessage: void writeObject(java.lang.Object)>(v);
goto label;
label:
v = v;
virtualinvoke v.<org.apache.activemq.command.ActiveMQMessage: void setShortProperty(java.lang.String,short)>("JMS_AMQP_ORIGINAL_ENCODING", 8);
goto label;
label:
v = v instanceof java.util.Map;
if v == 0 goto label;
v = staticinvoke <org.apache.activemq.transport.amqp.message.JMSMappingInboundTransformer: org.apache.activemq.command.ActiveMQMapMessage createMapMessage(java.util.Map)>(v);
virtualinvoke v.<org.apache.activemq.command.ActiveMQMessage: void setShortProperty(java.lang.String,short)>("JMS_AMQP_ORIGINAL_ENCODING", 7);
goto label;
label:
v = new org.apache.activemq.transport.amqp.AmqpProtocolException;
specialinvoke v.<org.apache.activemq.transport.amqp.AmqpProtocolException: void <init>(java.lang.String,boolean)>("Unable to encode to ActiveMQ JMS Message", 0);
throw v;
label:
v = new java.lang.RuntimeException;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.Class)>(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[])>("Unexpected body type: \u0001");
specialinvoke v.<java.lang.RuntimeException: void <init>(java.lang.String)>(v);
throw v;
label:
return v;
catch java.nio.charset.CharacterCodingException from label to label with label;
}
private static org.apache.activemq.command.ActiveMQBytesMessage createBytesMessage(byte[], int, int)
{
org.apache.activemq.command.ActiveMQBytesMessage v;
byte[] v;
int v, v;
org.apache.activemq.util.ByteSequence v;
v := @parameter: byte[];
v := @parameter: int;
v := @parameter: int;
v = new org.apache.activemq.command.ActiveMQBytesMessage;
specialinvoke v.<org.apache.activemq.command.ActiveMQBytesMessage: void <init>()>();
v = new org.apache.activemq.util.ByteSequence;
specialinvoke v.<org.apache.activemq.util.ByteSequence: void <init>(byte[],int,int)>(v, v, v);
virtualinvoke v.<org.apache.activemq.command.ActiveMQBytesMessage: void setContent(org.apache.activemq.util.ByteSequence)>(v);
return v;
}
public static org.apache.activemq.command.ActiveMQTextMessage createTextMessage(java.lang.String)
{
java.lang.Throwable v;
java.lang.String v;
org.apache.activemq.command.ActiveMQTextMessage v;
v := @parameter: java.lang.String;
v = new org.apache.activemq.command.ActiveMQTextMessage;
specialinvoke v.<org.apache.activemq.command.ActiveMQTextMessage: void <init>()>();
label:
virtualinvoke v.<org.apache.activemq.command.ActiveMQTextMessage: void setText(java.lang.String)>(v);
label:
goto label;
label:
v := @caughtexception;
label:
return v;
catch javax.jms.MessageNotWriteableException from label to label with label;
}
public static org.apache.activemq.command.ActiveMQObjectMessage createObjectMessage(byte[], int, int)
{
org.apache.activemq.command.ActiveMQObjectMessage v;
byte[] v;
int v, v;
org.apache.activemq.util.ByteSequence v;
v := @parameter: byte[];
v := @parameter: int;
v := @parameter: int;
v = new org.apache.activemq.command.ActiveMQObjectMessage;
specialinvoke v.<org.apache.activemq.command.ActiveMQObjectMessage: void <init>()>();
v = new org.apache.activemq.util.ByteSequence;
specialinvoke v.<org.apache.activemq.util.ByteSequence: void <init>(byte[],int,int)>(v, v, v);
virtualinvoke v.<org.apache.activemq.command.ActiveMQObjectMessage: void setContent(org.apache.activemq.util.ByteSequence)>(v);
return v;
}
public static org.apache.activemq.command.ActiveMQMapMessage createMapMessage(java.util.Map) throws javax.jms.JMSException
{
byte[] v;
java.util.Iterator v;
org.apache.activemq.command.ActiveMQMapMessage v;
java.util.Set v;
java.util.Map v;
int v, v;
java.lang.Object v, v, v;
boolean v, v;
v := @parameter: java.util.Map;
v = new org.apache.activemq.command.ActiveMQMapMessage;
specialinvoke v.<org.apache.activemq.command.ActiveMQMapMessage: void <init>()>();
v = interfaceinvoke v.<java.util.Map: java.util.Set entrySet()>();
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getValue()>();
v = v instanceof org.apache.qpid.proton.amqp.Binary;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.qpid.proton.amqp.Binary: byte[] getArray()>();
v = virtualinvoke v.<org.apache.qpid.proton.amqp.Binary: int getArrayOffset()>();
v = virtualinvoke v.<org.apache.qpid.proton.amqp.Binary: int getLength()>();
v = staticinvoke <java.util.Arrays: byte[] copyOfRange(byte[],int,int)>(v, v, v);
label:
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getKey()>();
virtualinvoke v.<org.apache.activemq.command.ActiveMQMapMessage: void setObject(java.lang.String,java.lang.Object)>(v, v);
goto label;
label:
return v;
}
}