Joda.java 文件源码

java
阅读 25 收藏 0 点赞 0 评论 0

项目:elasticsearch_my 作者:
@Override
public int parseInto(DateTimeParserBucket bucket, String text, int position) {
    boolean isPositive = text.startsWith("-") == false;
    boolean isTooLong = text.length() > estimateParsedLength();

    if ((isPositive && isTooLong) ||
        // timestamps have to have UTC timezone
        bucket.getZone() != DateTimeZone.UTC) {
        return -1;
    }

    int factor = hasMilliSecondPrecision ? 1 : 1000;
    try {
        long millis = Long.valueOf(text) * factor;
        DateTime dt = new DateTime(millis, DateTimeZone.UTC);
        bucket.saveField(DateTimeFieldType.year(), dt.getYear());
        bucket.saveField(DateTimeFieldType.monthOfYear(), dt.getMonthOfYear());
        bucket.saveField(DateTimeFieldType.dayOfMonth(), dt.getDayOfMonth());
        bucket.saveField(DateTimeFieldType.hourOfDay(), dt.getHourOfDay());
        bucket.saveField(DateTimeFieldType.minuteOfHour(), dt.getMinuteOfHour());
        bucket.saveField(DateTimeFieldType.secondOfMinute(), dt.getSecondOfMinute());
        bucket.saveField(DateTimeFieldType.millisOfSecond(), dt.getMillisOfSecond());
        bucket.setZone(DateTimeZone.UTC);
    } catch (Exception e) {
        return -1;
    }
    return text.length();
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号