mmidy 2002/09/06 13:15:53 Modified: java/src/org/apache/xml/utils Tag: xslt20 DateTimeObj.java java/src/org/apache/xpath/operations Tag: xslt20 Subtract.java Log: Time - Time operation (dateTime011) Revision Changes Path No revision No revision 1.1.2.1.2.2 +7 -0 xml-xalan/java/src/org/apache/xml/utils/Attic/DateTimeObj.java Index: DateTimeObj.java =================================================================== RCS file: /home/cvs/xml-xalan/java/src/org/apache/xml/utils/Attic/DateTimeObj.java,v retrieving revision 1.1.2.1.2.1 retrieving revision 1.1.2.1.2.2 diff -u -r1.1.2.1.2.1 -r1.1.2.1.2.2 --- DateTimeObj.java 6 Sep 2002 15:06:05 -0000 1.1.2.1.2.1 +++ DateTimeObj.java 6 Sep 2002 20:15:53 -0000 1.1.2.1.2.2 @@ -1021,6 +1021,13 @@ return dur;*/ return getDTDuration(date2); } + + public Duration subtractTimeFromTime(DateTimeObj time2) + throws TransformerException + { + + return getDTDuration(time2); + } No revision No revision 1.1.2.1.2.1 +14 -4 xml-xalan/java/src/org/apache/xpath/operations/Attic/Subtract.java Index: Subtract.java =================================================================== RCS file: /home/cvs/xml-xalan/java/src/org/apache/xpath/operations/Attic/Subtract.java,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.1.2.1 diff -u -r1.1.2.1 -r1.1.2.1.2.1 --- Subtract.java 14 Aug 2002 20:07:05 -0000 1.1.2.1 +++ Subtract.java 6 Sep 2002 20:15:53 -0000 1.1.2.1.2.1 @@ -197,10 +197,20 @@ { DateTimeObj oldTime = lhs.time(); // The normalizer should - Duration duration2 = rhs.duration(); - - DateTimeObj newTime = oldTime.subtractDTDurationFromTime(duration2); - return new XTime(newTime); + int rhsVT = rhs.getValueType(); + if(XType.DURATION == rhsVT + || XType.DAYTIMEDURATION == rhsVT) + { + Duration duration2 = rhs.duration(); + DateTimeObj newTime = oldTime.subtractDTDurationFromTime(duration2); + return new XTime(newTime); + } + else + { + DateTimeObj t2 = rhs.time(); + Duration duration = oldTime.subtractTimeFromTime(t2); + return new XDuration(duration); + } } }); m_funcs.setFunc(XType.DATE, new GenericOpFunc()
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]