MQTTv3 has a "Last Will" feature that JMS users would also benefit from. A developer registers a "Last Will" message when connecting to the server and when the connection is disconnected (intentionally, or unintentionally) the broker delivers the Last Will message to a destination that is defined during the session setup. This allows application developers and administrators to implement automated handling of error conditions without the need for a number of 3rd party or provider-specific tools.
The one improvement on the MQTT implementation would be to support a closing of the session without delivering the Last Will message, so you could support a scenario where the Last Will message is only delivered for unplanned disconnects.
API additions:
JMSContext.createLastWill(Destination dest, Message msg)
JMSContext.close(boolean doNotDeliverLastWill) // default to true
MQTTv3 has a "Last Will" feature that JMS users would also benefit from. A developer registers a "Last Will" message when connecting to the server and when the connection is disconnected (intentionally, or unintentionally) the broker delivers the Last Will message to a destination that is defined during the session setup. This allows application developers and administrators to implement automated handling of error conditions without the need for a number of 3rd party or provider-specific tools.
The one improvement on the MQTT implementation would be to support a closing of the session without delivering the Last Will message, so you could support a scenario where the Last Will message is only delivered for unplanned disconnects.
API additions: