Java 类org.jsonschema2pojo.rules.FormatRule 实例源码

项目:GitHub    文件:Jackson2Annotator.java   
@Override
public void dateField(JFieldVar field, JsonNode node) {

    String pattern = null;
    if (node.has("customDatePattern")) {
        pattern = node.get("customDatePattern").asText();
    } else if (node.has("customPattern")) {
        pattern = node.get("customPattern").asText();
    } else if (isNotEmpty(getGenerationConfig().getCustomDatePattern())) {
        pattern = getGenerationConfig().getCustomDatePattern();
    } else if (getGenerationConfig().isFormatDates()) {
        pattern = FormatRule.ISO_8601_DATE_FORMAT;
    }

    if (pattern != null && !field.type().fullName().equals("java.lang.String")) {
        field.annotate(JsonFormat.class).param("shape", JsonFormat.Shape.STRING).param("pattern", pattern);
    }
}
项目:GitHub    文件:Jackson2Annotator.java   
@Override
public void timeField(JFieldVar field, JsonNode node) {

    String pattern = null;
    if (node.has("customTimePattern")) {
        pattern = node.get("customTimePattern").asText();
    } else if (node.has("customPattern")) {
        pattern = node.get("customPattern").asText();
    } else if (isNotEmpty(getGenerationConfig().getCustomTimePattern())) {
        pattern = getGenerationConfig().getCustomTimePattern();
    } else if (getGenerationConfig().isFormatDates()) {
        pattern = FormatRule.ISO_8601_TIME_FORMAT;
    }

    if (pattern != null && !field.type().fullName().equals("java.lang.String")) {
        field.annotate(JsonFormat.class).param("shape", JsonFormat.Shape.STRING).param("pattern", pattern);
    }
}
项目:GitHub    文件:Jackson2Annotator.java   
@Override
public void dateTimeField(JFieldVar field, JsonNode node) {
    String timezone = node.has("customTimezone") ? node.get("customTimezone").asText() : "UTC";

    String pattern = null;
    if (node.has("customDateTimePattern")) {
        pattern = node.get("customDateTimePattern").asText();
    } else if (node.has("customPattern")) {
        pattern = node.get("customPattern").asText();
    } else if (isNotEmpty(getGenerationConfig().getCustomDateTimePattern())) {
        pattern = getGenerationConfig().getCustomDateTimePattern();
    } else if (getGenerationConfig().isFormatDateTimes()) {
        pattern = FormatRule.ISO_8601_DATETIME_FORMAT;
    }

    if (pattern != null && !field.type().fullName().equals("java.lang.String")) {
        field.annotate(JsonFormat.class).param("shape", JsonFormat.Shape.STRING).param("pattern", pattern).param("timezone", timezone);
    }
}
项目:GitHub    文件:CustomRuleFactoryIT.java   
@Override
public Rule<JType, JType> getFormatRule() {
    return new FormatRule(this) {
        @Override
        public JType apply(String nodeName, JsonNode node, JType baseType, Schema schema) {
            if (node.asText().equals("date")) {
                return baseType.owner().ref(LocalDate.class);
            }

            return super.apply(nodeName, node, baseType, schema);
        }
    };
}