Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions client/.openapi-generator/FILES
Original file line number Diff line number Diff line change
Expand Up @@ -135,6 +135,8 @@ src/main/generated/com/regula/documentreader/webclient/model/LivenessParams.java
src/main/generated/com/regula/documentreader/webclient/model/LogLevel.java
src/main/generated/com/regula/documentreader/webclient/model/MDLDeviceEngagement.java
src/main/generated/com/regula/documentreader/webclient/model/MDLDeviceRetrieval.java
src/main/generated/com/regula/documentreader/webclient/model/MDLItem.java
src/main/generated/com/regula/documentreader/webclient/model/MDLResult.java
src/main/generated/com/regula/documentreader/webclient/model/MDLServerRetrieval.java
src/main/generated/com/regula/documentreader/webclient/model/MRZDetectorResult.java
src/main/generated/com/regula/documentreader/webclient/model/MRZFormat.java
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -331,6 +331,8 @@ public static GsonBuilder createGson() {
com.regula.documentreader.webclient.model.RFIDGraphicsInfoResult.class);
classByDiscriminatorValue.put(
"109", com.regula.documentreader.webclient.model.ByteArrayResult.class);
classByDiscriminatorValue.put(
"121", com.regula.documentreader.webclient.model.MDLResult.class);
classByDiscriminatorValue.put(
"124", com.regula.documentreader.webclient.model.VDSNCDataResult.class);
classByDiscriminatorValue.put(
Expand Down Expand Up @@ -630,6 +632,20 @@ public static GsonBuilder createGson() {
getDiscriminatorValue(readElement, "result_type"));
}
})
.registerTypeSelector(
com.regula.documentreader.webclient.model.MDLResult.class,
new TypeSelector<com.regula.documentreader.webclient.model.MDLResult>() {
@Override
public Class<? extends com.regula.documentreader.webclient.model.MDLResult>
getClassForElement(JsonElement readElement) {
Map<String, Class> classByDiscriminatorValue = new HashMap<String, Class>();
classByDiscriminatorValue.put(
"MDLResult", com.regula.documentreader.webclient.model.MDLResult.class);
return getClassByDiscriminator(
classByDiscriminatorValue,
getDiscriminatorValue(readElement, "result_type"));
}
})
.registerTypeSelector(
com.regula.documentreader.webclient.model.MRZDetectorResult.class,
new TypeSelector<com.regula.documentreader.webclient.model.MRZDetectorResult>() {
Expand Down Expand Up @@ -766,6 +782,8 @@ public static GsonBuilder createGson() {
com.regula.documentreader.webclient.model.RFIDGraphicsInfoResult.class);
classByDiscriminatorValue.put(
"109", com.regula.documentreader.webclient.model.ByteArrayResult.class);
classByDiscriminatorValue.put(
"121", com.regula.documentreader.webclient.model.MDLResult.class);
classByDiscriminatorValue.put(
"124", com.regula.documentreader.webclient.model.VDSNCDataResult.class);
classByDiscriminatorValue.put(
Expand Down Expand Up @@ -1204,6 +1222,10 @@ private static Class getClassByDiscriminator(
.CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(
new com.regula.documentreader.webclient.model.LivenessParams.CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(
new com.regula.documentreader.webclient.model.MDLItem.CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(
new com.regula.documentreader.webclient.model.MDLResult.CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(
new com.regula.documentreader.webclient.model.MRZDetectorResult.CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,8 @@ public <T> TypeAdapter<T> create(Gson gson, TypeToken<T> type) {
gson.getDelegateAdapter(this, TypeToken.get(VDSNCDataResult.class));
final TypeAdapter<VDSDataResult> adapterVDSDataResult =
gson.getDelegateAdapter(this, TypeToken.get(VDSDataResult.class));
final TypeAdapter<MDLResult> adapterMDLResult =
gson.getDelegateAdapter(this, TypeToken.get(MDLResult.class));

return (TypeAdapter<T>)
new TypeAdapter<ContainerListListInner>() {
Expand Down Expand Up @@ -301,8 +303,15 @@ public void write(JsonWriter out, ContainerListListInner value) throws IOExcepti
elementAdapter.write(out, element);
return;
}
// check if the actual instance is of the type `MDLResult`
if (value.getActualInstance() instanceof MDLResult) {
JsonElement element =
adapterMDLResult.toJsonTree((MDLResult) value.getActualInstance());
elementAdapter.write(out, element);
return;
}
throw new IOException(
"Failed to serialize as the type doesn't match oneOf schemas: AuthenticityResult, BarcodePositionResult, ByteArrayResult, ChosenDocumentTypeResult, DocBarCodeInfo, DocumentBinaryInfoResult, DocumentImageResult, DocumentPositionResult, DocumentTypesCandidatesResult, EncryptedRCLResult, FaceDetectionResult, GraphicsResult, ImageQualityResult, ImagesResult, LexicalAnalysisResult, LicenseResult, MRZDetectorResult, MRZPositionResult, MRZTestQualityResult, RFIDGraphicsInfoResult, RFIDTextDataResult, StatusResult, TextDataResult, TextResult, VDSDataResult, VDSNCDataResult");
"Failed to serialize as the type doesn't match oneOf schemas: AuthenticityResult, BarcodePositionResult, ByteArrayResult, ChosenDocumentTypeResult, DocBarCodeInfo, DocumentBinaryInfoResult, DocumentImageResult, DocumentPositionResult, DocumentTypesCandidatesResult, EncryptedRCLResult, FaceDetectionResult, GraphicsResult, ImageQualityResult, ImagesResult, LexicalAnalysisResult, LicenseResult, MDLResult, MRZDetectorResult, MRZPositionResult, MRZTestQualityResult, RFIDGraphicsInfoResult, RFIDTextDataResult, StatusResult, TextDataResult, TextResult, VDSDataResult, VDSNCDataResult");
}

@Override
Expand Down Expand Up @@ -699,6 +708,20 @@ public ContainerListListInner read(JsonReader in) throws IOException {
"Deserialization for VDSDataResult failed with `%s`.", e.getMessage()));
log.log(Level.FINER, "Input data does not match schema 'VDSDataResult'", e);
}
// deserialize MDLResult
try {
// validate the JSON object to see if any exception is thrown
MDLResult.validateJsonElement(jsonElement);
actualAdapter = adapterMDLResult;
match++;
log.log(Level.FINER, "Input data matches schema 'MDLResult'");
} catch (Exception e) {
// deserialization failed, continue
errorMessages.add(
String.format(
"Deserialization for MDLResult failed with `%s`.", e.getMessage()));
log.log(Level.FINER, "Input data does not match schema 'MDLResult'", e);
}

if (match == 1) {
ContainerListListInner ret = new ContainerListListInner();
Expand Down Expand Up @@ -754,6 +777,7 @@ public ContainerListListInner(Object o) {
schemas.put("RFIDTextDataResult", RFIDTextDataResult.class);
schemas.put("VDSNCDataResult", VDSNCDataResult.class);
schemas.put("VDSDataResult", VDSDataResult.class);
schemas.put("MDLResult", MDLResult.class);
}

@Override
Expand All @@ -767,7 +791,7 @@ public Map<String, Class<?>> getSchemas() {
* ChosenDocumentTypeResult, DocBarCodeInfo, DocumentBinaryInfoResult, DocumentImageResult,
* DocumentPositionResult, DocumentTypesCandidatesResult, EncryptedRCLResult, FaceDetectionResult,
* GraphicsResult, ImageQualityResult, ImagesResult, LexicalAnalysisResult, LicenseResult,
* MRZDetectorResult, MRZPositionResult, MRZTestQualityResult, RFIDGraphicsInfoResult,
* MDLResult, MRZDetectorResult, MRZPositionResult, MRZTestQualityResult, RFIDGraphicsInfoResult,
* RFIDTextDataResult, StatusResult, TextDataResult, TextResult, VDSDataResult, VDSNCDataResult
*
* <p>It could be an instance of the 'oneOf' schemas.
Expand Down Expand Up @@ -904,24 +928,29 @@ public void setActualInstance(Object instance) {
return;
}

if (instance instanceof MDLResult) {
super.setActualInstance(instance);
return;
}

throw new RuntimeException(
"Invalid instance type. Must be AuthenticityResult, BarcodePositionResult, ByteArrayResult, ChosenDocumentTypeResult, DocBarCodeInfo, DocumentBinaryInfoResult, DocumentImageResult, DocumentPositionResult, DocumentTypesCandidatesResult, EncryptedRCLResult, FaceDetectionResult, GraphicsResult, ImageQualityResult, ImagesResult, LexicalAnalysisResult, LicenseResult, MRZDetectorResult, MRZPositionResult, MRZTestQualityResult, RFIDGraphicsInfoResult, RFIDTextDataResult, StatusResult, TextDataResult, TextResult, VDSDataResult, VDSNCDataResult");
"Invalid instance type. Must be AuthenticityResult, BarcodePositionResult, ByteArrayResult, ChosenDocumentTypeResult, DocBarCodeInfo, DocumentBinaryInfoResult, DocumentImageResult, DocumentPositionResult, DocumentTypesCandidatesResult, EncryptedRCLResult, FaceDetectionResult, GraphicsResult, ImageQualityResult, ImagesResult, LexicalAnalysisResult, LicenseResult, MDLResult, MRZDetectorResult, MRZPositionResult, MRZTestQualityResult, RFIDGraphicsInfoResult, RFIDTextDataResult, StatusResult, TextDataResult, TextResult, VDSDataResult, VDSNCDataResult");
}

/**
* Get the actual instance, which can be the following: AuthenticityResult, BarcodePositionResult,
* ByteArrayResult, ChosenDocumentTypeResult, DocBarCodeInfo, DocumentBinaryInfoResult,
* DocumentImageResult, DocumentPositionResult, DocumentTypesCandidatesResult, EncryptedRCLResult,
* FaceDetectionResult, GraphicsResult, ImageQualityResult, ImagesResult, LexicalAnalysisResult,
* LicenseResult, MRZDetectorResult, MRZPositionResult, MRZTestQualityResult,
* LicenseResult, MDLResult, MRZDetectorResult, MRZPositionResult, MRZTestQualityResult,
* RFIDGraphicsInfoResult, RFIDTextDataResult, StatusResult, TextDataResult, TextResult,
* VDSDataResult, VDSNCDataResult
*
* @return The actual instance (AuthenticityResult, BarcodePositionResult, ByteArrayResult,
* ChosenDocumentTypeResult, DocBarCodeInfo, DocumentBinaryInfoResult, DocumentImageResult,
* DocumentPositionResult, DocumentTypesCandidatesResult, EncryptedRCLResult,
* FaceDetectionResult, GraphicsResult, ImageQualityResult, ImagesResult,
* LexicalAnalysisResult, LicenseResult, MRZDetectorResult, MRZPositionResult,
* LexicalAnalysisResult, LicenseResult, MDLResult, MRZDetectorResult, MRZPositionResult,
* MRZTestQualityResult, RFIDGraphicsInfoResult, RFIDTextDataResult, StatusResult,
* TextDataResult, TextResult, VDSDataResult, VDSNCDataResult)
*/
Expand Down Expand Up @@ -1218,6 +1247,17 @@ public VDSDataResult getVDSDataResult() throws ClassCastException {
return (VDSDataResult) super.getActualInstance();
}

/**
* Get the actual instance of `MDLResult`. If the actual instance is not `MDLResult`, the
* ClassCastException will be thrown.
*
* @return The actual instance of `MDLResult`
* @throws ClassCastException if the instance is not `MDLResult`
*/
public MDLResult getMDLResult() throws ClassCastException {
return (MDLResult) super.getActualInstance();
}

/**
* Validates the JSON Element and throws an exception if issues found
*
Expand Down Expand Up @@ -1477,10 +1517,19 @@ public static void validateJsonElement(JsonElement jsonElement) throws IOExcepti
String.format("Deserialization for VDSDataResult failed with `%s`.", e.getMessage()));
// continue to the next one
}
// validate the json string with MDLResult
try {
MDLResult.validateJsonElement(jsonElement);
validCount++;
} catch (Exception e) {
errorMessages.add(
String.format("Deserialization for MDLResult failed with `%s`.", e.getMessage()));
// continue to the next one
}
if (validCount != 1) {
throw new IOException(
String.format(
"The JSON string is invalid for ContainerListListInner with oneOf schemas: AuthenticityResult, BarcodePositionResult, ByteArrayResult, ChosenDocumentTypeResult, DocBarCodeInfo, DocumentBinaryInfoResult, DocumentImageResult, DocumentPositionResult, DocumentTypesCandidatesResult, EncryptedRCLResult, FaceDetectionResult, GraphicsResult, ImageQualityResult, ImagesResult, LexicalAnalysisResult, LicenseResult, MRZDetectorResult, MRZPositionResult, MRZTestQualityResult, RFIDGraphicsInfoResult, RFIDTextDataResult, StatusResult, TextDataResult, TextResult, VDSDataResult, VDSNCDataResult. %d class(es) match the result, expected 1. Detailed failure message for oneOf schemas: %s. JSON: %s",
"The JSON string is invalid for ContainerListListInner with oneOf schemas: AuthenticityResult, BarcodePositionResult, ByteArrayResult, ChosenDocumentTypeResult, DocBarCodeInfo, DocumentBinaryInfoResult, DocumentImageResult, DocumentPositionResult, DocumentTypesCandidatesResult, EncryptedRCLResult, FaceDetectionResult, GraphicsResult, ImageQualityResult, ImagesResult, LexicalAnalysisResult, LicenseResult, MDLResult, MRZDetectorResult, MRZPositionResult, MRZTestQualityResult, RFIDGraphicsInfoResult, RFIDTextDataResult, StatusResult, TextDataResult, TextResult, VDSDataResult, VDSNCDataResult. %d class(es) match the result, expected 1. Detailed failure message for oneOf schemas: %s. JSON: %s",
validCount, errorMessages, jsonElement.toString()));
}
}
Expand Down
Loading