com.rabbitmq.tools.jsonrpc.ProcedureDescription Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of amqp-client Show documentation
Show all versions of amqp-client Show documentation
The RabbitMQ Java client library allows Java applications to interface with RabbitMQ.
// The contents of this file are subject to the Mozilla Public License
// Version 1.1 (the "License"); you may not use this file except in
// compliance with the License. You may obtain a copy of the License
// at http://www.mozilla.org/MPL/
//
// Software distributed under the License is distributed on an "AS IS"
// basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
// the License for the specific language governing rights and
// limitations under the License.
//
// The Original Code is RabbitMQ.
//
// The Initial Developer of the Original Code is GoPivotal, Inc.
// Copyright (c) 2007-2014 GoPivotal, Inc. All rights reserved.
//
package com.rabbitmq.tools.jsonrpc;
import java.lang.reflect.Method;
import java.util.List;
import java.util.Map;
import com.rabbitmq.tools.json.JSONUtil;
/**
* Description of a single JSON-RPC procedure.
*/
public class ProcedureDescription {
/** Procedure name */
public String name;
/** Human-readable procedure summary */
public String summary;
/** Human-readable instructions for how to get information on the procedure's operation */
public String help;
/** True if this procedure is idempotent, that is, can be accessed via HTTP GET */
public boolean idempotent;
/** Descriptions of parameters for this procedure */
private ParameterDescription[] params;
/** Return type for this procedure */
private String returnType;
/** Reflected method object, used for service invocation */
private Method method;
public ProcedureDescription(Map pm) {
JSONUtil.tryFill(this, pm);
@SuppressWarnings("unchecked")
List