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 2015/03/31 23:07:48 UTC

svn commit: r1670479 [11/12] - in /sis/branches/JDK7: ./ application/sis-console/src/main/java/org/apache/sis/console/ application/sis-webapp/src/main/java/org/apache/sis/services/ core/sis-build-helper/src/main/java/org/apache/sis/internal/taglet/ cor...

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultTypeName.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultTypeName.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultTypeName.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultTypeName.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -32,7 +32,7 @@ import org.apache.sis.util.UnknownNameEx
  *   <li>{@link DefaultNameFactory#toTypeName(Class)}</li>
  * </ul>
  *
- * {@section Mapping Java classes to type names}
+ * <div class="section">Mapping Java classes to type names</div>
  * It is sometime useful to establish a mapping between {@link Class} and {@code TypeName}.
  * When an UML identifier from an OGC standard exists for a given {@code Class}, Apache SIS
  * uses that identifier prefixed by the {@code "OGC"} namespace.
@@ -61,7 +61,7 @@ import org.apache.sis.util.UnknownNameEx
  * {@link DefaultNameFactory#toTypeName(Class)} or {@link #toClass()} instead than parsing the name.
  *
  *
- * {@section Immutability and thread safety}
+ * <div class="section">Immutability and thread safety</div>
  * This class is immutable and thus inherently thread-safe if the {@link NameSpace} and {@link CharSequence}
  * arguments given to the constructor are also immutable. Subclasses shall make sure that any overridden methods
  * remain safe to call from multiple threads and do not change any public {@code TypeName} state.

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/GlobalNameSpace.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/GlobalNameSpace.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/GlobalNameSpace.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/GlobalNameSpace.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -22,7 +22,7 @@ package org.apache.sis.util.iso;
  * any global namespace in public API since ISO 19103 does not define them and users should not
  * need to handle them explicitely.
  *
- * {@section Immutability and thread safety}
+ * <div class="section">Immutability and thread safety</div>
  * This class is immutable and thus inherently thread-safe.
  *
  * @author  Martin Desruisseaux (IRD, Geomatys)

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/Names.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/Names.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/Names.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/Names.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -22,6 +22,7 @@ import org.opengis.util.LocalName;
 import org.opengis.util.MemberName;
 import org.opengis.util.GenericName;
 import org.opengis.util.NameSpace;
+import org.opengis.util.NameFactory;
 import org.opengis.util.InternationalString;
 import org.apache.sis.util.Static;
 import org.apache.sis.internal.system.DefaultFactories;
@@ -36,7 +37,7 @@ import static org.apache.sis.util.Argume
  * but makes some tasks easier by avoiding the need to find a factory, and by creating name and
  * their namespace in a single step.
  *
- * {@section Relationship with Java Content Repository (JCR) names}
+ * <div class="section">Relationship with Java Content Repository (JCR) names</div>
  * In the Java standard {@link javax.xml.namespace.QName} class and in the Java Content Repository (JCR) specification,
  * a name is an ordered pair of ({@code namespace}, {@code localPart}) strings. A JCR name can take two lexical forms:
  * <cite>expanded form</cite> and <cite>qualified form</cite>. Those names are mapped to generic names as below:
@@ -91,16 +92,16 @@ public final class Names extends Static
     /**
      * Creates a namespace for the given name.
      *
+     * @param  factory   The factory to use for creating the namespace.
      * @param  namespace The namespace string, taken as a whole (not parsed).
      * @param  separator The separator between the namespace and the local part, or {@code null} for the default.
      * @return The namespace object.
      */
-    private static NameSpace createNameSpace(final CharSequence namespace, final String separator) {
+    private static NameSpace createNameSpace(final NameFactory factory, final CharSequence namespace, final String separator) {
         if (namespace == null || namespace.length() == 0) {
             return null;
         }
-        return DefaultFactories.NAMES.createNameSpace(
-                DefaultFactories.NAMES.createLocalName(null, namespace),
+        return factory.createNameSpace(factory.createLocalName(null, namespace),
                 (separator == null) ? null : Collections.singletonMap("separator.head", separator));
     }
 
@@ -118,7 +119,8 @@ public final class Names extends Static
     public static GenericName parseGenericName(final CharSequence namespace, final String separator, final CharSequence scopedName) {
         ensureNonNull("localPart", scopedName);
         ensureNonNull("separator", separator);
-        return DefaultFactories.NAMES.parseGenericName(createNameSpace(namespace, separator), scopedName);
+        final NameFactory factory = DefaultFactories.forBuildin(NameFactory.class);
+        return factory.parseGenericName(createNameSpace(factory, namespace, separator), scopedName);
     }
 
     /**
@@ -164,7 +166,8 @@ public final class Names extends Static
     public static LocalName createLocalName(final CharSequence namespace, final String separator, final CharSequence localPart) {
         ensureNonNull("localPart", localPart);
         ensureNonNull("separator", separator);
-        return DefaultFactories.NAMES.createLocalName(createNameSpace(namespace, separator), localPart);
+        final NameFactory factory = DefaultFactories.forBuildin(NameFactory.class);
+        return factory.createLocalName(createNameSpace(factory, namespace, separator), localPart);
     }
 
     /**
@@ -187,7 +190,8 @@ public final class Names extends Static
     public static TypeName createTypeName(final CharSequence namespace, final String separator, final CharSequence localPart) {
         ensureNonNull("localPart", localPart);
         ensureNonNull("separator", separator);
-        return DefaultFactories.NAMES.createTypeName(createNameSpace(namespace, separator), localPart);
+        final NameFactory factory = DefaultFactories.forBuildin(NameFactory.class);
+        return factory.createTypeName(createNameSpace(factory, namespace, separator), localPart);
     }
 
     /**
@@ -210,9 +214,9 @@ public final class Names extends Static
         ensureNonNull("localPart",  localPart);
         ensureNonNull("separator",  separator);
         ensureNonNull("valueClass", valueClass);
-        return DefaultFactories.NAMES.createMemberName(
-                createNameSpace(namespace, separator), localPart,
-                DefaultFactories.SIS_NAMES.toTypeName(valueClass));
+        final DefaultNameFactory factory = DefaultFactories.forBuildin(NameFactory.class, DefaultNameFactory.class);
+        return factory.createMemberName(createNameSpace(factory, namespace, separator), localPart,
+                factory.toTypeName(valueClass));    // SIS-specific method.
     }
 
     /**

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/RecordDefinition.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/RecordDefinition.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/RecordDefinition.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/RecordDefinition.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -39,7 +39,7 @@ import org.apache.sis.internal.util.Coll
  * Holds a {@code Record} definition in a way more convenient for Apache SIS than
  * what the {@code RecordType} interface provides.
  *
- * {@section Serialization}
+ * <div class="section">Serialization</div>
  * This base class is intentionally not serializable, and all private fields are marked as transient for making
  * this decision more visible. This is because the internal details of this class are quite arbitrary, so we do
  * not want to expose them in serialization for compatibility reasons. Furthermore some information are redundant,
@@ -59,7 +59,7 @@ abstract class RecordDefinition { // Int
      * is not an instance of {@link DefaultRecordType}. So this adapter is used only if Apache SIS is mixed
      * with other implementations.
      *
-     * {@section Serialization}
+     * <div class="section">Serialization</div>
      * This class is serializable if the {@code RecordType} given to the constructor is also serializable.
      */
     static final class Adapter extends RecordDefinition implements Serializable {

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/ResourceInternationalString.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/ResourceInternationalString.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/ResourceInternationalString.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/ResourceInternationalString.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -36,7 +36,7 @@ import static org.apache.sis.util.Argume
  * See the {@link ResourceBundle#getBundle(String, Locale, ClassLoader) ResourceBundle.getBundle(…)}
  * Javadoc for more information.
  *
- * {@section Example}
+ * <div class="section">Example</div>
  * If a file named "{@code MyResources.properties}" exists in {@code org.mypackage}
  * and contains the following line:
  *
@@ -55,7 +55,7 @@ import static org.apache.sis.util.Argume
  * for Italian, <i>etc</i>.
  * If needed, users can gain more control by overriding the {@link #getBundle(Locale)} method.
  *
- * {@section Class loaders}
+ * <div class="section">Class loaders</div>
  * Developers can specify explicitely the {@link ClassLoader} to use be overriding the
  * {@link #getBundle(Locale)} method. This is recommended if the running environment
  * loads modules in isolated class loaders, as OSGi does for instance.
@@ -64,14 +64,14 @@ import static org.apache.sis.util.Argume
  * We do not provide {@code ClassLoader} argument in the constructor of this class because class loaders
  * can often be hard-coded (thus avoiding the cost of an extra field) and are usually not serializable.</div>
  *
- * {@section Apache SIS resources}
+ * <div class="section">Apache SIS resources</div>
  * Apache SIS has its own resources mechanism, built on top of the standard {@code ResourceBundle}
  * with the addition of type safety and optional arguments to be formatted in the localized string.
  * Those resource bundles provide {@code formatInternational(int, …)} static methods for creating
  * international strings with the same functionality than this {@code ResourceInternationalString}.
  * See {@code org.apache.sis.util.resources} for more information.
  *
- * {@section Immutability and thread safety}
+ * <div class="section">Immutability and thread safety</div>
  * This class is immutable and thus inherently thread-safe if the bundles created by {@link #getBundle(Locale)}
  * is also immutable. Subclasses may or may not be immutable, at implementation choice. But implementors are
  * encouraged to make sure that subclasses remain immutable for more predictable behavior.
@@ -122,7 +122,7 @@ public class ResourceInternationalString
      * bundle from the name given at {@linkplain #ResourceInternationalString construction time}.
      * Subclasses can override this method if they need to fetch the bundle in an other way.
      *
-     * {@section Class loaders}
+     * <div class="section">Class loaders</div>
      * By default, this method loads the resources using the caller's class loader.
      * Subclasses can override this method in order to specify a different class loader.
      * For example, the code below works well if {@code MyResource} is a class defined
@@ -149,7 +149,7 @@ public class ResourceInternationalString
      * {@code locale}, then this method searches for a string in an other locale as
      * specified in the {@link ResourceBundle} class description.
      *
-     * {@section Handling of <code>null</code> argument value}
+     * <div class="section">Handling of <code>null</code> argument value</div>
      * In the default implementation, the {@code null} locale is handled as a synonymous of
      * {@code Locale.ROOT}. However subclasses are free to use a different fallback. Client
      * code are encouraged to specify only non-null values for more determinist behavior.

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/SimpleInternationalString.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/SimpleInternationalString.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/SimpleInternationalString.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/SimpleInternationalString.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -33,12 +33,12 @@ import java.util.Objects;
  * For such a particular case, this implementation is more effective than
  * other implementations provided in this package.
  *
- * {@section Instantiation}
+ * <div class="section">Instantiation</div>
  * If the characters sequence to wrap is known to be a {@code String} instance, then
  * the {@link #SimpleInternationalString(String)} constructor is okay. Otherwise use
  * the {@link Types#toInternationalString(CharSequence)} method.
  *
- * {@section Immutability and thread safety}
+ * <div class="section">Immutability and thread safety</div>
  * This class is immutable and thus inherently thread-safe.
  * Subclasses may or may not be immutable, at implementation choice. But implementors are
  * encouraged to make sure that subclasses remain immutable for more predictable behavior.

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/Types.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/Types.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/Types.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/Types.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -784,7 +784,7 @@ public final class Types extends Static
             return null;
         }
         if (!(factory instanceof DefaultNameFactory)) {
-            factory = DefaultFactories.SIS_NAMES;
+            factory = DefaultFactories.forBuildin(NameFactory.class);
         }
        return ((DefaultNameFactory) factory).toGenericNames(value);
     }

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/package-info.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/package-info.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/package-info.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/package-info.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -53,7 +53,7 @@
  *   </li>
  * </ul>
  *
- * {@section Anatomy of a name}
+ * <div class="section">Anatomy of a name</div>
  * Names may be {@linkplain org.apache.sis.util.iso.AbstractName#toFullyQualifiedName() fully qualified}
  * (like {@code "urn:ogc:def:crs:EPSG::4326"}),
  * or they may be relative to a {@linkplain org.apache.sis.util.iso.AbstractName#scope() scope}

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/LoggerAdapter.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/LoggerAdapter.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/LoggerAdapter.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/LoggerAdapter.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -45,7 +45,7 @@ import org.apache.sis.util.Debug;
  * don't work with {@link LogRecord}, and sometime provides nothing else than convenience methods
  * equivalent to {@link #severe(String) severe} … {@link #finest(String) finest}.</p>
  *
- * {@section Restrictions}
+ * <div class="section">Restrictions</div>
  * Because the configuration is expected to be fully controlled by the external logging
  * framework, every configuration methods inherited from {@link Logger} are disabled:
  *
@@ -70,7 +70,7 @@ import org.apache.sis.util.Debug;
  * The adapters can be created, garbage-collected and recreated again while preserving their
  * behavior since their configuration is entirely contained in the external logging framework.
  *
- * {@section Localization}
+ * <div class="section">Localization</div>
  * This logger is always created without resource bundles. Localizations shall be done through
  * explicit calls to {@code logrb} or {@link #log(LogRecord)} methods. This is sufficient for
  * SIS needs, which performs all localizations through the later. Note that those methods
@@ -78,7 +78,7 @@ import org.apache.sis.util.Debug;
  * adapter localizes and formats records immediately instead of letting the {@linkplain Handler}
  * performs this work only if needed.
  *
- * {@section Logging levels}
+ * <div class="section">Logging levels</div>
  * If a log record {@linkplain Level level} is not one of the predefined ones, then this class
  * maps to the first level below the specified one. For example if a log record has some level
  * between {@link Level#FINE FINE} and {@link Level#FINER FINER}, then the {@link #finer finer}
@@ -153,7 +153,7 @@ public abstract class LoggerAdapter exte
     /**
      * Returns {@code true} if the specified level is loggable.
      *
-     * {@section Implementation tip}
+     * <div class="section">Implementation tip</div>
      * Given that {@link Level#intValue} for all predefined levels are documented in the {@link Level}
      * specification and are multiple of 100, given that integer divisions are rounded toward zero and
      * given rule documented in this <a href="#skip-navbar_top">class javadoc</a>, then logging levels

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/LoggerFactory.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/LoggerFactory.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/LoggerFactory.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/LoggerFactory.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -37,7 +37,7 @@ import org.apache.sis.util.collection.We
  * The {@link #getLogger(String)} method shall return some {@link Logger} subclass
  * (typically {@link LoggerAdapter}) which forwards directly all log methods to the other framework.
  *
- * {@section Thread safety}
+ * <div class="section">Thread safety</div>
  * This base class is safe for multi-threads usage. Subclasses registered in {@code META-INF/services/}
  * shall make sure that any overridden methods remain safe to call from multiple threads.
  *

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/Logging.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/Logging.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/Logging.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/Logging.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -107,7 +107,7 @@ public final class Logging extends Stati
      * If the given {@code factory} argument is {@code null} (the default),
      * then the standard Logging framework will be used.
      *
-     * {@section Limitation}
+     * <div class="section">Limitation</div>
      * SIS classes typically declare a logger constant like below:
      *
      * {@preformat java

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/MonolineFormatter.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/MonolineFormatter.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/MonolineFormatter.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/MonolineFormatter.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -68,7 +68,7 @@ import org.apache.sis.util.Debug;
  *       without package (e.g. {@code "NetcdfStore"}).</li>
  * </ul>
  *
- * {@section Configuration from <code>logging.properties</code>}
+ * <div class="section">Configuration from {@code logging.properties}</div>
  * The format can also be set from the {@code jre/lib/logging.properties} file.
  * For example, user can cut and paste the following properties into {@code logging.properties}:
  *
@@ -100,7 +100,7 @@ import org.apache.sis.util.Debug;
  *     java.util.logging.ConsoleHandler.level = FINE
  * }
  *
- * {@section Thread safety}
+ * <div class="section">Thread safety</div>
  * The same {@code MonolineFormatter} instance can be safely used by many threads without synchronization
  * on the part of the caller. Subclasses should make sure that any overridden methods remain safe to call
  * from multiple threads.
@@ -265,7 +265,7 @@ public class MonolineFormatter extends F
     /**
      * Constructs a default {@code MonolineFormatter}.
      *
-     * {@section Auto-configuration from the handler}
+     * <div class="section">Auto-configuration from the handler</div>
      * Formatters are often associated to a particular handler. If this handler is known, giving it at
      * construction time can help this formatter to configure itself. This handler is only a hint - it
      * will not be modified, and no reference to that handler will be kept by this constructor.
@@ -941,7 +941,7 @@ loop:   for (int i=0; ; i++) {
      * The current implementation does not check for duplicated {@code ConsoleHandler} instances,
      * and does not check if any child logger has a {@code ConsoleHandler}.</div>
      *
-     * {@section Specifying a log level}
+     * <div class="section">Specifying a log level</div>
      * This method can opportunistically set the handler level. If the given level is non-null,
      * then the {@link ConsoleHandler} using the {@code MonolineFormatter} will be set to that level.
      * This is mostly a convenience for temporary increase of logging verbosity for debugging purpose.

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/PerformanceLevel.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/PerformanceLevel.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/PerformanceLevel.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/PerformanceLevel.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -35,7 +35,7 @@ import static org.apache.sis.util.Argume
  * disabled by default, and enabling them imply enabling configuration logging too. This is
  * done that way because the configuration typically have a significant impact on performance.</p>
  *
- * {@section Enabling performance logging}
+ * <div class="section">Enabling performance logging</div>
  * Performance logging can be enabled in various ways. Among others:
  *
  * <ul>

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/WarningListeners.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/WarningListeners.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/WarningListeners.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/WarningListeners.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -41,7 +41,7 @@ import org.apache.sis.util.resources.Err
  *   <li>Otherwise the warning is logged to the logger returned by {@link #getLogger()}.</li>
  * </ul>
  *
- * {@section Thread safety}
+ * <div class="section">Thread safety</div>
  * The same {@code WarningListeners} instance can be safely used by many threads without synchronization
  * on the part of the caller. Subclasses should make sure that any overridden methods remain safe to call
  * from multiple threads.
@@ -139,7 +139,7 @@ public class WarningListeners<S> impleme
      * Reports a warning represented by the given message and exception.
      * At least one of {@code message} and {@code exception} shall be non-null.
      *
-     * {@section Stack trace omission}
+     * <div class="section">Stack trace omission</div>
      * If there is no registered listener, then the {@link #warning(LogRecord)} method will send the record to the
      * {@linkplain #getLogger() logger}, but <em>without</em> the stack trace. This is done that way because stack
      * traces consume lot of space in the logging files, while being considered implementation details in the context

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/package-info.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/package-info.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/package-info.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/package-info.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -29,7 +29,7 @@
  *       records on single line with colors, for easier reading on the console output.</li>
  * </ul>
  *
- * {@section Choosing a logging framework}
+ * <div class="section">Choosing a logging framework</div>
  * The SIS project uses the standard {@link java.util.logging.Logger} API for its logging,
  * but this package allows redirection of logging messages to some other frameworks like
  * <a href="http://logging.apache.org/log4j/">Log4J</a>.
@@ -43,13 +43,13 @@
  *   <li>Any other JAR registering a {@link org.apache.sis.util.logging.LoggerFactory} implementation.</li>
  * </ul>
  *
- * {@section Apache SIS logger constants}
+ * <div class="section">Apache SIS logger constants</div>
  * Some static final {@code Logger} constant defined in Apache SIS are:
  * <ul>
  *   <li>{@link org.apache.sis.metadata.iso.ISOMetadata#LOGGER} for the {@code org.apache.sis.metadata.iso.*} packages</li>
  * </ul>
  *
- * {@section Note for SIS developers}
+ * <div class="section">Note for SIS developers</div>
  * All SIS code should fetch their logger through a call to our custom
  * {@link org.apache.sis.util.logging.Logging#getLogger(String)} method instead than
  * the standard {@link java.util.logging.Logger#getLogger(String)} method. This is necessary in

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Errors.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Errors.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Errors.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Errors.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -27,7 +27,7 @@ import org.opengis.util.InternationalStr
 /**
  * Locale-dependent resources for error messages.
  *
- * {@section Argument order convention}
+ * <div class="section">Argument order convention</div>
  * This resource bundle applies the same convention than JUnit: for every {@code format(…)} method,
  * the first arguments provide information about the context in which the error occurred (e.g. the
  * name of a method argument or the range of valid values), while the erroneous values that caused
@@ -221,6 +221,11 @@ public final class Errors extends Indexe
         public static final short ElementNotFound_1 = 70;
 
         /**
+         * Elliptical projection not supported.
+         */
+        public static final short EllipticalNotSupported = 182;
+
+        /**
          * Argument ‘{0}’ shall not be empty.
          */
         public static final short EmptyArgument_1 = 20;
@@ -580,6 +585,11 @@ public final class Errors extends Indexe
         public static final short NegativeArrayLength_1 = 68;
 
         /**
+         * No convergence.
+         */
+        public static final short NoConvergence = 181;
+
+        /**
          * No convergence for points {0} and {1}.
          */
         public static final short NoConvergenceForPoints_2 = 69;
@@ -900,17 +910,17 @@ public final class Errors extends Indexe
         public static final short UnmodifiableCellValue_2 = 120;
 
         /**
-         * This geometry is unmodifiable.
+         * This geometry is not modifiable.
          */
         public static final short UnmodifiableGeometry = 121;
 
         /**
-         * This metadata is unmodifiable.
+         * This metadata is not modifiable.
          */
         public static final short UnmodifiableMetadata = 122;
 
         /**
-         * Object ‘{0}’ is unmodifiable.
+         * This instance of ‘{0}’ is not modifiable.
          */
         public static final short UnmodifiableObject_1 = 123;
 

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Errors.properties
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Errors.properties?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Errors.properties [ISO-8859-1] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Errors.properties [ISO-8859-1] Tue Mar 31 21:07:44 2015
@@ -55,6 +55,7 @@ DuplicatedOption_1                = Opti
 DuplicatedParameterName_4         = Name or alias for parameter \u201c{0}\u201d at index {1} conflict with name \u201c{2}\u201d at index {3}.
 ElementAlreadyPresent_1           = Element \u201c{0}\u201d is already present.
 ElementNotFound_1                 = Element \u201c{0}\u201d has not been found.
+EllipticalNotSupported            = Elliptical projection not supported.
 EmptyArgument_1                   = Argument \u2018{0}\u2019 shall not be empty.
 EmptyDictionary                   = The dictionary shall contain at least one entry.
 EmptyEnvelope2D                   = Envelope must be at least two-dimensional and non-empty.
@@ -126,6 +127,7 @@ MissingSpatioTemporalDimension_1  = No s
 MutuallyExclusiveOptions_2        = Options \u201c{0}\u201d and \u201c{1}\u201d are mutually exclusive.
 NegativeArgument_2                = Argument \u2018{0}\u2019 shall not be negative. The given value was {1}.
 NegativeArrayLength_1             = Can not create a \u201c{0}\u201d array of negative length.
+NoConvergence                     = No convergence.
 NoConvergenceForPoints_2          = No convergence for points {0} and {1}.
 NodeChildOfItself_1               = Node \u201c{0}\u201d can not be a child of itself.
 NodeHasAnotherParent_1            = Node \u201c{0}\u201d already has another parent.
@@ -191,9 +193,9 @@ UnknownType_1                     = Type
 UnknownTypeForProperty_1          = Type of the \u201c{0}\u201d property is unknown.
 UnmodifiableAffineTransform       = This affine transform is unmodifiable.
 UnmodifiableCellValue_2           = The cell at column \u201c{1}\u201d of row \u201c{0}\u201d is unmodifiable.
-UnmodifiableGeometry              = This geometry is unmodifiable.
-UnmodifiableMetadata              = This metadata is unmodifiable.
-UnmodifiableObject_1              = Object \u2018{0}\u2019 is unmodifiable.
+UnmodifiableGeometry              = This geometry is not modifiable.
+UnmodifiableMetadata              = This metadata is not modifiable.
+UnmodifiableObject_1              = This instance of \u2018{0}\u2019 is not modifiable.
 UnparsableStringForClass_2        = Text \u201c{1}\u201d can not be parsed as an object of type \u2018{0}\u2019.
 UnparsableStringForClass_3        = Text \u201c{1}\u201d can not be parsed as an object of type \u2018{0}\u2019, because of the \u201c{2}\u201d characters.
 UnresolvedFeatureName_1           = Feature named \u201c{0}\u201d has not yet been resolved.

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Errors_fr.properties
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Errors_fr.properties?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Errors_fr.properties [ISO-8859-1] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Errors_fr.properties [ISO-8859-1] Tue Mar 31 21:07:44 2015
@@ -45,6 +45,7 @@ DuplicatedOption_1                = L\u2
 DuplicatedParameterName_4         = Le nom ou un alias pour le param\u00e8tre \u00ab\u202f{0}\u202f\u00bb \u00e0 l\u2019index {1} duplique le nom \u00ab\u202f{2}\u202f\u00bb \u00e0 l\u2019index {3}.
 ElementAlreadyPresent_1           = L\u2019\u00e9lement \u00ab\u202f{0}\u202f\u00bb est d\u00e9j\u00e0 pr\u00e9sent.
 ElementNotFound_1                 = L\u2019\u00e9lement \u00ab\u202f{0}\u202f\u00bb n\u2019a pas \u00e9t\u00e9 trouv\u00e9.
+EllipticalNotSupported            = Projection elliptique non-support\u00e9e.
 EmptyArgument_1                   = L\u2019argument \u2018{0}\u2019 ne doit pas \u00eatre vide.
 EmptyDictionary                   = Le dictionnaire doit contenir au moins une entr\u00e9e.
 EmptyEnvelope2D                   = L\u2019enveloppe doit avoir au moins deux dimensions et ne pas \u00eatre vide.
@@ -116,6 +117,7 @@ MissingSpatioTemporalDimension_1  = Aucu
 MutuallyExclusiveOptions_2        = Les options \u00ab\u202f{0}\u202f\u00bb et \u00ab\u202f{1}\u202f\u00bb sont mutuellement exclusives.
 NegativeArgument_2                = L\u2019argument \u2018{0}\u2019 ne doit pas \u00eatre n\u00e9gatif. La valeur donn\u00e9e \u00e9tait {1}.
 NegativeArrayLength_1             = Ne peut pas cr\u00e9er un tableau \u00ab\u202f{0}\u202f\u00bb de longueur n\u00e9gative.
+NoConvergence                     = Le calcul ne converge pas.
 NoConvergenceForPoints_2          = Le calcul ne converge pas pour les points {0} et {1}.
 NodeChildOfItself_1               = Le n\u0153ud \u00ab\u202f{0}\u202f\u00bb ne peut pas \u00eatre un enfant de lui-m\u00eame.
 NodeHasAnotherParent_1            = Le n\u0153ud \u00ab\u202f{0}\u202f\u00bb a d\u00e9j\u00e0 un autre parent.
@@ -182,7 +184,7 @@ UnmodifiableAffineTransform       = Cett
 UnmodifiableCellValue_2           = La cellule \u00e0 la colonne \u00ab\u202f{1}\u202f\u00bb de la ligne \u00ab\u202f{0}\u202f\u00bb n\u2019est pas modifiable.
 UnmodifiableGeometry              = Cette g\u00e9om\u00e9trie n\u2019est pas modifiable.
 UnmodifiableMetadata              = Cette m\u00e9ta-donn\u00e9e n\u2019est pas modifiable.
-UnmodifiableObject_1              = L\u2019objet \u2018{0}\u2019 n\u2019est pas modifiable.
+UnmodifiableObject_1              = Cette instance de \u2018{0}\u2019 n\u2019est pas modifiable.
 UnspecifiedCRS                    = Le syst\u00e8me de r\u00e9f\u00e9rence des coordonn\u00e9es n\u2019a pas \u00e9t\u00e9 sp\u00e9cifi\u00e9.
 UnspecifiedFormatForClass_1       = Aucun format n\u2019est sp\u00e9cifi\u00e9 pour les objets de classe \u2018{0}\u2019.
 UnparsableStringForClass_2        = Le texte \u00ab\u202f{1}\u202f\u00bb n\u2019est pas reconnu comme un objet de type \u2018{0}\u2019.

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/IndexedResourceBundle.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/IndexedResourceBundle.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/IndexedResourceBundle.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/IndexedResourceBundle.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -62,7 +62,7 @@ import org.apache.sis.util.logging.Loggi
  *   <li>{@link Class} and {@link Throwable} instances are summarized.</li>
  * </ul>
  *
- * {@section Thread safety}
+ * <div class="section">Thread safety</div>
  * The same {@code IndexedResourceBundle} instance can be safely used by many threads without synchronization
  * on the part of the caller. Subclasses should make sure that any overridden methods remain safe to call from
  * multiple threads.

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Messages.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Messages.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Messages.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Messages.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -71,6 +71,12 @@ public final class Messages extends Inde
         public static final short ConformanceMeansDatumShift = 8;
 
         /**
+         * This parameter is shown for completeness, but should never have a value different than {0}
+         * for this projection.
+         */
+        public static final short ConstantProjParameterValue_1 = 11;
+
+        /**
          * Property “{0}” has been discarded in favor of “{1}”, because those two properties are
          * mutually exclusive.
          */
@@ -98,6 +104,11 @@ public final class Messages extends Inde
         public static final short MismatchedEllipsoidAxisLength_3 = 9;
 
         /**
+         * This parameter borrowed from the “{0}” projection is not formally a “{1}” parameter.
+         */
+        public static final short NotFormalProjectionParameter_2 = 10;
+
+        /**
          * Property “{0}” is hidden by “{1}”.
          */
         public static final short PropertyHiddenBy_2 = 4;

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Messages.properties
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Messages.properties?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Messages.properties [ISO-8859-1] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Messages.properties [ISO-8859-1] Tue Mar 31 21:07:44 2015
@@ -17,10 +17,12 @@
 AlreadyRegistered_2             = {0} \u201c{1}\u201d is already registered. The second instance will be ignored.
 ChangedContainerCapacity_2      = Changed the container capacity from {0} to {1} elements.
 ConformanceMeansDatumShift      = This result indicates if a datum shift method has been applied.
+ConstantProjParameterValue_1    = This parameter is shown for completeness, but should never have a value different than {0} for this projection.
 DiscardedExclusiveProperty_2    = Property \u201c{0}\u201d has been discarded in favor of \u201c{1}\u201d, because those two properties are mutually exclusive.
 IgnoredPropertiesAfterFirst_1   = Ignored properties after the first occurrence of \u2018{0}\u2019.
 IgnoredPropertyAssociatedTo_1   = Ignored property associated to \u2018{0}\u2019.
 PropertyHiddenBy_2              = Property \u201c{0}\u201d is hidden by \u201c{1}\u201d.
 LocalesDiscarded                = Text were discarded for some locales.
 MismatchedEllipsoidAxisLength_3 = The \u201c{1}\u201d parameter could have been omitted. But it has been given a value of {2} which does not match the definition of the \u201c{0}\u201d ellipsoid.
+NotFormalProjectionParameter_2  = This parameter borrowed from the \u201c{0}\u201d projection is not formally a \u201c{1}\u201d parameter.
 UnparsableValueStoredAsText_2   = Can not parse \u201c{1}\u201d as an instance of \u2018{0}\u2019. The value is stored as plain text instead, but will be ignored by some processing.

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Messages_fr.properties
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Messages_fr.properties?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Messages_fr.properties [ISO-8859-1] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Messages_fr.properties [ISO-8859-1] Tue Mar 31 21:07:44 2015
@@ -17,10 +17,12 @@
 AlreadyRegistered_2             = Le {0} \u00ab\u202f{1}\u202f\u00bb est d\u00e9j\u00e0 inscrit dans le registre. La seconde instance sera ignor\u00e9e.
 ChangedContainerCapacity_2      = Changement de la capacit\u00e9 du conteneur de {0} vers {1} \u00e9l\u00e9ments.
 ConformanceMeansDatumShift      = Ce r\u00e9sultat indique si un changement de r\u00e9f\u00e9rentiel a \u00e9t\u00e9 appliqu\u00e9.
+ConstantProjParameterValue_1    = Ce param\u00e8tre est montr\u00e9 pour \u00eatre plus complet, mais sa valeur ne devrait jamais \u00eatre diff\u00e9rente de {0} pour cette projection.
 DiscardedExclusiveProperty_2    = La propri\u00e9t\u00e9 \u00ab\u202f{0}\u202f\u00bb a \u00e9t\u00e9 \u00e9cart\u00e9e en faveur de \u00ab\u202f{1}\u202f\u00bb, parce que ces deux propri\u00e9t\u00e9s sont mutuellement exclusives.
 IgnoredPropertiesAfterFirst_1   = Des propri\u00e9t\u00e9s ont \u00e9t\u00e9 ignor\u00e9es apr\u00e8s la premi\u00e8re occurrence de \u2018{0}\u2019.
 IgnoredPropertyAssociatedTo_1   = Une propri\u00e9t\u00e9 associ\u00e9e \u00e0 \u2018{0}\u2019 a \u00e9t\u00e9 ignor\u00e9e.
 PropertyHiddenBy_2              = La propri\u00e9t\u00e9 \u00ab\u202f{0}\u202f\u00bb est masqu\u00e9e par \u00ab\u202f{1}\u202f\u00bb.
 LocalesDiscarded                = Des textes ont \u00e9t\u00e9 ignor\u00e9s pour certaines langues.
-MismatchedEllipsoidAxisLength_3 = Le param\u00e8tre \u00ab\u202f{1}\u202f\u00bb aurait pu \u00eatre omis. Mais il lui a \u00e9t\u00e9 donn\u00e9 la valeur {2} qui ne correspond pas \u00e0 la d\u00e9finition de l'ellipso\u00efde \u00ab\u202f{0}\u202f\u00bb.
+MismatchedEllipsoidAxisLength_3 = Le param\u00e8tre \u00ab\u202f{1}\u202f\u00bb aurait pu \u00eatre omis. Mais il lui a \u00e9t\u00e9 donn\u00e9 la valeur {2} qui ne correspond pas \u00e0 la d\u00e9finition de l\u2019ellipso\u00efde \u00ab\u202f{0}\u202f\u00bb.
+NotFormalProjectionParameter_2  = Ce param\u00e8tre emprunt\u00e9 \u00e0 la projection \u00ab\u202f{0}\u202f\u00bb n\u2019est pas formellement un param\u00e8tre de \u00ab\u202f{1}\u202f\u00bb.
 UnparsableValueStoredAsText_2   = La valeur \u00ab\u202f{1}\u202f\u00bb ne peut pas \u00eatre interpr\u00e9t\u00e9e comme une instance de \u2018{0}\u2019. Elle est donc m\u00e9moris\u00e9e sous sa forme textuelle, mais sera ignor\u00e9e par certains traitements.

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/ResourceInternationalString.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/ResourceInternationalString.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/ResourceInternationalString.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/ResourceInternationalString.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -35,7 +35,7 @@ import java.util.Objects;
  * {@link IndexedResourceBundle}. Compared to the public class, this specialization works
  * with integer resource keys and accepts arguments.
  *
- * {@section Immutability and thread safety}
+ * <div class="section">Immutability and thread safety</div>
  * This base class is immutable and thus inherently thread-safe.
  *
  * @author  Martin Desruisseaux (Geomatys)

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Vocabulary_fr.properties
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Vocabulary_fr.properties?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Vocabulary_fr.properties [ISO-8859-1] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/Vocabulary_fr.properties [ISO-8859-1] Tue Mar 31 21:07:44 2015
@@ -66,7 +66,7 @@ NumberOfNaN             = Nombre de \u20
 Obligation              = Obligation
 Of_3                    = {0} ({1} de {2})
 Offset                  = D\u00e9calage
-OperatingSystem         = Syst\u00e8me d'exploitation
+OperatingSystem         = Syst\u00e8me d\u2019exploitation
 Optional                = Optionnel
 Options                 = Options
 Others                  = Autres
@@ -91,7 +91,7 @@ Unnamed                 = Sans nom
 Untitled                = Sans titre
 UnavailableContent      = Contenu non-disponible.
 Units                   = Unit\u00e9s
-UserHome                = R\u00e9pertoire de l'utilisateur
+UserHome                = R\u00e9pertoire de l\u2019utilisateur
 Value                   = Valeur
 ValueDomain             = Domaine des valeurs
 Variables               = Variables

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/package-info.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/package-info.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/package-info.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/package-info.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -47,7 +47,7 @@
  * necessary. This avoid the unfortunate confusion documented in the warning section of
  * {@link java.text.MessageFormat} javadoc.
  *
- * {@section Usage}
+ * <div class="section">Usage</div>
  * All {@link org.apache.sis.util.resources.IndexedResourceBundle} subclasses provide a
  * {@code getResources(Locale)} static method. It can be used for fetching localized strings
  * as below:

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/FilteredNamespaces.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/FilteredNamespaces.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/FilteredNamespaces.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/FilteredNamespaces.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -25,7 +25,7 @@ import javax.xml.namespace.NamespaceCont
  * Substitutes at (un)marshalling time the XML namespaces used by SIS by the namespaces used in the XML document.
  * This class is used internally by {@link FilteredStreamReader} and {@link FilteredStreamWriter} only.
  *
- * {@section The problem}
+ * <div class="section">The problem</div>
  * When the XML schemas of an international standard is updated, the URL of the namespace is often modified.
  * For example when GML has been updated from version 3.1 to 3.2, the URL mandated by the international standard
  * changed from {@code "http://www.opengis.net/gml"} to {@code "http://www.opengis.net/gml/3.2"}

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/IdentifiedObject.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/IdentifiedObject.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/IdentifiedObject.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/IdentifiedObject.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -37,7 +37,7 @@ import org.opengis.metadata.citation.Cit
  *     object.getIdentifierMap().put(IdentifierSpace.ID, "myID");
  * }
  *
- * {@section Relationship with GeoAPI}
+ * <div class="section">Relationship with GeoAPI</div>
  * Identifiers exist also in some (not all) GeoAPI objects. Some GeoAPI objects
  * ({@link org.opengis.metadata.acquisition.Instrument}, {@link org.opengis.metadata.acquisition.Platform},
  * {@link org.opengis.metadata.acquisition.Operation}, {@link org.opengis.metadata.lineage.Processing},

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/MarshalContext.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/MarshalContext.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/MarshalContext.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/MarshalContext.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -45,13 +45,13 @@ public abstract class MarshalContext {
      * In particular children of {@link org.opengis.metadata.Metadata} inherit the locale
      * specified by the {@link org.opengis.metadata.Metadata#getLanguage()} attribute.</p>
      *
-     * {@section Handling of <code>Locale.ROOT</code>}
+     * <div class="section">Handling of {@code Locale.ROOT}</div>
      * {@link Locale#ROOT} is interpreted as a request for locale-neutral strings.
      * The meaning of "locale-neutral" is implementation specific - this is usually
      * very close to the English locale, but not necessarily. For examples dates are
      * formatted according ISO standard instead than the rules of the English locale.
      *
-     * {@section Handling of <code>null</code> locale}
+     * <div class="section">Handling of {@code null} locale</div>
      * A {@code null} value means that the locale is unspecified. Callers are encouraged
      * to use the root locale as the default value, but some flexibility is allowed.
      *
@@ -64,7 +64,7 @@ public abstract class MarshalContext {
     /**
      * Returns the timezone to use for (un)marshalling, or {@code null} if none were explicitely specified.
      *
-     * {@section Handling of <code>null</code> timezone}
+     * <div class="section">Handling of <code>null</code> timezone</div>
      * A {@code null} value means that the timezone is unspecified. Callers are encouraged
      * to use the UTC timezone as the default value, but some flexibility is allowed.
      *

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/MarshallerPool.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/MarshallerPool.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/MarshallerPool.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/MarshallerPool.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -45,11 +45,11 @@ import org.apache.sis.util.ArgumentCheck
  *     pool.recycle(marshaller);
  * }
  *
- * {@section Configuring (un)marshallers}
+ * <div class="section">Configuring (un)marshallers</div>
  * The (un)marshallers created by this class can optionally by configured with the SIS-specific
  * properties defined in the {@link XML} class, in addition to JAXB standard properties.
  *
- * {@section Thread safety}
+ * <div class="section">Thread safety</div>
  * The same {@code MarshallerPool} instance can be safely used by many threads without synchronization
  * on the part of the caller. Subclasses should make sure that any overridden methods remain safe to call
  * from multiple threads.
@@ -373,7 +373,7 @@ public class MarshallerPool {
      * The caller should not use anymore the given marshaller after this method call,
      * since the marshaller may be re-used by another thread at any time after recycle.
      *
-     * {@section Cautions}
+     * <div class="section">Cautions</div>
      * <ul>
      *   <li>Do not invoke this method if the marshaller threw an exception, since the
      *       marshaller may be in an invalid state. In particular, this method should not
@@ -397,7 +397,7 @@ public class MarshallerPool {
      * The caller should not use anymore the given unmarshaller after this method call,
      * since the unmarshaller may be re-used by another thread at any time after recycle.
      *
-     * {@section Cautions}
+     * <div class="section">Cautions</div>
      * <ul>
      *   <li>Do not invoke this method if the unmarshaller threw an exception, since the
      *       unmarshaller may be in an invalid state. In particular, this method should not

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/Namespaces.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/Namespaces.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/Namespaces.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/Namespaces.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -50,7 +50,7 @@ import org.apache.sis.util.ArgumentCheck
  *   <tr><td>xlink</td>  <td>{@value #XLINK}</td> <td></td></tr>
  * </table>
  *
- * {@section Profiles}
+ * <div class="section">Profiles</div>
  * Some countries or organizations define profiles of international standards, which may contain
  * country-specific extensions. The namespace of such extensions are usually defined in a separated
  * class dedicated to the profile. Some of them are listed below:

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/NilObject.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/NilObject.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/NilObject.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/NilObject.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -61,7 +61,7 @@ package org.apache.sis.xml;
  * both the {@code Series} and the {@code NilObject} interfaces, and the {@link #getNilReason()} method
  * on that instance will return the {@link NilReason#UNKNOWN} constant.
  *
- * {@section Instantiation}
+ * <div class="section">Instantiation</div>
  * Instances of {@code NilObject} are created by first fetching the reason why the information
  * is missing, then invoking {@link NilReason#createNilObject(Class)}. The following example
  * instantiates a {@code Citation} object which is nil because the information are missing:

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/NilReason.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/NilReason.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/NilReason.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/NilReason.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -49,7 +49,7 @@ import org.apache.sis.internal.jaxb.Prim
  * {@code NilReason} is used in a number of XML elements where it is necessary to permit
  * one of the above values as an alternative to the primary element.
  *
- * {@section Immutability and thread safety}
+ * <div class="section">Immutability and thread safety</div>
  * This final class is immutable and thus inherently thread-safe.
  *
  * @author  Martin Desruisseaux (Geomatys)
@@ -117,7 +117,7 @@ public final class NilReason implements
      * The string representation of this constant is {@code "other"}.
      * The explanation property is an empty string, and the URI is {@code null}.
      *
-     * {@section Providing an explanation}
+     * <div class="section">Providing an explanation</div>
      * Users are encouraged to use the {@link #valueOf(String)} method instead than this constant,
      * in order to provide a brief explanation. The string representation for {@code valueOf(…)}
      * is <code>"other:<var>explanation</var>"</code> where <var>explanation</var> is a string of
@@ -350,9 +350,9 @@ public final class NilReason implements
      * Returns an object of the given type which is nil for the reason represented by this instance.
      * The {@code type} argument can be one of the following cases:
      *
-     * <ul>
-     *   <li><p>An <strong>interface</strong>: in such case, this method returns an object which implement the given
-     *       interface together with the {@link NilObject} and {@link LenientComparable} interfaces:</p>
+     * <ul class="verbose">
+     *   <li>An <strong>interface</strong>: in such case, this method returns an object which implement the given
+     *       interface together with the {@link NilObject} and {@link LenientComparable} interfaces:
      *       <ul>
      *         <li>The {@link NilObject#getNilReason()} method will return this {@code NilReason} instance.</li>
      *         <li>The {@code equals(…)} and {@code hashCode()} methods behave as documented in {@link LenientComparable}.</li>
@@ -361,9 +361,9 @@ public final class NilReason implements
      *             {@code 0} or {@code false}, in this preference order, depending on the method return type.</li>
      *       </ul>
      *   </li>
-     *   <li><p>One of {@code Boolean}, {@link Byte}, {@link Short}, {@code Integer}, {@link Long}, {@link Float},
+     *   <li>One of {@code Boolean}, {@link Byte}, {@link Short}, {@code Integer}, {@link Long}, {@link Float},
      *       {@code Double} or {@code String} types: in such case, this method returns a specific instance which
-     *       will be recognized as "nil" by the XML marshaller.</p></li>
+     *       will be recognized as "nil" by the XML marshaller.</li>
      * </ul>
      *
      * @param  <T> The compile-time type of the {@code type} argument.

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/OGCNamespacePrefixMapper.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/OGCNamespacePrefixMapper.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/OGCNamespacePrefixMapper.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/OGCNamespacePrefixMapper.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -28,7 +28,7 @@ import com.sun.xml.internal.bind.marshal
  * bundled with JAXB 2.1. Even with working {@code @XmlSchema} annotations, this mapper still
  * a convenient may to gain more control like choosing a default namespace at runtime.
  *
- * {@section Immutability and thread safety}
+ * <div class="section">Immutability and thread safety</div>
  * This final class is immutable and thus inherently thread-safe.
  *
  * @author  Cédric Briançon (Geomatys)

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/OGCNamespacePrefixMapper_Endorsed.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/OGCNamespacePrefixMapper_Endorsed.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/OGCNamespacePrefixMapper_Endorsed.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/OGCNamespacePrefixMapper_Endorsed.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -26,7 +26,7 @@ import com.sun.xml.bind.marshaller.Names
  * the package name of the parent {@code NamespacePrefixMapper} class does not have
  * the "{@code internal}" part.
  *
- * {@section Immutability and thread safety}
+ * <div class="section">Immutability and thread safety</div>
  * This final class is immutable and thus inherently thread-safe.
  *
  * @author  Cédric Briançon (Geomatys)

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/XML.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/XML.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/XML.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/XML.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -79,7 +79,7 @@ public final class XML extends Static {
      * such case, the unmarshaller will try to pickup a string in the language specified
      * by this property.</p>
      *
-     * {@section Default behavior}
+     * <div class="section">Default behavior</div>
      * If this property is never set, then (un)marshalling will try to use "unlocalized" strings -
      * typically some programmatic strings like {@linkplain org.opengis.annotation.UML#identifier()
      * UML identifiers}. While such identifiers often look like English words, they are not
@@ -87,7 +87,7 @@ public final class XML extends Static {
      * The algorithm attempting to find a "unlocalized" string is defined in the
      * {@link org.apache.sis.util.iso.DefaultInternationalString#toString(Locale)} javadoc.
      *
-     * {@section Special case}
+     * <div class="section">Special case</div>
      * If the object to be marshalled is an instance of
      * {@link org.apache.sis.metadata.iso.DefaultMetadata}, then the value given to its
      * {@link org.apache.sis.metadata.iso.DefaultMetadata#setLanguage(Locale) setLanguage(Locale)}
@@ -103,7 +103,7 @@ public final class XML extends Static {
      * The value for this property shall be an instance of {@link TimeZone}
      * or a {@link CharSequence} recognized by {@link TimeZone#getTimeZone(String)}.
      *
-     * {@section Default behavior}
+     * <div class="section">Default behavior</div>
      * If this property is never set, then (un)marshalling will use the
      * {@linkplain TimeZone#getDefault() default timezone}.
      */
@@ -125,7 +125,7 @@ public final class XML extends Static {
      * for the ISO 19139 schemas. Additional keys, if any, are ignored. Future SIS versions
      * may recognize more keys.
      *
-     * {@section Valid values}
+     * <div class="section">Valid values</div>
      * <table class="sis">
      *   <caption>Supported schemas</caption>
      *   <tr><th>Map key</th> <th>Typical values (choose only one)</th></tr>
@@ -143,7 +143,7 @@ public final class XML extends Static {
      * Specifies the default namespace of the XML document to write.
      * An example of value for this key is {@code "http://www.isotc211.org/2005/gmd"}.
      *
-     * {@section Current limitation}
+     * <div class="section">Current limitation</div>
      * In current SIS implementation, this property is honored only by the {@link MarshallerPool} constructors.
      * Specifying this property to {@link javax.xml.bind.Marshaller#setProperty(String, Object)} is too late.
      * This limitation may be fixed in a future SIS version.
@@ -161,7 +161,7 @@ public final class XML extends Static {
      * The value can be {@link String} or {@link Version} objects.
      * If no version is specified, then the most recent GML version is assumed.
      *
-     * {@section Supported GML versions}
+     * <div class="section">Supported GML versions</div>
      * 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.
@@ -206,9 +206,8 @@ public final class XML extends Static {
      * for replacing an erroneous URL by a fixed URL. See the {@link ValueConverter} javadoc for
      * more details.</p>
      *
-     * {@section Example}
-     * The following example collects the failures in a list without stopping the (un)marshalling
-     * process.
+     * <div class="note"><b>Example:</b>
+     * the following example collects the failures in a list without stopping the (un)marshalling process.
      *
      * {@preformat java
      *     class WarningCollector extends ValueConverter {
@@ -237,6 +236,7 @@ public final class XML extends Static {
      *         // Report here the warnings to the user.
      *     }
      * }
+     * </div>
      *
      * @see Unmarshaller#setProperty(String, Object)
      * @see ValueConverter
@@ -254,7 +254,7 @@ public final class XML extends Static {
      *   <li>"{@code mimetype}" for substituting {@code <gmx:MimeFileType>} elements</li>
      * </ul>
      *
-     * {@section Example}
+     * <div class="note"><b>Example:</b>
      * INSPIRE compliant language code shall be formatted like below (details may vary):
      *
      * {@preformat xml
@@ -273,6 +273,7 @@ public final class XML extends Static {
      *     <gco:CharacterString>fra</gco:CharacterString>
      *   </gmd:language>
      * }
+     * </div>
      */
     public static final String STRING_SUBSTITUTES = "org.apache.sis.xml.stringSubstitutes";
 

Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/package-info.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/package-info.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/package-info.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/package-info.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -41,7 +41,7 @@
  *   </gmd:CI_Citation>
  * }
  *
- * {@section Customizing the XML}
+ * <div class="section">Customizing the XML</div>
  * In order to parse and format ISO 19139 compliant documents, SIS needs its own
  * {@link javax.xml.bind.Marshaller} and {@link javax.xml.bind.Unmarshaller} instances
  * (which are actually wrappers around standard instances). Those instances are created

Modified: sis/branches/JDK7/core/sis-utility/src/main/resources/META-INF/services/org.apache.sis.util.ObjectConverter
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/resources/META-INF/services/org.apache.sis.util.ObjectConverter?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/resources/META-INF/services/org.apache.sis.util.ObjectConverter [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/resources/META-INF/services/org.apache.sis.util.ObjectConverter [UTF-8] Tue Mar 31 21:07:44 2015
@@ -1,3 +1,4 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.
 # Loaded by org.apache.sis.internal.converter.ConverterRegistry.
 org.apache.sis.internal.converter.StringConverter$Number
 org.apache.sis.internal.converter.StringConverter$Byte

Modified: sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/internal/converter/NumberConverterTest.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/internal/converter/NumberConverterTest.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/internal/converter/NumberConverterTest.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/internal/converter/NumberConverterTest.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -194,7 +194,7 @@ public final strictfp class NumberConver
     public void testLargeValue() {
         final long longValue = 1000000000000000010L;
         final double doubleValue = longValue;
-        assertTrue(Math.ulp(doubleValue) > 10); // Need to have more digits than 'double' capacity.
+        assertTrue(StrictMath.ulp(doubleValue) > 10); // Need to have more digits than 'double' capacity.
         runConversion(create(BigDecimal.class, Double.class),
                 BigDecimal.valueOf(longValue), Double.valueOf(doubleValue), BigDecimal.valueOf(doubleValue));
 

Modified: sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/internal/util/CitationsTest.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/internal/util/CitationsTest.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/internal/util/CitationsTest.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/internal/util/CitationsTest.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -18,6 +18,7 @@ package org.apache.sis.internal.util;
 
 import org.opengis.metadata.citation.Citation;
 import org.apache.sis.internal.simple.SimpleCitation;
+import org.apache.sis.xml.IdentifierSpace;
 import org.apache.sis.test.DependsOnMethod;
 import org.apache.sis.test.TestCase;
 import org.junit.Test;
@@ -62,5 +63,25 @@ public final strictfp class CitationsTes
     public void testGetUnicodeIdentifier() {
         final SimpleCitation citation = new SimpleCitation(" Valid\u2060Id\u200Bentifier ");
         assertEquals("ValidIdentifier", Citations.getUnicodeIdentifier(citation));
+
+        assertNull("Shall not be taken as a valid identifier.",
+                Citations.getUnicodeIdentifier(new SimpleCitation("Proj.4")));
+        assertEquals("Shall fallback on the the identifier space name.",
+                "TheProj4Space", Citations.getUnicodeIdentifier(new Proj4()));
+    }
+
+    /**
+     * A citation which is also an {@link IdentifierSpace}, for {@link #testGetUnicodeIdentifier()} purpose.
+     */
+     @SuppressWarnings("serial")
+     private static final class Proj4 extends SimpleCitation implements IdentifierSpace<Integer> {
+        Proj4() {
+            super("Proj.4");
+        }
+
+        @Override
+        public String getName() {
+            return "TheProj4Space";  // Intentionally a very different name than "Proj4".
+        }
     }
 }

Modified: sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/internal/util/DoubleDoubleTest.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/internal/util/DoubleDoubleTest.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/internal/util/DoubleDoubleTest.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/internal/util/DoubleDoubleTest.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -409,8 +409,9 @@ public final strictfp class DoubleDouble
         for (int i=0; ; i++) {
             final DoubleDouble dd;
             switch (i) {
-                case 0:  dd = DoubleDouble.createDegreesToRadians(); break;
-                case 1:  dd = DoubleDouble.createSecondsToRadians(); break;
+                case 0:  dd = DoubleDouble.createRadiansToDegrees(); break;
+                case 1:  dd = DoubleDouble.createDegreesToRadians(); break;
+                case 2:  dd = DoubleDouble.createSecondsToRadians(); break;
                 default: return; // Test done.
             }
             assertEquals(DoubleDouble.errorForWellKnownValue(dd.value), dd.error, STRICT);

Modified: sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/test/Assert.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/test/Assert.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/test/Assert.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/test/Assert.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -262,7 +262,7 @@ public strictfp class Assert extends org
      *
      * This method will ignore comments and the optional attributes given in arguments.
      *
-     * {@section Ignored attributes substitution}
+     * <div class="section">Ignored attributes substitution</div>
      * For convenience, this method replaces some well known prefixes in the {@code ignoredAttributes}
      * array by their full namespace URLs. For example this method replaces{@code "xsi:schemaLocation"}
      * by {@code "http://www.w3.org/2001/XMLSchema-instance:schemaLocation"}.

Modified: sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/test/package-info.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/test/package-info.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/test/package-info.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/test/package-info.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -22,7 +22,7 @@
  * {@link org.opengis.test.Assert} (which itself extends the JUnit {@link org.junit.Assert} class)
  * with the addition of assertion methods commonly used in SIS tests.
  *
- * {@section Outputs configuration}
+ * <div class="section">Outputs configuration</div>
  * By default, successful tests do not produce any output. However it is possible to ask for
  * verbose outputs, which is sometime useful for debugging purpose. This behavior is controlled
  * from the command line by defining {@linkplain java.lang.System#getProperties() system properties}

Modified: sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/util/iso/NameMarshallingTest.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/util/iso/NameMarshallingTest.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/util/iso/NameMarshallingTest.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/util/iso/NameMarshallingTest.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -86,7 +86,7 @@ public final strictfp class NameMarshall
      */
     @Test
     public void testLocalName() throws JAXBException {
-        final NameFactory factory = DefaultFactories.SIS_NAMES;
+        final NameFactory factory = DefaultFactories.forBuildin(NameFactory.class);
         final LocalName name = factory.createLocalName(null, "An ordinary local name");
         assertEquals("An ordinary local name", name.toString());
         final String expected =
@@ -109,7 +109,7 @@ public final strictfp class NameMarshall
     @Test
     @DependsOnMethod("testLocalName")
     public void testLocalNameWithAmp() throws JAXBException {
-        final NameFactory factory = DefaultFactories.SIS_NAMES;
+        final NameFactory factory = DefaultFactories.forBuildin(NameFactory.class);
         final LocalName name = factory.createLocalName(null, "A name with & and > and <.");
         assertEquals("A name with & and > and <.", name.toString());
         final String expected =
@@ -132,7 +132,7 @@ public final strictfp class NameMarshall
     @Test
     @DependsOnMethod("testLocalName")
     public void testLocalNameWithScope() throws JAXBException {
-        final NameFactory factory = DefaultFactories.SIS_NAMES;
+        final NameFactory factory = DefaultFactories.forBuildin(NameFactory.class);
         final NameSpace scope = factory.createNameSpace(factory.createLocalName(null, "A code space"), null);
         final LocalName name = factory.createLocalName(scope, "A name in a scope");
         assertEquals("A name in a scope", name.toString());
@@ -155,7 +155,7 @@ public final strictfp class NameMarshall
      */
     @Test
     public void testTypeName() throws JAXBException {
-        final NameFactory factory = DefaultFactories.SIS_NAMES;
+        final NameFactory factory = DefaultFactories.forBuildin(NameFactory.class);
         final TypeName name = factory.createTypeName(null, "An other local name");
         assertEquals("An other local name", name.toString());
         final String expected =
@@ -181,7 +181,7 @@ public final strictfp class NameMarshall
      */
     @Test
     public void testScopedName() throws JAXBException {
-        final NameFactory factory = DefaultFactories.SIS_NAMES;
+        final NameFactory factory = DefaultFactories.forBuildin(NameFactory.class);
         final GenericName name = factory.createGenericName(null, "myScope","myName");
         assertEquals("myScope:myName", name.toString());
         final String expected =

Modified: sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/util/iso/NamesTest.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/util/iso/NamesTest.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/util/iso/NamesTest.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/util/iso/NamesTest.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -22,6 +22,7 @@ import org.opengis.util.GenericName;
 import org.opengis.util.TypeName;
 import org.opengis.util.LocalName;
 import org.opengis.util.InternationalString;
+import org.opengis.util.NameFactory;
 import org.opengis.util.NameSpace;
 import org.opengis.util.ScopedName;
 import org.apache.sis.util.UnknownNameException;
@@ -61,7 +62,8 @@ public final strictfp class NamesTest ex
      */
     @Test
     public void testClassFromClassname() {
-        final TypeName type = DefaultFactories.SIS_NAMES.toTypeName(Random.class);
+        final DefaultNameFactory factory = DefaultFactories.forBuildin(NameFactory.class, DefaultNameFactory.class);
+        final TypeName type = factory.toTypeName(Random.class);
         assertEquals("class:java.util.Random", type.toFullyQualifiedName().toString());
         assertValueClassEquals(Random.class, type);
         assertValueClassEquals(DefaultNameFactoryTest.class,
@@ -76,7 +78,8 @@ public final strictfp class NamesTest ex
      */
     @Test
     public void testClassFromOGC() {
-        final TypeName type = DefaultFactories.SIS_NAMES.toTypeName(String.class);
+        final DefaultNameFactory factory = DefaultFactories.forBuildin(NameFactory.class, DefaultNameFactory.class);
+        final TypeName type = factory.toTypeName(String.class);
         assertEquals("OGC:CharacterString", type.toFullyQualifiedName().toString());
         assertValueClassEquals(String.class,               type);
         assertValueClassEquals(Double.class,               new DefaultTypeName(type.scope(), "Real"));

Modified: sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/util/iso/TypeNamesTest.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/util/iso/TypeNamesTest.java?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/util/iso/TypeNamesTest.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/util/iso/TypeNamesTest.java [UTF-8] Tue Mar 31 21:07:44 2015
@@ -20,6 +20,7 @@ import java.net.URI;
 import java.util.Date;
 import java.util.Locale;
 import org.opengis.util.TypeName;
+import org.opengis.util.NameFactory;
 import org.opengis.util.InternationalString;
 import org.opengis.metadata.Metadata;
 import org.opengis.referencing.crs.CoordinateReferenceSystem;
@@ -53,7 +54,8 @@ public final strictfp class TypeNamesTes
     private static void verifyLookup(final String namespace, final String name, final Class<?> valueClass)
             throws ClassNotFoundException
     {
-        final TypeName type = DefaultFactories.SIS_NAMES.toTypeName(valueClass);
+        final DefaultNameFactory factory = DefaultFactories.forBuildin(NameFactory.class, DefaultNameFactory.class);
+        final TypeName type = factory.toTypeName(valueClass);
         assertNotNull(name, type);
         assertSame   (name, valueClass, ((DefaultTypeName) type).toClass());
         assertEquals (name, namespace,  type.scope().name().toString());
@@ -64,8 +66,8 @@ public final strictfp class TypeNamesTes
     /**
      * Returns the string representation of the fully qualified path of the type name for the given value.
      */
-    private static String toTypeName(final Class<?> valueClass) {
-        return DefaultFactories.SIS_NAMES.toTypeName(valueClass).toFullyQualifiedName().toString();
+    private static String toTypeName(final DefaultNameFactory factory, final Class<?> valueClass) {
+        return factory.toTypeName(valueClass).toFullyQualifiedName().toString();
     }
 
     /**
@@ -90,10 +92,11 @@ public final strictfp class TypeNamesTes
      */
     @Test
     public void testNumbers() {
-        assertEquals("Short",  OGC+":Integer", toTypeName(Short .class));
-        assertEquals("Long",   OGC+":Integer", toTypeName(Long  .class));
-        assertEquals("Float",  OGC+":Real",    toTypeName(Float .class));
-        assertEquals("Double", OGC+":Real",    toTypeName(Double.class));
+        final DefaultNameFactory factory = DefaultFactories.forBuildin(NameFactory.class, DefaultNameFactory.class);
+        assertEquals("Short",  OGC+":Integer", toTypeName(factory, Short .class));
+        assertEquals("Long",   OGC+":Integer", toTypeName(factory, Long  .class));
+        assertEquals("Float",  OGC+":Real",    toTypeName(factory, Float .class));
+        assertEquals("Double", OGC+":Real",    toTypeName(factory, Double.class));
     }
 
     /**

Modified: sis/branches/JDK7/ide-project/NetBeans/build.xml
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/ide-project/NetBeans/build.xml?rev=1670479&r1=1670478&r2=1670479&view=diff
==============================================================================
--- sis/branches/JDK7/ide-project/NetBeans/build.xml (original)
+++ sis/branches/JDK7/ide-project/NetBeans/build.xml Tue Mar 31 21:07:44 2015
@@ -55,6 +55,10 @@
       </fileset>
     </copy>
 
+
+
+    <!-- ==== Standard JAVA service providers ====================================================================== -->
+
     <!-- FileTypeDetector implementations to be loaded by ServiceLoader. -->
     <concat destfile="${build.classes.dir}/META-INF/services/java.nio.file.spi.FileTypeDetector" encoding="UTF-8" fixlastline="yes">
       <fileset dir="${project.root}">
@@ -62,6 +66,24 @@
       </fileset>
     </concat>
 
+
+
+    <!-- ==== GeoAPI service providers ============================================================================= -->
+
+    <!-- NameFactory implementations to be loaded by ServiceLoader. -->
+    <concat destfile="${build.classes.dir}/META-INF/services/org.opengis.util.NameFactory" encoding="UTF-8" fixlastline="yes">
+      <fileset dir="${project.root}">
+        <include name="*/*/src/main/resources/META-INF/services/org.opengis.util.NameFactory"/>
+      </fileset>
+    </concat>
+
+    <!-- MathTransformFactory implementations to be loaded by ServiceLoader. -->
+    <concat destfile="${build.classes.dir}/META-INF/services/org.opengis.referencing.operation.MathTransformFactory" encoding="UTF-8" fixlastline="yes">
+      <fileset dir="${project.root}">
+        <include name="*/*/src/main/resources/META-INF/services/org.opengis.referencing.operation.MathTransformFactory"/>
+      </fileset>
+    </concat>
+
     <!-- OperationMethod implementations to be loaded by ServiceLoader. -->
     <concat destfile="${build.classes.dir}/META-INF/services/org.opengis.referencing.operation.OperationMethod" encoding="UTF-8" fixlastline="yes">
       <fileset dir="${project.root}">
@@ -69,6 +91,10 @@
       </fileset>
     </concat>
 
+
+
+    <!-- ==== Apache SIS service providers ========================================================================= -->
+
     <!-- ObjectConverter implementations to be loaded by ServiceLoader. -->
     <concat destfile="${build.classes.dir}/META-INF/services/org.apache.sis.util.ObjectConverter" encoding="UTF-8" fixlastline="yes">
       <fileset dir="${project.root}">