alvinalexander.com | career | drupal | java | mac | mysql | perl | scala | uml | unix  

Java example source code file (upgradeto120.xml)

This example Java source code file (upgradeto120.xml) is included in the alvinalexander.com "Java Source Code Warehouse" project. The intent of this project is to help you "Learn Java by Example" TM.

Learn more about this Java project at its project page.

Java - Java tags/keywords

api, chronology, datetimeformatter, fixed, jdk, joda-time, new, please, the, these, this, upgrade, yes, zonedchronology

The upgradeto120.xml Java example source code

<?xml version="1.0" encoding="ISO-8859-1"?>

<document>
 <properties>
  <title>Java date and time API - Upgrade from 1.1 to 1.2
  <author>Stephen Colebourne
 </properties>

<body>

<section name="Upgrade">
<p>
These are the release notes and advice for upgrading Joda-Time from
version 1.1 to version 1.2.
<source>
Joda-Time version 1.2
---------------------

Joda-Time is a date and time handling library that seeks to replace the JDK
Date and Calendar classes.

This is the third full release of Joda-Time.
This release focuses on bug fixes, with a few new features.

We recommend JDK 1.3 or later, and have performed no testing on earlier JDKs.

Joda-Time is licensed under the business-friendly Apache License Version 2.
This is the same license as all of Apache, plus other open source projects such as Spring.
The intent is to make the code available to the Java community with the minimum
of restrictions. If the license causes you problems please contact the mailing list.

** Please also check out the JSP and Hibernate contributed projects **


Incompatible changes since 1.1
------------------------------
Binary compatible - Yes, except
  - The internal classes BaseGJChronology and CommonGJChronology have been removed
    They were implementation classes and you should not have been using them
    Please contact the mailing list if this causes you problems

Source compatible - Yes
  - v1.1 and v1.2 are source compatible in their public and protected API

Serialization compatible - Yes
  - Chronology serialization has changed, however the two formats are compatible
  - v1.1 did not serialize the Chronology minimum days in first week field properly, v1.2 does

Data compatible - Yes
  - DateTimeZone data updated to version 2005q


Deprecations since 1.1
----------------------
- Chronology factory methods, such as getISO() and getCopticUTC()
  You should now use the chrono package directly:
    Chronology.getCoptic(zone)   is replaced by
    CopticChronology.getInstance(zone)
  These factory methods have been removed as they were unable to scale
  suitably as more and more chronologies are added


Bug fixes since 1.1
-------------------
- ZonedChronology
  getMaximumValue(ReadablePartial)/getMinimumValue(ReadablePartial)
  Methods returned incorrect result

- ZonedChronology
  Better detection and handling of offset calculation overflow, throwing
  an ArithmeticException.

- DateTimeZone
  Handles offset calculation overflow errors for instants near Long.MAX_VALUE,
  ending the offset transition sequence.

- DateTimeFormatter
  Reverts to UTC if time zone offset calculation causes overflow. This allows at least
  the time of day fields to be printed for instants near Long.MIN_VALUE or Long.MAX_VALUE.

- CopticChronology
  Fixed regression in month of year calculation which affected getMaximumValue
  on dayOfMonth field.

- CopticChronology
  Fixed month duration field to handle short 13th month correctly.

- ZonedChronology
  Fixed getting text values for fields from getAs[Short]Text(int value, Locale locale).

- Gregorian, Julian, GJ and Coptic
  These Chronology classes did not correctly store the minimum days in first week
  during serialization

- DateTimeFormatter
  Fixed printing of time zone name near DST transition

- YearMonthDay
  Fixed addition where date starts on a leap day
  Fixed addition in the GJChronology

- DateTimeFormat
  Pattern letter 'K' was using the wrong underlying implementation


Enhancements since 1.1
----------------------
- IslamicChronology
- EthiopicChronology
  New Chronologies

- DateTime.Property.withMaximumValue() (also DateMidnight/YearMonthDay etc)
- DateTime.Property.withMinimumValue()
  Returns a copy of the base datetime with the specified field set to
  the maximum or minimum value. This is useful to get the last day of the month.
  - DateTime lastDayOfMonth = dt.dayOfMonth().withMaximumValue();

- DateTime.Property.toInterval() (also DateMidnight/MutableDateTime)
  New method to convert return an Interval object over the span of the property
  Thus dt.monthOfYear().toInterval() returns an interval from the start to
  the end of the month

- MutableDateTime.property(DateTimeFieldType)
  Gets the property by type. Complements the method already on DateTime/DateMidnight.

- YearMonthDay.fromCalendarFields()
- YearMonthDay.fromDateFields()
- TimeOfDay.fromCalendarFields()
- TimeOfDay.fromDateFields()
  New factory methods to create a YearMonthDay/TimeOfDay using exactly the same
  field values as the JDK objects, thus ignoring time zone effects

- FieldUtils
  Performance optimization when adding by scalars of one or negative one. The
  overflow detecting multiplication skips the multiply and divide check for
  these values.
</source>
</p>
</section>

</body>
</document>

Other Java examples (source code examples)

Here is a short list of links related to this Java upgradeto120.xml source code file:

... this post is sponsored by my books ...

#1 New Release!

FP Best Seller

 

new blog posts

 

Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.

A percentage of advertising revenue from
pages under the /java/jwarehouse URI on this website is
paid back to open source projects.