com.alipay.v3.model.AlipayOfflineMarketApplyorderBatchqueryDefaultResponse Maven / Gradle / Ivy
The newest version!
/*
* 支付宝开放平台API
* 支付宝开放平台v3协议文档
*
* The version of the OpenAPI document: 2024-08-30
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
package com.alipay.v3.model;
import java.util.Objects;
import java.util.Arrays;
import com.alipay.v3.model.AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel;
import com.alipay.v3.model.CommonErrorType;
import com.google.gson.TypeAdapter;
import com.google.gson.annotations.JsonAdapter;
import com.google.gson.annotations.SerializedName;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonWriter;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.IOException;
import javax.ws.rs.core.GenericType;
import java.io.IOException;
import java.lang.reflect.Type;
import java.util.logging.Level;
import java.util.logging.Logger;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashSet;
import java.util.HashMap;
import java.util.Map;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.JsonParseException;
import com.google.gson.TypeAdapter;
import com.google.gson.TypeAdapterFactory;
import com.google.gson.reflect.TypeToken;
import com.google.gson.JsonPrimitive;
import com.google.gson.annotations.JsonAdapter;
import com.google.gson.annotations.SerializedName;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonWriter;
import com.google.gson.JsonDeserializationContext;
import com.google.gson.JsonDeserializer;
import com.google.gson.JsonSerializationContext;
import com.google.gson.JsonSerializer;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParseException;
import com.alipay.v3.JSON;
@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
public class AlipayOfflineMarketApplyorderBatchqueryDefaultResponse extends AbstractOpenApiSchema {
private static final Logger log = Logger.getLogger(AlipayOfflineMarketApplyorderBatchqueryDefaultResponse.class.getName());
public static class CustomTypeAdapterFactory implements TypeAdapterFactory {
@SuppressWarnings("unchecked")
@Override
public TypeAdapter create(Gson gson, TypeToken type) {
if (!AlipayOfflineMarketApplyorderBatchqueryDefaultResponse.class.isAssignableFrom(type.getRawType())) {
return null; // this class only serializes 'AlipayOfflineMarketApplyorderBatchqueryDefaultResponse' and its subtypes
}
final TypeAdapter elementAdapter = gson.getAdapter(JsonElement.class);
final TypeAdapter adapterAlipayOfflineMarketApplyorderBatchqueryErrorResponseModel = gson.getDelegateAdapter(this, TypeToken.get(AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel.class));
final TypeAdapter adapterCommonErrorType = gson.getDelegateAdapter(this, TypeToken.get(CommonErrorType.class));
return (TypeAdapter) new TypeAdapter() {
@Override
public void write(JsonWriter out, AlipayOfflineMarketApplyorderBatchqueryDefaultResponse value) throws IOException {
if (value == null || value.getActualInstance() == null) {
elementAdapter.write(out, null);
return;
}
// check if the actual instance is of the type `AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel`
if (value.getActualInstance() instanceof AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel) {
JsonObject obj = adapterAlipayOfflineMarketApplyorderBatchqueryErrorResponseModel.toJsonTree((AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel)value.getActualInstance()).getAsJsonObject();
elementAdapter.write(out, obj);
return;
}
// check if the actual instance is of the type `CommonErrorType`
if (value.getActualInstance() instanceof CommonErrorType) {
JsonObject obj = adapterCommonErrorType.toJsonTree((CommonErrorType)value.getActualInstance()).getAsJsonObject();
elementAdapter.write(out, obj);
return;
}
throw new IOException("Failed to serialize as the type doesn't match anyOf schemas: AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel, CommonErrorType");
}
@Override
public AlipayOfflineMarketApplyorderBatchqueryDefaultResponse read(JsonReader in) throws IOException {
Object deserialized = null;
JsonObject jsonObject = elementAdapter.read(in).getAsJsonObject();
// deserialize AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel
try {
// validate the JSON object to see if any exception is thrown
AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel.validateJsonObject(jsonObject);
log.log(Level.FINER, "Input data matches schema 'AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel'");
AlipayOfflineMarketApplyorderBatchqueryDefaultResponse ret = new AlipayOfflineMarketApplyorderBatchqueryDefaultResponse();
ret.setActualInstance(adapterAlipayOfflineMarketApplyorderBatchqueryErrorResponseModel.fromJsonTree(jsonObject));
return ret;
} catch (Exception e) {
// deserialization failed, continue
log.log(Level.FINER, "Input data does not match schema 'AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel'", e);
}
// deserialize CommonErrorType
try {
// validate the JSON object to see if any exception is thrown
CommonErrorType.validateJsonObject(jsonObject);
log.log(Level.FINER, "Input data matches schema 'CommonErrorType'");
AlipayOfflineMarketApplyorderBatchqueryDefaultResponse ret = new AlipayOfflineMarketApplyorderBatchqueryDefaultResponse();
ret.setActualInstance(adapterCommonErrorType.fromJsonTree(jsonObject));
return ret;
} catch (Exception e) {
// deserialization failed, continue
log.log(Level.FINER, "Input data does not match schema 'CommonErrorType'", e);
}
throw new IOException(String.format("Failed deserialization for AlipayOfflineMarketApplyorderBatchqueryDefaultResponse: no class matched. JSON: %s", jsonObject.toString()));
}
}.nullSafe();
}
}
// store a list of schema names defined in anyOf
public static final Map schemas = new HashMap();
public AlipayOfflineMarketApplyorderBatchqueryDefaultResponse() {
super("anyOf", Boolean.FALSE);
}
public AlipayOfflineMarketApplyorderBatchqueryDefaultResponse(AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel o) {
super("anyOf", Boolean.FALSE);
setActualInstance(o);
}
public AlipayOfflineMarketApplyorderBatchqueryDefaultResponse(CommonErrorType o) {
super("anyOf", Boolean.FALSE);
setActualInstance(o);
}
static {
schemas.put("AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel", new GenericType() {
});
schemas.put("CommonErrorType", new GenericType() {
});
}
@Override
public Map getSchemas() {
return AlipayOfflineMarketApplyorderBatchqueryDefaultResponse.schemas;
}
/**
* Set the instance that matches the anyOf child schema, check
* the instance parameter is valid against the anyOf child schemas:
* AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel, CommonErrorType
*
* It could be an instance of the 'anyOf' schemas.
* The anyOf child schemas may themselves be a composed schema (allOf, anyOf, anyOf).
*/
@Override
public void setActualInstance(Object instance) {
if (instance instanceof AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel) {
super.setActualInstance(instance);
return;
}
if (instance instanceof CommonErrorType) {
super.setActualInstance(instance);
return;
}
throw new RuntimeException("Invalid instance type. Must be AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel, CommonErrorType");
}
/**
* Get the actual instance, which can be the following:
* AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel, CommonErrorType
*
* @return The actual instance (AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel, CommonErrorType)
*/
@Override
public Object getActualInstance() {
return super.getActualInstance();
}
/**
* Get the actual instance of `AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel`. If the actual instance is not `AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel`,
* the ClassCastException will be thrown.
*
* @return The actual instance of `AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel`
* @throws ClassCastException if the instance is not `AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel`
*/
public AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel getAlipayOfflineMarketApplyorderBatchqueryErrorResponseModel() throws ClassCastException {
return (AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel)super.getActualInstance();
}
/**
* Get the actual instance of `CommonErrorType`. If the actual instance is not `CommonErrorType`,
* the ClassCastException will be thrown.
*
* @return The actual instance of `CommonErrorType`
* @throws ClassCastException if the instance is not `CommonErrorType`
*/
public CommonErrorType getCommonErrorType() throws ClassCastException {
return (CommonErrorType)super.getActualInstance();
}
/**
* Validates the JSON Object and throws an exception if issues found
*
* @param jsonObj JSON Object
* @throws IOException if the JSON Object is invalid with respect to AlipayOfflineMarketApplyorderBatchqueryDefaultResponse
*/
public static void validateJsonObject(JsonObject jsonObj) throws IOException {
// validate anyOf schemas one by one
int validCount = 0;
// validate the json string with AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel
try {
AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel.validateJsonObject(jsonObj);
return; // return earlier as at least one schema is valid with respect to the Json object
//validCount++;
} catch (Exception e) {
// continue to the next one
}
// validate the json string with CommonErrorType
try {
CommonErrorType.validateJsonObject(jsonObj);
return; // return earlier as at least one schema is valid with respect to the Json object
//validCount++;
} catch (Exception e) {
// continue to the next one
}
if (validCount == 0) {
throw new IOException(String.format("The JSON string is invalid for AlipayOfflineMarketApplyorderBatchqueryDefaultResponse with anyOf schemas: AlipayOfflineMarketApplyorderBatchqueryErrorResponseModel, CommonErrorType. JSON: %s", jsonObj.toString()));
}
}
/**
* Create an instance of AlipayOfflineMarketApplyorderBatchqueryDefaultResponse given an JSON string
*
* @param jsonString JSON string
* @return An instance of AlipayOfflineMarketApplyorderBatchqueryDefaultResponse
* @throws IOException if the JSON string is invalid with respect to AlipayOfflineMarketApplyorderBatchqueryDefaultResponse
*/
public static AlipayOfflineMarketApplyorderBatchqueryDefaultResponse fromJson(String jsonString) throws IOException {
return JSON.getGson().fromJson(jsonString, AlipayOfflineMarketApplyorderBatchqueryDefaultResponse.class);
}
/**
* Convert an instance of AlipayOfflineMarketApplyorderBatchqueryDefaultResponse to an JSON string
*
* @return JSON string
*/
public String toJson() {
return JSON.getGson().toJson(this);
}
}