Author: desruisseaux
Date: Sun Feb 8 22:01:42 2015
New Revision: 1658261
URL: http://svn.apache.org/r1658261
Log:
Additional javadoc clarification.
Modified:
sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/DefaultFormula.java
sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/DefaultOperationMethod.java
sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/transform/MathTransformProvider.java
Modified:
sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/DefaultFormula.java
URL:
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/DefaultFormula.java?rev=1658261&r1=1658260&r2=1658261&view=diff
==============================================================================
---
sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/DefaultFormula.java
[UTF-8] (original)
+++
sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/DefaultFormula.java
[UTF-8] Sun Feb 8 22:01:42 2015
@@ -47,6 +47,7 @@ import java.util.Objects;
*
* @see DefaultOperationMethod
* @see org.apache.sis.referencing.operation.transform.AbstractMathTransform
+ * @see org.apache.sis.referencing.operation.transform.MathTransformProvider
*/
public class DefaultFormula extends FormattableObject implements Formula,
Serializable {
/**
Modified:
sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/DefaultOperationMethod.java
URL:
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/DefaultOperationMethod.java?rev=1658261&r1=1658260&r2=1658261&view=diff
==============================================================================
---
sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/DefaultOperationMethod.java
[UTF-8] (original)
+++
sis/branches/JDK8/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/DefaultOperationMethod.java
[UTF-8] Sun Feb 8 22:01:42 2015
@@ -91,6 +91,12 @@ import java.util.Objects;
* {@code DefaultOperationMethod} subclasses should implement the
* {@link
org.apache.sis.referencing.operation.transform.MathTransformProvider}
interface.</p>
*
+ * {@section Immutability and thread safety}
+ * This class is immutable and thread-safe if all properties given to the
constructor are also immutable and thread-safe.
+ * It is strongly recommended for all subclasses to be thread-safe, especially
the
+ * {@link
org.apache.sis.referencing.operation.transform.MathTransformProvider}
implementations to be used with
+ * {@link
org.apache.sis.referencing.operation.transform.DefaultMathTransformFactory}.
+ *
* @author Martin Desruisseaux (IRD, Geomatys)
* @version 0.5
* @since 0.5
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=1658261&r1=1658260&r2=1658261&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] Sun Feb 8 22:01:42 2015
@@ -26,7 +26,8 @@ import org.opengis.referencing.operation
/**
* An object capable to create {@code MathTransform} instances from given
parameter values.
- * {@code MathTransformProvider} is the "glue" expressing an abstract formula
into concrete Java code.
+ * {@code MathTransformProvider} is the Apache SIS mechanism by which
+ * {@linkplain org.apache.sis.referencing.operation.DefaultFormula formula}
are concretized as Java code.
* There is one {@code MathTransformProvider} for each map projection: one for
Mercator, one for Lambert,
* <i>etc</i>.
*
@@ -37,7 +38,8 @@ import org.opengis.referencing.operation
* {@link
org.opengis.referencing.operation.CoordinateOperation#getMathTransform()}.</p>
*
* {@section How to add custom coordinate operations}
- * To define a custom coordinate operation, one needs to define a class
implementing <strong>both</strong> this
+ * To define a custom coordinate operation,
+ * one needs to define a <strong>thread-safe</strong> class implementing
<strong>both</strong> this
* {@code MathTransformProvider} interface and the {@link
org.opengis.referencing.operation.OperationMethod} one.
* While not mandatory, we suggest to extend {@link
org.apache.sis.referencing.operation.DefaultOperationMethod}.
* Then the fully-qualified class name of that implementation should be listed
in a file having this exact name:
@@ -47,8 +49,8 @@ import org.opengis.referencing.operation
* }
*
* <div class="note"><b>Design note:</b>
- * this interface does not extend {@code OperationMethod} directly in order to
allow its usage
- * in other contexts than coordinate operations.</div>
+ * this {@code MathTransformProvider} interface does not extend {@code
OperationMethod} directly
+ * in order to allow its usage in other contexts than coordinate
operations.</div>
*
* @author Martin Desruisseaux (Geomatys, IRD)
* @since 0.6
@@ -57,6 +59,7 @@ import org.opengis.referencing.operation
*
* @see org.apache.sis.referencing.operation.DefaultOperationMethod
* @see DefaultMathTransformFactory
+ * @see AbstractMathTransform
*/
@FunctionalInterface
public interface MathTransformProvider {