sis-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From tlpin...@apache.org
Subject svn commit: r1517321 [15/16] - in /sis/branches/Shapefile: ./ application/ application/sis-console/ application/sis-console/src/main/artifact/ application/sis-console/src/main/java/org/apache/sis/console/ application/sis-console/src/main/resources/org/...
Date Sun, 25 Aug 2013 15:49:59 GMT
Modified: sis/branches/Shapefile/ide-project/NetBeans/nbproject/build-impl.xml
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/ide-project/NetBeans/nbproject/build-impl.xml?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/ide-project/NetBeans/nbproject/build-impl.xml (original)
+++ sis/branches/Shapefile/ide-project/NetBeans/nbproject/build-impl.xml Sun Aug 25 15:49:51 2013
@@ -138,6 +138,7 @@ is divided into following sections:
                 <available file="${test.console.dir}"/>
                 <available file="${test.netcdf.dir}"/>
                 <available file="${test.storage.dir}"/>
+                <available file="${test.feature.dir}"/>
                 <available file="${test.referencing.dir}"/>
                 <available file="${test.metadata.dir}"/>
                 <available file="${test.utility.dir}"/>
@@ -150,10 +151,10 @@ is divided into following sections:
                 <available file="${src.console.dir}"/>
                 <available file="${src.netcdf.dir}"/>
                 <available file="${src.storage.dir}"/>
+                <available file="${src.feature.dir}"/>
                 <available file="${src.referencing.dir}"/>
                 <available file="${src.metadata.dir}"/>
                 <available file="${src.utility.dir}"/>
-                <available file="${src.resources.dir}"/>
             </or>
         </condition>
         <condition property="netbeans.home+have.tests">
@@ -246,13 +247,14 @@ is divided into following sections:
         <fail unless="src.console.dir">Must set src.console.dir</fail>
         <fail unless="src.netcdf.dir">Must set src.netcdf.dir</fail>
         <fail unless="src.storage.dir">Must set src.storage.dir</fail>
+        <fail unless="src.feature.dir">Must set src.feature.dir</fail>
         <fail unless="src.referencing.dir">Must set src.referencing.dir</fail>
         <fail unless="src.metadata.dir">Must set src.metadata.dir</fail>
         <fail unless="src.utility.dir">Must set src.utility.dir</fail>
-        <fail unless="src.resources.dir">Must set src.resources.dir</fail>
         <fail unless="test.console.dir">Must set test.console.dir</fail>
         <fail unless="test.netcdf.dir">Must set test.netcdf.dir</fail>
         <fail unless="test.storage.dir">Must set test.storage.dir</fail>
+        <fail unless="test.feature.dir">Must set test.feature.dir</fail>
         <fail unless="test.referencing.dir">Must set test.referencing.dir</fail>
         <fail unless="test.metadata.dir">Must set test.metadata.dir</fail>
         <fail unless="test.utility.dir">Must set test.utility.dir</fail>
@@ -276,7 +278,7 @@ is divided into following sections:
     </target>
     <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-macrodef-javac-with-processors">
         <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${src.local-src.dir}:${src.webapp.dir}:${src.console.dir}:${src.netcdf.dir}:${src.storage.dir}:${src.referencing.dir}:${src.metadata.dir}:${src.utility.dir}:${src.resources.dir}" name="srcdir"/>
+            <attribute default="${src.local-src.dir}:${src.webapp.dir}:${src.console.dir}:${src.netcdf.dir}:${src.storage.dir}:${src.feature.dir}:${src.referencing.dir}:${src.metadata.dir}:${src.utility.dir}" name="srcdir"/>
             <attribute default="${build.classes.dir}" name="destdir"/>
             <attribute default="${javac.classpath}" name="classpath"/>
             <attribute default="${javac.processorpath}" name="processorpath"/>
@@ -316,7 +318,7 @@ is divided into following sections:
     </target>
     <target depends="-init-ap-cmdline-properties" name="-init-macrodef-javac-without-processors" unless="ap.supported.internal">
         <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${src.local-src.dir}:${src.webapp.dir}:${src.console.dir}:${src.netcdf.dir}:${src.storage.dir}:${src.referencing.dir}:${src.metadata.dir}:${src.utility.dir}:${src.resources.dir}" name="srcdir"/>
+            <attribute default="${src.local-src.dir}:${src.webapp.dir}:${src.console.dir}:${src.netcdf.dir}:${src.storage.dir}:${src.feature.dir}:${src.referencing.dir}:${src.metadata.dir}:${src.utility.dir}" name="srcdir"/>
             <attribute default="${build.classes.dir}" name="destdir"/>
             <attribute default="${javac.classpath}" name="classpath"/>
             <attribute default="${javac.processorpath}" name="processorpath"/>
@@ -348,7 +350,7 @@ is divided into following sections:
     </target>
     <target depends="-init-macrodef-javac-with-processors,-init-macrodef-javac-without-processors" name="-init-macrodef-javac">
         <macrodef name="depend" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${src.local-src.dir}:${src.webapp.dir}:${src.console.dir}:${src.netcdf.dir}:${src.storage.dir}:${src.referencing.dir}:${src.metadata.dir}:${src.utility.dir}:${src.resources.dir}" name="srcdir"/>
+            <attribute default="${src.local-src.dir}:${src.webapp.dir}:${src.console.dir}:${src.netcdf.dir}:${src.storage.dir}:${src.feature.dir}:${src.referencing.dir}:${src.metadata.dir}:${src.utility.dir}" name="srcdir"/>
             <attribute default="${build.classes.dir}" name="destdir"/>
             <attribute default="${javac.classpath}" name="classpath"/>
             <sequential>
@@ -444,6 +446,9 @@ is divided into following sections:
                         <fileset dir="${test.storage.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
                             <filename name="@{testincludes}"/>
                         </fileset>
+                        <fileset dir="${test.feature.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
+                            <filename name="@{testincludes}"/>
+                        </fileset>
                         <fileset dir="${test.referencing.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
                             <filename name="@{testincludes}"/>
                         </fileset>
@@ -491,6 +496,9 @@ is divided into following sections:
                     <fileset dir="${test.storage.dir}" excludes="@{excludes},**/*.xml,${excludes}" includes="@{includes}">
                         <filename name="@{testincludes}"/>
                     </fileset>
+                    <fileset dir="${test.feature.dir}" excludes="@{excludes},**/*.xml,${excludes}" includes="@{includes}">
+                        <filename name="@{testincludes}"/>
+                    </fileset>
                     <fileset dir="${test.referencing.dir}" excludes="@{excludes},**/*.xml,${excludes}" includes="@{includes}">
                         <filename name="@{testincludes}"/>
                     </fileset>
@@ -618,6 +626,9 @@ is divided into following sections:
                         <fileset dir="${test.storage.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
                             <filename name="@{testincludes}"/>
                         </fileset>
+                        <fileset dir="${test.feature.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
+                            <filename name="@{testincludes}"/>
+                        </fileset>
                         <fileset dir="${test.referencing.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
                             <filename name="@{testincludes}"/>
                         </fileset>
@@ -991,7 +1002,7 @@ is divided into following sections:
                 <include name="*"/>
             </dirset>
         </pathconvert>
-        <j2seproject3:depend srcdir="${src.local-src.dir}:${src.webapp.dir}:${src.console.dir}:${src.netcdf.dir}:${src.storage.dir}:${src.referencing.dir}:${src.metadata.dir}:${src.utility.dir}:${src.resources.dir}:${build.generated.subdirs}"/>
+        <j2seproject3:depend srcdir="${src.local-src.dir}:${src.webapp.dir}:${src.console.dir}:${src.netcdf.dir}:${src.storage.dir}:${src.feature.dir}:${src.referencing.dir}:${src.metadata.dir}:${src.utility.dir}:${build.generated.subdirs}"/>
     </target>
     <target depends="init,deps-jar,-pre-pre-compile,-pre-compile, -copy-persistence-xml,-compile-depend" if="have.sources" name="-do-compile">
         <j2seproject3:javac gensrcdir="${build.generated.sources.dir}"/>
@@ -1001,10 +1012,10 @@ is divided into following sections:
             <fileset dir="${src.console.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
             <fileset dir="${src.netcdf.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
             <fileset dir="${src.storage.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
+            <fileset dir="${src.feature.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
             <fileset dir="${src.referencing.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
             <fileset dir="${src.metadata.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
             <fileset dir="${src.utility.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
-            <fileset dir="${src.resources.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
         </copy>
     </target>
     <target if="has.persistence.xml" name="-copy-persistence-xml">
@@ -1025,7 +1036,7 @@ is divided into following sections:
     <target depends="init,deps-jar,-pre-pre-compile" name="-do-compile-single">
         <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail>
         <j2seproject3:force-recompile/>
-        <j2seproject3:javac excludes="" gensrcdir="${build.generated.sources.dir}" includes="${javac.includes}" sourcepath="${src.local-src.dir}:${src.webapp.dir}:${src.console.dir}:${src.netcdf.dir}:${src.storage.dir}:${src.referencing.dir}:${src.metadata.dir}:${src.utility.dir}:${src.resources.dir}"/>
+        <j2seproject3:javac excludes="" gensrcdir="${build.generated.sources.dir}" includes="${javac.includes}" sourcepath="${src.local-src.dir}:${src.webapp.dir}:${src.console.dir}:${src.netcdf.dir}:${src.storage.dir}:${src.feature.dir}:${src.referencing.dir}:${src.metadata.dir}:${src.utility.dir}"/>
     </target>
     <target name="-post-compile-single">
         <!-- Empty placeholder for easier customization. -->
@@ -1301,6 +1312,9 @@ is divided into following sections:
             <fileset dir="${src.storage.dir}" excludes="*.java,${excludes}" includes="${includes}">
                 <filename name="**/*.java"/>
             </fileset>
+            <fileset dir="${src.feature.dir}" excludes="*.java,${excludes}" includes="${includes}">
+                <filename name="**/*.java"/>
+            </fileset>
             <fileset dir="${src.referencing.dir}" excludes="*.java,${excludes}" includes="${includes}">
                 <filename name="**/*.java"/>
             </fileset>
@@ -1310,9 +1324,6 @@ is divided into following sections:
             <fileset dir="${src.utility.dir}" excludes="*.java,${excludes}" includes="${includes}">
                 <filename name="**/*.java"/>
             </fileset>
-            <fileset dir="${src.resources.dir}" excludes="*.java,${excludes}" includes="${includes}">
-                <filename name="**/*.java"/>
-            </fileset>
             <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">
                 <include name="**/*.java"/>
                 <exclude name="*.java"/>
@@ -1335,6 +1346,9 @@ is divided into following sections:
             <fileset dir="${src.storage.dir}" excludes="${excludes}" includes="${includes}">
                 <filename name="**/doc-files/**"/>
             </fileset>
+            <fileset dir="${src.feature.dir}" excludes="${excludes}" includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
             <fileset dir="${src.referencing.dir}" excludes="${excludes}" includes="${includes}">
                 <filename name="**/doc-files/**"/>
             </fileset>
@@ -1344,9 +1358,6 @@ is divided into following sections:
             <fileset dir="${src.utility.dir}" excludes="${excludes}" includes="${includes}">
                 <filename name="**/doc-files/**"/>
             </fileset>
-            <fileset dir="${src.resources.dir}" excludes="${excludes}" includes="${includes}">
-                <filename name="**/doc-files/**"/>
-            </fileset>
             <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">
                 <include name="**/doc-files/**"/>
             </fileset>
@@ -1369,14 +1380,15 @@ is divided into following sections:
         <!-- You can override this target in the ../build.xml file. -->
     </target>
     <target if="do.depend.true" name="-compile-test-depend">
-        <j2seproject3:depend classpath="${javac.test.classpath}" destdir="${build.test.classes.dir}" srcdir="${test.console.dir}:${test.netcdf.dir}:${test.storage.dir}:${test.referencing.dir}:${test.metadata.dir}:${test.utility.dir}"/>
+        <j2seproject3:depend classpath="${javac.test.classpath}" destdir="${build.test.classes.dir}" srcdir="${test.console.dir}:${test.netcdf.dir}:${test.storage.dir}:${test.feature.dir}:${test.referencing.dir}:${test.metadata.dir}:${test.utility.dir}"/>
     </target>
     <target depends="init,deps-jar,compile,-pre-pre-compile-test,-pre-compile-test,-compile-test-depend" if="have.tests" name="-do-compile-test">
-        <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" processorpath="${javac.test.processorpath}" srcdir="${test.console.dir}:${test.netcdf.dir}:${test.storage.dir}:${test.referencing.dir}:${test.metadata.dir}:${test.utility.dir}"/>
+        <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" processorpath="${javac.test.processorpath}" srcdir="${test.console.dir}:${test.netcdf.dir}:${test.storage.dir}:${test.feature.dir}:${test.referencing.dir}:${test.metadata.dir}:${test.utility.dir}"/>
         <copy todir="${build.test.classes.dir}">
             <fileset dir="${test.console.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
             <fileset dir="${test.netcdf.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
             <fileset dir="${test.storage.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
+            <fileset dir="${test.feature.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
             <fileset dir="${test.referencing.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
             <fileset dir="${test.metadata.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
             <fileset dir="${test.utility.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
@@ -1394,11 +1406,12 @@ is divided into following sections:
     <target depends="init,deps-jar,compile,-pre-pre-compile-test,-pre-compile-test-single" if="have.tests" name="-do-compile-test-single">
         <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail>
         <j2seproject3:force-recompile destdir="${build.test.classes.dir}"/>
-        <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" excludes="" includes="${javac.includes}" processorpath="${javac.test.processorpath}" sourcepath="${test.console.dir}:${test.netcdf.dir}:${test.storage.dir}:${test.referencing.dir}:${test.metadata.dir}:${test.utility.dir}" srcdir="${test.console.dir}:${test.netcdf.dir}:${test.storage.dir}:${test.referencing.dir}:${test.metadata.dir}:${test.utility.dir}"/>
+        <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" excludes="" includes="${javac.includes}" processorpath="${javac.test.processorpath}" sourcepath="${test.console.dir}:${test.netcdf.dir}:${test.storage.dir}:${test.feature.dir}:${test.referencing.dir}:${test.metadata.dir}:${test.utility.dir}" srcdir="${test.console.dir}:${test.netcdf.dir}:${test.storage.dir}:${test.feature.dir}:${test.referencing.dir}:${test.metadata.dir}:${test.utility.dir}"/>
         <copy todir="${build.test.classes.dir}">
             <fileset dir="${test.console.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
             <fileset dir="${test.netcdf.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
             <fileset dir="${test.storage.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
+            <fileset dir="${test.feature.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
             <fileset dir="${test.referencing.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
             <fileset dir="${test.metadata.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
             <fileset dir="${test.utility.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>

Modified: sis/branches/Shapefile/ide-project/NetBeans/nbproject/genfiles.properties
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/ide-project/NetBeans/nbproject/genfiles.properties?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/ide-project/NetBeans/nbproject/genfiles.properties [ISO-8859-1] (original)
+++ sis/branches/Shapefile/ide-project/NetBeans/nbproject/genfiles.properties [ISO-8859-1] Sun Aug 25 15:49:51 2013
@@ -3,6 +3,6 @@
 build.xml.data.CRC32=58e6b21c
 build.xml.script.CRC32=462eaba0
 build.xml.stylesheet.CRC32=28e38971@1.53.1.46
-nbproject/build-impl.xml.data.CRC32=ca153f28
-nbproject/build-impl.xml.script.CRC32=cd693ddf
+nbproject/build-impl.xml.data.CRC32=bd5320d7
+nbproject/build-impl.xml.script.CRC32=8f7cbac4
 nbproject/build-impl.xml.stylesheet.CRC32=c6d2a60f@1.56.1.46

Modified: sis/branches/Shapefile/ide-project/NetBeans/nbproject/project.properties
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/ide-project/NetBeans/nbproject/project.properties?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/ide-project/NetBeans/nbproject/project.properties [ISO-8859-1] (original)
+++ sis/branches/Shapefile/ide-project/NetBeans/nbproject/project.properties [ISO-8859-1] Sun Aug 25 15:49:51 2013
@@ -1,4 +1,21 @@
 #
+# 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.
+#
+
+#
 # SIS project file for NetBeans.
 # This can used as an alternative to Maven projects for development and testing purpose only.
 #
@@ -26,7 +43,6 @@ junit.forkmode       = once
 #
 project.root         = ../..
 src.local-src.dir    = ../local-src
-src.resources.dir    = ../resources-links
 src.webapp.dir       = ${project.root}/application/sis-webapp/src/main/java
 src.console.dir      = ${project.root}/application/sis-console/src/main/java
 test.console.dir     = ${project.root}/application/sis-console/src/test/java
@@ -34,6 +50,8 @@ src.netcdf.dir       = ${project.root}/s
 test.netcdf.dir      = ${project.root}/storage/sis-netcdf/src/test/java
 src.storage.dir      = ${project.root}/storage/sis-storage/src/main/java
 test.storage.dir     = ${project.root}/storage/sis-storage/src/test/java
+src.feature.dir      = ${project.root}/core/sis-feature/src/main/java
+test.feature.dir     = ${project.root}/core/sis-feature/src/test/java
 src.referencing.dir  = ${project.root}/core/sis-referencing/src/main/java
 test.referencing.dir = ${project.root}/core/sis-referencing/src/test/java
 src.metadata.dir     = ${project.root}/core/sis-metadata/src/main/java
@@ -50,12 +68,14 @@ geoapi.version       = 3.0.0
 unit-api.version     = 0.6.1
 jsr275.version       = 0.9.3
 vecmath.version      = 1.5.2
+geometry.version     = 1.0
 georss.version       = 0.9.8
 rome.version         = 0.9
-jdom.version         = 1.0
+jdom1.version        = 1.0
+jdom2.version        = 2.0.4
 jee.version          = 6.0
 osgi.version         = 5.0.0
-netcdf.version       = 4.3.17
+netcdf.version       = 4.3.18
 joda-time.version    = 2.0
 httpclient.version   = 3.1
 slf4j.version        = 1.6.4
@@ -72,9 +92,10 @@ javac.classpath=\
     ${maven.repository}/org/unitsofmeasurement/unit-api/${unit-api.version}/unit-api-${unit-api.version}.jar:\
     ${maven.repository}/javax/measure/jsr-275/${jsr275.version}/jsr-275-${jsr275.version}.jar:\
     ${maven.repository}/java3d/vecmath/${vecmath.version}/vecmath-${vecmath.version}.jar:\
+    ${maven.repository}/com/esri/geometry/esri-geometry-api/${geometry.version}/esri-geometry-api-${geometry.version}.jar:\
     ${maven.repository}/org/geonames/georss-rome/${georss.version}/georss-rome-${georss.version}.jar:\
     ${maven.repository}/rome/rome/${rome.version}/rome-${rome.version}.jar:\
-    ${maven.repository}/jdom/jdom/${jdom.version}/jdom-${jdom.version}.jar:\
+    ${maven.repository}/jdom/jdom/${jdom1.version}/jdom-${jdom1.version}.jar:\
     ${maven.repository}/javax/javaee-api/${jee.version}/javaee-api-${jee.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
@@ -93,6 +114,7 @@ run.classpath=\
 run.test.classpath=\
     ${javac.test.classpath}:\
     ${build.test.classes.dir}:\
+    ${maven.repository}/org/jdom/jdom2/${jdom2.version}/jdom2-${jdom2.version}.jar:\
     ${maven.repository}/edu/ucar/udunits/${netcdf.version}/udunits-${netcdf.version}.jar:\
     ${maven.repository}/joda-time/joda-time/${joda-time.version}/joda-time-${joda-time.version}.jar:\
     ${maven.repository}/commons-httpclient/commons-httpclient/${httpclient.version}/commons-httpclient-${httpclient.version}.jar:\

Modified: sis/branches/Shapefile/ide-project/NetBeans/nbproject/project.xml
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/ide-project/NetBeans/nbproject/project.xml?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/ide-project/NetBeans/nbproject/project.xml (original)
+++ sis/branches/Shapefile/ide-project/NetBeans/nbproject/project.xml Sun Aug 25 15:49:51 2013
@@ -1,4 +1,22 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!--
+  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.
+-->
 <project xmlns="http://www.netbeans.org/ns/project/1">
     <type>org.netbeans.modules.java.j2seproject</type>
     <configuration>
@@ -10,15 +28,16 @@
                 <root id="src.console.dir" name="Console"/>
                 <root id="src.netcdf.dir" name="NetCDF"/>
                 <root id="src.storage.dir" name="Storage"/>
+                <root id="src.feature.dir" name="Feature"/>
                 <root id="src.referencing.dir" name="Referencing"/>
                 <root id="src.metadata.dir" name="Metadata"/>
                 <root id="src.utility.dir" name="Utility"/>
-                <root id="src.resources.dir" name="Resources"/>
             </source-roots>
             <test-roots>
                 <root id="test.console.dir" name="Test Console"/>
                 <root id="test.netcdf.dir" name="Test NetCDF"/>
                 <root id="test.storage.dir" name="Test Storage"/>
+                <root id="test.feature.dir" name="Test Feature"/>
                 <root id="test.referencing.dir" name="Test Referencing"/>
                 <root id="test.metadata.dir" name="Test Metadata"/>
                 <root id="test.utility.dir" name="Test Utility"/>
@@ -44,6 +63,7 @@
             <word>monospaced</word>
             <word>namespace</word>
             <word>namespaces</word>
+            <word>parsable</word>
             <word>timezone</word>
             <word>Unicode</word>
             <word>uninstall</word>
@@ -51,6 +71,7 @@
             <word>unmarshaller</word>
             <word>unmarshallers</word>
             <word>unmarshalling</word>
+            <word>unparsable</word>
             <word>whitespaces</word>
         </spellchecker-wordlist>
     </configuration>

Modified: sis/branches/Shapefile/pom.xml
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/pom.xml?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/pom.xml (original)
+++ sis/branches/Shapefile/pom.xml Sun Aug 25 15:49:51 2013
@@ -39,7 +39,7 @@
        ============================================================== -->
   <groupId>org.apache.sis</groupId>
   <artifactId>parent</artifactId>
-  <version>0.3-geoapi3.0-SNAPSHOT</version>
+  <version>0.4-SNAPSHOT</version>
   <packaging>pom</packaging>
 
   <name>Apache SIS</name>
@@ -188,6 +188,14 @@ Apache SIS is a free software, Java lang
       </roles>
     </developer>
     <developer>
+      <name>Travis L. Pinney</name>
+      <id>tlpinney</id>
+      <email>travis.pinney@gmail.com</email>
+      <roles>
+        <role>developer</role>
+      </roles>
+    </developer>
+    <developer>
       <name>Nga Chung</name>
       <id>nchung</id>
       <email>nchung@apache.org</email>
@@ -325,11 +333,21 @@ Apache SIS is a free software, Java lang
 
       <!-- Libraries (language, XML, network) -->
       <dependency>
+        <groupId>com.esri.geometry</groupId>
+        <artifactId>esri-geometry-api</artifactId>
+        <version>1.0</version>
+      </dependency>
+      <dependency>
         <groupId>javax</groupId>
         <artifactId>javaee-api</artifactId>
         <version>6.0</version>
         <scope>provided</scope>
       </dependency>
+      <dependency>
+        <groupId>org.apache.commons</groupId>
+        <artifactId>commons-compress</artifactId>
+        <version>1.5</version>
+      </dependency>
 
       <!-- Optional dependencies -->
       <dependency>
@@ -374,7 +392,7 @@ Apache SIS is a free software, Java lang
        =================================================================== -->
   <properties>
     <geoapi.version>3.0.0</geoapi.version>
-    <netcdf.version>4.3.17</netcdf.version>
+    <netcdf.version>4.3.18</netcdf.version>
     <findbugs.version>2.5.2</findbugs.version>
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
     <website.encoding>UTF-8</website.encoding>
@@ -449,11 +467,24 @@ Apache SIS is a free software, Java lang
         </executions>
       </plugin>
 
+      <!-- Set "*-source-release.zip" filename prefix to "sis-*" instead of "parent-*" -->
+      <plugin>
+        <artifactId>maven-assembly-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>source-release-assembly</id>
+            <configuration>
+              <finalName>sis-${project.version}</finalName>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+
       <!-- Package as OSGi bundle -->
       <plugin>
         <groupId>org.apache.felix</groupId>
         <artifactId>maven-bundle-plugin</artifactId>
-        <version>2.3.7</version>
+        <version>2.4.0</version>
         <extensions>true</extensions>
         <configuration>
           <instructions>
@@ -524,7 +555,7 @@ Apache SIS is a free software, Java lang
         <version>${findbugs.version}</version>
         <dependencies>
           <dependency>
-            <groupId>org.apache.sis</groupId>
+            <groupId>org.apache.sis.core</groupId>
             <artifactId>sis-build-helper</artifactId>
             <version>${sis.plugin.version}</version>
           </dependency>
@@ -543,7 +574,7 @@ Apache SIS is a free software, Java lang
         <plugin>
           <groupId>org.mortbay.jetty</groupId>
           <artifactId>jetty-maven-plugin</artifactId>
-          <version>8.0.0.M2</version>
+          <version>8.0.1.v20110908</version>
         </plugin>
       </plugins>
     </pluginManagement>
@@ -556,18 +587,15 @@ Apache SIS is a free software, Java lang
        ============================================================== -->
   <reporting>
     <plugins>
-      <!-- Overwrite the configuration declared in the Apache parent pom.xml
-           in order to use version 2.5.1 instead than 2.5. This is necessary
-           for avoiding a NullPointerException (http://jira.codehaus.org/browse/MPIR-248) -->
       <plugin>
         <artifactId>maven-project-info-reports-plugin</artifactId>
-        <version>2.6</version>
+        <version>2.7</version>
       </plugin>
 
       <!-- Produce JavaDoc -->
       <plugin>
         <artifactId>maven-javadoc-plugin</artifactId>
-        <version>2.9</version>
+        <version>2.9.1</version>
         <configuration>
           <source>${maven.compile.source}</source>              <!-- Enables javadoc to handle language constructs present in target JDK. -->
           <encoding>${project.build.sourceEncoding}</encoding>  <!-- Encoding of Java source file. -->
@@ -636,9 +664,10 @@ Apache SIS is a free software, Java lang
             <taglet><tagletClass>org.apache.sis.internal.taglet.Note</tagletClass></taglet>
             <taglet><tagletClass>org.apache.sis.internal.taglet.Example</tagletClass></taglet>
             <taglet><tagletClass>org.apache.sis.internal.taglet.Preformat</tagletClass></taglet>
+            <taglet><tagletClass>org.apache.sis.internal.taglet.SourceRepositoryURL</tagletClass></taglet>
           </taglets>
           <tagletArtifact>
-            <groupId>org.apache.sis</groupId>
+            <groupId>org.apache.sis.core</groupId>
             <artifactId>sis-build-helper</artifactId>
             <version>${sis.plugin.version}</version>
           </tagletArtifact>
@@ -654,7 +683,7 @@ Apache SIS is a free software, Java lang
       <!-- Unit tests report -->
       <plugin>
         <artifactId>maven-surefire-report-plugin</artifactId>
-        <version>2.12.4</version>
+        <version>2.15</version>
       </plugin>
 
       <!-- "Release Audit" report (checks license headers etc.) -->
@@ -685,7 +714,7 @@ Apache SIS is a free software, Java lang
   <!-- ==============================================================
          Additional repositories from which to download artifacts.
          The parent pom.xml already declares the apache.snapshots
-         repository for library artefacts. But we also need it for
+         repository for library artifacts. But we also need it for
          Maven plugins in order to download sis-build-helper when
          the user did not built it himself.
        ============================================================== -->

Modified: sis/branches/Shapefile/src/main/docbook/book.entities
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/src/main/docbook/book.entities?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/src/main/docbook/book.entities (original)
+++ sis/branches/Shapefile/src/main/docbook/book.entities Sun Aug 25 15:49:51 2013
@@ -1,6 +1,6 @@
 <!ENTITY geoapi-version "3.0.0">
 <!ENTITY geoapi-release "3.0.0">
-<!ENTITY sis-release    "0.3-geoapi3.0-SNAPSHOT">
+<!ENTITY sis-release    "0.4-SNAPSHOT">
 <!ENTITY gml-version    "3.3">
 <!ENTITY sis-javadoc    "../apidocs">
 <!ENTITY geoapi-javadoc "http://www.geoapi.org/3.0/javadoc">

Modified: sis/branches/Shapefile/src/main/docbook/fr.xml
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/src/main/docbook/fr.xml?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/src/main/docbook/fr.xml (original)
+++ sis/branches/Shapefile/src/main/docbook/fr.xml Sun Aug 25 15:49:51 2013
@@ -1,4 +1,24 @@
 <?xml version="1.0" encoding="utf-8"?>
+
+<!--
+  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.
+-->
+
 <!DOCTYPE book [
   <!ENTITY % book.entities SYSTEM "book.entities">
   %book.entities;

Modified: sis/branches/Shapefile/src/main/docbook/fr/XML.xml
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/src/main/docbook/fr/XML.xml?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/src/main/docbook/fr/XML.xml (original)
+++ sis/branches/Shapefile/src/main/docbook/fr/XML.xml Sun Aug 25 15:49:51 2013
@@ -1,4 +1,24 @@
 <?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+  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.
+-->
+
 <!DOCTYPE book [
   <!ENTITY % book.entities SYSTEM "../book.entities">
   %book.entities;

Modified: sis/branches/Shapefile/src/main/docbook/fr/coverage.xml
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/src/main/docbook/fr/coverage.xml?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/src/main/docbook/fr/coverage.xml (original)
+++ sis/branches/Shapefile/src/main/docbook/fr/coverage.xml Sun Aug 25 15:49:51 2013
@@ -1,4 +1,24 @@
 <?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+  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.
+-->
+
 <!DOCTYPE book [
   <!ENTITY % book.entities SYSTEM "../book.entities">
   %book.entities;

Modified: sis/branches/Shapefile/src/main/docbook/fr/geoapi.xml
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/src/main/docbook/fr/geoapi.xml?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/src/main/docbook/fr/geoapi.xml (original)
+++ sis/branches/Shapefile/src/main/docbook/fr/geoapi.xml Sun Aug 25 15:49:51 2013
@@ -1,4 +1,24 @@
 <?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+  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.
+-->
+
 <!DOCTYPE book [
   <!ENTITY % book.entities SYSTEM "../book.entities">
   %book.entities;

Modified: sis/branches/Shapefile/src/main/docbook/fr/geometry.xml
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/src/main/docbook/fr/geometry.xml?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/src/main/docbook/fr/geometry.xml (original)
+++ sis/branches/Shapefile/src/main/docbook/fr/geometry.xml Sun Aug 25 15:49:51 2013
@@ -1,4 +1,24 @@
 <?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+  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.
+-->
+
 <!DOCTYPE book [
   <!ENTITY % book.entities SYSTEM "../book.entities">
   %book.entities;

Modified: sis/branches/Shapefile/src/main/docbook/fr/introduction.xml
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/src/main/docbook/fr/introduction.xml?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/src/main/docbook/fr/introduction.xml (original)
+++ sis/branches/Shapefile/src/main/docbook/fr/introduction.xml Sun Aug 25 15:49:51 2013
@@ -1,4 +1,24 @@
 <?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+  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.
+-->
+
 <!DOCTYPE book [
   <!ENTITY % book.entities SYSTEM "../book.entities">
   %book.entities;

Modified: sis/branches/Shapefile/src/main/docbook/fr/standards.xml
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/src/main/docbook/fr/standards.xml?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/src/main/docbook/fr/standards.xml (original)
+++ sis/branches/Shapefile/src/main/docbook/fr/standards.xml Sun Aug 25 15:49:51 2013
@@ -1,4 +1,24 @@
 <?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+  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.
+-->
+
 <!DOCTYPE book [
   <!ENTITY % book.entities SYSTEM "../book.entities">
   %book.entities;

Modified: sis/branches/Shapefile/src/main/docbook/fr/utility.xml
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/src/main/docbook/fr/utility.xml?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/src/main/docbook/fr/utility.xml (original)
+++ sis/branches/Shapefile/src/main/docbook/fr/utility.xml Sun Aug 25 15:49:51 2013
@@ -1,4 +1,24 @@
 <?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+  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.
+-->
+
 <!DOCTYPE book [
   <!ENTITY % book.entities SYSTEM "../book.entities">
   %book.entities;

Modified: sis/branches/Shapefile/src/main/javadoc/overview.html
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/src/main/javadoc/overview.html?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/src/main/javadoc/overview.html (original)
+++ sis/branches/Shapefile/src/main/javadoc/overview.html Sun Aug 25 15:49:51 2013
@@ -1,23 +1,35 @@
 <!DOCTYPE html>
+
+<!--
+  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.
+-->
+
 <html>
   <head>
     <title>API Overview</title>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
   </head>
   <body>
-    Overview of <a href="{@website}">Apache SIS™ (Spatial Information System)</a>.
+    Overview of <a href="http://sis.apache.org">Apache SIS™ (Spatial Information System)</a>.
 
     <h3>Requirements</h3>
     <p>SIS requires Java 6 Standard Edition.</p>
 
-    <h3>Javadoc annotations</h3>
-    <p>SIS uses standard javadoc annotations. The meaning of some tags are refined as below:</p>
-    <ul>
-      <li>{@code @since}   - the SIS version when the annotated element (class, method, <i>etc.</i>) was first introduced.</li>
-      <li>{@code @version} - the last SIS version when the code of the annotated class got a significant change.</li>
-      <li>{@code @author}  - developer names in <var>First name</var> <var>Last name</var> <var>(organization)</var> format.</li>
-    </ul>
-
     <h3>Classes naming</h3>
     <p>Implementations of <a href="http://www.geoapi.org/">GeoAPI interfaces</a> usually (but not always)
     begin with {@code Abstract}, {@code Default}, {@code Simple} or {@code General} prefix.

Modified: sis/branches/Shapefile/src/site/apt/index.apt
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/src/site/apt/index.apt?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/src/site/apt/index.apt [UTF-8] (original)
+++ sis/branches/Shapefile/src/site/apt/index.apt [UTF-8] Sun Aug 25 15:49:51 2013
@@ -1,3 +1,22 @@
+~~
+~~ 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.
+~~
+
                              ------------------------------
                                         Overview
                              ------------------------------
@@ -21,42 +40,17 @@ The Apache SIS™ library
   applicable to simple imagery as to many dimensional data structures.
 
   SIS is a project of the {{{http://www.apache.org}Apache Software Foundation}}.
-
-
-* Using SIS
-
-  SIS requires a Java 6 Runtime Environment.
-  The latest release is <<<0.2-incubating>>>.
-  The version under development is <<<0.3-geoapi3.0-SNAPSHOT>>>.
-
-  The source code can be checked out anonymously with SubVersion from
-  {{{http://svn.apache.org/repos/asf/sis/trunk}http://svn.apache.org/repos/asf/sis/trunk}},
-  or can be cloned with Git from {{{git://git.apache.org/sis.git}git://git.apache.org/sis.git}}.
+  The project home is {{http://sis.apache.org}}.
 
 
 * Documentation
 
 ** User documentation
 
-    * {{{./download.html}Downloading binaries}}
-
     * {{{./apidocs/index.html}Aggregated Javadoc}}
 
     * Developer Guide (English - translation to be provided later) ({{{./book/fr.xhtml}Français}})
 
-    * {{{http://cwiki.apache.org/confluence/display/SIS}SIS Wiki}}
-
-
-** SIS developer documentation
-
-    * {{{./develop.html}Developing Apache SIS}}
-
-    * {{{./branches.html}Branches (JDK6, JDK7, GeoAPI)}}
-
-    * {{{./code-patterns.html}Recommended code patterns}}
-
-    * {{{./code-format.html}Code and Javadoc formatting}}
-
 
   Apache SIS, Apache, the Apache feather logo, and the Apache SIS project logo are trademarks of
   The Apache Software Foundation.

Modified: sis/branches/Shapefile/src/site/resources/css/site.css
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/src/site/resources/css/site.css?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/src/site/resources/css/site.css (original)
+++ sis/branches/Shapefile/src/site/resources/css/site.css Sun Aug 25 15:49:51 2013
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-/* Override styles in maven-base.css */
+/* Overwrite styles in maven-base.css */
 #leftColumn {
  width: 190px;
 }
@@ -23,7 +23,7 @@
   margin-left: 210px;
 }
 
-/* Override styles in maven-theme.css */
+/* Overwrite styles in maven-theme.css */
 a {
   color: #387085;
 }

Modified: sis/branches/Shapefile/storage/pom.xml
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/storage/pom.xml?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/storage/pom.xml (original)
+++ sis/branches/Shapefile/storage/pom.xml Sun Aug 25 15:49:51 2013
@@ -28,7 +28,7 @@
   <parent>
     <groupId>org.apache.sis</groupId>
     <artifactId>parent</artifactId>
-    <version>0.3-geoapi3.0-SNAPSHOT</version>
+    <version>0.4-SNAPSHOT</version>
   </parent>
 
 
@@ -82,7 +82,7 @@
 
       <!-- Collect JAR files in <root>/target/binaries directory. -->
       <plugin>
-        <groupId>org.apache.sis</groupId>
+        <groupId>org.apache.sis.core</groupId>
         <artifactId>sis-build-helper</artifactId>
         <version>${sis.plugin.version}</version>
         <executions>
@@ -102,12 +102,12 @@
        =========================================================== -->
   <dependencies>
     <dependency>
-      <groupId>org.apache.sis</groupId>
+      <groupId>org.apache.sis.core</groupId>
       <artifactId>sis-metadata</artifactId>
       <version>${project.version}</version>
     </dependency>
     <dependency>
-      <groupId>org.apache.sis</groupId>
+      <groupId>org.apache.sis.core</groupId>
       <artifactId>sis-referencing</artifactId>
       <version>${project.version}</version>
     </dependency>
@@ -122,7 +122,7 @@
       <artifactId>geoapi-conformance</artifactId>
     </dependency>
     <dependency>
-      <groupId>org.apache.sis</groupId>
+      <groupId>org.apache.sis.core</groupId>
       <artifactId>sis-utility</artifactId>
       <version>${project.version}</version>
       <type>test-jar</type>

Modified: sis/branches/Shapefile/storage/sis-netcdf/pom.xml
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/storage/sis-netcdf/pom.xml?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/storage/sis-netcdf/pom.xml (original)
+++ sis/branches/Shapefile/storage/sis-netcdf/pom.xml Sun Aug 25 15:49:51 2013
@@ -28,7 +28,7 @@
   <parent>
     <groupId>org.apache.sis</groupId>
     <artifactId>storage</artifactId>
-    <version>0.3-geoapi3.0-SNAPSHOT</version>
+    <version>0.4-SNAPSHOT</version>
   </parent>
 
 
@@ -115,6 +115,7 @@ Bridge between NetCDF Climate and Foreca
     <dependency>
       <groupId>edu.ucar</groupId>
       <artifactId>netcdf</artifactId>
+      <optional>true</optional>
     </dependency>
 
     <dependency>

Modified: sis/branches/Shapefile/storage/sis-netcdf/src/main/java/org/apache/sis/internal/netcdf/Decoder.java
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/storage/sis-netcdf/src/main/java/org/apache/sis/internal/netcdf/Decoder.java?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/storage/sis-netcdf/src/main/java/org/apache/sis/internal/netcdf/Decoder.java [UTF-8] (original)
+++ sis/branches/Shapefile/storage/sis-netcdf/src/main/java/org/apache/sis/internal/netcdf/Decoder.java [UTF-8] Sun Aug 25 15:49:51 2013
@@ -91,7 +91,7 @@ public abstract class Decoder implements
      * Returns the value of the attribute of the given name as a number, or {@code null} if none.
      *
      * @param  name The name of the attribute to search, or {@code null}.
-     * @return The attribute value, or {@code null} if none or unparseable or if the given name was null.
+     * @return The attribute value, or {@code null} if none or unparsable or if the given name was null.
      * @throws IOException If an I/O operation was necessary but failed.
      */
     public abstract Number numericValue(final String name) throws IOException;
@@ -121,7 +121,7 @@ public abstract class Decoder implements
      * Returns the value of the attribute of the given name as a date, or {@code null} if none.
      *
      * @param  name The name of the attribute to search, or {@code null}.
-     * @return The attribute value, or {@code null} if none or unparseable or if the given name was null.
+     * @return The attribute value, or {@code null} if none or unparsable or if the given name was null.
      * @throws IOException If an I/O operation was necessary but failed.
      */
     public abstract Date dateValue(final String name) throws IOException;
@@ -130,7 +130,7 @@ public abstract class Decoder implements
      * Returns the value of the attribute of the given name as a unit of measurement, or {@code null} if none.
      *
      * @param  name The name of the attribute to search, or {@code null}.
-     * @return The attribute value, or {@code null} if none or unparseable or if the given name was null.
+     * @return The attribute value, or {@code null} if none or unparsable or if the given name was null.
      * @throws IOException If an I/O operation was necessary but failed.
      *
      * @todo Current Units.valueOf(String) implementation ignore direction in "degrees_east" or "degrees_west".

Modified: sis/branches/Shapefile/storage/sis-netcdf/src/main/java/org/apache/sis/internal/netcdf/impl/ChannelDecoder.java
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/storage/sis-netcdf/src/main/java/org/apache/sis/internal/netcdf/impl/ChannelDecoder.java?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/storage/sis-netcdf/src/main/java/org/apache/sis/internal/netcdf/impl/ChannelDecoder.java [UTF-8] (original)
+++ sis/branches/Shapefile/storage/sis-netcdf/src/main/java/org/apache/sis/internal/netcdf/impl/ChannelDecoder.java [UTF-8] Sun Aug 25 15:49:51 2013
@@ -76,6 +76,11 @@ public final class ChannelDecoder extend
     public static final int MAGIC_NUMBER = ('C' << 24) | ('D' << 16) | ('F' <<  8);
 
     /**
+     * The maximal version number supported by this implementation.
+     */
+    public static final int MAX_VERSION = 2;
+
+    /**
      * The encoding of dimension, variable and attribute names. This is fixed to {@value} by the
      * NetCDF specification. Note however that the encoding of attribute values may be different.
      *
@@ -211,6 +216,7 @@ public final class ChannelDecoder extend
             case 1:  is64bits = false; break;
             case 2:  is64bits = true;  break;
             default: throw new DataStoreException(errors().getString(Errors.Keys.UnsupportedVersion_1, version));
+            // If more cases are added, remember to increment the MAX_VERSION constant.
         }
         numrecs = input.readInt();
         /*

Modified: sis/branches/Shapefile/storage/sis-netcdf/src/main/java/org/apache/sis/internal/netcdf/ucar/DecoderWrapper.java
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/storage/sis-netcdf/src/main/java/org/apache/sis/internal/netcdf/ucar/DecoderWrapper.java?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/storage/sis-netcdf/src/main/java/org/apache/sis/internal/netcdf/ucar/DecoderWrapper.java [UTF-8] (original)
+++ sis/branches/Shapefile/storage/sis-netcdf/src/main/java/org/apache/sis/internal/netcdf/ucar/DecoderWrapper.java [UTF-8] Sun Aug 25 15:49:51 2013
@@ -190,7 +190,7 @@ public final class DecoderWrapper extend
      * Returns the value of the attribute of the given name as a number, or {@code null} if none.
      *
      * @param  name The name of the attribute to search, or {@code null}.
-     * @return The attribute value, or {@code null} if none or unparseable or if the given name was null.
+     * @return The attribute value, or {@code null} if none or unparsable or if the given name was null.
      */
     @Override
     public Number numericValue(final String name) {
@@ -216,7 +216,7 @@ public final class DecoderWrapper extend
      * Returns the value of the attribute of the given name as a date, or {@code null} if none.
      *
      * @param  name The name of the attribute to search, or {@code null}.
-     * @return The attribute value, or {@code null} if none or unparseable or if the given name was null.
+     * @return The attribute value, or {@code null} if none or unparsable or if the given name was null.
      */
     @Override
     public Date dateValue(final String name) {

Modified: sis/branches/Shapefile/storage/sis-netcdf/src/main/java/org/apache/sis/storage/netcdf/MetadataReader.java
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/storage/sis-netcdf/src/main/java/org/apache/sis/storage/netcdf/MetadataReader.java?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/storage/sis-netcdf/src/main/java/org/apache/sis/storage/netcdf/MetadataReader.java [UTF-8] (original)
+++ sis/branches/Shapefile/storage/sis-netcdf/src/main/java/org/apache/sis/storage/netcdf/MetadataReader.java [UTF-8] Sun Aug 25 15:49:51 2013
@@ -626,10 +626,9 @@ final class MetadataReader {
         if (xmin != null || xmax != null || ymin != null || ymax != null) {
             final UnitConverter xConv = getConverterTo(decoder.unitValue(LONGITUDE.UNITS), NonSI.DEGREE_ANGLE);
             final UnitConverter yConv = getConverterTo(decoder.unitValue(LATITUDE .UNITS), NonSI.DEGREE_ANGLE);
-            extent = new DefaultExtent();
-            extent.getGeographicElements().add(new DefaultGeographicBoundingBox(
+            extent = new DefaultExtent(null, new DefaultGeographicBoundingBox(
                     valueOf(xmin, xConv), valueOf(xmax, xConv),
-                    valueOf(ymin, yConv), valueOf(ymax, yConv)));
+                    valueOf(ymin, yConv), valueOf(ymax, yConv)), null, null);
         }
         /*
          * If at least one vertical ordinates above is available, add a VerticalExtent.

Modified: sis/branches/Shapefile/storage/sis-netcdf/src/main/java/org/apache/sis/storage/netcdf/NetcdfStoreProvider.java
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/storage/sis-netcdf/src/main/java/org/apache/sis/storage/netcdf/NetcdfStoreProvider.java?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/storage/sis-netcdf/src/main/java/org/apache/sis/storage/netcdf/NetcdfStoreProvider.java [UTF-8] (original)
+++ sis/branches/Shapefile/storage/sis-netcdf/src/main/java/org/apache/sis/storage/netcdf/NetcdfStoreProvider.java [UTF-8] Sun Aug 25 15:49:51 2013
@@ -32,7 +32,10 @@ import org.apache.sis.storage.DataStore;
 import org.apache.sis.storage.DataStoreProvider;
 import org.apache.sis.storage.StorageConnector;
 import org.apache.sis.storage.DataStoreException;
+import org.apache.sis.storage.ProbeResult;
 import org.apache.sis.util.logging.WarningListeners;
+import org.apache.sis.util.ThreadSafe;
+import org.apache.sis.util.Version;
 
 
 /**
@@ -44,13 +47,19 @@ import org.apache.sis.util.logging.Warni
  *
  * @author  Martin Desruisseaux (Geomatys)
  * @since   0.3
- * @version 0.3
+ * @version 0.4
  * @module
  *
  * @see NetcdfStore
  */
+@ThreadSafe
 public class NetcdfStoreProvider extends DataStoreProvider {
     /**
+     * The MIME type for NetCDF files.
+     */
+    static final String MIME_TYPE = "application/x-netcdf";
+
+    /**
      * The name of the {@link ucar.nc2.NetcdfFile} class, which is {@value}.
      */
     private static final String UCAR_CLASSNAME = "ucar.nc2.NetcdfFile";
@@ -99,65 +108,81 @@ public class NetcdfStoreProvider extends
     }
 
     /**
-     * Returns {@code TRUE} if the given storage appears to be supported by {@link NetcdfStore}.
-     * Returning {@code TRUE} from this method does not guarantee that reading or writing will succeed,
+     * Returns {@link ProbeResult#SUPPORTED} if the given storage appears to be supported by {@link NetcdfStore}.
+     * Returning {@code SUPPORTED} from this method does not guarantee that reading or writing will succeed,
      * only that there appears to be a reasonable chance of success based on a brief inspection of the
      * {@linkplain StorageConnector#getStorage() storage object} or contents.
      *
      * @param  storage Information about the storage (URL, stream, {@link ucar.nc2.NetcdfFile} instance, <i>etc</i>).
-     * @return {@link Boolean#TRUE} if the given storage seems to be usable by the {@code NetcdfStore} instances,
-     *         {@link Boolean#FALSE} if {@code NetcdfStore} will not be able to use the given storage,
-     *         or {@code null} if this method does not have enough information.
+     * @return {@code SUPPORTED} if the given storage seems to be usable by the {@code NetcdfStore} instances.
      * @throws DataStoreException if an I/O error occurred.
      */
     @Override
-    public Boolean canOpen(StorageConnector storage) throws DataStoreException {
+    public ProbeResult probeContent(StorageConnector storage) throws DataStoreException {
+        int     version     = 0;
+        boolean hasVersion  = false;
+        boolean isSupported = false;
         final ByteBuffer buffer = storage.getStorageAs(ByteBuffer.class);
         if (buffer != null) {
             if (buffer.remaining() < Integer.SIZE / Byte.SIZE) {
-                return null;
+                return ProbeResult.INSUFFICIENT_BYTES;
             }
             final int header = buffer.getInt(buffer.position());
             if ((header & 0xFFFFFF00) == ChannelDecoder.MAGIC_NUMBER) {
-                return Boolean.TRUE;
+                hasVersion  = true;
+                version     = header & 0xFF;
+                isSupported = (version >= 1 && version <= ChannelDecoder.MAX_VERSION);
             }
         }
         /*
          * If we failed to check using the embedded decoder, tries using the UCAR library.
+         * The UCAR library is an optional dependency. If that library is present and the
+         * input is a String, then the following code may trigs a large amount of classes
+         * loading.
          */
-        final String path = storage.getStorageAs(String.class);
-        if (path != null) {
-            ensureInitialized();
-            final Method method = canOpenFromPath;
-            if (method != null) try {
-                return (Boolean) method.invoke(null, path);
-            } catch (IllegalAccessException e) {
-                throw new AssertionError(e); // Should never happen, since the method is public.
-            } catch (InvocationTargetException e) {
-                final Throwable cause = e.getCause();
-                if (cause instanceof DataStoreException) throw (DataStoreException) cause;
-                if (cause instanceof RuntimeException)   throw (RuntimeException)   cause;
-                if (cause instanceof Error)              throw (Error)              cause;
-                throw new DataStoreException(e); // The cause may be IOException.
+        if (!isSupported) {
+            final String path = storage.getStorageAs(String.class);
+            if (path != null) {
+                ensureInitialized();
+                final Method method = canOpenFromPath;
+                if (method != null) try {
+                    isSupported = (Boolean) method.invoke(null, path);
+                } catch (IllegalAccessException e) {
+                    // Should never happen, since the method is public.
+                    throw (Error) new IncompatibleClassChangeError("canOpen").initCause(e);
+                } catch (InvocationTargetException e) {
+                    final Throwable cause = e.getCause();
+                    if (cause instanceof DataStoreException) throw (DataStoreException) cause;
+                    if (cause instanceof RuntimeException)   throw (RuntimeException)   cause;
+                    if (cause instanceof Error)              throw (Error)              cause;
+                    throw new DataStoreException(e); // The cause may be IOException.
+                }
+            } else {
+                /*
+                 * Check if the given input is itself an instance of the UCAR oject.
+                 * We check classnames instead of netcdfFileClass.isInstance(storage)
+                 * in order to avoid loading the UCAR library if not needed.
+                 */
+                for (Class<?> type = storage.getStorage().getClass(); type != null; type = type.getSuperclass()) {
+                    if (UCAR_CLASSNAME.equals(type.getName())) {
+                        isSupported = true;
+                        break;
+                    }
+                }
             }
         }
         /*
-         * Check if the given input is itself an instance of the UCAR oject.
-         * We check classnames instead of netcdfFileClass.isInstance(storage)
-         * in order to avoid loading the UCAR library if not needed.
+         * At this point, the readability status has been determined. The file version number
+         * is unknown if we are able to open the file only through the UCAR library.
          */
-        for (Class<?> type = storage.getStorage().getClass(); type != null; type = type.getSuperclass()) {
-            if (UCAR_CLASSNAME.equals(type.getName())) {
-                return Boolean.TRUE;
-            }
+        if (hasVersion) {
+            return new ProbeResult(isSupported, MIME_TYPE, Version.valueOf(version));
         }
-        return Boolean.FALSE;
+        return isSupported ? new ProbeResult(true, MIME_TYPE, null) : ProbeResult.UNSUPPORTED_STORAGE;
     }
 
     /**
-     * Returns a {@link NetcdfStore} implementation associated with this provider. This method invokes
-     * {@link StorageConnector#closeAllExcept(Object)} after data store creation, keeping open only
-     * the needed resource.
+     * Returns a {@link NetcdfStore} implementation associated with this provider.
      *
      * @param storage Information about the storage (URL, stream, {@link ucar.nc2.NetcdfFile} instance, <i>etc</i>).
      */

Modified: sis/branches/Shapefile/storage/sis-netcdf/src/site/apt/index.apt
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/storage/sis-netcdf/src/site/apt/index.apt?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/storage/sis-netcdf/src/site/apt/index.apt [UTF-8] (original)
+++ sis/branches/Shapefile/storage/sis-netcdf/src/site/apt/index.apt [UTF-8] Sun Aug 25 15:49:51 2013
@@ -1,3 +1,22 @@
+~~
+~~ 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.
+~~
+
                              ------------------------------
                                Apache SIS NetCDF storage
                              ------------------------------

Modified: sis/branches/Shapefile/storage/sis-netcdf/src/test/java/org/apache/sis/storage/netcdf/MetadataReaderTest.java
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/storage/sis-netcdf/src/test/java/org/apache/sis/storage/netcdf/MetadataReaderTest.java?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/storage/sis-netcdf/src/test/java/org/apache/sis/storage/netcdf/MetadataReaderTest.java [UTF-8] (original)
+++ sis/branches/Shapefile/storage/sis-netcdf/src/test/java/org/apache/sis/storage/netcdf/MetadataReaderTest.java [UTF-8] Sun Aug 25 15:49:51 2013
@@ -88,7 +88,7 @@ public final strictfp class MetadataRead
      */
     static void compareToExpected(final Metadata actual) {
         assertMultilinesEquals(
-            "DefaultMetadata\n" +
+            "Metadata\n" +
             "  ├─File identifier………………………………………………………………………… edu.ucar.unidata:NCEP/SST/Global_5x2p5deg/SST_Global_5x2p5deg_20050922_0000.nc\n" +
             "  ├─Hierarchy level………………………………………………………………………… Dataset\n" +
             "  ├─Contact\n" +
@@ -113,10 +113,10 @@ public final strictfp class MetadataRead
             "  │   ├─Spatial representation type……………………………… Grid\n" +
             "  │   ├─Extent\n" +
             "  │   │   ├─Geographic element\n" +
-            "  │   │   │   ├─West bound longitude…………………………… -180.0\n" +
-            "  │   │   │   ├─East bound longitude…………………………… 180.0\n" +
-            "  │   │   │   ├─South bound latitude…………………………… -90.0\n" +
-            "  │   │   │   ├─North bound latitude…………………………… 90.0\n" +
+            "  │   │   │   ├─West bound longitude…………………………… 180°W\n" +
+            "  │   │   │   ├─East bound longitude…………………………… 180°E\n" +
+            "  │   │   │   ├─South bound latitude…………………………… 90°S\n" +
+            "  │   │   │   ├─North bound latitude…………………………… 90°N\n" +
             "  │   │   │   └─Extent type code……………………………………… true\n" +
             "  │   │   └─Vertical element\n" +
             "  │   │       ├─Minimum value……………………………………………… 0.0\n" +
@@ -125,7 +125,7 @@ public final strictfp class MetadataRead
             "  │   ├─Citation\n" +
             "  │   │   ├─Title……………………………………………………………………………… Sea Surface Temperature Analysis Model\n" +
             "  │   │   ├─Date\n" +
-            "  │   │   │   ├─Date……………………………………………………………………… Thu Sep 22 02:00:00 CEST 2005\n" +
+            "  │   │   │   ├─Date……………………………………………………………………… 2005/09/22 00:00:00\n" +
             "  │   │   │   └─Date type………………………………………………………… Creation\n" +
             "  │   │   ├─Identifier\n" +
             "  │   │   │   ├─Code……………………………………………………………………… NCEP/SST/Global_5x2p5deg/SST_Global_5x2p5deg_20050922_0000.nc\n" +

Modified: sis/branches/Shapefile/storage/sis-netcdf/src/test/java/org/apache/sis/storage/netcdf/NetcdfStoreProviderTest.java
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/storage/sis-netcdf/src/test/java/org/apache/sis/storage/netcdf/NetcdfStoreProviderTest.java?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/storage/sis-netcdf/src/test/java/org/apache/sis/storage/netcdf/NetcdfStoreProviderTest.java [UTF-8] (original)
+++ sis/branches/Shapefile/storage/sis-netcdf/src/test/java/org/apache/sis/storage/netcdf/NetcdfStoreProviderTest.java [UTF-8] Sun Aug 25 15:49:51 2013
@@ -24,8 +24,10 @@ import org.apache.sis.internal.netcdf.De
 import org.apache.sis.internal.netcdf.ucar.DecoderWrapper;
 import org.apache.sis.internal.netcdf.impl.ChannelDecoder;
 import org.apache.sis.internal.netcdf.impl.ChannelDecoderTest;
+import org.apache.sis.storage.ProbeResult;
 import org.apache.sis.storage.StorageConnector;
 import org.apache.sis.storage.DataStoreException;
+import org.apache.sis.util.Version;
 import org.apache.sis.test.DependsOn;
 import org.junit.Test;
 
@@ -37,7 +39,7 @@ import static org.opengis.test.Assert.*;
  *
  * @author  Martin Desruisseaux (Geomatys)
  * @since   0.3
- * @version 0.3
+ * @version 0.4
  * @module
  */
 @DependsOn({
@@ -45,31 +47,37 @@ import static org.opengis.test.Assert.*;
 })
 public final strictfp class NetcdfStoreProviderTest extends IOTestCase {
     /**
-     * Tests {@link NetcdfStoreProvider#canOpen(StorageConnector)} for an input stream which shall
+     * Tests {@link NetcdfStoreProvider#probeContent(StorageConnector)} for an input stream which shall
      * be recognized as a classic NetCDF file.
      *
      * @throws DataStoreException Should never happen.
      */
     @Test
-    public void testCanOpenFromStream() throws DataStoreException {
+    public void testProbeContentFromStream() throws DataStoreException {
         final StorageConnector c = new StorageConnector(IOTestCase.getResourceAsStream(NCEP));
         final NetcdfStoreProvider provider = new NetcdfStoreProvider();
-        assertTrue(provider.canOpen(c));
+        final ProbeResult probe = provider.probeContent(c);
+        assertTrue  ("isSupported", probe.isSupported());
+        assertEquals("getMimeType", NetcdfStoreProvider.MIME_TYPE, probe.getMimeType());
+        assertEquals("getVersion",  new Version("1"), probe.getVersion());
         c.closeAllExcept(null);
     }
 
     /**
-     * Tests {@link NetcdfStoreProvider#canOpen(StorageConnector)} for a UCAR {@link NetcdfFile} object.
+     * Tests {@link NetcdfStoreProvider#probeContent(StorageConnector)} for a UCAR {@link NetcdfFile} object.
      *
      * @throws IOException If an error occurred while opening the NetCDF file.
      * @throws DataStoreException Should never happen.
      */
     @Test
-    public void testCanOpenFromUCAR() throws IOException, DataStoreException {
+    public void testProbeContentFromUCAR() throws IOException, DataStoreException {
         final NetcdfFile file = open(NCEP);
         final StorageConnector c = new StorageConnector(file);
         final NetcdfStoreProvider provider = new NetcdfStoreProvider();
-        assertTrue(provider.canOpen(c));
+        final ProbeResult probe = provider.probeContent(c);
+        assertTrue  ("isSupported", probe.isSupported());
+        assertEquals("getMimeType", NetcdfStoreProvider.MIME_TYPE, probe.getMimeType());
+        assertNull  ("getVersion",  probe.getVersion());
         file.close();
     }
 

Modified: sis/branches/Shapefile/storage/sis-storage/pom.xml
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/storage/sis-storage/pom.xml?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/storage/sis-storage/pom.xml (original)
+++ sis/branches/Shapefile/storage/sis-storage/pom.xml Sun Aug 25 15:49:51 2013
@@ -28,7 +28,7 @@
   <parent>
     <groupId>org.apache.sis</groupId>
     <artifactId>storage</artifactId>
-    <version>0.3-geoapi3.0-SNAPSHOT</version>
+    <version>0.4-SNAPSHOT</version>
   </parent>
 
 
@@ -105,4 +105,19 @@ Provides the interfaces and base classes
     </plugins>
   </build>
 
+
+  <!-- ===========================================================
+           Dependencies
+       =========================================================== -->
+  <dependencies>
+    <!-- Test dependencies -->
+    <dependency>
+      <groupId>org.apache.sis.core</groupId>
+      <artifactId>sis-metadata</artifactId>
+      <version>${project.version}</version>
+      <type>test-jar</type>
+      <scope>test</scope>
+    </dependency>
+  </dependencies>
+
 </project>

Modified: sis/branches/Shapefile/storage/sis-storage/src/main/java/org/apache/sis/index/tree/QuadTree.java
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/storage/sis-storage/src/main/java/org/apache/sis/index/tree/QuadTree.java?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/storage/sis-storage/src/main/java/org/apache/sis/index/tree/QuadTree.java [UTF-8] (original)
+++ sis/branches/Shapefile/storage/sis-storage/src/main/java/org/apache/sis/index/tree/QuadTree.java [UTF-8] Sun Aug 25 15:49:51 2013
@@ -23,9 +23,9 @@ import java.util.ArrayList;
 import java.util.List;
 
 //SIS imports
-import org.apache.sis.core.LatLon;
+import org.apache.sis.geometry.DirectPosition2D;
 import org.apache.sis.core.LatLonPointRadius;
-import org.apache.sis.core.LatLonRect;
+import org.apache.sis.geometry.Envelope2D;
 import org.apache.sis.distance.DistanceUtils;
 
 /**
@@ -322,7 +322,7 @@ public class QuadTree {
    * @return a list of QuadTreeData that are within the given radius from the
    *         point
    */
-  public List<QuadTreeData> queryByPointRadius(final LatLon point,
+  public List<QuadTreeData> queryByPointRadius(final DirectPosition2D point,
       final double radiusKM) {
     LatLonPointRadius pr = new LatLonPointRadius(point, radiusKM);
     return queryByPointRadius(point, radiusKM, this.root,
@@ -346,7 +346,7 @@ public class QuadTree {
    * @return a list of QuadTreeData that are within the given radius from the
    *         point
    */
-  private List<QuadTreeData> queryByPointRadius(final LatLon point,
+  private List<QuadTreeData> queryByPointRadius(final DirectPosition2D point,
       final double radiusKM, final QuadTreeNode node,
       final Rectangle2D nodeRegion, final Rectangle2D searchRegion) {
     List<QuadTreeData> matches = new ArrayList<QuadTreeData>();
@@ -358,8 +358,8 @@ public class QuadTree {
       else {
         QuadTreeData[] data = node.getData();
         for (int i = 0; i < node.getCount(); i++) {
-          if (DistanceUtils.getHaversineDistance(data[i].getLatLon().getLat(), data[i]
-              .getLatLon().getLon(), point.getLat(), point.getLon()) <= radiusKM) {
+          if (DistanceUtils.getHaversineDistance(data[i].getLatLon().y, data[i]
+              .getLatLon().x, point.y, point.x) <= radiusKM) {
             matches.add(data[i]);
           }
         }
@@ -417,12 +417,16 @@ public class QuadTree {
    * Performs bounding box search.
    *
    * @param searchRegion
-   *          LatLonRect representing the rectangular search region
+   *          Envelope representing the rectangular search region
    * @return a list of QuadTreeData that are within the given radius from the
    *         point
    */
-  public List<QuadTreeData> queryByBoundingBox(final LatLonRect searchRegion) {
-    Rectangle2D rectArray[] = searchRegion.getJavaRectangles();
+  public List<QuadTreeData> queryByBoundingBox(final Envelope2D searchRegion) {
+    Rectangle2D.Double rectArray[] = searchRegion.toRectangles();
+    for (final Rectangle2D.Double r : rectArray) {
+        r.x += 180;
+        r.y += 90;
+    }
     if (rectArray.length == 1) {
       // traverse tree once because region does not cross dateline
       return queryByBoundingBox(rectArray[0]);

Modified: sis/branches/Shapefile/storage/sis-storage/src/main/java/org/apache/sis/index/tree/QuadTreeData.java
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/storage/sis-storage/src/main/java/org/apache/sis/index/tree/QuadTreeData.java?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/storage/sis-storage/src/main/java/org/apache/sis/index/tree/QuadTreeData.java [UTF-8] (original)
+++ sis/branches/Shapefile/storage/sis-storage/src/main/java/org/apache/sis/index/tree/QuadTreeData.java [UTF-8] Sun Aug 25 15:49:51 2013
@@ -18,7 +18,7 @@
 package org.apache.sis.index.tree;
 
 //SIS imports
-import org.apache.sis.core.LatLon;
+import org.apache.sis.geometry.DirectPosition2D;
 
 /**
  * Interface representing data stored in quad tree. All data to be stored in
@@ -46,7 +46,7 @@ public interface QuadTreeData {
    *
    * @return the latitude/longitude pair.
    */
-  public LatLon getLatLon();
+  public DirectPosition2D getLatLon();
 
   /**
    * Returns the name of the file where the entry's info is saved.

Modified: sis/branches/Shapefile/storage/sis-storage/src/main/java/org/apache/sis/index/tree/QuadTreeWriter.java
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/storage/sis-storage/src/main/java/org/apache/sis/index/tree/QuadTreeWriter.java?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/storage/sis-storage/src/main/java/org/apache/sis/index/tree/QuadTreeWriter.java [UTF-8] (original)
+++ sis/branches/Shapefile/storage/sis-storage/src/main/java/org/apache/sis/index/tree/QuadTreeWriter.java [UTF-8] Sun Aug 25 15:49:51 2013
@@ -166,9 +166,9 @@ public class QuadTreeWriter {
     str.append(':');
     QuadTreeData[] data = node.getData();
     for (int i = 0; i < node.getCount(); i++) {
-      str.append(data[i].getLatLon().getLat());
+      str.append(data[i].getLatLon().y);
       str.append(';');
-      str.append(data[i].getLatLon().getLon());
+      str.append(data[i].getLatLon().x);
       str.append(';');
       str.append(data[i].getFileName());
       str.append(':');

Modified: sis/branches/Shapefile/storage/sis-storage/src/main/java/org/apache/sis/internal/storage/ChannelDataInput.java
URL: http://svn.apache.org/viewvc/sis/branches/Shapefile/storage/sis-storage/src/main/java/org/apache/sis/internal/storage/ChannelDataInput.java?rev=1517321&r1=1517320&r2=1517321&view=diff
==============================================================================
--- sis/branches/Shapefile/storage/sis-storage/src/main/java/org/apache/sis/internal/storage/ChannelDataInput.java [UTF-8] (original)
+++ sis/branches/Shapefile/storage/sis-storage/src/main/java/org/apache/sis/internal/storage/ChannelDataInput.java [UTF-8] Sun Aug 25 15:49:51 2013
@@ -59,7 +59,7 @@ import java.nio.channels.FileChannel;
  *
  * @author  Martin Desruisseaux (Geomatys)
  * @since   0.3 (derived from geotk-3.07)
- * @version 0.3
+ * @version 0.4
  * @module
  */
 public class ChannelDataInput {
@@ -150,6 +150,34 @@ public class ChannelDataInput {
     }
 
     /**
+     * Tries to read more bytes from the channel without changing the buffer position.
+     * This method returns a negative number if the buffer is already full or if the channel reached the
+     * <cite>end of stream</cite>. Otherwise this method reads an arbitrary amount of bytes not greater
+     * than the space available in the buffer, and returns the amount bytes actually read.
+     *
+     * @return The number of bytes read, or -2 if the buffer is full, or -1 on <cite>end of stream</cite>.
+     * @throws IOException If an error occurred while reading the bytes.
+     *
+     * @since 0.4
+     */
+    public final int prefetch() throws IOException {
+        final int limit    = buffer.limit();
+        final int capacity = buffer.capacity();
+        if (limit == capacity) {
+            return -2;
+        }
+        final int position = buffer.position();
+        buffer.limit(capacity).position(limit);
+        int c = channel.read(buffer);
+        while (c == 0) {
+            onEmptyChannelBuffer();
+            c = channel.read(buffer);
+        }
+        buffer.limit(buffer.position()).position(position);
+        return c;
+    }
+
+    /**
      * Returns {@code true} if the buffer or the channel has at least one byte remaining.
      * If the {@linkplain #buffer} has no remaining bytes, then this method will attempts
      * to read at least one byte from the {@linkplain #channel}. If no bytes can be read
@@ -708,8 +736,9 @@ public class ChannelDataInput {
                     }
                     onEmptyChannelBuffer();
                 }
+                buffer.flip();
             } while (p > buffer.limit());
-            buffer.flip().position((int) p);
+            buffer.position((int) p);
         } else {
             /*
              * Requested position is before the current buffer limits



Mime
View raw message