@ManagedOperation(nonModifying = true, description = "Returns metadata concerning the current connection", changesConfiguredObjectState = false, skipAclCheck = true) SocketConnectionMetaData getConnectionMetaData();
@ManagedOperation(nonModifying = true, description = "Extract message store content", secure = true, changesConfiguredObjectState = false) Content exportMessageStore();
@Override @ManagedOperation(nonModifying = true, changesConfiguredObjectState = false, associateAsIfChildren = true, skipAclCheck = true) Collection<? extends Connection<?>> getConnections();
@ManagedOperation(nonModifying = true, description = "Restart the broker within the same JVM", changesConfiguredObjectState = false, log = true) void restart();
@ManagedOperation(nonModifying = true, description = "Returns metadata concerning the current connection", changesConfiguredObjectState = false, skipAclCheck = true) SocketConnectionMetaData getConnectionMetaData();
@ManagedOperation( description = "Causes the ACL rules to be reloaded. Changes are applied immediately.", changesConfiguredObjectState = true) void reload(); }
@ManagedOperation(nonModifying = true, description = "Extract configuration", paramRequiringSecure = "includeSecureAttributes", changesConfiguredObjectState = false) Map<String,Object> extractConfig(@Param(name="includeSecureAttributes", description = "include attributes that may contain passwords or other " + "confidential information", defaultValue = "false") boolean includeSecureAttributes); @ManagedOperation(nonModifying = true,
@ManagedOperation(nonModifying = true, description = "Extract a Java KeyStore containing the certificate for the autogenerated key." + " The KeyStore can be used as a trust store by JMS client connecting to the broker", changesConfiguredObjectState = false) Content getClientTrustStore(@Param(name="password", defaultValue = "", description = "The password to use to secure the keystore (by default the empty string is used).") String password);
@ManagedOperation(description = "Remove given certificates from the Trust Store.", changesConfiguredObjectState = true) void removeCertificates(@Param(name = "certificates", description = "List of certificate details to be removed. The details should take the form given by the certificateDetails attribute", mandatory = true) List<CertificateDetails> certificates); }
@ManagedOperation(nonModifying = true, description = "Collects thread stack traces for the threads with names containing matching characters for given regular expression", changesConfiguredObjectState = false) Content findThreadStackTraces(@Param(name="threadNameFindExpression", description = "Regular expression to find threads with names containing matching characters") String threadNameFindExpression);
@ManagedOperation(nonModifying = true, description = "Collects thread stack traces and dead locks. Dumps stack traces into logs if requested", changesConfiguredObjectState = false) Content getThreadStackTraces(@Param(name="appendToLog", defaultValue = "false", description = "If true, appends stack traces into logs") boolean appendToLog);
@ManagedOperation(secure = true, description = "Publishes a message to a specified address. " + "Returns the number of queues onto which it has been placed, " + " or zero, if the address routes to no queues.", changesConfiguredObjectState = false) int publishMessage(@Param(name = "message", mandatory = true)ManageableMessage message);
@ManagedOperation(description = "Set context variable with given name to given value." + " Previous value is returned or null if not set directly on configured object.", changesConfiguredObjectState = true, skipAclCheck = true) String setContextVariable(@Param(name = "name", description = "Context variable name") String name, @Param(name = "value", description = "Context variable value") String value);
@ManagedOperation(description = "get information about the message with the given Id", nonModifying = true, paramRequiringSecure = "includeHeaders", changesConfiguredObjectState = false) MessageInfo getMessageInfoById(@Param(name = "messageId") long messageId, @Param(name = "includeHeaders", defaultValue = "true") boolean includeHeaders);
@SuppressWarnings("unused") @ManagedOperation(description = "Removes links with the given name and containerId pattern from the link registry.", changesConfiguredObjectState = false) void purgeLinkRegistry(@Param(name = "containerIdPattern", description = "Regular Expression to match the remote container id.", defaultValue = ".*") String containerIdPattern, @Param(name = "role", description = "whether to remove only sending links (\"SENDER\"), receiving links (\"RECEIVER\") or both (\"BOTH\")", validValues = {"SENDER", "RECEIVER", "BOTH"}, defaultValue = "BOTH") String role, @Param(name = "linkNamePattern", description = "Regular Expression to match the link names to be removed.", defaultValue = ".*") String linkNamePattern);
@ManagedOperation(description = "get information about a range of messages", nonModifying = true, paramRequiringSecure = "includeHeaders", changesConfiguredObjectState = false) List<MessageInfo> getMessageInfo(@Param(name = "first", defaultValue = "-1") int first, @Param(name = "last", defaultValue = "-1") int last, @Param(name = "includeHeaders", defaultValue = "false") boolean includeHeaders);
@ManagedOperation(nonModifying = true, secure = true, changesConfiguredObjectState = false, description = "Gets the message content") Content getMessageContent(@Param(name = "messageId") long messageId, @Param(name = "limit", defaultValue = "-1", description = "Number of bytes to return") long limit, @Param(name = "returnJson", defaultValue = "false", description = "If true, converts message content into JSON format. " + "If false, returned bytes may be in an encoded form") boolean returnJson, @Param(name = "decompressBeforeLimiting", defaultValue = "false", description = "If true, the operation will attempt to decompress the message" + "(should it be compressed) before applying any limit. If" + "decompression fails the operation will fail.") boolean decompressBeforeLimiting);
@ManagedOperation(description = "move messages from this queue to another", changesConfiguredObjectState = false) List<Long> moveMessages(@Param(name = "destination", description = "The queue to which the messages should be moved", mandatory = true) Queue<?> destination, @Param(name = "messageIds", description = "If provided, only messages in the queue whose (internal) message-id is supplied will be considered for moving") List<Long> messageIds, @Param(name = "selector", description = "A (JMS) selector - if provided, only messages which match the selector will be considered for moving") String selector, @Param(name = "limit", description = "Maximum number of messages to move", defaultValue = "-1") int limit);
@ManagedOperation(description = "copies messages from this queue to another", changesConfiguredObjectState = false) List<Long> copyMessages(@Param(name = "destination", description = "The queue to which the messages should be copied", mandatory = true) Queue<?> destination, @Param(name = "messageIds", description = "If provided, only messages in the queue whose (internal) message-id is supplied will be considered for copying") List<Long> messageIds, @Param(name = "selector", description = "A (JMS) selector - if provided, only messages which match the selector will be considered for copying") String selector, @Param(name = "limit", description = "Maximum number of messages to copy", defaultValue = "-1") int limit);
@ManagedOperation(changesConfiguredObjectState = true, description = "Bind a given destination to exchange using a given bindingKey and arguments." + " Existing binding arguments are replaced when replaceExistingArguments=true") boolean bind(@Param(name = "destination", mandatory = true) String destination, @Param(name = "bindingKey", mandatory = true) String bindingKey, @Param(name = "arguments", defaultValue = "{}") Map<String, Object> arguments, @Param(name = "replaceExistingArguments", defaultValue = "false") boolean replaceExistingArguments);