Package io.vertx.ext.stomp
Interface Destination
-
- All Superinterfaces:
Shareable
public interface Destination extends Shareable
Represents a STOMP destination. Depending on the implementation, the message delivery is different. Queue are sending message to only one subscribers, while topics are broadcasting the message to all subscribers. Implementations must be thread-safe.- Author:
- Clement Escoffier
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Modifier and Type Method Description booleanack(StompServerConnection connection, Frame frame)Handles aACKframe.static Destinationbridge(Vertx vertx, BridgeOptions options)Stringdestination()Destinationdispatch(StompServerConnection connection, Frame frame)Dispatches the given frame.List<String>getSubscriptions(StompServerConnection connection)Gets all subscription ids for the given destination hold by the given clientbooleanmatches(String address)Checks whether or not the given address matches with the current destination.booleannack(StompServerConnection connection, Frame frame)Handles aNACKframe.intnumberOfSubscriptions()Gets the number of subscriptions attached to the currentDestination.static Destinationqueue(Vertx vertx, String destination)Destinationsubscribe(StompServerConnection connection, Frame frame)Handles a subscription request to the currentDestination.static Destinationtopic(Vertx vertx, String destination)booleanunsubscribe(StompServerConnection connection, Frame frame)Handles a un-subscription request to the currentDestination.DestinationunsubscribeConnection(StompServerConnection connection)Removes all subscriptions of the given connection
-
-
-
Method Detail
-
topic
static Destination topic(Vertx vertx, String destination)
-
queue
static Destination queue(Vertx vertx, String destination)
-
bridge
static Destination bridge(Vertx vertx, BridgeOptions options)
-
destination
String destination()
- Returns:
- the destination address.
-
dispatch
Destination dispatch(StompServerConnection connection, Frame frame)
Dispatches the given frame.- Parameters:
connection- the connectionframe- the frame- Returns:
- the current instance of
Destination
-
subscribe
Destination subscribe(StompServerConnection connection, Frame frame)
Handles a subscription request to the currentDestination.- Parameters:
connection- the connectionframe- theSUBSCRIBEframe- Returns:
- the current instance of
Destination
-
unsubscribe
boolean unsubscribe(StompServerConnection connection, Frame frame)
Handles a un-subscription request to the currentDestination.- Parameters:
connection- the connectionframe- theUNSUBSCRIBEframe- Returns:
trueif the un-subscription has been handled,falseotherwise.
-
unsubscribeConnection
Destination unsubscribeConnection(StompServerConnection connection)
Removes all subscriptions of the given connection- Parameters:
connection- the connection- Returns:
- the current instance of
Destination
-
ack
boolean ack(StompServerConnection connection, Frame frame)
Handles aACKframe.- Parameters:
connection- the connectionframe- theACKframe- Returns:
trueif the destination has handled the frame (meaning it has sent the message with id)
-
nack
boolean nack(StompServerConnection connection, Frame frame)
Handles aNACKframe.- Parameters:
connection- the connectionframe- theNACKframe- Returns:
trueif the destination has handled the frame (meaning it has sent the message with id)
-
getSubscriptions
List<String> getSubscriptions(StompServerConnection connection)
Gets all subscription ids for the given destination hold by the given client- Parameters:
connection- the connection (client)- Returns:
- the list of subscription id, empty if none
-
numberOfSubscriptions
int numberOfSubscriptions()
Gets the number of subscriptions attached to the currentDestination.- Returns:
- the number of subscriptions.
-
matches
boolean matches(String address)
Checks whether or not the given address matches with the current destination.- Parameters:
address- the address- Returns:
trueif it matches,falseotherwise.
-
-