private void validateHttpDate(Node value, Emitter emitter) {
        if (!value.asStringNode().isPresent()) {
            emitter.accept(value, Severity.ERROR, createInvalidHttpDateMessage(value.getType().toString()));
        } else {
            String dateValue = value.asStringNode().get().getValue();
            if (!isValidFormat(dateValue, HTTP_DATE) || !dateValue.endsWith("GMT")) {
                emitter.accept(value, Severity.ERROR, createInvalidHttpDateMessage(dateValue));
            }
        }
    }
Validates that timestamp shapes contain values that are compatible with their
timestampFormat traits or contain values that are numbers or an RFC 3339
date-time production.
smithy-model/src/main/java/software/amazon/smithy/model/validation/node/TimestampFormatPlugin.java