Class ShouldHaveUsedTimestampValidator

java.lang.Object
software.amazon.smithy.model.validation.AbstractValidator
software.amazon.smithy.linters.ShouldHaveUsedTimestampValidator
All Implemented Interfaces:
software.amazon.smithy.model.validation.Validator

public final class ShouldHaveUsedTimestampValidator extends software.amazon.smithy.model.validation.AbstractValidator

Validates that shapes that have names that appear to be time values are actually modeled with a timestamp shape.

This validator will check the name of string, integer, float, and long shapes to see if they should have been TimestampShape. It also scans structure members and union members. It uses the member name and ensures the member targets a timestamp shape.

When considering if a name indicates a possible timestamp, the name must have one of the following qualities:

  • Contains the string "timestamp"
  • Begins or Ends with the word "time"
  • Begins or Ends with the word "date"
  • Ends with the word "at"
  • Ends with the word "on"

When checking for one of the above words, the first character may be upper or lower-cased. Words a separated by underscores or a pair of lower-then-upper-cased characters, i.e. wordWord.

  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static final class 
     
    static final class 
     
  • Field Summary

    Fields inherited from interface software.amazon.smithy.model.validation.Validator

    MODEL_DEPRECATION, MODEL_ERROR
  • Method Summary

    Modifier and Type
    Method
    Description
    List<software.amazon.smithy.model.validation.ValidationEvent>
    validate(software.amazon.smithy.model.Model model)
     

    Methods inherited from class software.amazon.smithy.model.validation.AbstractValidator

    createEvent, createEvent, createEvent, createEvent, danger, danger, danger, danger, danger, danger, danger, danger, error, error, error, error, error, error, error, error, getName, note, note, note, note, note, note, note, note, warning, warning, warning, warning, warning, warning, warning, warning

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Method Details

    • validate

      public List<software.amazon.smithy.model.validation.ValidationEvent> validate(software.amazon.smithy.model.Model model)