/** * Copyright 2016-2017 Sixt GmbH & Co. Autovermietung KG * Licensed under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations * under the License. */ package com.sixt.service.framework.json; import com.google.gson.JsonArray; import com.google.gson.JsonElement; import com.google.gson.JsonNull; import com.google.gson.JsonObject; public class JsonRpcRequest { public final static String ID_FIELD = "id"; public final static String METHOD_FIELD = "method"; public final static String PARAMS_FIELD = "params"; private JsonElement id; private String method; private JsonArray params; public JsonRpcRequest(JsonElement id, String method, JsonArray params) { setId(id); setMethod(method); setParams(params); } @Override public String toString() { JsonObject json = new JsonObject(); json.add(ID_FIELD, id); json.addProperty(METHOD_FIELD, method); json.add(PARAMS_FIELD, params); return json.toString(); } public JsonElement getId() { return id; } public void setId(JsonElement id) { this.id = id; } public String getMethod() { return method; } public void setMethod(String method) { this.method = method; } public JsonArray getParams() { return params; } public void setParams(JsonArray params) { this.params = params; } public String getIdAsString() { if (id == null || id instanceof JsonNull) { return null; } else { return id.getAsString(); } } }