Table of Contents | ||
---|---|---|
|
javax.jms.Message
Task | Complete? | Estimate | Sprint | Notes | ||
---|---|---|---|---|---|---|
clearBody() | To be implemented with each message type implementation | |||||
clearProperties() | Read/write state handling still to be added. Additional handling still to be added for custom vendor properties as they are individually implemented. | |||||
| Additional property name validation still required, valid Java identifiers etc. | |||||
setJMSCorrelationID(java.lang.String correlationID)
| Requires an encoding/decoding scheme to be developed to allow retaining the underlying type information, as AMQP message-ids/correlation-ids can be a number of different types. | |||||
| There is scope for optimizing NON_PERSISTENT messages by removing the AMQP header if all fields are at their default values and can be removed. | |||||
| The current transmission of destination-type information is rather verbose. There is scope to change this in order to significantly reduce the added per-message overhead. | |||||
| ||||||
| Requires an encoding/decoding scheme to be developed to allow retaining the underlying type information, as AMQP message-ids/correlation-ids can be a number of different types. | |||||
| ||||||
| Somewhat dependant on implementing AMQP delivery-count header handling. setJMSRelivered makes no sense as the spec explicitly says you dont use it when sending messages (yours or foreign). | |||||
| The current transmission of destination-type information is rather verbose. There is scope to change this in order to significantly reduce the added per-message overhead. | |||||
| ||||||
| ||||||
acknowledge() | Part of implementing Client-Ack sessions. | |||||
JMSXUserId | [1] | |||||
JMSXGroupID | [1] | |||||
JMSXGroupSeq | [1] | |||||
JMSXDeliveryCount | [1] | |||||
JMSXAppID | [1] | |||||
JMS_AMQP_TTL | [1] | |||||
JMS_AMQP_FIRST_ACQUIRER | [1] | |||||
JMS_AMQP_SUBJECT | [1] | |||||
JMS_AMQP_CONTENT_TYPE | [1] | |||||
JMS_AMQP_CONTENT_ENCODING | [1] | |||||
JMS_AMQP_REPLY_TO_GROUP_ID | [1] |
...
[1] Handling will be required to deal with clashes where entries exist in the AMQP application-properties section with the same property name as would be used to access the relevant information which was actually carried on the AMQP header/properties. (e.g group information relating to JMSXGroupId will be carried in the AMQP properties section, so what happens when there is an application-properties entry with that key.
javax.jms.TextMessage
Task | Complete? | Estimate | Sprint | Notes | |
---|---|---|---|---|---|
| When implemented, needs to handle content-type in the case where a message was initially received and of an alternative AMQP message representation than the client defaults to sending. | ||||
getText() | |||||
setText(java.lang.String string) |
javax.jms.BytesMessage
...
Task | Complete? | Estimate | Sprint | Notes | |
---|---|---|---|---|---|
| When implemented, needs to handle content-type in the case where a message was initially received and of an alternative AMQP message representation than the client defaults to sending. | ||||
getBodyLength() | Only implemented for received message content so far. | ||||
readBoolean() readByte() readBytes(byte[] value) readBytes(byte[] value, int length) readChar() readDouble() readFloat() readInt() readLong() readShort() readUnsignedByte() readUnsignedShort() readUTF() | Only implemented a very basic readBytes(byte[ ]) thus far, which still needs readable/writable handling.
| ||||
reset() | |||||
writeBoolean(boolean value) writeByte(byte value) writeBytes(byte[] value) writeBytes(byte[] value, int offset, int length) writeChar(char value) writeDouble(double value) writeFloat(float value) writeInt(int value) writeLong(long value) writeObject(java.lang.Object value) writeShort(short value) writeUTF(java.lang.String value) | Only implemented a very basic writeBytes(byte[ ]) thus far, which still needs readable/writable handling. |
javax.jms.ObjectMessage
...
Task | Complete? | Estimate | Sprint | Notes | |
---|---|---|---|---|---|
|
| ||||
getObject() | |||||
setObject(Serializable object) |
javax.jms.MapMessage
Task | Complete? | Estimate | Sprint | Notes | |
---|---|---|---|---|---|
|
| ||||
getBoolean(String name) | |||||
getByte(String name) | |||||
getBytes(String name) | |||||
getChar(String name) | |||||
getDouble(String name) | |||||
getFloat(String name) | |||||
getInt(String name) | |||||
getLong(String name) | |||||
getObject(String name) | |||||
getShort(String name) | |||||
getString(String name) | |||||
getMapNames() | |||||
itemExists(String name) | |||||
setBoolean(String name, boolean value) | |||||
setByte(String name, byte value) | |||||
setBytes(String name, byte[] value) | |||||
setBytes(String name, byte[] value, int offset, int length) | |||||
setChar(String name, char value) | |||||
setDouble(String name, double value) | |||||
setFloat(String name, float value) | |||||
setInt(String name, int value) | |||||
setLong(String name, long value) | |||||
setObject(String name, Object value) | |||||
setShort(String name, short value) | |||||
setString(String name, String value) |
...
javax.jms.StreamMessage
...
Task | Complete? | Estimate | Sprint | Notes | |
---|---|---|---|---|---|
|
| ||||
readBoolean() | |||||
readByte() | |||||
readBytes(byte[] value) | |||||
readChar() | |||||
readDouble() | |||||
readFloat() | |||||
readInt() | |||||
readLong() | |||||
readObject() | |||||
readShort() | |||||
readString() | |||||
reset() | |||||
writeBoolean(boolean value) | |||||
writeByte(byte value) | |||||
writeBytes(byte[] value) | |||||
writeBytes(byte[] value, int offset, int length) | |||||
writeChar(char value) | |||||
writeDouble(double value) | |||||
writeFloat(float value) | |||||
writeInt(int value) | |||||
writeLong(long value) | |||||
writeObject(Object value) | |||||
writeShort(short value) | |||||
writeString(String value) |