Closed linlin-s closed 2 years ago
Description of changes: In this pull request, more features were added to support Ion Data Generator to process more constraints provided by Ion Schema. The supported Ion Schema constraints in this PR includes:
timestamp_precision:<RANGE<TIMESTAMP_PRECISION_VALUE>>
precision: <INT> precision: <RANGE<INT>> scale: <INT> scale: <RANGE<INT>>
byte_length: <INT> byte_length: <RANGE<INT>>
IonSchemaUtilities.parseConstraints
IonSchedmaUtilities.checkValidationOfSchema
WriteRandomIonValues.writeRandomDecimalsFromSchema
WriteRandomIonValues.writeRandomTimestampsFromSchema
WriteRandomIonValues.writeRandomLobs
WriteRandomIonValues.constructDecimalFromSchema
Test:
Commits history reference: https://github.com/linlin-s/ion-java-benchmark-cli/pull/8
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.
Description of changes: In this pull request, more features were added to support Ion Data Generator to process more constraints provided by Ion Schema. The supported Ion Schema constraints in this PR includes:
IonSchemaUtilities.parseConstraints
.IonSchedmaUtilities.checkValidationOfSchema
to check the validation of input ion schema file.WriteRandomIonValues.writeRandomDecimalsFromSchema
which is able to process the constraints of decimal.WriteRandomIonValues.writeRandomTimestampsFromSchema
which is able to process the constraints of timestamp.WriteRandomIonValues.writeRandomLobs
to allow the method to process the constraints of clob.WriteRandomIonValues.constructDecimalFromSchema
which is able to construct the decimal conforming with the constraints in Ion Schema.Test:
Commits history reference: https://github.com/linlin-s/ion-java-benchmark-cli/pull/8
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.