private String appendTimeZone(String string, Date date) { StringBuilder stringBuilder = new StringBuilder(string); // GMT Time Zone int rawMinuteOffset = getTimeZone().getOffset(date.getTime()) / 60000; if (0 == rawMinuteOffset) { stringBuilder.append(GMT_SUFFIX); return stringBuilder.toString(); } // +HH:MM if (rawMinuteOffset < 0) { stringBuilder.append('-'); rawMinuteOffset = Math.abs(rawMinuteOffset); } else { stringBuilder.append('+'); } int hourOffset = rawMinuteOffset / 60; if (hourOffset < 10) { stringBuilder.append('0'); } stringBuilder.append(hourOffset); stringBuilder.append(Constants.COLON); int minuteOffset = rawMinuteOffset % 60; if (minuteOffset < 10) { stringBuilder.append('0'); } stringBuilder.append(minuteOffset); return stringBuilder.toString(); }
public Calendar convertStringToCalendar(String sourceString, QName schemaTypeQName) { java.util.Date date = convertStringToDate(sourceString, schemaTypeQName); Calendar cal = Helper.calendarFromUtilDate(date); cal.setTimeZone(getTimeZone()); return cal; }
int rawMinuteOffset = getTimeZone().getRawOffset() / 60000; if (0 == rawMinuteOffset) { stringBuilder.append(GMT_SUFFIX);
private String appendTimeZone(String string, Date date) { StringBuilder stringBuilder = new StringBuilder(string); // GMT Time Zone int rawMinuteOffset = getTimeZone().getOffset(date.getTime()) / 60000; if (0 == rawMinuteOffset) { stringBuilder.append(GMT_SUFFIX); return stringBuilder.toString(); } // +HH:MM if (rawMinuteOffset < 0) { stringBuilder.append('-'); rawMinuteOffset = Math.abs(rawMinuteOffset); } else { stringBuilder.append('+'); } int hourOffset = rawMinuteOffset / 60; if (hourOffset < 10) { stringBuilder.append('0'); } stringBuilder.append(hourOffset); stringBuilder.append(Constants.COLON); int minuteOffset = rawMinuteOffset % 60; if (minuteOffset < 10) { stringBuilder.append('0'); } stringBuilder.append(minuteOffset); return stringBuilder.toString(); }
private String stringFromSQLTime(Time sourceTime) { XMLGregorianCalendar xgc = getDatatypeFactory().newXMLGregorianCalendar(); Calendar cal = Calendar.getInstance(getTimeZone()); cal.setTime(sourceTime); xgc.setHour(cal.get(Calendar.HOUR_OF_DAY)); xgc.setMinute(cal.get(Calendar.MINUTE)); xgc.setSecond(cal.get(Calendar.SECOND)); String string= xgc.toXMLFormat(); string = appendMillis(string, sourceTime.getTime()); return appendTimeZone(string, sourceTime); }
/** * This method returns a dateTime string representing a given * java.util.Date. * * BC dates (sourceDate.getTime() < YEAR_ONE_AD_TIME) are handled * as follows: '2007 BC' --> '-2006 AD' * * @param sourceDate * @return */ private String stringFromDate(java.util.Date sourceDate) { GregorianCalendar cal = new GregorianCalendar(getTimeZone()); cal.setTime(sourceDate); XMLGregorianCalendar xgc = getDatatypeFactory().newXMLGregorianCalendar(cal); String string = xgc.toXMLFormat(); string = truncateMillis(string); return string; }
private String stringFromSQLDate(java.sql.Date sourceDate) { XMLGregorianCalendar xgc = getDatatypeFactory().newXMLGregorianCalendar(); Calendar cal = Calendar.getInstance(getTimeZone()); cal.setTime(sourceDate); if(cal.get(Calendar.ERA) == GregorianCalendar.BC){ xgc.setYear(-cal.get(Calendar.YEAR)); }else{ xgc.setYear(cal.get(Calendar.YEAR)); } xgc.setMonth(cal.get(Calendar.MONTH)+1); xgc.setDay(cal.get(Calendar.DAY_OF_MONTH)); return xgc.toXMLFormat(); }
private String stringFromSQLTime(Time sourceTime) { XMLGregorianCalendar xgc = getDatatypeFactory().newXMLGregorianCalendar(); GregorianCalendar cal = new GregorianCalendar(getTimeZone()); cal.setGregorianChange(new Date(Long.MIN_VALUE)); cal.setTime(sourceTime); xgc.setHour(cal.get(Calendar.HOUR_OF_DAY)); xgc.setMinute(cal.get(Calendar.MINUTE)); xgc.setSecond(cal.get(Calendar.SECOND)); String string= xgc.toXMLFormat(); string = appendMillis(string, sourceTime.getTime()); return appendTimeZone(string, sourceTime); }
public java.util.Date convertStringToDate(String sourceString, QName schemaType) { XMLGregorianCalendar xmlGregorianCalender = convertStringToXMLGregorianCalendar(sourceString, schemaType); if (schemaType == null) { schemaType = xmlGregorianCalender.getXMLSchemaType(); } XMLGregorianCalendar defaults = getDatatypeFactory().newXMLGregorianCalendar(); defaults.setTimezone(getTimeZone().getRawOffset()/60000); GregorianCalendar cal; if(xmlGregorianCalender.getTimezone() == DatatypeConstants.FIELD_UNDEFINED){ cal = xmlGregorianCalender.toGregorianCalendar(getTimeZone(), null, null); }else{ cal = xmlGregorianCalender.toGregorianCalendar(); } cal.setGregorianChange(new Date(Long.MAX_VALUE)); Date returnDate= cal.getTime(); return returnDate; }
private String stringFromSQLTime(Time sourceTime) { XMLGregorianCalendar xgc = getDatatypeFactory().newXMLGregorianCalendar(); GregorianCalendar cal = new GregorianCalendar(getTimeZone()); cal.setGregorianChange(new Date(Long.MIN_VALUE)); cal.setTime(sourceTime); xgc.setHour(cal.get(Calendar.HOUR_OF_DAY)); xgc.setMinute(cal.get(Calendar.MINUTE)); xgc.setSecond(cal.get(Calendar.SECOND)); String string= xgc.toXMLFormat(); return appendTimeZone(string); }
private String stringFromSQLDate(java.sql.Date sourceDate) { XMLGregorianCalendar xgc = getDatatypeFactory().newXMLGregorianCalendar(); GregorianCalendar cal = new GregorianCalendar(getTimeZone()); cal.setGregorianChange(new Date(Long.MIN_VALUE)); cal.setTime(sourceDate); if(cal.get(Calendar.ERA) == GregorianCalendar.BC){ xgc.setYear(-cal.get(Calendar.YEAR)); }else{ xgc.setYear(cal.get(Calendar.YEAR)); } xgc.setMonth(cal.get(Calendar.MONTH)+1); xgc.setDay(cal.get(Calendar.DAY_OF_MONTH)); return xgc.toXMLFormat(); }
private String stringFromSQLDate(java.sql.Date sourceDate) { XMLGregorianCalendar xgc = getDatatypeFactory().newXMLGregorianCalendar(); GregorianCalendar cal = new GregorianCalendar(getTimeZone()); cal.setGregorianChange(new Date(Long.MIN_VALUE)); cal.setTime(sourceDate); if(cal.get(Calendar.ERA) == GregorianCalendar.BC){ xgc.setYear(-cal.get(Calendar.YEAR)); }else{ xgc.setYear(cal.get(Calendar.YEAR)); } xgc.setMonth(cal.get(Calendar.MONTH)+1); xgc.setDay(cal.get(Calendar.DAY_OF_MONTH)); return xgc.toXMLFormat(); }
/** * This method returns a dateTime string representing a given * java.util.Date. * * BC dates (sourceDate.getTime() < YEAR_ONE_AD_TIME) are handled * as follows: '2007 BC' --> '-2006 AD' * * @param sourceDate * @return */ private String stringFromDate(java.util.Date sourceDate) { GregorianCalendar cal = new GregorianCalendar(getTimeZone()); cal.setTime(sourceDate); XMLGregorianCalendar xgc = getDatatypeFactory().newXMLGregorianCalendar(cal); String string = xgc.toXMLFormat(); string = truncateMillis(string); return string; }
/** * Convert from a Date to a String representation of the MonthDay type. * * @param date the date to convert * @return a Date to a String representation of the MonthDay type. */ public String toMonthDay(Date date) { if (null == date) { return null; } GregorianCalendar dateCalendar = new GregorianCalendar(getXMLConversionManager().getTimeZone()); dateCalendar.clear(); dateCalendar.setTime(date); dateCalendar.clear(Calendar.ZONE_OFFSET); return toMonthDay(dateCalendar); }
/** * Creates a Calendar based on a given Duration and Locale. * * @param dur the Duration object to use to populate the Calendar * @param loc the Locale to use - null is a valid value * * @return a Calendar */ private Calendar toCalendar(Duration dur, Locale loc) { Calendar cal; if (loc == null) { cal = Calendar.getInstance(getXMLConversionManager().getTimeZone()); } else { cal = Calendar.getInstance(getXMLConversionManager().getTimeZone(), loc); } cal.setTimeInMillis(dur.getTimeInMillis(cal)); cal.set(Calendar.YEAR, dur.getYears()); cal.set(Calendar.MONTH, dur.getMonths() - 1); cal.set(Calendar.DATE, dur.getDays()); cal.set(Calendar.HOUR_OF_DAY, dur.getHours()); cal.set(Calendar.MINUTE, dur.getMinutes()); cal.set(Calendar.SECOND, dur.getSeconds()); return cal; }
/** * Convert from a Date to a String representation of the MonthDay type. * * @param date the date to convert * @return a Date to a String representation of the MonthDay type. */ public String toMonthDay(Date date) { if (null == date) { return null; } GregorianCalendar dateCalendar = new GregorianCalendar(getXMLConversionManager().getTimeZone()); dateCalendar.clear(); dateCalendar.setTime(date); dateCalendar.clear(Calendar.ZONE_OFFSET); return toMonthDay(dateCalendar); }
/** * Creates a Calendar based on a given Duration and Locale. * * @param dur the Duration object to use to populate the Calendar * @param loc the Locale to use - null is a valid value * * @return a Calendar */ private Calendar toCalendar(Duration dur, Locale loc) { Calendar cal; if (loc == null) { cal = Calendar.getInstance(getXMLConversionManager().getTimeZone()); } else { cal = Calendar.getInstance(getXMLConversionManager().getTimeZone(), loc); } cal.setTimeInMillis(dur.getTimeInMillis(cal)); cal.set(Calendar.YEAR, dur.getYears()); cal.set(Calendar.MONTH, dur.getMonths() - 1); cal.set(Calendar.DATE, dur.getDays()); cal.set(Calendar.HOUR_OF_DAY, dur.getHours()); cal.set(Calendar.MINUTE, dur.getMinutes()); cal.set(Calendar.SECOND, dur.getSeconds()); return cal; }
/** * This method returns a dateTime string representing a given * Timestamp. * * BC dates (sourceDate.getTime() < YEAR_ONE_AD_TIME) are handled * as follows: '2007 BC' --> '-2006 AD' * * @param sourceDate * @return */ private String stringFromTimestamp(Timestamp sourceDate) { Calendar cal = Calendar.getInstance(getTimeZone()); cal.setTime(sourceDate); XMLGregorianCalendar xgc = getDatatypeFactory().newXMLGregorianCalendar(); if(cal.get(Calendar.ERA)== GregorianCalendar.BC){ xgc.setYear(-cal.get(Calendar.YEAR)); }else{ xgc.setYear(cal.get(Calendar.YEAR)); } xgc.setMonth(cal.get(Calendar.MONTH)+1); xgc.setDay(cal.get(Calendar.DAY_OF_MONTH)); xgc.setHour(cal.get(Calendar.HOUR_OF_DAY)); xgc.setMinute(cal.get(Calendar.MINUTE)); xgc.setSecond(cal.get(Calendar.SECOND)); String string= xgc.toXMLFormat(); string = appendNanos(string, sourceDate); return appendTimeZone(string, sourceDate); }
/** * This method returns a dateTime string representing a given * Timestamp. * * BC dates (sourceDate.getTime() < YEAR_ONE_AD_TIME) are handled * as follows: '2007 BC' --> '-2006 AD' * * @param sourceDate * @return */ private String stringFromTimestamp(Timestamp sourceDate) { GregorianCalendar cal = new GregorianCalendar(getTimeZone()); cal.setGregorianChange(new Date(Long.MIN_VALUE)); cal.setTime(sourceDate); XMLGregorianCalendar xgc = getDatatypeFactory().newXMLGregorianCalendar(); if(cal.get(Calendar.ERA)== GregorianCalendar.BC){ xgc.setYear(-cal.get(Calendar.YEAR)); }else{ xgc.setYear(cal.get(Calendar.YEAR)); } xgc.setMonth(cal.get(Calendar.MONTH)+1); xgc.setDay(cal.get(Calendar.DAY_OF_MONTH)); xgc.setHour(cal.get(Calendar.HOUR_OF_DAY)); xgc.setMinute(cal.get(Calendar.MINUTE)); xgc.setSecond(cal.get(Calendar.SECOND)); String string= xgc.toXMLFormat(); string = appendNanos(string, sourceDate); return appendTimeZone(string); }
Calendar cal; if (xgc.getTimezone() == DatatypeConstants.FIELD_UNDEFINED) { cal = xgc.toGregorianCalendar(getXMLConversionManager().getTimeZone(), locale, null); cal.clear(Calendar.ZONE_OFFSET); } else {