@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);
@Override public String getDefaultValue() { return _param.defaultValue(); }
@Override public String getDescription() { return _param.description(); }
@Override public String getName() { return _param.name(); }
@Override public boolean isMandatory() { return _param.mandatory() || _type.isPrimitive(); }
@Override public List<String> getValidValues() { return Collections.unmodifiableList(Arrays.asList(_param.validValues())); }
@Override public boolean isCompatible(final OperationParameter that) { if (!_param.name().equals(that.getName())) { return false; } if (getType() != null ? !getType().equals(that.getType()) : that.getType() != null) { return false; } return !(getGenericType() != null ? !getGenericType().equals(that.getGenericType()) : that.getGenericType() != null); }
@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);
@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);
@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);
/** * Determines whether a message would be isBound to a particular queue using a specific routing key and arguments * @param bindingKey * @param arguments * @param queue * @return */ @DoOnConfigThread boolean isBound(@Param(name = "bindingKey") String bindingKey, @Param(name = "arguments") Map<String, Object> arguments, @Param(name = "queue") Queue<?> queue);
@ManagedOperation(description = "removes messages from this queue", changesConfiguredObjectState = false) List<Long> deleteMessages(@Param(name = "messageIds", description = "If provided, only messages in the queue whose (internal) message-id is supplied will be considered for deletion") List<Long> messageIds, @Param(name = "selector", description = "A (JMS) selector - if provided, only messages which match the selector will be considered for deletion") String selector, @Param(name = "limit", description = "Maximum number of messages to delete", defaultValue = "-1") int limit);
@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(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);
@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);