Modified: 
sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/transform/InterpolatedTransform2D.java
URL: 
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/transform/InterpolatedTransform2D.java?rev=1764673&r1=1764672&r2=1764673&view=diff
==============================================================================
--- 
sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/transform/InterpolatedTransform2D.java
 [UTF-8] (original)
+++ 
sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/transform/InterpolatedTransform2D.java
 [UTF-8] Thu Oct 13 13:38:49 2016
@@ -18,7 +18,7 @@ package org.apache.sis.referencing.opera
 
 import java.awt.Shape;
 import java.awt.geom.Point2D;
-import javax.measure.quantity.Quantity;
+import javax.measure.Quantity;
 import org.opengis.referencing.operation.Matrix;
 import org.opengis.referencing.operation.MathTransform2D;
 import org.opengis.referencing.operation.TransformException;
@@ -31,7 +31,7 @@ import org.apache.sis.referencing.operat
  *
  * @author  Martin Desruisseaux (Geomatys)
  * @since   0.7
- * @version 0.7
+ * @version 0.8
  * @module
  */
 final class InterpolatedTransform2D extends InterpolatedTransform implements 
MathTransform2D {
@@ -43,7 +43,7 @@ final class InterpolatedTransform2D exte
     /**
      * Constructs a 2D transform.
      */
-    <T extends Quantity> InterpolatedTransform2D(final DatumShiftGrid<T,T> 
grid) throws NoninvertibleMatrixException {
+    <T extends Quantity<T>> InterpolatedTransform2D(final DatumShiftGrid<T,T> 
grid) throws NoninvertibleMatrixException {
         super(grid);
     }
 

Modified: 
sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/transform/MathTransformProvider.java
URL: 
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/transform/MathTransformProvider.java?rev=1764673&r1=1764672&r2=1764673&view=diff
==============================================================================
--- 
sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/transform/MathTransformProvider.java
 [UTF-8] (original)
+++ 
sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/transform/MathTransformProvider.java
 [UTF-8] Thu Oct 13 13:38:49 2016
@@ -60,8 +60,8 @@ import org.opengis.referencing.operation
  *
  *         &#64;Override
  *         public MathTransform createMathTransform(MathTransformFactory 
factory, ParameterValueGroup parameters) {
- *             double semiMajor = 
values.parameter("semi_major").doubleValue(SI.METRE);
- *             double semiMinor = 
values.parameter("semi_minor").doubleValue(SI.METRE);
+ *             double semiMajor = 
values.parameter("semi_major").doubleValue(Units.METRE);
+ *             double semiMinor = 
values.parameter("semi_minor").doubleValue(Units.METRE);
  *             // etc...
  *             return new MyProjection(semiMajor, semiMinor, ...);
  *         }
@@ -95,8 +95,8 @@ public interface MathTransformProvider {
      *
      * {@preformat java
      *     public MathTransform createMathTransform(MathTransformFactory 
factory, ParameterValueGroup parameters) {
-     *         double semiMajor = 
values.parameter("semi_major").doubleValue(SI.METRE);
-     *         double semiMinor = 
values.parameter("semi_minor").doubleValue(SI.METRE);
+     *         double semiMajor = 
values.parameter("semi_major").doubleValue(Units.METRE);
+     *         double semiMinor = 
values.parameter("semi_minor").doubleValue(Units.METRE);
      *         // etc...
      *         return new MyProjection(semiMajor, semiMinor, ...);
      *     }

Modified: 
sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/transform/MolodenskyFormula.java
URL: 
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/transform/MolodenskyFormula.java?rev=1764673&r1=1764672&r2=1764673&view=diff
==============================================================================
--- 
sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/transform/MolodenskyFormula.java
 [UTF-8] (original)
+++ 
sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/transform/MolodenskyFormula.java
 [UTF-8] Thu Oct 13 13:38:49 2016
@@ -16,7 +16,7 @@
  */
 package org.apache.sis.referencing.operation.transform;
 
-import javax.measure.unit.Unit;
+import javax.measure.Unit;
 import javax.measure.quantity.Length;
 import org.opengis.parameter.ParameterValueGroup;
 import org.opengis.parameter.ParameterDescriptorGroup;

Modified: 
sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/transform/MolodenskyTransform.java
URL: 
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/transform/MolodenskyTransform.java?rev=1764673&r1=1764672&r2=1764673&view=diff
==============================================================================
--- 
sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/transform/MolodenskyTransform.java
 [UTF-8] (original)
+++ 
sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/transform/MolodenskyTransform.java
 [UTF-8] Thu Oct 13 13:38:49 2016
@@ -17,7 +17,7 @@
 package org.apache.sis.referencing.operation.transform;
 
 import java.util.Arrays;
-import javax.measure.unit.Unit;
+import javax.measure.Unit;
 import org.opengis.util.FactoryException;
 import org.opengis.parameter.ParameterDescriptorGroup;
 import org.opengis.referencing.datum.Ellipsoid;
@@ -28,6 +28,7 @@ import org.opengis.referencing.operation
 import org.apache.sis.internal.referencing.provider.Molodensky;
 import org.apache.sis.internal.referencing.provider.AbridgedMolodensky;
 import org.apache.sis.parameter.Parameters;
+import org.apache.sis.measure.Units;
 import org.apache.sis.util.Debug;
 
 import static java.lang.Math.*;
@@ -82,7 +83,7 @@ import static java.lang.Math.*;
  * @author  Martin Desruisseaux (IRD, Geomatys)
  * @author  Rémi Maréchal (Geomatys)
  * @since   0.7
- * @version 0.7
+ * @version 0.8
  * @module
  */
 public class MolodenskyTransform extends MolodenskyFormula {
@@ -188,7 +189,7 @@ public class MolodenskyTransform extends
         pg.getOrCreate(Molodensky.TY)                    .setValue(tY, unit);
         pg.getOrCreate(Molodensky.TZ)                    .setValue(tZ, unit);
         pg.getOrCreate(Molodensky.AXIS_LENGTH_DIFFERENCE).setValue(Δa, unit);
-        pg.getOrCreate(Molodensky.FLATTENING_DIFFERENCE) .setValue(Δf, 
Unit.ONE);
+        pg.getOrCreate(Molodensky.FLATTENING_DIFFERENCE) .setValue(Δf, 
Units.ONE);
         if (pg != context) {
             pg.parameter("abridged").setValue(isAbridged);  // Only in 
internal parameters.
         }

Modified: 
sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/package-info.java
URL: 
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/package-info.java?rev=1764673&r1=1764672&r2=1764673&view=diff
==============================================================================
--- 
sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/package-info.java
 [UTF-8] (original)
+++ 
sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/package-info.java
 [UTF-8] Thu Oct 13 13:38:49 2016
@@ -89,7 +89,7 @@
  * @author  Martin Desruisseaux (IRD, Geomatys)
  * @author  Guilhem Legal (Geomatys)
  * @since   0.4
- * @version 0.7
+ * @version 0.8
  * @module
  */
 @XmlSchema(location = 
"http://schemas.opengis.net/gml/3.2.1/referenceSystems.xsd";,

Modified: 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/jaxb/referencing/CC_OperationParameterGroupTest.java
URL: 
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/jaxb/referencing/CC_OperationParameterGroupTest.java?rev=1764673&r1=1764672&r2=1764673&view=diff
==============================================================================
--- 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/jaxb/referencing/CC_OperationParameterGroupTest.java
 [UTF-8] (original)
+++ 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/jaxb/referencing/CC_OperationParameterGroupTest.java
 [UTF-8] Thu Oct 13 13:38:49 2016
@@ -21,7 +21,6 @@ import java.util.Map;
 import java.util.IdentityHashMap;
 import java.util.Collections;
 import javax.xml.bind.JAXBException;
-import javax.measure.unit.NonSI;
 import org.opengis.metadata.Identifier;
 import org.opengis.parameter.ParameterDescriptor;
 import org.opengis.parameter.ParameterDescriptorGroup;
@@ -31,6 +30,7 @@ import org.apache.sis.parameter.DefaultP
 import org.apache.sis.parameter.ParameterBuilder;
 import org.apache.sis.internal.referencing.provider.Mercator1SP;
 import org.apache.sis.internal.util.UnmodifiableArrayList;
+import org.apache.sis.measure.Units;
 import org.apache.sis.test.XMLTestCase;
 import org.apache.sis.test.DependsOn;
 import org.apache.sis.test.DependsOnMethod;
@@ -48,7 +48,7 @@ import static org.junit.Assert.*;
  *
  * @author  Martin Desruisseaux (Geomatys)
  * @since   0.6
- * @version 0.6
+ * @version 0.8
  * @module
  *
  * @see <a href="http://issues.apache.org/jira/browse/SIS-290";>SIS-290</a>
@@ -98,8 +98,8 @@ public final strictfp class CC_Operation
         final ParameterBuilder builder = new ParameterBuilder();
         builder.setCodeSpace(EPSG, "EPSG").setRequired(true);
         return new ParameterDescriptor<?>[] {
-            builder.addIdentifier("8801").addName("Latitude of natural 
origin") .setRemarks(remarks).create(0, NonSI.DEGREE_ANGLE),
-            builder.addIdentifier("8802").addName("Longitude of natural 
origin").create(0, NonSI.DEGREE_ANGLE),
+            builder.addIdentifier("8801").addName("Latitude of natural 
origin") .setRemarks(remarks).create(0, Units.DEGREE),
+            builder.addIdentifier("8802").addName("Longitude of natural 
origin").create(0, Units.DEGREE),
         };
     }
 

Modified: 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/jaxb/referencing/SecondDefiningParameterTest.java
URL: 
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/jaxb/referencing/SecondDefiningParameterTest.java?rev=1764673&r1=1764672&r2=1764673&view=diff
==============================================================================
--- 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/jaxb/referencing/SecondDefiningParameterTest.java
 [UTF-8] (original)
+++ 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/jaxb/referencing/SecondDefiningParameterTest.java
 [UTF-8] Thu Oct 13 13:38:49 2016
@@ -17,8 +17,8 @@
 package org.apache.sis.internal.jaxb.referencing;
 
 import java.util.Collections;
-import javax.measure.unit.SI;
 import javax.xml.bind.JAXBException;
+import org.apache.sis.measure.Units;
 import org.apache.sis.referencing.datum.DefaultEllipsoid;
 import org.apache.sis.test.XMLTestCase;
 import org.junit.Test;
@@ -31,7 +31,7 @@ import static org.apache.sis.test.Assert
  *
  * @author  Martin Desruisseaux (Geomatys)
  * @since   0.4
- * @version 0.4
+ * @version 0.8
  * @module
  */
 public final strictfp class SecondDefiningParameterTest extends XMLTestCase {
@@ -52,7 +52,7 @@ public final strictfp class SecondDefini
     @Test
     public void testMarshalling() throws JAXBException {
         final DefaultEllipsoid ellipsoid = 
DefaultEllipsoid.createEllipsoid(Collections.singletonMap(
-                DefaultEllipsoid.NAME_KEY, "Sphere"), 6371000, 6371000, 
SI.METRE);
+                DefaultEllipsoid.NAME_KEY, "Sphere"), 6371000, 6371000, 
Units.METRE);
         final SecondDefiningParameter sdp = new 
SecondDefiningParameter(ellipsoid, false);
         assertXmlEquals(
                 "<?xml version=\"1.0\" encoding=\"UTF-8\" 
standalone=\"yes\"?>\n" +
@@ -71,6 +71,6 @@ public final strictfp class SecondDefini
     public void testUnmarshalling() throws JAXBException {
         final SecondDefiningParameter sdp = 
unmarshal(SecondDefiningParameter.class, XML);
         assertEquals(6371000.0, sdp.measure.value, 0);
-        assertEquals(SI.METRE,  sdp.measure.unit);
+        assertEquals(Units.METRE,  sdp.measure.unit);
     }
 }

Modified: 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/metadata/AxisDirectionsTest.java
URL: 
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/metadata/AxisDirectionsTest.java?rev=1764673&r1=1764672&r2=1764673&view=diff
==============================================================================
--- 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/metadata/AxisDirectionsTest.java
 [UTF-8] (original)
+++ 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/metadata/AxisDirectionsTest.java
 [UTF-8] Thu Oct 13 13:38:49 2016
@@ -17,14 +17,13 @@
 package org.apache.sis.internal.metadata;
 
 import java.lang.reflect.Field;
-import javax.measure.unit.SI;
-import javax.measure.unit.NonSI;
-import javax.measure.unit.Unit;
+import javax.measure.Unit;
 import org.opengis.referencing.cs.AxisDirection;
 import org.opengis.referencing.cs.CoordinateSystem;
 import org.opengis.referencing.cs.CoordinateSystemAxis;
 import org.apache.sis.referencing.cs.HardCodedAxes;
 import org.apache.sis.referencing.cs.HardCodedCS;
+import org.apache.sis.measure.Units;
 import org.apache.sis.test.DependsOnMethod;
 import org.apache.sis.test.TestCase;
 import org.junit.Test;
@@ -45,7 +44,7 @@ import static org.apache.sis.internal.me
  *
  * @author  Martin Desruisseaux (Geomatys)
  * @since   0.4
- * @version 0.6
+ * @version 0.8
  * @module
  */
 public final strictfp class AxisDirectionsTest extends TestCase {
@@ -383,37 +382,37 @@ public final strictfp class AxisDirectio
      */
     @Test
     public void testSuggestAbbreviation() {
-        assertEquals("x",   AxisDirections.suggestAbbreviation("x",            
          EAST,             SI.METRE));
-        assertEquals("λ",   AxisDirections.suggestAbbreviation("Geodetic 
longitude",     EAST,          NonSI.DEGREE_ANGLE));
-        assertEquals("φ",   AxisDirections.suggestAbbreviation("Geodetic 
latitude",      NORTH,         NonSI.DEGREE_ANGLE));
-        assertEquals("θ",   AxisDirections.suggestAbbreviation("Spherical 
longitude",    EAST,          NonSI.DEGREE_ANGLE));
-        assertEquals("φ′",  AxisDirections.suggestAbbreviation("Spherical 
latitude",     NORTH,         NonSI.DEGREE_ANGLE));
-        assertEquals("h",   AxisDirections.suggestAbbreviation("Ellipsoidal 
height",     UP,               SI.METRE));
-        assertEquals("H",   
AxisDirections.suggestAbbreviation("Gravity-related height", UP,               
SI.METRE));
-        assertEquals("φ",   AxisDirections.suggestAbbreviation("Elevation",    
          UP,               SI.METRE));
-        assertEquals("R",   AxisDirections.suggestAbbreviation("Geocentric 
radius",      UP,               SI.METRE));
-        assertEquals("r",   AxisDirections.suggestAbbreviation("Distance",     
          AWAY_FROM,        SI.METRE));
-        assertEquals("θ",   AxisDirections.suggestAbbreviation("Bearing",      
          CLOCKWISE,     NonSI.DEGREE_ANGLE));
-        assertEquals("X",   AxisDirections.suggestAbbreviation("not needed",   
          GEOCENTRIC_X,     SI.METRE));
-        assertEquals("Y",   AxisDirections.suggestAbbreviation("not needed",   
          GEOCENTRIC_Y,     SI.METRE));
-        assertEquals("Z",   AxisDirections.suggestAbbreviation("not needed",   
          GEOCENTRIC_Z,     SI.METRE));
-        assertEquals("D",   AxisDirections.suggestAbbreviation("not needed",   
          DOWN,             SI.METRE));
-        assertEquals("t",   AxisDirections.suggestAbbreviation("not needed",   
          FUTURE,        NonSI.DAY));
-        assertEquals("i",   AxisDirections.suggestAbbreviation("not needed",   
          COLUMN_NEGATIVE,  Unit.ONE));
-        assertEquals("j",   AxisDirections.suggestAbbreviation("not needed",   
          ROW_NEGATIVE,     Unit.ONE));
-        assertEquals("x",   AxisDirections.suggestAbbreviation("not needed",   
          DISPLAY_RIGHT,    Unit.ONE));
-        assertEquals("y",   AxisDirections.suggestAbbreviation("not needed",   
          DISPLAY_DOWN,     Unit.ONE));
-        assertEquals("N",   AxisDirections.suggestAbbreviation("not needed",   
          NORTH,            SI.METRE));
-        assertEquals("S",   AxisDirections.suggestAbbreviation("not needed",   
          SOUTH,            SI.METRE));
-        assertEquals("E",   AxisDirections.suggestAbbreviation("not needed",   
          EAST,             SI.METRE));
-        assertEquals("W",   AxisDirections.suggestAbbreviation("not needed",   
          WEST,             SI.METRE));
-        assertEquals("NE",  AxisDirections.suggestAbbreviation("not needed",   
          NORTH_EAST,       SI.METRE));
-        assertEquals("NW",  AxisDirections.suggestAbbreviation("not needed",   
          NORTH_WEST,       SI.METRE));
-        assertEquals("SE",  AxisDirections.suggestAbbreviation("not needed",   
          SOUTH_EAST,       SI.METRE));
-        assertEquals("SW",  AxisDirections.suggestAbbreviation("not needed",   
          SOUTH_WEST,       SI.METRE));
-        assertEquals("SSE", AxisDirections.suggestAbbreviation("not needed",   
          SOUTH_SOUTH_EAST, SI.METRE));
-        assertEquals("NNW", AxisDirections.suggestAbbreviation("not needed",   
          NORTH_NORTH_WEST, SI.METRE));
-        assertEquals("ENE", AxisDirections.suggestAbbreviation("not needed",   
          EAST_NORTH_EAST,  SI.METRE));
+        assertEquals("x",   AxisDirections.suggestAbbreviation("x",            
          EAST,             Units.METRE));
+        assertEquals("λ",   AxisDirections.suggestAbbreviation("Geodetic 
longitude",     EAST,             Units.DEGREE));
+        assertEquals("φ",   AxisDirections.suggestAbbreviation("Geodetic 
latitude",      NORTH,            Units.DEGREE));
+        assertEquals("θ",   AxisDirections.suggestAbbreviation("Spherical 
longitude",    EAST,             Units.DEGREE));
+        assertEquals("φ′",  AxisDirections.suggestAbbreviation("Spherical 
latitude",     NORTH,            Units.DEGREE));
+        assertEquals("h",   AxisDirections.suggestAbbreviation("Ellipsoidal 
height",     UP,               Units.METRE));
+        assertEquals("H",   
AxisDirections.suggestAbbreviation("Gravity-related height", UP,               
Units.METRE));
+        assertEquals("φ",   AxisDirections.suggestAbbreviation("Elevation",    
          UP,               Units.METRE));
+        assertEquals("R",   AxisDirections.suggestAbbreviation("Geocentric 
radius",      UP,               Units.METRE));
+        assertEquals("r",   AxisDirections.suggestAbbreviation("Distance",     
          AWAY_FROM,        Units.METRE));
+        assertEquals("θ",   AxisDirections.suggestAbbreviation("Bearing",      
          CLOCKWISE,        Units.DEGREE));
+        assertEquals("X",   AxisDirections.suggestAbbreviation("not needed",   
          GEOCENTRIC_X,     Units.METRE));
+        assertEquals("Y",   AxisDirections.suggestAbbreviation("not needed",   
          GEOCENTRIC_Y,     Units.METRE));
+        assertEquals("Z",   AxisDirections.suggestAbbreviation("not needed",   
          GEOCENTRIC_Z,     Units.METRE));
+        assertEquals("D",   AxisDirections.suggestAbbreviation("not needed",   
          DOWN,             Units.METRE));
+        assertEquals("t",   AxisDirections.suggestAbbreviation("not needed",   
          FUTURE,           Units.DAY));
+        assertEquals("i",   AxisDirections.suggestAbbreviation("not needed",   
          COLUMN_NEGATIVE,  Units.ONE));
+        assertEquals("j",   AxisDirections.suggestAbbreviation("not needed",   
          ROW_NEGATIVE,     Units.ONE));
+        assertEquals("x",   AxisDirections.suggestAbbreviation("not needed",   
          DISPLAY_RIGHT,    Units.ONE));
+        assertEquals("y",   AxisDirections.suggestAbbreviation("not needed",   
          DISPLAY_DOWN,     Units.ONE));
+        assertEquals("N",   AxisDirections.suggestAbbreviation("not needed",   
          NORTH,            Units.METRE));
+        assertEquals("S",   AxisDirections.suggestAbbreviation("not needed",   
          SOUTH,            Units.METRE));
+        assertEquals("E",   AxisDirections.suggestAbbreviation("not needed",   
          EAST,             Units.METRE));
+        assertEquals("W",   AxisDirections.suggestAbbreviation("not needed",   
          WEST,             Units.METRE));
+        assertEquals("NE",  AxisDirections.suggestAbbreviation("not needed",   
          NORTH_EAST,       Units.METRE));
+        assertEquals("NW",  AxisDirections.suggestAbbreviation("not needed",   
          NORTH_WEST,       Units.METRE));
+        assertEquals("SE",  AxisDirections.suggestAbbreviation("not needed",   
          SOUTH_EAST,       Units.METRE));
+        assertEquals("SW",  AxisDirections.suggestAbbreviation("not needed",   
          SOUTH_WEST,       Units.METRE));
+        assertEquals("SSE", AxisDirections.suggestAbbreviation("not needed",   
          SOUTH_SOUTH_EAST, Units.METRE));
+        assertEquals("NNW", AxisDirections.suggestAbbreviation("not needed",   
          NORTH_NORTH_WEST, Units.METRE));
+        assertEquals("ENE", AxisDirections.suggestAbbreviation("not needed",   
          EAST_NORTH_EAST,  Units.METRE));
     }
 
     /**
@@ -449,6 +448,6 @@ public final strictfp class AxisDirectio
         final String name = AxisDirections.appendTo(buffer, new 
CoordinateSystemAxis[] {
             HardCodedAxes.EASTING, HardCodedAxes.NORTHING, 
HardCodedAxes.HEIGHT_cm, HardCodedAxes.TIME
         });
-        assertEquals("Compound CS: East (m), North (m), Up (cm), Future (d).", 
name);
+        assertEquals("Compound CS: East (m), North (m), Up (cm), Future 
(day).", name);
     }
 }

Modified: 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/ReferencingUtilitiesTest.java
URL: 
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/ReferencingUtilitiesTest.java?rev=1764673&r1=1764672&r2=1764673&view=diff
==============================================================================
--- 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/ReferencingUtilitiesTest.java
 [UTF-8] (original)
+++ 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/ReferencingUtilitiesTest.java
 [UTF-8] Thu Oct 13 13:38:49 2016
@@ -16,8 +16,7 @@
  */
 package org.apache.sis.internal.referencing;
 
-import javax.measure.unit.Unit;
-import javax.measure.unit.NonSI;
+import javax.measure.Unit;
 import org.opengis.referencing.cs.*;
 import org.opengis.referencing.crs.CoordinateReferenceSystem;
 import org.opengis.referencing.crs.GeographicCRS;
@@ -26,6 +25,7 @@ import org.opengis.referencing.Identifie
 import org.apache.sis.referencing.datum.HardCodedDatum;
 import org.apache.sis.referencing.crs.HardCodedCRS;
 import org.apache.sis.util.Utilities;
+import org.apache.sis.measure.Units;
 import org.apache.sis.test.TestCase;
 import org.junit.Test;
 
@@ -38,7 +38,7 @@ import static org.apache.sis.internal.re
  *
  * @author  Martin Desruisseaux (Geomatys)
  * @since   0.5 (derived from 0.4)
- * @version 0.7
+ * @version 0.8
  * @module
  */
 public final strictfp class ReferencingUtilitiesTest extends TestCase {
@@ -47,12 +47,12 @@ public final strictfp class ReferencingU
      */
     @Test
     public void testGetGreenwichLongitude() {
-        assertEquals(0,          
getGreenwichLongitude(HardCodedDatum.GREENWICH, NonSI.DEGREE_ANGLE), STRICT);
-        assertEquals(0,          
getGreenwichLongitude(HardCodedDatum.GREENWICH, NonSI.GRADE),        STRICT);
-        assertEquals(2.5969213,  getGreenwichLongitude(HardCodedDatum.PARIS,   
  NonSI.GRADE),        STRICT);
-        assertEquals(2.33722917, getGreenwichLongitude(HardCodedDatum.PARIS,   
  NonSI.DEGREE_ANGLE), 1E-12);
-        assertEquals(2.33720833, 
getGreenwichLongitude(HardCodedDatum.PARIS_RGS, NonSI.DEGREE_ANGLE), 1E-8);
-        assertEquals(2.596898,   
getGreenwichLongitude(HardCodedDatum.PARIS_RGS, NonSI.GRADE),        1E-6);
+        assertEquals(0,          
getGreenwichLongitude(HardCodedDatum.GREENWICH, Units.DEGREE), STRICT);
+        assertEquals(0,          
getGreenwichLongitude(HardCodedDatum.GREENWICH, Units.GRAD),   STRICT);
+        assertEquals(2.5969213,  getGreenwichLongitude(HardCodedDatum.PARIS,   
  Units.GRAD),   STRICT);
+        assertEquals(2.33722917, getGreenwichLongitude(HardCodedDatum.PARIS,   
  Units.DEGREE), 1E-12);
+        assertEquals(2.33720833, 
getGreenwichLongitude(HardCodedDatum.PARIS_RGS, Units.DEGREE), 1E-8);
+        assertEquals(2.596898,   
getGreenwichLongitude(HardCodedDatum.PARIS_RGS, Units.GRAD),   1E-6);
     }
 
     /**

Modified: 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/GeographicOffsetsTest.java
URL: 
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/GeographicOffsetsTest.java?rev=1764673&r1=1764672&r2=1764673&view=diff
==============================================================================
--- 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/GeographicOffsetsTest.java
 [UTF-8] (original)
+++ 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/GeographicOffsetsTest.java
 [UTF-8] Thu Oct 13 13:38:49 2016
@@ -16,7 +16,6 @@
  */
 package org.apache.sis.internal.referencing.provider;
 
-import javax.measure.unit.NonSI;
 import org.opengis.util.FactoryException;
 import org.opengis.parameter.ParameterValueGroup;
 import org.opengis.referencing.operation.MathTransformFactory;
@@ -24,6 +23,7 @@ import org.opengis.referencing.operation
 import org.apache.sis.internal.referencing.Formulas;
 import org.apache.sis.internal.system.DefaultFactories;
 import 
org.apache.sis.referencing.operation.transform.DefaultMathTransformFactory;
+import org.apache.sis.measure.Units;
 
 // Test dependencies
 import org.opengis.test.referencing.TransformTestCase;
@@ -37,7 +37,7 @@ import org.junit.Test;
  *
  * @author  Martin Desruisseaux (Geomatys)
  * @since   0.7
- * @version 0.7
+ * @version 0.8
  * @module
  */
 @DependsOn(AffineTest.class)
@@ -101,7 +101,7 @@ public final strictfp class GeographicOf
     public void testVerticalOffset() throws FactoryException, 
TransformException {
         final VerticalOffset provider = new VerticalOffset();
         final ParameterValueGroup pv = provider.getParameters().createValue();
-        pv.parameter("Vertical Offset").setValue(15.55, NonSI.FOOT);
+        pv.parameter("Vertical Offset").setValue(15.55, Units.FOOT);
         transform = provider.createMathTransform(null, pv);
         tolerance = Formulas.LINEAR_TOLERANCE;
         final double[] source = new double[transform.getSourceDimensions()];
@@ -124,7 +124,7 @@ public final strictfp class GeographicOf
         final DefaultMathTransformFactory factory = 
DefaultFactories.forBuildin(
                 MathTransformFactory.class, DefaultMathTransformFactory.class);
         final ParameterValueGroup pv = factory.getDefaultParameters("Vertical 
Offset");
-        pv.parameter("Vertical Offset").setValue(15.55, NonSI.FOOT);
+        pv.parameter("Vertical Offset").setValue(15.55, Units.FOOT);
         /*
          * Now create the MathTransform. But at the difference of the above 
testVerticalOffset() method,
          * we supply information about axis directions. The operation 
parameter shall have the same sign

Modified: 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/LongitudeRotationTest.java
URL: 
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/LongitudeRotationTest.java?rev=1764673&r1=1764672&r2=1764673&view=diff
==============================================================================
--- 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/LongitudeRotationTest.java
 [UTF-8] (original)
+++ 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/LongitudeRotationTest.java
 [UTF-8] Thu Oct 13 13:38:49 2016
@@ -16,11 +16,11 @@
  */
 package org.apache.sis.internal.referencing.provider;
 
-import javax.measure.unit.NonSI;
 import org.opengis.parameter.ParameterValueGroup;
 import org.opengis.referencing.operation.MathTransform;
 import org.apache.sis.referencing.operation.transform.LinearTransform;
 import org.apache.sis.referencing.operation.matrix.Matrix3;
+import org.apache.sis.measure.Units;
 import org.apache.sis.test.DependsOnMethod;
 import org.apache.sis.test.DependsOn;
 import org.apache.sis.test.TestCase;
@@ -34,7 +34,7 @@ import static org.apache.sis.test.Metada
  *
  * @author  Martin Desruisseaux (Geomatys)
  * @since   0.6
- * @version 0.6
+ * @version 0.8
  * @module
  */
 @DependsOn(AffineTest.class)
@@ -46,7 +46,7 @@ public final strictfp class LongitudeRot
     public void testCreateMathTransform() {
         final LongitudeRotation provider = new LongitudeRotation();
         ParameterValueGroup p = provider.getParameters().createValue();
-        p.parameter("Longitude offset").setValue(2.5969213, NonSI.GRADE);   // 
Paris meridian
+        p.parameter("Longitude offset").setValue(2.5969213, Units.GRAD);   // 
Paris meridian
         final MathTransform mt = provider.createMathTransform(null, p);
         /*
          * Verify the full matrix. Note that the longitude offset is expected 
to be in degrees.
@@ -69,7 +69,7 @@ public final strictfp class LongitudeRot
     public void testWKT() {
         final LongitudeRotation provider = new LongitudeRotation();
         final ParameterValueGroup p = provider.getParameters().createValue();
-        p.parameter("Longitude offset").setValue(2.5969213, NonSI.GRADE);
+        p.parameter("Longitude offset").setValue(2.5969213, Units.GRAD);
         assertWktEquals(
                 "PARAM_MT[“Affine parametric transformation”,\n" +
                 "  PARAMETER[“A2”, 2.33722917, ID[“EPSG”, 8625]]]", 
provider.createMathTransform(null, p));

Modified: 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/NADCONTest.java
URL: 
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/NADCONTest.java?rev=1764673&r1=1764672&r2=1764673&view=diff
==============================================================================
--- 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/NADCONTest.java
 [UTF-8] (original)
+++ 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/NADCONTest.java
 [UTF-8] Thu Oct 13 13:38:49 2016
@@ -21,7 +21,6 @@ import java.io.BufferedWriter;
 import java.io.IOException;
 import java.net.URL;
 import java.net.URISyntaxException;
-import javax.measure.unit.NonSI;
 import javax.measure.quantity.Angle;
 import org.opengis.geometry.Envelope;
 import org.opengis.util.FactoryException;
@@ -29,6 +28,7 @@ import org.opengis.referencing.operation
 import org.apache.sis.referencing.operation.matrix.Matrix3;
 import org.apache.sis.geometry.Envelope2D;
 import org.apache.sis.geometry.Envelopes;
+import org.apache.sis.measure.Units;
 import org.apache.sis.test.TestCase;
 import org.junit.Test;
 
@@ -46,7 +46,7 @@ import java.nio.file.Files;
  * @author  Martin Desruisseaux (Geomatys)
  * @author  Simon Reynard (Geomatys)
  * @since   0.7
- * @version 0.7
+ * @version 0.8
  * @module
  */
 public final strictfp class NADCONTest extends TestCase {
@@ -145,8 +145,8 @@ public final strictfp class NADCONTest e
     {
         final DatumShiftGridFile<Angle,Angle> grid = 
NADCON.getOrLoad(latitudeShifts, longitudeShifts);
         assertInstanceOf("Should not be compressed.", 
DatumShiftGridFile.Float.class, grid);
-        assertEquals("coordinateUnit",  NonSI.DEGREE_ANGLE, 
grid.getCoordinateUnit());
-        assertEquals("translationUnit", NonSI.DEGREE_ANGLE, 
grid.getTranslationUnit());
+        assertEquals("coordinateUnit",  Units.DEGREE, 
grid.getCoordinateUnit());
+        assertEquals("translationUnit", Units.DEGREE, 
grid.getTranslationUnit());
         assertEquals("translationDimensions", 2, 
grid.getTranslationDimensions());
         assertTrue  ("isCellValueRatio", grid.isCellValueRatio());
         assertTrue  ("cellPrecision", grid.getCellPrecision() > 0);

Modified: 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/NTv2Test.java
URL: 
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/NTv2Test.java?rev=1764673&r1=1764672&r2=1764673&view=diff
==============================================================================
--- 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/NTv2Test.java
 [UTF-8] (original)
+++ 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/NTv2Test.java
 [UTF-8] Thu Oct 13 13:38:49 2016
@@ -23,7 +23,6 @@ import java.nio.ByteBuffer;
 import java.nio.ByteOrder;
 import java.nio.channels.WritableByteChannel;
 import java.nio.charset.StandardCharsets;
-import javax.measure.unit.NonSI;
 import javax.measure.quantity.Angle;
 import org.opengis.geometry.Envelope;
 import org.opengis.util.FactoryException;
@@ -31,6 +30,7 @@ import org.opengis.referencing.operation
 import org.apache.sis.referencing.operation.matrix.Matrix3;
 import org.apache.sis.geometry.Envelope2D;
 import org.apache.sis.geometry.Envelopes;
+import org.apache.sis.measure.Units;
 import org.apache.sis.test.TestCase;
 import org.junit.Test;
 
@@ -48,7 +48,7 @@ import java.nio.file.StandardOpenOption;
  *
  * @author  Martin Desruisseaux (Geomatys)
  * @since   0.7
- * @version 0.7
+ * @version 0.8
  * @module
  *
  * @see GeocentricTranslationTest#testFranceGeocentricInterpolationPoint()
@@ -115,8 +115,8 @@ public final strictfp class NTv2Test ext
         final double cellSize = 360;
         final DatumShiftGridFile<Angle,Angle> grid = NTv2.getOrLoad(file);
         assertInstanceOf("Should not be compressed.", 
DatumShiftGridFile.Float.class, grid);
-        assertEquals("coordinateUnit",  NonSI.SECOND_ANGLE, 
grid.getCoordinateUnit());
-        assertEquals("translationUnit", NonSI.SECOND_ANGLE, 
grid.getTranslationUnit());
+        assertEquals("coordinateUnit",  Units.ARC_SECOND, 
grid.getCoordinateUnit());
+        assertEquals("translationUnit", Units.ARC_SECOND, 
grid.getTranslationUnit());
         assertEquals("translationDimensions", 2, 
grid.getTranslationDimensions());
         assertTrue  ("isCellValueRatio", grid.isCellValueRatio());
         assertEquals("cellPrecision", (ACCURACY / 10) / cellSize, 
grid.getCellPrecision(), 0.5E-6 / cellSize);

Modified: 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/PoleRotationMock.java
URL: 
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/PoleRotationMock.java?rev=1764673&r1=1764672&r2=1764673&view=diff
==============================================================================
--- 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/PoleRotationMock.java
 [UTF-8] (original)
+++ 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/PoleRotationMock.java
 [UTF-8] Thu Oct 13 13:38:49 2016
@@ -16,10 +16,10 @@
  */
 package org.apache.sis.internal.referencing.provider;
 
-import javax.measure.unit.NonSI;
 import org.opengis.parameter.ParameterDescriptor;
 import org.opengis.parameter.ParameterDescriptorGroup;
 import org.apache.sis.parameter.ParameterBuilder;
+import org.apache.sis.measure.Units;
 
 
 /**
@@ -32,7 +32,7 @@ import org.apache.sis.parameter.Paramete
  *
  * @author  Martin Desruisseaux (Geomatys)
  * @since   0.6
- * @version 0.6
+ * @version 0.8
  * @module
  */
 @SuppressWarnings("serial")
@@ -46,7 +46,7 @@ public final strictfp class PoleRotation
         final ParameterDescriptor<?>[] parameters = {
             createLatitude (builder.addName("Latitude of rotated pole"), true),
             createLongitude(builder.addName("Longitude of rotated pole")),
-                            builder.addName("Axis 
rotation").create(Double.NaN, NonSI.DEGREE_ANGLE)
+                            builder.addName("Axis 
rotation").create(Double.NaN, Units.DEGREE)
         };
         PARAMETERS = builder.addName("Pole rotation").createGroup(parameters);
     }

Modified: 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/SeismicBinGridMock.java
URL: 
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/SeismicBinGridMock.java?rev=1764673&r1=1764672&r2=1764673&view=diff
==============================================================================
--- 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/SeismicBinGridMock.java
 [UTF-8] (original)
+++ 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/SeismicBinGridMock.java
 [UTF-8] Thu Oct 13 13:38:49 2016
@@ -16,12 +16,10 @@
  */
 package org.apache.sis.internal.referencing.provider;
 
-import javax.measure.unit.SI;
-import javax.measure.unit.NonSI;
-import javax.measure.unit.Unit;
 import org.opengis.parameter.ParameterDescriptor;
 import org.opengis.parameter.ParameterDescriptorGroup;
 import org.apache.sis.parameter.ParameterBuilder;
+import org.apache.sis.measure.Units;
 
 
 /**
@@ -34,7 +32,7 @@ import org.apache.sis.parameter.Paramete
  *
  * @author  Martin Desruisseaux (Geomatys)
  * @since   0.6
- * @version 0.6
+ * @version 0.8
  * @module
  */
 @SuppressWarnings("serial")
@@ -46,16 +44,16 @@ public final strictfp class SeismicBinGr
     static {
         final ParameterBuilder builder = builder();
         final ParameterDescriptor<?>[] parameters = {
-            builder.addIdentifier("8733").addName("Bin grid origin 
I").create(Double.NaN, Unit.ONE),
-            builder.addIdentifier("8734").addName("Bin grid origin 
J").create(Double.NaN, Unit.ONE),
-            builder.addIdentifier("8735").addName("Bin grid origin 
Easting").create(Double.NaN, SI.METRE),
-            builder.addIdentifier("8736").addName("Bin grid origin 
Northing").create(Double.NaN, SI.METRE),
-            builder.addIdentifier("8737").addName("Scale factor of bin 
grid").create(Double.NaN, Unit.ONE),
-            builder.addIdentifier("8738").addName("Bin width on 
I-axis").create(Double.NaN, SI.METRE),
-            builder.addIdentifier("8739").addName("Bin width on 
J-axis").create(Double.NaN, SI.METRE),
-            builder.addIdentifier("8740").addName("Map grid bearing of bin 
grid J-axis").create(Double.NaN, NonSI.DEGREE_ANGLE),
-            builder.addIdentifier("8741").addName("Bin node increment on 
I-axis").create(Double.NaN, Unit.ONE),
-            builder.addIdentifier("8742").addName("Bin node increment on 
J-axis").create(Double.NaN, Unit.ONE)
+            builder.addIdentifier("8733").addName("Bin grid origin I")         
         .create(Double.NaN, Units.ONE),
+            builder.addIdentifier("8734").addName("Bin grid origin J")         
         .create(Double.NaN, Units.ONE),
+            builder.addIdentifier("8735").addName("Bin grid origin Easting")   
         .create(Double.NaN, Units.METRE),
+            builder.addIdentifier("8736").addName("Bin grid origin Northing")  
         .create(Double.NaN, Units.METRE),
+            builder.addIdentifier("8737").addName("Scale factor of bin grid")  
         .create(Double.NaN, Units.ONE),
+            builder.addIdentifier("8738").addName("Bin width on I-axis")       
         .create(Double.NaN, Units.METRE),
+            builder.addIdentifier("8739").addName("Bin width on J-axis")       
         .create(Double.NaN, Units.METRE),
+            builder.addIdentifier("8740").addName("Map grid bearing of bin 
grid J-axis").create(Double.NaN, Units.DEGREE),
+            builder.addIdentifier("8741").addName("Bin node increment on 
I-axis")       .create(Double.NaN, Units.ONE),
+            builder.addIdentifier("8742").addName("Bin node increment on 
J-axis")       .create(Double.NaN, Units.ONE)
         };
         PARAMETERS = builder
                 .addIdentifier("1049")

Modified: 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/TopocentricConversionMock.java
URL: 
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/TopocentricConversionMock.java?rev=1764673&r1=1764672&r2=1764673&view=diff
==============================================================================
--- 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/TopocentricConversionMock.java
 [UTF-8] (original)
+++ 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/internal/referencing/provider/TopocentricConversionMock.java
 [UTF-8] Thu Oct 13 13:38:49 2016
@@ -16,10 +16,10 @@
  */
 package org.apache.sis.internal.referencing.provider;
 
-import javax.measure.unit.SI;
 import org.opengis.parameter.ParameterDescriptor;
 import org.opengis.parameter.ParameterDescriptorGroup;
 import org.apache.sis.parameter.ParameterBuilder;
+import org.apache.sis.measure.Units;
 
 
 /**
@@ -32,7 +32,7 @@ import org.apache.sis.parameter.Paramete
  *
  * @author  Martin Desruisseaux (Geomatys)
  * @since   0.6
- * @version 0.6
+ * @version 0.8
  * @module
  */
 @SuppressWarnings("serial")
@@ -46,7 +46,7 @@ public final strictfp class TopocentricC
         final ParameterDescriptor<?>[] parameters = {
             createLatitude (builder.addIdentifier("8834").addName("Latitude of 
topocentric origin"), true),
             createLongitude(builder.addIdentifier("8835").addName("Longitude 
of topocentric origin")),
-            builder.addIdentifier("8836").addName("Ellipsoidal height of 
topocentric origin").create(0, SI.METRE)
+            builder.addIdentifier("8836").addName("Ellipsoidal height of 
topocentric origin").create(0, Units.METRE)
         };
         PARAMETERS = builder
                 .addIdentifier("9837")

Modified: 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/io/wkt/GeodeticObjectParserTest.java
URL: 
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/io/wkt/GeodeticObjectParserTest.java?rev=1764673&r1=1764672&r2=1764673&view=diff
==============================================================================
--- 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/io/wkt/GeodeticObjectParserTest.java
 [UTF-8] (original)
+++ 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/io/wkt/GeodeticObjectParserTest.java
 [UTF-8] Thu Oct 13 13:38:49 2016
@@ -23,9 +23,7 @@ import java.util.Iterator;
 import java.util.Locale;
 import java.text.ParsePosition;
 import java.text.ParseException;
-import javax.measure.unit.SI;
-import javax.measure.unit.NonSI;
-import javax.measure.unit.Unit;
+import javax.measure.Unit;
 import javax.measure.quantity.Length;
 import org.opengis.referencing.IdentifiedObject;
 import org.opengis.referencing.cs.*;
@@ -43,6 +41,7 @@ import org.apache.sis.referencing.datum.
 import org.apache.sis.referencing.factory.GeodeticObjectFactory;
 import org.apache.sis.referencing.operation.transform.MathTransforms;
 import org.apache.sis.referencing.operation.transform.LinearTransform;
+import org.apache.sis.measure.Units;
 import org.apache.sis.test.DependsOnMethod;
 import org.apache.sis.test.DependsOn;
 import org.apache.sis.test.TestCase;
@@ -58,7 +57,7 @@ import static org.apache.sis.internal.ut
  *
  * @author  Martin Desruisseaux (IRD, Geomatys)
  * @since   0.6
- * @version 0.7
+ * @version 0.8
  * @module
  */
 @DependsOn({
@@ -150,7 +149,7 @@ public final strictfp class GeodeticObje
      * because {@link GeodeticObjectParser} should have done the replacement.
      */
     private static void assertLongitudeAxisEquals(final CoordinateSystemAxis 
axis) {
-        assertAxisEquals(AxisNames.GEODETIC_LONGITUDE, "λ", 
AxisDirection.EAST, -180, +180, NonSI.DEGREE_ANGLE, RangeMeaning.WRAPAROUND, 
axis);
+        assertAxisEquals(AxisNames.GEODETIC_LONGITUDE, "λ", 
AxisDirection.EAST, -180, +180, Units.DEGREE, RangeMeaning.WRAPAROUND, axis);
     }
 
     /**
@@ -159,7 +158,7 @@ public final strictfp class GeodeticObje
      * because {@link GeodeticObjectParser} should have done the replacement.
      */
     private static void assertLatitudeAxisEquals(final CoordinateSystemAxis 
axis) {
-        assertAxisEquals(AxisNames.GEODETIC_LATITUDE, "φ", 
AxisDirection.NORTH, -90, +90, NonSI.DEGREE_ANGLE, RangeMeaning.EXACT, axis);
+        assertAxisEquals(AxisNames.GEODETIC_LATITUDE, "φ", 
AxisDirection.NORTH, -90, +90, Units.DEGREE, RangeMeaning.EXACT, axis);
     }
 
     /**
@@ -182,37 +181,37 @@ public final strictfp class GeodeticObje
         assertEquals("name", "Y", axis.getName().getCode());
         assertEquals("abbreviation", "Y", axis.getAbbreviation());
         assertEquals("direction", AxisDirection.GEOCENTRIC_Y, 
axis.getDirection());
-        assertEquals("unit", SI.METRE, axis.getUnit());
+        assertEquals("unit", Units.METRE, axis.getUnit());
 
         axis = parse(CoordinateSystemAxis.class, 
"AXIS[“latitude”,north,ORDER[1],ANGLEUNIT[“degree”,0.0174532925199433]]");
         assertEquals("name", "Latitude", axis.getName().getCode());
         assertEquals("abbreviation", "φ", axis.getAbbreviation());
         assertEquals("direction", AxisDirection.NORTH, axis.getDirection());
-        assertEquals("unit", NonSI.DEGREE_ANGLE, axis.getUnit());
+        assertEquals("unit", Units.DEGREE, axis.getUnit());
 
         axis = parse(CoordinateSystemAxis.class, 
"AXIS[“longitude”,EAST,order[2],UNIT[“degree”,0.0174532925199433]]");
         assertEquals("name", "Longitude", axis.getName().getCode());
         assertEquals("abbreviation", "λ", axis.getAbbreviation());
         assertEquals("direction", AxisDirection.EAST, axis.getDirection());
-        assertEquals("unit", NonSI.DEGREE_ANGLE, axis.getUnit());
+        assertEquals("unit", Units.DEGREE, axis.getUnit());
 
         axis = parse(CoordinateSystemAxis.class, "AXIS[“ellipsoidal height 
(h)”,up,ORDER[3],LengthUnit[“kilometre”,1000]]");
         assertEquals("name", "Ellipsoidal height", axis.getName().getCode());
         assertEquals("abbreviation", "h", axis.getAbbreviation());
         assertEquals("direction", AxisDirection.UP, axis.getDirection());
-        assertEquals("unit", SI.KILOMETRE, axis.getUnit());
+        assertEquals("unit", Units.KILOMETRE, axis.getUnit());
 
         axis = parse(CoordinateSystemAxis.class, "AXIS[“time 
(t)”,future,TimeUnit[“hour”,3600]]");
         assertEquals("name", "Time", axis.getName().getCode());
         assertEquals("abbreviation", "t", axis.getAbbreviation());
         assertEquals("direction", AxisDirection.FUTURE, axis.getDirection());
-        assertEquals("unit", NonSI.HOUR, axis.getUnit());
+        assertEquals("unit", Units.HOUR, axis.getUnit());
 
         axis = parse(CoordinateSystemAxis.class, "AXIS[“easting 
(X)”,south,MERIDIAN[90,UNIT[“degree”,0.0174532925199433]]]");
         assertEquals("name", "Easting", axis.getName().getCode());
         assertEquals("abbreviation", "X", axis.getAbbreviation());
         assertEquals("direction", 
CoordinateSystems.directionAlongMeridian(AxisDirection.SOUTH, 90), 
axis.getDirection());
-        assertEquals("unit", SI.METRE, axis.getUnit());
+        assertEquals("unit", Units.METRE, axis.getUnit());
     }
 
     /**
@@ -232,7 +231,7 @@ public final strictfp class GeodeticObje
 
         final Ellipsoid ellipsoid = datum.getEllipsoid();
         assertNameAndIdentifierEqual("International 1924", 0, ellipsoid);
-        assertEquals("unit", SI.KILOMETRE, ellipsoid.getAxisUnit());
+        assertEquals("unit", Units.KILOMETRE, ellipsoid.getAxisUnit());
         assertEquals("semiMajor", 6378.388, ellipsoid.getSemiMajorAxis(), 
STRICT);
         assertEquals("inverseFlattening", 297, 
ellipsoid.getInverseFlattening(), STRICT);
         assertEquals("greenwichLongitude", 0, 
datum.getPrimeMeridian().getGreenwichLongitude(), STRICT);
@@ -273,9 +272,9 @@ public final strictfp class GeodeticObje
         // Verify that the OGC 01-009 axes have been relaced by ISO 19111 axes.
         final CartesianCS cs = (CartesianCS) crs.getCoordinateSystem();
         assertEquals("dimension", 3, cs.getDimension());
-        assertUnboundedAxisEquals(AxisNames.GEOCENTRIC_X, "X", 
AxisDirection.GEOCENTRIC_X, SI.METRE, cs.getAxis(0));
-        assertUnboundedAxisEquals(AxisNames.GEOCENTRIC_Y, "Y", 
AxisDirection.GEOCENTRIC_Y, SI.METRE, cs.getAxis(1));
-        assertUnboundedAxisEquals(AxisNames.GEOCENTRIC_Z, "Z", 
AxisDirection.GEOCENTRIC_Z, SI.METRE, cs.getAxis(2));
+        assertUnboundedAxisEquals(AxisNames.GEOCENTRIC_X, "X", 
AxisDirection.GEOCENTRIC_X, Units.METRE, cs.getAxis(0));
+        assertUnboundedAxisEquals(AxisNames.GEOCENTRIC_Y, "Y", 
AxisDirection.GEOCENTRIC_Y, Units.METRE, cs.getAxis(1));
+        assertUnboundedAxisEquals(AxisNames.GEOCENTRIC_Z, "Z", 
AxisDirection.GEOCENTRIC_Z, Units.METRE, cs.getAxis(2));
     }
 
     /**
@@ -412,24 +411,24 @@ public final strictfp class GeodeticObje
                      "  DATUM[“Nouvelle Triangulation Française (Paris)”,\n" +
                      "    SPHEROID[“Clarke 1880 (IGN)”, 6378249.2, 
293.4660212936269]],\n" +
                      "    PRIMEM[“Paris”, 2.5969213, AUTHORITY[“EPSG”, 
“8903”]],\n" +
-                     "  UNIT[“grade”, 0.015707963267948967],\n" +
+                     "  UNIT[“grad”, 0.015707963267948967],\n" +
                      "  AXIS[“Latitude”, NORTH],\n" +
                      "  AXIS[“Longitude”, EAST]]";
 
         GeographicCRS crs = parse(GeographicCRS.class, wkt);
         assertNameAndIdentifierEqual("NTF (Paris)", 0, crs);
         PrimeMeridian pm = verifyNTF(crs.getDatum(), false);
-        assertEquals("angularUnit", NonSI.GRADE, pm.getAngularUnit());
+        assertEquals("angularUnit", Units.GRAD, pm.getAngularUnit());
         assertEquals("greenwichLongitude", 2.5969213, 
pm.getGreenwichLongitude(), STRICT);
         EllipsoidalCS cs = crs.getCoordinateSystem();
         assertEquals("dimension", 2, cs.getDimension());
-        assertAxisEquals(AxisNames.GEODETIC_LATITUDE,  "φ", 
AxisDirection.NORTH, -100, +100, NonSI.GRADE, RangeMeaning.EXACT,      
cs.getAxis(0));
-        assertAxisEquals(AxisNames.GEODETIC_LONGITUDE, "λ", 
AxisDirection.EAST,  -200, +200, NonSI.GRADE, RangeMeaning.WRAPAROUND, 
cs.getAxis(1));
+        assertAxisEquals(AxisNames.GEODETIC_LATITUDE,  "φ", 
AxisDirection.NORTH, -100, +100, Units.GRAD, RangeMeaning.EXACT,      
cs.getAxis(0));
+        assertAxisEquals(AxisNames.GEODETIC_LONGITUDE, "λ", 
AxisDirection.EAST,  -200, +200, Units.GRAD, RangeMeaning.WRAPAROUND, 
cs.getAxis(1));
         /*
          * Parse again using Convention.WKT1_COMMON_UNITS and ignoring AXIS[…] 
elements (but not the UNIT[…] element,
          * which still apply to the axes). When using this convention, the 
parser does not apply the angular units to
          * the Greenwich longitude value in PRIMEM[…] elements. Instead, the 
longitude is unconditionally interpreted
-         * as a value in degrees, which is why we convert "2.5969213" grade to 
"2.33722917" degrees in the WKT before
+         * as a value in degrees,  which is why we convert "2.5969213" grad to 
"2.33722917" degrees in the WKT before
          * to run the test (but we do NOT change the UNIT[…] element since the 
purpose of this test is to verify that
          * those units are ignored).
          *
@@ -441,12 +440,12 @@ public final strictfp class GeodeticObje
         crs = parse(GeographicCRS.class, wkt);
         assertNameAndIdentifierEqual("NTF (Paris)", 0, crs);
         pm = verifyNTF(crs.getDatum(), false);
-        assertEquals("angularUnit", NonSI.DEGREE_ANGLE, pm.getAngularUnit());
+        assertEquals("angularUnit", Units.DEGREE, pm.getAngularUnit());
         assertEquals("greenwichLongitude", 2.33722917, 
pm.getGreenwichLongitude(), STRICT);
         cs = crs.getCoordinateSystem();
         assertEquals("dimension", 2, cs.getDimension());
-        assertAxisEquals(AxisNames.GEODETIC_LONGITUDE, "λ", 
AxisDirection.EAST,  -200, +200, NonSI.GRADE, RangeMeaning.WRAPAROUND, 
cs.getAxis(0));
-        assertAxisEquals(AxisNames.GEODETIC_LATITUDE,  "φ", 
AxisDirection.NORTH, -100, +100, NonSI.GRADE, RangeMeaning.EXACT,      
cs.getAxis(1));
+        assertAxisEquals(AxisNames.GEODETIC_LONGITUDE, "λ", 
AxisDirection.EAST,  -200, +200, Units.GRAD, RangeMeaning.WRAPAROUND, 
cs.getAxis(0));
+        assertAxisEquals(AxisNames.GEODETIC_LATITUDE,  "φ", 
AxisDirection.NORTH, -100, +100, Units.GRAD, RangeMeaning.EXACT,      
cs.getAxis(1));
     }
 
     /**
@@ -457,7 +456,7 @@ public final strictfp class GeodeticObje
      *     the same angular units as those for the horizontal axes of the 
geographic CRS."
      *
      * Consequently we expect the prime meridian to be in decimal degrees even 
if the WKT used in this test has
-     * an {@code Unit[“grade”, 0.015707963267948967]} element, because this WK 
also declare the axis as being in
+     * an {@code Unit[“grad”, 0.015707963267948967]} element, because this WK 
also declare the axis as being in
      * degrees. Since this can be confusing, we expect the parser to emit a 
warning.
      *
      * @throws ParseException if the parsing failed.
@@ -472,7 +471,7 @@ public final strictfp class GeodeticObje
                      "  CS[ellipsoidal, 2],\n" +
                      "    Axis[“Latitude (φ)”, NORTH, Unit[“degree”, 
0.017453292519943295]],\n" +
                      "    Axis[“Longitude (λ)”, EAST, Unit[“degree”, 
0.017453292519943295]],\n" +
-                     "    Unit[“grade”, 0.015707963267948967]\n," +            
 // Inconsistent with axis units.
+                     "    Unit[“grad”, 0.015707963267948967]\n," +             
// Inconsistent with axis units.
                      "  Id[“EPSG”, 4807]]";
 
         GeographicCRS crs = parseIgnoreWarnings(GeographicCRS.class, wkt);
@@ -483,12 +482,12 @@ public final strictfp class GeodeticObje
 
         assertNameAndIdentifierEqual("NTF (Paris)", 4807, crs);
         PrimeMeridian pm = crs.getDatum().getPrimeMeridian();
-        assertEquals("angularUnit", NonSI.DEGREE_ANGLE, pm.getAngularUnit());
+        assertEquals("angularUnit", Units.DEGREE, pm.getAngularUnit());
         assertEquals("greenwichLongitude", 2.33722917, 
pm.getGreenwichLongitude(), STRICT);
         EllipsoidalCS cs = crs.getCoordinateSystem();
         assertEquals("dimension", 2, cs.getDimension());
-        assertAxisEquals(AxisNames.GEODETIC_LATITUDE,  "φ", 
AxisDirection.NORTH,  -90,  +90, NonSI.DEGREE_ANGLE, RangeMeaning.EXACT,      
cs.getAxis(0));
-        assertAxisEquals(AxisNames.GEODETIC_LONGITUDE, "λ", 
AxisDirection.EAST,  -180, +180, NonSI.DEGREE_ANGLE, RangeMeaning.WRAPAROUND, 
cs.getAxis(1));
+        assertAxisEquals(AxisNames.GEODETIC_LATITUDE,  "φ", 
AxisDirection.NORTH,  -90,  +90, Units.DEGREE, RangeMeaning.EXACT,      
cs.getAxis(0));
+        assertAxisEquals(AxisNames.GEODETIC_LONGITUDE, "λ", 
AxisDirection.EAST,  -180, +180, Units.DEGREE, RangeMeaning.WRAPAROUND, 
cs.getAxis(1));
     }
 
     /**
@@ -552,7 +551,7 @@ public final strictfp class GeodeticObje
                 "  AXIS[“Northing”, NORTH]]");
 
         assertNameAndIdentifierEqual("Mercator test", 0, crs);
-        verifyProjectedCS(crs.getCoordinateSystem(), SI.METRE);
+        verifyProjectedCS(crs.getCoordinateSystem(), Units.METRE);
         verifyGeographicCRS(0, crs.getBaseCRS());
 
         final GeodeticDatum datum = crs.getDatum();
@@ -566,12 +565,12 @@ public final strictfp class GeodeticObje
 
         assertEquals("Mercator (variant A)", 
crs.getConversionFromBase().getMethod().getName().getCode());
         final ParameterValueGroup param = 
crs.getConversionFromBase().getParameterValues();
-        assertEquals("semi_major",   6378137.0, param.parameter("semi_major"   
   ).doubleValue(SI   .METRE),        STRICT);
-        assertEquals("semi_minor",   6356752.3, param.parameter("semi_minor"   
   ).doubleValue(SI   .METRE),        0.1);
-        assertEquals("central_meridian", -20.0, 
param.parameter("central_meridian").doubleValue(NonSI.DEGREE_ANGLE), STRICT);
-        assertEquals("scale_factor",       1.0, param.parameter("scale_factor" 
   ).doubleValue(Unit .ONE),          STRICT);
-        assertEquals("false_easting", 500000.0, 
param.parameter("false_easting"   ).doubleValue(SI   .METRE),        STRICT);
-        assertEquals("false_northing",     0.0, 
param.parameter("false_northing"  ).doubleValue(SI   .METRE),        STRICT);
+        assertEquals("semi_major",   6378137.0, param.parameter("semi_major"   
   ).doubleValue(Units.METRE),  STRICT);
+        assertEquals("semi_minor",   6356752.3, param.parameter("semi_minor"   
   ).doubleValue(Units.METRE),  0.1);
+        assertEquals("central_meridian", -20.0, 
param.parameter("central_meridian").doubleValue(Units.DEGREE), STRICT);
+        assertEquals("scale_factor",       1.0, param.parameter("scale_factor" 
   ).doubleValue(Units.ONE),    STRICT);
+        assertEquals("false_easting", 500000.0, 
param.parameter("false_easting"   ).doubleValue(Units.METRE),  STRICT);
+        assertEquals("false_northing",     0.0, 
param.parameter("false_northing"  ).doubleValue(Units.METRE),  STRICT);
     }
 
     /**
@@ -606,7 +605,7 @@ public final strictfp class GeodeticObje
         assertNameAndIdentifierEqual("OSGB 1936 / British National Grid", 
27700, crs);
         assertNameAndIdentifierEqual("OSGB 1936", 4277, crs.getBaseCRS());
         assertNameAndIdentifierEqual("OSGB_1936", 6277, crs.getDatum());
-        verifyProjectedCS(crs.getCoordinateSystem(), SI.METRE);
+        verifyProjectedCS(crs.getCoordinateSystem(), Units.METRE);
 
         final ParameterValueGroup param = 
crs.getConversionFromBase().getParameterValues();
         assertEquals("Transverse Mercator", 
crs.getConversionFromBase().getMethod().getName().getCode());
@@ -655,7 +654,7 @@ public final strictfp class GeodeticObje
         assertNameAndIdentifierEqual("TransverseMercator", 0, crs);
         assertNameAndIdentifierEqual("Sphere", 0, crs.getBaseCRS());
         assertNameAndIdentifierEqual("Sphere", 0, crs.getDatum());
-        verifyProjectedCS(crs.getCoordinateSystem(), NonSI.FOOT_SURVEY_US);
+        verifyProjectedCS(crs.getCoordinateSystem(), Units.FOOT_SURVEY_US);
 
         final ParameterValueGroup param = 
crs.getConversionFromBase().getParameterValues();
         assertEquals("Transverse Mercator", 
crs.getConversionFromBase().getMethod().getName().getCode());
@@ -669,7 +668,7 @@ public final strictfp class GeodeticObje
     }
 
     /**
-     * Tests the parsing of a projected CRS using angular values in grades 
instead than degrees
+     * Tests the parsing of a projected CRS using angular values in grads 
instead than degrees
      * and in lengths in kilometres instead than metres.
      *
      * @throws ParseException if the parsing failed.
@@ -682,10 +681,10 @@ public final strictfp class GeodeticObje
                      "    DATUM[“Nouvelle Triangulation Française (Paris)”," +
                      "      SPHEROID[“Clarke 1880 (IGN)”, 6378249.2, 
293.4660212936269]," +
                      "      TOWGS84[-168,-60,320,0,0,0,0]]," +
-                     "    PRIMEM[“Paris”, 2.5969213, AUTHORITY[“EPSG”, 
“8903”]]," +  // In grades.
+                     "    PRIMEM[“Paris”, 2.5969213, AUTHORITY[“EPSG”, 
“8903”]]," +     // In grads.
                      "    UNIT[“grad”, 0.01570796326794897]]," +
                      "  PROJECTION[“Lambert Conformal Conic (1SP)”]," +  // 
Intentional swapping of "Conformal" and "Conic".
-                     "  PARAMETER[“latitude_of_origin”, 52.0]," +        // In 
grades.
+                     "  PARAMETER[“latitude_of_origin”, 52.0]," +        // In 
grads.
                      "  PARAMETER[“scale_factor”, 0.99987742]," +
                      "  PARAMETER[“false_easting”, 600.0]," +
                      "  PARAMETER[“false_northing”, 2200.0]," +
@@ -705,12 +704,12 @@ public final strictfp class GeodeticObje
         newParser(Convention.WKT1_IGNORE_AXES);
         final ProjectedCRS crs = parse(ProjectedCRS.class, wkt);
         assertNameAndIdentifierEqual("NTF (Paris) / Lambert zone II", 0, crs);
-        verifyProjectedCS(crs.getCoordinateSystem(), SI.KILOMETRE);
+        verifyProjectedCS(crs.getCoordinateSystem(), Units.KILOMETRE);
         final PrimeMeridian pm = verifyNTF(crs.getDatum(), true);
-        assertEquals("angularUnit", NonSI.DEGREE_ANGLE, pm.getAngularUnit());
+        assertEquals("angularUnit", Units.DEGREE, pm.getAngularUnit());
         assertEquals("greenwichLongitude", 2.33722917, 
pm.getGreenwichLongitude(), STRICT);
         final ParameterValue<?> param = 
verifyNTF(crs.getConversionFromBase().getParameterValues());
-        assertEquals("angularUnit", NonSI.DEGREE_ANGLE, param.getUnit());
+        assertEquals("angularUnit", Units.DEGREE, param.getUnit());
         assertEquals("latitude_of_origin",  46.8, param.doubleValue(), STRICT);
     }
 
@@ -730,11 +729,11 @@ public final strictfp class GeodeticObje
                      "  BaseGeodCRS[“NTF (Paris)”,\n" +
                      "    Datum[“Nouvelle Triangulation Française (Paris)”,\n" 
+
                      "      Ellipsoid[“Clarke 1880 (IGN)”, 6378249.2, 
293.4660212936269]],\n" +
-                     "      PrimeMeridian[“Paris”, 2.5969213, Unit[“grade”, 
0.015707963267948967], Id[“EPSG”, 8903]],\n" +
+                     "      PrimeMeridian[“Paris”, 2.5969213, Unit[“grad”, 
0.015707963267948967], Id[“EPSG”, 8903]],\n" +
                      "    AngleUnit[“degree”, 0.017453292519943295]],\n" +
                      "  Conversion[“Lambert zone II”,\n" +
                      "    Method[“Lambert Conic Conformal (1SP)”],\n" +
-                     "    Parameter[“Latitude of natural origin”, 52.0, 
AngleUnit[“grade”, 0.015707963267948967]],\n" +
+                     "    Parameter[“Latitude of natural origin”, 52.0, 
AngleUnit[“grad”, 0.015707963267948967]],\n" +
                      "    Parameter[“Longitude of natural origin”, 0.0],\n" +
                      "    Parameter[“Scale factor at natural origin”, 
0.99987742],\n" +
                      "    Parameter[“False easting”, 600.0],\n" +
@@ -756,12 +755,12 @@ public final strictfp class GeodeticObje
      */
     private static void validateParisFranceII(final ProjectedCRS crs, final 
int identifier, final boolean hasToWGS84) {
         assertNameAndIdentifierEqual("NTF (Paris) / Lambert zone II", 
identifier, crs);
-        verifyProjectedCS(crs.getCoordinateSystem(), SI.KILOMETRE);
+        verifyProjectedCS(crs.getCoordinateSystem(), Units.KILOMETRE);
         final PrimeMeridian pm = verifyNTF(crs.getDatum(), hasToWGS84);
-        assertEquals("angularUnit", NonSI.GRADE, pm.getAngularUnit());
+        assertEquals("angularUnit", Units.GRAD, pm.getAngularUnit());
         assertEquals("greenwichLongitude", 2.5969213, 
pm.getGreenwichLongitude(), STRICT);
         final ParameterValue<?> param = 
verifyNTF(crs.getConversionFromBase().getParameterValues());
-        assertEquals("angularUnit", NonSI.GRADE, param.getUnit());
+        assertEquals("angularUnit", Units.GRAD, param.getUnit());
         assertEquals("latitude_of_origin",  52.0, param.doubleValue(), STRICT);
     }
 
@@ -801,12 +800,12 @@ public final strictfp class GeodeticObje
      */
     private static ParameterValue<?> verifyNTF(final ParameterValueGroup 
param) {
         assertEquals("Lambert Conic Conformal (1SP)", 
param.getDescriptor().getName().getCode());
-        assertEquals("semi_major",     6378249.2, param.parameter("semi_major" 
     ).doubleValue(SI   .METRE),        STRICT);
-        assertEquals("semi_minor",     6356515.0, param.parameter("semi_minor" 
     ).doubleValue(SI   .METRE),        1E-12);
-        assertEquals("central_meridian",     0.0, 
param.parameter("central_meridian").doubleValue(NonSI.DEGREE_ANGLE), STRICT);
-        assertEquals("scale_factor",  0.99987742, 
param.parameter("scale_factor"    ).doubleValue(Unit .ONE),          STRICT);
-        assertEquals("false_easting",   600000.0, 
param.parameter("false_easting"   ).doubleValue(SI   .METRE),        STRICT);
-        assertEquals("false_northing", 2200000.0, 
param.parameter("false_northing"  ).doubleValue(SI   .METRE),        STRICT);
+        assertEquals("semi_major",     6378249.2, param.parameter("semi_major" 
     ).doubleValue(Units.METRE),  STRICT);
+        assertEquals("semi_minor",     6356515.0, param.parameter("semi_minor" 
     ).doubleValue(Units.METRE),  1E-12);
+        assertEquals("central_meridian",     0.0, 
param.parameter("central_meridian").doubleValue(Units.DEGREE), STRICT);
+        assertEquals("scale_factor",  0.99987742, 
param.parameter("scale_factor"    ).doubleValue(Units.ONE),    STRICT);
+        assertEquals("false_easting",   600000.0, 
param.parameter("false_easting"   ).doubleValue(Units.METRE),  STRICT);
+        assertEquals("false_northing", 2200000.0, 
param.parameter("false_northing"  ).doubleValue(Units.METRE),  STRICT);
         return param.parameter("latitude_of_origin");
     }
 
@@ -843,7 +842,7 @@ public final strictfp class GeodeticObje
                 "AXIS[“Easting”,East],AXIS[“Northing”,North]]");
 
         assertNameAndIdentifierEqual("FRANCE/NTF/Lambert III", 0, crs);
-        verifyProjectedCS(crs.getCoordinateSystem(), SI.METRE);
+        verifyProjectedCS(crs.getCoordinateSystem(), Units.METRE);
         final GeographicCRS geoCRS = crs.getBaseCRS();
         assertNameAndIdentifierEqual("NTF=GR3DF97A", 0, geoCRS);    // 
Inherited the datum name.
 
@@ -865,13 +864,13 @@ public final strictfp class GeodeticObje
 
         final ParameterValueGroup param = 
crs.getConversionFromBase().getParameterValues();
         assertEquals("Lambert Conic Conformal (1SP)", 
param.getDescriptor().getName().getCode());
-        assertEquals("semi_major",        6378249.2, 
param.parameter("semi_major"        ).doubleValue(SI   .METRE),        STRICT);
-        assertEquals("semi_minor",        6356515.0, 
param.parameter("semi_minor"        ).doubleValue(SI   .METRE),        1E-12);
-        assertEquals("latitude_of_origin",     44.1, 
param.parameter("latitude_of_origin").doubleValue(NonSI.DEGREE_ANGLE), STRICT);
-        assertEquals("central_meridian", 2.33722917, 
param.parameter("central_meridian"  ).doubleValue(NonSI.DEGREE_ANGLE), STRICT);
-        assertEquals("scale_factor",    0.999877499, 
param.parameter("scale_factor"      ).doubleValue(Unit .ONE),          STRICT);
-        assertEquals("false_easting",      600000.0, 
param.parameter("false_easting"     ).doubleValue(SI   .METRE),        STRICT);
-        assertEquals("false_northing",     200000.0, 
param.parameter("false_northing"    ).doubleValue(SI   .METRE),        STRICT);
+        assertEquals("semi_major",        6378249.2, 
param.parameter("semi_major"        ).doubleValue(Units.METRE),  STRICT);
+        assertEquals("semi_minor",        6356515.0, 
param.parameter("semi_minor"        ).doubleValue(Units.METRE),  1E-12);
+        assertEquals("latitude_of_origin",     44.1, 
param.parameter("latitude_of_origin").doubleValue(Units.DEGREE), STRICT);
+        assertEquals("central_meridian", 2.33722917, 
param.parameter("central_meridian"  ).doubleValue(Units.DEGREE), STRICT);
+        assertEquals("scale_factor",    0.999877499, 
param.parameter("scale_factor"      ).doubleValue(Units.ONE),    STRICT);
+        assertEquals("false_easting",      600000.0, 
param.parameter("false_easting"     ).doubleValue(Units.METRE),  STRICT);
+        assertEquals("false_northing",     200000.0, 
param.parameter("false_northing"    ).doubleValue(Units.METRE),  STRICT);
     }
 
     /**
@@ -991,9 +990,9 @@ public final strictfp class GeodeticObje
         assertEquals("dimension", 3, cs.getDimension());
 
         // Axis names are arbitrary and could change in future SIS versions.
-        assertUnboundedAxisEquals("Easting",  "x", AxisDirection.EAST,  
SI.METRE, cs.getAxis(0));
-        assertUnboundedAxisEquals("Northing", "y", AxisDirection.NORTH, 
SI.METRE, cs.getAxis(1));
-        assertUnboundedAxisEquals("z",        "z", AxisDirection.UP,    
SI.METRE, cs.getAxis(2));
+        assertUnboundedAxisEquals("Easting",  "x", AxisDirection.EAST,  
Units.METRE, cs.getAxis(0));
+        assertUnboundedAxisEquals("Northing", "y", AxisDirection.NORTH, 
Units.METRE, cs.getAxis(1));
+        assertUnboundedAxisEquals("z",        "z", AxisDirection.UP,    
Units.METRE, cs.getAxis(2));
     }
 
     /**
@@ -1049,8 +1048,8 @@ public final strictfp class GeodeticObje
         assertEquals("dimension", 4, cs.getDimension());
         assertLongitudeAxisEquals(cs.getAxis(0));
         assertLatitudeAxisEquals (cs.getAxis(1));
-        assertUnboundedAxisEquals("Gravity-related height", "H", 
AxisDirection.UP, SI.METRE, cs.getAxis(2));
-        assertUnboundedAxisEquals("Time", "t", AxisDirection.FUTURE, 
NonSI.DAY, cs.getAxis(3));
+        assertUnboundedAxisEquals("Gravity-related height", "H", 
AxisDirection.UP, Units.METRE, cs.getAxis(2));
+        assertUnboundedAxisEquals("Time", "t", AxisDirection.FUTURE, 
Units.DAY, cs.getAxis(3));
     }
 
     /**
@@ -1084,7 +1083,7 @@ public final strictfp class GeodeticObje
         assertEquals("dimension", 3, cs.getDimension());
         assertLongitudeAxisEquals(cs.getAxis(0));
         assertLatitudeAxisEquals (cs.getAxis(1));
-        assertUnboundedAxisEquals("Ellipsoidal height", "h", AxisDirection.UP, 
SI.METRE, cs.getAxis(2));
+        assertUnboundedAxisEquals("Ellipsoidal height", "h", AxisDirection.UP, 
Units.METRE, cs.getAxis(2));
     }
 
     /**

Modified: 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/io/wkt/WKTFormatTest.java
URL: 
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/io/wkt/WKTFormatTest.java?rev=1764673&r1=1764672&r2=1764673&view=diff
==============================================================================
--- 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/io/wkt/WKTFormatTest.java
 [UTF-8] (original)
+++ 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/io/wkt/WKTFormatTest.java
 [UTF-8] Thu Oct 13 13:38:49 2016
@@ -18,8 +18,8 @@ package org.apache.sis.io.wkt;
 
 import java.util.Collections;
 import java.text.ParseException;
-import javax.measure.unit.NonSI;
 import org.opengis.referencing.crs.VerticalCRS;
+import org.apache.sis.measure.Units;
 import org.apache.sis.metadata.iso.citation.Citations;
 import org.apache.sis.referencing.crs.DefaultProjectedCRS;
 import org.apache.sis.referencing.datum.DefaultPrimeMeridian;
@@ -36,7 +36,7 @@ import static org.apache.sis.test.Assert
  *
  * @author  Martin Desruisseaux (Geomatys)
  * @since   0.5
- * @version 0.6
+ * @version 0.8
  * @module
  */
 @DependsOn(GeodeticObjectParserTest.class)
@@ -380,7 +380,7 @@ public final strictfp class WKTFormatTes
     @Test
     public void testWarnings() throws ParseException {
         DefaultPrimeMeridian pm = new 
DefaultPrimeMeridian(Collections.singletonMap(
-                DefaultPrimeMeridian.NAME_KEY, "Invalid “$name” here"), -10, 
NonSI.DEGREE_ANGLE);
+                DefaultPrimeMeridian.NAME_KEY, "Invalid “$name” here"), -10, 
Units.DEGREE);
         format = new WKTFormat(null, null);
         final String   wkt      = format.format(pm);
         final Warnings warnings = format.getWarnings();

Modified: 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/parameter/DefaultParameterDescriptorTest.java
URL: 
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/parameter/DefaultParameterDescriptorTest.java?rev=1764673&r1=1764672&r2=1764673&view=diff
==============================================================================
--- 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/parameter/DefaultParameterDescriptorTest.java
 [UTF-8] (original)
+++ 
sis/branches/JDK8/core/sis-referencing/src/test/java/org/apache/sis/parameter/DefaultParameterDescriptorTest.java
 [UTF-8] Thu Oct 13 13:38:49 2016
@@ -19,8 +19,7 @@ package org.apache.sis.parameter;
 import java.util.Map;
 import java.util.HashMap;
 import java.util.Locale;
-import javax.measure.unit.SI;
-import javax.measure.unit.Unit;
+import javax.measure.Unit;
 import org.opengis.parameter.ParameterDescriptor;
 import org.apache.sis.measure.Range;
 import org.apache.sis.measure.NumberRange;
@@ -29,6 +28,7 @@ import org.apache.sis.metadata.iso.Immut
 import org.apache.sis.metadata.iso.citation.Citations;
 import org.apache.sis.internal.util.Constants;
 import org.apache.sis.io.wkt.Convention;
+import org.apache.sis.measure.Units;
 import org.apache.sis.test.DependsOnMethod;
 import org.apache.sis.test.DependsOn;
 import org.apache.sis.test.TestCase;
@@ -43,7 +43,7 @@ import static org.apache.sis.test.Metada
  *
  * @author  Martin Desruisseaux (IRD, Geomatys)
  * @since   0.4
- * @version 0.7
+ * @version 0.8
  * @module
  */
 @DependsOn(org.apache.sis.referencing.AbstractIdentifiedObjectTest.class)
@@ -213,9 +213,9 @@ public final strictfp class DefaultParam
     @Test
     @SuppressWarnings("UnnecessaryBoxing")
     public void testDoubleType() {
-        final ParameterDescriptor<Double> descriptor = create("Length 
measure", 4, 20, 12, SI.METRE);
+        final ParameterDescriptor<Double> descriptor = create("Length 
measure", 4, 20, 12, Units.METRE);
         assertEquals("name",         "Length measure",   
descriptor.getName().getCode());
-        assertEquals("unit",         SI.METRE,           descriptor.getUnit());
+        assertEquals("unit",         Units.METRE,           
descriptor.getUnit());
         assertEquals("class",        Double.class,       
descriptor.getValueClass());
         assertEquals("defaultValue", Double.valueOf(12), 
descriptor.getDefaultValue());
         assertEquals("minimum",      Double.valueOf( 4), 
descriptor.getMinimumValue());
@@ -279,10 +279,10 @@ public final strictfp class DefaultParam
     @DependsOnMethod("testDoubleType")
     @SuppressWarnings("UnnecessaryBoxing")
     public void testArrayType() {
-        final DefaultParameterDescriptor<double[]> descriptor = 
createForArray("Array param", 4, 9, SI.METRE);
+        final DefaultParameterDescriptor<double[]> descriptor = 
createForArray("Array param", 4, 9, Units.METRE);
         assertEquals("name",       "Array param",  
descriptor.getName().getCode());
         assertEquals("valueClass", double[].class, descriptor.getValueClass());
-        assertEquals("unit",       SI.METRE,       descriptor.getUnit());
+        assertEquals("unit",       Units.METRE,       descriptor.getUnit());
         assertNull  ("validValues",                
descriptor.getValidValues());
         assertNull  ("defaultValue",               
descriptor.getDefaultValue());
         assertNull  ("minimumValue",               
descriptor.getMinimumValue());
@@ -312,7 +312,7 @@ public final strictfp class DefaultParam
      */
     @Test
     public void testWKT() {
-        final DefaultParameterDescriptor<Double> descriptor = create("Real 
number", 4, 8, 5, SI.METRE);
+        final DefaultParameterDescriptor<Double> descriptor = create("Real 
number", 4, 8, 5, Units.METRE);
         assertWktEquals("PARAMETER[“Integer param”, 5]", create("Integer 
param", 4, 8, 5));
         assertWktEquals("PARAMETER[“Real number”, 5.0, LENGTHUNIT[“metre”, 
1]]", descriptor);
         assertWktEquals(Convention.WKT2_SIMPLIFIED, "Parameter[“Real number”, 
5.0, Unit[“metre”, 1]]", descriptor);


Reply via email to