--- a/jdk/src/share/classes/java/time/DayOfWeek.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/DayOfWeek.java Tue May 06 12:20:29 2014 +0100
@@ -201,7 +201,7 @@
* Gets the day-of-week {@code int} value.
* <p>
* The values are numbered following the ISO-8601 standard, from 1 (Monday) to 7 (Sunday).
- * See {@link WeekFields#dayOfWeek} for localized week-numbering.
+ * See {@link java.time.temporal.WeekFields#dayOfWeek()} for localized week-numbering.
*
* @return the day-of-week, from 1 (Monday) to 7 (Sunday)
*/
@@ -288,7 +288,7 @@
/**
* Gets the value of the specified field from this day-of-week as an {@code int}.
* <p>
- * This queries this day-of-week for the value for the specified field.
+ * This queries this day-of-week for the value of the specified field.
* The returned value will always be within the valid range of values for the field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
@@ -321,7 +321,7 @@
/**
* Gets the value of the specified field from this day-of-week as a {@code long}.
* <p>
- * This queries this day-of-week for the value for the specified field.
+ * This queries this day-of-week for the value of the specified field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
* <p>
@@ -419,7 +419,7 @@
* The adjustment is equivalent to using {@link Temporal#with(TemporalField, long)}
* passing {@link ChronoField#DAY_OF_WEEK} as the field.
* Note that this adjusts forwards or backwards within a Monday to Sunday week.
- * See {@link WeekFields#dayOfWeek} for localized week start days.
+ * See {@link java.time.temporal.WeekFields#dayOfWeek()} for localized week start days.
* See {@code TemporalAdjuster} for other adjusters with more control,
* such as {@code next(MONDAY)}.
* <p>
--- a/jdk/src/share/classes/java/time/Duration.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/Duration.java Tue May 06 12:20:29 2014 +0100
@@ -546,7 +546,7 @@
* They are returned in the order seconds, nanos.
* <p>
* This set can be used in conjunction with {@link #get(TemporalUnit)}
- * to access the entire state of the period.
+ * to access the entire state of the duration.
*
* @return a list containing the seconds and nanos units, not null
*/
@@ -686,8 +686,8 @@
* <p>
* This instance is immutable and unaffected by this method call.
*
- * @param amountToAdd the amount of the period, measured in terms of the unit, positive or negative
- * @param unit the unit that the period is measured in, must have an exact duration, not null
+ * @param amountToAdd the amount to add, measured in terms of the unit, positive or negative
+ * @param unit the unit that the amount is measured in, must have an exact duration, not null
* @return a {@code Duration} based on this duration with the specified duration added, not null
* @throws UnsupportedTemporalTypeException if the unit is not supported
* @throws ArithmeticException if numeric overflow occurs
@@ -848,8 +848,8 @@
* <p>
* This instance is immutable and unaffected by this method call.
*
- * @param amountToSubtract the amount of the period, measured in terms of the unit, positive or negative
- * @param unit the unit that the period is measured in, must have an exact duration, not null
+ * @param amountToSubtract the amount to subtract, measured in terms of the unit, positive or negative
+ * @param unit the unit that the amount is measured in, must have an exact duration, not null
* @return a {@code Duration} based on this duration with the specified duration subtracted, not null
* @throws ArithmeticException if numeric overflow occurs
*/
--- a/jdk/src/share/classes/java/time/Instant.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/Instant.java Tue May 06 12:20:29 2014 +0100
@@ -530,7 +530,7 @@
/**
* Gets the value of the specified field from this instant as an {@code int}.
* <p>
- * This queries this instant for the value for the specified field.
+ * This queries this instant for the value of the specified field.
* The returned value will always be within the valid range of values for the field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
@@ -571,7 +571,7 @@
/**
* Gets the value of the specified field from this instant as a {@code long}.
* <p>
- * This queries this instant for the value for the specified field.
+ * This queries this instant for the value of the specified field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
* <p>
--- a/jdk/src/share/classes/java/time/LocalDate.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/LocalDate.java Tue May 06 12:20:29 2014 +0100
@@ -280,7 +280,7 @@
* @param dayOfYear the day-of-year to represent, from 1 to 366
* @return the local date, not null
* @throws DateTimeException if the value of any field is out of range,
- * or if the day-of-year is invalid for the month-year
+ * or if the day-of-year is invalid for the year
*/
public static LocalDate ofYearDay(int year, int dayOfYear) {
YEAR.checkValidValue(year);
@@ -308,7 +308,7 @@
*
* @param epochDay the Epoch Day to convert, based on the epoch 1970-01-01
* @return the local date, not null
- * @throws DateTimeException if the epoch days exceeds the supported date range
+ * @throws DateTimeException if the epoch day exceeds the supported date range
*/
public static LocalDate ofEpochDay(long epochDay) {
long zeroDay = epochDay + DAYS_0000_TO_1970;
@@ -515,7 +515,7 @@
/**
* Checks if the specified unit is supported.
* <p>
- * This checks if the specified unit can be added to, or subtracted from, this date-time.
+ * This checks if the specified unit can be added to, or subtracted from, this date.
* If false, then calling the {@link #plus(long, TemporalUnit)} and
* {@link #minus(long, TemporalUnit) minus} methods will throw an exception.
* <p>
@@ -592,7 +592,7 @@
/**
* Gets the value of the specified field from this date as an {@code int}.
* <p>
- * This queries this date for the value for the specified field.
+ * This queries this date for the value of the specified field.
* The returned value will always be within the valid range of values for the field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
@@ -600,7 +600,7 @@
* If the field is a {@link ChronoField} then the query is implemented here.
* The {@link #isSupported(TemporalField) supported fields} will return valid
* values based on this date, except {@code EPOCH_DAY} and {@code PROLEPTIC_MONTH}
- * which are too large to fit in an {@code int} and throw a {@code DateTimeException}.
+ * which are too large to fit in an {@code int} and throw an {@code UnsupportedTemporalTypeException}.
* All other {@code ChronoField} instances will throw an {@code UnsupportedTemporalTypeException}.
* <p>
* If the field is not a {@code ChronoField}, then the result of this method
@@ -627,7 +627,7 @@
/**
* Gets the value of the specified field from this date as a {@code long}.
* <p>
- * This queries this date for the value for the specified field.
+ * This queries this date for the value of the specified field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
* <p>
@@ -875,7 +875,9 @@
* <p>
* A simple adjuster might simply set the one of the fields, such as the year field.
* A more complex adjuster might set the date to the last day of the month.
- * A selection of common adjustments is provided in {@link TemporalAdjuster}.
+ * <p>
+ * A selection of common adjustments is provided in
+ * {@link java.time.temporal.TemporalAdjusters TemporalAdjusters}.
* These include finding the "last day of the month" and "next Wednesday".
* Key date-time classes also implement the {@code TemporalAdjuster} interface,
* such as {@link Month} and {@link java.time.MonthDay MonthDay}.
@@ -885,7 +887,7 @@
* For example this code returns a date on the last day of July:
* <pre>
* import static java.time.Month.*;
- * import static java.time.temporal.Adjusters.*;
+ * import static java.time.temporal.TemporalAdjusters.*;
*
* result = localDate.with(JULY).with(lastDayOfMonth());
* </pre>
@@ -1041,7 +1043,8 @@
//-----------------------------------------------------------------------
/**
- * Returns a copy of this date with the year altered.
+ * Returns a copy of this {@code LocalDate} with the year altered.
+ * <p>
* If the day-of-month is invalid for the year, it will be changed to the last valid day of the month.
* <p>
* This instance is immutable and unaffected by this method call.
@@ -1059,7 +1062,8 @@
}
/**
- * Returns a copy of this date with the month-of-year altered.
+ * Returns a copy of this {@code LocalDate} with the month-of-year altered.
+ * <p>
* If the day-of-month is invalid for the year, it will be changed to the last valid day of the month.
* <p>
* This instance is immutable and unaffected by this method call.
@@ -1077,7 +1081,8 @@
}
/**
- * Returns a copy of this date with the day-of-month altered.
+ * Returns a copy of this {@code LocalDate} with the day-of-month altered.
+ * <p>
* If the resulting date is invalid, an exception is thrown.
* <p>
* This instance is immutable and unaffected by this method call.
@@ -1095,7 +1100,8 @@
}
/**
- * Returns a copy of this date with the day-of-year altered.
+ * Returns a copy of this {@code LocalDate} with the day-of-year altered.
+ * <p>
* If the resulting date is invalid, an exception is thrown.
* <p>
* This instance is immutable and unaffected by this method call.
@@ -1245,7 +1251,7 @@
//-----------------------------------------------------------------------
/**
- * Returns a copy of this {@code LocalDate} with the specified period in years added.
+ * Returns a copy of this {@code LocalDate} with the specified number of years added.
* <p>
* This method adds the specified amount to the years field in three steps:
* <ol>
@@ -1273,7 +1279,7 @@
}
/**
- * Returns a copy of this {@code LocalDate} with the specified period in months added.
+ * Returns a copy of this {@code LocalDate} with the specified number of months added.
* <p>
* This method adds the specified amount to the months field in three steps:
* <ol>
@@ -1304,7 +1310,7 @@
}
/**
- * Returns a copy of this {@code LocalDate} with the specified period in weeks added.
+ * Returns a copy of this {@code LocalDate} with the specified number of weeks added.
* <p>
* This method adds the specified amount in weeks to the days field incrementing
* the month and year fields as necessary to ensure the result remains valid.
@@ -1402,11 +1408,11 @@
//-----------------------------------------------------------------------
/**
- * Returns a copy of this {@code LocalDate} with the specified period in years subtracted.
+ * Returns a copy of this {@code LocalDate} with the specified number of years subtracted.
* <p>
* This method subtracts the specified amount from the years field in three steps:
* <ol>
- * <li>Subtract the input years to the year field</li>
+ * <li>Subtract the input years from the year field</li>
* <li>Check if the resulting date would be invalid</li>
* <li>Adjust the day-of-month to the last valid day if necessary</li>
* </ol>
@@ -1426,11 +1432,11 @@
}
/**
- * Returns a copy of this {@code LocalDate} with the specified period in months subtracted.
+ * Returns a copy of this {@code LocalDate} with the specified number of months subtracted.
* <p>
* This method subtracts the specified amount from the months field in three steps:
* <ol>
- * <li>Subtract the input months to the month-of-year field</li>
+ * <li>Subtract the input months from the month-of-year field</li>
* <li>Check if the resulting date would be invalid</li>
* <li>Adjust the day-of-month to the last valid day if necessary</li>
* </ol>
@@ -1450,7 +1456,7 @@
}
/**
- * Returns a copy of this {@code LocalDate} with the specified period in weeks subtracted.
+ * Returns a copy of this {@code LocalDate} with the specified number of weeks subtracted.
* <p>
* This method subtracts the specified amount in weeks from the days field decrementing
* the month and year fields as necessary to ensure the result remains valid.
--- a/jdk/src/share/classes/java/time/LocalDateTime.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/LocalDateTime.java Tue May 06 12:20:29 2014 +0100
@@ -428,7 +428,7 @@
/**
* Obtains an instance of {@code LocalDateTime} from a temporal object.
* <p>
- * This obtains an offset time based on the specified temporal.
+ * This obtains a local date-time based on the specified temporal.
* A {@code TemporalAccessor} represents an arbitrary set of date and time information,
* which this factory converts to an instance of {@code LocalDateTime}.
* <p>
@@ -656,7 +656,7 @@
/**
* Gets the value of the specified field from this date-time as an {@code int}.
* <p>
- * This queries this date-time for the value for the specified field.
+ * This queries this date-time for the value of the specified field.
* The returned value will always be within the valid range of values for the field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
@@ -665,7 +665,7 @@
* The {@link #isSupported(TemporalField) supported fields} will return valid
* values based on this date-time, except {@code NANO_OF_DAY}, {@code MICRO_OF_DAY},
* {@code EPOCH_DAY} and {@code PROLEPTIC_MONTH} which are too large to fit in
- * an {@code int} and throw a {@code DateTimeException}.
+ * an {@code int} and throw a {@code UnsupportedTemporalTypeException}.
* All other {@code ChronoField} instances will throw an {@code UnsupportedTemporalTypeException}.
* <p>
* If the field is not a {@code ChronoField}, then the result of this method
@@ -693,7 +693,7 @@
/**
* Gets the value of the specified field from this date-time as a {@code long}.
* <p>
- * This queries this date-time for the value for the specified field.
+ * This queries this date-time for the value of the specified field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
* <p>
@@ -878,7 +878,9 @@
* <p>
* A simple adjuster might simply set the one of the fields, such as the year field.
* A more complex adjuster might set the date to the last day of the month.
- * A selection of common adjustments is provided in {@link TemporalAdjuster}.
+ * <p>
+ * A selection of common adjustments is provided in
+ * {@link java.time.temporal.TemporalAdjusters TemporalAdjusters}.
* These include finding the "last day of the month" and "next Wednesday".
* Key date-time classes also implement the {@code TemporalAdjuster} interface,
* such as {@link Month} and {@link java.time.MonthDay MonthDay}.
@@ -888,7 +890,7 @@
* For example this code returns a date on the last day of July:
* <pre>
* import static java.time.Month.*;
- * import static java.time.temporal.Adjusters.*;
+ * import static java.time.temporal.TemporalAdjusters.*;
*
* result = localDateTime.with(JULY).with(lastDayOfMonth());
* </pre>
@@ -974,6 +976,7 @@
//-----------------------------------------------------------------------
/**
* Returns a copy of this {@code LocalDateTime} with the year altered.
+ * <p>
* The time does not affect the calculation and will be the same in the result.
* If the day-of-month is invalid for the year, it will be changed to the last valid day of the month.
* <p>
@@ -989,6 +992,7 @@
/**
* Returns a copy of this {@code LocalDateTime} with the month-of-year altered.
+ * <p>
* The time does not affect the calculation and will be the same in the result.
* If the day-of-month is invalid for the year, it will be changed to the last valid day of the month.
* <p>
@@ -1004,7 +1008,8 @@
/**
* Returns a copy of this {@code LocalDateTime} with the day-of-month altered.
- * If the resulting {@code LocalDateTime} is invalid, an exception is thrown.
+ * <p>
+ * If the resulting date-time is invalid, an exception is thrown.
* The time does not affect the calculation and will be the same in the result.
* <p>
* This instance is immutable and unaffected by this method call.
@@ -1020,7 +1025,8 @@
/**
* Returns a copy of this {@code LocalDateTime} with the day-of-year altered.
- * If the resulting {@code LocalDateTime} is invalid, an exception is thrown.
+ * <p>
+ * If the resulting date-time is invalid, an exception is thrown.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1035,7 +1041,7 @@
//-----------------------------------------------------------------------
/**
- * Returns a copy of this {@code LocalDateTime} with the hour-of-day value altered.
+ * Returns a copy of this {@code LocalDateTime} with the hour-of-day altered.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1049,7 +1055,7 @@
}
/**
- * Returns a copy of this {@code LocalDateTime} with the minute-of-hour value altered.
+ * Returns a copy of this {@code LocalDateTime} with the minute-of-hour altered.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1063,7 +1069,7 @@
}
/**
- * Returns a copy of this {@code LocalDateTime} with the second-of-minute value altered.
+ * Returns a copy of this {@code LocalDateTime} with the second-of-minute altered.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1077,7 +1083,7 @@
}
/**
- * Returns a copy of this {@code LocalDateTime} with the nano-of-second value altered.
+ * Returns a copy of this {@code LocalDateTime} with the nano-of-second altered.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1109,7 +1115,7 @@
* @param unit the unit to truncate to, not null
* @return a {@code LocalDateTime} based on this date-time with the time truncated, not null
* @throws DateTimeException if unable to truncate
- * @throws UnsupportedTemporalTypeException if the field is not supported
+ * @throws UnsupportedTemporalTypeException if the unit is not supported
*/
public LocalDateTime truncatedTo(TemporalUnit unit) {
return with(date, time.truncatedTo(unit));
@@ -1192,7 +1198,7 @@
//-----------------------------------------------------------------------
/**
- * Returns a copy of this {@code LocalDateTime} with the specified period in years added.
+ * Returns a copy of this {@code LocalDateTime} with the specified number of years added.
* <p>
* This method adds the specified amount to the years field in three steps:
* <ol>
@@ -1217,7 +1223,7 @@
}
/**
- * Returns a copy of this {@code LocalDateTime} with the specified period in months added.
+ * Returns a copy of this {@code LocalDateTime} with the specified number of months added.
* <p>
* This method adds the specified amount to the months field in three steps:
* <ol>
@@ -1242,7 +1248,7 @@
}
/**
- * Returns a copy of this {@code LocalDateTime} with the specified period in weeks added.
+ * Returns a copy of this {@code LocalDateTime} with the specified number of weeks added.
* <p>
* This method adds the specified amount in weeks to the days field incrementing
* the month and year fields as necessary to ensure the result remains valid.
@@ -1262,7 +1268,7 @@
}
/**
- * Returns a copy of this {@code LocalDateTime} with the specified period in days added.
+ * Returns a copy of this {@code LocalDateTime} with the specified number of days added.
* <p>
* This method adds the specified amount to the days field incrementing the
* month and year fields as necessary to ensure the result remains valid.
@@ -1283,7 +1289,7 @@
//-----------------------------------------------------------------------
/**
- * Returns a copy of this {@code LocalDateTime} with the specified period in hours added.
+ * Returns a copy of this {@code LocalDateTime} with the specified number of hours added.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1296,7 +1302,7 @@
}
/**
- * Returns a copy of this {@code LocalDateTime} with the specified period in minutes added.
+ * Returns a copy of this {@code LocalDateTime} with the specified number of minutes added.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1309,7 +1315,7 @@
}
/**
- * Returns a copy of this {@code LocalDateTime} with the specified period in seconds added.
+ * Returns a copy of this {@code LocalDateTime} with the specified number of seconds added.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1322,7 +1328,7 @@
}
/**
- * Returns a copy of this {@code LocalDateTime} with the specified period in nanoseconds added.
+ * Returns a copy of this {@code LocalDateTime} with the specified number of nanoseconds added.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1391,7 +1397,7 @@
//-----------------------------------------------------------------------
/**
- * Returns a copy of this {@code LocalDateTime} with the specified period in years subtracted.
+ * Returns a copy of this {@code LocalDateTime} with the specified number of years subtracted.
* <p>
* This method subtracts the specified amount from the years field in three steps:
* <ol>
@@ -1415,7 +1421,7 @@
}
/**
- * Returns a copy of this {@code LocalDateTime} with the specified period in months subtracted.
+ * Returns a copy of this {@code LocalDateTime} with the specified number of months subtracted.
* <p>
* This method subtracts the specified amount from the months field in three steps:
* <ol>
@@ -1439,7 +1445,7 @@
}
/**
- * Returns a copy of this {@code LocalDateTime} with the specified period in weeks subtracted.
+ * Returns a copy of this {@code LocalDateTime} with the specified number of weeks subtracted.
* <p>
* This method subtracts the specified amount in weeks from the days field decrementing
* the month and year fields as necessary to ensure the result remains valid.
@@ -1458,9 +1464,9 @@
}
/**
- * Returns a copy of this {@code LocalDateTime} with the specified period in days subtracted.
+ * Returns a copy of this {@code LocalDateTime} with the specified number of days subtracted.
* <p>
- * This method subtracts the specified amount from the days field incrementing the
+ * This method subtracts the specified amount from the days field decrementing the
* month and year fields as necessary to ensure the result remains valid.
* The result is only invalid if the maximum/minimum year is exceeded.
* <p>
@@ -1478,7 +1484,7 @@
//-----------------------------------------------------------------------
/**
- * Returns a copy of this {@code LocalDateTime} with the specified period in hours subtracted.
+ * Returns a copy of this {@code LocalDateTime} with the specified number of hours subtracted.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1491,7 +1497,7 @@
}
/**
- * Returns a copy of this {@code LocalDateTime} with the specified period in minutes subtracted.
+ * Returns a copy of this {@code LocalDateTime} with the specified number of minutes subtracted.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1504,7 +1510,7 @@
}
/**
- * Returns a copy of this {@code LocalDateTime} with the specified period in seconds subtracted.
+ * Returns a copy of this {@code LocalDateTime} with the specified number of seconds subtracted.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1517,7 +1523,7 @@
}
/**
- * Returns a copy of this {@code LocalDateTime} with the specified period in nanoseconds subtracted.
+ * Returns a copy of this {@code LocalDateTime} with the specified number of nanoseconds subtracted.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1575,7 +1581,7 @@
* what the result of this method will be.
* <p>
* The result of this method is obtained by invoking the
- * {@link java.time.temporal.TemporalQuery#queryFrom(TemporalAccessor)} method on the
+ * {@link TemporalQuery#queryFrom(TemporalAccessor)} method on the
* specified query passing {@code this} as the argument.
*
* @param <R> the type of the result
--- a/jdk/src/share/classes/java/time/LocalTime.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/LocalTime.java Tue May 06 12:20:29 2014 +0100
@@ -93,7 +93,7 @@
import java.util.Objects;
/**
- * A time without time-zone in the ISO-8601 calendar system,
+ * A time without a time-zone in the ISO-8601 calendar system,
* such as {@code 10:15:30}.
* <p>
* {@code LocalTime} is an immutable date-time object that represents a time,
@@ -101,7 +101,7 @@
* Time is represented to nanosecond precision.
* For example, the value "13:45.30.123456789" can be stored in a {@code LocalTime}.
* <p>
- * It does not store or represent a date or time-zone.
+ * This class does not store or represent a date or time-zone.
* Instead, it is a description of the local time as seen on a wall clock.
* It cannot represent an instant on the time-line without additional information
* such as an offset or time-zone.
@@ -280,7 +280,7 @@
return ofNanoOfDay(secsOfDay * NANOS_PER_SECOND + now.getNano());
}
- //------------------------get-----------------------------------------------
+ //-----------------------------------------------------------------------
/**
* Obtains an instance of {@code LocalTime} from an hour and minute.
* <p>
@@ -395,7 +395,7 @@
* on extracting the {@link ChronoField#NANO_OF_DAY NANO_OF_DAY} field.
* <p>
* This method matches the signature of the functional interface {@link TemporalQuery}
- * allowing it to be used in queries via method reference, {@code LocalTime::from}.
+ * allowing it to be used as a query via method reference, {@code LocalTime::from}.
*
* @param temporal the temporal object to convert, not null
* @return the local time, not null
@@ -418,7 +418,7 @@
* The string must represent a valid time and is parsed using
* {@link java.time.format.DateTimeFormatter#ISO_LOCAL_TIME}.
*
- * @param text the text to parse such as "10:15:30", not null
+ * @param text the text to parse such as "10:15:30", not null
* @return the parsed local time, not null
* @throws DateTimeParseException if the text cannot be parsed
*/
@@ -524,7 +524,7 @@
/**
* Checks if the specified unit is supported.
* <p>
- * This checks if the specified unit can be added to, or subtracted from, this date-time.
+ * This checks if the specified unit can be added to, or subtracted from, this time.
* If false, then calling the {@link #plus(long, TemporalUnit)} and
* {@link #minus(long, TemporalUnit) minus} methods will throw an exception.
* <p>
@@ -589,7 +589,7 @@
/**
* Gets the value of the specified field from this time as an {@code int}.
* <p>
- * This queries this time for the value for the specified field.
+ * This queries this time for the value of the specified field.
* The returned value will always be within the valid range of values for the field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
@@ -597,7 +597,7 @@
* If the field is a {@link ChronoField} then the query is implemented here.
* The {@link #isSupported(TemporalField) supported fields} will return valid
* values based on this time, except {@code NANO_OF_DAY} and {@code MICRO_OF_DAY}
- * which are too large to fit in an {@code int} and throw a {@code DateTimeException}.
+ * which are too large to fit in an {@code int} and throw a {@code UnsupportedTemporalTypeException}.
* All other {@code ChronoField} instances will throw an {@code UnsupportedTemporalTypeException}.
* <p>
* If the field is not a {@code ChronoField}, then the result of this method
@@ -624,7 +624,7 @@
/**
* Gets the value of the specified field from this time as a {@code long}.
* <p>
- * This queries this time for the value for the specified field.
+ * This queries this time for the value of the specified field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
* <p>
@@ -858,7 +858,7 @@
//-----------------------------------------------------------------------
/**
- * Returns a copy of this {@code LocalTime} with the hour-of-day value altered.
+ * Returns a copy of this {@code LocalTime} with the hour-of-day altered.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -875,7 +875,7 @@
}
/**
- * Returns a copy of this {@code LocalTime} with the minute-of-hour value altered.
+ * Returns a copy of this {@code LocalTime} with the minute-of-hour altered.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -892,7 +892,7 @@
}
/**
- * Returns a copy of this {@code LocalTime} with the second-of-minute value altered.
+ * Returns a copy of this {@code LocalTime} with the second-of-minute altered.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -909,7 +909,7 @@
}
/**
- * Returns a copy of this {@code LocalTime} with the nano-of-second value altered.
+ * Returns a copy of this {@code LocalTime} with the nano-of-second altered.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -929,7 +929,7 @@
/**
* Returns a copy of this {@code LocalTime} with the time truncated.
* <p>
- * Truncating the time returns a copy of the original time with fields
+ * Truncation returns a copy of the original time with fields
* smaller than the specified unit set to zero.
* For example, truncating with the {@link ChronoUnit#MINUTES minutes} unit
* will set the second-of-minute and nano-of-second field to zero.
@@ -1059,7 +1059,7 @@
//-----------------------------------------------------------------------
/**
- * Returns a copy of this {@code LocalTime} with the specified period in hours added.
+ * Returns a copy of this {@code LocalTime} with the specified number of hours added.
* <p>
* This adds the specified number of hours to this time, returning a new time.
* The calculation wraps around midnight.
@@ -1078,7 +1078,7 @@
}
/**
- * Returns a copy of this {@code LocalTime} with the specified period in minutes added.
+ * Returns a copy of this {@code LocalTime} with the specified number of minutes added.
* <p>
* This adds the specified number of minutes to this time, returning a new time.
* The calculation wraps around midnight.
@@ -1103,7 +1103,7 @@
}
/**
- * Returns a copy of this {@code LocalTime} with the specified period in seconds added.
+ * Returns a copy of this {@code LocalTime} with the specified number of seconds added.
* <p>
* This adds the specified number of seconds to this time, returning a new time.
* The calculation wraps around midnight.
@@ -1130,7 +1130,7 @@
}
/**
- * Returns a copy of this {@code LocalTime} with the specified period in nanoseconds added.
+ * Returns a copy of this {@code LocalTime} with the specified number of nanoseconds added.
* <p>
* This adds the specified number of nanoseconds to this time, returning a new time.
* The calculation wraps around midnight.
@@ -1208,7 +1208,7 @@
//-----------------------------------------------------------------------
/**
- * Returns a copy of this {@code LocalTime} with the specified period in hours subtracted.
+ * Returns a copy of this {@code LocalTime} with the specified number of hours subtracted.
* <p>
* This subtracts the specified number of hours from this time, returning a new time.
* The calculation wraps around midnight.
@@ -1223,7 +1223,7 @@
}
/**
- * Returns a copy of this {@code LocalTime} with the specified period in minutes subtracted.
+ * Returns a copy of this {@code LocalTime} with the specified number of minutes subtracted.
* <p>
* This subtracts the specified number of minutes from this time, returning a new time.
* The calculation wraps around midnight.
@@ -1238,7 +1238,7 @@
}
/**
- * Returns a copy of this {@code LocalTime} with the specified period in seconds subtracted.
+ * Returns a copy of this {@code LocalTime} with the specified number of seconds subtracted.
* <p>
* This subtracts the specified number of seconds from this time, returning a new time.
* The calculation wraps around midnight.
@@ -1253,7 +1253,7 @@
}
/**
- * Returns a copy of this {@code LocalTime} with the specified period in nanoseconds subtracted.
+ * Returns a copy of this {@code LocalTime} with the specified number of nanoseconds subtracted.
* <p>
* This subtracts the specified number of nanoseconds from this time, returning a new time.
* The calculation wraps around midnight.
@@ -1470,14 +1470,13 @@
//-----------------------------------------------------------------------
/**
- * Compares this {@code LocalTime} to another time.
+ * Compares this time to another time.
* <p>
* The comparison is based on the time-line position of the local times within a day.
* It is "consistent with equals", as defined by {@link Comparable}.
*
* @param other the other time to compare to, not null
* @return the comparator value, negative if less, positive if greater
- * @throws NullPointerException if {@code other} is null
*/
@Override
public int compareTo(LocalTime other) {
@@ -1495,26 +1494,24 @@
}
/**
- * Checks if this {@code LocalTime} is after the specified time.
+ * Checks if this time is after the specified time.
* <p>
* The comparison is based on the time-line position of the time within a day.
*
* @param other the other time to compare to, not null
* @return true if this is after the specified time
- * @throws NullPointerException if {@code other} is null
*/
public boolean isAfter(LocalTime other) {
return compareTo(other) > 0;
}
/**
- * Checks if this {@code LocalTime} is before the specified time.
+ * Checks if this time is before the specified time.
* <p>
* The comparison is based on the time-line position of the time within a day.
*
* @param other the other time to compare to, not null
* @return true if this point is before the specified time
- * @throws NullPointerException if {@code other} is null
*/
public boolean isBefore(LocalTime other) {
return compareTo(other) < 0;
--- a/jdk/src/share/classes/java/time/Month.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/Month.java Tue May 06 12:20:29 2014 +0100
@@ -202,7 +202,7 @@
* chronology, or can be converted to a {@code LocalDate}.
* <p>
* This method matches the signature of the functional interface {@link TemporalQuery}
- * allowing it to be used in queries via method reference, {@code Month::from}.
+ * allowing it to be used as a query via method reference, {@code Month::from}.
*
* @param temporal the temporal object to convert, not null
* @return the month-of-year, not null
@@ -315,7 +315,7 @@
/**
* Gets the value of the specified field from this month-of-year as an {@code int}.
* <p>
- * This queries this month for the value for the specified field.
+ * This queries this month for the value of the specified field.
* The returned value will always be within the valid range of values for the field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
@@ -348,7 +348,7 @@
/**
* Gets the value of the specified field from this month-of-year as a {@code long}.
* <p>
- * This queries this month for the value for the specified field.
+ * This queries this month for the value of the specified field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
* <p>
--- a/jdk/src/share/classes/java/time/MonthDay.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/MonthDay.java Tue May 06 12:20:29 2014 +0100
@@ -90,8 +90,8 @@
* A month-day in the ISO-8601 calendar system, such as {@code --12-03}.
* <p>
* {@code MonthDay} is an immutable date-time object that represents the combination
- * of a year and month. Any field that can be derived from a month and day, such as
- * quarter-of-year, can be obtained.
+ * of a month and day-of-month. Any field that can be derived from a month and day,
+ * such as quarter-of-year, can be obtained.
* <p>
* This class does not store or represent a year, time or time-zone.
* For example, the value "December 3rd" can be stored in a {@code MonthDay}.
@@ -154,7 +154,7 @@
/**
* Obtains the current month-day from the system clock in the default time-zone.
* <p>
- * This will query the {@link java.time.Clock#systemDefaultZone() system clock} in the default
+ * This will query the {@link Clock#systemDefaultZone() system clock} in the default
* time-zone to obtain the current month-day.
* <p>
* Using this method will prevent the ability to use an alternate clock for testing
@@ -169,7 +169,7 @@
/**
* Obtains the current month-day from the system clock in the specified time-zone.
* <p>
- * This will query the {@link Clock#system(java.time.ZoneId) system clock} to obtain the current month-day.
+ * This will query the {@link Clock#system(ZoneId) system clock} to obtain the current month-day.
* Specifying the time-zone avoids dependence on the default time-zone.
* <p>
* Using this method will prevent the ability to use an alternate clock for testing
@@ -258,7 +258,7 @@
* chronology, or can be converted to a {@code LocalDate}.
* <p>
* This method matches the signature of the functional interface {@link TemporalQuery}
- * allowing it to be used in queries via method reference, {@code MonthDay::from}.
+ * allowing it to be used as a query via method reference, {@code MonthDay::from}.
*
* @param temporal the temporal object to convert, not null
* @return the month-day, not null
@@ -389,7 +389,7 @@
/**
* Gets the value of the specified field from this month-day as an {@code int}.
* <p>
- * This queries this month-day for the value for the specified field.
+ * This queries this month-day for the value of the specified field.
* The returned value will always be within the valid range of values for the field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
@@ -420,7 +420,7 @@
/**
* Gets the value of the specified field from this month-day as a {@code long}.
* <p>
- * This queries this month-day for the value for the specified field.
+ * This queries this month-day for the value of the specified field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
* <p>
@@ -501,7 +501,7 @@
* This method checks whether this month and day and the input year form
* a valid date. This can only return false for February 29th.
*
- * @param year the year to validate, an out of range value returns false
+ * @param year the year to validate
* @return true if the year is valid for this month-day
* @see Year#isValidMonthDay(MonthDay)
*/
@@ -685,7 +685,7 @@
}
/**
- * Is this month-day after the specified month-day.
+ * Checks if this month-day is after the specified month-day.
*
* @param other the other month-day to compare to, not null
* @return true if this is after the specified month-day
@@ -695,7 +695,7 @@
}
/**
- * Is this month-day before the specified month-day.
+ * Checks if this month-day is before the specified month-day.
*
* @param other the other month-day to compare to, not null
* @return true if this point is before the specified month-day
--- a/jdk/src/share/classes/java/time/OffsetDateTime.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/OffsetDateTime.java Tue May 06 12:20:29 2014 +0100
@@ -199,7 +199,7 @@
/**
* Obtains the current date-time from the system clock in the default time-zone.
* <p>
- * This will query the {@link java.time.Clock#systemDefaultZone() system clock} in the default
+ * This will query the {@link Clock#systemDefaultZone() system clock} in the default
* time-zone to obtain the current date-time.
* The offset will be calculated from the time-zone in the clock.
* <p>
@@ -215,7 +215,7 @@
/**
* Obtains the current date-time from the system clock in the specified time-zone.
* <p>
- * This will query the {@link Clock#system(java.time.ZoneId) system clock} to obtain the current date-time.
+ * This will query the {@link Clock#system(ZoneId) system clock} to obtain the current date-time.
* Specifying the time-zone avoids dependence on the default time-zone.
* The offset will be calculated from the specified time-zone.
* <p>
@@ -345,7 +345,7 @@
* those fields that are equivalent to the relevant objects.
* <p>
* This method matches the signature of the functional interface {@link TemporalQuery}
- * allowing it to be used in queries via method reference, {@code OffsetDateTime::from}.
+ * allowing it to be used as a query via method reference, {@code OffsetDateTime::from}.
*
* @param temporal the temporal object to convert, not null
* @return the offset date-time, not null
@@ -566,7 +566,7 @@
/**
* Gets the value of the specified field from this date-time as an {@code int}.
* <p>
- * This queries this date-time for the value for the specified field.
+ * This queries this date-time for the value of the specified field.
* The returned value will always be within the valid range of values for the field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
@@ -575,7 +575,7 @@
* The {@link #isSupported(TemporalField) supported fields} will return valid
* values based on this date-time, except {@code NANO_OF_DAY}, {@code MICRO_OF_DAY},
* {@code EPOCH_DAY}, {@code PROLEPTIC_MONTH} and {@code INSTANT_SECONDS} which are too
- * large to fit in an {@code int} and throw a {@code DateTimeException}.
+ * large to fit in an {@code int} and throw a {@code UnsupportedTemporalTypeException}.
* All other {@code ChronoField} instances will throw an {@code UnsupportedTemporalTypeException}.
* <p>
* If the field is not a {@code ChronoField}, then the result of this method
@@ -608,7 +608,7 @@
/**
* Gets the value of the specified field from this date-time as a {@code long}.
* <p>
- * This queries this date-time for the value for the specified field.
+ * This queries this date-time for the value of the specified field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
* <p>
@@ -703,7 +703,7 @@
//-----------------------------------------------------------------------
/**
- * Gets the {@code LocalDateTime} part of this offset date-time.
+ * Gets the {@code LocalDateTime} part of this date-time.
* <p>
* This returns a {@code LocalDateTime} with the same year, month, day and time
* as this date-time.
@@ -795,10 +795,10 @@
/**
* Gets the day-of-week field, which is an enum {@code DayOfWeek}.
* <p>
- * This method returns the enum {@link java.time.DayOfWeek} for the day-of-week.
+ * This method returns the enum {@link DayOfWeek} for the day-of-week.
* This avoids confusion as to what {@code int} values mean.
* If you need access to the primitive {@code int} value then the enum
- * provides the {@link java.time.DayOfWeek#getValue() int value}.
+ * provides the {@link DayOfWeek#getValue() int value}.
* <p>
* Additional information can be obtained from the {@code DayOfWeek}.
* This includes textual names of the values.
@@ -868,7 +868,8 @@
* <p>
* A simple adjuster might simply set the one of the fields, such as the year field.
* A more complex adjuster might set the date to the last day of the month.
- * A selection of common adjustments is provided in {@link TemporalAdjuster}.
+ * A selection of common adjustments is provided in
+ * {@link java.time.temporal.TemporalAdjusters TemporalAdjusters}.
* These include finding the "last day of the month" and "next Wednesday".
* Key date-time classes also implement the {@code TemporalAdjuster} interface,
* such as {@link Month} and {@link java.time.MonthDay MonthDay}.
@@ -878,7 +879,7 @@
* For example this code returns a date on the last day of July:
* <pre>
* import static java.time.Month.*;
- * import static java.time.temporal.Adjusters.*;
+ * import static java.time.temporal.TemporalAdjusters.*;
*
* result = offsetDateTime.with(JULY).with(lastDayOfMonth());
* </pre>
@@ -920,7 +921,7 @@
/**
* Returns a copy of this date-time with the specified field set to a new value.
* <p>
- * TThis returns an {@code OffsetDateTime}, based on this one, with the value
+ * This returns an {@code OffsetDateTime}, based on this one, with the value
* for the specified field changed.
* This can be used to change any supported field, such as the year, month or day-of-month.
* If it is not possible to set the value, because the field is not supported or for
@@ -979,7 +980,8 @@
//-----------------------------------------------------------------------
/**
* Returns a copy of this {@code OffsetDateTime} with the year altered.
- * The offset does not affect the calculation and will be the same in the result.
+ * <p>
+ * The time and offset do not affect the calculation and will be the same in the result.
* If the day-of-month is invalid for the year, it will be changed to the last valid day of the month.
* <p>
* This instance is immutable and unaffected by this method call.
@@ -994,7 +996,8 @@
/**
* Returns a copy of this {@code OffsetDateTime} with the month-of-year altered.
- * The offset does not affect the calculation and will be the same in the result.
+ * <p>
+ * The time and offset do not affect the calculation and will be the same in the result.
* If the day-of-month is invalid for the year, it will be changed to the last valid day of the month.
* <p>
* This instance is immutable and unaffected by this method call.
@@ -1009,8 +1012,9 @@
/**
* Returns a copy of this {@code OffsetDateTime} with the day-of-month altered.
+ * <p>
* If the resulting {@code OffsetDateTime} is invalid, an exception is thrown.
- * The offset does not affect the calculation and will be the same in the result.
+ * The time and offset do not affect the calculation and will be the same in the result.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1025,6 +1029,8 @@
/**
* Returns a copy of this {@code OffsetDateTime} with the day-of-year altered.
+ * <p>
+ * The time and offset do not affect the calculation and will be the same in the result.
* If the resulting {@code OffsetDateTime} is invalid, an exception is thrown.
* <p>
* This instance is immutable and unaffected by this method call.
@@ -1040,9 +1046,9 @@
//-----------------------------------------------------------------------
/**
- * Returns a copy of this {@code OffsetDateTime} with the hour-of-day value altered.
+ * Returns a copy of this {@code OffsetDateTime} with the hour-of-day altered.
* <p>
- * The offset does not affect the calculation and will be the same in the result.
+ * The date and offset do not affect the calculation and will be the same in the result.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1055,9 +1061,9 @@
}
/**
- * Returns a copy of this {@code OffsetDateTime} with the minute-of-hour value altered.
+ * Returns a copy of this {@code OffsetDateTime} with the minute-of-hour altered.
* <p>
- * The offset does not affect the calculation and will be the same in the result.
+ * The date and offset do not affect the calculation and will be the same in the result.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1070,9 +1076,9 @@
}
/**
- * Returns a copy of this {@code OffsetDateTime} with the second-of-minute value altered.
+ * Returns a copy of this {@code OffsetDateTime} with the second-of-minute altered.
* <p>
- * The offset does not affect the calculation and will be the same in the result.
+ * The date and offset do not affect the calculation and will be the same in the result.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1085,15 +1091,15 @@
}
/**
- * Returns a copy of this {@code OffsetDateTime} with the nano-of-second value altered.
+ * Returns a copy of this {@code OffsetDateTime} with the nano-of-second altered.
* <p>
- * The offset does not affect the calculation and will be the same in the result.
+ * The date and offset do not affect the calculation and will be the same in the result.
* <p>
* This instance is immutable and unaffected by this method call.
*
* @param nanoOfSecond the nano-of-second to set in the result, from 0 to 999,999,999
* @return an {@code OffsetDateTime} based on this date-time with the requested nanosecond, not null
- * @throws DateTimeException if the nanos value is invalid
+ * @throws DateTimeException if the nano value is invalid
*/
public OffsetDateTime withNano(int nanoOfSecond) {
return with(dateTime.withNano(nanoOfSecond), offset);
@@ -1187,7 +1193,7 @@
//-----------------------------------------------------------------------
/**
- * Returns a copy of this {@code OffsetDateTime} with the specified period in years added.
+ * Returns a copy of this {@code OffsetDateTime} with the specified number of years added.
* <p>
* This method adds the specified amount to the years field in three steps:
* <ol>
@@ -1211,7 +1217,7 @@
}
/**
- * Returns a copy of this {@code OffsetDateTime} with the specified period in months added.
+ * Returns a copy of this {@code OffsetDateTime} with the specified number of months added.
* <p>
* This method adds the specified amount to the months field in three steps:
* <ol>
@@ -1235,13 +1241,13 @@
}
/**
- * Returns a copy of this OffsetDateTime with the specified period in weeks added.
+ * Returns a copy of this OffsetDateTime with the specified number of weeks added.
* <p>
* This method adds the specified amount in weeks to the days field incrementing
* the month and year fields as necessary to ensure the result remains valid.
* The result is only invalid if the maximum/minimum year is exceeded.
* <p>
- * For example, 2008-12-31 plus one week would result in the 2009-01-07.
+ * For example, 2008-12-31 plus one week would result in 2009-01-07.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1254,13 +1260,13 @@
}
/**
- * Returns a copy of this OffsetDateTime with the specified period in days added.
+ * Returns a copy of this OffsetDateTime with the specified number of days added.
* <p>
* This method adds the specified amount to the days field incrementing the
* month and year fields as necessary to ensure the result remains valid.
* The result is only invalid if the maximum/minimum year is exceeded.
* <p>
- * For example, 2008-12-31 plus one day would result in the 2009-01-01.
+ * For example, 2008-12-31 plus one day would result in 2009-01-01.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1273,7 +1279,7 @@
}
/**
- * Returns a copy of this {@code OffsetDateTime} with the specified period in hours added.
+ * Returns a copy of this {@code OffsetDateTime} with the specified number of hours added.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1286,7 +1292,7 @@
}
/**
- * Returns a copy of this {@code OffsetDateTime} with the specified period in minutes added.
+ * Returns a copy of this {@code OffsetDateTime} with the specified number of minutes added.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1299,7 +1305,7 @@
}
/**
- * Returns a copy of this {@code OffsetDateTime} with the specified period in seconds added.
+ * Returns a copy of this {@code OffsetDateTime} with the specified number of seconds added.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1312,7 +1318,7 @@
}
/**
- * Returns a copy of this {@code OffsetDateTime} with the specified period in nanoseconds added.
+ * Returns a copy of this {@code OffsetDateTime} with the specified number of nanoseconds added.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1376,11 +1382,11 @@
//-----------------------------------------------------------------------
/**
- * Returns a copy of this {@code OffsetDateTime} with the specified period in years subtracted.
+ * Returns a copy of this {@code OffsetDateTime} with the specified number of years subtracted.
* <p>
* This method subtracts the specified amount from the years field in three steps:
* <ol>
- * <li>Subtract the input years to the year field</li>
+ * <li>Subtract the input years from the year field</li>
* <li>Check if the resulting date would be invalid</li>
* <li>Adjust the day-of-month to the last valid day if necessary</li>
* </ol>
@@ -1400,11 +1406,11 @@
}
/**
- * Returns a copy of this {@code OffsetDateTime} with the specified period in months subtracted.
+ * Returns a copy of this {@code OffsetDateTime} with the specified number of months subtracted.
* <p>
* This method subtracts the specified amount from the months field in three steps:
* <ol>
- * <li>Subtract the input months to the month-of-year field</li>
+ * <li>Subtract the input months from the month-of-year field</li>
* <li>Check if the resulting date would be invalid</li>
* <li>Adjust the day-of-month to the last valid day if necessary</li>
* </ol>
@@ -1424,13 +1430,13 @@
}
/**
- * Returns a copy of this {@code OffsetDateTime} with the specified period in weeks subtracted.
+ * Returns a copy of this {@code OffsetDateTime} with the specified number of weeks subtracted.
* <p>
* This method subtracts the specified amount in weeks from the days field decrementing
* the month and year fields as necessary to ensure the result remains valid.
* The result is only invalid if the maximum/minimum year is exceeded.
* <p>
- * For example, 2008-12-31 minus one week would result in the 2009-01-07.
+ * For example, 2008-12-31 minus one week would result in 2009-01-07.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1443,13 +1449,13 @@
}
/**
- * Returns a copy of this {@code OffsetDateTime} with the specified period in days subtracted.
+ * Returns a copy of this {@code OffsetDateTime} with the specified number of days subtracted.
* <p>
- * This method subtracts the specified amount from the days field incrementing the
+ * This method subtracts the specified amount from the days field decrementing the
* month and year fields as necessary to ensure the result remains valid.
* The result is only invalid if the maximum/minimum year is exceeded.
* <p>
- * For example, 2008-12-31 minus one day would result in the 2009-01-01.
+ * For example, 2008-12-31 minus one day would result in 2009-01-01.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1462,7 +1468,7 @@
}
/**
- * Returns a copy of this {@code OffsetDateTime} with the specified period in hours subtracted.
+ * Returns a copy of this {@code OffsetDateTime} with the specified number of hours subtracted.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1475,7 +1481,7 @@
}
/**
- * Returns a copy of this {@code OffsetDateTime} with the specified period in minutes subtracted.
+ * Returns a copy of this {@code OffsetDateTime} with the specified number of minutes subtracted.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1488,7 +1494,7 @@
}
/**
- * Returns a copy of this {@code OffsetDateTime} with the specified period in seconds subtracted.
+ * Returns a copy of this {@code OffsetDateTime} with the specified number of seconds subtracted.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1501,7 +1507,7 @@
}
/**
- * Returns a copy of this {@code OffsetDateTime} with the specified period in nanoseconds subtracted.
+ * Returns a copy of this {@code OffsetDateTime} with the specified number of nanoseconds subtracted.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1598,7 +1604,7 @@
* objects in terms of a single {@code TemporalUnit}.
* The start and end points are {@code this} and the specified date-time.
* The result will be negative if the end is before the start.
- * For example, the period in days between two date-times can be calculated
+ * For example, the amount in days between two date-times can be calculated
* using {@code startDateTime.until(endDateTime, DAYS)}.
* <p>
* The {@code Temporal} passed to this method is converted to a
@@ -1608,7 +1614,7 @@
* <p>
* The calculation returns a whole number, representing the number of
* complete units between the two date-times.
- * For example, the period in months between 2012-06-15T00:00Z and 2012-08-14T23:59Z
+ * For example, the amount in months between 2012-06-15T00:00Z and 2012-08-14T23:59Z
* will only be one month as it is one minute short of two months.
* <p>
* There are two equivalent ways of using this method.
@@ -1769,7 +1775,7 @@
//-----------------------------------------------------------------------
/**
- * Compares this {@code OffsetDateTime} to another date-time.
+ * Compares this date-time to another date-time.
* <p>
* The comparison is based on the instant then on the local date-time.
* It is "consistent with equals", as defined by {@link Comparable}.
--- a/jdk/src/share/classes/java/time/OffsetTime.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/OffsetTime.java Tue May 06 12:20:29 2014 +0100
@@ -153,14 +153,14 @@
/**
* Obtains the current time from the system clock in the default time-zone.
* <p>
- * This will query the {@link java.time.Clock#systemDefaultZone() system clock} in the default
+ * This will query the {@link Clock#systemDefaultZone() system clock} in the default
* time-zone to obtain the current time.
* The offset will be calculated from the time-zone in the clock.
* <p>
* Using this method will prevent the ability to use an alternate clock for testing
* because the clock is hard-coded.
*
- * @return the current time using the system clock, not null
+ * @return the current time using the system clock and default time-zone, not null
*/
public static OffsetTime now() {
return now(Clock.systemDefaultZone());
@@ -169,7 +169,7 @@
/**
* Obtains the current time from the system clock in the specified time-zone.
* <p>
- * This will query the {@link Clock#system(java.time.ZoneId) system clock} to obtain the current time.
+ * This will query the {@link Clock#system(ZoneId) system clock} to obtain the current time.
* Specifying the time-zone avoids dependence on the default time-zone.
* The offset will be calculated from the specified time-zone.
* <p>
@@ -277,7 +277,7 @@
* those fields that are equivalent to the relevant objects.
* <p>
* This method matches the signature of the functional interface {@link TemporalQuery}
- * allowing it to be used in queries via method reference, {@code OffsetTime::from}.
+ * allowing it to be used as a query via method reference, {@code OffsetTime::from}.
*
* @param temporal the temporal object to convert, not null
* @return the offset time, not null
@@ -402,7 +402,7 @@
/**
* Checks if the specified unit is supported.
* <p>
- * This checks if the specified unit can be added to, or subtracted from, this date-time.
+ * This checks if the specified unit can be added to, or subtracted from, this offset-time.
* If false, then calling the {@link #plus(long, TemporalUnit)} and
* {@link #minus(long, TemporalUnit) minus} methods will throw an exception.
* <p>
@@ -473,7 +473,7 @@
/**
* Gets the value of the specified field from this time as an {@code int}.
* <p>
- * This queries this time for the value for the specified field.
+ * This queries this time for the value of the specified field.
* The returned value will always be within the valid range of values for the field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
@@ -481,7 +481,7 @@
* If the field is a {@link ChronoField} then the query is implemented here.
* The {@link #isSupported(TemporalField) supported fields} will return valid
* values based on this time, except {@code NANO_OF_DAY} and {@code MICRO_OF_DAY}
- * which are too large to fit in an {@code int} and throw a {@code DateTimeException}.
+ * which are too large to fit in an {@code int} and throw a {@code UnsupportedTemporalTypeException}.
* All other {@code ChronoField} instances will throw an {@code UnsupportedTemporalTypeException}.
* <p>
* If the field is not a {@code ChronoField}, then the result of this method
@@ -505,7 +505,7 @@
/**
* Gets the value of the specified field from this time as a {@code long}.
* <p>
- * This queries this time for the value for the specified field.
+ * This queries this time for the value of the specified field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
* <p>
@@ -575,7 +575,7 @@
* <p>
* This method returns an object with the specified {@code ZoneOffset} and a {@code LocalTime}
* adjusted by the difference between the two offsets.
- * This will result in the old and new objects representing the same instant an an implied day.
+ * This will result in the old and new objects representing the same instant on an implied day.
* This is useful for finding the local time in a different offset.
* For example, if this time represents {@code 10:30+02:00} and the offset specified is
* {@code +03:00}, then this method will return {@code 11:30+03:00}.
@@ -737,7 +737,7 @@
//-----------------------------------------------------------------------
/**
- * Returns a copy of this {@code OffsetTime} with the hour-of-day value altered.
+ * Returns a copy of this {@code OffsetTime} with the hour-of-day altered.
* <p>
* The offset does not affect the calculation and will be the same in the result.
* <p>
@@ -752,7 +752,7 @@
}
/**
- * Returns a copy of this {@code OffsetTime} with the minute-of-hour value altered.
+ * Returns a copy of this {@code OffsetTime} with the minute-of-hour altered.
* <p>
* The offset does not affect the calculation and will be the same in the result.
* <p>
@@ -767,7 +767,7 @@
}
/**
- * Returns a copy of this {@code OffsetTime} with the second-of-minute value altered.
+ * Returns a copy of this {@code OffsetTime} with the second-of-minute altered.
* <p>
* The offset does not affect the calculation and will be the same in the result.
* <p>
@@ -782,7 +782,7 @@
}
/**
- * Returns a copy of this {@code OffsetTime} with the nano-of-second value altered.
+ * Returns a copy of this {@code OffsetTime} with the nano-of-second altered.
* <p>
* The offset does not affect the calculation and will be the same in the result.
* <p>
@@ -884,7 +884,7 @@
//-----------------------------------------------------------------------
/**
- * Returns a copy of this {@code OffsetTime} with the specified period in hours added.
+ * Returns a copy of this {@code OffsetTime} with the specified number of hours added.
* <p>
* This adds the specified number of hours to this time, returning a new time.
* The calculation wraps around midnight.
@@ -899,7 +899,7 @@
}
/**
- * Returns a copy of this {@code OffsetTime} with the specified period in minutes added.
+ * Returns a copy of this {@code OffsetTime} with the specified number of minutes added.
* <p>
* This adds the specified number of minutes to this time, returning a new time.
* The calculation wraps around midnight.
@@ -914,7 +914,7 @@
}
/**
- * Returns a copy of this {@code OffsetTime} with the specified period in seconds added.
+ * Returns a copy of this {@code OffsetTime} with the specified number of seconds added.
* <p>
* This adds the specified number of seconds to this time, returning a new time.
* The calculation wraps around midnight.
@@ -929,7 +929,7 @@
}
/**
- * Returns a copy of this {@code OffsetTime} with the specified period in nanoseconds added.
+ * Returns a copy of this {@code OffsetTime} with the specified number of nanoseconds added.
* <p>
* This adds the specified number of nanoseconds to this time, returning a new time.
* The calculation wraps around midnight.
@@ -995,7 +995,7 @@
//-----------------------------------------------------------------------
/**
- * Returns a copy of this {@code OffsetTime} with the specified period in hours subtracted.
+ * Returns a copy of this {@code OffsetTime} with the specified number of hours subtracted.
* <p>
* This subtracts the specified number of hours from this time, returning a new time.
* The calculation wraps around midnight.
@@ -1010,7 +1010,7 @@
}
/**
- * Returns a copy of this {@code OffsetTime} with the specified period in minutes subtracted.
+ * Returns a copy of this {@code OffsetTime} with the specified number of minutes subtracted.
* <p>
* This subtracts the specified number of minutes from this time, returning a new time.
* The calculation wraps around midnight.
@@ -1025,7 +1025,7 @@
}
/**
- * Returns a copy of this {@code OffsetTime} with the specified period in seconds subtracted.
+ * Returns a copy of this {@code OffsetTime} with the specified number of seconds subtracted.
* <p>
* This subtracts the specified number of seconds from this time, returning a new time.
* The calculation wraps around midnight.
@@ -1040,7 +1040,7 @@
}
/**
- * Returns a copy of this {@code OffsetTime} with the specified period in nanoseconds subtracted.
+ * Returns a copy of this {@code OffsetTime} with the specified number of nanoseconds subtracted.
* <p>
* This subtracts the specified number of nanoseconds from this time, returning a new time.
* The calculation wraps around midnight.
@@ -1130,7 +1130,7 @@
* objects in terms of a single {@code TemporalUnit}.
* The start and end points are {@code this} and the specified time.
* The result will be negative if the end is before the start.
- * For example, the period in hours between two times can be calculated
+ * For example, the amount in hours between two times can be calculated
* using {@code startTime.until(endTime, HOURS)}.
* <p>
* The {@code Temporal} passed to this method is converted to a
@@ -1140,7 +1140,7 @@
* <p>
* The calculation returns a whole number, representing the number of
* complete units between the two times.
- * For example, the period in hours between 11:30Z and 13:29Z will only
+ * For example, the amount in hours between 11:30Z and 13:29Z will only
* be one hour as it is one minute short of two hours.
* <p>
* There are two equivalent ways of using this method.
@@ -1165,7 +1165,7 @@
* <p>
* This instance is immutable and unaffected by this method call.
*
- * @param endExclusive the end date, exclusive, which is converted to an {@code OffsetTime}, not null
+ * @param endExclusive the end time, exclusive, which is converted to an {@code OffsetTime}, not null
* @param unit the unit to measure the amount in, not null
* @return the amount of time between this time and the end time
* @throws DateTimeException if the amount cannot be calculated, or the end
@@ -1258,7 +1258,6 @@
*
* @param other the other time to compare to, not null
* @return the comparator value, negative if less, positive if greater
- * @throws NullPointerException if {@code other} is null
*/
@Override
public int compareTo(OffsetTime other) {
--- a/jdk/src/share/classes/java/time/Period.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/Period.java Tue May 06 12:20:29 2014 +0100
@@ -616,7 +616,7 @@
* <p>
* This instance is immutable and unaffected by this method call.
*
- * @param amountToAdd the period to add, not null
+ * @param amountToAdd the amount to add, not null
* @return a {@code Period} based on this period with the requested period added, not null
* @throws DateTimeException if the specified amount has a non-ISO chronology or
* contains an invalid unit
@@ -705,7 +705,7 @@
* <p>
* This instance is immutable and unaffected by this method call.
*
- * @param amountToSubtract the period to subtract, not null
+ * @param amountToSubtract the amount to subtract, not null
* @return a {@code Period} based on this period with the requested period subtracted, not null
* @throws DateTimeException if the specified amount has a non-ISO chronology or
* contains an invalid unit
--- a/jdk/src/share/classes/java/time/Year.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/Year.java Tue May 06 12:20:29 2014 +0100
@@ -164,7 +164,7 @@
/**
* Obtains the current year from the system clock in the default time-zone.
* <p>
- * This will query the {@link java.time.Clock#systemDefaultZone() system clock} in the default
+ * This will query the {@link Clock#systemDefaultZone() system clock} in the default
* time-zone to obtain the current year.
* <p>
* Using this method will prevent the ability to use an alternate clock for testing
@@ -179,7 +179,7 @@
/**
* Obtains the current year from the system clock in the specified time-zone.
* <p>
- * This will query the {@link Clock#system(java.time.ZoneId) system clock} to obtain the current year.
+ * This will query the {@link Clock#system(ZoneId) system clock} to obtain the current year.
* Specifying the time-zone avoids dependence on the default time-zone.
* <p>
* Using this method will prevent the ability to use an alternate clock for testing
@@ -240,7 +240,7 @@
* chronology, or can be converted to a {@code LocalDate}.
* <p>
* This method matches the signature of the functional interface {@link TemporalQuery}
- * allowing it to be used in queries via method reference, {@code Year::from}.
+ * allowing it to be used as a query via method reference, {@code Year::from}.
*
* @param temporal the temporal object to convert, not null
* @return the year, not null
@@ -375,7 +375,7 @@
/**
* Checks if the specified unit is supported.
* <p>
- * This checks if the specified unit can be added to, or subtracted from, this date-time.
+ * This checks if the specified unit can be added to, or subtracted from, this year.
* If false, then calling the {@link #plus(long, TemporalUnit)} and
* {@link #minus(long, TemporalUnit) minus} methods will throw an exception.
* <p>
@@ -441,7 +441,7 @@
/**
* Gets the value of the specified field from this year as an {@code int}.
* <p>
- * This queries this year for the value for the specified field.
+ * This queries this year for the value of the specified field.
* The returned value will always be within the valid range of values for the field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
@@ -472,7 +472,7 @@
/**
* Gets the value of the specified field from this year as a {@code long}.
* <p>
- * This queries this year for the value for the specified field.
+ * This queries this year for the value of the specified field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
* <p>
@@ -720,13 +720,13 @@
}
/**
- * Returns a copy of this year with the specified number of years added.
+ * Returns a copy of this {@code Year} with the specified number of years added.
* <p>
* This instance is immutable and unaffected by this method call.
*
* @param yearsToAdd the years to add, may be negative
- * @return a {@code Year} based on this year with the period added, not null
- * @throws DateTimeException if the result exceeds the supported year range
+ * @return a {@code Year} based on this year with the years added, not null
+ * @throws DateTimeException if the result exceeds the supported range
*/
public Year plusYears(long yearsToAdd) {
if (yearsToAdd == 0) {
@@ -786,13 +786,13 @@
}
/**
- * Returns a copy of this year with the specified number of years subtracted.
+ * Returns a copy of this {@code Year} with the specified number of years subtracted.
* <p>
* This instance is immutable and unaffected by this method call.
*
* @param yearsToSubtract the years to subtract, may be negative
- * @return a {@code Year} based on this year with the period subtracted, not null
- * @throws DateTimeException if the result exceeds the supported year range
+ * @return a {@code Year} based on this year with the year subtracted, not null
+ * @throws DateTimeException if the result exceeds the supported range
*/
public Year minusYears(long yearsToSubtract) {
return (yearsToSubtract == Long.MIN_VALUE ? plusYears(Long.MAX_VALUE).plusYears(1) : plusYears(-yearsToSubtract));
@@ -871,12 +871,12 @@
* The result will be negative if the end is before the start.
* The {@code Temporal} passed to this method is converted to a
* {@code Year} using {@link #from(TemporalAccessor)}.
- * For example, the period in decades between two year can be calculated
+ * For example, the amount in decades between two year can be calculated
* using {@code startYear.until(endYear, DECADES)}.
* <p>
* The calculation returns a whole number, representing the number of
* complete units between the two years.
- * For example, the period in decades between 2012 and 2031
+ * For example, the amount in decades between 2012 and 2031
* will only be one decade as it is one year short of two decades.
* <p>
* There are two equivalent ways of using this method.
@@ -948,7 +948,7 @@
* <p>
* The day-of-year value 366 is only valid in a leap year.
*
- * @param dayOfYear the day-of-year to use, not null
+ * @param dayOfYear the day-of-year to use, from 1 to 365-366
* @return the local date formed from this year and the specified date of year, not null
* @throws DateTimeException if the day of year is zero or less, 366 or greater or equal
* to 366 and this is not a leap year
@@ -1025,7 +1025,7 @@
}
/**
- * Is this year after the specified year.
+ * Checks if this year is after the specified year.
*
* @param other the other year to compare to, not null
* @return true if this is after the specified year
@@ -1035,7 +1035,7 @@
}
/**
- * Is this year before the specified year.
+ * Checks if this year is before the specified year.
*
* @param other the other year to compare to, not null
* @return true if this point is before the specified year
--- a/jdk/src/share/classes/java/time/YearMonth.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/YearMonth.java Tue May 06 12:20:29 2014 +0100
@@ -157,9 +157,8 @@
/**
* Obtains the current year-month from the system clock in the default time-zone.
* <p>
- * This will query the {@link java.time.Clock#systemDefaultZone() system clock} in the default
+ * This will query the {@link Clock#systemDefaultZone() system clock} in the default
* time-zone to obtain the current year-month.
- * The zone and offset will be set based on the time-zone in the clock.
* <p>
* Using this method will prevent the ability to use an alternate clock for testing
* because the clock is hard-coded.
@@ -173,7 +172,7 @@
/**
* Obtains the current year-month from the system clock in the specified time-zone.
* <p>
- * This will query the {@link Clock#system(java.time.ZoneId) system clock} to obtain the current year-month.
+ * This will query the {@link Clock#system(ZoneId) system clock} to obtain the current year-month.
* Specifying the time-zone avoids dependence on the default time-zone.
* <p>
* Using this method will prevent the ability to use an alternate clock for testing
@@ -243,7 +242,7 @@
* chronology, or can be converted to a {@code LocalDate}.
* <p>
* This method matches the signature of the functional interface {@link TemporalQuery}
- * allowing it to be used in queries via method reference, {@code YearMonth::from}.
+ * allowing it to be used as a query via method reference, {@code YearMonth::from}.
*
* @param temporal the temporal object to convert, not null
* @return the year-month, not null
@@ -363,7 +362,7 @@
/**
* Checks if the specified unit is supported.
* <p>
- * This checks if the specified unit can be added to, or subtracted from, this date-time.
+ * This checks if the specified unit can be added to, or subtracted from, this year-month.
* If false, then calling the {@link #plus(long, TemporalUnit)} and
* {@link #minus(long, TemporalUnit) minus} methods will throw an exception.
* <p>
@@ -430,7 +429,7 @@
/**
* Gets the value of the specified field from this year-month as an {@code int}.
* <p>
- * This queries this year-month for the value for the specified field.
+ * This queries this year-month for the value of the specified field.
* The returned value will always be within the valid range of values for the field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
@@ -462,7 +461,7 @@
/**
* Gets the value of the specified field from this year-month as a {@code long}.
* <p>
- * This queries this year-month for the value for the specified field.
+ * This queries this year-month for the value of the specified field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
* <p>
@@ -819,7 +818,7 @@
}
/**
- * Returns a copy of this year-month with the specified period in years added.
+ * Returns a copy of this {@code YearMonth} with the specified number of years added.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -836,7 +835,7 @@
}
/**
- * Returns a copy of this year-month with the specified period in months added.
+ * Returns a copy of this {@code YearMonth} with the specified number of months added.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -906,7 +905,7 @@
}
/**
- * Returns a copy of this year-month with the specified period in years subtracted.
+ * Returns a copy of this {@code YearMonth} with the specified number of years subtracted.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -919,7 +918,7 @@
}
/**
- * Returns a copy of this year-month with the specified period in months subtracted.
+ * Returns a copy of this {@code YearMonth} with the specified number of months subtracted.
* <p>
* This instance is immutable and unaffected by this method call.
*
@@ -1004,12 +1003,12 @@
* The result will be negative if the end is before the start.
* The {@code Temporal} passed to this method is converted to a
* {@code YearMonth} using {@link #from(TemporalAccessor)}.
- * For example, the period in years between two year-months can be calculated
+ * For example, the amount in years between two year-months can be calculated
* using {@code startYearMonth.until(endYearMonth, YEARS)}.
* <p>
* The calculation returns a whole number, representing the number of
* complete units between the two year-months.
- * For example, the period in decades between 2012-06 and 2032-05
+ * For example, the amount in decades between 2012-06 and 2032-05
* will only be one decade as it is one month short of two decades.
* <p>
* There are two equivalent ways of using this method.
@@ -1134,7 +1133,7 @@
}
/**
- * Is this year-month after the specified year-month.
+ * Checks if this year-month is after the specified year-month.
*
* @param other the other year-month to compare to, not null
* @return true if this is after the specified year-month
@@ -1144,7 +1143,7 @@
}
/**
- * Is this year-month before the specified year-month.
+ * Checks if this year-month is before the specified year-month.
*
* @param other the other year-month to compare to, not null
* @return true if this point is before the specified year-month
--- a/jdk/src/share/classes/java/time/ZoneId.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/ZoneId.java Tue May 06 12:20:29 2014 +0100
@@ -453,7 +453,7 @@
* zones over offset-based zones using {@link TemporalQueries#zone()}.
* <p>
* This method matches the signature of the functional interface {@link TemporalQuery}
- * allowing it to be used in queries via method reference, {@code ZoneId::from}.
+ * allowing it to be used as a query via method reference, {@code ZoneId::from}.
*
* @param temporal the temporal object to convert, not null
* @return the zone ID, not null
--- a/jdk/src/share/classes/java/time/ZoneOffset.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/ZoneOffset.java Tue May 06 12:20:29 2014 +0100
@@ -89,7 +89,7 @@
/**
* A time-zone offset from Greenwich/UTC, such as {@code +02:00}.
* <p>
- * A time-zone offset is the period of time that a time-zone differs from Greenwich/UTC.
+ * A time-zone offset is the amount of time that a time-zone differs from Greenwich/UTC.
* This is usually a fixed number of hours and minutes.
* <p>
* Different parts of the world have different time-zone offsets.
@@ -334,7 +334,7 @@
* on extracting the {@link ChronoField#OFFSET_SECONDS OFFSET_SECONDS} field.
* <p>
* This method matches the signature of the functional interface {@link TemporalQuery}
- * allowing it to be used in queries via method reference, {@code ZoneOffset::from}.
+ * allowing it to be used as a query via method reference, {@code ZoneOffset::from}.
*
* @param temporal the temporal object to convert, not null
* @return the zone-offset, not null
@@ -564,7 +564,7 @@
/**
* Gets the value of the specified field from this offset as an {@code int}.
* <p>
- * This queries this offset for the value for the specified field.
+ * This queries this offset for the value of the specified field.
* The returned value will always be within the valid range of values for the field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
@@ -599,7 +599,7 @@
/**
* Gets the value of the specified field from this offset as a {@code long}.
* <p>
- * This queries this offset for the value for the specified field.
+ * This queries this offset for the value of the specified field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
* <p>
--- a/jdk/src/share/classes/java/time/ZonedDateTime.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/ZonedDateTime.java Tue May 06 12:20:29 2014 +0100
@@ -418,7 +418,7 @@
* <p>
* Converting an instant to a zoned date-time is simple as there is only one valid
* offset for each instant. If the valid offset is different to the offset specified,
- * the the date-time and offset of the zoned date-time will differ from those specified.
+ * then the date-time and offset of the zoned date-time will differ from those specified.
* <p>
* If the {@code ZoneId} to be used is a {@code ZoneOffset}, this method is equivalent
* to {@link #of(LocalDateTime, ZoneId)}.
@@ -469,6 +469,7 @@
* @param offset the zone offset, not null
* @param zone the time-zone, not null
* @return the zoned date-time, not null
+ * @throws DateTimeException if the combination of arguments is invalid
*/
public static ZonedDateTime ofStrict(LocalDateTime localDateTime, ZoneOffset offset, ZoneId zone) {
Objects.requireNonNull(localDateTime, "localDateTime");
@@ -538,7 +539,7 @@
* those fields that are equivalent to the relevant objects.
* <p>
* This method matches the signature of the functional interface {@link TemporalQuery}
- * allowing it to be used in queries via method reference, {@code ZonedDateTime::from}.
+ * allowing it to be used as a query via method reference, {@code ZonedDateTime::from}.
*
* @param temporal the temporal object to convert, not null
* @return the zoned date-time, not null
@@ -782,7 +783,7 @@
/**
* Gets the value of the specified field from this date-time as an {@code int}.
* <p>
- * This queries this date-time for the value for the specified field.
+ * This queries this date-time for the value of the specified field.
* The returned value will always be within the valid range of values for the field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
@@ -791,7 +792,7 @@
* The {@link #isSupported(TemporalField) supported fields} will return valid
* values based on this date-time, except {@code NANO_OF_DAY}, {@code MICRO_OF_DAY},
* {@code EPOCH_DAY}, {@code PROLEPTIC_MONTH} and {@code INSTANT_SECONDS} which are too
- * large to fit in an {@code int} and throw a {@code DateTimeException}.
+ * large to fit in an {@code int} and throw a {@code UnsupportedTemporalTypeException}.
* All other {@code ChronoField} instances will throw an {@code UnsupportedTemporalTypeException}.
* <p>
* If the field is not a {@code ChronoField}, then the result of this method
@@ -824,7 +825,7 @@
/**
* Gets the value of the specified field from this date-time as a {@code long}.
* <p>
- * This queries this date-time for the value for the specified field.
+ * This queries this date-time for the value of the specified field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
* <p>
@@ -1182,7 +1183,8 @@
* <p>
* A simple adjuster might simply set the one of the fields, such as the year field.
* A more complex adjuster might set the date to the last day of the month.
- * A selection of common adjustments is provided in {@link TemporalAdjuster}.
+ * A selection of common adjustments is provided in
+ * {@link java.time.temporal.TemporalAdjusters TemporalAdjusters}.
* These include finding the "last day of the month" and "next Wednesday".
* Key date-time classes also implement the {@code TemporalAdjuster} interface,
* such as {@link Month} and {@link java.time.MonthDay MonthDay}.
@@ -1192,7 +1194,7 @@
* For example this code returns a date on the last day of July:
* <pre>
* import static java.time.Month.*;
- * import static java.time.temporal.Adjusters.*;
+ * import static java.time.temporal.TemporalAdjusters.*;
*
* result = zonedDateTime.with(JULY).with(lastDayOfMonth());
* </pre>
@@ -1313,7 +1315,7 @@
//-----------------------------------------------------------------------
/**
- * Returns a copy of this {@code ZonedDateTime} with the year value altered.
+ * Returns a copy of this {@code ZonedDateTime} with the year altered.
* <p>
* This operates on the local time-line,
* {@link LocalDateTime#withYear(int) changing the year} of the local date-time.
@@ -1335,7 +1337,7 @@
}
/**
- * Returns a copy of this {@code ZonedDateTime} with the month-of-year value altered.
+ * Returns a copy of this {@code ZonedDateTime} with the month-of-year altered.
* <p>
* This operates on the local time-line,
* {@link LocalDateTime#withMonth(int) changing the month} of the local date-time.
@@ -1357,7 +1359,7 @@
}
/**
- * Returns a copy of this {@code ZonedDateTime} with the day-of-month value altered.
+ * Returns a copy of this {@code ZonedDateTime} with the day-of-month altered.
* <p>
* This operates on the local time-line,
* {@link LocalDateTime#withDayOfMonth(int) changing the day-of-month} of the local date-time.
@@ -1404,7 +1406,7 @@
//-----------------------------------------------------------------------
/**
- * Returns a copy of this {@code ZonedDateTime} with the hour-of-day value altered.
+ * Returns a copy of this {@code ZonedDateTime} with the hour-of-day altered.
* <p>
* This operates on the local time-line,
* {@linkplain LocalDateTime#withHour(int) changing the time} of the local date-time.
@@ -1426,7 +1428,7 @@
}
/**
- * Returns a copy of this {@code ZonedDateTime} with the minute-of-hour value altered.
+ * Returns a copy of this {@code ZonedDateTime} with the minute-of-hour altered.
* <p>
* This operates on the local time-line,
* {@linkplain LocalDateTime#withMinute(int) changing the time} of the local date-time.
@@ -1448,7 +1450,7 @@
}
/**
- * Returns a copy of this {@code ZonedDateTime} with the second-of-minute value altered.
+ * Returns a copy of this {@code ZonedDateTime} with the second-of-minute altered.
* <p>
* This operates on the local time-line,
* {@linkplain LocalDateTime#withSecond(int) changing the time} of the local date-time.
@@ -1470,7 +1472,7 @@
}
/**
- * Returns a copy of this {@code ZonedDateTime} with the nano-of-second value altered.
+ * Returns a copy of this {@code ZonedDateTime} with the nano-of-second altered.
* <p>
* This operates on the local time-line,
* {@linkplain LocalDateTime#withNano(int) changing the time} of the local date-time.
@@ -1506,7 +1508,7 @@
* {@link ChronoUnit#DAYS DAYS}. Other units throw an exception.
* <p>
* This operates on the local time-line,
- * {@link LocalDateTime#truncatedTo(java.time.temporal.TemporalUnit) truncating}
+ * {@link LocalDateTime#truncatedTo(TemporalUnit) truncating}
* the underlying local date-time. This is then converted back to a
* {@code ZonedDateTime}, using the zone ID to obtain the offset.
* <p>
@@ -1607,7 +1609,7 @@
//-----------------------------------------------------------------------
/**
- * Returns a copy of this {@code ZonedDateTime} with the specified period in years added.
+ * Returns a copy of this {@code ZonedDateTime} with the specified number of years added.
* <p>
* This operates on the local time-line,
* {@link LocalDateTime#plusYears(long) adding years} to the local date-time.
@@ -1629,7 +1631,7 @@
}
/**
- * Returns a copy of this {@code ZonedDateTime} with the specified period in months added.
+ * Returns a copy of this {@code ZonedDateTime} with the specified number of months added.
* <p>
* This operates on the local time-line,
* {@link LocalDateTime#plusMonths(long) adding months} to the local date-time.
@@ -1651,7 +1653,7 @@
}
/**
- * Returns a copy of this {@code ZonedDateTime} with the specified period in weeks added.
+ * Returns a copy of this {@code ZonedDateTime} with the specified number of weeks added.
* <p>
* This operates on the local time-line,
* {@link LocalDateTime#plusWeeks(long) adding weeks} to the local date-time.
@@ -1673,7 +1675,7 @@
}
/**
- * Returns a copy of this {@code ZonedDateTime} with the specified period in days added.
+ * Returns a copy of this {@code ZonedDateTime} with the specified number of days added.
* <p>
* This operates on the local time-line,
* {@link LocalDateTime#plusDays(long) adding days} to the local date-time.
@@ -1696,7 +1698,7 @@
//-----------------------------------------------------------------------
/**
- * Returns a copy of this {@code ZonedDateTime} with the specified period in hours added.
+ * Returns a copy of this {@code ZonedDateTime} with the specified number of hours added.
* <p>
* This operates on the instant time-line, such that adding one hour will
* always be a duration of one hour later.
@@ -1724,7 +1726,7 @@
}
/**
- * Returns a copy of this {@code ZonedDateTime} with the specified period in minutes added.
+ * Returns a copy of this {@code ZonedDateTime} with the specified number of minutes added.
* <p>
* This operates on the instant time-line, such that adding one minute will
* always be a duration of one minute later.
@@ -1742,7 +1744,7 @@
}
/**
- * Returns a copy of this {@code ZonedDateTime} with the specified period in seconds added.
+ * Returns a copy of this {@code ZonedDateTime} with the specified number of seconds added.
* <p>
* This operates on the instant time-line, such that adding one second will
* always be a duration of one second later.
@@ -1760,7 +1762,7 @@
}
/**
- * Returns a copy of this {@code ZonedDateTime} with the specified period in nanoseconds added.
+ * Returns a copy of this {@code ZonedDateTime} with the specified number of nanoseconds added.
* <p>
* This operates on the instant time-line, such that adding one nano will
* always be a duration of one nano later.
@@ -1848,7 +1850,7 @@
//-----------------------------------------------------------------------
/**
- * Returns a copy of this {@code ZonedDateTime} with the specified period in years subtracted.
+ * Returns a copy of this {@code ZonedDateTime} with the specified number of years subtracted.
* <p>
* This operates on the local time-line,
* {@link LocalDateTime#minusYears(long) subtracting years} to the local date-time.
@@ -1870,7 +1872,7 @@
}
/**
- * Returns a copy of this {@code ZonedDateTime} with the specified period in months subtracted.
+ * Returns a copy of this {@code ZonedDateTime} with the specified number of months subtracted.
* <p>
* This operates on the local time-line,
* {@link LocalDateTime#minusMonths(long) subtracting months} to the local date-time.
@@ -1892,7 +1894,7 @@
}
/**
- * Returns a copy of this {@code ZonedDateTime} with the specified period in weeks subtracted.
+ * Returns a copy of this {@code ZonedDateTime} with the specified number of weeks subtracted.
* <p>
* This operates on the local time-line,
* {@link LocalDateTime#minusWeeks(long) subtracting weeks} to the local date-time.
@@ -1914,7 +1916,7 @@
}
/**
- * Returns a copy of this {@code ZonedDateTime} with the specified period in days subtracted.
+ * Returns a copy of this {@code ZonedDateTime} with the specified number of days subtracted.
* <p>
* This operates on the local time-line,
* {@link LocalDateTime#minusDays(long) subtracting days} to the local date-time.
@@ -1937,7 +1939,7 @@
//-----------------------------------------------------------------------
/**
- * Returns a copy of this {@code ZonedDateTime} with the specified period in hours subtracted.
+ * Returns a copy of this {@code ZonedDateTime} with the specified number of hours subtracted.
* <p>
* This operates on the instant time-line, such that subtracting one hour will
* always be a duration of one hour earlier.
@@ -1965,7 +1967,7 @@
}
/**
- * Returns a copy of this {@code ZonedDateTime} with the specified period in minutes subtracted.
+ * Returns a copy of this {@code ZonedDateTime} with the specified number of minutes subtracted.
* <p>
* This operates on the instant time-line, such that subtracting one minute will
* always be a duration of one minute earlier.
@@ -1983,7 +1985,7 @@
}
/**
- * Returns a copy of this {@code ZonedDateTime} with the specified period in seconds subtracted.
+ * Returns a copy of this {@code ZonedDateTime} with the specified number of seconds subtracted.
* <p>
* This operates on the instant time-line, such that subtracting one second will
* always be a duration of one second earlier.
@@ -2001,7 +2003,7 @@
}
/**
- * Returns a copy of this {@code ZonedDateTime} with the specified period in nanoseconds subtracted.
+ * Returns a copy of this {@code ZonedDateTime} with the specified number of nanoseconds subtracted.
* <p>
* This operates on the instant time-line, such that subtracting one nano will
* always be a duration of one nano earlier.
@@ -2028,7 +2030,7 @@
* what the result of this method will be.
* <p>
* The result of this method is obtained by invoking the
- * {@link java.time.temporal.TemporalQuery#queryFrom(TemporalAccessor)} method on the
+ * {@link TemporalQuery#queryFrom(TemporalAccessor)} method on the
* specified query passing {@code this} as the argument.
*
* @param <R> the type of the result
@@ -2049,7 +2051,7 @@
* objects in terms of a single {@code TemporalUnit}.
* The start and end points are {@code this} and the specified date-time.
* The result will be negative if the end is before the start.
- * For example, the period in days between two date-times can be calculated
+ * For example, the amount in days between two date-times can be calculated
* using {@code startDateTime.until(endDateTime, DAYS)}.
* <p>
* The {@code Temporal} passed to this method is converted to a
@@ -2059,7 +2061,7 @@
* <p>
* The calculation returns a whole number, representing the number of
* complete units between the two date-times.
- * For example, the period in months between 2012-06-15T00:00Z and 2012-08-14T23:59Z
+ * For example, the amount in months between 2012-06-15T00:00Z and 2012-08-14T23:59Z
* will only be one month as it is one minute short of two months.
* <p>
* There are two equivalent ways of using this method.
--- a/jdk/src/share/classes/java/time/chrono/ChronoLocalDate.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/chrono/ChronoLocalDate.java Tue May 06 12:20:29 2014 +0100
@@ -249,8 +249,8 @@
* This allows dates in different calendar systems to be compared based
* on the position of the date on the local time-line.
* The underlying comparison is equivalent to comparing the epoch-day.
+ *
* @return a comparator that compares in time-line order ignoring the chronology
- *
* @see #isAfter
* @see #isBefore
* @see #isEqual
--- a/jdk/src/share/classes/java/time/chrono/ChronoLocalDateImpl.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/chrono/ChronoLocalDateImpl.java Tue May 06 12:20:29 2014 +0100
@@ -227,7 +227,7 @@
//-----------------------------------------------------------------------
/**
- * Returns a copy of this date with the specified period in years added.
+ * Returns a copy of this date with the specified number of years added.
* <p>
* This adds the specified period in years to the date.
* In some cases, adding years can cause the resulting date to become invalid.
@@ -243,7 +243,7 @@
abstract D plusYears(long yearsToAdd);
/**
- * Returns a copy of this date with the specified period in months added.
+ * Returns a copy of this date with the specified number of months added.
* <p>
* This adds the specified period in months to the date.
* In some cases, adding months can cause the resulting date to become invalid.
@@ -259,7 +259,7 @@
abstract D plusMonths(long monthsToAdd);
/**
- * Returns a copy of this date with the specified period in weeks added.
+ * Returns a copy of this date with the specified number of weeks added.
* <p>
* This adds the specified period in weeks to the date.
* In some cases, adding weeks can cause the resulting date to become invalid.
@@ -292,7 +292,7 @@
//-----------------------------------------------------------------------
/**
- * Returns a copy of this date with the specified period in years subtracted.
+ * Returns a copy of this date with the specified number of years subtracted.
* <p>
* This subtracts the specified period in years to the date.
* In some cases, subtracting years can cause the resulting date to become invalid.
@@ -313,7 +313,7 @@
}
/**
- * Returns a copy of this date with the specified period in months subtracted.
+ * Returns a copy of this date with the specified number of months subtracted.
* <p>
* This subtracts the specified period in months to the date.
* In some cases, subtracting months can cause the resulting date to become invalid.
@@ -334,7 +334,7 @@
}
/**
- * Returns a copy of this date with the specified period in weeks subtracted.
+ * Returns a copy of this date with the specified number of weeks subtracted.
* <p>
* This subtracts the specified period in weeks to the date.
* In some cases, subtracting weeks can cause the resulting date to become invalid.
--- a/jdk/src/share/classes/java/time/chrono/ChronoLocalDateTime.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/chrono/ChronoLocalDateTime.java Tue May 06 12:20:29 2014 +0100
@@ -131,7 +131,6 @@
* The underlying comparison is equivalent to comparing the epoch-day and nano-of-day.
*
* @return a comparator that compares in time-line order ignoring the chronology
- *
* @see #isAfter
* @see #isBefore
* @see #isEqual
@@ -323,7 +322,7 @@
* what the result of this method will be.
* <p>
* The result of this method is obtained by invoking the
- * {@link java.time.temporal.TemporalQuery#queryFrom(TemporalAccessor)} method on the
+ * {@link TemporalQuery#queryFrom(TemporalAccessor)} method on the
* specified query passing {@code this} as the argument.
*
* @param <R> the type of the result
--- a/jdk/src/share/classes/java/time/chrono/ChronoZonedDateTime.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/chrono/ChronoZonedDateTime.java Tue May 06 12:20:29 2014 +0100
@@ -132,7 +132,6 @@
* The underlying comparison is equivalent to comparing the epoch-second and nano-of-second.
*
* @return a comparator that compares in time-line order ignoring the chronology
- *
* @see #isAfter
* @see #isBefore
* @see #isEqual
@@ -292,7 +291,7 @@
* <p>
* This instance is immutable and unaffected by this method call.
*
- * @return a {@code ZoneChronoDateTime} based on this date-time with the earlier offset, not null
+ * @return a {@code ChronoZonedDateTime} based on this date-time with the earlier offset, not null
* @throws DateTimeException if no rules can be found for the zone
* @throws DateTimeException if no rules are valid for this date-time
*/
@@ -319,7 +318,7 @@
ChronoZonedDateTime<D> withLaterOffsetAtOverlap();
/**
- * Returns a copy of this ZonedDateTime with a different time-zone,
+ * Returns a copy of this date-time with a different time-zone,
* retaining the local date-time if possible.
* <p>
* This method changes the time-zone and retains the local date-time.
@@ -470,7 +469,7 @@
* what the result of this method will be.
* <p>
* The result of this method is obtained by invoking the
- * {@link java.time.temporal.TemporalQuery#queryFrom(TemporalAccessor)} method on the
+ * {@link TemporalQuery#queryFrom(TemporalAccessor)} method on the
* specified query passing {@code this} as the argument.
*
* @param <R> the type of the result
--- a/jdk/src/share/classes/java/time/chrono/Chronology.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/chrono/Chronology.java Tue May 06 12:20:29 2014 +0100
@@ -132,8 +132,9 @@
* The set of available chronologies can be extended by applications.
* Adding a new calendar system requires the writing of an implementation of
* {@code Chronology}, {@code ChronoLocalDate} and {@code Era}.
- * The majority of the logic specific to the calendar system will be in
- * {@code ChronoLocalDate}. The {@code Chronology} subclass acts as a factory.
+ * The majority of the logic specific to the calendar system will be in the
+ * {@code ChronoLocalDate} implementation.
+ * The {@code Chronology} implementation acts as a factory.
* <p>
* To permit the discovery of additional chronologies, the {@link java.util.ServiceLoader ServiceLoader}
* is used. A file must be added to the {@code META-INF/services} directory with the
@@ -167,7 +168,7 @@
* If the specified temporal object does not have a chronology, {@link IsoChronology} is returned.
* <p>
* This method matches the signature of the functional interface {@link TemporalQuery}
- * allowing it to be used in queries via method reference, {@code Chronology::from}.
+ * allowing it to be used as a query via method reference, {@code Chronology::from}.
*
* @param temporal the temporal to convert, not null
* @return the chronology, not null
@@ -413,7 +414,7 @@
* The alternate clock may be introduced using {@link Clock dependency injection}.
*
* @implSpec
- * The default implementation invokes {@link #date(TemporalAccessor)} )}.
+ * The default implementation invokes {@link #date(TemporalAccessor)}.
*
* @param clock the clock to use, not null
* @return the current local date, not null
@@ -622,7 +623,7 @@
* The parameters control the style of the returned text and the locale.
*
* @implSpec
- * The default implementation behaves as the the formatter was used to
+ * The default implementation behaves as though the formatter was used to
* format the chronology textual name.
*
* @param style the style of the text required, not null
--- a/jdk/src/share/classes/java/time/chrono/Era.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/chrono/Era.java Tue May 06 12:20:29 2014 +0100
@@ -182,7 +182,7 @@
/**
* Gets the value of the specified field from this era as an {@code int}.
* <p>
- * This queries this era for the value for the specified field.
+ * This queries this era for the value of the specified field.
* The returned value will always be within the valid range of values for the field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
@@ -215,7 +215,7 @@
/**
* Gets the value of the specified field from this era as a {@code long}.
* <p>
- * This queries this era for the value for the specified field.
+ * This queries this era for the value of the specified field.
* If it is not possible to return the value, because the field is not supported
* or for some other reason, an exception is thrown.
* <p>
--- a/jdk/src/share/classes/java/time/chrono/HijrahChronology.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/chrono/HijrahChronology.java Tue May 06 12:20:29 2014 +0100
@@ -394,7 +394,7 @@
* Gets the ID of the chronology.
* <p>
* The ID uniquely identifies the {@code Chronology}. It can be used to
- * lookup the {@code Chronology} using {@link #of(String)}.
+ * lookup the {@code Chronology} using {@link Chronology#of(String)}.
*
* @return the chronology ID, non-null
* @see #getCalendarType()
@@ -409,7 +409,7 @@
* <p>
* The calendar type is an identifier defined by the
* <em>Unicode Locale Data Markup Language (LDML)</em> specification.
- * It can be used to lookup the {@code Chronology} using {@link #of(String)}.
+ * It can be used to lookup the {@code Chronology} using {@link Chronology#of(String)}.
*
* @return the calendar system type; non-null if the calendar has
* a standard type, otherwise null
--- a/jdk/src/share/classes/java/time/chrono/IsoChronology.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/chrono/IsoChronology.java Tue May 06 12:20:29 2014 +0100
@@ -143,7 +143,7 @@
* Gets the ID of the chronology - 'ISO'.
* <p>
* The ID uniquely identifies the {@code Chronology}.
- * It can be used to lookup the {@code Chronology} using {@link #of(String)}.
+ * It can be used to lookup the {@code Chronology} using {@link Chronology#of(String)}.
*
* @return the chronology ID - 'ISO'
* @see #getCalendarType()
@@ -158,7 +158,7 @@
* <p>
* The calendar type is an identifier defined by the
* <em>Unicode Locale Data Markup Language (LDML)</em> specification.
- * It can be used to lookup the {@code Chronology} using {@link #of(String)}.
+ * It can be used to lookup the {@code Chronology} using {@link Chronology#of(String)}.
* It can also be used as part of a locale, accessible via
* {@link Locale#getUnicodeLocaleType(String)} with the key 'ca'.
*
--- a/jdk/src/share/classes/java/time/chrono/JapaneseChronology.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/chrono/JapaneseChronology.java Tue May 06 12:20:29 2014 +0100
@@ -150,7 +150,7 @@
* Gets the ID of the chronology - 'Japanese'.
* <p>
* The ID uniquely identifies the {@code Chronology}.
- * It can be used to lookup the {@code Chronology} using {@link #of(String)}.
+ * It can be used to lookup the {@code Chronology} using {@link Chronology#of(String)}.
*
* @return the chronology ID - 'Japanese'
* @see #getCalendarType()
@@ -165,7 +165,7 @@
* <p>
* The calendar type is an identifier defined by the
* <em>Unicode Locale Data Markup Language (LDML)</em> specification.
- * It can be used to lookup the {@code Chronology} using {@link #of(String)}.
+ * It can be used to lookup the {@code Chronology} using {@link Chronology#of(String)}.
* It can also be used as part of a locale, accessible via
* {@link Locale#getUnicodeLocaleType(String)} with the key 'ca'.
*
--- a/jdk/src/share/classes/java/time/chrono/MinguoChronology.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/chrono/MinguoChronology.java Tue May 06 12:20:29 2014 +0100
@@ -132,7 +132,7 @@
* Gets the ID of the chronology - 'Minguo'.
* <p>
* The ID uniquely identifies the {@code Chronology}.
- * It can be used to lookup the {@code Chronology} using {@link #of(String)}.
+ * It can be used to lookup the {@code Chronology} using {@link Chronology#of(String)}.
*
* @return the chronology ID - 'Minguo'
* @see #getCalendarType()
@@ -147,7 +147,7 @@
* <p>
* The calendar type is an identifier defined by the
* <em>Unicode Locale Data Markup Language (LDML)</em> specification.
- * It can be used to lookup the {@code Chronology} using {@link #of(String)}.
+ * It can be used to lookup the {@code Chronology} using {@link Chronology#of(String)}.
* It can also be used as part of a locale, accessible via
* {@link Locale#getUnicodeLocaleType(String)} with the key 'ca'.
*
--- a/jdk/src/share/classes/java/time/chrono/ThaiBuddhistChronology.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/chrono/ThaiBuddhistChronology.java Tue May 06 12:20:29 2014 +0100
@@ -168,7 +168,7 @@
* Gets the ID of the chronology - 'ThaiBuddhist'.
* <p>
* The ID uniquely identifies the {@code Chronology}.
- * It can be used to lookup the {@code Chronology} using {@link #of(String)}.
+ * It can be used to lookup the {@code Chronology} using {@link Chronology#of(String)}.
*
* @return the chronology ID - 'ThaiBuddhist'
* @see #getCalendarType()
@@ -183,7 +183,7 @@
* <p>
* The calendar type is an identifier defined by the
* <em>Unicode Locale Data Markup Language (LDML)</em> specification.
- * It can be used to lookup the {@code Chronology} using {@link #of(String)}.
+ * It can be used to lookup the {@code Chronology} using {@link Chronology#of(String)}.
* It can also be used as part of a locale, accessible via
* {@link Locale#getUnicodeLocaleType(String)} with the key 'ca'.
*
--- a/jdk/src/share/classes/java/time/format/DateTimeFormatter.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/format/DateTimeFormatter.java Tue May 06 12:20:29 2014 +0100
@@ -117,7 +117,7 @@
* {@code parse(CharSequence text, DateTimeFormatter formatter)}.
* <p>For example:
* <blockquote><pre>
- * String text = date.toString(formatter);
+ * String text = date.format(formatter);
* LocalDate date = LocalDate.parse(text, formatter);
* </pre></blockquote>
* <p>
@@ -266,7 +266,7 @@
* For example:
* <blockquote><pre>
* DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy MM dd");
- * String text = date.toString(formatter);
+ * String text = date.format(formatter);
* LocalDate date = LocalDate.parse(text, formatter);
* </pre></blockquote>
* <p>
@@ -1976,7 +1976,7 @@
* Errors are returned using the error index field of the {@code ParsePosition}
* instead of {@code DateTimeParseException}.
* The returned error index will be set to an index indicative of the error.
- * Callers must check for errors before using the context.
+ * Callers must check for errors before using the result.
* <p>
* If the formatter parses the same field more than once with different values,
* the result will be an error.
--- a/jdk/src/share/classes/java/time/format/DateTimeFormatterBuilder.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/format/DateTimeFormatterBuilder.java Tue May 06 12:20:29 2014 +0100
@@ -137,7 +137,6 @@
* <li>ChronologyText - the name of the chronology</li>
* <li>Literal - a text literal</li>
* <li>Nested and Optional - formats can be nested or made optional</li>
- * <li>Other - the printer and parser interfaces can be used to add user supplied formatting</li>
* </ul>
* In addition, any of the elements may be decorated by padding, either with spaces or any other character.
* <p>
@@ -194,8 +193,8 @@
* The locale and chronology are used to lookup the locale specific format
* for the requested dateStyle and/or timeStyle.
*
- * @param dateStyle the FormatStyle for the date
- * @param timeStyle the FormatStyle for the time
+ * @param dateStyle the FormatStyle for the date, null for time-only pattern
+ * @param timeStyle the FormatStyle for the time, null for date-only pattern
* @param chrono the Chronology, non-null
* @param locale the locale, non-null
* @return the locale and Chronology specific formatting pattern
@@ -747,9 +746,9 @@
* defines the connection between each value and the text:
* <pre>
* Map<Long, String> map = new HashMap<>();
- * map.put(1, "JNY");
- * map.put(2, "FBY");
- * map.put(3, "MCH");
+ * map.put(1L, "JNY");
+ * map.put(2L, "FBY");
+ * map.put(3L, "MCH");
* ...
* builder.appendText(MONTH_OF_YEAR, map);
* </pre>
@@ -841,7 +840,7 @@
* <p>
* The {@linkplain ResolverStyle resolver style} has no effect on instant parsing.
* The end-of-day time of '24:00' is handled as midnight at the start of the following day.
- * The leap-second time of '23:59:59' is handled to some degree, see
+ * The leap-second time of '23:59:60' is handled to some degree, see
* {@link DateTimeFormatter#parsedLeapSecond()} for full details.
* <p>
* An alternative to this method is to format/parse the instant as a single
@@ -864,7 +863,7 @@
* Appends the zone offset, such as '+01:00', to the formatter.
* <p>
* This appends an instruction to format/parse the offset ID to the builder.
- * This is equivalent to calling {@code appendOffset("HH:MM:ss", "Z")}.
+ * This is equivalent to calling {@code appendOffset("+HH:MM:ss", "Z")}.
*
* @return this, for chaining, not null
*/
@@ -1049,7 +1048,7 @@
* "GMT+01:30" -- ZoneOffset.of("+01:30")
* </pre>
* <p>
- * Note that this method is is identical to {@code appendZoneId()} except
+ * Note that this method is identical to {@code appendZoneId()} except
* in the mechanism used to obtain the zone.
* Note also that parsing accepts offsets, whereas formatting will never
* produce one.
@@ -1107,7 +1106,7 @@
* "GMT+01:30" -- ZoneOffset.of("GMT+01:30")
* </pre>
* <p>
- * Note that this method is is identical to {@code appendZoneId()} except
+ * Note that this method is identical to {@code appendZoneId()} except
* in the mechanism used to obtain the zone.
*
* @return this, for chaining, not null
@@ -1132,7 +1131,7 @@
* for the locale set in the {@link DateTimeFormatter}.
* If the temporal object being printed represents an instant, then the text
* will be the summer or winter time text as appropriate.
- * If the lookup for text does not find any suitable reuslt, then the
+ * If the lookup for text does not find any suitable result, then the
* {@link ZoneId#getId() ID} will be printed instead.
* If the zone cannot be obtained then an exception is thrown unless the
* section of the formatter is optional.
@@ -1168,7 +1167,7 @@
* for the locale set in the {@link DateTimeFormatter}.
* If the temporal object being printed represents an instant, then the text
* will be the summer or winter time text as appropriate.
- * If the lookup for text does not find any suitable reuslt, then the
+ * If the lookup for text does not find any suitable result, then the
* {@link ZoneId#getId() ID} will be printed instead.
* If the zone cannot be obtained then an exception is thrown unless the
* section of the formatter is optional.
@@ -1182,7 +1181,7 @@
* zone. This method also allows a set of preferred {@link ZoneId} to be
* specified for parsing. The matched preferred zone id will be used if the
* textural zone name being parsed is not unique.
- *
+ * <p>
* If the zone cannot be parsed then an exception is thrown unless the
* section of the formatter is optional.
*
@@ -1227,7 +1226,6 @@
* <p>
* The calendar system name will be output during a format.
* If the chronology cannot be obtained then an exception will be thrown.
- * The calendar system name is obtained from the Chronology.
*
* @param textStyle the text style to use, not null
* @return this, for chaining, not null
@@ -1453,7 +1451,7 @@
* LLLLL 5 appendText(ChronoField.MONTH_OF_YEAR, TextStyle.NARROW_STANDALONE)
*
* w 1 append special localized WeekFields element for numeric week-of-year
- * ww 1 append special localized WeekFields element for numeric week-of-year, zero-padded
+ * ww 2 append special localized WeekFields element for numeric week-of-year, zero-padded
* W 1 append special localized WeekFields element for numeric week-of-month
* d 1 appendValue(ChronoField.DAY_OF_MONTH)
* dd 2 appendValue(ChronoField.DAY_OF_MONTH, 2)
@@ -1880,7 +1878,6 @@
* <p>
* During parsing, the padding and decorated element are parsed.
* If parsing is lenient, then the pad width is treated as a maximum.
- * If parsing is case insensitive, then the pad character is matched ignoring case.
* The padding is parsed greedily. Thus, if the decorated element starts with
* the pad character, it will not be parsed.
*
--- a/jdk/src/share/classes/java/time/format/DecimalStyle.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/format/DecimalStyle.java Tue May 06 12:20:29 2014 +0100
@@ -62,7 +62,6 @@
package java.time.format;
import java.text.DecimalFormatSymbols;
-import java.util.Arrays;
import java.util.Collections;
import java.util.HashSet;
import java.util.Locale;
@@ -138,7 +137,7 @@
* of(Locale.getDefault(Locale.Category.FORMAT))}.
*
* @see java.util.Locale.Category#FORMAT
- * @return the info, not null
+ * @return the decimal style, not null
*/
public static DecimalStyle ofDefaultLocale() {
return of(Locale.getDefault(Locale.Category.FORMAT));
@@ -150,7 +149,7 @@
* This method provides access to locale sensitive decimal style symbols.
*
* @param locale the locale, not null
- * @return the info, not null
+ * @return the decimal style, not null
*/
public static DecimalStyle of(Locale locale) {
Objects.requireNonNull(locale, "locale");
@@ -340,7 +339,7 @@
//-----------------------------------------------------------------------
/**
- * Checks if this DecimalStyle is equal another DecimalStyle.
+ * Checks if this DecimalStyle is equal to another DecimalStyle.
*
* @param obj the object to check, null returns false
* @return true if this is equal to the other date
--- a/jdk/src/share/classes/java/time/temporal/IsoFields.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/temporal/IsoFields.java Tue May 06 12:20:29 2014 +0100
@@ -638,7 +638,7 @@
//-----------------------------------------------------------------------
/**
- * Implementation of the period unit.
+ * Implementation of the unit.
*/
private static enum Unit implements TemporalUnit {
--- a/jdk/src/share/classes/java/time/temporal/Temporal.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/temporal/Temporal.java Tue May 06 12:20:29 2014 +0100
@@ -157,7 +157,8 @@
* This adjusts this date-time according to the rules of the specified adjuster.
* A simple adjuster might simply set the one of the fields, such as the year field.
* A more complex adjuster might set the date to the last day of the month.
- * A selection of common adjustments is provided in {@link TemporalAdjuster}.
+ * A selection of common adjustments is provided in
+ * {@link java.time.temporal.TemporalAdjusters TemporalAdjusters}.
* These include finding the "last day of the month" and "next Wednesday".
* The adjuster is responsible for handling special cases, such as the varying
* lengths of month and leap years.
@@ -287,7 +288,7 @@
* This provides equivalent, safe behavior for immutable and mutable implementations.
*
* @param amountToAdd the amount of the specified unit to add, may be negative
- * @param unit the unit of the period to add, not null
+ * @param unit the unit of the amount to add, not null
* @return an object of the same type with the specified period added, not null
* @throws DateTimeException if the unit cannot be added
* @throws UnsupportedTemporalTypeException if the unit is not supported
@@ -359,7 +360,7 @@
* </pre>
*
* @param amountToSubtract the amount of the specified unit to subtract, may be negative
- * @param unit the unit of the period to subtract, not null
+ * @param unit the unit of the amount to subtract, not null
* @return an object of the same type with the specified period subtracted, not null
* @throws DateTimeException if the unit cannot be subtracted
* @throws UnsupportedTemporalTypeException if the unit is not supported
@@ -378,12 +379,12 @@
* The start and end points are {@code this} and the specified temporal.
* The end point is converted to be of the same type as the start point if different.
* The result will be negative if the end is before the start.
- * For example, the period in hours between two temporal objects can be
+ * For example, the amount in hours between two temporal objects can be
* calculated using {@code startTime.until(endTime, HOURS)}.
* <p>
* The calculation returns a whole number, representing the number of
* complete units between the two temporals.
- * For example, the period in hours between the times 11:30 and 13:29
+ * For example, the amount in hours between the times 11:30 and 13:29
* will only be one hour as it is one minute short of two hours.
* <p>
* There are two equivalent ways of using this method.
--- a/jdk/src/share/classes/java/time/temporal/TemporalAccessor.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/temporal/TemporalAccessor.java Tue May 06 12:20:29 2014 +0100
@@ -180,7 +180,7 @@
/**
* Gets the value of the specified field as an {@code int}.
* <p>
- * This queries the date-time for the value for the specified field.
+ * This queries the date-time for the value of the specified field.
* The returned value will always be within the valid range of values for the field.
* If the date-time cannot return the value, because the field is unsupported or for
* some other reason, an exception will be thrown.
@@ -229,7 +229,7 @@
/**
* Gets the value of the specified field as a {@code long}.
* <p>
- * This queries the date-time for the value for the specified field.
+ * This queries the date-time for the value of the specified field.
* The returned value may be outside the valid range of values for the field.
* If the date-time cannot return the value, because the field is unsupported or for
* some other reason, an exception will be thrown.
--- a/jdk/src/share/classes/java/time/temporal/TemporalField.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/temporal/TemporalField.java Tue May 06 12:20:29 2014 +0100
@@ -116,7 +116,7 @@
* For example, in the field 'MonthOfYear', the unit is 'Months'.
* See also {@link #getRangeUnit()}.
*
- * @return the period unit defining the base unit of the field, not null
+ * @return the unit defining the base unit of the field, not null
*/
TemporalUnit getBaseUnit();
@@ -130,7 +130,7 @@
* The range is never null. For example, the 'Year' field is shorthand for
* 'YearOfForever'. It therefore has a unit of 'Years' and a range of 'Forever'.
*
- * @return the period unit defining the range of the field, not null
+ * @return the unit defining the range of the field, not null
*/
TemporalUnit getRangeUnit();
@@ -179,7 +179,7 @@
* Checks if this field is supported by the temporal object.
* <p>
* This determines whether the temporal accessor supports this field.
- * If this returns false, the the temporal cannot be queried for this field.
+ * If this returns false, then the temporal cannot be queried for this field.
* <p>
* There are two equivalent ways of using this method.
* The first is to invoke this method directly.
--- a/jdk/src/share/classes/java/time/temporal/TemporalUnit.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/temporal/TemporalUnit.java Tue May 06 12:20:29 2014 +0100
@@ -221,7 +221,7 @@
* @param temporal the temporal object to adjust, not null
* @param amount the amount of this unit to add, positive or negative
* @return the adjusted temporal object, not null
- * @throws DateTimeException if the period cannot be added
+ * @throws DateTimeException if the amount cannot be added
* @throws UnsupportedTemporalTypeException if the unit is not supported by the temporal
*/
<R extends Temporal> R addTo(R temporal, long amount);
--- a/jdk/src/share/classes/java/time/zone/ZoneOffsetTransition.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/time/zone/ZoneOffsetTransition.java Tue May 06 12:20:29 2014 +0100
@@ -83,7 +83,7 @@
* The discontinuity is normally a gap in spring and an overlap in autumn.
* {@code ZoneOffsetTransition} models the transition between the two offsets.
* <p>
- * Gaps occur where there are local date-times that simply do not not exist.
+ * Gaps occur where there are local date-times that simply do not exist.
* An example would be when the offset changes from {@code +03:00} to {@code +04:00}.
* This might be described as 'the clocks will move forward one hour tonight at 1am'.
* <p>
@@ -334,7 +334,7 @@
/**
* Does this transition represent a gap in the local time-line.
* <p>
- * Gaps occur where there are local date-times that simply do not not exist.
+ * Gaps occur where there are local date-times that simply do not exist.
* An example would be when the offset changes from {@code +01:00} to {@code +02:00}.
* This might be described as 'the clocks will move forward one hour tonight at 1am'.
*
--- a/jdk/src/share/classes/java/util/BitSet.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/util/BitSet.java Tue May 06 12:20:29 2014 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1995, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1995, 2014, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -696,6 +696,9 @@
* <pre> {@code
* for (int i = bs.nextSetBit(0); i >= 0; i = bs.nextSetBit(i+1)) {
* // operate on index i here
+ * if (i == Integer.MAX_VALUE) {
+ * break; // or (i+1) would overflow
+ * }
* }}</pre>
*
* @param fromIndex the index to start checking from (inclusive)
@@ -1186,10 +1189,12 @@
int i = nextSetBit(0);
if (i != -1) {
b.append(i);
- for (i = nextSetBit(i+1); i >= 0; i = nextSetBit(i+1)) {
+ while (true) {
+ if (++i < 0) break;
+ if ((i = nextSetBit(i)) < 0) break;
int endOfRun = nextClearBit(i);
do { b.append(", ").append(i); }
- while (++i < endOfRun);
+ while (++i != endOfRun);
}
}
--- a/jdk/src/share/classes/java/util/Hashtable.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/util/Hashtable.java Tue May 06 12:20:29 2014 +0100
@@ -26,7 +26,6 @@
package java.util;
import java.io.*;
-import java.util.concurrent.ThreadLocalRandom;
import java.util.function.BiConsumer;
import java.util.function.Function;
import java.util.function.BiFunction;
@@ -92,8 +91,10 @@
* ConcurrentModificationException}. Thus, in the face of concurrent
* modification, the iterator fails quickly and cleanly, rather than risking
* arbitrary, non-deterministic behavior at an undetermined time in the future.
- * The Enumerations returned by Hashtable's keys and elements methods are
- * <em>not</em> fail-fast.
+ * The Enumerations returned by Hashtable's {@link #keys keys} and
+ * {@link #elements elements} methods are <em>not</em> fail-fast; if the
+ * Hashtable is structurally modified at any time after the enumeration is
+ * created then the results of enumerating are undefined.
*
* <p>Note that the fail-fast behavior of an iterator cannot be guaranteed
* as it is, generally speaking, impossible to make any hard guarantees in the
@@ -115,6 +116,9 @@
* to use {@link java.util.concurrent.ConcurrentHashMap} in place of
* {@code Hashtable}.
*
+ * @param <K> the type of keys maintained by this map
+ * @param <V> the type of mapped values
+ *
* @author Arthur van Hoff
* @author Josh Bloch
* @author Neal Gafter
@@ -246,6 +250,9 @@
/**
* Returns an enumeration of the keys in this hashtable.
+ * Use the Enumeration methods on the returned object to fetch the keys
+ * sequentially. If the hashtable is structurally modified while enumerating
+ * over the keys then the results of enumerating are undefined.
*
* @return an enumeration of the keys in this hashtable.
* @see Enumeration
@@ -260,7 +267,8 @@
/**
* Returns an enumeration of the values in this hashtable.
* Use the Enumeration methods on the returned object to fetch the elements
- * sequentially.
+ * sequentially. If the hashtable is structurally modified while enumerating
+ * over the values then the results of enumerating are undefined.
*
* @return an enumeration of the values in this hashtable.
* @see java.util.Enumeration
@@ -417,8 +425,6 @@
}
private void addEntry(int hash, K key, V value, int index) {
- modCount++;
-
Entry<?,?> tab[] = table;
if (count >= threshold) {
// Rehash the table if the threshold is exceeded
@@ -434,6 +440,7 @@
Entry<K,V> e = (Entry<K,V>) tab[index];
tab[index] = new Entry<>(hash, key, value, e);
count++;
+ modCount++;
}
/**
@@ -494,12 +501,12 @@
Entry<K,V> e = (Entry<K,V>)tab[index];
for(Entry<K,V> prev = null ; e != null ; prev = e, e = e.next) {
if ((e.hash == hash) && e.key.equals(key)) {
- modCount++;
if (prev != null) {
prev.next = e.next;
} else {
tab[index] = e.next;
}
+ modCount++;
count--;
V oldValue = e.value;
e.value = null;
@@ -528,9 +535,9 @@
*/
public synchronized void clear() {
Entry<?,?> tab[] = table;
- modCount++;
for (int index = tab.length; --index >= 0; )
tab[index] = null;
+ modCount++;
count = 0;
}
@@ -719,14 +726,14 @@
Entry<K,V> e = (Entry<K,V>)tab[index];
for(Entry<K,V> prev = null; e != null; prev = e, e = e.next) {
if (e.hash==hash && e.equals(entry)) {
- modCount++;
if (prev != null)
prev.next = e.next;
else
tab[index] = e.next;
+ e.value = null; // clear for gc.
+ modCount++;
count--;
- e.value = null;
return true;
}
}
@@ -939,14 +946,14 @@
Entry<K,V> e = (Entry<K,V>)tab[index];
for (Entry<K,V> prev = null; e != null; prev = e, e = e.next) {
if ((e.hash == hash) && e.key.equals(key) && e.value.equals(value)) {
- modCount++;
if (prev != null) {
prev.next = e.next;
} else {
tab[index] = e.next;
}
+ e.value = null; // clear for gc
+ modCount++;
count--;
- e.value = null;
return true;
}
}
@@ -1030,12 +1037,12 @@
if (e.hash == hash && e.key.equals(key)) {
V newValue = remappingFunction.apply(key, e.value);
if (newValue == null) {
- modCount++;
if (prev != null) {
prev.next = e.next;
} else {
tab[index] = e.next;
}
+ modCount++;
count--;
} else {
e.value = newValue;
@@ -1059,12 +1066,12 @@
if (e.hash == hash && Objects.equals(e.key, key)) {
V newValue = remappingFunction.apply(key, e.value);
if (newValue == null) {
- modCount++;
if (prev != null) {
prev.next = e.next;
} else {
tab[index] = e.next;
}
+ modCount++;
count--;
} else {
e.value = newValue;
@@ -1094,12 +1101,12 @@
if (e.hash == hash && e.key.equals(key)) {
V newValue = remappingFunction.apply(e.value, value);
if (newValue == null) {
- modCount++;
if (prev != null) {
prev.next = e.next;
} else {
tab[index] = e.next;
}
+ modCount++;
count--;
} else {
e.value = newValue;
@@ -1298,24 +1305,24 @@
* by passing an Enumeration.
*/
private class Enumerator<T> implements Enumeration<T>, Iterator<T> {
- Entry<?,?>[] table = Hashtable.this.table;
+ final Entry<?,?>[] table = Hashtable.this.table;
int index = table.length;
Entry<?,?> entry;
Entry<?,?> lastReturned;
- int type;
+ final int type;
/**
* Indicates whether this Enumerator is serving as an Iterator
* or an Enumeration. (true -> Iterator).
*/
- boolean iterator;
+ final boolean iterator;
/**
* The modCount value that the iterator believes that the backing
* Hashtable should have. If this expectation is violated, the iterator
* has detected concurrent modification.
*/
- protected int expectedModCount = modCount;
+ protected int expectedModCount = Hashtable.this.modCount;
Enumerator(int type, boolean iterator) {
this.type = type;
@@ -1360,7 +1367,7 @@
}
public T next() {
- if (modCount != expectedModCount)
+ if (Hashtable.this.modCount != expectedModCount)
throw new ConcurrentModificationException();
return nextElement();
}
@@ -1381,14 +1388,14 @@
Entry<K,V> e = (Entry<K,V>)tab[index];
for(Entry<K,V> prev = null; e != null; prev = e, e = e.next) {
if (e == lastReturned) {
- modCount++;
- expectedModCount++;
if (prev == null)
tab[index] = e.next;
else
prev.next = e.next;
- count--;
+ expectedModCount++;
lastReturned = null;
+ Hashtable.this.modCount++;
+ Hashtable.this.count--;
return;
}
}
--- a/jdk/src/share/classes/java/util/Vector.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/util/Vector.java Tue May 06 12:20:29 2014 +0100
@@ -56,7 +56,9 @@
* concurrent modification, the iterator fails quickly and cleanly, rather
* than risking arbitrary, non-deterministic behavior at an undetermined
* time in the future. The {@link Enumeration Enumerations} returned by
- * the {@link #elements() elements} method are <em>not</em> fail-fast.
+ * the {@link #elements() elements} method are <em>not</em> fail-fast; if the
+ * Vector is structurally modified at any time after the enumeration is
+ * created then the results of enumerating are undefined.
*
* <p>Note that the fail-fast behavior of an iterator cannot be guaranteed
* as it is, generally speaking, impossible to make any hard guarantees in the
@@ -74,6 +76,8 @@
* implementation is not needed, it is recommended to use {@link
* ArrayList} in place of {@code Vector}.
*
+ * @param <E> Type of component elements
+ *
* @author Lee Boynton
* @author Jonathan Payne
* @see Collection
@@ -330,7 +334,9 @@
* Returns an enumeration of the components of this vector. The
* returned {@code Enumeration} object will generate all items in
* this vector. The first item generated is the item at index {@code 0},
- * then the item at index {@code 1}, and so on.
+ * then the item at index {@code 1}, and so on. If the vector is
+ * structurally modified while enumerating over the elements then the
+ * results of enumerating are undefined.
*
* @return an enumeration of the components of this vector
* @see Iterator
@@ -553,7 +559,6 @@
* ({@code index < 0 || index >= size()})
*/
public synchronized void removeElementAt(int index) {
- modCount++;
if (index >= elementCount) {
throw new ArrayIndexOutOfBoundsException(index + " >= " +
elementCount);
@@ -565,6 +570,7 @@
if (j > 0) {
System.arraycopy(elementData, index + 1, elementData, index, j);
}
+ modCount++;
elementCount--;
elementData[elementCount] = null; /* to let gc do its work */
}
@@ -593,7 +599,6 @@
* ({@code index < 0 || index > size()})
*/
public synchronized void insertElementAt(E obj, int index) {
- modCount++;
if (index > elementCount) {
throw new ArrayIndexOutOfBoundsException(index
+ " > " + elementCount);
@@ -601,6 +606,7 @@
ensureCapacityHelper(elementCount + 1);
System.arraycopy(elementData, index, elementData, index + 1, elementCount - index);
elementData[index] = obj;
+ modCount++;
elementCount++;
}
@@ -616,8 +622,8 @@
* @param obj the component to be added
*/
public synchronized void addElement(E obj) {
+ ensureCapacityHelper(elementCount + 1);
modCount++;
- ensureCapacityHelper(elementCount + 1);
elementData[elementCount++] = obj;
}
@@ -653,11 +659,11 @@
* method (which is part of the {@link List} interface).
*/
public synchronized void removeAllElements() {
- modCount++;
// Let gc do its work
for (int i = 0; i < elementCount; i++)
elementData[i] = null;
+ modCount++;
elementCount = 0;
}
@@ -705,12 +711,15 @@
* of the Vector <em>only</em> if the caller knows that the Vector
* does not contain any null elements.)
*
+ * @param <T> type of array elements. The same type as {@code <E>} or a
+ * supertype of {@code <E>}.
* @param a the array into which the elements of the Vector are to
* be stored, if it is big enough; otherwise, a new array of the
* same runtime type is allocated for this purpose.
* @return an array containing the elements of the Vector
- * @throws ArrayStoreException if the runtime type of a is not a supertype
- * of the runtime type of every element in this Vector
+ * @throws ArrayStoreException if the runtime type of a, {@code <T>}, is not
+ * a supertype of the runtime type, {@code <E>}, of every element in this
+ * Vector
* @throws NullPointerException if the given array is null
* @since 1.2
*/
@@ -778,8 +787,8 @@
* @since 1.2
*/
public synchronized boolean add(E e) {
+ ensureCapacityHelper(elementCount + 1);
modCount++;
- ensureCapacityHelper(elementCount + 1);
elementData[elementCount++] = e;
return true;
}
@@ -879,14 +888,18 @@
* @throws NullPointerException if the specified collection is null
* @since 1.2
*/
- public synchronized boolean addAll(Collection<? extends E> c) {
- modCount++;
+ public boolean addAll(Collection<? extends E> c) {
Object[] a = c.toArray();
int numNew = a.length;
- ensureCapacityHelper(elementCount + numNew);
- System.arraycopy(a, 0, elementData, elementCount, numNew);
- elementCount += numNew;
- return numNew != 0;
+ if (numNew > 0) {
+ synchronized (this) {
+ ensureCapacityHelper(elementCount + numNew);
+ System.arraycopy(a, 0, elementData, elementCount, numNew);
+ modCount++;
+ elementCount += numNew;
+ }
+ }
+ return numNew > 0;
}
/**
@@ -951,22 +964,25 @@
* @since 1.2
*/
public synchronized boolean addAll(int index, Collection<? extends E> c) {
- modCount++;
if (index < 0 || index > elementCount)
throw new ArrayIndexOutOfBoundsException(index);
Object[] a = c.toArray();
int numNew = a.length;
- ensureCapacityHelper(elementCount + numNew);
+
+ if (numNew > 0) {
+ ensureCapacityHelper(elementCount + numNew);
- int numMoved = elementCount - index;
- if (numMoved > 0)
- System.arraycopy(elementData, index, elementData, index + numNew,
- numMoved);
+ int numMoved = elementCount - index;
+ if (numMoved > 0)
+ System.arraycopy(elementData, index, elementData,
+ index + numNew, numMoved);
- System.arraycopy(a, 0, elementData, index, numNew);
- elementCount += numNew;
- return numNew != 0;
+ System.arraycopy(a, 0, elementData, index, numNew);
+ elementCount += numNew;
+ modCount++;
+ }
+ return numNew > 0;
}
/**
@@ -1047,12 +1063,12 @@
* (If {@code toIndex==fromIndex}, this operation has no effect.)
*/
protected synchronized void removeRange(int fromIndex, int toIndex) {
- modCount++;
int numMoved = elementCount - toIndex;
System.arraycopy(elementData, toIndex, elementData, fromIndex,
numMoved);
// Let gc do its work
+ modCount++;
int newElementCount = elementCount - (toIndex-fromIndex);
while (elementCount != newElementCount)
elementData[--elementCount] = null;
@@ -1420,7 +1436,7 @@
}
public long estimateSize() {
- return (long) (getFence() - index);
+ return getFence() - index;
}
public int characteristics() {
--- a/jdk/src/share/classes/java/util/stream/SortedOps.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/java/util/stream/SortedOps.java Tue May 06 12:20:29 2014 +0100
@@ -279,16 +279,60 @@
}
/**
+ * Abstract {@link Sink} for implementing sort on reference streams.
+ *
+ * <p>
+ * Note: documentation below applies to reference and all primitive sinks.
+ * <p>
+ * Sorting sinks first accept all elements, buffering then into an array
+ * or a re-sizable data structure, if the size of the pipeline is known or
+ * unknown respectively. At the end of the sink protocol those elements are
+ * sorted and then pushed downstream.
+ * This class records if {@link #cancellationRequested} is called. If so it
+ * can be inferred that the source pushing source elements into the pipeline
+ * knows that the pipeline is short-circuiting. In such cases sub-classes
+ * pushing elements downstream will preserve the short-circuiting protocol
+ * by calling {@code downstream.cancellationRequested()} and checking the
+ * result is {@code false} before an element is pushed.
+ * <p>
+ * Note that the above behaviour is an optimization for sorting with
+ * sequential streams. It is not an error that more elements, than strictly
+ * required to produce a result, may flow through the pipeline. This can
+ * occur, in general (not restricted to just sorting), for short-circuiting
+ * parallel pipelines.
+ */
+ private static abstract class AbstractRefSortingSink<T> extends Sink.ChainedReference<T, T> {
+ protected final Comparator<? super T> comparator;
+ // @@@ could be a lazy final value, if/when support is added
+ protected boolean cancellationWasRequested;
+
+ AbstractRefSortingSink(Sink<? super T> downstream, Comparator<? super T> comparator) {
+ super(downstream);
+ this.comparator = comparator;
+ }
+
+ /**
+ * Records is cancellation is requested so short-circuiting behaviour
+ * can be preserved when the sorted elements are pushed downstream.
+ *
+ * @return false, as this sink never short-circuits.
+ */
+ @Override
+ public final boolean cancellationRequested() {
+ cancellationWasRequested = true;
+ return false;
+ }
+ }
+
+ /**
* {@link Sink} for implementing sort on SIZED reference streams.
*/
- private static final class SizedRefSortingSink<T> extends Sink.ChainedReference<T, T> {
- private final Comparator<? super T> comparator;
+ private static final class SizedRefSortingSink<T> extends AbstractRefSortingSink<T> {
private T[] array;
private int offset;
SizedRefSortingSink(Sink<? super T> sink, Comparator<? super T> comparator) {
- super(sink);
- this.comparator = comparator;
+ super(sink, comparator);
}
@Override
@@ -303,8 +347,14 @@
public void end() {
Arrays.sort(array, 0, offset, comparator);
downstream.begin(offset);
- for (int i = 0; i < offset; i++)
- downstream.accept(array[i]);
+ if (!cancellationWasRequested) {
+ for (int i = 0; i < offset; i++)
+ downstream.accept(array[i]);
+ }
+ else {
+ for (int i = 0; i < offset && !downstream.cancellationRequested(); i++)
+ downstream.accept(array[i]);
+ }
downstream.end();
array = null;
}
@@ -318,13 +368,11 @@
/**
* {@link Sink} for implementing sort on reference streams.
*/
- private static final class RefSortingSink<T> extends Sink.ChainedReference<T, T> {
- private final Comparator<? super T> comparator;
+ private static final class RefSortingSink<T> extends AbstractRefSortingSink<T> {
private ArrayList<T> list;
RefSortingSink(Sink<? super T> sink, Comparator<? super T> comparator) {
- super(sink);
- this.comparator = comparator;
+ super(sink, comparator);
}
@Override
@@ -338,7 +386,15 @@
public void end() {
list.sort(comparator);
downstream.begin(list.size());
- list.forEach(downstream::accept);
+ if (!cancellationWasRequested) {
+ list.forEach(downstream::accept);
+ }
+ else {
+ for (T t : list) {
+ if (downstream.cancellationRequested()) break;
+ downstream.accept(t);
+ }
+ }
downstream.end();
list = null;
}
@@ -350,9 +406,26 @@
}
/**
+ * Abstract {@link Sink} for implementing sort on int streams.
+ */
+ private static abstract class AbstractIntSortingSink extends Sink.ChainedInt<Integer> {
+ protected boolean cancellationWasRequested;
+
+ AbstractIntSortingSink(Sink<? super Integer> downstream) {
+ super(downstream);
+ }
+
+ @Override
+ public final boolean cancellationRequested() {
+ cancellationWasRequested = true;
+ return false;
+ }
+ }
+
+ /**
* {@link Sink} for implementing sort on SIZED int streams.
*/
- private static final class SizedIntSortingSink extends Sink.ChainedInt<Integer> {
+ private static final class SizedIntSortingSink extends AbstractIntSortingSink {
private int[] array;
private int offset;
@@ -371,8 +444,14 @@
public void end() {
Arrays.sort(array, 0, offset);
downstream.begin(offset);
- for (int i = 0; i < offset; i++)
- downstream.accept(array[i]);
+ if (!cancellationWasRequested) {
+ for (int i = 0; i < offset; i++)
+ downstream.accept(array[i]);
+ }
+ else {
+ for (int i = 0; i < offset && !downstream.cancellationRequested(); i++)
+ downstream.accept(array[i]);
+ }
downstream.end();
array = null;
}
@@ -386,7 +465,7 @@
/**
* {@link Sink} for implementing sort on int streams.
*/
- private static final class IntSortingSink extends Sink.ChainedInt<Integer> {
+ private static final class IntSortingSink extends AbstractIntSortingSink {
private SpinedBuffer.OfInt b;
IntSortingSink(Sink<? super Integer> sink) {
@@ -405,8 +484,16 @@
int[] ints = b.asPrimitiveArray();
Arrays.sort(ints);
downstream.begin(ints.length);
- for (int anInt : ints)
- downstream.accept(anInt);
+ if (!cancellationWasRequested) {
+ for (int anInt : ints)
+ downstream.accept(anInt);
+ }
+ else {
+ for (int anInt : ints) {
+ if (downstream.cancellationRequested()) break;
+ downstream.accept(anInt);
+ }
+ }
downstream.end();
}
@@ -417,9 +504,26 @@
}
/**
+ * Abstract {@link Sink} for implementing sort on long streams.
+ */
+ private static abstract class AbstractLongSortingSink extends Sink.ChainedLong<Long> {
+ protected boolean cancellationWasRequested;
+
+ AbstractLongSortingSink(Sink<? super Long> downstream) {
+ super(downstream);
+ }
+
+ @Override
+ public final boolean cancellationRequested() {
+ cancellationWasRequested = true;
+ return false;
+ }
+ }
+
+ /**
* {@link Sink} for implementing sort on SIZED long streams.
*/
- private static final class SizedLongSortingSink extends Sink.ChainedLong<Long> {
+ private static final class SizedLongSortingSink extends AbstractLongSortingSink {
private long[] array;
private int offset;
@@ -438,8 +542,14 @@
public void end() {
Arrays.sort(array, 0, offset);
downstream.begin(offset);
- for (int i = 0; i < offset; i++)
- downstream.accept(array[i]);
+ if (!cancellationWasRequested) {
+ for (int i = 0; i < offset; i++)
+ downstream.accept(array[i]);
+ }
+ else {
+ for (int i = 0; i < offset && !downstream.cancellationRequested(); i++)
+ downstream.accept(array[i]);
+ }
downstream.end();
array = null;
}
@@ -453,7 +563,7 @@
/**
* {@link Sink} for implementing sort on long streams.
*/
- private static final class LongSortingSink extends Sink.ChainedLong<Long> {
+ private static final class LongSortingSink extends AbstractLongSortingSink {
private SpinedBuffer.OfLong b;
LongSortingSink(Sink<? super Long> sink) {
@@ -472,8 +582,16 @@
long[] longs = b.asPrimitiveArray();
Arrays.sort(longs);
downstream.begin(longs.length);
- for (long aLong : longs)
- downstream.accept(aLong);
+ if (!cancellationWasRequested) {
+ for (long aLong : longs)
+ downstream.accept(aLong);
+ }
+ else {
+ for (long aLong : longs) {
+ if (downstream.cancellationRequested()) break;
+ downstream.accept(aLong);
+ }
+ }
downstream.end();
}
@@ -484,9 +602,26 @@
}
/**
+ * Abstract {@link Sink} for implementing sort on long streams.
+ */
+ private static abstract class AbstractDoubleSortingSink extends Sink.ChainedDouble<Double> {
+ protected boolean cancellationWasRequested;
+
+ AbstractDoubleSortingSink(Sink<? super Double> downstream) {
+ super(downstream);
+ }
+
+ @Override
+ public final boolean cancellationRequested() {
+ cancellationWasRequested = true;
+ return false;
+ }
+ }
+
+ /**
* {@link Sink} for implementing sort on SIZED double streams.
*/
- private static final class SizedDoubleSortingSink extends Sink.ChainedDouble<Double> {
+ private static final class SizedDoubleSortingSink extends AbstractDoubleSortingSink {
private double[] array;
private int offset;
@@ -505,8 +640,14 @@
public void end() {
Arrays.sort(array, 0, offset);
downstream.begin(offset);
- for (int i = 0; i < offset; i++)
- downstream.accept(array[i]);
+ if (!cancellationWasRequested) {
+ for (int i = 0; i < offset; i++)
+ downstream.accept(array[i]);
+ }
+ else {
+ for (int i = 0; i < offset && !downstream.cancellationRequested(); i++)
+ downstream.accept(array[i]);
+ }
downstream.end();
array = null;
}
@@ -520,7 +661,7 @@
/**
* {@link Sink} for implementing sort on double streams.
*/
- private static final class DoubleSortingSink extends Sink.ChainedDouble<Double> {
+ private static final class DoubleSortingSink extends AbstractDoubleSortingSink {
private SpinedBuffer.OfDouble b;
DoubleSortingSink(Sink<? super Double> sink) {
@@ -539,8 +680,16 @@
double[] doubles = b.asPrimitiveArray();
Arrays.sort(doubles);
downstream.begin(doubles.length);
- for (double aDouble : doubles)
- downstream.accept(aDouble);
+ if (!cancellationWasRequested) {
+ for (double aDouble : doubles)
+ downstream.accept(aDouble);
+ }
+ else {
+ for (double aDouble : doubles) {
+ if (downstream.cancellationRequested()) break;
+ downstream.accept(aDouble);
+ }
+ }
downstream.end();
}
--- a/jdk/src/share/classes/sun/launcher/LauncherHelper.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/src/share/classes/sun/launcher/LauncherHelper.java Tue May 06 12:20:29 2014 +0100
@@ -69,6 +69,14 @@
public enum LauncherHelper {
INSTANCE;
+
+ // used to identify JavaFX applications
+ private static final String JAVAFX_APPLICATION_MARKER =
+ "JavaFX-Application-Class";
+ private static final String JAVAFX_APPLICATION_CLASS_NAME =
+ "javafx.application.Application";
+ private static final String JAVAFX_FXHELPER_CLASS_NAME_SUFFIX =
+ "sun.launcher.LauncherHelper$FXHelper";
private static final String MAIN_CLASS = "Main-Class";
private static StringBuilder outBuf = new StringBuilder();
@@ -418,7 +426,8 @@
* exists to enforce compliance with the jar specification
*/
if (mainAttrs.containsKey(
- new Attributes.Name(FXHelper.JAVAFX_APPLICATION_MARKER))) {
+ new Attributes.Name(JAVAFX_APPLICATION_MARKER))) {
+ FXHelper.setFXLaunchParameters(jarname, LM_JAR);
return FXHelper.class.getName();
}
@@ -516,9 +525,9 @@
* the main class may or may not have a main method, so do this before
* validating the main class.
*/
- if (mainClass.equals(FXHelper.class) ||
- FXHelper.doesExtendFXApplication(mainClass)) {
- // Will abort() if there are problems with the FX runtime
+ if (JAVAFX_FXHELPER_CLASS_NAME_SUFFIX.equals(mainClass.getName()) ||
+ doesExtendFXApplication(mainClass)) {
+ // Will abort() if there are problems with FX runtime
FXHelper.setFXLaunchParameters(what, mode);
return FXHelper.class;
}
@@ -537,6 +546,21 @@
return appClass;
}
+ /*
+ * Check if the given class is a JavaFX Application class. This is done
+ * in a way that does not cause the Application class to load or throw
+ * ClassNotFoundException if the JavaFX runtime is not available.
+ */
+ private static boolean doesExtendFXApplication(Class<?> mainClass) {
+ for (Class<?> sc = mainClass.getSuperclass(); sc != null;
+ sc = sc.getSuperclass()) {
+ if (sc.getName().equals(JAVAFX_APPLICATION_CLASS_NAME)) {
+ return true;
+ }
+ }
+ return false;
+ }
+
// Check the existence and signature of main and abort if incorrect
static void validateMainClass(Class<?> mainClass) {
Method mainMethod;
@@ -545,7 +569,7 @@
} catch (NoSuchMethodException nsme) {
// invalid main or not FX application, abort with an error
abort(null, "java.launcher.cls.error4", mainClass.getName(),
- FXHelper.JAVAFX_APPLICATION_CLASS_NAME);
+ JAVAFX_APPLICATION_CLASS_NAME);
return; // Avoid compiler issues
}
@@ -668,11 +692,7 @@
}
static final class FXHelper {
- // Marker entry in jar manifest that designates a JavaFX application jar
- private static final String JAVAFX_APPLICATION_MARKER =
- "JavaFX-Application-Class";
- private static final String JAVAFX_APPLICATION_CLASS_NAME =
- "javafx.application.Application";
+
private static final String JAVAFX_LAUNCHER_CLASS_NAME =
"com.sun.javafx.application.LauncherImpl";
@@ -742,21 +762,6 @@
}
}
- /*
- * Check if the given class is a JavaFX Application class. This is done
- * in a way that does not cause the Application class to load or throw
- * ClassNotFoundException if the JavaFX runtime is not available.
- */
- private static boolean doesExtendFXApplication(Class<?> mainClass) {
- for (Class<?> sc = mainClass.getSuperclass(); sc != null;
- sc = sc.getSuperclass()) {
- if (sc.getName().equals(JAVAFX_APPLICATION_CLASS_NAME)) {
- return true;
- }
- }
- return false;
- }
-
public static void main(String... args) throws Exception {
if (fxLauncherMethod == null
|| fxLaunchMode == null
--- a/jdk/test/ProblemList.txt Fri May 02 19:38:33 2014 +0100
+++ b/jdk/test/ProblemList.txt Tue May 06 12:20:29 2014 +0100
@@ -249,6 +249,18 @@
# jdk_jdi
+# 6983531
+com/sun/jdi/BadHandshakeTest.java linux-all, windows-all
+
+# 8004127
+com/sun/jdi/RedefineImplementor.sh generic-all
+
+# 8031555
+com/sun/jdi/JdbMethodExitTest.sh generic-all
+
+# 8041934
+com/sun/jdi/RepStep.java generic-all
+
############################################################################
# jdk_util
@@ -270,4 +282,10 @@
# 8033104
sun/jvmstat/monitor/MonitoredVm/CR6672135.java generic-all
+# 8041989
+sun/tools/jstatd/TestJstatdDefaults.java generic-all
+
+# 8037285
+sun/tools/jstatd/TestJstatdServer.java generic-all
+
############################################################################
--- a/jdk/test/java/util/BitSet/BSMethods.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/test/java/util/BitSet/BSMethods.java Tue May 06 12:20:29 2014 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2014, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -23,7 +23,7 @@
/* @test
* @bug 4098239 4107540 4080736 4261102 4274710 4305272
- * 4979017 4979028 4979031 5030267 6222207
+ * 4979017 4979028 4979031 5030267 6222207 8040806
* @summary Test the operation of the methods of BitSet class
* @author Mike McCloskey, Martin Buchholz
*/
@@ -897,6 +897,16 @@
private static void testToString() {
check(new BitSet().toString().equals("{}"));
check(makeSet(2,3,42,43,234).toString().equals("{2, 3, 42, 43, 234}"));
+ try {
+ check(makeSet(Integer.MAX_VALUE-1).toString().equals(
+ "{" + (Integer.MAX_VALUE-1) + "}"));
+ check(makeSet(Integer.MAX_VALUE).toString().equals(
+ "{" + Integer.MAX_VALUE + "}"));
+ check(makeSet(0, 1, Integer.MAX_VALUE-1, Integer.MAX_VALUE).toString().equals(
+ "{0, 1, " + (Integer.MAX_VALUE-1) + ", " + Integer.MAX_VALUE + "}"));
+ } catch (IndexOutOfBoundsException exc) {
+ fail("toString() with indices near MAX_VALUE");
+ }
}
private static void testLogicalIdentities() {
--- a/jdk/test/java/util/stream/test/org/openjdk/tests/java/util/stream/SortedOpTest.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/test/java/util/stream/test/org/openjdk/tests/java/util/stream/SortedOpTest.java Tue May 06 12:20:29 2014 +0100
@@ -26,6 +26,9 @@
import java.util.*;
import java.util.Spliterators;
+import java.util.concurrent.atomic.AtomicInteger;
+import java.util.function.BiFunction;
+import java.util.function.Consumer;
import java.util.function.Function;
import java.util.function.Supplier;
import java.util.stream.*;
@@ -122,24 +125,33 @@
@Test(groups = { "serialization-hostile" })
public void testSequentialShortCircuitTerminal() {
- // The sorted op for sequential evaluation will buffer all elements when accepting
- // then at the end sort those elements and push those elements downstream
+ // The sorted op for sequential evaluation will buffer all elements when
+ // accepting then at the end sort those elements and push those elements
+ // downstream
+ // A peek operation is added in-between the sorted() and terminal
+ // operation that counts the number of calls to its consumer and
+ // asserts that the number of calls is at most the required quantity
List<Integer> l = Arrays.asList(5, 4, 3, 2, 1);
+ Function<Integer, Stream<Integer>> knownSize = i -> assertNCallsOnly(
+ l.stream().sorted(), Stream::peek, i);
+ Function<Integer, Stream<Integer>> unknownSize = i -> assertNCallsOnly
+ (unknownSizeStream(l).sorted(), Stream::peek, i);
+
// Find
- assertEquals(l.stream().sorted().findFirst(), Optional.of(1));
- assertEquals(l.stream().sorted().findAny(), Optional.of(1));
- assertEquals(unknownSizeStream(l).sorted().findFirst(), Optional.of(1));
- assertEquals(unknownSizeStream(l).sorted().findAny(), Optional.of(1));
+ assertEquals(knownSize.apply(1).findFirst(), Optional.of(1));
+ assertEquals(knownSize.apply(1).findAny(), Optional.of(1));
+ assertEquals(unknownSize.apply(1).findFirst(), Optional.of(1));
+ assertEquals(unknownSize.apply(1).findAny(), Optional.of(1));
// Match
- assertEquals(l.stream().sorted().anyMatch(i -> i == 2), true);
- assertEquals(l.stream().sorted().noneMatch(i -> i == 2), false);
- assertEquals(l.stream().sorted().allMatch(i -> i == 2), false);
- assertEquals(unknownSizeStream(l).sorted().anyMatch(i -> i == 2), true);
- assertEquals(unknownSizeStream(l).sorted().noneMatch(i -> i == 2), false);
- assertEquals(unknownSizeStream(l).sorted().allMatch(i -> i == 2), false);
+ assertEquals(knownSize.apply(2).anyMatch(i -> i == 2), true);
+ assertEquals(knownSize.apply(2).noneMatch(i -> i == 2), false);
+ assertEquals(knownSize.apply(2).allMatch(i -> i == 2), false);
+ assertEquals(unknownSize.apply(2).anyMatch(i -> i == 2), true);
+ assertEquals(unknownSize.apply(2).noneMatch(i -> i == 2), false);
+ assertEquals(unknownSize.apply(2).allMatch(i -> i == 2), false);
}
private <T> Stream<T> unknownSizeStream(List<T> l) {
@@ -199,19 +211,24 @@
public void testIntSequentialShortCircuitTerminal() {
int[] a = new int[]{5, 4, 3, 2, 1};
+ Function<Integer, IntStream> knownSize = i -> assertNCallsOnly(
+ Arrays.stream(a).sorted(), (s, c) -> s.peek(c::accept), i);
+ Function<Integer, IntStream> unknownSize = i -> assertNCallsOnly
+ (unknownSizeIntStream(a).sorted(), (s, c) -> s.peek(c::accept), i);
+
// Find
- assertEquals(Arrays.stream(a).sorted().findFirst(), OptionalInt.of(1));
- assertEquals(Arrays.stream(a).sorted().findAny(), OptionalInt.of(1));
- assertEquals(unknownSizeIntStream(a).sorted().findFirst(), OptionalInt.of(1));
- assertEquals(unknownSizeIntStream(a).sorted().findAny(), OptionalInt.of(1));
+ assertEquals(knownSize.apply(1).findFirst(), OptionalInt.of(1));
+ assertEquals(knownSize.apply(1).findAny(), OptionalInt.of(1));
+ assertEquals(unknownSize.apply(1).findFirst(), OptionalInt.of(1));
+ assertEquals(unknownSize.apply(1).findAny(), OptionalInt.of(1));
// Match
- assertEquals(Arrays.stream(a).sorted().anyMatch(i -> i == 2), true);
- assertEquals(Arrays.stream(a).sorted().noneMatch(i -> i == 2), false);
- assertEquals(Arrays.stream(a).sorted().allMatch(i -> i == 2), false);
- assertEquals(unknownSizeIntStream(a).sorted().anyMatch(i -> i == 2), true);
- assertEquals(unknownSizeIntStream(a).sorted().noneMatch(i -> i == 2), false);
- assertEquals(unknownSizeIntStream(a).sorted().allMatch(i -> i == 2), false);
+ assertEquals(knownSize.apply(2).anyMatch(i -> i == 2), true);
+ assertEquals(knownSize.apply(2).noneMatch(i -> i == 2), false);
+ assertEquals(knownSize.apply(2).allMatch(i -> i == 2), false);
+ assertEquals(unknownSize.apply(2).anyMatch(i -> i == 2), true);
+ assertEquals(unknownSize.apply(2).noneMatch(i -> i == 2), false);
+ assertEquals(unknownSize.apply(2).allMatch(i -> i == 2), false);
}
private IntStream unknownSizeIntStream(int[] a) {
@@ -242,19 +259,24 @@
public void testLongSequentialShortCircuitTerminal() {
long[] a = new long[]{5, 4, 3, 2, 1};
+ Function<Integer, LongStream> knownSize = i -> assertNCallsOnly(
+ Arrays.stream(a).sorted(), (s, c) -> s.peek(c::accept), i);
+ Function<Integer, LongStream> unknownSize = i -> assertNCallsOnly
+ (unknownSizeLongStream(a).sorted(), (s, c) -> s.peek(c::accept), i);
+
// Find
- assertEquals(Arrays.stream(a).sorted().findFirst(), OptionalLong.of(1));
- assertEquals(Arrays.stream(a).sorted().findAny(), OptionalLong.of(1));
- assertEquals(unknownSizeLongStream(a).sorted().findFirst(), OptionalLong.of(1));
- assertEquals(unknownSizeLongStream(a).sorted().findAny(), OptionalLong.of(1));
+ assertEquals(knownSize.apply(1).findFirst(), OptionalLong.of(1));
+ assertEquals(knownSize.apply(1).findAny(), OptionalLong.of(1));
+ assertEquals(unknownSize.apply(1).findFirst(), OptionalLong.of(1));
+ assertEquals(unknownSize.apply(1).findAny(), OptionalLong.of(1));
// Match
- assertEquals(Arrays.stream(a).sorted().anyMatch(i -> i == 2), true);
- assertEquals(Arrays.stream(a).sorted().noneMatch(i -> i == 2), false);
- assertEquals(Arrays.stream(a).sorted().allMatch(i -> i == 2), false);
- assertEquals(unknownSizeLongStream(a).sorted().anyMatch(i -> i == 2), true);
- assertEquals(unknownSizeLongStream(a).sorted().noneMatch(i -> i == 2), false);
- assertEquals(unknownSizeLongStream(a).sorted().allMatch(i -> i == 2), false);
+ assertEquals(knownSize.apply(2).anyMatch(i -> i == 2), true);
+ assertEquals(knownSize.apply(2).noneMatch(i -> i == 2), false);
+ assertEquals(knownSize.apply(2).allMatch(i -> i == 2), false);
+ assertEquals(unknownSize.apply(2).anyMatch(i -> i == 2), true);
+ assertEquals(unknownSize.apply(2).noneMatch(i -> i == 2), false);
+ assertEquals(unknownSize.apply(2).allMatch(i -> i == 2), false);
}
private LongStream unknownSizeLongStream(long[] a) {
@@ -285,19 +307,24 @@
public void testDoubleSequentialShortCircuitTerminal() {
double[] a = new double[]{5.0, 4.0, 3.0, 2.0, 1.0};
+ Function<Integer, DoubleStream> knownSize = i -> assertNCallsOnly(
+ Arrays.stream(a).sorted(), (s, c) -> s.peek(c::accept), i);
+ Function<Integer, DoubleStream> unknownSize = i -> assertNCallsOnly
+ (unknownSizeDoubleStream(a).sorted(), (s, c) -> s.peek(c::accept), i);
+
// Find
- assertEquals(Arrays.stream(a).sorted().findFirst(), OptionalDouble.of(1));
- assertEquals(Arrays.stream(a).sorted().findAny(), OptionalDouble.of(1));
- assertEquals(unknownSizeDoubleStream(a).sorted().findFirst(), OptionalDouble.of(1));
- assertEquals(unknownSizeDoubleStream(a).sorted().findAny(), OptionalDouble.of(1));
+ assertEquals(knownSize.apply(1).findFirst(), OptionalDouble.of(1));
+ assertEquals(knownSize.apply(1).findAny(), OptionalDouble.of(1));
+ assertEquals(unknownSize.apply(1).findFirst(), OptionalDouble.of(1));
+ assertEquals(unknownSize.apply(1).findAny(), OptionalDouble.of(1));
// Match
- assertEquals(Arrays.stream(a).sorted().anyMatch(i -> i == 2.0), true);
- assertEquals(Arrays.stream(a).sorted().noneMatch(i -> i == 2.0), false);
- assertEquals(Arrays.stream(a).sorted().allMatch(i -> i == 2.0), false);
- assertEquals(unknownSizeDoubleStream(a).sorted().anyMatch(i -> i == 2.0), true);
- assertEquals(unknownSizeDoubleStream(a).sorted().noneMatch(i -> i == 2.0), false);
- assertEquals(unknownSizeDoubleStream(a).sorted().allMatch(i -> i == 2.0), false);
+ assertEquals(knownSize.apply(2).anyMatch(i -> i == 2.0), true);
+ assertEquals(knownSize.apply(2).noneMatch(i -> i == 2.0), false);
+ assertEquals(knownSize.apply(2).allMatch(i -> i == 2.0), false);
+ assertEquals(unknownSize.apply(2).anyMatch(i -> i == 2.0), true);
+ assertEquals(unknownSize.apply(2).noneMatch(i -> i == 2.0), false);
+ assertEquals(unknownSize.apply(2).allMatch(i -> i == 2.0), false);
}
private DoubleStream unknownSizeDoubleStream(double[] a) {
@@ -321,4 +348,14 @@
assertSorted(result);
assertContentsUnordered(data, result);
}
+
+ /**
+ * Interpose a consumer that asserts it is called at most N times.
+ */
+ <T, S extends BaseStream<T, S>, R> S assertNCallsOnly(S s, BiFunction<S, Consumer<T>, S> pf, int n) {
+ AtomicInteger boxedInt = new AtomicInteger();
+ return pf.apply(s, i -> {
+ assertFalse(boxedInt.incrementAndGet() > n, "Intermediate op called more than " + n + " time(s)");
+ });
+ }
}
--- a/jdk/test/tools/launcher/FXLauncherTest.java Fri May 02 19:38:33 2014 +0100
+++ b/jdk/test/tools/launcher/FXLauncherTest.java Tue May 06 12:20:29 2014 +0100
@@ -23,7 +23,7 @@
/*
* @test
- * @bug 8001533 8004547
+ * @bug 8001533 8004547 8035782
* @summary Test launching FX application with java -jar
* Test uses main method and blank main method, a jfx app class and an incorrest
* jfx app class, a main-class for the manifest, a bogus one and none.
@@ -373,6 +373,11 @@
System.out.println(tr);
throw new Exception("jfxrt.jar is being loaded, it should not be!");
}
+ if (!tr.notContains("sun.launcher.LauncherHelper$FXHelper")) {
+ System.out.println("testing for extraneous 'sun.launcher.LauncherHelper$FXHelper'");
+ System.out.println(tr);
+ throw new Exception("FXHelper is being loaded, it should not be!");
+ }
for (String p : APP_PARMS) {
if (!tr.contains(p)) {
System.err.println("ERROR: Did not find "