You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sis.apache.org by de...@apache.org on 2014/01/06 06:27:53 UTC
svn commit: r1555663 - in /sis/branches/JDK6: ./
core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/
core/sis-referencing/src/main/java/org/apache/sis/referencing/
core/sis-referencing/src/main/java/org/apache/sis/referencing/c...
Author: desruisseaux
Date: Mon Jan 6 05:27:52 2014
New Revision: 1555663
URL: http://svn.apache.org/r1555663
Log:
Merge from the JDK7 branch.
Added:
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_EngineeringDatum.java
- copied unchanged from r1555662, sis/branches/JDK7/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_EngineeringDatum.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_CylindricalCS.java
- copied unchanged from r1555662, sis/branches/JDK7/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_CylindricalCS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_LinearCS.java
- copied unchanged from r1555662, sis/branches/JDK7/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_LinearCS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_PolarCS.java
- copied unchanged from r1555662, sis/branches/JDK7/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_PolarCS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_SphericalCS.java
- copied unchanged from r1555662, sis/branches/JDK7/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_SphericalCS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_UserDefinedCS.java
- copied unchanged from r1555662, sis/branches/JDK7/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_UserDefinedCS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/DefaultEngineeringCRS.java
- copied unchanged from r1555662, sis/branches/JDK7/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/DefaultEngineeringCRS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/DefaultGeocentricCRS.java
- copied unchanged from r1555662, sis/branches/JDK7/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/DefaultGeocentricCRS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/DefaultGeodeticCRS.java
- copied unchanged from r1555662, sis/branches/JDK7/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/DefaultGeodeticCRS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/DefaultGeographicCRS.java
- copied unchanged from r1555662, sis/branches/JDK7/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/DefaultGeographicCRS.java
sis/branches/JDK6/core/sis-referencing/src/test/java/org/apache/sis/referencing/crs/
- copied from r1555662, sis/branches/JDK7/core/sis-referencing/src/test/java/org/apache/sis/referencing/crs/
sis/branches/JDK6/core/sis-referencing/src/test/resources/org/apache/sis/referencing/crs/
- copied from r1555662, sis/branches/JDK7/core/sis-referencing/src/test/resources/org/apache/sis/referencing/crs/
sis/branches/JDK6/core/sis-referencing/src/test/resources/org/apache/sis/referencing/datum/Mean Sea Level (GML 3.1).xml
- copied unchanged from r1555662, sis/branches/JDK7/core/sis-referencing/src/test/resources/org/apache/sis/referencing/datum/Mean Sea Level (GML 3.1).xml
Modified:
sis/branches/JDK6/ (props changed)
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_Ellipsoid.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_GeodeticDatum.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_ImageDatum.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_PrimeMeridian.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_TemporalDatum.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_VerticalDatum.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_AffineCS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_CartesianCS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_CoordinateSystemAxis.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_EllipsoidalCS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_TimeCS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_VerticalCS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/SC_VerticalCRS.java (props changed)
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/AbstractIdentifiedObject.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/AbstractCRS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/DefaultImageCRS.java (contents, props changed)
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/DefaultTemporalCRS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/DefaultVerticalCRS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/package-info.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultAffineCS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultCartesianCS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultCompoundCS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultCylindricalCS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultEllipsoidalCS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultLinearCS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultPolarCS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultSphericalCS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultTimeCS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultVerticalCS.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/datum/AbstractDatum.java
sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/datum/DefaultVerticalDatum.java
sis/branches/JDK6/core/sis-referencing/src/test/java/org/apache/sis/referencing/GeodeticObjectVerifier.java
sis/branches/JDK6/core/sis-referencing/src/test/java/org/apache/sis/referencing/datum/DefaultVerticalDatumTest.java
sis/branches/JDK6/core/sis-referencing/src/test/java/org/apache/sis/test/suite/ReferencingTestSuite.java
sis/branches/JDK6/core/sis-referencing/src/test/resources/org/apache/sis/referencing/cs/CartesianCS.xml
sis/branches/JDK6/core/sis-referencing/src/test/resources/org/apache/sis/referencing/cs/EllipsoidalCS.xml
sis/branches/JDK6/core/sis-referencing/src/test/resources/org/apache/sis/referencing/datum/Mean Sea Level.xml
sis/branches/JDK6/core/sis-utility/src/main/java/org/apache/sis/xml/XML.java
Propchange: sis/branches/JDK6/
------------------------------------------------------------------------------
Merged /sis/branches/JDK7:r1555454-1555662
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_Ellipsoid.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_Ellipsoid.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_Ellipsoid.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_Ellipsoid.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -54,20 +54,20 @@ public final class CD_Ellipsoid extends
/**
* Constructor for the {@link #wrap} method only.
*/
- private CD_Ellipsoid(final Ellipsoid metadata) {
- super(metadata);
+ private CD_Ellipsoid(final Ellipsoid ellipsoid) {
+ super(ellipsoid);
}
/**
* Invoked by {@link PropertyType} at marshalling time for wrapping the given value
* in a {@code <gml:Ellipsoid>} XML element.
*
- * @param value The element to marshall.
+ * @param ellipsoid The element to marshall.
* @return A {@code PropertyType} wrapping the given the element.
*/
@Override
- protected CD_Ellipsoid wrap(final Ellipsoid value) {
- return new CD_Ellipsoid(value);
+ protected CD_Ellipsoid wrap(final Ellipsoid ellipsoid) {
+ return new CD_Ellipsoid(ellipsoid);
}
/**
@@ -85,9 +85,9 @@ public final class CD_Ellipsoid extends
/**
* Invoked by JAXB at unmarshalling time for storing the result temporarily.
*
- * @param element The unmarshalled element.
+ * @param ellipsoid The unmarshalled element.
*/
- public void setElement(final DefaultEllipsoid element) {
- this.metadata = element;
+ public void setElement(final DefaultEllipsoid ellipsoid) {
+ metadata = ellipsoid;
}
}
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_GeodeticDatum.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_GeodeticDatum.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_GeodeticDatum.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_GeodeticDatum.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -54,20 +54,20 @@ public final class CD_GeodeticDatum exte
/**
* Constructor for the {@link #wrap} method only.
*/
- private CD_GeodeticDatum(final GeodeticDatum metadata) {
- super(metadata);
+ private CD_GeodeticDatum(final GeodeticDatum datum) {
+ super(datum);
}
/**
* Invoked by {@link PropertyType} at marshalling time for wrapping the given value
* in a {@code <gml:GeodeticDatum>} XML element.
*
- * @param value The element to marshall.
+ * @param datum The element to marshall.
* @return A {@code PropertyType} wrapping the given the element.
*/
@Override
- protected CD_GeodeticDatum wrap(final GeodeticDatum value) {
- return new CD_GeodeticDatum(value);
+ protected CD_GeodeticDatum wrap(final GeodeticDatum datum) {
+ return new CD_GeodeticDatum(datum);
}
/**
@@ -85,9 +85,9 @@ public final class CD_GeodeticDatum exte
/**
* Invoked by JAXB at unmarshalling time for storing the result temporarily.
*
- * @param element The unmarshalled element.
+ * @param datum The unmarshalled element.
*/
- public void setElement(final DefaultGeodeticDatum element) {
- this.metadata = element;
+ public void setElement(final DefaultGeodeticDatum datum) {
+ metadata = datum;
}
}
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_ImageDatum.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_ImageDatum.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_ImageDatum.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_ImageDatum.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -54,20 +54,20 @@ public final class CD_ImageDatum extends
/**
* Constructor for the {@link #wrap} method only.
*/
- private CD_ImageDatum(final ImageDatum metadata) {
- super(metadata);
+ private CD_ImageDatum(final ImageDatum datum) {
+ super(datum);
}
/**
* Invoked by {@link PropertyType} at marshalling time for wrapping the given value
* in a {@code <gml:ImageDatum>} XML element.
*
- * @param value The element to marshall.
+ * @param datum The element to marshall.
* @return A {@code PropertyType} wrapping the given the element.
*/
@Override
- protected CD_ImageDatum wrap(final ImageDatum value) {
- return new CD_ImageDatum(value);
+ protected CD_ImageDatum wrap(final ImageDatum datum) {
+ return new CD_ImageDatum(datum);
}
/**
@@ -85,9 +85,9 @@ public final class CD_ImageDatum extends
/**
* Invoked by JAXB at unmarshalling time for storing the result temporarily.
*
- * @param element The unmarshalled element.
+ * @param datum The unmarshalled element.
*/
- public void setElement(final DefaultImageDatum element) {
- this.metadata = element;
+ public void setElement(final DefaultImageDatum datum) {
+ metadata = datum;
}
}
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_PrimeMeridian.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_PrimeMeridian.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_PrimeMeridian.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_PrimeMeridian.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -54,20 +54,20 @@ public final class CD_PrimeMeridian exte
/**
* Constructor for the {@link #wrap} method only.
*/
- private CD_PrimeMeridian(final PrimeMeridian metadata) {
- super(metadata);
+ private CD_PrimeMeridian(final PrimeMeridian datum) {
+ super(datum);
}
/**
* Invoked by {@link PropertyType} at marshalling time for wrapping the given value
* in a {@code <gml:PrimeMeridian>} XML element.
*
- * @param value The element to marshall.
+ * @param datum The element to marshall.
* @return A {@code PropertyType} wrapping the given the element.
*/
@Override
- protected CD_PrimeMeridian wrap(final PrimeMeridian value) {
- return new CD_PrimeMeridian(value);
+ protected CD_PrimeMeridian wrap(final PrimeMeridian datum) {
+ return new CD_PrimeMeridian(datum);
}
/**
@@ -85,9 +85,9 @@ public final class CD_PrimeMeridian exte
/**
* Invoked by JAXB at unmarshalling time for storing the result temporarily.
*
- * @param element The unmarshalled element.
+ * @param datum The unmarshalled element.
*/
- public void setElement(final DefaultPrimeMeridian element) {
- this.metadata = element;
+ public void setElement(final DefaultPrimeMeridian datum) {
+ metadata = datum;
}
}
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_TemporalDatum.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_TemporalDatum.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_TemporalDatum.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_TemporalDatum.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -54,20 +54,20 @@ public final class CD_TemporalDatum exte
/**
* Constructor for the {@link #wrap} method only.
*/
- private CD_TemporalDatum(final TemporalDatum metadata) {
- super(metadata);
+ private CD_TemporalDatum(final TemporalDatum datum) {
+ super(datum);
}
/**
* Invoked by {@link PropertyType} at marshalling time for wrapping the given value
* in a {@code <gml:TemporalDatum>} XML element.
*
- * @param value The element to marshall.
+ * @param datum The element to marshall.
* @return A {@code PropertyType} wrapping the given the element.
*/
@Override
- protected CD_TemporalDatum wrap(final TemporalDatum value) {
- return new CD_TemporalDatum(value);
+ protected CD_TemporalDatum wrap(final TemporalDatum datum) {
+ return new CD_TemporalDatum(datum);
}
/**
@@ -85,9 +85,9 @@ public final class CD_TemporalDatum exte
/**
* Invoked by JAXB at unmarshalling time for storing the result temporarily.
*
- * @param element The unmarshalled element.
+ * @param datum The unmarshalled element.
*/
- public void setElement(final DefaultTemporalDatum element) {
- this.metadata = element;
+ public void setElement(final DefaultTemporalDatum datum) {
+ metadata = datum;
}
}
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_VerticalDatum.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_VerticalDatum.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_VerticalDatum.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CD_VerticalDatum.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -54,20 +54,20 @@ public final class CD_VerticalDatum exte
/**
* Constructor for the {@link #wrap} method only.
*/
- private CD_VerticalDatum(final VerticalDatum metadata) {
- super(metadata);
+ private CD_VerticalDatum(final VerticalDatum datum) {
+ super(datum);
}
/**
* Invoked by {@link PropertyType} at marshalling time for wrapping the given value
* in a {@code <gml:VerticalDatum>} XML element.
*
- * @param value The element to marshall.
+ * @param datum The element to marshall.
* @return A {@code PropertyType} wrapping the given the element.
*/
@Override
- protected CD_VerticalDatum wrap(final VerticalDatum value) {
- return new CD_VerticalDatum(value);
+ protected CD_VerticalDatum wrap(final VerticalDatum datum) {
+ return new CD_VerticalDatum(datum);
}
/**
@@ -85,9 +85,9 @@ public final class CD_VerticalDatum exte
/**
* Invoked by JAXB at unmarshalling time for storing the result temporarily.
*
- * @param element The unmarshalled element.
+ * @param datum The unmarshalled element.
*/
- public void setElement(final DefaultVerticalDatum element) {
- this.metadata = element;
+ public void setElement(final DefaultVerticalDatum datum) {
+ metadata = datum;
}
}
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_AffineCS.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_AffineCS.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_AffineCS.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_AffineCS.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -26,8 +26,8 @@ import org.apache.sis.internal.jaxb.gco.
* JAXB adapter mapping implementing class to the GeoAPI interface. See
* package documentation for more information about JAXB and interface.
*
- * @author Cédric Briançon (Geomatys)
- * @author Martin Desruisseaux (Geomatys)
+ * @author Cédric Briançon (Geomatys)
+ * @author Martin Desruisseaux (Geomatys)
* @since 0.4 (derived from geotk-3.04)
* @version 0.4
* @module
@@ -54,20 +54,20 @@ public final class CS_AffineCS extends P
/**
* Constructor for the {@link #wrap} method only.
*/
- private CS_AffineCS(final AffineCS metadata) {
- super(metadata);
+ private CS_AffineCS(final AffineCS cs) {
+ super(cs);
}
/**
* Invoked by {@link PropertyType} at marshalling time for wrapping the given value
* in a {@code <gml:AffineCS>} XML element.
*
- * @param value The element to marshall.
+ * @param cs The element to marshall.
* @return A {@code PropertyType} wrapping the given the element.
*/
@Override
- protected CS_AffineCS wrap(final AffineCS value) {
- return new CS_AffineCS(value);
+ protected CS_AffineCS wrap(final AffineCS cs) {
+ return new CS_AffineCS(cs);
}
/**
@@ -85,9 +85,9 @@ public final class CS_AffineCS extends P
/**
* Invoked by JAXB at unmarshalling time for storing the result temporarily.
*
- * @param element The unmarshalled element.
+ * @param cs The unmarshalled element.
*/
- public void setElement(final DefaultAffineCS element) {
- this.metadata = element;
+ public void setElement(final DefaultAffineCS cs) {
+ metadata = cs;
}
}
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_CartesianCS.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_CartesianCS.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_CartesianCS.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_CartesianCS.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -54,20 +54,20 @@ public final class CS_CartesianCS extend
/**
* Constructor for the {@link #wrap} method only.
*/
- private CS_CartesianCS(final CartesianCS metadata) {
- super(metadata);
+ private CS_CartesianCS(final CartesianCS cs) {
+ super(cs);
}
/**
* Invoked by {@link PropertyType} at marshalling time for wrapping the given value
* in a {@code <gml:CartesianCS>} XML element.
*
- * @param value The element to marshall.
+ * @param cs The element to marshall.
* @return A {@code PropertyType} wrapping the given the element.
*/
@Override
- protected CS_CartesianCS wrap(final CartesianCS value) {
- return new CS_CartesianCS(value);
+ protected CS_CartesianCS wrap(final CartesianCS cs) {
+ return new CS_CartesianCS(cs);
}
/**
@@ -85,9 +85,9 @@ public final class CS_CartesianCS extend
/**
* Invoked by JAXB at unmarshalling time for storing the result temporarily.
*
- * @param element The unmarshalled element.
+ * @param cs The unmarshalled element.
*/
- public void setElement(final DefaultCartesianCS element) {
- this.metadata = element;
+ public void setElement(final DefaultCartesianCS cs) {
+ metadata = cs;
}
}
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_CoordinateSystemAxis.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_CoordinateSystemAxis.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_CoordinateSystemAxis.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_CoordinateSystemAxis.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -32,9 +32,7 @@ import org.apache.sis.internal.jaxb.gco.
* @version 0.4
* @module
*/
-public final class CS_CoordinateSystemAxis extends
- PropertyType<CS_CoordinateSystemAxis, CoordinateSystemAxis>
-{
+public final class CS_CoordinateSystemAxis extends PropertyType<CS_CoordinateSystemAxis, CoordinateSystemAxis> {
/**
* Empty constructor for JAXB only.
*/
@@ -56,20 +54,20 @@ public final class CS_CoordinateSystemAx
/**
* Constructor for the {@link #wrap} method only.
*/
- private CS_CoordinateSystemAxis(final CoordinateSystemAxis metadata) {
- super(metadata);
+ private CS_CoordinateSystemAxis(final CoordinateSystemAxis axis) {
+ super(axis);
}
/**
* Invoked by {@link PropertyType} at marshalling time for wrapping the given value
* in a {@code <gml:CoordinateSystemAxis>} XML element.
*
- * @param value The element to marshall.
+ * @param axis The element to marshall.
* @return A {@code PropertyType} wrapping the given the element.
*/
@Override
- protected CS_CoordinateSystemAxis wrap(final CoordinateSystemAxis value) {
- return new CS_CoordinateSystemAxis(value);
+ protected CS_CoordinateSystemAxis wrap(final CoordinateSystemAxis axis) {
+ return new CS_CoordinateSystemAxis(axis);
}
/**
@@ -87,9 +85,9 @@ public final class CS_CoordinateSystemAx
/**
* Invoked by JAXB at unmarshalling time for storing the result temporarily.
*
- * @param element The unmarshalled element.
+ * @param axis The unmarshalled element.
*/
- public void setElement(final DefaultCoordinateSystemAxis element) {
- this.metadata = element;
+ public void setElement(final DefaultCoordinateSystemAxis axis) {
+ metadata = axis;
}
}
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_EllipsoidalCS.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_EllipsoidalCS.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_EllipsoidalCS.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_EllipsoidalCS.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -54,20 +54,20 @@ public final class CS_EllipsoidalCS exte
/**
* Constructor for the {@link #wrap} method only.
*/
- private CS_EllipsoidalCS(final EllipsoidalCS metadata) {
- super(metadata);
+ private CS_EllipsoidalCS(final EllipsoidalCS cs) {
+ super(cs);
}
/**
* Invoked by {@link PropertyType} at marshalling time for wrapping the given value
* in a {@code <gml:EllipsoidalCS>} XML element.
*
- * @param value The element to marshall.
+ * @param cs The element to marshall.
* @return A {@code PropertyType} wrapping the given the element.
*/
@Override
- protected CS_EllipsoidalCS wrap(final EllipsoidalCS value) {
- return new CS_EllipsoidalCS(value);
+ protected CS_EllipsoidalCS wrap(final EllipsoidalCS cs) {
+ return new CS_EllipsoidalCS(cs);
}
/**
@@ -85,9 +85,9 @@ public final class CS_EllipsoidalCS exte
/**
* Invoked by JAXB at unmarshalling time for storing the result temporarily.
*
- * @param element The unmarshalled element.
+ * @param cs The unmarshalled element.
*/
- public void setElement(final DefaultEllipsoidalCS element) {
- this.metadata = element;
+ public void setElement(final DefaultEllipsoidalCS cs) {
+ metadata = cs;
}
}
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_TimeCS.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_TimeCS.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_TimeCS.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_TimeCS.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -54,20 +54,20 @@ public final class CS_TimeCS extends Pro
/**
* Constructor for the {@link #wrap} method only.
*/
- private CS_TimeCS(final TimeCS metadata) {
- super(metadata);
+ private CS_TimeCS(final TimeCS cs) {
+ super(cs);
}
/**
* Invoked by {@link PropertyType} at marshalling time for wrapping the given value
* in a {@code <gml:TimeCS>} XML element.
*
- * @param value The element to marshall.
+ * @param cs The element to marshall.
* @return A {@code PropertyType} wrapping the given the element.
*/
@Override
- protected CS_TimeCS wrap(final TimeCS value) {
- return new CS_TimeCS(value);
+ protected CS_TimeCS wrap(final TimeCS cs) {
+ return new CS_TimeCS(cs);
}
/**
@@ -85,9 +85,9 @@ public final class CS_TimeCS extends Pro
/**
* Invoked by JAXB at unmarshalling time for storing the result temporarily.
*
- * @param element The unmarshalled element.
+ * @param cs The unmarshalled element.
*/
- public void setElement(final DefaultTimeCS element) {
- this.metadata = element;
+ public void setElement(final DefaultTimeCS cs) {
+ metadata = cs;
}
}
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_VerticalCS.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_VerticalCS.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_VerticalCS.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/CS_VerticalCS.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -54,20 +54,20 @@ public final class CS_VerticalCS extends
/**
* Constructor for the {@link #wrap} method only.
*/
- private CS_VerticalCS(final VerticalCS metadata) {
- super(metadata);
+ private CS_VerticalCS(final VerticalCS cs) {
+ super(cs);
}
/**
* Invoked by {@link PropertyType} at marshalling time for wrapping the given value
* in a {@code <gml:VerticalCS>} XML element.
*
- * @param value The element to marshall.
+ * @param cs The element to marshall.
* @return A {@code PropertyType} wrapping the given the element.
*/
@Override
- protected CS_VerticalCS wrap(final VerticalCS value) {
- return new CS_VerticalCS(value);
+ protected CS_VerticalCS wrap(final VerticalCS cs) {
+ return new CS_VerticalCS(cs);
}
/**
@@ -85,9 +85,9 @@ public final class CS_VerticalCS extends
/**
* Invoked by JAXB at unmarshalling time for storing the result temporarily.
*
- * @param element The unmarshalled element.
+ * @param cs The unmarshalled element.
*/
- public void setElement(final DefaultVerticalCS element) {
- this.metadata = element;
+ public void setElement(final DefaultVerticalCS cs) {
+ metadata = cs;
}
}
Propchange: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/internal/jaxb/referencing/SC_VerticalCRS.java
------------------------------------------------------------------------------
--- svn:mime-type (original)
+++ svn:mime-type Mon Jan 6 05:27:52 2014
@@ -1 +1 @@
-text/plain
+text/plain;charset=UTF-8
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/AbstractIdentifiedObject.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/AbstractIdentifiedObject.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/AbstractIdentifiedObject.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/AbstractIdentifiedObject.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -422,7 +422,10 @@ public class AbstractIdentifiedObject ex
}
}
// In last ressort, append code without codespace since the name are often verbose.
- return appendUnicodeIdentifier(id, '-', name.getCode(), ":", false) ? id.toString() : null;
+ if (name != null && appendUnicodeIdentifier(id, '-', name.getCode(), ":", false)) {
+ return id.toString();
+ }
+ return null;
}
/**
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/AbstractCRS.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/AbstractCRS.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/AbstractCRS.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/AbstractCRS.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -22,6 +22,8 @@ import javax.xml.bind.annotation.XmlType
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlSeeAlso;
import org.opengis.referencing.datum.Datum;
+import org.opengis.referencing.cs.AffineCS;
+import org.opengis.referencing.cs.CartesianCS;
import org.opengis.referencing.cs.CoordinateSystem;
import org.opengis.referencing.crs.SingleCRS;
import org.opengis.referencing.crs.CoordinateReferenceSystem;
@@ -72,8 +74,10 @@ import org.apache.sis.internal.jdk7.Obje
@XmlType(name="AbstractCRSType")
@XmlRootElement(name = "AbstractCRS")
@XmlSeeAlso({
+ DefaultGeodeticCRS.class,
DefaultVerticalCRS.class,
DefaultTemporalCRS.class,
+ DefaultEngineeringCRS.class,
DefaultImageCRS.class,
DefaultCompoundCRS.class
})
@@ -205,6 +209,22 @@ public class AbstractCRS extends Abstrac
}
/**
+ * Returns the coordinate system if it is of the given type, or {@code null} otherwise.
+ * This method is invoked by subclasses that can accept more than one CS type.
+ */
+ @SuppressWarnings("unchecked")
+ final <T extends CoordinateSystem> T getCoordinateSystem(final Class<T> type) {
+ final CoordinateSystem cs = coordinateSystem;
+ if (type.isInstance(cs)) {
+ // Special case for AfficeCS: must ensure that the cs is not the CartesianCS subtype.
+ if (type != AffineCS.class || !(cs instanceof CartesianCS)) {
+ return (T) cs;
+ }
+ }
+ return null;
+ }
+
+ /**
* Sets the coordinate system to the given value. This method is invoked only by JAXB at
* unmarshalling time and can be invoked only if the coordinate system has never been set.
*
@@ -305,12 +325,13 @@ public class AbstractCRS extends Abstrac
formatter.append(getDatum());
final Unit<?> unit = getUnit();
formatter.append(unit);
- final int dimension = coordinateSystem.getDimension();
+ final CoordinateSystem cs = coordinateSystem;
+ final int dimension = cs.getDimension();
for (int i=0; i<dimension; i++) {
- formatter.append(coordinateSystem.getAxis(i));
+ formatter.append(cs.getAxis(i));
}
if (unit == null) {
- formatter.setInvalidWKT(coordinateSystem);
+ formatter.setInvalidWKT(cs);
}
}
}
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/DefaultImageCRS.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/DefaultImageCRS.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/DefaultImageCRS.java [iso-8859-1] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/DefaultImageCRS.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -34,13 +34,10 @@ import static org.apache.sis.util.Argume
* reference systems are treated as a separate sub-type because a separate user community exists
* for images with its own terms of reference.
*
- * <table class="sis">
- * <tr><th>Used with CS type(s)</th></tr>
- * <tr><td>
- * {@linkplain org.apache.sis.referencing.cs.DefaultCartesianCS Cartesian CS}
- * </td></tr><tr><td>
- * {@linkplain org.apache.sis.referencing.cs.DefaultAffineCS Affine CS}
- * </td></tr></table>
+ * <p><b>Used with coordinate system types:</b>
+ * {@linkplain org.apache.sis.referencing.cs.DefaultCartesianCS Cartesian} or
+ * {@linkplain org.apache.sis.referencing.cs.DefaultAffineCS Affine}.
+ * </p>
*
* @author Martin Desruisseaux (IRD, Geomatys)
* @since 0.4 (derived from geotk-1.2)
@@ -140,7 +137,7 @@ public class DefaultImageCRS extends Abs
*
* @param crs The coordinate reference system to copy.
*
- * @see #castOrCopy(TemporalCRS)
+ * @see #castOrCopy(ImageCRS)
*/
protected DefaultImageCRS(final ImageCRS crs) {
super(crs);
@@ -203,8 +200,7 @@ public class DefaultImageCRS extends Abs
*/
@XmlElement(name = "affineCS")
private AffineCS getAffineCS() {
- final AffineCS cs = getCoordinateSystem();
- return (cs instanceof CartesianCS) ? null : cs;
+ return getCoordinateSystem(AffineCS.class);
}
/**
@@ -212,9 +208,8 @@ public class DefaultImageCRS extends Abs
* Only one of {@link #getAffineCS()} and {@code getCartesianCS()} can return a non-null value.
*/
@XmlElement(name = "cartesianCS")
- private AffineCS getCartesianCS() {
- final AffineCS cs = getCoordinateSystem();
- return (cs instanceof CartesianCS) ? (CartesianCS) cs : null;
+ private CartesianCS getCartesianCS() {
+ return getCoordinateSystem(CartesianCS.class);
}
/**
@@ -227,7 +222,7 @@ public class DefaultImageCRS extends Abs
/**
* Used by JAXB only (invoked by reflection).
*/
- private void setCartesianCS(final AffineCS cs) {
+ private void setCartesianCS(final CartesianCS cs) {
super.setCoordinateSystem("cartesianCS", cs);
}
}
Propchange: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/DefaultImageCRS.java
------------------------------------------------------------------------------
--- svn:mime-type (original)
+++ svn:mime-type Mon Jan 6 05:27:52 2014
@@ -1 +1 @@
-text/plain
+text/plain;charset=UTF-8
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/DefaultTemporalCRS.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/DefaultTemporalCRS.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/DefaultTemporalCRS.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/DefaultTemporalCRS.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -34,12 +34,16 @@ import static org.apache.sis.util.Argume
/**
* A 1D coordinate reference system used for the recording of time.
+ * The Apache SIS implementation provides the following methods in addition to the OGC/ISO properties:
*
- * <table class="sis">
- * <tr><th>Used with CS type(s)</th></tr>
- * <tr><td>
- * {@linkplain org.apache.sis.referencing.cs.DefaultTimeCS Time CS}
- * </td></tr></table>
+ * <ul>
+ * <li>{@link #toDate(double)} for converting a temporal position to a {@link Date}.</li>
+ * <li>{@link #toValue(Date)} for converting a {@link Date} to a temporal position.</li>
+ * </ul>
+ *
+ * <p><b>Used with coordinate system type:</b>
+ * {@linkplain org.apache.sis.referencing.cs.DefaultTimeCS Time}.
+ * </p>
*
* @author Martin Desruisseaux (IRD, Geomatys)
* @since 0.4 (derived from geotk-1.2)
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/DefaultVerticalCRS.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/DefaultVerticalCRS.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/DefaultVerticalCRS.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/DefaultVerticalCRS.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -34,11 +34,9 @@ import static org.apache.sis.util.Argume
* Vertical CRSs make use of the direction of gravity to define the concept of height or depth,
* but the relationship with gravity may not be straightforward.
*
- * <table class="sis">
- * <tr><th>Used with CS type(s)</th></tr>
- * <tr><td>
- * {@linkplain org.apache.sis.referencing.cs.DefaultVerticalCS Vertical CS}
- * </td></tr></table>
+ * <p><b>Used with coordinate system type:</b>
+ * {@linkplain org.apache.sis.referencing.cs.DefaultVerticalCS Vertical}.
+ * </p>
*
* @author Martin Desruisseaux (IRD, Geomatys)
* @since 0.4 (derived from geotk-1.2)
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/package-info.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/package-info.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/package-info.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/package-info.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -21,26 +21,54 @@
* The remaining discussion on this page is specific to the SIS implementation.
*
* <p>The root class for this package is {@link org.apache.sis.referencing.crs.AbstractCRS}.
- * Coordinate Reference System (CRS) can have various number of dimensions, but some restriction
+ * Coordinate Reference System (CRS) can have various number of dimensions, but some restrictions
* apply depending on the CRS type:</p>
*
+ * <table class="sis">
+ * <tr><th>Dimension</th> <th>CRS type examples</th> <th>Remarks</th></tr>
+ * <tr>
+ * <td>3</td>
+ * <td>{@linkplain org.apache.sis.referencing.crs.DefaultGeographicCRS Geographic},
+ * {@linkplain org.apache.sis.referencing.crs.DefaultGeocentricCRS Geocentric}</td>
+ * <td>ISO 19111 uses the same class, {@code GeodeticCRS}, for those two cases.</td>
+ * </tr><tr>
+ * <td>2</td>
+ * <td>{@linkplain org.apache.sis.referencing.crs.DefaultGeographicCRS Geographic},
+ * {@linkplain org.apache.sis.referencing.crs.DefaultProjectedCRS Projected}</td>
+ * <td>{@code GeographicCRS} can also be 3D.</td>
+ * </tr><tr>
+ * <td>1</td>
+ * <td>{@linkplain org.apache.sis.referencing.crs.DefaultVerticalCRS Vertical},
+ * {@linkplain org.apache.sis.referencing.crs.DefaultTemporalCRS Temporal}.</td>
+ * <td></td>
+ * </tr><tr>
+ * <td>Any</td>
+ * <td>{@linkplain org.apache.sis.referencing.crs.DefaultCompoundCRS Compound}</td>
+ * <td>Often used for adding a time axis to the above CRS.</td>
+ * </tr>
+ * </table>
+ *
+ * {@section Apache SIS extensions}
+ * Some SIS implementations provide additional methods that are not part of OGC/ISO specifications:
+ *
* <ul>
- * <li>Three-dimensional:
- * {@link org.apache.sis.referencing.crs.DefaultGeographicCRS GeographicCRS} and
- * {@link org.apache.sis.referencing.crs.DefaultGeocentricCRS GeocentricCRS}
- * (note: ISO 19111 uses the same class, {@code GeodeticCRS}, for those two cases).</li>
- * <li>Two-dimensional:
- * {@link org.apache.sis.referencing.crs.DefaultGeographicCRS GeographicCRS} and
- * {@link org.apache.sis.referencing.crs.DefaultProjectedCRS ProjectedCRS}
- * (note that {@code GeographicCRS} can also be 3D).</li>
- * <li>One-dimensional:
- * {@link org.apache.sis.referencing.crs.DefaultVerticalCRS VerticalCRS} and
- * {@link org.apache.sis.referencing.crs.DefaultTemporalCRS TemporalCRS}.</li>
- * <li>Any number of dimensions:
- * {@link org.geotoolkit.referencing.crs.DefaultCompoundCRS CompoundCRS}
- * (often used for adding a time axis to the above CRS).
+ * <li>{@link org.apache.sis.referencing.crs.DefaultTemporalCRS#toDate(double)}</li>
+ * <li>{@link org.apache.sis.referencing.crs.DefaultTemporalCRS#toValue DefaultTemporalCRS.toValue(Date)}</li>
* </ul>
*
+ * In addition Apache SIS provides two distinct classes for geographic and geocentric CRS where OGC/ISO defines
+ * a single {@code GeodeticCRS} type. OGC/ISO distinguishes the geographic/geocentric cases according the type
+ * of the coordinate system associated to that CRS:
+ *
+ * <ul>
+ * <li>A geodetic CRS associated to an {@linkplain org.apache.sis.referencing.cs.DefaultEllipsoidalCS ellipsoidal CS}
+ * is geographic.</li>
+ * <li>A geodetic CRS associated to a {@linkplain org.apache.sis.referencing.cs.DefaultSphericalCS spherical} or
+ * {@linkplain org.apache.sis.referencing.cs.DefaultCartesianCS Cartesian CS} is geocentric.</li>
+ * </ul>
+ *
+ * SIS keeps the geographic and geocentric CRS as distinct types since such distinction is in wide use.
+ *
* @author Martin Desruisseaux (IRD, Geomatys)
* @author Cédric Briançon (Geomatys)
* @since 0.4 (derived from geotk-1.2)
@@ -54,13 +82,19 @@
@XmlAccessorType(XmlAccessType.NONE)
@XmlJavaTypeAdapters({
@XmlJavaTypeAdapter(CD_GeodeticDatum.class),
+ @XmlJavaTypeAdapter(CD_EngineeringDatum.class),
@XmlJavaTypeAdapter(CD_ImageDatum.class),
@XmlJavaTypeAdapter(CD_TemporalDatum.class),
@XmlJavaTypeAdapter(CD_VerticalDatum.class),
@XmlJavaTypeAdapter(CS_AffineCS.class),
@XmlJavaTypeAdapter(CS_CartesianCS.class),
+ @XmlJavaTypeAdapter(CS_CylindricalCS.class),
@XmlJavaTypeAdapter(CS_EllipsoidalCS.class),
+ @XmlJavaTypeAdapter(CS_LinearCS.class),
+ @XmlJavaTypeAdapter(CS_PolarCS.class),
+ @XmlJavaTypeAdapter(CS_SphericalCS.class),
@XmlJavaTypeAdapter(CS_TimeCS.class),
+ @XmlJavaTypeAdapter(CS_UserDefinedCS.class),
@XmlJavaTypeAdapter(CS_VerticalCS.class),
@XmlJavaTypeAdapter(StringAdapter.class),
@XmlJavaTypeAdapter(InternationalStringConverter.class)
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultAffineCS.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultAffineCS.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultAffineCS.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultAffineCS.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -32,13 +32,13 @@ import org.apache.sis.measure.Units;
* A 2- or 3-dimensional coordinate system made of straight axes (not necessarily orthogonal).
*
* <table class="sis"><tr>
- * <th>Used with</th>
+ * <th>Used with CRS</th>
* <th>Permitted axis names</th>
* </tr><tr>
- * <td>{@linkplain org.geotoolkit.referencing.crs.DefaultEngineeringCRS Engineering CRS}</td>
+ * <td>{@linkplain org.apache.sis.referencing.crs.DefaultEngineeringCRS Engineering}</td>
* <td>unspecified</td>
* </tr><tr>
- * <td>{@linkplain org.geotoolkit.referencing.crs.DefaultImageCRS Image CRS}</td>
+ * <td>{@linkplain org.apache.sis.referencing.crs.DefaultImageCRS Image}</td>
* <td>unspecified</td>
* </tr></table>
*
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultCartesianCS.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultCartesianCS.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultCartesianCS.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultCartesianCS.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -31,19 +31,19 @@ import org.apache.sis.util.resources.Err
* All axes shall have the same linear unit of measure.
*
* <table class="sis"><tr>
- * <th>Used with</th>
+ * <th>Used with CRS</th>
* <th>Permitted axis names</th>
* </tr><tr>
- * <td>{@linkplain org.geotoolkit.referencing.crs.DefaultGeocentricCRS Geocentric CRS}</td>
+ * <td>{@linkplain org.apache.sis.referencing.crs.DefaultGeocentricCRS Geocentric}</td>
* <td>“Geocentric X”, “Geocentric Y”, “Geocentric Z”</td>
* </tr><tr>
- * <td>{@linkplain org.geotoolkit.referencing.crs.DefaultProjectedCRS Projected CRS}</td>
+ * <td>{@linkplain org.apache.sis.referencing.crs.DefaultProjectedCRS Projected}</td>
* <td>“Easting” or “Westing”, “Northing” or “Southing”</td>
* </tr><tr>
- * <td>{@linkplain org.geotoolkit.referencing.crs.DefaultEngineeringCRS Engineering CRS}</td>
+ * <td>{@linkplain org.apache.sis.referencing.crs.DefaultEngineeringCRS Engineering}</td>
* <td>unspecified</td>
* </tr><tr>
- * <td>{@linkplain org.geotoolkit.referencing.crs.DefaultImageCRS Image CRS}</td>
+ * <td>{@linkplain org.apache.sis.referencing.crs.DefaultImageCRS Image}</td>
* <td>unspecified</td>
* </tr></table>
*
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultCompoundCS.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultCompoundCS.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultCompoundCS.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultCompoundCS.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -33,10 +33,10 @@ import static org.apache.sis.util.Utilit
* A coordinate system made of two or more independent coordinate systems.
*
* <table class="sis"><tr>
- * <th>Used with CRS types</th>
+ * <th>Used with CRS</th>
* <th>Permitted axis names</th>
* </tr><tr>
- * <td>{@linkplain org.geotoolkit.referencing.crs.DefaultCompoundCRS Compound}</td>
+ * <td>{@linkplain org.apache.sis.referencing.crs.DefaultCompoundCRS Compound}</td>
* <td>(not applicable)</td>
* </tr></table>
*
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultCylindricalCS.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultCylindricalCS.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultCylindricalCS.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultCylindricalCS.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -32,10 +32,10 @@ import org.apache.sis.measure.Units;
* {@linkplain DefaultPolarCS polar coordinate system} extended by a straight perpendicular axis.
*
* <table class="sis"><tr>
- * <th>Used with</th>
+ * <th>Used with CRS</th>
* <th>Permitted axis names</th>
* </tr><tr>
- * <td>{@linkplain org.geotoolkit.referencing.crs.DefaultEngineeringCRS Engineering CRS}</td>
+ * <td>{@linkplain org.apache.sis.referencing.crs.DefaultEngineeringCRS Engineering}</td>
* <td>unspecified</td>
* </tr></table>
*
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultEllipsoidalCS.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultEllipsoidalCS.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultEllipsoidalCS.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultEllipsoidalCS.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -31,13 +31,13 @@ import org.apache.sis.measure.Units;
* A 2- or 3-dimensional coordinate system for geodetic latitude and longitude, optionally with ellipsoidal height.
*
* <table class="sis"><tr>
- * <th>Used with</th>
+ * <th>Used with CRS</th>
* <th>Permitted axis names</th>
* </tr><tr>
- * <td>{@linkplain org.geotoolkit.referencing.crs.DefaultGeocentricCRS Geographic CRS}</td>
+ * <td>{@linkplain org.apache.sis.referencing.crs.DefaultGeocentricCRS Geographic}</td>
* <td>“Geodetic latitude”, “Geodetic longitude”, “Ellipsoidal height” (if 3D)</td>
* </tr><tr>
- * <td>{@linkplain org.geotoolkit.referencing.crs.DefaultEngineeringCRS Engineering CRS}</td>
+ * <td>{@linkplain org.apache.sis.referencing.crs.DefaultEngineeringCRS Engineering}</td>
* <td>unspecified</td>
* </tr></table>
*
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultLinearCS.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultLinearCS.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultLinearCS.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultLinearCS.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -33,10 +33,10 @@ import org.apache.sis.measure.Units;
* A typical example is an axis for representing the points along a road.
*
* <table class="sis"><tr>
- * <th>Used with</th>
+ * <th>Used with CRS</th>
* <th>Permitted axis names</th>
* </tr><tr>
- * <td>{@linkplain org.geotoolkit.referencing.crs.DefaultEngineeringCRS Engineering CRS}</td>
+ * <td>{@linkplain org.apache.sis.referencing.crs.DefaultEngineeringCRS Engineering}</td>
* <td>unspecified</td>
* </tr></table>
*
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultPolarCS.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultPolarCS.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultPolarCS.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultPolarCS.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -32,10 +32,10 @@ import org.apache.sis.measure.Units;
* and an angle from a fixed direction.
*
* <table class="sis"><tr>
- * <th>Used with</th>
+ * <th>Used with CRS</th>
* <th>Permitted axis names</th>
* </tr><tr>
- * <td>{@linkplain org.geotoolkit.referencing.crs.DefaultEngineeringCRS Engineering CRS}</td>
+ * <td>{@linkplain org.apache.sis.referencing.crs.DefaultEngineeringCRS Engineering}</td>
* <td>unspecified</td>
* </tr></table>
*
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultSphericalCS.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultSphericalCS.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultSphericalCS.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultSphericalCS.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -33,13 +33,13 @@ import org.apache.sis.measure.Units;
* based on an ellipsoid "degenerated" into a sphere.
*
* <table class="sis"><tr>
- * <th>Used with</th>
+ * <th>Used with CRS</th>
* <th>Permitted axis names</th>
* </tr><tr>
- * <td>{@linkplain org.geotoolkit.referencing.crs.DefaultGeocentricCRS Geocentric CRS}</td>
+ * <td>{@linkplain org.apache.sis.referencing.crs.DefaultGeocentricCRS Geocentric}</td>
* <td>“Spherical Latitude”, “ Spherical Longitude”, “Geocentric Radius”</td>
* </tr><tr>
- * <td>{@linkplain org.geotoolkit.referencing.crs.DefaultEngineeringCRS Engineering CRS}</td>
+ * <td>{@linkplain org.apache.sis.referencing.crs.DefaultEngineeringCRS Engineering}</td>
* <td>unspecified</td>
* </tr></table>
*
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultTimeCS.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultTimeCS.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultTimeCS.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultTimeCS.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -32,10 +32,10 @@ import org.apache.sis.measure.Units;
* A 1-dimensional coordinate system for time elapsed in the specified time units from a specified time origin.
*
* <table class="sis"><tr>
- * <th>Used with</th>
+ * <th>Used with CRS</th>
* <th>Permitted axis names</th>
* </tr><tr>
- * <td>{@linkplain org.geotoolkit.referencing.crs.DefaultTemporalCRS Temporal CRS}</td>
+ * <td>{@linkplain org.apache.sis.referencing.crs.DefaultTemporalCRS Temporal}</td>
* <td>unspecified</td>
* </tr></table>
*
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultVerticalCS.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultVerticalCS.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultVerticalCS.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/cs/DefaultVerticalCS.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -41,13 +41,13 @@ import org.apache.sis.internal.referenci
* The above examples show the variety of units of measurement which can be associated to vertical positions.
*
* <table class="sis"><tr>
- * <th>Used with</th>
+ * <th>Used with CRS</th>
* <th>Permitted axis names</th>
* </tr><tr>
- * <td>{@linkplain org.geotoolkit.referencing.crs.DefaultVerticalCRS Vertical CRS}</td>
+ * <td>{@linkplain org.apache.sis.referencing.crs.DefaultVerticalCRS Vertical}</td>
* <td>“Gravity-related height” or “Depth”</td>
* </tr><tr>
- * <td>{@linkplain org.geotoolkit.referencing.crs.DefaultEngineeringCRS Engineering CRS}</td>
+ * <td>{@linkplain org.apache.sis.referencing.crs.DefaultEngineeringCRS Engineering}</td>
* <td>unspecified</td>
* </tr></table>
*
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/datum/AbstractDatum.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/datum/AbstractDatum.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/datum/AbstractDatum.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/datum/AbstractDatum.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -68,7 +68,12 @@ import org.apache.sis.internal.jdk7.Obje
* @see org.apache.sis.referencing.cs.AbstractCS
* @see org.apache.sis.referencing.crs.AbstractCRS
*/
-@XmlType(name = "AbstractDatumType")
+@XmlType(name = "AbstractDatumType", propOrder = {
+ "domainOfValidity",
+ "scope",
+ "anchorDefinition",
+ "realizationEpoch"
+})
@XmlRootElement(name = "AbstractDatum")
@XmlSeeAlso({
DefaultGeodeticDatum.class,
@@ -92,8 +97,8 @@ public class AbstractDatum extends Abstr
* Description, possibly including coordinates, of the point or points used to anchor the datum
* to the Earth. Also known as the "origin", especially for Engineering and Image Datums.
*/
- @XmlElement(name = "anchorDefinition")
- private final InternationalString anchorPoint;
+ @XmlElement
+ private final InternationalString anchorDefinition;
/**
* The time after which this datum definition is valid. This time may be precise
@@ -124,7 +129,7 @@ public class AbstractDatum extends Abstr
*/
AbstractDatum() {
super(org.apache.sis.internal.referencing.NilReferencingObject.INSTANCE);
- anchorPoint = null;
+ anchorDefinition = null;
realizationEpoch = Long.MIN_VALUE;
domainOfValidity = null;
scope = null;
@@ -193,7 +198,7 @@ public class AbstractDatum extends Abstr
super(properties);
realizationEpoch = MetadataUtilities.toMilliseconds(property(properties, REALIZATION_EPOCH_KEY, Date.class));
domainOfValidity = property(properties, DOMAIN_OF_VALIDITY_KEY, Extent.class);
- anchorPoint = Types.toInternationalString(properties, ANCHOR_POINT_KEY);
+ anchorDefinition = Types.toInternationalString(properties, ANCHOR_POINT_KEY);
scope = Types.toInternationalString(properties, SCOPE_KEY);
}
@@ -211,7 +216,7 @@ public class AbstractDatum extends Abstr
realizationEpoch = MetadataUtilities.toMilliseconds(datum.getRealizationEpoch());
domainOfValidity = datum.getDomainOfValidity();
scope = datum.getScope();
- anchorPoint = datum.getAnchorPoint();
+ anchorDefinition = datum.getAnchorPoint();
}
/**
@@ -280,7 +285,7 @@ public class AbstractDatum extends Abstr
*/
@Override
public InternationalString getAnchorPoint() {
- return anchorPoint;
+ return anchorDefinition;
}
/**
@@ -397,7 +402,7 @@ public class AbstractDatum extends Abstr
final AbstractDatum that = (AbstractDatum) object;
return this.realizationEpoch == that.realizationEpoch &&
Objects.equals(this.domainOfValidity, that.domainOfValidity) &&
- Objects.equals(this.anchorPoint, that.anchorPoint) &&
+ Objects.equals(this.anchorDefinition, that.anchorDefinition) &&
Objects.equals(this.scope, that.scope);
}
case BY_CONTRACT: {
@@ -430,7 +435,7 @@ public class AbstractDatum extends Abstr
*/
@Override
protected long computeHashCode() {
- return super.computeHashCode() + Objects.hash(anchorPoint, realizationEpoch, domainOfValidity, scope);
+ return super.computeHashCode() + Objects.hash(anchorDefinition, realizationEpoch, domainOfValidity, scope);
}
/**
Modified: sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/datum/DefaultVerticalDatum.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/datum/DefaultVerticalDatum.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/datum/DefaultVerticalDatum.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/main/java/org/apache/sis/referencing/datum/DefaultVerticalDatum.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -92,6 +92,9 @@ public class DefaultVerticalDatum extend
/**
* The type of this vertical datum.
* If {@code null}, a value will be inferred from the name by {@link #type()}.
+ *
+ * @see #type()
+ * @see #getVerticalDatumType()
*/
private VerticalDatumType type;
@@ -221,6 +224,9 @@ public class DefaultVerticalDatum extend
*
* <p>No synchronization needed; this is not a problem if this value is computed twice.
* This method returns only existing immutable instances.</p>
+ *
+ * @see #getVerticalDatumType()
+ * @see #getTypeElement()
*/
private VerticalDatumType type() {
VerticalDatumType t = type;
@@ -253,6 +259,8 @@ public class DefaultVerticalDatum extend
/**
* Returns the type to be marshalled to XML.
* This element was present in GML 3.0 and 3.1, but has been removed from GML 3.2.
+ *
+ * @see <a href="http://issues.apache.org/jira/browse/SIS-160">SIS-160: Need XSLT between GML 3.1 and 3.2</a>
*/
@XmlElement(name = "verticalDatumType")
private VerticalDatumType getTypeElement() {
Modified: sis/branches/JDK6/core/sis-referencing/src/test/java/org/apache/sis/referencing/GeodeticObjectVerifier.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/test/java/org/apache/sis/referencing/GeodeticObjectVerifier.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/test/java/org/apache/sis/referencing/GeodeticObjectVerifier.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/test/java/org/apache/sis/referencing/GeodeticObjectVerifier.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -26,11 +26,13 @@ import org.opengis.referencing.datum.Ell
import org.opengis.referencing.datum.PrimeMeridian;
import org.opengis.referencing.datum.GeodeticDatum;
import org.opengis.referencing.datum.VerticalDatum;
+import org.opengis.referencing.cs.CoordinateSystem;
import org.opengis.referencing.cs.CoordinateSystemAxis;
import org.opengis.referencing.cs.AxisDirection;
import org.opengis.referencing.cs.CartesianCS;
import org.opengis.referencing.cs.EllipsoidalCS;
import org.opengis.referencing.cs.RangeMeaning;
+import org.opengis.referencing.crs.GeodeticCRS;
import static org.apache.sis.test.Assert.*;
@@ -211,6 +213,37 @@ public final strictfp class GeodeticObje
}
/**
+ * Asserts that the given CRS is the WGS 84 one.
+ * This method verifies the following properties:
+ *
+ * <table class="sis">
+ * <tr><th>Property</th> <th>Expected value</th></tr>
+ * <tr><td>{@linkplain ReferenceIdentifier#getCode() Code} of the {@linkplain GeodeticCRS#getName() name}</td>
+ * <td>{@code "WGS 84"}</td></tr>
+ * <tr><td>{@linkplain GeodeticCRS#getDomainOfValidity() Domain of validity}</td>
+ * <td>{@linkplain #assertIsWorld(GeographicBoundingBox) Is world} or absent</td></tr>
+ * <tr><td>{@linkplain GeodeticCRS#getDatum() Datum}</td>
+ * <td>{@linkplain #assertIsWGS84(GeodeticDatum, boolean) Is WGS84}</td></tr>
+ * <tr><td>{@linkplain GeodeticCRS#getCoordinateSystem() Coordinate system}</td>
+ * <td>{@linkplain #assertIsGeodetic2D(EllipsoidalCS, boolean) Is for a 2D geodetic CRS}</td></tr>
+ * </table>
+ *
+ * @param crs The coordinate reference system to verify.
+ * @param isExtentMandatory {@code true} if the CRS and datum domains of validity are required to contain an
+ * {@code Extent} element for the world, or {@code false} if optional.
+ * @param isRangeMandatory {@code true} if the coordinate system axes range and range meaning properties
+ * shall be defined, or {@code false} if they are optional.
+ */
+ public static void assertIsWGS84(final GeodeticCRS crs, final boolean isExtentMandatory, final boolean isRangeMandatory) {
+ assertEquals("name", "WGS 84", crs.getName().getCode());
+ assertIsWorld(crs.getDomainOfValidity(), isExtentMandatory);
+ assertIsWGS84(crs.getDatum(), isExtentMandatory);
+ final CoordinateSystem cs = crs.getCoordinateSystem();
+ assertInstanceOf("coordinateSystem", EllipsoidalCS.class, cs);
+ assertIsGeodetic2D((EllipsoidalCS) cs, isRangeMandatory);
+ }
+
+ /**
* Asserts that the given datum is the Mean Sea Level one.
* This method verifies the following properties:
*
@@ -312,10 +345,10 @@ public final strictfp class GeodeticObje
* </ul>
*
* @param cs The coordinate system to verify.
- * @param rangeIsMandatory {@code true} if the axes range and range meaning properties shall be defined,
+ * @param isRangeMandatory {@code true} if the axes range and range meaning properties shall be defined,
* or {@code false} if they are optional.
*/
- public static void assertIsGeodetic2D(final EllipsoidalCS cs, final boolean rangeIsMandatory) {
+ public static void assertIsGeodetic2D(final EllipsoidalCS cs, final boolean isRangeMandatory) {
assertEquals("dimension", 2, cs.getDimension());
final CoordinateSystemAxis latitude = cs.getAxis(0);
final CoordinateSystemAxis longitude = cs.getAxis(1);
@@ -327,8 +360,8 @@ public final strictfp class GeodeticObje
assertEquals("axis[1].direction", AxisDirection.EAST, longitude.getDirection());
assertEquals("axis[0].unit", NonSI.DEGREE_ANGLE, latitude .getUnit());
assertEquals("axis[1].unit", NonSI.DEGREE_ANGLE, longitude.getUnit());
- verifyRange(latitude, -90, +90, RangeMeaning.EXACT, rangeIsMandatory);
- verifyRange(longitude, -180, +180, RangeMeaning.WRAPAROUND, rangeIsMandatory);
+ verifyRange(latitude, -90, +90, RangeMeaning.EXACT, isRangeMandatory);
+ verifyRange(longitude, -180, +180, RangeMeaning.WRAPAROUND, isRangeMandatory);
}
/**
Modified: sis/branches/JDK6/core/sis-referencing/src/test/java/org/apache/sis/referencing/datum/DefaultVerticalDatumTest.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/test/java/org/apache/sis/referencing/datum/DefaultVerticalDatumTest.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/test/java/org/apache/sis/referencing/datum/DefaultVerticalDatumTest.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/test/java/org/apache/sis/referencing/datum/DefaultVerticalDatumTest.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -17,9 +17,15 @@
package org.apache.sis.referencing.datum;
import java.lang.reflect.Field;
+import javax.xml.bind.Marshaller;
+import javax.xml.bind.Unmarshaller;
import javax.xml.bind.JAXBException;
import org.opengis.referencing.datum.VerticalDatumType;
import org.apache.sis.internal.referencing.VerticalDatumTypes;
+import org.apache.sis.internal.jaxb.LegacyNamespaces;
+import org.apache.sis.util.Version;
+import org.apache.sis.xml.XML;
+import org.apache.sis.xml.MarshallerPool;
import org.apache.sis.test.XMLTestCase;
import org.apache.sis.test.DependsOn;
import org.junit.Test;
@@ -45,6 +51,11 @@ public final strictfp class DefaultVerti
private static final String XML_FILE = "Mean Sea Level.xml";
/**
+ * An XML file with the same content than {@link #XML_FILE}, but written in an older GML format.
+ */
+ private static final String GML31_FILE = "Mean Sea Level (GML 3.1).xml";
+
+ /**
* Tests the {@link DefaultVerticalDatum#getVerticalDatumType()} method in a state
* simulating unmarshalling of GML 3.2 document.
*
@@ -85,20 +96,74 @@ public final strictfp class DefaultVerti
}
/**
- * Tests unmarshalling.
+ * Tests XML (un)marshalling.
*
- * @throws JAXBException If an error occurred during unmarshalling.
+ * @throws JAXBException If an error occurred during (un)marshalling.
*/
@Test
- public void testUnmarshalling() throws JAXBException {
+ public void testXML() throws JAXBException {
final DefaultVerticalDatum datum = unmarshalFile(DefaultVerticalDatum.class, XML_FILE);
assertIsMeanSeaLevel(datum, true);
/*
+ * Following attribute does not exist in GML 3.2, so it has been inferred.
+ * Our datum name is "Mean Sea Level", which for now is not yet mapped to
+ * the geoidal type (this could change in any future SIS version).
+ */
+ assertEquals("vertDatumType", VerticalDatumType.OTHER_SURFACE, datum.getVerticalDatumType());
+ /*
* Values in the following tests are specific to our XML file.
* The actual texts in the EPSG database are more descriptive.
*/
assertEquals("remarks", "Approximates geoid.", datum.getRemarks().toString());
assertEquals("scope", "Hydrography.", datum.getScope().toString());
assertEquals("anchorDefinition", "Averaged over a 19-year period.", datum.getAnchorPoint().toString());
+ /*
+ * Test marshalling and compare with the original file.
+ */
+ assertMarshalEqualsFile(XML_FILE, datum, "xmlns:*", "xsi:schemaLocation");
+ }
+
+ /**
+ * Tests (un)marshalling of an older version, GML 3.1.
+ *
+ * @throws JAXBException If an error occurred during unmarshalling.
+ *
+ * @see <a href="http://issues.apache.org/jira/browse/SIS-160">SIS-160: Need XSLT between GML 3.1 and 3.2</a>
+ */
+ @Test
+ public void testGML31() throws JAXBException {
+ final Version version = new Version("3.1");
+ final MarshallerPool pool = getMarshallerPool();
+ final Unmarshaller unmarshaller = pool.acquireUnmarshaller();
+ unmarshaller.setProperty(XML.GML_VERSION, version);
+ final DefaultVerticalDatum datum =
+ (DefaultVerticalDatum) unmarshaller.unmarshal(getClass().getResource(GML31_FILE));
+ pool.recycle(unmarshaller);
+ /*
+ * Following attribute exists in GML 3.1 only.
+ */
+ assertEquals("vertDatumType", VerticalDatumType.GEOIDAL, datum.getVerticalDatumType());
+ /*
+ * The name, anchor definition and domain of validity are lost because
+ * those property does not have the same XML element name (SIS-160).
+ * Below is all we have.
+ */
+ assertEquals("remarks", "Approximates geoid.", datum.getRemarks().toString());
+ assertEquals("scope", "Hydrography.", datum.getScope().toString());
+ /*
+ * Test marshaling. We can not yet compare with the original XML file
+ * because of all the information lost. This may be fixed in a future
+ * SIS version (SIS-160).
+ */
+ final Marshaller marshaller = pool.acquireMarshaller();
+ marshaller.setProperty(XML.GML_VERSION, version);
+ final String xml = marshal(marshaller, datum);
+ pool.recycle(marshaller);
+ assertXmlEquals(
+ "<gml:VerticalDatum xmlns:gml=\"" + LegacyNamespaces.GML + "\">\n" +
+ " <gml:remarks>Approximates geoid.</gml:remarks>\n" +
+ " <gml:scope>Hydrography.</gml:scope>\n" +
+ " <gml:verticalDatumType>geoidal</gml:verticalDatumType>\n" +
+ "</gml:VerticalDatum>", xml, "xmlns:*");
}
}
Modified: sis/branches/JDK6/core/sis-referencing/src/test/java/org/apache/sis/test/suite/ReferencingTestSuite.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/test/java/org/apache/sis/test/suite/ReferencingTestSuite.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/test/java/org/apache/sis/test/suite/ReferencingTestSuite.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-referencing/src/test/java/org/apache/sis/test/suite/ReferencingTestSuite.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -66,6 +66,7 @@ import org.junit.BeforeClass;
org.apache.sis.referencing.cs.DefaultCartesianCSTest.class,
org.apache.sis.referencing.cs.DefaultEllipsoidalCSTest.class,
org.apache.sis.referencing.cs.CoordinateSystemsTest.class,
+ org.apache.sis.referencing.crs.DefaultGeodeticCRSTest.class,
org.apache.sis.referencing.StandardDefinitionsTest.class,
org.apache.sis.referencing.GeodeticObjectsTest.class,
Modified: sis/branches/JDK6/core/sis-referencing/src/test/resources/org/apache/sis/referencing/cs/CartesianCS.xml
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/test/resources/org/apache/sis/referencing/cs/CartesianCS.xml?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/test/resources/org/apache/sis/referencing/cs/CartesianCS.xml (original)
+++ sis/branches/JDK6/core/sis-referencing/src/test/resources/org/apache/sis/referencing/cs/CartesianCS.xml Mon Jan 6 05:27:52 2014
@@ -22,6 +22,7 @@
xmlns:gml = "http://www.opengis.net/gml/3.2"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
gml:id = "epsg-cs-4400">
+
<gml:identifier codeSpace="OGP">urn:ogc:def:cs:EPSG::4400</gml:identifier>
<gml:name>Easting, northing (E,N)</gml:name>
<gml:remarks>Used in ProjectedCRS.</gml:remarks>
Modified: sis/branches/JDK6/core/sis-referencing/src/test/resources/org/apache/sis/referencing/cs/EllipsoidalCS.xml
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/test/resources/org/apache/sis/referencing/cs/EllipsoidalCS.xml?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/test/resources/org/apache/sis/referencing/cs/EllipsoidalCS.xml (original)
+++ sis/branches/JDK6/core/sis-referencing/src/test/resources/org/apache/sis/referencing/cs/EllipsoidalCS.xml Mon Jan 6 05:27:52 2014
@@ -22,6 +22,7 @@
xmlns:gml = "http://www.opengis.net/gml/3.2"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
gml:id = "epsg-cs-6422">
+
<gml:identifier codeSpace="OGP">urn:ogc:def:cs:EPSG::6422</gml:identifier>
<gml:name>Latitude (north), Longitude (east)</gml:name>
<gml:remarks>Used in two-dimensional GeographicCRS.</gml:remarks>
Modified: sis/branches/JDK6/core/sis-referencing/src/test/resources/org/apache/sis/referencing/datum/Mean Sea Level.xml
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-referencing/src/test/resources/org/apache/sis/referencing/datum/Mean%20Sea%20Level.xml?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-referencing/src/test/resources/org/apache/sis/referencing/datum/Mean Sea Level.xml (original)
+++ sis/branches/JDK6/core/sis-referencing/src/test/resources/org/apache/sis/referencing/datum/Mean Sea Level.xml Mon Jan 6 05:27:52 2014
@@ -22,7 +22,7 @@
xmlns:gmd = "http://www.isotc211.org/2005/gmd"
xmlns:gco = "http://www.isotc211.org/2005/gco"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
- gml:id = "epsg-datum-6326">
+ gml:id = "epsg-datum-5100">
<gml:identifier codeSpace="OGP">urn:ogc:def:datum:EPSG::5100</gml:identifier>
<gml:name>Mean Sea Level</gml:name>
Modified: sis/branches/JDK6/core/sis-utility/src/main/java/org/apache/sis/xml/XML.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK6/core/sis-utility/src/main/java/org/apache/sis/xml/XML.java?rev=1555663&r1=1555662&r2=1555663&view=diff
==============================================================================
--- sis/branches/JDK6/core/sis-utility/src/main/java/org/apache/sis/xml/XML.java [UTF-8] (original)
+++ sis/branches/JDK6/core/sis-utility/src/main/java/org/apache/sis/xml/XML.java [UTF-8] Mon Jan 6 05:27:52 2014
@@ -158,6 +158,13 @@ public final class XML extends Static {
*
* <p>The value can be {@link String} or {@link Version} objects.
* If no version is specified, then the most recent GML version is assumed.</p>
+ *
+ * {@section Supported GML versions}
+ * Apache SIS currently supports GML 3.2.1 by default. SIS can read and write GML 3.2
+ * if this property is set to "3.2". It is also possible to set this property to "3.1",
+ * but the marshalled XML is not GML 3.1.1 conformant because of the differences between the two schemas.
+ * See <a href="http://issues.apache.org/jira/browse/SIS-160">SIS-160: Need XSLT between GML 3.1 and 3.2</a>
+ * for information about the status of GML 3.1.1 support.
*/
public static final String GML_VERSION = "org.apache.sis.gml.version";