Author: desruisseaux
Date: Fri Jun 14 16:44:36 2013
New Revision: 1493150
URL: http://svn.apache.org/r1493150
Log:
Replaced JCIP dependency by our own @Immutable and @ThreadSafe annotation for documentation purpose only.
The intend is to avoid a trivial dependency which is very easy to avoid, to avoid the Retention.RUNTIME
(we use Retention.SOURCE instead), and also because we noticed that some NetCDF library versions (at least
the first mavenified ones) were bundling a copy of JCIP in their JAR, which was a potential source of conflict
(probably harmless in practice).
Added:
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/Immutable.java (with props)
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/ThreadSafe.java (with props)
Modified:
sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/MetadataStandard.java
sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/ModifiableMetadata.java
sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/PropertyAccessor.java
sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/PropertyInformation.java
sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/ISOMetadata.java
sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/ImmutableIdentifier.java
sis/branches/JDK7/core/sis-referencing/pom.xml
sis/branches/JDK7/core/sis-referencing/src/main/java/org/apache/sis/geometry/ImmutableEnvelope.java
sis/branches/JDK7/core/sis-utility/pom.xml
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/AngleConverter.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/CharSequenceConverter.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/ClassPair.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/CollectionConverter.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/ConverterRegistry.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/DateConverter.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/FallbackConverter.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/IdentityConverter.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/NumberConverter.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/ObjectToString.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/PathConverter.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/StringConverter.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/SystemRegistry.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/util/Cloner.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/io/ClassFormat.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/io/CompoundFormat.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/io/DefaultFormat.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/io/TabularFormat.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/Angle.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/AngleFormat.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/Latitude.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/Longitude.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/MeasurementRange.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/NumberRange.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/Range.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/SexagesimalConverter.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/Static.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/Version.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/Cache.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/CacheEntries.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/CodeListSet.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/DefaultTreeTable.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/RangeSet.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/TreeNodeList.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/TreeTableFormat.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/WeakHashSet.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/WeakValueHashMap.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/AbstractName.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultInternationalString.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultLocalName.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultMemberName.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultNameFactory.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultNameSpace.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultScopedName.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultTypeName.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/GlobalNameSpace.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/ResourceInternationalString.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/SimpleInternationalString.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/LoggerFactory.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/MonolineFormatter.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/logging/WarningListeners.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/IndexedResourceBundle.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/resources/ResourceInternationalString.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/MarshallerPool.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/NilReason.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/OGCNamespacePrefixMapper.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/OGCNamespacePrefixMapper_Endorsed.java
sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/XLink.java
sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/test/TestRunner.java
sis/branches/JDK7/ide-project/NetBeans/nbproject/project.properties
sis/branches/JDK7/ide-project/eclipse/classpath
sis/branches/JDK7/pom.xml
Modified: sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/MetadataStandard.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/MetadataStandard.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/MetadataStandard.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/MetadataStandard.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -26,11 +26,11 @@ import java.io.IOException;
import java.io.Serializable;
import java.io.ObjectInputStream;
import java.lang.reflect.Field;
-import net.jcip.annotations.ThreadSafe;
import org.opengis.metadata.citation.Citation;
import org.opengis.metadata.ExtendedElementInformation;
import org.opengis.referencing.ReferenceIdentifier;
import org.apache.sis.util.Classes;
+import org.apache.sis.util.ThreadSafe;
import org.apache.sis.util.ComparisonMode;
import org.apache.sis.util.resources.Errors;
import org.apache.sis.util.collection.TreeTable;
Modified: sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/ModifiableMetadata.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/ModifiableMetadata.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/ModifiableMetadata.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/ModifiableMetadata.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -21,8 +21,8 @@ import java.util.List;
import java.util.Collection;
import java.util.Collections;
import java.util.NoSuchElementException;
-import net.jcip.annotations.ThreadSafe;
import org.opengis.util.CodeList;
+import org.apache.sis.util.ThreadSafe;
import org.apache.sis.util.logging.Logging;
import org.apache.sis.util.resources.Errors;
import org.apache.sis.internal.util.CheckedHashSet;
Modified: sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/PropertyAccessor.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/PropertyAccessor.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/PropertyAccessor.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/PropertyAccessor.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -26,7 +26,6 @@ import java.util.Iterator;
import java.util.Collection;
import java.lang.reflect.Method;
import java.lang.reflect.InvocationTargetException;
-import net.jcip.annotations.ThreadSafe;
import org.opengis.annotation.UML;
import org.opengis.metadata.citation.Citation;
import org.opengis.metadata.ExtendedElementInformation;
@@ -37,6 +36,7 @@ import org.apache.sis.util.Classes;
import org.apache.sis.util.Numbers;
import org.apache.sis.util.ArraysExt;
import org.apache.sis.util.Utilities;
+import org.apache.sis.util.ThreadSafe;
import org.apache.sis.util.Workaround;
import org.apache.sis.util.CharSequences;
import org.apache.sis.util.ComparisonMode;
Modified: sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/PropertyInformation.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/PropertyInformation.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/PropertyInformation.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/PropertyInformation.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -20,7 +20,6 @@ import java.util.Locale;
import java.util.Collection;
import java.util.Collections;
import java.lang.reflect.Method;
-import net.jcip.annotations.Immutable;
import org.opengis.annotation.UML;
import org.opengis.metadata.Datatype;
import org.opengis.metadata.Obligation;
@@ -33,6 +32,7 @@ import org.apache.sis.internal.simple.Si
import org.apache.sis.measure.ValueRange;
import org.apache.sis.util.iso.Types;
import org.apache.sis.util.Numbers;
+import org.apache.sis.util.Immutable;
import org.apache.sis.util.collection.CheckedContainer;
import org.apache.sis.util.logging.Logging;
Modified: sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/ISOMetadata.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/ISOMetadata.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/ISOMetadata.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/ISOMetadata.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -19,7 +19,6 @@ package org.apache.sis.metadata.iso;
import java.util.Collection;
import java.util.logging.Logger;
import java.io.Serializable;
-import net.jcip.annotations.ThreadSafe;
import org.opengis.metadata.Identifier;
import org.apache.sis.xml.IdentifierMap;
import org.apache.sis.xml.IdentifiedObject;
@@ -28,6 +27,7 @@ import org.apache.sis.metadata.Modifiabl
import org.apache.sis.internal.jaxb.IdentifierMapWithSpecialCases;
import org.apache.sis.util.logging.Logging;
import org.apache.sis.util.ArgumentChecks;
+import org.apache.sis.util.ThreadSafe;
/**
Modified: sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/ImmutableIdentifier.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/ImmutableIdentifier.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/ImmutableIdentifier.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/ImmutableIdentifier.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -24,13 +24,13 @@ import java.io.Serializable;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
-import net.jcip.annotations.Immutable;
import org.opengis.metadata.Identifier;
import org.opengis.metadata.citation.Citation;
import org.opengis.parameter.InvalidParameterValueException;
import org.opengis.referencing.ReferenceIdentifier;
import org.opengis.util.InternationalString;
import org.apache.sis.util.Locales;
+import org.apache.sis.util.Immutable;
import org.apache.sis.util.Deprecable;
import org.apache.sis.util.CharSequences;
import org.apache.sis.util.logging.Logging;
Modified: sis/branches/JDK7/core/sis-referencing/pom.xml
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-referencing/pom.xml?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-referencing/pom.xml (original)
+++ sis/branches/JDK7/core/sis-referencing/pom.xml Fri Jun 14 16:44:36 2013
@@ -112,10 +112,6 @@ Implementations of Coordinate Reference
<groupId>org.opengis</groupId>
<artifactId>geoapi-conformance</artifactId>
</dependency>
- <dependency>
- <groupId>net.jcip</groupId>
- <artifactId>jcip-annotations</artifactId>
- </dependency>
<!-- Test dependencies -->
<dependency>
Modified: sis/branches/JDK7/core/sis-referencing/src/main/java/org/apache/sis/geometry/ImmutableEnvelope.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-referencing/src/main/java/org/apache/sis/geometry/ImmutableEnvelope.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-referencing/src/main/java/org/apache/sis/geometry/ImmutableEnvelope.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-referencing/src/main/java/org/apache/sis/geometry/ImmutableEnvelope.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -22,13 +22,13 @@ package org.apache.sis.geometry;
* force installation of the Java2D module (e.g. JavaFX/SWT).
*/
import java.io.Serializable;
-import net.jcip.annotations.Immutable;
import org.opengis.geometry.Envelope;
import org.opengis.geometry.DirectPosition;
import org.opengis.geometry.MismatchedDimensionException;
import org.opengis.geometry.MismatchedReferenceSystemException;
import org.opengis.referencing.crs.CoordinateReferenceSystem;
import org.opengis.metadata.extent.GeographicBoundingBox;
+import org.apache.sis.util.Immutable;
import static org.apache.sis.util.ArgumentChecks.ensureDimensionMatches;
Modified: sis/branches/JDK7/core/sis-utility/pom.xml
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/pom.xml?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/pom.xml (original)
+++ sis/branches/JDK7/core/sis-utility/pom.xml Fri Jun 14 16:44:36 2013
@@ -173,10 +173,6 @@ Miscellaneous utilities.
<groupId>org.opengis</groupId>
<artifactId>geoapi-conformance</artifactId>
</dependency>
- <dependency>
- <groupId>net.jcip</groupId>
- <artifactId>jcip-annotations</artifactId>
- </dependency>
<!-- Optional dependencies (provided scope) -->
<dependency>
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/AngleConverter.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/AngleConverter.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/AngleConverter.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/AngleConverter.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -17,8 +17,8 @@
package org.apache.sis.internal.converter;
import java.util.Set;
-import net.jcip.annotations.Immutable;
import org.apache.sis.measure.Angle;
+import org.apache.sis.util.Immutable;
import org.apache.sis.util.ObjectConverter;
import org.apache.sis.math.FunctionProperty;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/CharSequenceConverter.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/CharSequenceConverter.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/CharSequenceConverter.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/CharSequenceConverter.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -18,7 +18,7 @@ package org.apache.sis.internal.converte
import java.util.EnumSet;
import java.util.Set;
-import net.jcip.annotations.Immutable;
+import org.apache.sis.util.Immutable;
import org.apache.sis.util.ObjectConverter;
import org.apache.sis.math.FunctionProperty;
import org.apache.sis.util.UnconvertibleObjectException;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/ClassPair.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/ClassPair.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/ClassPair.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/ClassPair.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -17,8 +17,8 @@
package org.apache.sis.internal.converter;
import java.io.Serializable;
-import net.jcip.annotations.Immutable;
import org.apache.sis.util.ObjectConverter;
+import org.apache.sis.util.Immutable;
import org.apache.sis.util.Debug;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/CollectionConverter.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/CollectionConverter.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/CollectionConverter.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/CollectionConverter.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -20,7 +20,7 @@ import java.util.Collection;
import java.util.ArrayList;
import java.util.EnumSet;
import java.util.LinkedHashSet;
-import net.jcip.annotations.Immutable;
+import org.apache.sis.util.Immutable;
import org.apache.sis.math.FunctionProperty;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/ConverterRegistry.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/ConverterRegistry.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/ConverterRegistry.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/ConverterRegistry.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -18,9 +18,9 @@ package org.apache.sis.internal.converte
import java.util.Map;
import java.util.LinkedHashMap;
-import net.jcip.annotations.ThreadSafe;
import org.apache.sis.util.Debug;
import org.apache.sis.util.Classes;
+import org.apache.sis.util.ThreadSafe;
import org.apache.sis.util.ArgumentChecks;
import org.apache.sis.util.ObjectConverter;
import org.apache.sis.util.UnconvertibleObjectException;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/DateConverter.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/DateConverter.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/DateConverter.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/DateConverter.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -19,7 +19,7 @@ package org.apache.sis.internal.converte
import java.util.Date;
import java.util.Set;
import java.util.EnumSet;
-import net.jcip.annotations.Immutable;
+import org.apache.sis.util.Immutable;
import org.apache.sis.util.ObjectConverter;
import org.apache.sis.math.FunctionProperty;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/FallbackConverter.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/FallbackConverter.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/FallbackConverter.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/FallbackConverter.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -20,7 +20,7 @@ import java.util.Arrays;
import java.util.Set;
import java.util.EnumSet;
import java.util.Iterator;
-import net.jcip.annotations.Immutable;
+import org.apache.sis.util.Immutable;
import org.apache.sis.util.Classes;
import org.apache.sis.util.ObjectConverter;
import org.apache.sis.math.FunctionProperty;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/IdentityConverter.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/IdentityConverter.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/IdentityConverter.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/IdentityConverter.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -18,7 +18,7 @@ package org.apache.sis.internal.converte
import java.util.Set;
import java.util.EnumSet;
-import net.jcip.annotations.Immutable;
+import org.apache.sis.util.Immutable;
import org.apache.sis.util.ObjectConverter;
import org.apache.sis.math.FunctionProperty;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/NumberConverter.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/NumberConverter.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/NumberConverter.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/NumberConverter.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -18,7 +18,7 @@ package org.apache.sis.internal.converte
import java.util.Set;
import java.util.EnumSet;
-import net.jcip.annotations.Immutable;
+import org.apache.sis.util.Immutable;
import org.apache.sis.util.Numbers;
import org.apache.sis.math.FunctionProperty;
import org.apache.sis.util.ObjectConverter;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/ObjectToString.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/ObjectToString.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/ObjectToString.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/ObjectToString.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -18,7 +18,7 @@ package org.apache.sis.internal.converte
import java.util.Set;
import java.util.EnumSet;
-import net.jcip.annotations.Immutable;
+import org.apache.sis.util.Immutable;
import org.apache.sis.util.ObjectConverter;
import org.apache.sis.math.FunctionProperty;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/PathConverter.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/PathConverter.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/PathConverter.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/PathConverter.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -23,8 +23,8 @@ import java.net.URL;
import java.net.URI;
import java.net.MalformedURLException;
import java.net.URISyntaxException;
-import net.jcip.annotations.Immutable;
import org.apache.sis.math.FunctionProperty;
+import org.apache.sis.util.Immutable;
import org.apache.sis.util.ObjectConverter;
import org.apache.sis.util.UnconvertibleObjectException;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/StringConverter.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/StringConverter.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/StringConverter.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/StringConverter.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -22,11 +22,10 @@ import java.nio.charset.UnsupportedChars
import java.net.URISyntaxException;
import java.net.MalformedURLException;
import java.nio.file.InvalidPathException;
-import net.jcip.annotations.Immutable;
-
import org.apache.sis.math.FunctionProperty;
import org.apache.sis.util.Locales;
import org.apache.sis.util.Numbers;
+import org.apache.sis.util.Immutable;
import org.apache.sis.util.CharSequences;
import org.apache.sis.util.ObjectConverter;
import org.apache.sis.util.UnconvertibleObjectException;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/SystemRegistry.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/SystemRegistry.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/SystemRegistry.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/converter/SystemRegistry.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -19,8 +19,8 @@ package org.apache.sis.internal.converte
import java.util.Date;
import java.util.ServiceLoader;
import org.opengis.util.CodeList;
-import net.jcip.annotations.ThreadSafe;
import org.apache.sis.util.Numbers;
+import org.apache.sis.util.ThreadSafe;
import org.apache.sis.util.ObjectConverter;
import org.apache.sis.util.UnconvertibleObjectException;
import org.apache.sis.internal.system.SystemListener;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/util/Cloner.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/util/Cloner.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/util/Cloner.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/internal/util/Cloner.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -18,7 +18,6 @@ package org.apache.sis.internal.util;
import java.lang.reflect.Method;
import java.lang.reflect.InvocationTargetException;
-import net.jcip.annotations.NotThreadSafe;
import org.apache.sis.util.Workaround;
import org.apache.sis.util.resources.Errors;
@@ -32,7 +31,6 @@ import org.apache.sis.util.resources.Err
* @version 0.3
* @module
*/
-@NotThreadSafe
@Workaround(library="JDK", version="1.7")
public class Cloner {
/**
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/io/ClassFormat.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/io/ClassFormat.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/io/ClassFormat.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/io/ClassFormat.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -20,7 +20,7 @@ import java.text.Format;
import java.text.FieldPosition;
import java.text.ParsePosition;
import java.io.InvalidObjectException;
-import net.jcip.annotations.ThreadSafe;
+import org.apache.sis.util.ThreadSafe;
import org.apache.sis.util.Classes;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/io/CompoundFormat.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/io/CompoundFormat.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/io/CompoundFormat.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/io/CompoundFormat.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -29,7 +29,6 @@ import java.text.ParsePosition;
import java.text.NumberFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
-import net.jcip.annotations.NotThreadSafe;
import org.apache.sis.measure.Angle;
import org.apache.sis.measure.AngleFormat;
@@ -73,7 +72,6 @@ import org.apache.sis.internal.util.Loca
* @version 0.3
* @module
*/
-@NotThreadSafe
public abstract class CompoundFormat<T> extends Format implements Localized {
/**
* For cross-version compatibility.
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/io/DefaultFormat.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/io/DefaultFormat.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/io/DefaultFormat.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/io/DefaultFormat.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -21,8 +21,8 @@ import java.text.FieldPosition;
import java.text.ParsePosition;
import java.text.ParseException;
import java.io.InvalidObjectException;
-import net.jcip.annotations.ThreadSafe;
import org.apache.sis.util.Numbers;
+import org.apache.sis.util.ThreadSafe;
import org.apache.sis.util.CharSequences;
import org.apache.sis.internal.util.LocalizedParseException;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/io/TabularFormat.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/io/TabularFormat.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/io/TabularFormat.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/io/TabularFormat.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -21,7 +21,6 @@ import java.util.TimeZone;
import java.text.ParsePosition;
import java.util.regex.Pattern;
import java.util.regex.Matcher;
-import net.jcip.annotations.NotThreadSafe;
import org.apache.sis.util.StringBuilders;
import org.apache.sis.util.ArgumentChecks;
import org.apache.sis.util.resources.Errors;
@@ -72,7 +71,6 @@ import org.apache.sis.util.resources.Err
*
* @see TableAppender
*/
-@NotThreadSafe
public abstract class TabularFormat<T> extends CompoundFormat<T> {
/**
* For cross-version compatibility.
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/Angle.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/Angle.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/Angle.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/Angle.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -23,7 +23,7 @@ import java.util.FormattableFlags;
import java.text.Format;
import java.text.ParseException;
import java.io.Serializable;
-import net.jcip.annotations.Immutable;
+import org.apache.sis.util.Immutable;
import org.apache.sis.internal.util.Utilities;
import static java.lang.Double.doubleToLongBits;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/AngleFormat.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/AngleFormat.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/AngleFormat.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/AngleFormat.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -25,8 +25,6 @@ import java.text.NumberFormat;
import java.text.DecimalFormat;
import java.text.DecimalFormatSymbols;
import java.text.AttributedCharacterIterator;
-import net.jcip.annotations.NotThreadSafe;
-
import org.apache.sis.util.Debug;
import org.apache.sis.util.Localized;
import org.apache.sis.util.ArgumentChecks;
@@ -106,7 +104,6 @@ import java.util.Objects;
* @see Latitude
* @see Longitude
*/
-@NotThreadSafe
public class AngleFormat extends Format implements Localized {
/**
* Serial number for inter-operability with different versions.
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/Latitude.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/Latitude.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/Latitude.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/Latitude.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -16,7 +16,7 @@
*/
package org.apache.sis.measure;
-import net.jcip.annotations.Immutable;
+import org.apache.sis.util.Immutable;
/**
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/Longitude.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/Longitude.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/Longitude.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/Longitude.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -16,7 +16,7 @@
*/
package org.apache.sis.measure;
-import net.jcip.annotations.Immutable;
+import org.apache.sis.util.Immutable;
/**
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/MeasurementRange.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/MeasurementRange.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/MeasurementRange.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/MeasurementRange.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -19,8 +19,8 @@ package org.apache.sis.measure;
import javax.measure.unit.Unit;
import javax.measure.converter.UnitConverter;
import javax.measure.converter.ConversionException;
-import net.jcip.annotations.Immutable;
import org.apache.sis.util.Numbers;
+import org.apache.sis.util.Immutable;
import org.apache.sis.util.resources.Errors;
// Related to JDK7
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/NumberRange.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/NumberRange.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/NumberRange.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/NumberRange.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -16,8 +16,8 @@
*/
package org.apache.sis.measure;
-import net.jcip.annotations.Immutable;
import org.apache.sis.util.Numbers;
+import org.apache.sis.util.Immutable;
import org.apache.sis.util.resources.Errors;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/Range.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/Range.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/Range.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/Range.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -21,10 +21,10 @@ import java.util.Formattable;
import java.util.FormattableFlags;
import java.io.Serializable;
import javax.measure.unit.Unit;
-import net.jcip.annotations.Immutable;
import org.apache.sis.internal.util.Utilities;
import org.apache.sis.util.collection.CheckedContainer;
import org.apache.sis.util.ArgumentChecks;
+import org.apache.sis.util.Immutable;
import org.apache.sis.util.Numbers;
// Related to JDK7
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/SexagesimalConverter.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/SexagesimalConverter.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/SexagesimalConverter.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/measure/SexagesimalConverter.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -20,7 +20,7 @@ import java.math.BigDecimal;
import java.math.MathContext;
import java.io.ObjectStreamException;
import javax.measure.converter.UnitConverter;
-import net.jcip.annotations.Immutable;
+import org.apache.sis.util.Immutable;
import org.apache.sis.util.resources.Errors;
import org.apache.sis.util.resources.Vocabulary;
@@ -42,8 +42,8 @@ import static org.apache.sis.math.MathFu
* @version 0.3
* @module
*/
-@Immutable // Intentionally not final.
-class SexagesimalConverter extends UnitConverter {
+@Immutable
+class SexagesimalConverter extends UnitConverter { // Intentionally not final.
/**
* Serial number for compatibility with different versions.
*/
Added: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/Immutable.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/Immutable.java?rev=1493150&view=auto
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/Immutable.java (added)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/Immutable.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -0,0 +1,44 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sis.util;
+
+import java.lang.annotation.Target;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.RetentionPolicy;
+
+
+/**
+ * Identifies immutable SIS classes for documentation purpose only.
+ * Classes identified by this annotation can be shared by many threads without the need for defensing cloning
+ * or synchronization. This property is not inherited - subclasses shall still document if they are immutable.
+ *
+ * {@note This annotation serves the same purpose than the <cite>Java Concurrency in Practice</cite> annotation,
+ * except that its used only at the source level instead of having runtime retention. This annotation is
+ * used exclusively for SIS documentation purpose and may be removed in any future SIS version.}
+ *
+ * @author Martin Desruisseaux (Geomatys)
+ * @since 0.3
+ * @version 0.3
+ * @module
+ */
+@Documented
+@Target(ElementType.TYPE)
+@Retention(RetentionPolicy.SOURCE)
+public @interface Immutable {
+}
Propchange: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/Immutable.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/Immutable.java
------------------------------------------------------------------------------
svn:mime-type = text/plain;charset=UTF-8
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/Static.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/Static.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/Static.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/Static.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -18,8 +18,8 @@ package org.apache.sis.util;
/**
- * Parent of classes that contain only static utility methods. This parent is for documentation
- * purpose only. The list below summarizes some of the utility classes:
+ * Parent of SIS classes that contain only static utility methods, for documentation purpose.
+ * The list below summarizes some of the utility classes:
*
* <table class="sis">
* <tr><th colspan="2">Classes of the Java language</th></tr>
Added: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/ThreadSafe.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/ThreadSafe.java?rev=1493150&view=auto
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/ThreadSafe.java (added)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/ThreadSafe.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -0,0 +1,44 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sis.util;
+
+import java.lang.annotation.Target;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.RetentionPolicy;
+
+
+/**
+ * Identifies thread-safe SIS classes for documentation purpose only.
+ * Classes identified by this annotation can be shared by many threads without the need for external synchronization.
+ * This property is not inherited - subclasses shall still document if they are thread-safe.
+ *
+ * {@note This annotation serves the same purpose than the <cite>Java Concurrency in Practice</cite> annotation,
+ * except that its used only at the source level instead of having runtime retention. This annotation is
+ * used exclusively for SIS documentation purpose and may be removed in any future SIS version.}
+ *
+ * @author Martin Desruisseaux (Geomatys)
+ * @since 0.3
+ * @version 0.3
+ * @module
+ */
+@Documented
+@Target(ElementType.TYPE)
+@Retention(RetentionPolicy.SOURCE)
+public @interface ThreadSafe {
+}
Propchange: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/ThreadSafe.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/ThreadSafe.java
------------------------------------------------------------------------------
svn:mime-type = text/plain;charset=UTF-8
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/Version.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/Version.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/Version.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/Version.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -18,7 +18,6 @@ package org.apache.sis.util;
import java.io.Serializable;
import java.util.StringTokenizer;
-import net.jcip.annotations.Immutable;
/**
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/Cache.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/Cache.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/Cache.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/Cache.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -28,8 +28,7 @@ import java.util.concurrent.locks.Reentr
import java.lang.ref.Reference;
import java.lang.ref.WeakReference;
import java.lang.ref.SoftReference;
-import net.jcip.annotations.GuardedBy;
-import net.jcip.annotations.ThreadSafe;
+import org.apache.sis.util.ThreadSafe;
import org.apache.sis.util.Disposable;
import org.apache.sis.util.ArgumentChecks;
import org.apache.sis.util.resources.Errors;
@@ -154,14 +153,12 @@ public class Cache<K,V> extends Abstract
*
* <p>Entries in this map are ordered from least-recently accessed to most-recently accessed.</p>
*/
- @GuardedBy("costs")
private final Map<K,Integer> costs;
/**
* The sum of all values in the {@link #costs} map. This field must be used in the
* same thread than {@link #costs}.
*/
- @GuardedBy("costs")
private long totalCost;
/**
@@ -769,7 +766,7 @@ public class Cache<K,V> extends Abstract
*/
final void adjustReferences(final K key, final V value) {
int cost = cost(value);
- synchronized (costs) {
+ synchronized (costs) { // Should not be needed, but done as a safety.
final Integer old = costs.put(key, cost);
if (old != null) {
cost -= old;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/CacheEntries.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/CacheEntries.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/CacheEntries.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/CacheEntries.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -23,8 +23,7 @@ import java.util.AbstractSet;
import java.util.AbstractMap.SimpleEntry;
import java.util.NoSuchElementException;
import java.lang.ref.Reference;
-
-import net.jcip.annotations.ThreadSafe;
+import org.apache.sis.util.ThreadSafe;
/**
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/CodeListSet.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/CodeListSet.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/CodeListSet.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/CodeListSet.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -23,7 +23,6 @@ import java.util.Iterator;
import java.util.NoSuchElementException;
import java.io.Serializable;
import java.lang.reflect.Modifier;
-import net.jcip.annotations.NotThreadSafe;
import org.opengis.util.CodeList;
import org.apache.sis.util.iso.Types;
import org.apache.sis.util.resources.Errors;
@@ -58,7 +57,6 @@ import org.apache.sis.util.resources.Err
*
* @see java.util.EnumSet
*/
-@NotThreadSafe
public class CodeListSet<E extends CodeList<E>> extends AbstractSet<E>
implements CheckedContainer<E>, Cloneable, Serializable
{
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/DefaultTreeTable.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/DefaultTreeTable.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/DefaultTreeTable.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/DefaultTreeTable.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -23,7 +23,6 @@ import java.util.LinkedHashMap;
import java.util.Collection;
import java.util.Collections;
import java.io.Serializable;
-import net.jcip.annotations.NotThreadSafe;
import org.apache.sis.util.ArgumentChecks;
import org.apache.sis.util.resources.Errors;
import org.apache.sis.internal.util.Cloner;
@@ -73,7 +72,6 @@ import java.util.Objects;
* @see Node
* @see TableColumn
*/
-@NotThreadSafe
public class DefaultTreeTable implements TreeTable, Cloneable, Serializable {
/**
* For cross-version compatibility.
@@ -324,7 +322,6 @@ public class DefaultTreeTable implements
* @see DefaultTreeTable
* @see TableColumn
*/
- @NotThreadSafe
public static class Node implements TreeTable.Node, Cloneable, Serializable {
/**
* For cross-version compatibility.
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/RangeSet.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/RangeSet.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/RangeSet.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/RangeSet.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -29,7 +29,6 @@ import java.util.SortedSet;
import java.util.AbstractSet;
import java.util.NoSuchElementException;
import java.util.ConcurrentModificationException;
-import net.jcip.annotations.NotThreadSafe;
import org.apache.sis.measure.NumberRange;
import org.apache.sis.measure.Range;
import org.apache.sis.util.ArraysExt;
@@ -108,7 +107,6 @@ import static org.apache.sis.util.Number
*
* @see Range
*/
-@NotThreadSafe
public class RangeSet<E extends Comparable<? super E>> extends AbstractSet<Range<E>>
implements CheckedContainer<Range<E>>, SortedSet<Range<E>>, Cloneable, Serializable
{
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/TreeNodeList.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/TreeNodeList.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/TreeNodeList.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/TreeNodeList.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -19,7 +19,6 @@ package org.apache.sis.util.collection;
import java.util.Arrays;
import java.util.AbstractList;
import java.io.Serializable;
-import net.jcip.annotations.NotThreadSafe;
import org.apache.sis.util.ArgumentChecks;
import org.apache.sis.util.resources.Errors;
@@ -62,7 +61,6 @@ import org.apache.sis.util.resources.Err
* @version 0.3
* @module
*/
-@NotThreadSafe
abstract class TreeNodeList extends AbstractList<TreeTable.Node>
implements CheckedContainer<TreeTable.Node>, Serializable
{
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/TreeTableFormat.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/TreeTableFormat.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/TreeTableFormat.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/TreeTableFormat.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -27,7 +27,6 @@ import java.text.Format;
import java.text.ParsePosition;
import java.text.ParseException;
import java.util.regex.Matcher;
-import net.jcip.annotations.NotThreadSafe;
import org.opengis.util.CodeList;
import org.opengis.util.InternationalString;
import org.apache.sis.io.LineAppender;
@@ -85,7 +84,6 @@ import static org.apache.sis.util.Charac
* @version 0.3
* @module
*/
-@NotThreadSafe
public class TreeTableFormat extends TabularFormat<TreeTable> {
/**
* For cross-version compatibility.
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/WeakHashSet.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/WeakHashSet.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/WeakHashSet.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/WeakHashSet.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -20,11 +20,10 @@ import java.util.Arrays;
import java.util.Iterator;
import java.util.AbstractSet;
import java.lang.reflect.Array;
-import net.jcip.annotations.ThreadSafe;
-
import org.apache.sis.util.Debug;
import org.apache.sis.util.ArraysExt;
import org.apache.sis.util.Utilities;
+import org.apache.sis.util.ThreadSafe;
import org.apache.sis.util.Workaround;
import org.apache.sis.util.ArgumentChecks;
import org.apache.sis.util.NullArgumentException;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/WeakValueHashMap.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/WeakValueHashMap.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/WeakValueHashMap.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/collection/WeakValueHashMap.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -24,11 +24,10 @@ import java.util.Iterator;
import java.util.Arrays;
import java.lang.reflect.Array;
import java.lang.ref.WeakReference;
-import net.jcip.annotations.ThreadSafe;
-
import org.apache.sis.util.Debug;
import org.apache.sis.util.ArraysExt;
import org.apache.sis.util.Utilities;
+import org.apache.sis.util.ThreadSafe;
import org.apache.sis.util.Workaround;
import org.apache.sis.util.NullArgumentException;
import org.apache.sis.util.resources.Errors;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/AbstractName.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/AbstractName.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/AbstractName.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/AbstractName.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -21,13 +21,13 @@ import java.util.Locale;
import java.util.Iterator;
import java.io.Serializable;
import javax.xml.bind.annotation.XmlType;
-import net.jcip.annotations.Immutable;
import org.opengis.util.NameSpace;
import org.opengis.util.LocalName;
import org.opengis.util.ScopedName;
import org.opengis.util.GenericName;
import org.opengis.util.InternationalString;
import org.apache.sis.util.resources.Errors;
+import org.apache.sis.util.Immutable;
// Related to JDK7
import java.util.Objects;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultInternationalString.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultInternationalString.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultInternationalString.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultInternationalString.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -26,9 +26,9 @@ import java.util.LinkedHashMap;
import java.util.Collections;
import java.util.Iterator;
import java.util.Locale;
-import net.jcip.annotations.ThreadSafe;
import org.opengis.util.InternationalString;
import org.apache.sis.util.Locales;
+import org.apache.sis.util.ThreadSafe;
import org.apache.sis.util.ArgumentChecks;
import org.apache.sis.util.resources.Errors;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultLocalName.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultLocalName.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultLocalName.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultLocalName.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -23,12 +23,12 @@ import java.io.ObjectStreamException;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
-import net.jcip.annotations.Immutable;
import org.opengis.util.NameSpace;
import org.opengis.util.LocalName;
import org.opengis.util.GenericName;
import org.opengis.util.InternationalString;
import org.apache.sis.xml.Namespaces;
+import org.apache.sis.util.Immutable;
import org.apache.sis.util.ArgumentChecks;
import org.apache.sis.internal.jaxb.gco.CharSequenceAdapter;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultMemberName.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultMemberName.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultMemberName.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultMemberName.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -18,10 +18,10 @@ package org.apache.sis.util.iso;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
-import net.jcip.annotations.Immutable;
import org.opengis.util.MemberName;
import org.opengis.util.NameSpace;
import org.opengis.util.TypeName;
+import org.apache.sis.util.Immutable;
import static org.apache.sis.util.ArgumentChecks.ensureNonNull;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultNameFactory.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultNameFactory.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultNameFactory.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultNameFactory.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -21,8 +21,6 @@ import java.util.List;
import java.util.Arrays;
import java.util.Locale;
import java.util.ArrayList;
-import net.jcip.annotations.ThreadSafe;
-
import org.opengis.util.TypeName;
import org.opengis.util.NameSpace;
import org.opengis.util.LocalName;
@@ -30,7 +28,7 @@ import org.opengis.util.MemberName;
import org.opengis.util.GenericName;
import org.opengis.util.NameFactory;
import org.opengis.util.InternationalString;
-
+import org.apache.sis.util.ThreadSafe;
import org.apache.sis.util.resources.Errors;
import org.apache.sis.util.NullArgumentException;
import org.apache.sis.util.collection.WeakHashSet;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultNameSpace.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultNameSpace.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultNameSpace.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultNameSpace.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -22,12 +22,12 @@ import java.util.ListIterator;
import java.util.Locale;
import java.io.Serializable;
import java.io.ObjectStreamException;
-import net.jcip.annotations.Immutable;
import org.opengis.util.NameSpace;
import org.opengis.util.LocalName;
import org.opengis.util.ScopedName;
import org.opengis.util.GenericName;
import org.opengis.util.InternationalString;
+import org.apache.sis.util.Immutable;
import org.apache.sis.util.collection.WeakValueHashMap;
import org.apache.sis.internal.util.UnmodifiableArrayList;
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultScopedName.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultScopedName.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultScopedName.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/util/iso/DefaultScopedName.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -21,12 +21,12 @@ import java.util.Iterator;
import java.util.ConcurrentModificationException;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
-import net.jcip.annotations.Immutable;
import org.opengis.util.NameSpace;
import org.opengis.util.LocalName;
import org.opengis.util.ScopedName;
import org.opengis.util.GenericName;
import org.opengis.util.InternationalString;
+import org.apache.sis.util.Immutable;
import org.apache.sis.util.ArgumentChecks;
import org.apache.sis.util.resources.Errors;
import org.apache.sis.internal.util.UnmodifiableArrayList;
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=1493150&r1=1493149&r2=1493150&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] Fri Jun 14 16:44:36 2013
@@ -17,9 +17,9 @@
package org.apache.sis.util.iso;
import javax.xml.bind.annotation.XmlRootElement;
-import net.jcip.annotations.Immutable;
import org.opengis.util.TypeName;
import org.opengis.util.NameSpace;
+import org.apache.sis.util.Immutable;
/**
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=1493150&r1=1493149&r2=1493150&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] Fri Jun 14 16:44:36 2013
@@ -17,7 +17,7 @@
package org.apache.sis.util.iso;
import java.io.ObjectStreamException;
-import net.jcip.annotations.Immutable;
+import org.apache.sis.util.Immutable;
/**
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=1493150&r1=1493149&r2=1493150&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] Fri Jun 14 16:44:36 2013
@@ -21,7 +21,7 @@ import java.util.Locale;
import java.util.Properties;
import java.util.ResourceBundle;
import java.util.MissingResourceException;
-import net.jcip.annotations.Immutable;
+import org.apache.sis.util.Immutable;
import static org.apache.sis.util.ArgumentChecks.ensureNonNull;
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=1493150&r1=1493149&r2=1493150&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] Fri Jun 14 16:44:36 2013
@@ -21,7 +21,7 @@ import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.util.Locale;
-import net.jcip.annotations.Immutable;
+import org.apache.sis.util.Immutable;
import static org.apache.sis.util.ArgumentChecks.ensureNonNull;
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=1493150&r1=1493149&r2=1493150&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] Fri Jun 14 16:44:36 2013
@@ -17,7 +17,7 @@
package org.apache.sis.util.logging;
import java.util.logging.Logger;
-import net.jcip.annotations.ThreadSafe;
+import org.apache.sis.util.ThreadSafe;
import org.apache.sis.util.collection.WeakValueHashMap;
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=1493150&r1=1493149&r2=1493150&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] Fri Jun 14 16:44:36 2013
@@ -29,13 +29,13 @@ import java.util.TreeMap;
import java.util.SortedMap;
import java.util.Comparator;
import java.util.logging.*;
-import net.jcip.annotations.ThreadSafe;
import org.apache.sis.internal.system.OS;
import org.apache.sis.internal.util.X364;
import org.apache.sis.io.IO;
import org.apache.sis.io.LineAppender;
import org.apache.sis.util.CharSequences;
import org.apache.sis.util.Configuration;
+import org.apache.sis.util.ThreadSafe;
import org.apache.sis.util.Debug;
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=1493150&r1=1493149&r2=1493150&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] Fri Jun 14 16:44:36 2013
@@ -21,8 +21,8 @@ import java.util.logging.Level;
import java.util.logging.Logger;
import java.util.logging.LogRecord;
import java.util.NoSuchElementException;
-import net.jcip.annotations.ThreadSafe;
import org.apache.sis.util.Localized;
+import org.apache.sis.util.ThreadSafe;
import org.apache.sis.util.Exceptions;
import org.apache.sis.util.ArgumentChecks;
import org.apache.sis.util.resources.Errors;
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=1493150&r1=1493149&r2=1493150&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] Fri Jun 14 16:44:36 2013
@@ -28,13 +28,11 @@ import java.util.NoSuchElementException;
import java.util.ResourceBundle;
import java.util.logging.Level;
import java.util.logging.LogRecord;
-import net.jcip.annotations.ThreadSafe;
-
import org.opengis.util.InternationalString;
-
import org.apache.sis.util.Debug;
import org.apache.sis.util.Classes;
import org.apache.sis.util.Localized;
+import org.apache.sis.util.ThreadSafe;
import org.apache.sis.util.Exceptions;
import org.apache.sis.util.CharSequences;
import org.apache.sis.util.logging.Logging;
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=1493150&r1=1493149&r2=1493150&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] Fri Jun 14 16:44:36 2013
@@ -23,7 +23,7 @@ import java.io.InvalidObjectException;
import java.io.IOException;
import java.util.Locale;
import java.util.MissingResourceException;
-import net.jcip.annotations.Immutable;
+import org.apache.sis.util.Immutable;
import org.apache.sis.util.Utilities;
import org.apache.sis.util.ArgumentChecks;
import org.apache.sis.util.iso.AbstractInternationalString;
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=1493150&r1=1493149&r2=1493150&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] Fri Jun 14 16:44:36 2013
@@ -24,7 +24,7 @@ import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Marshaller;
import javax.xml.bind.Unmarshaller;
-import net.jcip.annotations.ThreadSafe;
+import org.apache.sis.util.ThreadSafe;
import org.apache.sis.util.logging.Logging;
import org.apache.sis.internal.system.DelayedExecutor;
import org.apache.sis.internal.system.DelayedRunnable;
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=1493150&r1=1493149&r2=1493150&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] Fri Jun 14 16:44:36 2013
@@ -21,7 +21,7 @@ import java.net.URISyntaxException;
import java.io.Serializable;
import java.lang.reflect.Proxy;
import java.lang.reflect.InvocationHandler;
-import net.jcip.annotations.Immutable;
+import org.apache.sis.util.Immutable;
import org.apache.sis.util.resources.Errors;
import org.apache.sis.util.ArgumentChecks;
import org.apache.sis.util.CharSequences;
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=1493150&r1=1493149&r2=1493150&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] Fri Jun 14 16:44:36 2013
@@ -17,7 +17,7 @@
package org.apache.sis.xml;
import com.sun.xml.internal.bind.marshaller.NamespacePrefixMapper;
-import net.jcip.annotations.Immutable;
+import org.apache.sis.util.Immutable;
/**
@@ -46,6 +46,7 @@ final class OGCNamespacePrefixMapper ext
/**
* Creates a new prefix mapper.
+ * This constructor is invoked by reflection and needs to be public for that reason.
*
* @param defaultNamespace The namespace which doesn't need prefix, or {@code null} if none.
*/
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=1493150&r1=1493149&r2=1493150&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] Fri Jun 14 16:44:36 2013
@@ -17,7 +17,7 @@
package org.apache.sis.xml;
import com.sun.xml.bind.marshaller.NamespacePrefixMapper;
-import net.jcip.annotations.Immutable;
+import org.apache.sis.util.Immutable;
/**
@@ -41,6 +41,7 @@ final class OGCNamespacePrefixMapper_End
/**
* Creates a new prefix mapper.
+ * This constructor is invoked by reflection and needs to be public for that reason.
*
* @param defaultNamespace The namespace which doesn't need prefix, or {@code null} if none.
*/
Modified: sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/XLink.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/XLink.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/XLink.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/main/java/org/apache/sis/xml/XLink.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -23,10 +23,9 @@ import javax.xml.bind.annotation.XmlEnum
import javax.xml.bind.annotation.XmlEnumValue;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlTransient;
-import net.jcip.annotations.ThreadSafe;
-
import org.opengis.util.InternationalString;
import org.apache.sis.util.Classes;
+import org.apache.sis.util.ThreadSafe;
import org.apache.sis.util.logging.Logging;
import org.apache.sis.util.resources.Errors;
Modified: sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/test/TestRunner.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/test/TestRunner.java?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/test/TestRunner.java [UTF-8] (original)
+++ sis/branches/JDK7/core/sis-utility/src/test/java/org/apache/sis/test/TestRunner.java [UTF-8] Fri Jun 14 16:44:36 2013
@@ -21,7 +21,6 @@ import java.util.List;
import java.util.HashSet;
import java.util.Arrays;
import java.util.Comparator;
-import net.jcip.annotations.NotThreadSafe;
import org.junit.Test;
import org.junit.runner.Description;
@@ -51,7 +50,7 @@ import static org.apache.sis.util.collec
* <li>Support of the {@link DependsOn} and {@link DependsOnMethod} annotations.</li>
* </ul>
*
- * This runner is not designed for parallel execution of tests.
+ * This runner is <strong>not</strong> designed for parallel execution of tests.
*
* @author Stephen Connolly
* @author Martin Desruisseaux (Geomatys)
@@ -59,7 +58,6 @@ import static org.apache.sis.util.collec
* @version 0.3
* @module
*/
-@NotThreadSafe
public final class TestRunner extends BlockJUnit4ClassRunner {
/**
* The test methods to be executed, sorted according their dependencies.
Modified: sis/branches/JDK7/ide-project/NetBeans/nbproject/project.properties
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/ide-project/NetBeans/nbproject/project.properties?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/ide-project/NetBeans/nbproject/project.properties [ISO-8859-1] (original)
+++ sis/branches/JDK7/ide-project/NetBeans/nbproject/project.properties [ISO-8859-1] Fri Jun 14 16:44:36 2013
@@ -54,7 +54,6 @@ georss.version = 0.9.8
rome.version = 0.9
jdom.version = 1.0
jee.version = 6.0
-jcip.version = 1.0
osgi.version = 5.0.0
netcdf.version = 4.3.16
joda-time.version = 2.0
@@ -77,7 +76,6 @@ javac.classpath=\
${maven.repository}/rome/rome/${rome.version}/rome-${rome.version}.jar:\
${maven.repository}/jdom/jdom/${jdom.version}/jdom-${jdom.version}.jar:\
${maven.repository}/javax/javaee-api/${jee.version}/javaee-api-${jee.version}.jar:\
- ${maven.repository}/net/jcip/jcip-annotations/${jcip.version}/jcip-annotations-${jcip.version}.jar:\
${maven.repository}/edu/ucar/netcdf/${netcdf.version}/netcdf-${netcdf.version}.jar:\
${maven.repository}/org/osgi/org.osgi.core/${osgi.version}/org.osgi.core-${osgi.version}.jar
javac.processorpath=\
Modified: sis/branches/JDK7/ide-project/eclipse/classpath
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/ide-project/eclipse/classpath?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/ide-project/eclipse/classpath (original)
+++ sis/branches/JDK7/ide-project/eclipse/classpath Fri Jun 14 16:44:36 2013
@@ -21,7 +21,6 @@
<classpathentry kind="var" path="M2_REPO/org/opengis/geoapi/3.0.0/geoapi-3.0.0.jar"/>
<classpathentry kind="var" path="M2_REPO/org/opengis/geoapi-conformance/3.0.0/geoapi-conformance-3.0.0.jar"/>
<classpathentry kind="var" path="M2_REPO/javax/measure/jsr-275/0.9.3/jsr-275-0.9.3.jar"/>
- <classpathentry kind="var" path="M2_REPO/net/jcip/jcip-annotations/1.0/jcip-annotations-1.0.jar"/>
<classpathentry kind="var" path="M2_REPO/junit/junit/4.8.1/junit-4.8.1.jar"/>
<classpathentry kind="var" path="M2_REPO/org/osgi/org.osgi.core/5.0.0/org.osgi.core-5.0.0.jar"/>
<classpathentry kind="var" path="M2_REPO/org/apache/maven/maven-core/3.0.4/maven-core-3.0.4.jar"/>
Modified: sis/branches/JDK7/pom.xml
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/pom.xml?rev=1493150&r1=1493149&r2=1493150&view=diff
==============================================================================
--- sis/branches/JDK7/pom.xml (original)
+++ sis/branches/JDK7/pom.xml Fri Jun 14 16:44:36 2013
@@ -330,11 +330,6 @@ Apache SIS is a free software, Java lang
<version>6.0</version>
<scope>provided</scope>
</dependency>
- <dependency>
- <groupId>net.jcip</groupId>
- <artifactId>jcip-annotations</artifactId>
- <version>1.0</version>
- </dependency>
<!-- Optional dependencies -->
<dependency>
|