logger.debug("Day value before calendar is: " + dateTime.getDays()); logger.debug("Calendar lexical string is: " + calendar.get(Calendar.YEAR) + "-" +
@Override public Date dateValue(Node node) { if(node.isLiteral()){ Object value = node.getLiteral().getValue(); try { if(value instanceof XSDDateTime){ return new GregorianCalendar( ((XSDDateTime)value).getYears(), ((XSDDateTime)value).getMonths() -1, ((XSDDateTime)value).getDays()).getTime(); } } catch (RuntimeException e) { /*ignore*/} return super.dateValue(node); } else { throw new IllegalArgumentException("parsed node is not an Literal"); } }
@Override public Date dateValue(Node node) { if(node.isLiteral()){ Object value = node.getLiteral().getValue(); try { if(value instanceof XSDDateTime){ return new GregorianCalendar( ((XSDDateTime)value).getYears(), ((XSDDateTime)value).getMonths() -1, ((XSDDateTime)value).getDays()).getTime(); } } catch (RuntimeException e) { /*ignore*/} return super.dateValue(node); } else { throw new IllegalArgumentException("parsed node is not an Literal"); } }
public NodeValueTime(XSDDateTime dt) { time = dt ; if (dt.getDays() != 0 && dt.getMonths() !=0 && dt.getYears() != 0) { throw new ExprException("Illegal time: "+dt) ; } if ( dt.getTimePart() == 0 ) throw new ExprException("Illegal time: "+dt) ; }
if ( ! nv.isDate() ) throw new ExprEvalTypeException("Can't cast to XSD:dateTime: "+nv) ; String x = String.format("%04d-%02d-%02dT00:00:00", xsdDT.getYears(), xsdDT.getMonths(),xsdDT.getDays()) ; return NodeValue.makeNode(x, xsd) ; String x = String.format("%04d-%02d-%02d", xsdDT.getYears(), xsdDT.getMonths(),xsdDT.getDays()) ; return NodeValue.makeNode(x, xsd) ; String x = String.format("--%02d-%02d", xsdDT.getMonths(), xsdDT.getDays()) ; return NodeValue.makeNode(x, xsd) ; String x = String.format("---%02d", xsdDT.getDays()) ; return NodeValue.makeNode(x, xsd) ;