/** * Destroys the queue corresponding to the specified name. */ @Operation(desc = "Destroy a queue", impact = MBeanOperationInfo.ACTION) void destroyQueue(@Parameter(name = "name", desc = "Name of the queue to destroy") String name, @Parameter(name = "removeConsumers", desc = "Remove consumers of this queue") boolean removeConsumers) throws Exception;
/** * Closes all the connections of clients connected to this server which matches the specified IP address. */ @Operation(desc = "Closes all the connections for the given IP Address", impact = MBeanOperationInfo.INFO) boolean closeConnectionsForAddress(@Parameter(desc = "an IP address", name = "ipAddress") String ipAddress) throws Exception;
/** * Closes the consumer with the given id. */ @Operation(desc = "Closes the consumer with the id", impact = MBeanOperationInfo.INFO) boolean closeConsumerWithID(@Parameter(desc = "The session ID", name = "sessionID") String sessionID, @Parameter(desc = "The consumer ID", name = "ID") String ID) throws Exception;
/** * Moves the message corresponding to the specified message ID to the specified other queue. * * @return {@code true} if the message was moved, {@code false} else */ @Operation(desc = "Move the message corresponding to the given messageID to another queue. rejectDuplicate=false on this case", impact = MBeanOperationInfo.ACTION) boolean moveMessage(@Parameter(name = "messageID", desc = "A message ID") long messageID, @Parameter(name = "otherQueueName", desc = "The name of the queue to move the message to") String otherQueueName) throws Exception;
/** * Changes the priority for all the message corresponding to the specified filter to the specified priority. * <br> * Using {@code null} or an empty filter will change <em>all</em> messages from this queue. * * @return the number of changed messages */ @Operation(desc = "Change the priority of the messages corresponding to the given filter", impact = MBeanOperationInfo.ACTION) int changeMessagesPriority(@Parameter(name = "filter", desc = "A message filter (can be empty)") String filter, @Parameter(name = "newPriority", desc = "the new priority (between 0 and 9)") int newPriority) throws Exception;
/** * Heuristically rolls back a prepared transaction. * * @param transactionAsBase64 base 64 representation of a prepare transaction * @return {@code true} if the transaction was successfully rolled back, {@code false} else * @see #listPreparedTransactions() */ @Operation(desc = "Rollback a prepared transaction") boolean rollbackPreparedTransaction(@Parameter(desc = "the Base64 representation of a transaction", name = "transactionAsBase64") String transactionAsBase64) throws Exception;
/** * Lists the addresses of the clients connected to this address which matches the specified IP address. */ @Operation(desc = "List the client addresses which match the given IP Address", impact = MBeanOperationInfo.INFO) String[] listRemoteAddresses(@Parameter(desc = "an IP address", name = "ipAddress") String ipAddress) throws Exception;
@Operation(desc = "Add security settings for addresses matching the addressMatch", impact = MBeanOperationInfo.ACTION) void addSecuritySettings(@Parameter(desc = "an address match", name = "addressMatch") String addressMatch, @Parameter(desc = "a comma-separated list of roles allowed to send messages", name = "send") String sendRoles, @Parameter(desc = "a comma-separated list of roles allowed to consume messages", name = "consume") String consumeRoles, @Parameter(desc = "a comma-separated list of roles allowed to create durable queues", name = "createDurableQueueRoles") String createDurableQueueRoles, @Parameter(desc = "a comma-separated list of roles allowed to delete durable queues", name = "deleteDurableQueueRoles") String deleteDurableQueueRoles, @Parameter(desc = "a comma-separated list of roles allowed to create non durable queues", name = "createNonDurableQueueRoles") String createNonDurableQueueRoles, @Parameter(desc = "a comma-separated list of roles allowed to delete non durable queues", name = "deleteNonDurableQueueRoles") String deleteNonDurableQueueRoles, @Parameter(desc = "a comma-separated list of roles allowed to send management messages messages", name = "manage") String manageRoles, @Parameter(desc = "a comma-separated list of roles allowed to browse queues", name = "browse") String browseRoles, @Parameter(desc = "a comma-separated list of roles allowed to create addresses", name = "createAddressRoles") String createAddressRoles, @Parameter(desc = "a comma-separated list of roles allowed to delete addresses", name = "deleteAddressRoles") String deleteAddressRoles) throws Exception;
@Operation(desc = "Create a Divert", impact = MBeanOperationInfo.ACTION) void createDivert(@Parameter(name = "name", desc = "Name of the divert") String name, @Parameter(name = "routingName", desc = "Routing name of the divert") String routingName, @Parameter(name = "address", desc = "Address to divert from") String address, @Parameter(name = "forwardingAddress", desc = "Address to divert to") String forwardingAddress, @Parameter(name = "exclusive", desc = "Is the divert exclusive?") boolean exclusive, @Parameter(name = "filterString", desc = "Filter of the divert") String filterString, @Parameter(name = "transformerClassName", desc = "Class name of the divert's transformer") String transformerClassName, @Parameter(name = "routingType", desc = "How should the routing-type on the diverted messages be set?") String routingType) throws Exception;
/** * Counts the number of messages in this queue matching the specified filter. * <br> * Using {@code null} or an empty filter will count <em>all</em> messages from this queue. */ @Operation(desc = "Returns the number of the messages in the queue matching the given filter", impact = MBeanOperationInfo.INFO) long countMessages(@Parameter(name = "filter", desc = "A message filter (can be empty)") String filter) throws Exception;
/** * Removes the message corresponding to the specified message ID. * * @return {@code true} if the message was removed, {@code false} else */ @Operation(desc = "Remove the message corresponding to the given messageID", impact = MBeanOperationInfo.ACTION) boolean removeMessage(@Parameter(name = "messageID", desc = "A message ID") long messageID) throws Exception;
/** * Moves all the message corresponding to the specified filter to the specified other queue. * <br> * Using {@code null} or an empty filter will move <em>all</em> messages from this queue. * * @return the number of moved messages */ @Operation(desc = "Move the messages corresponding to the given filter (and returns the number of moved messages)", impact = MBeanOperationInfo.ACTION) int moveMessages(@Parameter(name = "filter", desc = "A message filter (can be empty)") String filter, @Parameter(name = "otherQueueName", desc = "The name of the queue to move the messages to") String otherQueueName, @Parameter(name = "rejectDuplicates", desc = "Reject messages identified as duplicate by the duplicate message") boolean rejectDuplicates) throws Exception;
@Operation(desc = "Move the messages corresponding to the given filter (and returns the number of moved messages)", impact = MBeanOperationInfo.ACTION) int moveMessages(@Parameter(name = "flushLimit", desc = "Limit to flush transactions during the operation to avoid OutOfMemory") int flushLimit, @Parameter(name = "filter", desc = "A message filter (can be empty)") String filter, @Parameter(name = "otherQueueName", desc = "The name of the queue to move the messages to") String otherQueueName, @Parameter(name = "rejectDuplicates", desc = "Reject messages identified as duplicate by the duplicate message") boolean rejectDuplicates) throws Exception;
/** * Heuristically commits a prepared transaction. * * @param transactionAsBase64 base 64 representation of a prepare transaction * @return {@code true} if the transaction was successfully committed, {@code false} else * @see #listPreparedTransactions() */ @Operation(desc = "Commit a prepared transaction") boolean commitPreparedTransaction(@Parameter(desc = "the Base64 representation of a transaction", name = "transactionAsBase64") String transactionAsBase64) throws Exception;
/** * Closes all the connections of clients connected to this server which matches the specified IP address. */ @Operation(desc = "Closes all the consumer connections for the given messaging address", impact = MBeanOperationInfo.INFO) boolean closeConsumerConnectionsForAddress(@Parameter(desc = "a messaging address", name = "address") String address) throws Exception;
@Operation(desc = "Add security settings for addresses matching the addressMatch", impact = MBeanOperationInfo.ACTION) void addSecuritySettings(@Parameter(desc = "an address match", name = "addressMatch") String addressMatch, @Parameter(desc = "a comma-separated list of roles allowed to send messages", name = "send") String sendRoles, @Parameter(desc = "a comma-separated list of roles allowed to consume messages", name = "consume") String consumeRoles, @Parameter(desc = "a comma-separated list of roles allowed to create durable queues", name = "createDurableQueueRoles") String createDurableQueueRoles, @Parameter(desc = "a comma-separated list of roles allowed to delete durable queues", name = "deleteDurableQueueRoles") String deleteDurableQueueRoles, @Parameter(desc = "a comma-separated list of roles allowed to create non durable queues", name = "createNonDurableQueueRoles") String createNonDurableQueueRoles, @Parameter(desc = "a comma-separated list of roles allowed to delete non durable queues", name = "deleteNonDurableQueueRoles") String deleteNonDurableQueueRoles, @Parameter(desc = "a comma-separated list of roles allowed to send management messages messages", name = "manage") String manageRoles) throws Exception;
@Operation(desc = "Create a Divert", impact = MBeanOperationInfo.ACTION) void createDivert(@Parameter(name = "name", desc = "Name of the divert") String name, @Parameter(name = "routingName", desc = "Routing name of the divert") String routingName, @Parameter(name = "address", desc = "Address to divert from") String address, @Parameter(name = "forwardingAddress", desc = "Address to divert to") String forwardingAddress, @Parameter(name = "exclusive", desc = "Is the divert exclusive?") boolean exclusive, @Parameter(name = "filterString", desc = "Filter of the divert") String filterString, @Parameter(name = "transformerClassName", desc = "Class name of the divert's transformer") String transformerClassName, @Parameter(name = "transformerProperties", desc = "Configuration properties of the divert's transformer") Map<String, String> transformerProperties, @Parameter(name = "routingType", desc = "How should the routing-type on the diverted messages be set?") String routingType) throws Exception;