Calendar result = new GregorianCalendar(); result.setTime(java.util.Date.class.cast(srcObj)); } else if (Calendar.class.isAssignableFrom(sourceClass)) { result.setTime(c.getTime()); result.setTimeZone(c.getTimeZone()); } else if (XMLGregorianCalendar.class.isAssignableFrom(sourceClass)) { result = XMLGregorianCalendar.class.cast(srcObj).toGregorianCalendar(); } else if (dateFormat != null && String.class.isAssignableFrom(sourceClass)) { if ("".equals(String.class.cast(srcObj))) { long time = dateFormat.parse(String.class.cast(srcObj)).getTime(); result.setTime(new Date(time)); } catch (ParseException e) { throw new ConversionException("Unable to parse source object using specified date format", e); try { long time = Long.parseLong(srcObj.toString()); result.setTime(new Date(time)); } catch (NumberFormatException e) { throw new ConversionException("Unable to determine time in millis of source object", e); return dateFormat.format(result.getTime()); return dataTypeFactory().newXMLGregorianCalendar(GregorianCalendar.class.cast(result));
GregorianCalendar cal = new GregorianCalendar(); cal.setTime(new Date()); XMLGregorianCalendar xmlDate = DatatypeFactory.newInstance().newXMLGregorianCalendarDate(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH)+1, cal.get(Calendar.DAY_OF_MONTH), DatatypeConstants.FIELD_UNDEFINED);
final BigInteger second) { return newDuration( isPositive, hour, minute, (second != null)? new BigDecimal(second):null );
GregorianCalendar c = new GregorianCalendar(); c.setTime(yourDate); XMLGregorianCalendar date2 = DatatypeFactory.newInstance().newXMLGregorianCalendar(c);
public XMLGregorianCalendar createXMLGregorianCalendar(Calendar calendar) { if (dateFactory == null) { try { dateFactory = DatatypeFactory.newInstance(); } catch (DatatypeConfigurationException e) { throw new IllegalStateException("Could not obtain an instance of DatatypeFactory.", e); } } return dateFactory.newXMLGregorianCalendar((GregorianCalendar) calendar); }
GregorianCalendar gcal = new GregorianCalendar(); start = DatatypeFactory.newInstance().newXMLGregorianCalendar(gcal); start.setTimezone(DatatypeConstants.FIELD_UNDEFINED);
public class TestMain { public static void main(String[] args) throws DatatypeConfigurationException{ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm"); GregorianCalendar gc = new GregorianCalendar(); gc.setTime(new Date()); XMLGregorianCalendar xmlGregorianCalendar = DatatypeFactory.newInstance().newXMLGregorianCalendar(gc); Timestamp timeStamp = new Timestamp(System.currentTimeMillis()); String sqlTimestamp = dateFormat.format(timeStamp); Timestamp xmlToSqlTimestamp = new Timestamp(xmlGregorianCalendar.toGregorianCalendar().getTimeInMillis()); String xmlTimestamp = dateFormat.format(xmlToSqlTimestamp); System.out.println(timeStamp+" : "+xmlGregorianCalendar); System.out.println(sqlTimestamp+" : "+xmlTimestamp); System.out.println("Time stamps are equal : "+sqlTimestamp.equalsIgnoreCase(xmlTimestamp)); } }
return; Date ts = new Date(); LOG.info("Polling...{}", new SimpleDateFormat().format(ts)); try { inProgress = true; Calendar gc = GregorianCalendar.getInstance(); gc.setTime(beginTime); XMLGregorianCalendar gTime = null; try { gTime = DatatypeFactory.newInstance().newXMLGregorianCalendar((GregorianCalendar) gc).normalize(); } catch (DatatypeConfigurationException e) { ErrorUtils.RuntimeErrors.ILLEGAL_STATE.throwRuntime("Unable to set the begin time due to", e); gTime.setFractionalSecond(null); LOG.info("Begin Time: {}", gTime); request.setExclusiveBeginTimestamp(gTime);
final DateFormat format = new SimpleDateFormat("E. M/d"); final String dateStr = "Thu. 03/01"; final Date date = format.parse(dateStr); GregorianCalendar gregory = new GregorianCalendar(); gregory.setTime(date); XMLGregorianCalendar calendar = DatatypeFactory.newInstance() .newXMLGregorianCalendar( gregory);
String xml = "2013-08-26T12:00:00.000"; // maybe optionally with additional timezone offset javax.xml.datatype.DatatypeFactory factory = javax.xml.datatype.DatatypeFactory.newInstance(); XMLGregorianCalendar xmlGregCal = factory.newXMLGregorianCalendar(xml); java.util.Date d = xmlGregCal.toGregorianCalendar().getTime(); SimpleDateFormat outputFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String output = outputFormat.format(d);
try { DatatypeFactory df = javax.xml.datatype.DatatypeFactory.newInstance(); XMLGregorianCalendar xmlGregCal = df.newXMLGregorianCalendar(time); GregorianCalendar gregCal = xmlGregCal.toGregorianCalendar(); if (xmlGregCal.getTimezone() == DatatypeConstants.FIELD_UNDEFINED) { gregCal.setTimeZone(tz); Date d2 = gregCal.getTime(); request.setDateTime(d2); } catch (DatatypeConfigurationException e) { boolean tripPlannedForNow = Math.abs(request.getDateTime().getTime() - new Date().getTime()) < NOW_THRESHOLD_MILLIS;
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); }
Date dob=null; DateFormat df=new SimpleDateFormat("dd/MM/yyyy"); dob=df.parse( "13/06/1983" ); GregorianCalendar cal = new GregorianCalendar(); cal.setTime(dob); XMLGregorianCalendar xmlDate = DatatypeFactory.newInstance().newXMLGregorianCalendarDate(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH)+1, cal.get(Calendar.DAY_OF_MONTH), DatatypeConstants.FIELD_UNDEFINED);
@Override public BigdataLiteralImpl createXSDDateTime(final long timestamp) { final TimeZone tz = TimeZone.getDefault()/*getTimeZone("GMT")*/; final GregorianCalendar c = new GregorianCalendar(tz); c.setGregorianChange(new Date(Long.MIN_VALUE)); c.setTimeInMillis(timestamp); final XMLGregorianCalendar xmlGC = DateTimeExtension.datatypeFactorySingleton.newXMLGregorianCalendar(c); return createLiteral(xmlGC); }
@Test public void fromXMLCalendar() throws DatatypeConfigurationException { XMLGregorianCalendar xmlCal = DatatypeFactory.newInstance().newXMLGregorianCalendar(new GregorianCalendar()); xmlCal.setYear(1900); xmlCal.setMonth(1); xmlCal.setDay(1); assertEquals(1900, new DateTime(xmlCal).getYear()); assertEquals(1, new DateTime(xmlCal).getMonth()); assertEquals(1, new DateTime(xmlCal).getDayOfMonth()); }
GregorianCalendar c = new GregorianCalendar(); c.setTime(cDate); XMLGregorianCalendar dDt = DatatypeFactory.newInstance().newXMLGregorianCalendar(c); SimpleDateFormat sdf = new SimpleDateFormat ("E MM dd hh:mm:ss z"); sdf.format(c.getTime());
Date dob=null; DateFormat df=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); dob=df.parse( "2014-02-10 11:15:00" ); GregorianCalendar cal = new GregorianCalendar(); cal.setTime(dob); XMLGregorianCalendar xmlDate2 = DatatypeFactory.newInstance().newXMLGregorianCalendar(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH)+1, cal.get(Calendar.DAY_OF_MONTH), dob.getHours(),dob.getMinutes(),dob.getSeconds(),DatatypeConstants.FIELD_UNDEFINED, cal.getTimeZone().LONG).normalize(); XMLGregorianCalendar xmlDate3 = DatatypeFactory.newInstance().newXMLGregorianCalendar(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH)+1, cal.get(Calendar.DAY_OF_MONTH),dob.getHours(),dob.getMinutes(),dob.getSeconds(),DatatypeConstants.FIELD_UNDEFINED, DatatypeConstants.FIELD_UNDEFINED); System.out.println(xmlDate2); System.out.println(xmlDate3);
private XMLGregorianCalendar getTimeToXmlTime(long lastModified) throws DatatypeConfigurationException { GregorianCalendar gc = new GregorianCalendar( TimeZone.getTimeZone("UTC")); gc.setTime(new Date(lastModified)); XMLGregorianCalendar xmlTime = DatatypeFactory.newInstance() .newXMLGregorianCalendar(gc); return xmlTime; }
protected Duration getDuration(DateTimeData date) { int sign = 1; if (date.day<0 || date.hour<0 || date.minute<0 || date.second<0) { sign = -1; } return datatypeFactory.newDuration(sign == 1, null, null, date.day != DatatypeConstants.FIELD_UNDEFINED?BigInteger.valueOf(sign*date.day):null, date.hour != DatatypeConstants.FIELD_UNDEFINED?BigInteger.valueOf(sign*date.hour):null, date.minute != DatatypeConstants.FIELD_UNDEFINED?BigInteger.valueOf(sign*date.minute):null, date.second != DatatypeConstants.FIELD_UNDEFINED?new BigDecimal(String.valueOf(sign*date.second)):null); } }
/** * Parse an ISO-8601 string into an date object * * @param pDateString date string to parse * @return the parse date * @throws IllegalArgumentException if the provided string does not conform to ISO-8601 */ public static Date fromISO8601(String pDateString) { if (datatypeFactory != null) { return datatypeFactory.newXMLGregorianCalendar(pDateString.trim()).toGregorianCalendar().getTime(); } else { try { // Try on our own, works for most cases String date = pDateString.replaceFirst("([+-])(0\\d)\\:(\\d{2})$", "$1$2$3"); date = date.replaceFirst("Z$","+0000"); SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ"); return dateFormat.parse(date); } catch (ParseException e) { throw new IllegalArgumentException("Cannot parse date '" + pDateString + "': " +e,e); } } }