Class RequestBuilder

java.lang.Object
org.ovirt.vdsm.jsonrpc.client.RequestBuilder

public class RequestBuilder extends Object
Utility class which helps to build JsonRpcRequest by providing information like method name and parameters.
  • Field Details

    • OBJECT_MAPPER

      private static final com.fasterxml.jackson.databind.ObjectMapper OBJECT_MAPPER
    • parameters

      private final com.fasterxml.jackson.databind.node.ObjectNode parameters
    • methodName

      private final String methodName
  • Constructor Details

    • RequestBuilder

      public RequestBuilder(String methodName)
      Creates builder with required methodName.
      Parameters:
      methodName - - Name of the method to call.
  • Method Details

    • withParameter

      public RequestBuilder withParameter(String name, String value)
      Adds parameter which is required by method runtime.
      Parameters:
      name - - Name of the parameter.
      value - - Value of the parameter.
      Returns:
      RequestBuilder to let add more parameters.
    • withOptionalParameter

      public RequestBuilder withOptionalParameter(String name, String value)
      Adds parameter which is optional by method runtime and if not provided default value will be used during method execution.
      Parameters:
      name - - Name of the parameter.
      value - - Value of the parameter or null.
      Returns:
      RequestBuilder to let add more parameters.
    • withOptionalParameter

      public RequestBuilder withOptionalParameter(String name, Object value)
      Adds parameter which is optional by method runtime and if not provided default value will be used during method execution.
      Parameters:
      name - - Name of the parameter.
      value - - Value of the parameter or null.
      Returns:
      RequestBuilder to let add more parameters.
    • withOptionalParameterAsList

      public RequestBuilder withOptionalParameterAsList(String name, List value)
      Adds List of values which is optional by method runtime and if not provided default value will be used during method execution.
      Parameters:
      name - - Name of the parameter.
      value - - List of values which may be null or empty List.
      Returns:
      RequestBuilder to let add more parameters.
    • withOptionalParameterAsMap

      public RequestBuilder withOptionalParameterAsMap(String name, Map value)
      Adds Map of values which is optional by method runtime and if not provided default value will be used during method execution.
      Parameters:
      name - - Name of the parameter.
      value - - Map of values which may be null or empty Map.
      Returns:
      RequestBuilder to let add more parameters.
    • withParameter

      public RequestBuilder withParameter(String name, Object value)
      Adds parameter which is required by method runtime.
      Parameters:
      name - - Name of the parameter.
      value - - Value of the parameter which is different than String.
      Returns:
      RequestBuilder to let add more parameters.
    • build

      public JsonRpcRequest build()
      Builds JsonRpcRequest based on provided method name, parameter and generates id using UUID.
      Returns:
      Request object.