gitextract_jkg1t5v4/ ├── .gitignore ├── LICENSE ├── NOTICE ├── README-ZH.md ├── README.md ├── cli/ │ ├── pom.xml │ ├── scripts/ │ │ ├── cli.cmd │ │ └── cli.sh │ └── src/ │ ├── main/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── apache/ │ │ │ └── servicecomb/ │ │ │ └── toolkit/ │ │ │ └── cli/ │ │ │ ├── CheckCompatibility.java │ │ │ ├── CheckCompatibilityAbbr.java │ │ │ ├── CheckCompatibilityBase.java │ │ │ ├── CheckStyle.java │ │ │ ├── CheckStyleAbbr.java │ │ │ ├── CheckStyleBase.java │ │ │ ├── CodeGenerate.java │ │ │ ├── DocGenerate.java │ │ │ ├── ToolkitMain.java │ │ │ └── ValidationFailedException.java │ │ └── resources/ │ │ ├── application.properties │ │ └── log4j2.xml │ └── test/ │ ├── java/ │ │ └── org/ │ │ └── apache/ │ │ └── servicecomb/ │ │ └── toolkit/ │ │ └── cli/ │ │ └── CliTest.java │ └── resources/ │ ├── contracts/ │ │ ├── CalculateEndpoint.yaml │ │ ├── HelloEndPoint.yaml │ │ └── pojo/ │ │ └── CodeFirstHelloEndPoint.yaml │ ├── log4j2-test.xml │ ├── oas/ │ │ ├── compatibility-left.yaml │ │ ├── compatibility-right.yaml │ │ ├── style-rules.properties │ │ └── style.yaml │ └── swagger.yaml ├── codegen/ │ ├── pom.xml │ └── src/ │ ├── main/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── apache/ │ │ │ └── servicecomb/ │ │ │ └── toolkit/ │ │ │ └── codegen/ │ │ │ ├── AbstractConsumerDirectoryStrategy.java │ │ │ ├── AbstractDirectoryStrategy.java │ │ │ ├── AbstractJavaCodegenExt.java │ │ │ ├── AbstractMultiDirectoryStrategy.java │ │ │ ├── AbstractProviderDirectoryStrategy.java │ │ │ ├── ConsumerDirectoryStrategy.java │ │ │ ├── DefaultCodeGenerator.java │ │ │ ├── DefaultDirectoryStrategy.java │ │ │ ├── DirectoryStrategy.java │ │ │ ├── GeneratorExternalConfigConstant.java │ │ │ ├── GetGenericClassTypeLambda.java │ │ │ ├── GetRelativeBasePathLambda.java │ │ │ ├── MicroServiceFramework.java │ │ │ ├── MultiContractGenerator.java │ │ │ ├── ProjectMetaConstant.java │ │ │ ├── ProviderDirectoryStrategy.java │ │ │ ├── ServiceCombCodegen.java │ │ │ ├── ServiceType.java │ │ │ ├── ShowBasePathLambda.java │ │ │ ├── SpringCloudCodegen.java │ │ │ ├── SpringCloudConsumerDirectoryStrategy.java │ │ │ ├── SpringCloudMultiDirectoryStrategy.java │ │ │ └── SpringCloudProviderDirectoryStrategy.java │ │ └── resources/ │ │ ├── META-INF/ │ │ │ └── services/ │ │ │ ├── org.apache.servicecomb.toolkit.CodeGenerator │ │ │ └── org.openapitools.codegen.CodegenConfig │ │ ├── ServiceComb/ │ │ │ ├── consumer/ │ │ │ │ ├── Application.mustache │ │ │ │ ├── apiConsumer.mustache │ │ │ │ ├── bodyParamsConsumer.mustache │ │ │ │ ├── formParamsConsumer.mustache │ │ │ │ ├── headerParamsConsumer.mustache │ │ │ │ ├── microservice.mustache │ │ │ │ ├── pathParamsConsumer.mustache │ │ │ │ ├── pojo/ │ │ │ │ │ ├── apiConsumer.mustache │ │ │ │ │ └── apiInterface.mustache │ │ │ │ ├── pom.mustache │ │ │ │ ├── queryParamsConsumer.mustache │ │ │ │ └── springboot/ │ │ │ │ ├── Application.mustache │ │ │ │ └── pom.mustache │ │ │ ├── enumClass.mustache │ │ │ ├── enumOuterClass.mustache │ │ │ ├── libraries/ │ │ │ │ ├── JAX-RS/ │ │ │ │ │ ├── Application.mustache │ │ │ │ │ ├── api.mustache │ │ │ │ │ ├── bodyParams.mustache │ │ │ │ │ ├── formParams.mustache │ │ │ │ │ ├── headerParams.mustache │ │ │ │ │ ├── pathParams.mustache │ │ │ │ │ ├── pom.mustache │ │ │ │ │ └── queryParams.mustache │ │ │ │ ├── POJO/ │ │ │ │ │ ├── Application.mustache │ │ │ │ │ ├── api.mustache │ │ │ │ │ ├── bodyParams.mustache │ │ │ │ │ ├── formParams.mustache │ │ │ │ │ ├── headerParams.mustache │ │ │ │ │ ├── pathParams.mustache │ │ │ │ │ ├── pom.mustache │ │ │ │ │ └── queryParams.mustache │ │ │ │ ├── SpringBoot/ │ │ │ │ │ ├── Application.mustache │ │ │ │ │ ├── api.mustache │ │ │ │ │ ├── bodyParams.mustache │ │ │ │ │ ├── formParams.mustache │ │ │ │ │ ├── headerParams.mustache │ │ │ │ │ ├── operationMethod.mustache │ │ │ │ │ ├── pathParams.mustache │ │ │ │ │ ├── pom.mustache │ │ │ │ │ └── queryParams.mustache │ │ │ │ └── SpringMVC/ │ │ │ │ ├── Application.mustache │ │ │ │ ├── api.mustache │ │ │ │ ├── bodyParams.mustache │ │ │ │ ├── formParams.mustache │ │ │ │ ├── headerParams.mustache │ │ │ │ ├── pathParams.mustache │ │ │ │ ├── pom.mustache │ │ │ │ └── queryParams.mustache │ │ │ ├── log4j2.mustache │ │ │ ├── model/ │ │ │ │ ├── model.mustache │ │ │ │ └── pom.mustache │ │ │ ├── pojo.mustache │ │ │ ├── project/ │ │ │ │ └── pom.mustache │ │ │ ├── provider/ │ │ │ │ └── microservice.mustache │ │ │ └── returnTypes.mustache │ │ └── SpringCloud/ │ │ ├── consumer/ │ │ │ └── openfeign/ │ │ │ ├── Application.mustache │ │ │ ├── apiConsumer.mustache │ │ │ ├── applicationYml.mustache │ │ │ ├── bodyParamsConsumer.mustache │ │ │ ├── formParamsConsumer.mustache │ │ │ ├── headerParamsConsumer.mustache │ │ │ ├── pathParamsConsumer.mustache │ │ │ ├── pom.mustache │ │ │ └── queryParamsConsumer.mustache │ │ ├── model/ │ │ │ ├── enumClass.mustache │ │ │ ├── enumOuterClass.mustache │ │ │ ├── model.mustache │ │ │ ├── pojo.mustache │ │ │ └── pom.mustache │ │ ├── project/ │ │ │ └── pom.mustache │ │ └── provider/ │ │ └── servlet/ │ │ ├── Application.mustache │ │ ├── api.mustache │ │ ├── applicationYml.mustache │ │ ├── bodyParams.mustache │ │ ├── formParams.mustache │ │ ├── headerParams.mustache │ │ ├── pathParams.mustache │ │ ├── pom.mustache │ │ ├── queryParams.mustache │ │ └── returnTypes.mustache │ └── test/ │ ├── java/ │ │ └── org/ │ │ └── apache/ │ │ └── servicecomb/ │ │ └── toolkit/ │ │ └── codegen/ │ │ ├── CustomPropertiesTest.java │ │ ├── GeneratorTest.java │ │ ├── ReflectUtils.java │ │ ├── ServiceCombCodegenTest.java │ │ ├── SpringCloudCodegenTest.java │ │ └── TemplateTest.java │ └── resources/ │ ├── examples/ │ │ ├── v2.0/ │ │ │ ├── json/ │ │ │ │ ├── api-with-examples.json │ │ │ │ ├── petstore-expanded.json │ │ │ │ ├── petstore-minimal.json │ │ │ │ ├── petstore-separate/ │ │ │ │ │ ├── common/ │ │ │ │ │ │ └── Error.json │ │ │ │ │ └── spec/ │ │ │ │ │ ├── NewPet.json │ │ │ │ │ ├── Pet.json │ │ │ │ │ ├── parameters.json │ │ │ │ │ └── swagger.json │ │ │ │ ├── petstore-simple.json │ │ │ │ ├── petstore-with-external-docs.json │ │ │ │ ├── petstore.json │ │ │ │ └── uber.json │ │ │ └── yaml/ │ │ │ ├── api-with-examples.yaml │ │ │ ├── petstore-expanded.yaml │ │ │ ├── petstore-minimal.yaml │ │ │ ├── petstore-separate/ │ │ │ │ ├── common/ │ │ │ │ │ └── Error.yaml │ │ │ │ └── spec/ │ │ │ │ ├── NewPet.yaml │ │ │ │ ├── Pet.yaml │ │ │ │ ├── parameters.yaml │ │ │ │ └── swagger.yaml │ │ │ ├── petstore-simple.yaml │ │ │ ├── petstore-with-external-docs.yaml │ │ │ ├── petstore.yaml │ │ │ └── uber.yaml │ │ └── v3.0/ │ │ ├── api-with-examples.yaml │ │ ├── callback-example.yaml │ │ ├── link-example.yaml │ │ ├── petstore-expanded.yaml │ │ ├── petstore.yaml │ │ └── uspto.yaml │ ├── log4j2-test.xml │ ├── no-model.yaml │ ├── swagger.yaml │ └── with-model.yaml ├── common/ │ ├── pom.xml │ └── src/ │ ├── main/ │ │ └── java/ │ │ └── org/ │ │ └── apache/ │ │ └── servicecomb/ │ │ └── toolkit/ │ │ └── common/ │ │ ├── ClassMaker.java │ │ ├── CompareAlgorithm.java │ │ ├── ComparisionType.java │ │ ├── Comparison.java │ │ ├── ContractComparator.java │ │ ├── ContractFileType.java │ │ ├── DocumentType.java │ │ ├── FileUtils.java │ │ ├── ImmediateClassLoader.java │ │ ├── MyersAlgorithm.java │ │ ├── SourceType.java │ │ └── SplitDiffFormatter.java │ └── test/ │ ├── java/ │ │ └── org/ │ │ └── apache/ │ │ └── servicecomb/ │ │ └── toolkit/ │ │ └── common/ │ │ ├── ClassMakerTest.java │ │ ├── FileUtilsTest.java │ │ └── TextCompareTest.java │ └── resources/ │ ├── compare/ │ │ ├── HelloEndPoint.yaml │ │ └── HelloEndPoint2.yaml │ └── projects/ │ ├── demo-with-correct-pom/ │ │ └── pom.xml │ └── demo-with-invaild-pom/ │ └── pom.xml ├── contractgen/ │ ├── pom.xml │ └── src/ │ ├── main/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── apache/ │ │ │ └── servicecomb/ │ │ │ └── toolkit/ │ │ │ └── contractgen/ │ │ │ └── DefaultContractsGenerator.java │ │ └── resources/ │ │ └── META-INF/ │ │ └── services/ │ │ └── org.apache.servicecomb.toolkit.ContractsGenerator │ └── test/ │ ├── java/ │ │ └── org/ │ │ └── apache/ │ │ └── servicecomb/ │ │ └── toolkit/ │ │ └── contractgen/ │ │ ├── ContractTestUtil.java │ │ └── DefaultContractsGeneratorTest.java │ ├── projects/ │ │ └── demo/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ └── java/ │ │ └── demo/ │ │ ├── Application.java │ │ └── HelloEndPoint.java │ └── resources/ │ └── log4j2-test.xml ├── core/ │ ├── pom.xml │ └── src/ │ └── main/ │ └── java/ │ └── org/ │ └── apache/ │ └── servicecomb/ │ └── toolkit/ │ ├── CodeGenerator.java │ ├── ContractsGenerator.java │ ├── DocGenerator.java │ ├── Generator.java │ └── GeneratorFactory.java ├── docgen/ │ ├── pom.xml │ └── src/ │ ├── main/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── apache/ │ │ │ └── servicecomb/ │ │ │ └── toolkit/ │ │ │ └── docgen/ │ │ │ └── ContractsSwaggerUIGenerator.java │ │ └── resources/ │ │ ├── META-INF/ │ │ │ └── services/ │ │ │ └── org.apache.servicecomb.toolkit.DocGenerator │ │ └── webroot/ │ │ └── swagger-ui.html │ └── test/ │ ├── java/ │ │ └── org/ │ │ └── apache/ │ │ └── servicecomb/ │ │ └── toolkit/ │ │ └── docgen/ │ │ └── ContractsSwaggerUIGeneratorTest.java │ └── resources/ │ └── HelloEndPoint.yaml ├── integration-tests/ │ ├── coverage-aggregate/ │ │ └── pom.xml │ └── pom.xml ├── oas-generator/ │ ├── oas-generator-core/ │ │ ├── pom.xml │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── apache/ │ │ │ └── servicecomb/ │ │ │ └── toolkit/ │ │ │ └── generator/ │ │ │ ├── HttpStatuses.java │ │ │ ├── MediaTypes.java │ │ │ ├── annotation/ │ │ │ │ ├── AnnotationProcessor.java │ │ │ │ ├── ApiResponseMethodAnnotationProcessor.java │ │ │ │ ├── ApiResponsesMethodAnnotationProcessor.java │ │ │ │ ├── ClassAnnotationProcessor.java │ │ │ │ ├── MethodAnnotationProcessor.java │ │ │ │ ├── ModelInterceptor.java │ │ │ │ ├── OpenApiDefinitionClassAnnotationProcessor.java │ │ │ │ ├── OperationMethodAnnotationProcessor.java │ │ │ │ ├── ParamAnnotationProcessor.java │ │ │ │ ├── ParameterAnnotationProcessor.java │ │ │ │ └── RequestBodyParamAnnotationProcessor.java │ │ │ ├── context/ │ │ │ │ ├── Context.java │ │ │ │ ├── IExtensionsContext.java │ │ │ │ ├── ISchemaContext.java │ │ │ │ ├── OasContext.java │ │ │ │ ├── OasGenerator.java │ │ │ │ ├── OperationContext.java │ │ │ │ └── ParameterContext.java │ │ │ ├── parser/ │ │ │ │ ├── AbstractAnnotationParser.java │ │ │ │ └── api/ │ │ │ │ └── OpenApiAnnotationParser.java │ │ │ └── util/ │ │ │ ├── ArrayModelConverter.java │ │ │ ├── LocalVariableVisitor.java │ │ │ ├── ModelConverter.java │ │ │ ├── ParamUtils.java │ │ │ ├── RequestResponse.java │ │ │ └── SwaggerAnnotationUtils.java │ │ └── test/ │ │ └── java/ │ │ └── org/ │ │ └── apache/ │ │ └── servicecomb/ │ │ └── toolkit/ │ │ └── generator/ │ │ ├── AnnotationProcessorTest.java │ │ ├── ContextTest.java │ │ ├── OasGeneratorTest.java │ │ ├── ParserTest.java │ │ └── UtilsTest.java │ ├── oas-generator-jaxrs/ │ │ ├── pom.xml │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── apache/ │ │ │ │ └── servicecomb/ │ │ │ │ └── toolkit/ │ │ │ │ └── generator/ │ │ │ │ ├── annotation/ │ │ │ │ │ ├── ConsumesAnnotationProcessor.java │ │ │ │ │ ├── CookieParamAnnotationProcessor.java │ │ │ │ │ ├── FormParamAnnotationProcessor.java │ │ │ │ │ ├── HeaderParamAnnotationProcessor.java │ │ │ │ │ ├── HttpMethodAnnotationProcessor.java │ │ │ │ │ ├── PathClassAnnotationProcessor.java │ │ │ │ │ ├── PathMethodAnnotationProcessor.java │ │ │ │ │ ├── PathParamAnnotationProcessor.java │ │ │ │ │ └── QueryParamAnnotationProcessor.java │ │ │ │ └── parser/ │ │ │ │ └── JaxRsAnnotationParser.java │ │ │ └── resources/ │ │ │ └── META-INF/ │ │ │ └── services/ │ │ │ └── org.apache.servicecomb.toolkit.generator.parser.api.OpenApiAnnotationParser │ │ └── test/ │ │ └── java/ │ │ └── org/ │ │ └── apache/ │ │ └── servicecomb/ │ │ └── toolkit/ │ │ └── generator/ │ │ ├── JaxrsAnnotationProcessorTest.java │ │ └── JaxrsParserTest.java │ ├── oas-generator-servicecomb/ │ │ ├── pom.xml │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── apache/ │ │ │ │ └── servicecomb/ │ │ │ │ └── toolkit/ │ │ │ │ └── generator/ │ │ │ │ └── parser/ │ │ │ │ ├── ServicecombJaxrsParser.java │ │ │ │ ├── ServicecombPojoParser.java │ │ │ │ └── ServicecombSpringmvcParser.java │ │ │ └── resources/ │ │ │ └── META-INF/ │ │ │ └── services/ │ │ │ └── org.apache.servicecomb.toolkit.generator.parser.api.OpenApiAnnotationParser │ │ └── test/ │ │ └── java/ │ │ └── org/ │ │ └── apache/ │ │ └── servicecomb/ │ │ └── toolkit/ │ │ └── generator/ │ │ └── ServiceCombParserTest.java │ ├── oas-generator-spring/ │ │ ├── pom.xml │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── apache/ │ │ │ │ └── servicecomb/ │ │ │ │ └── toolkit/ │ │ │ │ └── generator/ │ │ │ │ ├── MultipartFileInterceptor.java │ │ │ │ ├── annotation/ │ │ │ │ │ ├── AbstractHttpMethodMappingAnnotationProcessor.java │ │ │ │ │ ├── DeleteMappingMethodAnnotationProcessor.java │ │ │ │ │ ├── GetMappingMethodAnnotationProcessor.java │ │ │ │ │ ├── PathVariableAnnotationProcessor.java │ │ │ │ │ ├── PostMappingMethodAnnotationProcessor.java │ │ │ │ │ ├── PutMappingMethodAnnotationProcessor.java │ │ │ │ │ ├── RequestBodyAnnotationProcessor.java │ │ │ │ │ ├── RequestHeaderAnnotationProcessor.java │ │ │ │ │ ├── RequestMappingClassAnnotationProcessor.java │ │ │ │ │ ├── RequestMappingMethodAnnotationProcessor.java │ │ │ │ │ ├── RequestParamAnnotationProcessor.java │ │ │ │ │ └── RequestPartAnnotationProcessor.java │ │ │ │ └── parser/ │ │ │ │ └── SpringmvcAnnotationParser.java │ │ │ └── resources/ │ │ │ └── META-INF/ │ │ │ └── services/ │ │ │ ├── org.apache.servicecomb.toolkit.generator.annotation.ModelInterceptor │ │ │ └── org.apache.servicecomb.toolkit.generator.parser.api.OpenApiAnnotationParser │ │ └── test/ │ │ └── java/ │ │ └── org/ │ │ └── apache/ │ │ └── servicecomb/ │ │ └── toolkit/ │ │ └── generator/ │ │ ├── SpringAnnotationProcessorTest.java │ │ └── SpringParserTest.java │ └── pom.xml ├── oas-validator/ │ ├── .gitignore │ ├── README-ZH.md │ ├── README.md │ ├── doc/ │ │ ├── INSTALLATION.MD │ │ └── USAGE.MD │ ├── oas-validator-compatibility/ │ │ ├── pom.xml │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── apache/ │ │ │ └── servicecomb/ │ │ │ └── toolkit/ │ │ │ └── oasv/ │ │ │ └── compatibility/ │ │ │ ├── CompatibilityCheckParser.java │ │ │ ├── factory/ │ │ │ │ ├── DefaultCallbackDiffValidatorFactory.java │ │ │ │ ├── DefaultComponentsDiffValidatorFactory.java │ │ │ │ ├── DefaultEncodingDiffValidatorFactory.java │ │ │ │ ├── DefaultHeaderDiffValidatorFactory.java │ │ │ │ ├── DefaultInfoDiffValidatorFactory.java │ │ │ │ ├── DefaultLinkDiffValidatorFactory.java │ │ │ │ ├── DefaultMediaTypeDiffValidatorFactory.java │ │ │ │ ├── DefaultOasSpecDiffValidatorFactory.java │ │ │ │ ├── DefaultOpenApiDiffValidatorFactory.java │ │ │ │ ├── DefaultOperationDiffValidatorFactory.java │ │ │ │ ├── DefaultParameterDiffValidatorFactory.java │ │ │ │ ├── DefaultPathItemDiffValidatorFactory.java │ │ │ │ ├── DefaultPathsDiffValidatorFactory.java │ │ │ │ ├── DefaultRequestBodyDiffValidatorFactory.java │ │ │ │ ├── DefaultResponseDiffValidatorFactory.java │ │ │ │ ├── DefaultResponsesDiffValidatorFactory.java │ │ │ │ ├── DefaultSchemaDiffValidatorFactory.java │ │ │ │ ├── DefaultSecuritySchemeDiffValidatorFactory.java │ │ │ │ ├── DefaultServerDiffValidatorFactory.java │ │ │ │ └── DefaultTagDiffValidatorFactory.java │ │ │ └── validators/ │ │ │ ├── encoding/ │ │ │ │ ├── EncodingAddNotAllowedDiffValidator.java │ │ │ │ ├── EncodingAllowedReservedChangeDiffValidator.java │ │ │ │ ├── EncodingContentTypeNotSameDiffValidator.java │ │ │ │ ├── EncodingDelNotAllowedDiffValidator.java │ │ │ │ ├── EncodingExplodeNotSameDiffValidator.java │ │ │ │ └── EncodingStyleNotSameDiffValidator.java │ │ │ ├── header/ │ │ │ │ ├── HeaderAddInRequestBodyNotAllowedDiffValidator.java │ │ │ │ └── HeaderDelInResponseNotAllowedDiffValidator.java │ │ │ ├── mediatype/ │ │ │ │ ├── MediaTypeAddInParameterNotAllowedDiffValidator.java │ │ │ │ ├── MediaTypeDelInParameterNotAllowedDiffValidator.java │ │ │ │ ├── MediaTypeDelInRequestBodyNotAllowedDiffValidator.java │ │ │ │ └── MediaTypeDelInResponseNotAllowedDiffValidator.java │ │ │ ├── operation/ │ │ │ │ ├── OperationDeleteNotAllowedDiffValidator.java │ │ │ │ └── OperationIdNotSameDiffValidator.java │ │ │ ├── parameter/ │ │ │ │ ├── ParameterAddDiffValidator.java │ │ │ │ ├── ParameterAllowEmptyValueChangeDiffValidator.java │ │ │ │ ├── ParameterAllowReservedChangeDiffValidator.java │ │ │ │ ├── ParameterExplodeNotSameDiffValidator.java │ │ │ │ ├── ParameterRequiredChangeDiffValidator.java │ │ │ │ └── ParameterStyleNotSameDiffValidator.java │ │ │ ├── pathitem/ │ │ │ │ └── PathItemDeleteNotAllowedDiffValidator.java │ │ │ ├── requestbody/ │ │ │ │ └── RequestBodyRequiredChangeDiffValidator.java │ │ │ ├── response/ │ │ │ │ └── ResponseAddNotAllowedDiffValidator.java │ │ │ └── schema/ │ │ │ ├── SchemaDiscriminatorChangeValidator.java │ │ │ ├── SchemaPropertyChangeValidator.java │ │ │ ├── SchemaReadOnlyChangeValidator.java │ │ │ ├── SchemaTypeFormatChangeValidator.java │ │ │ ├── SchemaWriteOnlyChangeValidator.java │ │ │ ├── SchemaXmlChangeValidator.java │ │ │ ├── TypeFormat.java │ │ │ ├── request/ │ │ │ │ ├── SchemaEnumChangeInRequestValidator.java │ │ │ │ ├── SchemaExclusiveMaximumChangeInRequestValidator.java │ │ │ │ ├── SchemaExclusiveMinimumChangeInRequestValidator.java │ │ │ │ ├── SchemaMaxItemsChangeInRequestValidator.java │ │ │ │ ├── SchemaMaxLengthChangeInRequestValidator.java │ │ │ │ ├── SchemaMaxPropertiesChangeInRequestValidator.java │ │ │ │ ├── SchemaMaximumChangeInRequestValidator.java │ │ │ │ ├── SchemaMinItemsChangeInRequestValidator.java │ │ │ │ ├── SchemaMinLengthChangeInRequestValidator.java │ │ │ │ ├── SchemaMinPropertiesChangeInRequestValidator.java │ │ │ │ ├── SchemaMinimumChangeInRequestValidator.java │ │ │ │ ├── SchemaMultipleOfChangeInRequestValidator.java │ │ │ │ ├── SchemaNullableChangeInRequestValidator.java │ │ │ │ ├── SchemaRequiredChangeInRequestValidator.java │ │ │ │ ├── SchemaTypeFormatChangeInRequestValidator.java │ │ │ │ └── SchemaUniqueItemsChangeInRequestValidator.java │ │ │ └── response/ │ │ │ ├── SchemaEnumChangeInResponseValidator.java │ │ │ ├── SchemaExclusiveMaximumChangeInResponseValidator.java │ │ │ ├── SchemaExclusiveMinimumChangeInResponseValidator.java │ │ │ ├── SchemaMaxItemsChangeInResponseValidator.java │ │ │ ├── SchemaMaxLengthChangeInResponseValidator.java │ │ │ ├── SchemaMaxPropertiesChangeInResponseValidator.java │ │ │ ├── SchemaMaximumChangeInResponseValidator.java │ │ │ ├── SchemaMinItemsChangeInResponseValidator.java │ │ │ ├── SchemaMinLengthChangeInResponseValidator.java │ │ │ ├── SchemaMinPropertiesChangeInResponseValidator.java │ │ │ ├── SchemaMinimumChangeInResponseValidator.java │ │ │ ├── SchemaMultipleOfChangeInResponseValidator.java │ │ │ ├── SchemaNullableChangeInResponseValidator.java │ │ │ ├── SchemaRequiredChangeInResponseValidator.java │ │ │ ├── SchemaTypeFormatChangeInResponseValidator.java │ │ │ └── SchemaUniqueItemsChangeInResponseValidator.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── apache/ │ │ │ └── servicecomb/ │ │ │ └── toolkit/ │ │ │ └── oasv/ │ │ │ └── compatibility/ │ │ │ ├── CompatibilityCheckParserTest.java │ │ │ ├── factory/ │ │ │ │ ├── DefaultCallbackDiffValidatorFactoryTest.java │ │ │ │ ├── DefaultComponentsDiffValidatorFactoryTest.java │ │ │ │ ├── DefaultEncodingDiffValidatorFactoryTest.java │ │ │ │ ├── DefaultInfoDiffValidatorFactoryTest.java │ │ │ │ ├── DefaultLinkDiffValidatorFactoryTest.java │ │ │ │ ├── DefaultMediaTypeDiffValidatorFactoryTest.java │ │ │ │ ├── DefaultOasSpecDiffValidatorFactoryTest.java │ │ │ │ ├── DefaultOpenApiDiffValidatorFactoryTest.java │ │ │ │ ├── DefaultOperationDiffValidatorFactoryTest.java │ │ │ │ ├── DefaultParameterDiffValidatorFactoryTest.java │ │ │ │ ├── DefaultPathItemDiffValidatorFactoryTest.java │ │ │ │ ├── DefaultPathsDiffValidatorFactoryTest.java │ │ │ │ ├── DefaultRequestBodyDiffValidatorFactoryTest.java │ │ │ │ ├── DefaultResponseDiffValidatorFactoryTest.java │ │ │ │ ├── DefaultResponsesDiffValidatorFactoryTest.java │ │ │ │ ├── DefaultSchemaDiffValidatorFactoryTest.java │ │ │ │ ├── DefaultSecuritySchemeDiffValidatorFactoryTest.java │ │ │ │ ├── DefaultServerDiffValidatorFactoryTest.java │ │ │ │ ├── DefaultTagDiffValidatorFactoryTest.java │ │ │ │ └── DiffValidatorFactoryTestConfiguration.java │ │ │ └── validators/ │ │ │ ├── OasCompatibilityTestBase.java │ │ │ ├── encoding/ │ │ │ │ ├── EncodingAddNotAllowedDiffValidatorTest.java │ │ │ │ ├── EncodingAllowedReservedChangeDiffValidatorTest.java │ │ │ │ ├── EncodingContentTypeNotSameDiffValidatorTest.java │ │ │ │ ├── EncodingDelNotAllowedDiffValidatorTest.java │ │ │ │ ├── EncodingExplodeNotSameDiffValidatorTest.java │ │ │ │ └── EncodingStyleNotSameDiffValidatorTest.java │ │ │ ├── header/ │ │ │ │ ├── HeaderAddInRequestBodyNotAllowedDiffValidatorTest.java │ │ │ │ └── HeaderDelInResponseNotAllowedDiffValidatorTest.java │ │ │ ├── mediatype/ │ │ │ │ ├── MediaTypeAddInParameterNotAllowedDiffValidatorTest.java │ │ │ │ ├── MediaTypeDelInParameterNotAllowedDiffValidatorTest.java │ │ │ │ ├── MediaTypeDelInRequestBodyNotAllowedDiffValidatorTest.java │ │ │ │ └── MediaTypeDelInResponseNotAllowedDiffValidatorTest.java │ │ │ ├── operation/ │ │ │ │ ├── OperationDeleteNotAllowedDiffValidatorTest.java │ │ │ │ └── OperationIdNotSameDiffValidatorTest.java │ │ │ ├── parameter/ │ │ │ │ ├── ParameterAddDiffValidatorTest.java │ │ │ │ ├── ParameterAllowEmptyValueChangeDiffValidatorTest.java │ │ │ │ ├── ParameterAllowReservedChangeDiffValidatorTest.java │ │ │ │ ├── ParameterExplodeNotSameDiffValidatorTest.java │ │ │ │ ├── ParameterRequiredChangeDiffValidatorTest.java │ │ │ │ └── ParameterStyleNotSameDiffValidatorTest.java │ │ │ ├── pathitem/ │ │ │ │ └── PathItemDeleteNotAllowedDiffValidatorTest.java │ │ │ ├── requestbody/ │ │ │ │ └── RequestBodyRequiredChangeDiffValidatorTest.java │ │ │ ├── response/ │ │ │ │ └── ResponseAddNotAllowedDiffValidatorTest.java │ │ │ └── schema/ │ │ │ ├── SchemaDiscriminatorChangeValidatorTest.java │ │ │ ├── SchemaReadOnlyChangeValidatorTest.java │ │ │ ├── SchemaWriteOnlyChangeValidatorTest.java │ │ │ ├── SchemaXmlChangeValidatorTest.java │ │ │ ├── request/ │ │ │ │ ├── SchemaEnumChangeInRequestValidatorTest.java │ │ │ │ ├── SchemaExclusiveMaximumChangeInRequestValidatorTest.java │ │ │ │ ├── SchemaExclusiveMinimumChangeInRequestValidatorTest.java │ │ │ │ ├── SchemaMaxItemsChangeInRequestValidatorTest.java │ │ │ │ ├── SchemaMaxLengthChangeInRequestValidatorTest.java │ │ │ │ ├── SchemaMaxPropertiesChangeInRequestValidatorTest.java │ │ │ │ ├── SchemaMaximumChangeInRequestValidatorTest.java │ │ │ │ ├── SchemaMinItemsChangeInRequestValidatorTest.java │ │ │ │ ├── SchemaMinLengthChangeInRequestValidatorTest.java │ │ │ │ ├── SchemaMinPropertiesChangeInRequestValidatorTest.java │ │ │ │ ├── SchemaMinimumChangeInRequestValidatorTest.java │ │ │ │ ├── SchemaMultipleOfChangeInRequestValidatorTest.java │ │ │ │ ├── SchemaNullableChangeInRequestValidatorTest.java │ │ │ │ ├── SchemaRequiredChangeInRequestValidatorTest.java │ │ │ │ ├── SchemaTypeFormatChangeInRequestValidatorTest.java │ │ │ │ └── SchemaUniqueItemsChangeInRequestValidatorTest.java │ │ │ └── response/ │ │ │ ├── SchemaEnumChangeInResponseValidatorTest.java │ │ │ ├── SchemaExclusiveMaximumChangeInResponseValidatorTest.java │ │ │ ├── SchemaExclusiveMinimumChangeInResponseValidatorTest.java │ │ │ ├── SchemaMaxItemsChangeInResponseValidatorTest.java │ │ │ ├── SchemaMaxLengthChangeInResponseValidatorTest.java │ │ │ ├── SchemaMaxPropertiesChangeInResponseValidatorTest.java │ │ │ ├── SchemaMaximumChangeInResponseValidatorTest.java │ │ │ ├── SchemaMinItemsChangeInResponseValidatorTest.java │ │ │ ├── SchemaMinLengthChangeInResponseValidatorTest.java │ │ │ ├── SchemaMinPropertiesChangeInResponseValidatorTest.java │ │ │ ├── SchemaMinimumChangeInResponseValidatorTest.java │ │ │ ├── SchemaMultipleOfChangeInResponseValidatorTest.java │ │ │ ├── SchemaNullableChangeInResponseValidatorTest.java │ │ │ ├── SchemaRequiredChangeInResponseValidatorTest.java │ │ │ ├── SchemaTypeFormatChangeInResponseValidatorTest.java │ │ │ └── SchemaUniqueItemsChangeInResponseValidatorTest.java │ │ └── resources/ │ │ ├── logback-test.xml │ │ └── org/ │ │ └── apache/ │ │ └── servicecomb/ │ │ └── toolkit/ │ │ └── oasv/ │ │ └── compatibility/ │ │ ├── parser-test.yaml │ │ └── validators/ │ │ ├── encoding/ │ │ │ ├── petstore-encoding-add-a.yaml │ │ │ ├── petstore-encoding-add-b.yaml │ │ │ ├── petstore-encoding-allow-reserved-a.yaml │ │ │ ├── petstore-encoding-allow-reserved-b.yaml │ │ │ ├── petstore-encoding-content-type-a.yaml │ │ │ ├── petstore-encoding-content-type-b.yaml │ │ │ ├── petstore-encoding-del-a.yaml │ │ │ ├── petstore-encoding-del-b.yaml │ │ │ ├── petstore-encoding-explode-a.yaml │ │ │ ├── petstore-encoding-explode-b.yaml │ │ │ ├── petstore-encoding-style-a.yaml │ │ │ └── petstore-encoding-style-b.yaml │ │ ├── header/ │ │ │ ├── petstore-header-add-in-request-body-a.yaml │ │ │ ├── petstore-header-add-in-request-body-b.yaml │ │ │ ├── petstore-header-del-in-response-a.yaml │ │ │ └── petstore-header-del-in-response-b.yaml │ │ ├── mediatype/ │ │ │ ├── petstore-media-type-add-in-parameter-a.yaml │ │ │ ├── petstore-media-type-add-in-parameter-b.yaml │ │ │ ├── petstore-media-type-del-in-parameter-a.yaml │ │ │ ├── petstore-media-type-del-in-parameter-b.yaml │ │ │ ├── petstore-media-type-del-in-request-body-a.yaml │ │ │ ├── petstore-media-type-del-in-request-body-b.yaml │ │ │ ├── petstore-media-type-del-in-response-a.yaml │ │ │ └── petstore-media-type-del-in-response-b.yaml │ │ ├── operation/ │ │ │ ├── petstore-operation-delete-a.yaml │ │ │ ├── petstore-operation-delete-b.yaml │ │ │ ├── petstore-operation-id-a.yaml │ │ │ └── petstore-operation-id-b.yaml │ │ ├── parameter/ │ │ │ ├── petstore-parameter-add-a.yaml │ │ │ ├── petstore-parameter-add-b.yaml │ │ │ ├── petstore-parameter-allow-empty-value-a.yaml │ │ │ ├── petstore-parameter-allow-empty-value-b.yaml │ │ │ ├── petstore-parameter-allow-reserved-a.yaml │ │ │ ├── petstore-parameter-allow-reserved-b.yaml │ │ │ ├── petstore-parameter-explode-a.yaml │ │ │ ├── petstore-parameter-explode-b.yaml │ │ │ ├── petstore-parameter-required-a.yaml │ │ │ ├── petstore-parameter-required-b.yaml │ │ │ ├── petstore-parameter-style-a.yaml │ │ │ └── petstore-parameter-style-b.yaml │ │ ├── pathitem/ │ │ │ ├── petstore-path-item-delete-a.yaml │ │ │ └── petstore-path-item-delete-b.yaml │ │ ├── requestbody/ │ │ │ ├── petstore-request-body-required-a.yaml │ │ │ └── petstore-request-body-required-b.yaml │ │ ├── response/ │ │ │ ├── petstore-response-add-a.yaml │ │ │ └── petstore-response-add-b.yaml │ │ └── schema/ │ │ ├── petstore-schema-discriminator-a.yaml │ │ ├── petstore-schema-discriminator-b.yaml │ │ ├── petstore-schema-read-only-a.yaml │ │ ├── petstore-schema-read-only-b.yaml │ │ ├── petstore-schema-write-only-a.yaml │ │ ├── petstore-schema-write-only-b.yaml │ │ ├── petstore-schema-xml-a.yaml │ │ ├── petstore-schema-xml-b.yaml │ │ ├── request/ │ │ │ ├── petstore-schema-enum-in-request-a.yaml │ │ │ ├── petstore-schema-enum-in-request-b.yaml │ │ │ ├── petstore-schema-exclusive-maximum-in-request-a.yaml │ │ │ ├── petstore-schema-exclusive-maximum-in-request-b.yaml │ │ │ ├── petstore-schema-exclusive-minimum-in-request-a.yaml │ │ │ ├── petstore-schema-exclusive-minimum-in-request-b.yaml │ │ │ ├── petstore-schema-max-items-in-request-a.yaml │ │ │ ├── petstore-schema-max-items-in-request-b.yaml │ │ │ ├── petstore-schema-max-length-in-request-a.yaml │ │ │ ├── petstore-schema-max-length-in-request-b.yaml │ │ │ ├── petstore-schema-max-properties-in-request-a.yaml │ │ │ ├── petstore-schema-max-properties-in-request-b.yaml │ │ │ ├── petstore-schema-maximum-in-request-a.yaml │ │ │ ├── petstore-schema-maximum-in-request-b.yaml │ │ │ ├── petstore-schema-min-items-in-request-a.yaml │ │ │ ├── petstore-schema-min-items-in-request-b.yaml │ │ │ ├── petstore-schema-min-length-in-request-a.yaml │ │ │ ├── petstore-schema-min-length-in-request-b.yaml │ │ │ ├── petstore-schema-min-properties-in-request-a.yaml │ │ │ ├── petstore-schema-min-properties-in-request-b.yaml │ │ │ ├── petstore-schema-minimum-in-request-a.yaml │ │ │ ├── petstore-schema-minimum-in-request-b.yaml │ │ │ ├── petstore-schema-multiple-of-in-request-a.yaml │ │ │ ├── petstore-schema-multiple-of-in-request-b.yaml │ │ │ ├── petstore-schema-nullable-in-request-a.yaml │ │ │ ├── petstore-schema-nullable-in-request-b.yaml │ │ │ ├── petstore-schema-required-in-request-a.yaml │ │ │ ├── petstore-schema-required-in-request-b.yaml │ │ │ ├── petstore-schema-type-format-in-request-a.yaml │ │ │ ├── petstore-schema-type-format-in-request-b.yaml │ │ │ ├── petstore-schema-unique-items-in-request-a.yaml │ │ │ └── petstore-schema-unique-items-in-request-b.yaml │ │ └── response/ │ │ ├── petstore-schema-enum-in-response-a.yaml │ │ ├── petstore-schema-enum-in-response-b.yaml │ │ ├── petstore-schema-exclusive-maximum-in-response-a.yaml │ │ ├── petstore-schema-exclusive-maximum-in-response-b.yaml │ │ ├── petstore-schema-exclusive-minimum-in-response-a.yaml │ │ ├── petstore-schema-exclusive-minimum-in-response-b.yaml │ │ ├── petstore-schema-max-items-in-response-a.yaml │ │ ├── petstore-schema-max-items-in-response-b.yaml │ │ ├── petstore-schema-max-length-in-response-a.yaml │ │ ├── petstore-schema-max-length-in-response-b.yaml │ │ ├── petstore-schema-max-properties-in-response-a.yaml │ │ ├── petstore-schema-max-properties-in-response-b.yaml │ │ ├── petstore-schema-maximum-in-response-a.yaml │ │ ├── petstore-schema-maximum-in-response-b.yaml │ │ ├── petstore-schema-min-items-in-response-a.yaml │ │ ├── petstore-schema-min-items-in-response-b.yaml │ │ ├── petstore-schema-min-length-in-response-a.yaml │ │ ├── petstore-schema-min-length-in-response-b.yaml │ │ ├── petstore-schema-min-properties-in-response-a.yaml │ │ ├── petstore-schema-min-properties-in-response-b.yaml │ │ ├── petstore-schema-minimum-in-response-a.yaml │ │ ├── petstore-schema-minimum-in-response-b.yaml │ │ ├── petstore-schema-multiple-of-in-response-a.yaml │ │ ├── petstore-schema-multiple-of-in-response-b.yaml │ │ ├── petstore-schema-nullable-in-response-a.yaml │ │ ├── petstore-schema-nullable-in-response-b.yaml │ │ ├── petstore-schema-required-in-response-a.yaml │ │ ├── petstore-schema-required-in-response-b.yaml │ │ ├── petstore-schema-type-format-in-response-a.yaml │ │ ├── petstore-schema-type-format-in-response-b.yaml │ │ ├── petstore-schema-unique-items-in-response-a.yaml │ │ └── petstore-schema-unique-items-in-response-b.yaml │ ├── oas-validator-compatibility-spring/ │ │ ├── pom.xml │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── apache/ │ │ │ │ └── servicecomb/ │ │ │ │ └── toolkit/ │ │ │ │ └── oasv/ │ │ │ │ └── compatibility/ │ │ │ │ └── config/ │ │ │ │ ├── EncodingDiffValidatorsConfiguration.java │ │ │ │ ├── HeaderDiffValidatorsConfiguration.java │ │ │ │ ├── MediaTypeDiffValidatorsConfiguration.java │ │ │ │ ├── OperationDiffValidatorsConfiguration.java │ │ │ │ ├── ParameterDiffValidatorsConfiguration.java │ │ │ │ ├── PathItemDiffValidatorsConfiguration.java │ │ │ │ ├── RequestBodyDiffValidatorsConfiguration.java │ │ │ │ ├── ResponseDiffValidatorsConfiguration.java │ │ │ │ └── SchemaDiffValidatorsConfiguration.java │ │ │ └── resources/ │ │ │ └── META-INF/ │ │ │ └── spring.factories │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── apache/ │ │ │ └── servicecomb/ │ │ │ └── toolkit/ │ │ │ └── oasv/ │ │ │ └── compatibility/ │ │ │ └── config/ │ │ │ └── ValidatorConfigurationsTest.java │ │ └── resources/ │ │ └── logback-test.xml │ ├── oas-validator-core/ │ │ ├── pom.xml │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── apache/ │ │ │ └── servicecomb/ │ │ │ └── toolkit/ │ │ │ └── oasv/ │ │ │ ├── FactoryOptions.java │ │ │ ├── common/ │ │ │ │ ├── OasObjectProperty.java │ │ │ │ ├── OasObjectPropertyLocation.java │ │ │ │ └── OasObjectType.java │ │ │ ├── diffvalidation/ │ │ │ │ ├── api/ │ │ │ │ │ ├── CallbackDiffValidator.java │ │ │ │ │ ├── ComponentsDiffValidator.java │ │ │ │ │ ├── DefaultOasSpecDiffValidator.java │ │ │ │ │ ├── DiffViolationMessages.java │ │ │ │ │ ├── EncodingDiffValidator.java │ │ │ │ │ ├── HeaderDiffValidator.java │ │ │ │ │ ├── InfoDiffValidator.java │ │ │ │ │ ├── LinkDiffValidator.java │ │ │ │ │ ├── ListPropertyDiffValidator.java │ │ │ │ │ ├── MapPropertyDiffValidator.java │ │ │ │ │ ├── MediaTypeDiffValidator.java │ │ │ │ │ ├── OasDiffValidationContext.java │ │ │ │ │ ├── OasDiffValidationException.java │ │ │ │ │ ├── OasDiffViolation.java │ │ │ │ │ ├── OasObjectDiffValidator.java │ │ │ │ │ ├── OasObjectDiffValidatorTemplate.java │ │ │ │ │ ├── OasSpecDiffValidator.java │ │ │ │ │ ├── ObjectPropertyDiffValidator.java │ │ │ │ │ ├── OpenApiDiffValidator.java │ │ │ │ │ ├── OperationDiffValidator.java │ │ │ │ │ ├── ParameterDiffValidator.java │ │ │ │ │ ├── PathItemDiffValidator.java │ │ │ │ │ ├── PathsDiffValidator.java │ │ │ │ │ ├── RequestBodyDiffValidator.java │ │ │ │ │ ├── ResponseDiffValidator.java │ │ │ │ │ ├── ResponsesDiffValidator.java │ │ │ │ │ ├── SchemaAddValidator.java │ │ │ │ │ ├── SchemaCompareValidator.java │ │ │ │ │ ├── SchemaDelValidator.java │ │ │ │ │ ├── SchemaDiffValidator.java │ │ │ │ │ ├── SecuritySchemeDiffValidator.java │ │ │ │ │ ├── ServerDiffValidator.java │ │ │ │ │ └── TagDiffValidator.java │ │ │ │ ├── factory/ │ │ │ │ │ ├── CallbackDiffValidatorFactory.java │ │ │ │ │ ├── ComponentsDiffValidatorFactory.java │ │ │ │ │ ├── EncodingDiffValidatorFactory.java │ │ │ │ │ ├── HeaderDiffValidatorFactory.java │ │ │ │ │ ├── InfoDiffValidatorFactory.java │ │ │ │ │ ├── LinkDiffValidatorFactory.java │ │ │ │ │ ├── MediaTypeDiffValidatorFactory.java │ │ │ │ │ ├── OasObjectDiffValidatorFactory.java │ │ │ │ │ ├── OasSpecDiffValidatorFactory.java │ │ │ │ │ ├── OpenApiDiffValidatorFactory.java │ │ │ │ │ ├── OperationDiffValidatorFactory.java │ │ │ │ │ ├── ParameterDiffValidatorFactory.java │ │ │ │ │ ├── PathItemDiffValidatorFactory.java │ │ │ │ │ ├── PathsDiffValidatorFactory.java │ │ │ │ │ ├── RequestBodyDiffValidatorFactory.java │ │ │ │ │ ├── ResponseDiffValidatorFactory.java │ │ │ │ │ ├── ResponsesDiffValidatorFactory.java │ │ │ │ │ ├── SchemaDiffValidatorFactory.java │ │ │ │ │ ├── SecuritySchemeDiffValidatorFactory.java │ │ │ │ │ ├── ServerDiffValidatorFactory.java │ │ │ │ │ └── TagDiffValidatorFactory.java │ │ │ │ ├── skeleton/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── ComponentsCallbacksDiffValidator.java │ │ │ │ │ │ ├── ComponentsHeadersDiffValidator.java │ │ │ │ │ │ ├── ComponentsLinksDiffValidator.java │ │ │ │ │ │ ├── ComponentsParametersDiffValidator.java │ │ │ │ │ │ ├── ComponentsRequestBodiesDiffValidator.java │ │ │ │ │ │ └── ComponentsResponsesDiffValidator.java │ │ │ │ │ ├── encoding/ │ │ │ │ │ │ └── EncodingHeadersDiffValidator.java │ │ │ │ │ ├── header/ │ │ │ │ │ │ └── HeaderSchemaDiffValidator.java │ │ │ │ │ ├── mediatype/ │ │ │ │ │ │ ├── MediaTypeEncodingDiffValidator.java │ │ │ │ │ │ └── MediaTypeSchemaDiffValidator.java │ │ │ │ │ ├── openapi/ │ │ │ │ │ │ ├── OpenApiComponentsDiffValidator.java │ │ │ │ │ │ ├── OpenApiInfoDiffValidator.java │ │ │ │ │ │ ├── OpenApiPathsDiffValidator.java │ │ │ │ │ │ ├── OpenApiServersDiffValidator.java │ │ │ │ │ │ └── OpenApiTagsDiffValidator.java │ │ │ │ │ ├── operation/ │ │ │ │ │ │ ├── OperationParametersDiffValidator.java │ │ │ │ │ │ ├── OperationRequestBodyDiffValidator.java │ │ │ │ │ │ └── OperationResponsesDiffValidator.java │ │ │ │ │ ├── parameter/ │ │ │ │ │ │ ├── ParameterContentDiffValidator.java │ │ │ │ │ │ └── ParameterSchemaDiffValidator.java │ │ │ │ │ ├── pathitem/ │ │ │ │ │ │ ├── PathItemOperationsDiffValidator.java │ │ │ │ │ │ └── PathItemParametersDiffValidator.java │ │ │ │ │ ├── paths/ │ │ │ │ │ │ └── PathsPathItemsDiffValidator.java │ │ │ │ │ ├── requestbody/ │ │ │ │ │ │ └── RequestBodyContentDiffValidator.java │ │ │ │ │ ├── response/ │ │ │ │ │ │ ├── ResponseContentDiffValidator.java │ │ │ │ │ │ └── ResponseHeadersDiffValidator.java │ │ │ │ │ ├── responses/ │ │ │ │ │ │ └── ResponsesResponsesDiffValidator.java │ │ │ │ │ └── schema/ │ │ │ │ │ └── SchemaDiffValidatorEngine.java │ │ │ │ └── util/ │ │ │ │ ├── ChangeRangeCheckUtils.java │ │ │ │ ├── OasDiffValidationContextUtils.java │ │ │ │ ├── OasObjectDiffValidatorUtils.java │ │ │ │ └── ParameterUtils.java │ │ │ ├── util/ │ │ │ │ ├── StringCaseUtils.java │ │ │ │ └── SyntaxChecker.java │ │ │ └── validation/ │ │ │ ├── api/ │ │ │ │ ├── CallbackValidator.java │ │ │ │ ├── ComponentsValidator.java │ │ │ │ ├── DefaultOasSpecValidator.java │ │ │ │ ├── EncodingValidator.java │ │ │ │ ├── ExampleValidator.java │ │ │ │ ├── HeaderValidator.java │ │ │ │ ├── InfoValidator.java │ │ │ │ ├── LinkValidator.java │ │ │ │ ├── ListPropertyRequiredValidator.java │ │ │ │ ├── ListPropertyValidator.java │ │ │ │ ├── MapPropertyKeysValidator.java │ │ │ │ ├── MapPropertyValuesValidator.java │ │ │ │ ├── MediaTypeValidator.java │ │ │ │ ├── OasObjectValidator.java │ │ │ │ ├── OasSpecValidator.java │ │ │ │ ├── OasValidationContext.java │ │ │ │ ├── OasViolation.java │ │ │ │ ├── ObjectPropertyRequiredValidator.java │ │ │ │ ├── ObjectPropertyValidator.java │ │ │ │ ├── OpenApiValidator.java │ │ │ │ ├── OperationValidator.java │ │ │ │ ├── ParameterValidator.java │ │ │ │ ├── PathItemValidator.java │ │ │ │ ├── PathsValidator.java │ │ │ │ ├── RequestBodyValidator.java │ │ │ │ ├── ResponseValidator.java │ │ │ │ ├── ResponsesValidator.java │ │ │ │ ├── SchemaValidator.java │ │ │ │ ├── SecuritySchemeValidator.java │ │ │ │ ├── ServerValidator.java │ │ │ │ ├── TagValidator.java │ │ │ │ └── ViolationMessages.java │ │ │ ├── factory/ │ │ │ │ ├── CallbackValidatorFactory.java │ │ │ │ ├── ComponentsValidatorFactory.java │ │ │ │ ├── EncodingValidatorFactory.java │ │ │ │ ├── ExampleValidatorFactory.java │ │ │ │ ├── HeaderValidatorFactory.java │ │ │ │ ├── InfoValidatorFactory.java │ │ │ │ ├── LinkValidatorFactory.java │ │ │ │ ├── MediaTypeValidatorFactory.java │ │ │ │ ├── OasObjectValidatorFactory.java │ │ │ │ ├── OasSpecValidatorFactory.java │ │ │ │ ├── OpenApiValidatorFactory.java │ │ │ │ ├── OperationValidatorFactory.java │ │ │ │ ├── ParameterValidatorFactory.java │ │ │ │ ├── PathItemValidatorFactory.java │ │ │ │ ├── PathsValidatorFactory.java │ │ │ │ ├── RequestBodyValidatorFactory.java │ │ │ │ ├── ResponseValidatorFactory.java │ │ │ │ ├── ResponsesValidatorFactory.java │ │ │ │ ├── SchemaValidatorFactory.java │ │ │ │ ├── SecuritySchemeValidatorFactory.java │ │ │ │ ├── ServerValidatorFactory.java │ │ │ │ └── TagValidatorFactory.java │ │ │ ├── skeleton/ │ │ │ │ ├── components/ │ │ │ │ │ ├── ComponentsCallbacksKeysValidator.java │ │ │ │ │ ├── ComponentsCallbacksValuesValidator.java │ │ │ │ │ ├── ComponentsExamplesKeysValidator.java │ │ │ │ │ ├── ComponentsExamplesValuesValidator.java │ │ │ │ │ ├── ComponentsHeadersKeysValidator.java │ │ │ │ │ ├── ComponentsHeadersValuesValidator.java │ │ │ │ │ ├── ComponentsLinksKeysValidator.java │ │ │ │ │ ├── ComponentsLinksValuesValidator.java │ │ │ │ │ ├── ComponentsParametersKeysValidator.java │ │ │ │ │ ├── ComponentsParametersValuesValidator.java │ │ │ │ │ ├── ComponentsRequestBodiesKeysValidator.java │ │ │ │ │ ├── ComponentsRequestBodiesValuesValidator.java │ │ │ │ │ ├── ComponentsResponsesKeysValidator.java │ │ │ │ │ ├── ComponentsResponsesValuesValidator.java │ │ │ │ │ ├── ComponentsSchemasKeysValidator.java │ │ │ │ │ ├── ComponentsSchemasValuesValidator.java │ │ │ │ │ ├── ComponentsSecuritySchemesKeysValidator.java │ │ │ │ │ └── ComponentsSecuritySchemesValuesValidator.java │ │ │ │ ├── encoding/ │ │ │ │ │ ├── EncodingHeadersKeysValidator.java │ │ │ │ │ └── EncodingHeadersValuesValidator.java │ │ │ │ ├── header/ │ │ │ │ │ └── HeaderSchemaValidator.java │ │ │ │ ├── mediatype/ │ │ │ │ │ ├── MediaTypeEncodingValidator.java │ │ │ │ │ └── MediaTypeSchemaValidator.java │ │ │ │ ├── openapi/ │ │ │ │ │ ├── OpenApiComponentsValidator.java │ │ │ │ │ ├── OpenApiInfoValidator.java │ │ │ │ │ ├── OpenApiPathsValidator.java │ │ │ │ │ ├── OpenApiServersValidator.java │ │ │ │ │ └── OpenApiTagsValidator.java │ │ │ │ ├── operation/ │ │ │ │ │ ├── OperationParametersValidator.java │ │ │ │ │ ├── OperationRequestBodyValidator.java │ │ │ │ │ └── OperationResponsesValidator.java │ │ │ │ ├── parameter/ │ │ │ │ │ ├── ParameterContentValidator.java │ │ │ │ │ └── ParameterSchemaValidator.java │ │ │ │ ├── pathitem/ │ │ │ │ │ ├── PathItemOperationsValidator.java │ │ │ │ │ └── PathItemParametersValidator.java │ │ │ │ ├── paths/ │ │ │ │ │ └── PathsPathItemsValidator.java │ │ │ │ ├── requestbody/ │ │ │ │ │ └── RequestBodyContentValidator.java │ │ │ │ ├── response/ │ │ │ │ │ ├── ResponseContentValidator.java │ │ │ │ │ ├── ResponseHeadersKeysValidator.java │ │ │ │ │ └── ResponseHeadersValuesValidator.java │ │ │ │ ├── responses/ │ │ │ │ │ └── ResponsesResponsesValidator.java │ │ │ │ └── schema/ │ │ │ │ ├── SchemaPropertiesKeysValidator.java │ │ │ │ └── SchemaRecursiveValidatorTemplate.java │ │ │ └── util/ │ │ │ └── OasObjectValidatorUtils.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── apache/ │ │ │ └── servicecomb/ │ │ │ └── toolkit/ │ │ │ └── oasv/ │ │ │ ├── common/ │ │ │ │ └── OasObjectPropertyLocationTest.java │ │ │ └── util/ │ │ │ ├── StringCaseUtilsTest.java │ │ │ └── SyntaxCheckerTest.java │ │ └── resources/ │ │ └── org/ │ │ └── apache/ │ │ └── servicecomb/ │ │ └── toolkit/ │ │ └── oasv/ │ │ └── util/ │ │ ├── syntax-bad.yaml │ │ └── syntax-good.yaml │ ├── oas-validator-core-spring/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── apache/ │ │ │ └── servicecomb/ │ │ │ └── toolkit/ │ │ │ └── oasv/ │ │ │ └── diffvalidation/ │ │ │ └── config/ │ │ │ └── OasDiffValidatorsSkeletonConfiguration.java │ │ └── resources/ │ │ └── META-INF/ │ │ └── spring.factories │ ├── oas-validator-style/ │ │ ├── pom.xml │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── org/ │ │ │ └── apache/ │ │ │ └── servicecomb/ │ │ │ └── toolkit/ │ │ │ └── oasv/ │ │ │ └── style/ │ │ │ ├── StyleCheckParser.java │ │ │ ├── factory/ │ │ │ │ ├── DefaultComponentsValidatorFactory.java │ │ │ │ ├── DefaultEncodingValidatorFactory.java │ │ │ │ ├── DefaultHeaderValidatorFactory.java │ │ │ │ ├── DefaultInfoValidatorFactory.java │ │ │ │ ├── DefaultMediaTypeValidatorFactory.java │ │ │ │ ├── DefaultOasSpecValidatorFactory.java │ │ │ │ ├── DefaultOpenApiValidatorFactory.java │ │ │ │ ├── DefaultOperationValidatorFactory.java │ │ │ │ ├── DefaultParameterValidatorFactory.java │ │ │ │ ├── DefaultPathItemValidatorFactory.java │ │ │ │ ├── DefaultPathsValidatorFactory.java │ │ │ │ ├── DefaultRequestBodyValidatorFactory.java │ │ │ │ ├── DefaultResponseValidatorFactory.java │ │ │ │ ├── DefaultResponsesValidatorFactory.java │ │ │ │ ├── DefaultSchemaValidatorFactory.java │ │ │ │ ├── DefaultSecuritySchemeValidatorFactory.java │ │ │ │ ├── DefaultServerValidatorFactory.java │ │ │ │ ├── DefaultTagValidatorFactory.java │ │ │ │ └── ValidatorFactoryComponents.java │ │ │ └── validator/ │ │ │ ├── components/ │ │ │ │ ├── ComponentsCallbacksKeysCaseValidator.java │ │ │ │ ├── ComponentsExamplesKeysCaseValidator.java │ │ │ │ ├── ComponentsHeadersKeysCaseValidator.java │ │ │ │ ├── ComponentsLinksKeysCaseValidator.java │ │ │ │ ├── ComponentsParametersKeysCaseValidator.java │ │ │ │ ├── ComponentsRequestBodiesKeysCaseValidator.java │ │ │ │ ├── ComponentsResponsesKeysCaseValidator.java │ │ │ │ ├── ComponentsSchemasKeysCaseValidator.java │ │ │ │ └── ComponentsSecuritySchemesKeysCaseValidator.java │ │ │ ├── encoding/ │ │ │ │ └── EncodingHeadersKeysCaseValidator.java │ │ │ ├── header/ │ │ │ │ └── HeaderDescriptionRequiredValidator.java │ │ │ ├── info/ │ │ │ │ └── InfoDescriptionRequiredValidator.java │ │ │ ├── openapi/ │ │ │ │ ├── OpenApiSecuritySizeEqValidator.java │ │ │ │ ├── OpenApiTagsSizeGteValidator.java │ │ │ │ └── OpenApiVersionGteValidator.java │ │ │ ├── operation/ │ │ │ │ ├── OperationIdCaseValidator.java │ │ │ │ ├── OperationServersSizeEqValidator.java │ │ │ │ ├── OperationSummaryRequiredValidator.java │ │ │ │ ├── OperationTagsReferenceValidator.java │ │ │ │ └── OperationTagsSizeEqValidator.java │ │ │ ├── parameter/ │ │ │ │ ├── ParameterDescriptionRequiredValidator.java │ │ │ │ ├── ParameterNameCookieCaseValidator.java │ │ │ │ ├── ParameterNameHeaderCaseValidator.java │ │ │ │ ├── ParameterNamePathCaseValidator.java │ │ │ │ └── ParameterNameQueryCaseValidator.java │ │ │ ├── paths/ │ │ │ │ └── PathsKeyCaseValidator.java │ │ │ ├── requestbody/ │ │ │ │ └── RequestBodyDescriptionRequiredValidator.java │ │ │ ├── response/ │ │ │ │ └── ResponseHeadersKeysCaseValidator.java │ │ │ ├── schema/ │ │ │ │ ├── SchemaPropertiesKeysCaseValidator.java │ │ │ │ └── SchemaTitleRequiredValidator.java │ │ │ └── tag/ │ │ │ ├── TagDescriptionRequiredValidator.java │ │ │ ├── TagMustBeReferencedValidator.java │ │ │ └── TagNameCaseValidator.java │ │ └── test/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── apache/ │ │ │ └── servicecomb/ │ │ │ └── toolkit/ │ │ │ └── oasv/ │ │ │ └── style/ │ │ │ ├── StyleCheckParserTest.java │ │ │ ├── factory/ │ │ │ │ ├── DefaultComponentsValidatorFactoryTest.java │ │ │ │ ├── DefaultEncodingValidatorFactoryTest.java │ │ │ │ ├── DefaultHeaderValidatorFactoryTest.java │ │ │ │ ├── DefaultInfoValidatorFactoryTest.java │ │ │ │ ├── DefaultMediaTypeValidatorFactoryTest.java │ │ │ │ ├── DefaultOasSpecValidatorFactoryTest.java │ │ │ │ ├── DefaultOpenApiValidatorFactoryTest.java │ │ │ │ ├── DefaultOperationValidatorFactoryTest.java │ │ │ │ ├── DefaultParameterValidatorFactoryTest.java │ │ │ │ ├── DefaultPathItemValidatorFactoryTest.java │ │ │ │ ├── DefaultPathsValidatorFactoryTest.java │ │ │ │ ├── DefaultRequestBodyValidatorFactoryTest.java │ │ │ │ ├── DefaultResponseValidatorFactoryTest.java │ │ │ │ ├── DefaultResponsesValidatorFactoryTest.java │ │ │ │ ├── DefaultSchemaValidatorFactoryTest.java │ │ │ │ ├── DefaultSecuritySchemeValidatorFactoryTest.java │ │ │ │ ├── DefaultServerValidatorFactoryTest.java │ │ │ │ └── DefaultTagValidatorFactoryTest.java │ │ │ └── validator/ │ │ │ ├── OasStyleCheckTestBase.java │ │ │ ├── components/ │ │ │ │ ├── ComponentsCallbacksKeysCaseValidatorTest.java │ │ │ │ ├── ComponentsExamplesKeysCaseValidatorTest.java │ │ │ │ ├── ComponentsHeadersKeysCaseValidatorTest.java │ │ │ │ ├── ComponentsLinksKeysCaseValidatorTest.java │ │ │ │ ├── ComponentsParametersKeysCaseValidatorTest.java │ │ │ │ ├── ComponentsRequestBodiesKeysCaseValidatorTest.java │ │ │ │ ├── ComponentsResponsesKeysCaseValidatorTest.java │ │ │ │ ├── ComponentsSchemasKeysCaseValidatorTest.java │ │ │ │ └── ComponentsSecuritySchemesKeysCaseValidatorTest.java │ │ │ ├── encoding/ │ │ │ │ └── EncodingHeadersKeysCaseValidatorTest.java │ │ │ ├── header/ │ │ │ │ └── HeaderDescriptionRequiredValidatorTest.java │ │ │ ├── info/ │ │ │ │ └── InfoDescriptionRequiredValidatorTest.java │ │ │ ├── openapi/ │ │ │ │ ├── OpenApiSecuritySizeEqValidatorTest.java │ │ │ │ ├── OpenApiTagsSizeGteValidatorTest.java │ │ │ │ └── OpenApiVersionGteValidatorTest.java │ │ │ ├── operation/ │ │ │ │ ├── OperationIdCaseValidatorTest.java │ │ │ │ ├── OperationServersSizeEqValidatorTest.java │ │ │ │ ├── OperationSummaryRequiredValidatorTest.java │ │ │ │ ├── OperationTagsReferenceValidatorTest.java │ │ │ │ └── OperationTagsSizeEqValidatorTest.java │ │ │ ├── parameter/ │ │ │ │ ├── ParameterDescriptionRequiredValidatorTest.java │ │ │ │ ├── ParameterNameCookieCaseValidatorTest.java │ │ │ │ ├── ParameterNameHeaderCaseValidatorTest.java │ │ │ │ ├── ParameterNamePathCaseValidatorTest.java │ │ │ │ └── ParameterNameQueryCaseValidatorTest.java │ │ │ ├── paths/ │ │ │ │ └── PathsKeyCaseValidatorTest.java │ │ │ ├── requestbody/ │ │ │ │ └── RequestBodyDescriptionRequiredValidatorTest.java │ │ │ ├── response/ │ │ │ │ └── ResponseHeadersKeysCaseValidatorTest.java │ │ │ ├── schema/ │ │ │ │ ├── SchemaPropertiesKeysCaseValidatorTest.java │ │ │ │ └── SchemaTitleRequiredValidatorTest.java │ │ │ └── tag/ │ │ │ ├── TagDescriptionRequiredValidatorTest.java │ │ │ ├── TagMustBeReferencedValidatorTest.java │ │ │ └── TagNameCaseValidatorTest.java │ │ └── resources/ │ │ ├── logback-test.xml │ │ └── org/ │ │ └── apache/ │ │ └── servicecomb/ │ │ └── toolkit/ │ │ └── oasv/ │ │ └── style/ │ │ ├── parser-test.yaml │ │ └── validator/ │ │ ├── components/ │ │ │ ├── petstore-callbacks-upper-camel-case.yaml │ │ │ ├── petstore-examples-upper-camel-case.yaml │ │ │ ├── petstore-headers-upper-camel-case.yaml │ │ │ ├── petstore-links-upper-camel-case.yaml │ │ │ ├── petstore-parameters-upper-camel-case.yaml │ │ │ ├── petstore-request-bodies-upper-camel-case.yaml │ │ │ ├── petstore-responses-upper-camel-case.yaml │ │ │ ├── petstore-schemas-upper-camel-case.yaml │ │ │ └── petstore-security-schemes-upper-camel-case.yaml │ │ ├── encoding/ │ │ │ ├── petstore-encoding-headers-key-case-1.yaml │ │ │ ├── petstore-encoding-headers-key-case-2.yaml │ │ │ ├── petstore-encoding-headers-key-case-3.yaml │ │ │ └── petstore-encoding-headers-key-case-4.yaml │ │ ├── header/ │ │ │ └── petstore-header-no-desc.yaml │ │ ├── info/ │ │ │ └── petstore-info-no-desc.yaml │ │ ├── openapi/ │ │ │ ├── petstore-openapi-wrong.yaml │ │ │ ├── petstore-security-empty-good.yaml │ │ │ ├── petstore-security-empty.yaml │ │ │ └── petstore-tag-not-provided.yaml │ │ ├── operation/ │ │ │ ├── petstore-operation-id-lower-camel-case.yaml │ │ │ ├── petstore-operation-servers-empty.yaml │ │ │ ├── petstore-operation-summary-required.yaml │ │ │ ├── petstore-operation-tags-only-one.yaml │ │ │ └── petstore-operation-tags-reference.yaml │ │ ├── parameter/ │ │ │ ├── petstore-parameter-cookie-lower-camel-case.yaml │ │ │ ├── petstore-parameter-desc-none.yaml │ │ │ ├── petstore-parameter-header-upper-hyphen-case.yaml │ │ │ ├── petstore-parameter-path-lower-camel-case.yaml │ │ │ └── petstore-parameter-query-lower-camel-case.yaml │ │ ├── paths/ │ │ │ └── petstore-paths-lower-camel-case.yaml │ │ ├── requestbody/ │ │ │ └── petstore-request-body-desc-required.yaml │ │ ├── response/ │ │ │ └── petstore-response-headers-key-case.yaml │ │ ├── schema/ │ │ │ ├── petstore-schema-p-keys-lower-camel-case-all-of.yaml │ │ │ ├── petstore-schema-p-keys-lower-camel-case-any-of.yaml │ │ │ ├── petstore-schema-p-keys-lower-camel-case-array.yaml │ │ │ ├── petstore-schema-p-keys-lower-camel-case-comp.yaml │ │ │ ├── petstore-schema-p-keys-lower-camel-case-nested.yaml │ │ │ ├── petstore-schema-p-keys-lower-camel-case-one-of.yaml │ │ │ ├── petstore-schema-p-keys-lower-camel-case-param-1.yaml │ │ │ ├── petstore-schema-p-keys-lower-camel-case-param-2.yaml │ │ │ ├── petstore-schema-p-keys-lower-camel-case-req-1.yaml │ │ │ ├── petstore-schema-p-keys-lower-camel-case-req-2.yaml │ │ │ ├── petstore-schema-p-keys-lower-camel-case-resp-1.yaml │ │ │ ├── petstore-schema-p-keys-lower-camel-case-resp-2.yaml │ │ │ ├── petstore-schema-title-comp.yaml │ │ │ ├── petstore-schema-title-nested.yaml │ │ │ ├── petstore-schema-title-param.yaml │ │ │ ├── petstore-schema-title-req.yaml │ │ │ └── petstore-schema-title-resp.yaml │ │ └── tag/ │ │ ├── petstore-tag-name-not-upper-camel-case.yaml │ │ ├── petstore-tag-no-desc.yaml │ │ └── petstore-tag-redundant.yaml │ ├── oas-validator-test/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ └── java/ │ │ └── org/ │ │ └── apache/ │ │ └── servicecomb/ │ │ └── toolkit/ │ │ └── oasv/ │ │ ├── OasSpecLoader.java │ │ ├── diffvalidation/ │ │ │ └── test/ │ │ │ └── OasDiffValidatorTestBase.java │ │ └── validation/ │ │ └── test/ │ │ └── OasValidatorTestBase.java │ ├── oas-validator-web/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── org/ │ │ │ └── apache/ │ │ │ └── servicecomb/ │ │ │ └── toolkit/ │ │ │ └── oasv/ │ │ │ └── web/ │ │ │ ├── Application.java │ │ │ ├── api/ │ │ │ │ └── controller/ │ │ │ │ ├── CompatibilityController.java │ │ │ │ ├── ImportError.java │ │ │ │ ├── ImportError2.java │ │ │ │ └── StyleController.java │ │ │ ├── config/ │ │ │ │ └── StyleCheckValidatorsConfiguration.java │ │ │ └── page/ │ │ │ └── controller/ │ │ │ ├── EditorController.java │ │ │ ├── IndexController.java │ │ │ ├── ValidatorController.java │ │ │ └── ViewerController.java │ │ └── resources/ │ │ ├── application.properties │ │ ├── samples/ │ │ │ └── petstore-openapi-wrong.yaml │ │ ├── style-check-rules.properties │ │ └── templates/ │ │ ├── index.html │ │ └── validator/ │ │ ├── compatibility.html │ │ └── style.html │ └── pom.xml ├── pom.xml ├── samples/ │ ├── README-ZH.md │ ├── README.md │ ├── generate-from-code-sample/ │ │ ├── GoodbyeService/ │ │ │ ├── pom.xml │ │ │ └── src/ │ │ │ └── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── apache/ │ │ │ │ └── servicecomb/ │ │ │ │ └── toolkit/ │ │ │ │ └── goodbye/ │ │ │ │ ├── GoodbyeApplication.java │ │ │ │ └── GoodbyeController.java │ │ │ └── resources/ │ │ │ └── application.yaml │ │ ├── HelloService/ │ │ │ ├── pom.xml │ │ │ └── src/ │ │ │ └── main/ │ │ │ ├── java/ │ │ │ │ └── org/ │ │ │ │ └── apache/ │ │ │ │ └── servicecomb/ │ │ │ │ └── toolkit/ │ │ │ │ └── hello/ │ │ │ │ ├── HelloApplication.java │ │ │ │ └── HelloController.java │ │ │ └── resources/ │ │ │ └── application.yaml │ │ ├── README-ZH.md │ │ ├── README.md │ │ └── pom.xml │ ├── generate-from-contract-sample/ │ │ ├── README-ZH.md │ │ ├── README.md │ │ ├── contract/ │ │ │ ├── GoodByeService/ │ │ │ │ └── GoodbyeController.yaml │ │ │ └── HelloService/ │ │ │ └── HelloController.yaml │ │ └── pom.xml │ ├── pom.xml │ └── verify-with-code-sample/ │ ├── GreetingService/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ └── java/ │ │ └── org/ │ │ └── apache/ │ │ └── servicecomb/ │ │ └── toolkit/ │ │ └── goodbye/ │ │ ├── GreetingController.java │ │ └── GreetingService.java │ ├── README-ZH.md │ ├── README.md │ ├── contract/ │ │ └── GreetingService/ │ │ └── GreetingController.yaml │ └── pom.xml ├── scripts/ │ ├── cliTest.sh │ ├── deploy.sh │ └── test.sh ├── toolkit-distribution/ │ ├── pom.xml │ └── src/ │ ├── assembly/ │ │ ├── bin.xml │ │ └── src.xml │ └── release/ │ ├── LICENSE │ ├── NOTICE │ └── licenses/ │ ├── LICENSE-asm │ ├── LICENSE-automaton │ ├── LICENSE-cal10n │ ├── LICENSE-cc0 │ ├── LICENSE-cddl │ ├── LICENSE-commonmark │ ├── LICENSE-epl-v10 │ ├── LICENSE-hamcrest │ ├── LICENSE-jmustache │ ├── LICENSE-jopt │ ├── LICENSE-jsch │ ├── LICENSE-jzlib │ ├── LICENSE-lombok │ ├── LICENSE-mit │ ├── LICENSE-mockito │ ├── LICENSE-mozilla-v20 │ ├── LICENSE-slf4j │ ├── LICENSE-threetenbp │ ├── LICENSE-webjars │ ├── LICENSE-woodstox-stax2-api │ ├── NOTICE-airline │ ├── NOTICE-apache-commons-cli │ ├── NOTICE-apache-commons-codec │ └── NOTICE-servicecomb-java-chassis └── toolkit-maven-plugin/ ├── pom.xml └── src/ ├── main/ │ └── java/ │ └── org/ │ └── apache/ │ └── servicecomb/ │ └── toolkit/ │ └── plugin/ │ ├── GenerateMojo.java │ ├── GenerateUtil.java │ ├── MavenPluginUtil.java │ ├── ServiceConfig.java │ └── VerifyMojo.java └── test/ ├── java/ │ └── org/ │ └── apache/ │ └── servicecomb/ │ └── toolkit/ │ └── plugin/ │ ├── GenerateMojoTest.java │ ├── GenerateUtilTest.java │ ├── InvokeStaticMethodTest.java │ ├── MavenPluginUtilTest.java │ ├── TestResourcesEx.java │ └── VerifyMojoTest.java ├── projects/ │ ├── contract-destination/ │ │ └── HelloEndPoint.yaml │ ├── contract-source/ │ │ └── HelloEndPoint.yaml │ ├── demo-multi-module/ │ │ ├── first-module/ │ │ │ └── pom.xml │ │ └── pom.xml │ ├── demo-with-contract/ │ │ ├── pom.xml │ │ └── src/ │ │ └── main/ │ │ └── java/ │ │ └── demo/ │ │ ├── Application.java │ │ └── HelloEndPoint.java │ └── demo-without-contract/ │ ├── pom.xml │ └── src/ │ └── main/ │ └── java/ │ └── demo/ │ └── Application.java └── resources/ └── log4j2-test.xml