[Java] Class DateUtilExtensions 
org.apache.groovy.dateutil.extensions.DateUtilExtensions 
  public class DateUtilExtensions
extends Object  This class defines new groovy methods which appear on normal JDK Date and Calendar classes inside the Groovy environment.    Methods Summary  
Methods
  Type Params Return Type Name and description    public static Date 
clearTime(Date self)Clears the time portion of this Date instance; useful utility where it makes sense to compare month/day/year only portions of a Date.    public static Date 
clearTime(Date self)Clears the time portion of this java.sql.Date instance; useful utility where it makes sense to compare month/day/year only portions of a Date.    public static Calendar 
clearTime(Calendar self)Clears the time portion of this Calendar instance; useful utility where it makes sense to compare month/day/year only portions of a Calendar.    public static Calendar 
copyWith(Calendar self, Map<Object, Integer> updates)Support creating a new Date having similar properties to an existing Date (which remains unaltered) but with some fields updated according to a Map of changes.    public static Date 
copyWith(Date self, Map<Object, Integer> updates)Support creating a new Date having similar properties to an existing Date (which remains unaltered) but with some fields updated according to a Map of changes.    public static void 
downto(Date self, Date to, Closure closure)Iterates from this date down to the given date, inclusive, decrementing by one day each time.    public static void 
downto(Calendar self, Calendar to, Closure closure)Iterates from the date represented by this calendar up to the date represented by the given calendar, inclusive, incrementing by one day each time.    public static String 
format(Date self, String format)
    public static String 
format(Date self, String format, TimeZone tz)
    public static String 
format(Calendar self, String pattern)
    public static int 
getAt(Date self, int field)Support the subscript operator for a Date.    public static int 
getAt(Calendar self, int field)Support the subscript operator for a Calendar.    public static String 
getDateString(Date self)
    public static String 
getDateTimeString(Date self)
    public static String 
getTimeString(Date self)
    public static Date 
minus(Date self, int days)Subtract a number of days from this date and returns the new date.    public static Date 
minus(Date self, int days)Subtract a number of days from this date and returns the new date.    public static Timestamp 
minus(Timestamp self, int days)Subtract a number of days from this Timestamp and returns the new Timestamp object.    public static int 
minus(Calendar self, Calendar then)Subtract another date from this one and return the number of days of the difference.    public static int 
minus(Date self, Date then)Subtract another Date from this one and return the number of days of the difference.    public static Date 
next(Date self)Increment a Date by one day.    public static Calendar 
next(Calendar self)Increment a Calendar by one day.    public static Date 
next(Date self)Increment a java.sql.Date by one day.    public static Date 
plus(Date self, int days)Add a number of days to this date and returns the new date.    public static Date 
plus(Date self, int days)Add a number of days to this date and returns the new date.    public static Timestamp 
plus(Timestamp self, int days)Add number of days to this Timestamp and returns the new Timestamp object.    public static Calendar 
previous(Calendar self)Decrement a Calendar by one day.    public static Date 
previous(Date self)Decrement a Date by one day.    public static Date 
previous(Date self)Decrement a java.sql.Date by one day.    public static void 
putAt(Calendar self, int field, int value)Support the subscript operator for mutating a Calendar.     public static void 
putAt(Date self, int field, int value)Support the subscript operator for mutating a Date.    public static void 
set(Calendar self, Map<Object, Integer> updates)Support mutating a Calendar with a Map.    public static void 
set(Date self, Map<Object, Integer> updates)Support mutating a Date with a Map.    public static Calendar 
toCalendar(Date self)Convert a Date to a Calendar.    public static Calendar 
updated(Calendar self, Map<Object, Integer> updates)Legacy alias for copyWith.     public static Date 
updated(Date self, Map<Object, Integer> updates)Legacy alias for copyWith.     public static void 
upto(Date self, Date to, Closure closure)Iterates from this date up to the given date, inclusive, incrementing by one day each time.    public static void 
upto(Calendar self, Calendar to, Closure closure)Iterates from the date represented by this calendar up to the date represented by the given calendar, inclusive, incrementing by one day each time.   Inherited Methods Summary  
Inherited Methods
  Methods inherited from class Name   class Object wait, wait, wait, equals, toString, hashCode, getClass, notify, notifyAll     Method Detail public static Date clearTime(Date self)  Clears the time portion of this Date instance; useful utility where it makes sense to compare month/day/year only portions of a Date. 

Parameters:

self - a Date


Returns:
the Date but with the time portion cleared


Since:
1.6.7
 public static Date clearTime(Date self)  Clears the time portion of this java.sql.Date instance; useful utility where it makes sense to compare month/day/year only portions of a Date. 

Parameters:

self - a java.sql.Date


Returns:
the java.sql.Date but with the time portion cleared


Since:
1.6.7
 public static Calendar clearTime(Calendar self)  Clears the time portion of this Calendar instance; useful utility where it makes sense to compare month/day/year only portions of a Calendar. 

Parameters:

self - a Calendar


Returns:
the Calendar but with the time portion cleared


Since:
1.6.7
 public static Calendar copyWith(Calendar self, Map<Object, Integer> updates)  Support creating a new Date having similar properties to an existing Date (which remains unaltered) but with some fields updated according to a Map of changes. 
 Example usage: 

 import static java.util.Calendar.YEAR
 def now = Calendar.instance
 def nextYear = now[YEAR] + 1
 def oneYearFromNow = now.copyWith(year: nextYear)
 println now.time
 println oneYearFromNow.time
  
Parameters:

self - A Calendar

updates - A Map of Calendar keys and values


Returns:
The newly created Calendar


See Also:
Calendar.set
Calendar.set
set(java.util.Calendar, java.util.Map)


Since:
2.2.0
 public static Date copyWith(Date self, Map<Object, Integer> updates)  Support creating a new Date having similar properties to an existing Date (which remains unaltered) but with some fields updated according to a Map of changes. 
 Example usage: 

 import static java.util.Calendar.YEAR
 def today = new Date()
 def nextYear = today[YEAR] + 1
 def oneYearFromNow = today.copyWith(year: nextYear)
 println today
 println oneYearFromNow
  
Parameters:

self - A Date

updates - A Map of Calendar keys and values


Returns:
The newly created Date


See Also:
Calendar.set
set(java.util.Date, java.util.Map)
copyWith(java.util.Calendar, java.util.Map)


Since:
2.2.0
 public static void downto(Date self, Date to, Closure closure)  Iterates from this date down to the given date, inclusive, decrementing by one day each time. 

Parameters:

self - a Date

to - another Date to go down to

closure - the closure to call


Since:
2.2
 public static void downto(Calendar self, Calendar to, Closure closure)  Iterates from the date represented by this calendar up to the date represented by the given calendar, inclusive, incrementing by one day each time. 

Parameters:

self - a Calendar

to - another Calendar to go down to

closure - the closure to call


Since:
2.2
 public static String format(Date self, String format)
Create a String representation of this date according to the given format pattern. 
For example, if the system timezone is GMT, new Date(0).format('MM/dd/yy') would return the string "01/01/70". See documentation for SimpleDateFormat for format pattern use. 
Note that a new DateFormat instance is created for every invocation of this method (for thread safety). 

Parameters:

self - a Date

format - the format pattern to use according to SimpleDateFormat



Returns:
a string representation of this date.


See Also:
SimpleDateFormat


Since:
1.5.7
 public static String format(Date self, String format, TimeZone tz)
Create a String representation of this date according to the given format pattern and timezone. 
For example: 
 def d = new Date(0)
 def tz = TimeZone.getTimeZone('GMT')
 println d.format('dd/MMM/yyyy', tz)
  would return the string "01/Jan/1970". See documentation for SimpleDateFormat for format pattern use. 
Note that a new DateFormat instance is created for every invocation of this method (for thread safety). 

Parameters:

self - a Date

format - the format pattern to use according to SimpleDateFormat


tz - the TimeZone to use


Returns:
a string representation of this date.


See Also:
SimpleDateFormat


Since:
1.8.3
 public static String format(Calendar self, String pattern)
Shortcut for SimpleDateFormat to output a String representation of this calendar instance. This method respects the Calendar's assigned TimeZone, whereas calling cal.time.format('HH:mm:ss') would use the system timezone. 
Note that Calendar equivalents of date.getDateString() and variants do not exist because those methods are Locale-dependent. Although a Calendar may be assigned a Locale, that information is lost and therefore cannot be used to control the default date/time formats provided by these methods. Instead, the system Locale would always be used. The alternative is to simply call DateFormat.getDateInstance and pass the same Locale that was used for the Calendar. 

Parameters:

self - this calendar

pattern - format pattern


Returns:
String representation of this calendar with the given format.


See Also:
DateFormat.setTimeZone
SimpleDateFormat.format
format(java.util.Date, String)


Since:
1.6.0
 public static int getAt(Date self, int field)  Support the subscript operator for a Date. 

Parameters:

self - a Date

field - a Calendar field, e.g. MONTH


Returns:
the value for the given field, e.g. FEBRUARY


See Also:
Calendar


Since:
1.5.5
 public static int getAt(Calendar self, int field)  Support the subscript operator for a Calendar. 

Parameters:

self - a Calendar

field - a Calendar field, e.g. MONTH


Returns:
the value for the given field, e.g. FEBRUARY


See Also:
Calendar


Since:
1.7.3
 public static String getDateString(Date self)
Return a string representation of the 'day' portion of this date according to the locale-specific DateFormat.SHORT default format. For an "en_UK" system locale, this would be dd/MM/yy. 
Note that a new DateFormat instance is created for every invocation of this method (for thread safety). 

Parameters:

self - a Date


Returns:
a string representation of this date


See Also:
DateFormat.getDateInstance
DateFormat.SHORT


Since:
1.5.7
 public static String getDateTimeString(Date self)
Return a string representation of the date and time time portion of this Date instance, according to the locale-specific format used by DateFormat. This method uses the DateFormat.SHORT preset for the day portion and DateFormat.MEDIUM for the time portion of the output string. 
Note that a new DateFormat instance is created for every invocation of this method (for thread safety). 

Parameters:

self - a Date


Returns:
a string representation of this date and time


See Also:
DateFormat.getDateTimeInstance


Since:
1.5.7
 public static String getTimeString(Date self)
Return a string representation of the time portion of this date according to the locale-specific DateFormat.MEDIUM default format. For an "en_UK" system locale, this would be HH:MM:ss. 
Note that a new DateFormat instance is created for every invocation of this method (for thread safety). 

Parameters:

self - a Date


Returns:
a string representing the time portion of this date


See Also:
DateFormat.getTimeInstance
DateFormat.MEDIUM


Since:
1.5.7
 public static Date minus(Date self, int days)  Subtract a number of days from this date and returns the new date. 

Parameters:

self - a Date

days - the number of days to subtract


Returns:
the new date


Since:
1.0
 public static Date minus(Date self, int days)  Subtract a number of days from this date and returns the new date. 

Parameters:

self - a java.sql.Date

days - the number of days to subtract


Returns:
the new date


Since:
1.0
 public static Timestamp minus(Timestamp self, int days)  Subtract a number of days from this Timestamp and returns the new Timestamp object. 

Parameters:

self - a Timestamp

days - the number of days to subtract


Returns:
the new Timestamp
 public static int minus(Calendar self, Calendar then)  Subtract another date from this one and return the number of days of the difference. 
 Date self = Date then + (Date self - Date then) 
 IOW, if self is before then the result is a negative value. 

Parameters:

self - a Calendar

then - another Calendar


Returns:
number of days


Since:
1.6.0
 public static int minus(Date self, Date then)  Subtract another Date from this one and return the number of days of the difference. 
 Date self = Date then + (Date self - Date then) 
 IOW, if self is before then the result is a negative value. 

Parameters:

self - a Date

then - another Date


Returns:
number of days


Since:
1.6.0
 public static Date next(Date self)  Increment a Date by one day. 

Parameters:

self - a Date


Returns:
the next days date


Since:
1.0
 public static Calendar next(Calendar self)  Increment a Calendar by one day. 

Parameters:

self - a Calendar


Returns:
a new Calendar set to the next day


Since:
1.8.7
 public static Date next(Date self)  Increment a java.sql.Date by one day. 

Parameters:

self - a java.sql.Date


Returns:
the next days date


Since:
1.0
 public static Date plus(Date self, int days)  Add a number of days to this date and returns the new date. 

Parameters:

self - a Date

days - the number of days to increase


Returns:
the new date


Since:
1.0
 public static Date plus(Date self, int days)  Add a number of days to this date and returns the new date. 

Parameters:

self - a java.sql.Date

days - the number of days to increase


Returns:
the new date


Since:
1.0
 public static Timestamp plus(Timestamp self, int days)  Add number of days to this Timestamp and returns the new Timestamp object. 

Parameters:

self - a Timestamp

days - the number of days to increase


Returns:
the new Timestamp
 public static Calendar previous(Calendar self)  Decrement a Calendar by one day. 

Parameters:

self - a Calendar


Returns:
a new Calendar set to the previous day


Since:
1.8.7
 public static Date previous(Date self)  Decrement a Date by one day. 

Parameters:

self - a Date


Returns:
the previous days date


Since:
1.0
 public static Date previous(Date self)  Decrement a java.sql.Date by one day. 

Parameters:

self - a java.sql.Date


Returns:
the previous days date


Since:
1.0
 public static void putAt(Calendar self, int field, int value)  Support the subscript operator for mutating a Calendar. Example usage: 

 import static java.util.Calendar.*
 def cal = Calendar.instance
 cal[DAY_OF_WEEK] = MONDAY
 cal[MONTH] = MARCH
 println cal.time // A Monday in March
  
Parameters:

self - A Calendar

field - A Calendar field, e.g. MONTH

value - The value for the given field, e.g. FEBRUARY


See Also:
Calendar.set


Since:
1.7.3
 public static void putAt(Date self, int field, int value)  Support the subscript operator for mutating a Date. 

Parameters:

self - A Date

field - A Calendar field, e.g. MONTH

value - The value for the given field, e.g. FEBRUARY


See Also:
putAt(java.util.Calendar, int, int)
Calendar.set


Since:
1.7.3
 public static void set(Calendar self, Map<Object, Integer> updates)  Support mutating a Calendar with a Map. 
 The map values are the normal values provided as the second parameter to java.util.Calendar#set(int, int). The keys can either be the normal fields values provided as the first parameter to that method or one of the following Strings: 
 Calendar index values 
year
Calendar.YEAR
 
month
Calendar.MONTH
 
date
Calendar.DATE
 
dayOfMonth
Calendar.DATE
 
hourOfDay
Calendar.HOUR_OF_DAY
 
minute
Calendar.MINUTE
 
second
Calendar.SECOND
  Example usage: 
 import static java.util.Calendar.*
 def cal = Calendar.instance
 def m = [:]
 m[YEAR] = 2010
 m[MONTH] = DECEMBER
 m[DATE] = 25
 cal.set(m)
 println cal.time // Christmas 2010

 cal.set(year:2011, month:DECEMBER, date:25)
 println cal.time // Christmas 2010
  
Parameters:

self - A Calendar

updates - A Map of Calendar keys and values


See Also:
Calendar.set
Calendar.set


Since:
1.7.3
 public static void set(Date self, Map<Object, Integer> updates)  Support mutating a Date with a Map. 
 The map values are the normal values provided as the second parameter to java.util.Calendar#set(int, int). The keys can either be the normal fields values provided as the first parameter to that method or one of the following Strings: 
 Calendar index values 
year
Calendar.YEAR
 
month
Calendar.MONTH
 
date
Calendar.DATE
 
dayOfMonth
Calendar.DATE
 
hourOfDay
Calendar.HOUR_OF_DAY
 
minute
Calendar.MINUTE
 
second
Calendar.SECOND
  Example usage: 
 import static java.util.Calendar.YEAR
 def date = new Date()
 def nextYear = date[YEAR] + 1
 date.set(year: nextYear)
 println date
  
Parameters:

self - A Date

updates - A Map of Calendar keys and values


See Also:
Calendar.set
set(java.util.Calendar, java.util.Map)


Since:
1.7.3
 public static Calendar toCalendar(Date self)  Convert a Date to a Calendar. 

Parameters:

self - a Date


Returns:
a Calendar corresponding to the given Date


Since:
1.7.6
 public static Calendar updated(Calendar self, Map<Object, Integer> updates)  Legacy alias for copyWith. Will be deprecated and removed in future versions of Groovy. 

See Also:
copyWith(java.util.Calendar, java.util.Map)


Since:
1.7.3
 public static Date updated(Date self, Map<Object, Integer> updates)  Legacy alias for copyWith. Will be deprecated and removed in future versions of Groovy. 

See Also:
copyWith(java.util.Date, java.util.Map)


Since:
1.7.3
 public static void upto(Date self, Date to, Closure closure)  Iterates from this date up to the given date, inclusive, incrementing by one day each time. 

Parameters:

self - a Date

to - another Date to go up to

closure - the closure to call


Since:
2.2
 public static void upto(Calendar self, Calendar to, Closure closure)  Iterates from the date represented by this calendar up to the date represented by the given calendar, inclusive, incrementing by one day each time. 

Parameters:

self - a Calendar

to - another Calendar to go up to

closure - the closure to call


Since:
2.2
 

    
{'path': 'public/docs/groovy~4.0/org/apache/groovy/dateutil/extensions/dateutilextensions.html', 'source': 'DevDocs.IO'}