* Copyright 2011 Red Hat, Inc, and individual contributors.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
A Stomplet is a small Java class that performs two functions related to asynchronous message processing:
A single Stomplet may be configured to services multiple destinations based upon routing rules.
configThe configuration for the stomplet.
org.projectodd.stilts.stomp.StompExceptionIf an error occurs during initialization.
org.projectodd.stilts.stomp.StompExceptionIf an error occurs during destruction.
In the event the stomplet is servicing multiple destinations, the
stomplet may need to inspect the
for details as to
how to handle the incoming message.
If named-segments are present in the applicable routing rule, each named
segment is added to the message's header values, prefixed with
For instance, the following routing rule:
ROUTE /queues/:queue_name com.mycorp.MyStomplet
Would result in all inbound messages with matching destinations to have a
stomplet.queue_name added to it, with the value
being the matching portion of the destination.
messageThe inbound message.
sessionThe user session.
org.projectodd.stilts.stomp.StompExceptionIf an error occurs while processing the message.
For subscription requests matching destinations mapped to this
method will be invoked
object. If the stomplet chooses to
allow the subscription, it may route further messages to the
Subscriber to satisfy the subscription.
If it chooses to deny the subscription request (for any reason),
StompException is appropriate.
subscriberThe live subscriber making the request.
org.projectodd.stilts.stomp.StompExceptionIf an error occurs processing the subscription request.
When a client explicitly cancels a subscription, or disconnects,
the stomplet is notified through
having the same
instance passed to it.
subscriberThe subscriber cancelling the subscription.
org.projectodd.stilts.stomp.StompExceptionIf an error occurs processing the subscription cancellation request.