Author: desruisseaux Date: Mon Feb 2 15:49:48 2015 New Revision: 1656499 URL: http://svn.apache.org/r1656499 Log: Merge from the JDK6 branch.
Modified: sis/trunk/ (props changed) sis/trunk/core/sis-feature/src/test/java/org/apache/sis/feature/CharacteristicMapTest.java sis/trunk/core/sis-metadata/src/main/java/org/apache/sis/metadata/TreeTableView.java sis/trunk/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultMetadata.java sis/trunk/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/lineage/DefaultSource.java sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/internal/referencing/WKTUtilities.java sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/parameter/ParameterValueList.java sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/DefaultFormula.java sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/DefaultOperationMethod.java sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/transform/AbstractMathTransform.java sis/trunk/core/sis-utility/src/main/java/org/apache/sis/internal/converter/ClassPair.java sis/trunk/core/sis-utility/src/main/java/org/apache/sis/internal/converter/CollectionConverter.java sis/trunk/core/sis-utility/src/main/java/org/apache/sis/internal/converter/ConverterRegistry.java sis/trunk/core/sis-utility/src/main/java/org/apache/sis/measure/Range.java sis/trunk/core/sis-utility/src/main/java/org/apache/sis/util/iso/AbstractFactory.java sis/trunk/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultRecordType.java sis/trunk/core/sis-utility/src/main/java/org/apache/sis/util/iso/RecordDefinition.java sis/trunk/core/sis-utility/src/main/java/org/apache/sis/util/resources/ResourceInternationalString.java sis/trunk/core/sis-utility/src/test/java/org/apache/sis/test/XMLComparator.java sis/trunk/pom.xml Propchange: sis/trunk/ ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Mon Feb 2 15:49:48 2015 @@ -1,4 +1,4 @@ /sis/branches/Android:1430670-1480699 -/sis/branches/JDK6:1394364-1655163 -/sis/branches/JDK7:1394913-1655158 -/sis/branches/JDK8:1584960-1655065 +/sis/branches/JDK6:1394364-1656497 +/sis/branches/JDK7:1394913-1656489 +/sis/branches/JDK8:1584960-1656486 Modified: sis/trunk/core/sis-feature/src/test/java/org/apache/sis/feature/CharacteristicMapTest.java URL: http://svn.apache.org/viewvc/sis/trunk/core/sis-feature/src/test/java/org/apache/sis/feature/CharacteristicMapTest.java?rev=1656499&r1=1656498&r2=1656499&view=diff ============================================================================== --- sis/trunk/core/sis-feature/src/test/java/org/apache/sis/feature/CharacteristicMapTest.java [UTF-8] (original) +++ sis/trunk/core/sis-feature/src/test/java/org/apache/sis/feature/CharacteristicMapTest.java [UTF-8] Mon Feb 2 15:49:48 2015 @@ -53,6 +53,7 @@ public final strictfp class Characterist * @param name Either {@code "accuracy"} or {@code "units"}. * @return An attribute for the given name. */ + @SuppressWarnings({"unchecked","rawtypes"}) // Not needed on JDK7 branch. private static AbstractAttribute<?> create(final AbstractAttribute<?> temperature, final String name) { return new SingletonAttribute(((DefaultAttributeType<?>) temperature.getType()).characteristics().get(name)); } Modified: sis/trunk/core/sis-metadata/src/main/java/org/apache/sis/metadata/TreeTableView.java URL: http://svn.apache.org/viewvc/sis/trunk/core/sis-metadata/src/main/java/org/apache/sis/metadata/TreeTableView.java?rev=1656499&r1=1656498&r2=1656499&view=diff ============================================================================== --- sis/trunk/core/sis-metadata/src/main/java/org/apache/sis/metadata/TreeTableView.java [UTF-8] (original) +++ sis/trunk/core/sis-metadata/src/main/java/org/apache/sis/metadata/TreeTableView.java [UTF-8] Mon Feb 2 15:49:48 2015 @@ -158,6 +158,9 @@ final class TreeTableView implements Tre /** * Invoked on serialization. Write the metadata object instead of the {@linkplain #root} node. + * + * @param out The output stream where to serialize this object. + * @throws IOException If an I/O error occurred while writing. */ private void writeObject(final ObjectOutputStream out) throws IOException { out.defaultWriteObject(); @@ -166,6 +169,10 @@ final class TreeTableView implements Tre /** * Invoked on deserialization. Recreate the {@linkplain #root} node from the metadata object. + * + * @param in The input stream from which to deserialize an object. + * @throws IOException If an I/O error occurred while reading or if the stream contains invalid data. + * @throws ClassNotFoundException If the class serialized on the stream is not on the classpath. */ private void readObject(final ObjectInputStream in) throws IOException, ClassNotFoundException { in.defaultReadObject(); Modified: sis/trunk/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultMetadata.java URL: http://svn.apache.org/viewvc/sis/trunk/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultMetadata.java?rev=1656499&r1=1656498&r2=1656499&view=diff ============================================================================== --- sis/trunk/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultMetadata.java [UTF-8] (original) +++ sis/trunk/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultMetadata.java [UTF-8] Mon Feb 2 15:49:48 2015 @@ -853,7 +853,7 @@ public class DefaultMetadata extends ISO * * @return Date that the metadata was created, or {@code null}. * - * @deprecated As of ISO 19115:2014, replaced by {@link #getDates()}. + * @deprecated As of ISO 19115:2014, replaced by {@link #getDateInfo()}. */ @Override @Deprecated @@ -875,7 +875,7 @@ public class DefaultMetadata extends ISO * * @param newValue The new date stamp. * - * @deprecated As of ISO 19115:2014, replaced by {@link #setDates(Collection)}. + * @deprecated As of ISO 19115:2014, replaced by {@link #setDateInfo(Collection)}. */ @Deprecated public void setDateStamp(final Date newValue) { Modified: sis/trunk/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/lineage/DefaultSource.java URL: http://svn.apache.org/viewvc/sis/trunk/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/lineage/DefaultSource.java?rev=1656499&r1=1656498&r2=1656499&view=diff ============================================================================== --- sis/trunk/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/lineage/DefaultSource.java [UTF-8] (original) +++ sis/trunk/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/lineage/DefaultSource.java [UTF-8] Mon Feb 2 15:49:48 2015 @@ -391,7 +391,7 @@ public class DefaultSource extends ISOMe * * @return Information about the extent of the source data. * - * @deprecated As of ISO 19115:2014, moved to {@link DefaultScope#getExtent()}. + * @deprecated As of ISO 19115:2014, moved to {@link DefaultScope#getExtents()}. */ @Override @Deprecated @@ -415,7 +415,7 @@ public class DefaultSource extends ISOMe * * @param newValues The new source extents. * - * @deprecated As of ISO 19115:2014, moved to {@link DefaultScope#setExtent(Extent)}. + * @deprecated As of ISO 19115:2014, moved to {@link DefaultScope#setExtents(Collection)}. */ @Deprecated public void setSourceExtents(final Collection<? extends Extent> newValues) { Modified: sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/internal/referencing/WKTUtilities.java URL: http://svn.apache.org/viewvc/sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/internal/referencing/WKTUtilities.java?rev=1656499&r1=1656498&r2=1656499&view=diff ============================================================================== --- sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/internal/referencing/WKTUtilities.java [UTF-8] (original) +++ sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/internal/referencing/WKTUtilities.java [UTF-8] Mon Feb 2 15:49:48 2015 @@ -187,6 +187,7 @@ public final class WKTUtilities extends * @param parameter The parameter to append to the WKT, or {@code null} if none. * @param formatter The formatter where to append the parameter. */ + @SuppressWarnings({"unchecked","rawtypes"}) // Not needed on JDK7 branch. public static void append(GeneralParameterValue parameter, final Formatter formatter) { if (parameter instanceof ParameterValueGroup) { boolean first = true; Modified: sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/parameter/ParameterValueList.java URL: http://svn.apache.org/viewvc/sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/parameter/ParameterValueList.java?rev=1656499&r1=1656498&r2=1656499&view=diff ============================================================================== --- sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/parameter/ParameterValueList.java [UTF-8] (original) +++ sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/parameter/ParameterValueList.java [UTF-8] Mon Feb 2 15:49:48 2015 @@ -329,6 +329,9 @@ final class ParameterValueList extends A /** * Trims the array to its capacity before to serialize. + * + * @param out The output stream where to serialize this object. + * @throws IOException If an I/O error occurred while writing. */ private void writeObject(final ObjectOutputStream out) throws IOException { values = ArraysExt.resize(values, size); Modified: sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/DefaultFormula.java URL: http://svn.apache.org/viewvc/sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/DefaultFormula.java?rev=1656499&r1=1656498&r2=1656499&view=diff ============================================================================== --- sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/DefaultFormula.java [UTF-8] (original) +++ sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/DefaultFormula.java [UTF-8] Mon Feb 2 15:49:48 2015 @@ -33,11 +33,20 @@ import org.apache.sis.internal.jdk7.Obje /** * Specification of the coordinate operation method formula. + * A formula may be {@linkplain #getFormula() given textually}, + * or may be a {@linkplain #getCitation() reference to a publication}. + * + * <p>{@code Formula} is for human reading. + * The object that actually does the work of applying formula to coordinate values is + * {@link org.opengis.referencing.operation.MathTransform}.</p> * * @author Martin Desruisseaux (Geomatys) * @version 0.5 * @since 0.5 * @module + * + * @see DefaultOperationMethod + * @see org.apache.sis.referencing.operation.transform.AbstractMathTransform */ public class DefaultFormula extends FormattableObject implements Formula, Serializable { /** Modified: sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/DefaultOperationMethod.java URL: http://svn.apache.org/viewvc/sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/DefaultOperationMethod.java?rev=1656499&r1=1656498&r2=1656499&view=diff ============================================================================== --- sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/DefaultOperationMethod.java [UTF-8] (original) +++ sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/DefaultOperationMethod.java [UTF-8] Mon Feb 2 15:49:48 2015 @@ -22,8 +22,10 @@ import java.util.Collections; import org.opengis.metadata.citation.Citation; import org.opengis.referencing.IdentifiedObject; import org.opengis.referencing.operation.Formula; +import org.opengis.referencing.operation.Projection; import org.opengis.referencing.operation.MathTransform; import org.opengis.referencing.operation.OperationMethod; +import org.opengis.referencing.operation.CoordinateOperation; import org.opengis.parameter.ParameterDescriptorGroup; import org.apache.sis.util.Utilities; import org.apache.sis.util.ComparisonMode; @@ -144,9 +146,9 @@ public class DefaultOperationMethod exte * with any number of dimensions (e.g. <cite>Affine Transform</cite>). * * @param properties Set of properties. Shall contain at least {@code "name"}. - * @param sourceDimension Number of dimensions in the source CRS of this operation method. - * @param targetDimension Number of dimensions in the target CRS of this operation method. - * @param parameters The set of parameters. + * @param sourceDimension Number of dimensions in the source CRS of this operation method, or {@code null}. + * @param targetDimension Number of dimensions in the target CRS of this operation method, or {@code null}. + * @param parameters Description of parameters expected by this operation. */ public DefaultOperationMethod(final Map<String,?> properties, final Integer sourceDimension, @@ -331,6 +333,36 @@ public class DefaultOperationMethod exte } /** + * Returns the base interface of the {@code CoordinateOperation} instances that use this method. + * The base {@code CoordinateOperation} interface is usually one of the following subtypes: + * + * <ul> + * <li>{@link org.opengis.referencing.operation.Transformation} + * if the coordinate operation has some errors (typically of a few metres) because of the empirical process by + * which the operation parameters were determined. Those errors do not depend on the floating point precision + * or the accuracy of the implementation algorithm.</li> + * <li>{@link org.opengis.referencing.operation.Conversion} + * if the coordinate operation is theoretically of infinite precision, ignoring the limitations of floating + * point arithmetic (including rounding errors) and the approximations implied by finite series expansions.</li> + * <li>{@link org.opengis.referencing.operation.Projection} + * if the coordinate operation is a conversion (as defined above) converting geodetic latitudes and longitudes + * to plane (map) coordinates. This type can optionally be refined with one of the + * {@link org.opengis.referencing.operation.CylindricalProjection}, + * {@link org.opengis.referencing.operation.ConicProjection} or + * {@link org.opengis.referencing.operation.PlanarProjection} subtypes.</li> + * </ul> + * + * In case of doubt, this method can conservatively return the base type. + * The default implementation returns {@code CoordinateOperation.class}, + * which is the most conservative return value. + * + * @return Interface implemented by all coordinate operations that use this method. + */ + public Class<? extends CoordinateOperation> getOperationType() { + return CoordinateOperation.class; + } + + /** * Formula(s) or procedure used by this operation method. This may be a reference to a * publication. Note that the operation method may not be analytic, in which case this * attribute references or contains the procedure, not an analytic formula. @@ -466,6 +498,29 @@ public class DefaultOperationMethod exte @Override protected String formatTo(final Formatter formatter) { super.formatTo(formatter); - return (formatter.getConvention().majorVersion() == 1) ? "Projection" : "Method"; + if (formatter.getConvention().majorVersion() == 1) { + /* + * The WKT 1 keyword is "PROJECTION", which imply that the operation method should be of type + * org.opengis.referencing.operation.Projection. So strictly speaking only the first check in + * the following 'if' statement is relevant. + * + * Unfortunately in many cases we do not know the operation type, because the method that we + * invoked - getOperationType() - is not a standard OGC/ISO property, so this information is + * usually not provided in XML documents for example. The user could also have instantiated + * DirectOperationMethod directly without creating a subclass. Consequently we also accept to + * format the keyword as "PROJECTION" if the operation type *could* be a projection. This is + * the second check in the following 'if' statement. + * + * In other words, the combination of those two checks exclude the following operation types: + * Transformation, ConcatenatedOperation, PassThroughOperation, or any user-defined type that + * do not extend Projection. All other operation types are accepted. + */ + final Class<? extends CoordinateOperation> type = getOperationType(); + if (Projection.class.isAssignableFrom(type) || type.isAssignableFrom(Projection.class)) { + return "Projection"; + } + formatter.setInvalidWKT(this, null); + } + return "Method"; } } Modified: sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/transform/AbstractMathTransform.java URL: http://svn.apache.org/viewvc/sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/transform/AbstractMathTransform.java?rev=1656499&r1=1656498&r2=1656499&view=diff ============================================================================== --- sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/transform/AbstractMathTransform.java [UTF-8] (original) +++ sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/transform/AbstractMathTransform.java [UTF-8] Mon Feb 2 15:49:48 2015 @@ -47,18 +47,23 @@ import static org.apache.sis.util.Argume /** * Provides a default implementation for most methods required by the {@link MathTransform} interface. - * {@code AbstractMathTransform} provides a convenient base class from which transform implementations + * A {@code MathTransform} is an object that actually does the work of applying a + * {@linkplain org.apache.sis.referencing.operation.DefaultFormula formula} to coordinate values. + * The math transform does not know or care how the coordinates relate to positions in the real world. + * For example if an affine transform scales <var>z</var> values by a factor of 1000, + * then it could be converting metres to millimetres, or it could be converting kilometres to metres. + * + * <p>{@code AbstractMathTransform} provides a convenient base class from which {@code MathTransform} implementations * can be easily derived. It also defines a few additional SIS-specific methods for convenience of performance. + * The simplest way to implement this abstract class is to provide an implementation for the following methods only:</p> * - * <p>The simplest way to implement this abstract class is to provide an implementation for the following methods - * only:</p> * <ul> * <li>{@link #getSourceDimensions()}</li> * <li>{@link #getTargetDimensions()}</li> * <li>{@link #transform(double[], int, double[], int, boolean)}</li> * </ul> * - * However more performance may be gained by overriding the other {@code transform} methods as well. + * However more performance may be gained by overriding the other {@code transform(…)} methods as well. * * {@section Immutability and thread safety} * All Apache SIS implementations of {@code MathTransform} are immutable and thread-safe. Modified: sis/trunk/core/sis-utility/src/main/java/org/apache/sis/internal/converter/ClassPair.java URL: http://svn.apache.org/viewvc/sis/trunk/core/sis-utility/src/main/java/org/apache/sis/internal/converter/ClassPair.java?rev=1656499&r1=1656498&r2=1656499&view=diff ============================================================================== --- sis/trunk/core/sis-utility/src/main/java/org/apache/sis/internal/converter/ClassPair.java [UTF-8] (original) +++ sis/trunk/core/sis-utility/src/main/java/org/apache/sis/internal/converter/ClassPair.java [UTF-8] Mon Feb 2 15:49:48 2015 @@ -86,10 +86,10 @@ class ClassPair<S,T> implements Serializ * * @return A key for the parent source, or {@code null}. */ + @SuppressWarnings({"unchecked","rawtypes"}) final ClassPair<? super S, T> parentSource() { final Class<? super S> source; if (sourceClass.isInterface()) { - @SuppressWarnings({"unchecked","rawtypes"}) final Class<? super S>[] interfaces = (Class[]) sourceClass.getInterfaces(); if (interfaces.length == 0) { return null; Modified: sis/trunk/core/sis-utility/src/main/java/org/apache/sis/internal/converter/CollectionConverter.java URL: http://svn.apache.org/viewvc/sis/trunk/core/sis-utility/src/main/java/org/apache/sis/internal/converter/CollectionConverter.java?rev=1656499&r1=1656498&r2=1656499&view=diff ============================================================================== --- sis/trunk/core/sis-utility/src/main/java/org/apache/sis/internal/converter/CollectionConverter.java [UTF-8] (original) +++ sis/trunk/core/sis-utility/src/main/java/org/apache/sis/internal/converter/CollectionConverter.java [UTF-8] Mon Feb 2 15:49:48 2015 @@ -71,6 +71,7 @@ abstract class CollectionConverter<T> ex } @Override + @SuppressWarnings({"unchecked","rawtypes"}) public java.util.List<?> apply(final Collection<?> source) { if (source == null) { return null; @@ -95,6 +96,7 @@ abstract class CollectionConverter<T> ex } @Override + @SuppressWarnings({"unchecked","rawtypes"}) public java.util.Set<?> apply(final Collection<?> source) { if (source == null) { return null; Modified: sis/trunk/core/sis-utility/src/main/java/org/apache/sis/internal/converter/ConverterRegistry.java URL: http://svn.apache.org/viewvc/sis/trunk/core/sis-utility/src/main/java/org/apache/sis/internal/converter/ConverterRegistry.java?rev=1656499&r1=1656498&r2=1656499&view=diff ============================================================================== --- sis/trunk/core/sis-utility/src/main/java/org/apache/sis/internal/converter/ConverterRegistry.java [UTF-8] (original) +++ sis/trunk/core/sis-utility/src/main/java/org/apache/sis/internal/converter/ConverterRegistry.java [UTF-8] Mon Feb 2 15:49:48 2015 @@ -243,6 +243,7 @@ public class ConverterRegistry { * @param <T> The class of target (converted) values. * @param converter The converter to register. */ + @SuppressWarnings({"unchecked","rawtypes"}) public <S,T> void register(final ObjectConverter<S,T> converter) { ArgumentChecks.ensureNonNull("converter", converter); /* Modified: sis/trunk/core/sis-utility/src/main/java/org/apache/sis/measure/Range.java URL: http://svn.apache.org/viewvc/sis/trunk/core/sis-utility/src/main/java/org/apache/sis/measure/Range.java?rev=1656499&r1=1656498&r2=1656499&view=diff ============================================================================== --- sis/trunk/core/sis-utility/src/main/java/org/apache/sis/measure/Range.java [UTF-8] (original) +++ sis/trunk/core/sis-utility/src/main/java/org/apache/sis/measure/Range.java [UTF-8] Mon Feb 2 15:49:48 2015 @@ -606,6 +606,7 @@ public class Range<E extends Comparable< * only one digit. This method assumes that we have verified that the element type * is an integer type before to invoke this method. */ + @SuppressWarnings("unchecked") private static boolean isCompact(final Comparable<?> value, final boolean ifNull) { if (value == null) { return ifNull; Modified: sis/trunk/core/sis-utility/src/main/java/org/apache/sis/util/iso/AbstractFactory.java URL: http://svn.apache.org/viewvc/sis/trunk/core/sis-utility/src/main/java/org/apache/sis/util/iso/AbstractFactory.java?rev=1656499&r1=1656498&r2=1656499&view=diff ============================================================================== --- sis/trunk/core/sis-utility/src/main/java/org/apache/sis/util/iso/AbstractFactory.java [UTF-8] (original) +++ sis/trunk/core/sis-utility/src/main/java/org/apache/sis/util/iso/AbstractFactory.java [UTF-8] Mon Feb 2 15:49:48 2015 @@ -39,7 +39,7 @@ public abstract class AbstractFactory im /** * Returns the implementor of this factory, or {@code null} if unknown. * The default implementation tries to fetch this information from the - * manifest associated to the package of this class. + * manifest associated to the package of {@code this.getClass()}. * * @return The vendor for this factory implementation, or {@code null} if unknown. * Modified: sis/trunk/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultRecordType.java URL: http://svn.apache.org/viewvc/sis/trunk/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultRecordType.java?rev=1656499&r1=1656498&r2=1656499&view=diff ============================================================================== --- sis/trunk/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultRecordType.java [UTF-8] (original) +++ sis/trunk/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultRecordType.java [UTF-8] Mon Feb 2 15:49:48 2015 @@ -220,6 +220,10 @@ public class DefaultRecordType extends R /** * Invoked on deserialization for restoring the transient fields. * See {@link #writeObject(ObjectOutputStream)} for the stream data description. + * + * @param in The input stream from which to deserialize an object. + * @throws IOException If an I/O error occurred while reading or if the stream contains invalid data. + * @throws ClassNotFoundException If the class serialized on the stream is not on the classpath. */ private void readObject(final ObjectInputStream in) throws IOException, ClassNotFoundException { in.defaultReadObject(); @@ -240,6 +244,9 @@ public class DefaultRecordType extends R * * @serialData The number of members as an {@code int}, followed by a * ({@code MemberName}, {@code Type}) pair for each member. + * + * @param out The output stream where to serialize this object. + * @throws IOException If an I/O error occurred while writing. */ private void writeObject(final ObjectOutputStream out) throws IOException { final int size = size(); Modified: sis/trunk/core/sis-utility/src/main/java/org/apache/sis/util/iso/RecordDefinition.java URL: http://svn.apache.org/viewvc/sis/trunk/core/sis-utility/src/main/java/org/apache/sis/util/iso/RecordDefinition.java?rev=1656499&r1=1656498&r2=1656499&view=diff ============================================================================== --- sis/trunk/core/sis-utility/src/main/java/org/apache/sis/util/iso/RecordDefinition.java [UTF-8] (original) +++ sis/trunk/core/sis-utility/src/main/java/org/apache/sis/util/iso/RecordDefinition.java [UTF-8] Mon Feb 2 15:49:48 2015 @@ -86,6 +86,10 @@ abstract class RecordDefinition { // Int /** * Invoked on deserialization for restoring the transient fields. + * + * @param in The input stream from which to deserialize an attribute. + * @throws IOException If an I/O error occurred while reading or if the stream contains invalid data. + * @throws ClassNotFoundException If the class serialized on the stream is not on the classpath. */ private void readObject(final ObjectInputStream in) throws IOException, ClassNotFoundException { in.defaultReadObject(); Modified: sis/trunk/core/sis-utility/src/main/java/org/apache/sis/util/resources/ResourceInternationalString.java URL: http://svn.apache.org/viewvc/sis/trunk/core/sis-utility/src/main/java/org/apache/sis/util/resources/ResourceInternationalString.java?rev=1656499&r1=1656498&r2=1656499&view=diff ============================================================================== --- sis/trunk/core/sis-utility/src/main/java/org/apache/sis/util/resources/ResourceInternationalString.java [UTF-8] (original) +++ sis/trunk/core/sis-utility/src/main/java/org/apache/sis/util/resources/ResourceInternationalString.java [UTF-8] Mon Feb 2 15:49:48 2015 @@ -148,6 +148,9 @@ abstract class ResourceInternationalStri /** * Serializes this international string using the key name rather than numerical value. + * + * @param out The output stream where to serialize this object. + * @throws IOException If an I/O error occurred while writing. */ private void writeObject(final ObjectOutputStream out) throws IOException { out.defaultWriteObject(); @@ -156,6 +159,10 @@ abstract class ResourceInternationalStri /** * Deserializes an object serialized by {@link #writeObject(ObjectOutputStream)}. + * + * @param in The input stream from which to deserialize an object. + * @throws IOException If an I/O error occurred while reading or if the stream contains invalid data. + * @throws ClassNotFoundException If the class serialized on the stream is not on the classpath. */ private void readObject(final ObjectInputStream in) throws IOException, ClassNotFoundException { in.defaultReadObject(); Modified: sis/trunk/core/sis-utility/src/test/java/org/apache/sis/test/XMLComparator.java URL: http://svn.apache.org/viewvc/sis/trunk/core/sis-utility/src/test/java/org/apache/sis/test/XMLComparator.java?rev=1656499&r1=1656498&r2=1656499&view=diff ============================================================================== --- sis/trunk/core/sis-utility/src/test/java/org/apache/sis/test/XMLComparator.java [UTF-8] (original) +++ sis/trunk/core/sis-utility/src/test/java/org/apache/sis/test/XMLComparator.java [UTF-8] Mon Feb 2 15:49:48 2015 @@ -664,6 +664,7 @@ public strictfp class XMLComparator { * returns {@code NaN}. This is used only if a {@linkplain #tolerance} threshold greater * than zero has been provided. */ + @SuppressWarnings("unchecked") private static double doubleValue(final Comparable<?> property) { if (property instanceof Number) { return ((Number) property).doubleValue(); Modified: sis/trunk/pom.xml URL: http://svn.apache.org/viewvc/sis/trunk/pom.xml?rev=1656499&r1=1656498&r2=1656499&view=diff ============================================================================== --- sis/trunk/pom.xml (original) +++ sis/trunk/pom.xml Mon Feb 2 15:49:48 2015 @@ -423,6 +423,26 @@ Apache SIS is a free software, Java lang <maven.compiler.optimize>true</maven.compiler.optimize> </properties> </profile> + <profile> + <activation> + <property> + <name>bootclasspath</name> + </property> + </activation> + <build> + <plugins> + <plugin> + <artifactId>maven-compiler-plugin</artifactId> + <configuration> + <compilerArgs> + <arg>-bootclasspath</arg> + <arg>${bootclasspath}</arg> + </compilerArgs> + </configuration> + </plugin> + </plugins> + </build> + </profile> </profiles> @@ -442,6 +462,9 @@ Apache SIS is a free software, Java lang <target>${maven.compile.target}</target> <encoding>${project.build.sourceEncoding}</encoding> <useIncrementalCompilation>false</useIncrementalCompilation> <!-- https://jira.codehaus.org/browse/MCOMPILER-209 --> + <compilerArgs> + <arg>-Xlint</arg> + </compilerArgs> </configuration> </plugin>