Class RuleConfiguration
- java.lang.Object
-
- org.openapitools.codegen.validations.oas.RuleConfiguration
-
public class RuleConfiguration extends Object
Allows for configuration of validation rules which will be applied to a specification.
-
-
Constructor Summary
Constructors Constructor Description RuleConfiguration()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanisEnableApacheNginxUnderscoreRecommendation()Gets whether we will raise awareness that header parameters with underscore may be ignored in Apache or Nginx by default.booleanisEnableApiRequestUriWithBodyRecommendation()Gets whether we will raise awareness a GET or HEAD operation is defined with body.booleanisEnableInvalidTypeRecommendation()Gets whether the recommendation check for schemas containing invalid values for the 'type' attribute.booleanisEnableNullableAttributeRecommendation()Gets whether the recommendation check for schemas containing the 'nullable' attribute.booleanisEnableOneOfWithPropertiesRecommendation()Gets whether the recommendation check for oneOf with sibling properties exists.booleanisEnableRecommendations()Get whether recommendations are enabled.booleanisEnableSchemaTypeRecommendation()Gets whether the recommendation check for schemas containing type definitions.booleanisEnableUnusedSchemasRecommendation()Gets whether the recommendation to check for unused schemas is enabled.voidsetEnableApacheNginxUnderscoreRecommendation(boolean enableApacheNginxUnderscoreRecommendation)Enable or Disable the recommendation check for Apache/Nginx potentially ignoring header with underscore by default.voidsetEnableApiRequestUriWithBodyRecommendation(boolean enableApiRequestUriWithBodyRecommendation)Enable or Disable the recommendation check for GET or HEAD operations with bodies.voidsetEnableInvalidTypeRecommendation(boolean enableInvalidTypeRecommendation)Enable or Disable the recommendation check for the 'type' attribute.voidsetEnableNullableAttributeRecommendation(boolean enableNullableAttributeRecommendation)Enable or Disable the recommendation check for the 'nullable' attribute.voidsetEnableOneOfWithPropertiesRecommendation(boolean enableOneOfWithPropertiesRecommendation)Enable or Disable the recommendation check for schemas containing properties and oneOf definitions.voidsetEnableRecommendations(boolean enableRecommendations)Enable or Disable recommendations.voidsetEnableSchemaTypeRecommendation(boolean enableSchemaTypeRecommendation)Enable or Disable the recommendation check for schemas containing type definitions, specifically for changes between OpenAPI 3.0.x and 3.1.voidsetEnableUnusedSchemasRecommendation(boolean enableUnusedSchemasRecommendation)Enable or Disable the recommendation check for unused schemas.
-
-
-
Method Detail
-
isEnableApacheNginxUnderscoreRecommendation
public boolean isEnableApacheNginxUnderscoreRecommendation()
Gets whether we will raise awareness that header parameters with underscore may be ignored in Apache or Nginx by default. For more details, see https://stackoverflow.com/a/22856867/151445.- Returns:
trueif enabled,falseif disabled
-
setEnableApacheNginxUnderscoreRecommendation
public void setEnableApacheNginxUnderscoreRecommendation(boolean enableApacheNginxUnderscoreRecommendation)
Enable or Disable the recommendation check for Apache/Nginx potentially ignoring header with underscore by default.For more details, see
isEnableApacheNginxUnderscoreRecommendation()- Parameters:
enableApacheNginxUnderscoreRecommendation-trueto enable,falseto disable
-
isEnableApiRequestUriWithBodyRecommendation
public boolean isEnableApiRequestUriWithBodyRecommendation()
Gets whether we will raise awareness a GET or HEAD operation is defined with body.- Returns:
trueif enabled,falseif disabled
-
setEnableApiRequestUriWithBodyRecommendation
public void setEnableApiRequestUriWithBodyRecommendation(boolean enableApiRequestUriWithBodyRecommendation)
Enable or Disable the recommendation check for GET or HEAD operations with bodies.For more details, see
isEnableApiRequestUriWithBodyRecommendation()- Parameters:
enableApiRequestUriWithBodyRecommendation-trueto enable,falseto disable
-
isEnableOneOfWithPropertiesRecommendation
public boolean isEnableOneOfWithPropertiesRecommendation()
Gets whether the recommendation check for oneOf with sibling properties exists.JSON Schema defines oneOf as a validation property which can be applied to any schema.
OpenAPI Specification is a variant of JSON Schema for which oneOf is defined as: "Inline or referenced schema MUST be of a Schema Object and not a standard JSON Schema."
Where the only examples of oneOf in OpenAPI Specification are used to define either/or type structures rather than validations. Because of this ambiguity in the spec about what is non-standard about oneOf support, we'll warn as a recommendation that properties on the schema defining oneOf relationships may not be intentional in the OpenAPI Specification.
- Returns:
trueif enabled,falseif disabled
-
setEnableOneOfWithPropertiesRecommendation
public void setEnableOneOfWithPropertiesRecommendation(boolean enableOneOfWithPropertiesRecommendation)
Enable or Disable the recommendation check for schemas containing properties and oneOf definitions.For more details, see
isEnableOneOfWithPropertiesRecommendation()- Parameters:
enableOneOfWithPropertiesRecommendation-trueto enable,falseto disable
-
setEnableSchemaTypeRecommendation
public void setEnableSchemaTypeRecommendation(boolean enableSchemaTypeRecommendation)
Enable or Disable the recommendation check for schemas containing type definitions, specifically for changes between OpenAPI 3.0.x and 3.1.For more details, see
isEnableSchemaTypeRecommendation()- Parameters:
enableSchemaTypeRecommendation-trueto enable,falseto disable
-
isEnableSchemaTypeRecommendation
public boolean isEnableSchemaTypeRecommendation()
Gets whether the recommendation check for schemas containing type definitions.In OpenAPI 3.0.x, the "type" attribute must be a string value. In OpenAPI 3.1, the type attribute may be: A string value The 'null' value An array containing primitive types and the 'null' value.
- Returns:
trueif enabled,falseif disabled
-
setEnableNullableAttributeRecommendation
public void setEnableNullableAttributeRecommendation(boolean enableNullableAttributeRecommendation)
Enable or Disable the recommendation check for the 'nullable' attribute.For more details, see
isEnableNullableAttributeRecommendation()- Parameters:
enableNullableAttributeRecommendation-trueto enable,falseto disable
-
isEnableNullableAttributeRecommendation
public boolean isEnableNullableAttributeRecommendation()
Gets whether the recommendation check for schemas containing the 'nullable' attribute.In OpenAPI 3.0.x, the "nullable" attribute is supported. However, because it is deprecated in 3.1 and above, a warning is logged to prepare for OpenAPI 3.1 recommendations. In OpenAPI 3.1, the 'nullable' attribute is deprecated. Instead the OpenAPI specification should use the 'null' type.
- Returns:
trueif enabled,falseif disabled
-
setEnableInvalidTypeRecommendation
public void setEnableInvalidTypeRecommendation(boolean enableInvalidTypeRecommendation)
Enable or Disable the recommendation check for the 'type' attribute.For more details, see
isEnableInvalidTypeRecommendation()- Parameters:
enableInvalidTypeRecommendation-trueto enable,falseto disable
-
isEnableInvalidTypeRecommendation
public boolean isEnableInvalidTypeRecommendation()
Gets whether the recommendation check for schemas containing invalid values for the 'type' attribute.- Returns:
trueif enabled,falseif disabled
-
isEnableRecommendations
public boolean isEnableRecommendations()
Get whether recommendations are enabled.The 'type' attribute must be one of 'null', 'boolean', 'object', 'array', 'number', 'string', or 'integer'
- Returns:
trueif enabled,falseif disabled
-
setEnableRecommendations
public void setEnableRecommendations(boolean enableRecommendations)
Enable or Disable recommendations. Recommendations are either informational or warning level type validations which are raised to communicate issues to the user which they may not be aware of, or for which support in the tooling/spec may not be clearly defined.- Parameters:
enableRecommendations-trueto enable,falseto disable
-
isEnableUnusedSchemasRecommendation
public boolean isEnableUnusedSchemasRecommendation()
Gets whether the recommendation to check for unused schemas is enabled.While the tooling may or may not support generation of models representing unused schemas, we take the stance that a schema which is defined but not referenced in an operation or by some schema bound to an operation may be a good indicator of a programming error. We surface this information to the user in case the orphaned schema(s) are not intentional.
- Returns:
trueif enabled,falseif disabled
-
setEnableUnusedSchemasRecommendation
public void setEnableUnusedSchemasRecommendation(boolean enableUnusedSchemasRecommendation)
Enable or Disable the recommendation check for unused schemas.For more details, see
isEnableUnusedSchemasRecommendation()- Parameters:
enableUnusedSchemasRecommendation-trueto enable,falseto disable
-
-