8036785: ChronoLocalDate refers to generics that have been removed
authorscolebourne
Thu, 06 Mar 2014 17:46:12 +0000
changeset 23596 ac4e06be5763
parent 23595 08ca64c3f0e4
child 23597 d4ca7cc9c0c9
8036785: ChronoLocalDate refers to generics that have been removed Reviewed-by: alanb, rriggs Contributed-by: Stephen Colebourne <scolebourne@joda.org>
jdk/src/share/classes/java/time/chrono/ChronoLocalDate.java
--- a/jdk/src/share/classes/java/time/chrono/ChronoLocalDate.java	Sat Mar 29 15:01:47 2014 -0400
+++ b/jdk/src/share/classes/java/time/chrono/ChronoLocalDate.java	Thu Mar 06 17:46:12 2014 +0000
@@ -101,19 +101,12 @@
  * <h3>When to use this interface</h3>
  * The design of the API encourages the use of {@code LocalDate} rather than this
  * interface, even in the case where the application needs to deal with multiple
- * calendar systems. The rationale for this is explored in the following documentation.
- * <p>
- * The primary use case where this interface should be used is where the generic
- * type parameter {@code <D>} is fully defined as a specific chronology.
- * In that case, the assumptions of that chronology are known at development
- * time and specified in the code.
+ * calendar systems.
  * <p>
- * When the chronology is defined in the generic type parameter as ? or otherwise
- * unknown at development time, the rest of the discussion below applies.
- * <p>
- * To emphasize the point, declaring a method signature, field or variable as this
- * interface type can initially seem like the sensible way to globalize an application,
- * however it is usually the wrong approach.
+ * This concept can seem surprising at first, as the natural way to globalize an
+ * application might initially appear to be to abstract the calendar system.
+ * However, as explored below, abstracting the calendar system is usually the wrong
+ * approach, resulting in logic errors and hard to find bugs.
  * As such, it should be considered an application-wide architectural decision to choose
  * to use this interface as opposed to {@code LocalDate}.
  *