Class RequiredPropertyValidationRule
- java.lang.Object
-
- io.apicurio.datamodels.models.visitors.AllNodeVisitor
-
- io.apicurio.datamodels.validation.ValidationRule
-
- io.apicurio.datamodels.validation.rules.required.RequiredPropertyValidationRule
-
- All Implemented Interfaces:
AsyncApi20Visitor,AsyncApi21Visitor,AsyncApi22Visitor,AsyncApi23Visitor,AsyncApi24Visitor,AsyncApi25Visitor,AsyncApi26Visitor,AsyncApi30Visitor,AsyncApiVisitor,OpenApi20Visitor,OpenApi30Visitor,OpenApi31Visitor,OpenApiVisitor,CombinedVisitor,TraversingVisitor,Visitor
- Direct Known Subclasses:
AaMissingCorrelationIdRule,AasMissingServerProtocolRule,MissingApiKeySchemeParamLocationRule,MissingApiKeySchemeParamNameRule,MissingApiTitleRule,MissingApiVersionRule,MissingHttpSecuritySchemeTypeRule,MissingLicenseNameRule,MissingOAuthFlowAuthUrlRule,MissingOAuthFlowRokenUrlRule,MissingOAuthFlowScopesRule,MissingOAuthSecuritySchemeFlowsRule,MissingOpenIdConnectSecuritySchemeConnectUrlRule,MissingOperationDescriptionRule,MissingOperationIdRule,MissingOperationSummaryRule,MissingSecuritySchemeTypeRule,MissingServerTemplateUrlRule,MissingTagNameRule,OasMissingApiInformationRule,OasMissingApiPathsRule,OasMissingBodyParameterSchemaRule,OasMissingDiscriminatorPropertyNameRule,OasMissingExternalDocumentationUrlRule,OasMissingHeaderArrayInformationRule,OasMissingHeaderTypeRule,OasMissingItemsArrayInformationRule,OasMissingItemsTypeRule,OasMissingOAuthSchemeAuthUrlRule,OasMissingOAuthSchemeFlowTypeRule,OasMissingOAuthSchemeScopesRule,OasMissingOAuthSchemeTokenUrlRule,OasMissingOpenApiPropertyRule,OasMissingOperationResponsesRule,OasMissingOperationTagsRule,OasMissingParameterArrayTypeRule,OasMissingParameterLocationRule,OasMissingParameterNameRule,OasMissingParameterTypeRule,OasMissingRequestBodyContentRule,OasMissingResponseDefinitionDescriptionRule,OasMissingResponseDescriptionRule,OasMissingSchemaArrayInformationRule,OasMissingServerVarDefaultValueRule,OasPathParamsMustBeRequiredRule
public abstract class RequiredPropertyValidationRule extends ValidationRule
Base class for all Required Property rules.- Author:
- eric.wittmann@gmail.com
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class io.apicurio.datamodels.validation.ValidationRule
ValidationRule.PathSegment
-
-
Field Summary
-
Fields inherited from class io.apicurio.datamodels.validation.ValidationRule
traversalContext
-
-
Constructor Summary
Constructors Constructor Description RequiredPropertyValidationRule(ValidationRuleMetaData ruleInfo)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidrequireProperty(Node node, String propertyName, Map<String,String> messageParams)Called when a required property is missing.protected voidrequirePropertyWhen(Node node, String propertyName, String dependentPropertyName, Object dependentPropertyExpectedValue, Map<String,String> messageParams)Called when a conditionally required property is missing.-
Methods inherited from class io.apicurio.datamodels.validation.ValidationRule
array, equals, getDefinitionName, getEncodingName, getMappedNodeName, getOperationMethod, getPathSegments, getPathTemplate, getStatusCode, hasValue, isDefined, isDefinition, isNullOrUndefined, isPathWellFormed, isValidCommonMark, isValidEmailAddress, isValidEnumItem, isValidForType, isValidGFM, isValidHttpCode, isValidMimeType, isValidUrl, isValidUrlTemplate, map, report, reportIf, reportIfInvalid, reportPathError, setReporter, setTraversalContext, visitNode
-
Methods inherited from class io.apicurio.datamodels.models.visitors.AllNodeVisitor
visitBinding, visitCallback, visitChannel, visitChannelBindings, visitChannelItem, visitChannels, visitComponents, visitContact, visitCorrelationID, visitDefinitions, visitDiscriminator, visitDocument, visitEncoding, visitExample, visitExternalDocumentation, visitHeader, visitInfo, visitItems, visitLicense, visitLink, visitMediaType, visitMessage, visitMessageBindings, visitMessageExample, visitMessageTrait, visitMultiFormatSchema, visitOAuthFlow, visitOAuthFlows, visitOneOfMessages, visitOperation, visitOperationBindings, visitOperationReply, visitOperationReplyAddress, visitOperations, visitOperationTrait, visitParameter, visitParameterDefinitions, visitParameters, visitPathItem, visitPaths, visitReference, visitRequestBody, visitResponse, visitResponseDefinitions, visitResponses, visitSchema, visitScopes, visitSecurityDefinitions, visitSecurityRequirement, visitSecurityScheme, visitServer, visitServerBindings, visitServers, visitServerVariable, visitTag, visitXML
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.apicurio.datamodels.models.visitors.Visitor
visitContact, visitDocument, visitExternalDocumentation, visitInfo, visitLicense, visitOperation, visitParameter, visitSchema, visitSecurityScheme, visitTag
-
-
-
-
Constructor Detail
-
RequiredPropertyValidationRule
public RequiredPropertyValidationRule(ValidationRuleMetaData ruleInfo)
Constructor.- Parameters:
ruleInfo-
-
-
Method Detail
-
requireProperty
protected void requireProperty(Node node, String propertyName, Map<String,String> messageParams)
Called when a required property is missing.- Parameters:
node-propertyName-messageParams-
-
requirePropertyWhen
protected void requirePropertyWhen(Node node, String propertyName, String dependentPropertyName, Object dependentPropertyExpectedValue, Map<String,String> messageParams)
Called when a conditionally required property is missing.- Parameters:
node-propertyName-dependentPropertyName-dependentPropertyExpectedValue-messageParams-
-
-