sis-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From desruisse...@apache.org
Subject svn commit: r1813747 [13/13] - in /sis/branches/JDK9: ./ application/ application/sis-console/ application/sis-console/src/main/artifact/ application/sis-console/src/main/artifact/lib/ application/sis-console/src/main/artifact/lib/darwin/ application/s...
Date Mon, 30 Oct 2017 10:25:10 GMT
Modified: sis/branches/JDK9/storage/sis-storage/src/main/java/org/apache/sis/storage/DataStore.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK9/storage/sis-storage/src/main/java/org/apache/sis/storage/DataStore.java?rev=1813747&r1=1813746&r2=1813747&view=diff
==============================================================================
--- sis/branches/JDK9/storage/sis-storage/src/main/java/org/apache/sis/storage/DataStore.java
[UTF-8] (original)
+++ sis/branches/JDK9/storage/sis-storage/src/main/java/org/apache/sis/storage/DataStore.java
[UTF-8] Mon Oct 30 10:25:08 2017
@@ -122,6 +122,32 @@ public abstract class DataStore implemen
     }
 
     /**
+     * Creates a new instance as a child of another data store instance.
+     * The new instance inherits the parent {@linkplain #getProvider() provider}.
+     * The parent and the child share the same listeners: adding or removing a listener to
a parent
+     * adds or removes the same listeners to all children, and conversely.
+     *
+     * @param  parent     the parent data store, or {@code null} if none.
+     * @param  connector  information about the storage (URL, stream, reader instance, <i>etc</i>).
+     * @throws DataStoreException if an error occurred while creating the data store for
the given storage.
+     *
+     * @since 0.8
+     */
+    protected DataStore(final DataStore parent, final StorageConnector connector) throws
DataStoreException {
+        ArgumentChecks.ensureNonNull("connector", connector);
+        if (parent != null) {
+            provider  = parent.provider;
+            locale    = parent.locale;
+            listeners = parent.listeners;
+        } else {
+            provider  = null;
+            locale    = Locale.getDefault(Locale.Category.DISPLAY);
+            listeners = new WarningListeners<>(this);
+        }
+        name = connector.getStorageName();
+    }
+
+    /**
      * Returns the factory that created this {@code DataStore} instance.
      * The provider gives additional information on this {@code DataStore} such as a format
description
      * and a list of parameters that can be used for opening data stores of the same class.
@@ -198,7 +224,7 @@ public abstract class DataStore implemen
      * The collection of legal parameters is implementation-dependent
      * ({@linkplain org.apache.sis.parameter.DefaultParameterValue#getDescriptor() their
description}
      * is given by {@link DataStoreProvider#getOpenParameters()}),
-     * but should contain at least a parameter named {@value DataStoreProvider#LOCATION}
+     * but should contain at least a parameter named {@value org.apache.sis.storage.DataStoreProvider#LOCATION}
      * with a {@link java.net.URI}, {@link java.nio.file.Path} or {@link javax.sql.DataSource}
value.
      *
      * <p>In the event a data store must be closed and reopened later, those parameters
can be stored in a file or

Modified: sis/branches/JDK9/storage/sis-storage/src/main/java/org/apache/sis/storage/DataStoreProvider.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK9/storage/sis-storage/src/main/java/org/apache/sis/storage/DataStoreProvider.java?rev=1813747&r1=1813746&r2=1813747&view=diff
==============================================================================
--- sis/branches/JDK9/storage/sis-storage/src/main/java/org/apache/sis/storage/DataStoreProvider.java
[UTF-8] (original)
+++ sis/branches/JDK9/storage/sis-storage/src/main/java/org/apache/sis/storage/DataStoreProvider.java
[UTF-8] Mon Oct 30 10:25:08 2017
@@ -173,7 +173,7 @@ public abstract class DataStoreProvider
      *   <li>Parameters can more easily be serialized in XML or configuration files.</li>
      * </ul></div>
      *
-     * @return description of the parameters required for opening a {@link DataStore}.
+     * @return description of the parameters required or accepted for opening a {@link DataStore}.
      *
      * @see #open(ParameterValueGroup)
      * @see DataStore#getOpenParameters()
@@ -299,7 +299,6 @@ public abstract class DataStoreProvider
             throw new IllegalOpenParameterException(Resources.format(Resources.Keys.UndefinedParameter_2,
                     getShortName(), LOCATION), cause);
         }
-        final StorageConnector connector = new StorageConnector(location);
-        return open(connector);
+        return open(new StorageConnector(location));
     }
 }

Modified: sis/branches/JDK9/storage/sis-storage/src/main/java/org/apache/sis/storage/DataStoreRegistry.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK9/storage/sis-storage/src/main/java/org/apache/sis/storage/DataStoreRegistry.java?rev=1813747&r1=1813746&r2=1813747&view=diff
==============================================================================
--- sis/branches/JDK9/storage/sis-storage/src/main/java/org/apache/sis/storage/DataStoreRegistry.java
[UTF-8] (original)
+++ sis/branches/JDK9/storage/sis-storage/src/main/java/org/apache/sis/storage/DataStoreRegistry.java
[UTF-8] Mon Oct 30 10:25:08 2017
@@ -23,7 +23,7 @@ import java.util.Iterator;
 import java.util.ServiceLoader;
 import org.apache.sis.internal.storage.Resources;
 import org.apache.sis.internal.system.DefaultFactories;
-import org.apache.sis.internal.util.LazySet;
+import org.apache.sis.internal.referencing.LazySet;
 import org.apache.sis.util.ArgumentChecks;
 
 
@@ -241,7 +241,9 @@ search:         while (!deferred.isEmpty
             }
         }
         if (open && selected == null) {
-            throw new UnsupportedStorageException(null, Resources.Keys.UnknownFormatFor_1,
connector.getStorageName());
+            @SuppressWarnings("null")
+            final String name = connector.getStorageName();
+            throw new UnsupportedStorageException(null, Resources.Keys.UnknownFormatFor_1,
name);
         }
         return selected;
     }

Modified: sis/branches/JDK9/storage/sis-storage/src/main/java/org/apache/sis/storage/FeatureSet.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK9/storage/sis-storage/src/main/java/org/apache/sis/storage/FeatureSet.java?rev=1813747&r1=1813746&r2=1813747&view=diff
==============================================================================
--- sis/branches/JDK9/storage/sis-storage/src/main/java/org/apache/sis/storage/FeatureSet.java
[UTF-8] (original)
+++ sis/branches/JDK9/storage/sis-storage/src/main/java/org/apache/sis/storage/FeatureSet.java
[UTF-8] Mon Oct 30 10:25:08 2017
@@ -75,6 +75,40 @@ public interface FeatureSet extends Data
     FeatureType getType() throws DataStoreException;
 
     /**
+     * Requests a subset of features and feature properties from this resource.
+     * The filtering can be applied in two domains:
+     *
+     * <ul>
+     *   <li>The returned {@code FeatureSet} may contain a smaller number of {@link
Feature} instances.</li>
+     *   <li>In each {@code Feature} instance of the returned set, the number of
+     *       {@linkplain org.apache.sis.feature.DefaultFeatureType#getProperty properties}
may be smaller.</li>
+     * </ul>
+     *
+     * While it is technically possible to return a <em>transformed</em> feature
set (i.e. containing feature
+     * properties not found in this original {@code FeatureSet}, for example as a result
of some computation),
+     * such usages should be rare. Transformations should be the topic of a separated processing
package.
+     * This {@code subset(Query)} method is rather for allowing {@link DataStore} implementations
to optimize
+     * the overall filtering by using the tools available with their format (for example
an R-tree).
+     * {@code BoundingBox} filters are the most common case of optimization implemented by
{@link DataStore}.
+     *
+     * <p>The returned subset may be a <em>view</em> of this set, i.e.
changes in this {@code FeatureSet}
+     * may be reflected immediately on the returned subset (and conversely), but not necessarily.
+     * However the returned subset may not have the same capabilities as this {@link FeatureSet}.
+     * In particular, write operations may become unsupported after complex queries.</p>
+     *
+     * <p>The default implementation throws {@link UnsupportedQueryException}.</p>
+     *
+     * @param  query  definition of feature and feature properties filtering applied at reading
time.
+     * @return resulting subset of features (never {@code null}).
+     * @throws UnsupportedQueryException if this {@code FeatureSet} can not execute the
given query.
+     *         This includes query validation errors.
+     * @throws DataStoreException if another error occurred while processing the query.
+     */
+    default FeatureSet subset(Query query) throws UnsupportedQueryException, DataStoreException
{
+        throw new UnsupportedQueryException();
+    }
+
+    /**
      * Returns a stream of all features contained in this dataset.
      * For all features, the following condition shall be true:
      *

Modified: sis/branches/JDK9/storage/sis-storage/src/main/java/org/apache/sis/storage/IllegalOpenParameterException.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK9/storage/sis-storage/src/main/java/org/apache/sis/storage/IllegalOpenParameterException.java?rev=1813747&r1=1813746&r2=1813747&view=diff
==============================================================================
--- sis/branches/JDK9/storage/sis-storage/src/main/java/org/apache/sis/storage/IllegalOpenParameterException.java
[UTF-8] (original)
+++ sis/branches/JDK9/storage/sis-storage/src/main/java/org/apache/sis/storage/IllegalOpenParameterException.java
[UTF-8] Mon Oct 30 10:25:08 2017
@@ -21,7 +21,7 @@ import java.util.Locale;
 
 /**
  * Thrown when a {@code DataStore} can not be opened because of invalid parameters.
- * This may be a missing {@value DataStoreProvider#LOCATION} parameter value,
+ * This may be a missing {@value org.apache.sis.storage.DataStoreProvider#LOCATION} parameter
value,
  * or an unsupported object given to {@link StorageConnector} constructor.
  *
  * @author  Martin Desruisseaux (Geomatys)

Modified: sis/branches/JDK9/storage/sis-storage/src/main/java/org/apache/sis/storage/StorageConnector.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK9/storage/sis-storage/src/main/java/org/apache/sis/storage/StorageConnector.java?rev=1813747&r1=1813746&r2=1813747&view=diff
==============================================================================
--- sis/branches/JDK9/storage/sis-storage/src/main/java/org/apache/sis/storage/StorageConnector.java
[UTF-8] (original)
+++ sis/branches/JDK9/storage/sis-storage/src/main/java/org/apache/sis/storage/StorageConnector.java
[UTF-8] Mon Oct 30 10:25:08 2017
@@ -29,7 +29,6 @@ import java.io.InputStreamReader;
 import java.io.BufferedInputStream;
 import java.io.Serializable;
 import java.nio.ByteBuffer;
-import java.nio.charset.Charset;
 import java.nio.channels.Channel;
 import java.nio.channels.ReadableByteChannel;
 import java.nio.channels.SeekableByteChannel;
@@ -54,6 +53,7 @@ import org.apache.sis.internal.storage.i
 import org.apache.sis.internal.storage.io.ChannelDataInput;
 import org.apache.sis.internal.storage.io.ChannelImageInputStream;
 import org.apache.sis.internal.storage.io.InputStreamAdapter;
+import org.apache.sis.internal.storage.io.RewindableLineReader;
 import org.apache.sis.internal.system.Modules;
 import org.apache.sis.internal.util.Utilities;
 import org.apache.sis.io.InvalidSeekException;
@@ -98,6 +98,11 @@ public class StorageConnector implements
     /**
      * The default size of the {@link ByteBuffer} to be created.
      * Users can override this value by providing a value for {@link OptionKey#BYTE_BUFFER}.
+     * Note that it usually don't need to be very large, since {@link RewindableLineReader}
+     * will have its own buffer (which may be larger) and {@link ChannelDataInput} methods
+     * writing in existing destination arrays will bypass the buffer.
+     *
+     * @see RewindableLineReader#BUFFER_SIZE
      */
     static final int DEFAULT_BUFFER_SIZE = 4096;
 
@@ -592,8 +597,10 @@ public class StorageConnector implements
     }
 
     /**
-     * Returns a short name of the input/output object. The default implementation performs
-     * the following choices based on the type of the {@linkplain #getStorage() storage}
object:
+     * Returns a short name of the input/output object. For example if the storage is a file,
+     * this method returns the filename without the path (but including the file extension).
+     * The default implementation performs the following choices based on the type of the
+     * {@linkplain #getStorage() storage} object:
      *
      * <ul>
      *   <li>For {@link java.nio.file.Path}, {@link java.io.File}, {@link java.net.URI}
or {@link java.net.URL}
@@ -916,7 +923,7 @@ public class StorageConnector implements
          * (potentially an InputStream). We need to remember this chain in 'Coupled' objects.
          */
         final String name = getStorageName();
-        final ReadableByteChannel channel = factory.reader(name);
+        final ReadableByteChannel channel = factory.readable(name, null);
         addView(ReadableByteChannel.class, channel, null, factory.isCoupled() ? CASCADE_ON_RESET
: 0);
         ByteBuffer buffer = getOption(OptionKey.BYTE_BUFFER);       // User-supplied buffer.
         if (buffer == null) {
@@ -1146,10 +1153,7 @@ public class StorageConnector implements
             return null;
         }
         input.mark(DEFAULT_BUFFER_SIZE);
-        final Charset encoding = getOption(OptionKey.ENCODING);
-        Reader in = (encoding != null) ? new InputStreamReader(input, encoding)
-                                       : new InputStreamReader(input);
-        in = new LineNumberReader(in);
+        final Reader in = new RewindableLineReader(input, getOption(OptionKey.ENCODING));
         addView(Reader.class, in, InputStream.class, (byte) (CLEAR_ON_RESET | CASCADE_ON_RESET));
         return in;
     }
@@ -1369,8 +1373,9 @@ public class StorageConnector implements
             op.setValue(TableColumn.NAME,  "options");
             op.setValue(TableColumn.VALUE,  options);
         }
-        if (views != null) {
-            views.get(null).append(root.newChild(), views);
+        final Coupled c = getView(null);
+        if (c != null) {
+            c.append(root.newChild(), views);
         }
         return table.toString();
     }

Modified: sis/branches/JDK9/storage/sis-storage/src/test/java/org/apache/sis/internal/storage/io/ChannelDataInputTest.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK9/storage/sis-storage/src/test/java/org/apache/sis/internal/storage/io/ChannelDataInputTest.java?rev=1813747&r1=1813746&r2=1813747&view=diff
==============================================================================
--- sis/branches/JDK9/storage/sis-storage/src/test/java/org/apache/sis/internal/storage/io/ChannelDataInputTest.java
[UTF-8] (original)
+++ sis/branches/JDK9/storage/sis-storage/src/test/java/org/apache/sis/internal/storage/io/ChannelDataInputTest.java
[UTF-8] Mon Oct 30 10:25:08 2017
@@ -21,6 +21,7 @@ import java.io.DataInputStream;
 import java.io.ByteArrayInputStream;
 import java.io.IOException;
 import java.nio.ByteBuffer;
+import java.nio.charset.StandardCharsets;
 import org.junit.Test;
 
 import static org.junit.Assert.*;
@@ -134,7 +135,7 @@ public final strictfp class ChannelDataI
     }
 
     /**
-     * Tests the {@link ChannelDataInput#readString(int, String)} method.
+     * Tests the {@link ChannelDataInput#readString(int, Charset)} method.
      *
      * @throws IOException should never happen since we read and write in memory only.
      */
@@ -146,7 +147,7 @@ public final strictfp class ChannelDataI
         final ChannelDataInput input = new ChannelDataInput("testReadString",
                 new DripByteChannel(array, random, 1, 32),
                 ByteBuffer.allocate(array.length + 4), false);
-        assertEquals(expected, input.readString(array.length, "UTF-8"));
+        assertEquals(expected, input.readString(array.length, StandardCharsets.UTF_8));
         assertFalse(input.buffer.hasRemaining());
     }
 

Modified: sis/branches/JDK9/storage/sis-storage/src/test/java/org/apache/sis/internal/storage/io/IOUtilitiesTest.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK9/storage/sis-storage/src/test/java/org/apache/sis/internal/storage/io/IOUtilitiesTest.java?rev=1813747&r1=1813746&r2=1813747&view=diff
==============================================================================
--- sis/branches/JDK9/storage/sis-storage/src/test/java/org/apache/sis/internal/storage/io/IOUtilitiesTest.java
[UTF-8] (original)
+++ sis/branches/JDK9/storage/sis-storage/src/test/java/org/apache/sis/internal/storage/io/IOUtilitiesTest.java
[UTF-8] Mon Oct 30 10:25:08 2017
@@ -35,7 +35,7 @@ import static org.junit.Assert.*;
  *
  * @author  Martin Desruisseaux (Geomatys)
  * @author  Johann Sorel (Geomatys)
- * @version 0.4
+ * @version 0.8
  * @since   0.3
  * @module
  */
@@ -112,6 +112,17 @@ public final strictfp class IOUtilitiesT
     }
 
     /**
+     * Tests {@link IOUtilities#filenameWithoutExtension(String)}.
+     */
+    @Test
+    public void testFilenameWithoutExtension() {
+        assertEquals("Map",     IOUtilities.filenameWithoutExtension("/Users/name/Map.png"));
+        assertEquals("Map",     IOUtilities.filenameWithoutExtension("/Users/name/Map"));
+        assertEquals("Map",     IOUtilities.filenameWithoutExtension("Map.png"));
+        assertEquals(".hidden", IOUtilities.filenameWithoutExtension("/Users/name/.hidden"));
+    }
+
+    /**
      * Tests {@link IOUtilities#encodeURI(String)}.
      */
     @Test

Modified: sis/branches/JDK9/storage/sis-storage/src/test/java/org/apache/sis/storage/StorageConnectorTest.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK9/storage/sis-storage/src/test/java/org/apache/sis/storage/StorageConnectorTest.java?rev=1813747&r1=1813746&r2=1813747&view=diff
==============================================================================
--- sis/branches/JDK9/storage/sis-storage/src/test/java/org/apache/sis/storage/StorageConnectorTest.java
[UTF-8] (original)
+++ sis/branches/JDK9/storage/sis-storage/src/test/java/org/apache/sis/storage/StorageConnectorTest.java
[UTF-8] Mon Oct 30 10:25:08 2017
@@ -37,7 +37,7 @@ import org.apache.sis.test.DependsOn;
 import org.apache.sis.test.TestCase;
 import org.junit.Test;
 
-import static org.junit.Assume.*;
+import static org.junit.Assume.assumeTrue;
 import static org.opengis.test.Assert.*;
 
 

Modified: sis/branches/JDK9/storage/sis-storage/src/test/java/org/apache/sis/test/suite/StorageTestSuite.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK9/storage/sis-storage/src/test/java/org/apache/sis/test/suite/StorageTestSuite.java?rev=1813747&r1=1813746&r2=1813747&view=diff
==============================================================================
--- sis/branches/JDK9/storage/sis-storage/src/test/java/org/apache/sis/test/suite/StorageTestSuite.java
[UTF-8] (original)
+++ sis/branches/JDK9/storage/sis-storage/src/test/java/org/apache/sis/test/suite/StorageTestSuite.java
[UTF-8] Mon Oct 30 10:25:08 2017
@@ -37,6 +37,7 @@ import org.junit.BeforeClass;
     org.apache.sis.internal.storage.io.ChannelImageInputStreamTest.class,
     org.apache.sis.internal.storage.io.ChannelImageOutputStreamTest.class,
     org.apache.sis.internal.storage.io.HyperRectangleReaderTest.class,
+    org.apache.sis.internal.storage.io.RewindableLineReaderTest.class,
     org.apache.sis.internal.storage.MetadataBuilderTest.class,
     org.apache.sis.storage.FeatureNamingTest.class,
     org.apache.sis.storage.ProbeResultTest.class,
@@ -48,6 +49,7 @@ import org.junit.BeforeClass;
     org.apache.sis.internal.storage.wkt.StoreTest.class,
     org.apache.sis.internal.storage.csv.StoreProviderTest.class,
     org.apache.sis.internal.storage.csv.StoreTest.class,
+    org.apache.sis.internal.storage.folder.StoreTest.class,
     org.apache.sis.storage.DataStoresTest.class
 })
 public final strictfp class StorageTestSuite extends TestSuite {

Modified: sis/branches/JDK9/storage/sis-xmlstore/src/main/java/org/apache/sis/internal/storage/gpx/Person.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK9/storage/sis-xmlstore/src/main/java/org/apache/sis/internal/storage/gpx/Person.java?rev=1813747&r1=1813746&r2=1813747&view=diff
==============================================================================
--- sis/branches/JDK9/storage/sis-xmlstore/src/main/java/org/apache/sis/internal/storage/gpx/Person.java
[UTF-8] (original)
+++ sis/branches/JDK9/storage/sis-xmlstore/src/main/java/org/apache/sis/internal/storage/gpx/Person.java
[UTF-8] Mon Oct 30 10:25:08 2017
@@ -400,7 +400,7 @@ public final class Person implements Res
 
     /**
      * Returns a string representation of this person statement.
-     * The statement is formatted in a way similar to the email address in client softwares.
+     * The statement is formatted in a way similar to the email address in client software
applications.
      * Example:
      *
      * <blockquote>

Modified: sis/branches/JDK9/storage/sis-xmlstore/src/main/java/org/apache/sis/internal/storage/gpx/Store.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK9/storage/sis-xmlstore/src/main/java/org/apache/sis/internal/storage/gpx/Store.java?rev=1813747&r1=1813746&r2=1813747&view=diff
==============================================================================
--- sis/branches/JDK9/storage/sis-xmlstore/src/main/java/org/apache/sis/internal/storage/gpx/Store.java
[UTF-8] (original)
+++ sis/branches/JDK9/storage/sis-xmlstore/src/main/java/org/apache/sis/internal/storage/gpx/Store.java
[UTF-8] Mon Oct 30 10:25:08 2017
@@ -29,7 +29,7 @@ import org.apache.sis.storage.DataStoreC
 import org.apache.sis.storage.ConcurrentReadException;
 import org.apache.sis.storage.IllegalNameException;
 import org.apache.sis.internal.system.DefaultFactories;
-import org.apache.sis.internal.storage.AbstractDataSet;
+import org.apache.sis.internal.storage.AbstractResource;
 import org.apache.sis.internal.storage.xml.stream.StaxDataStore;
 import org.apache.sis.util.collection.BackingStoreException;
 import org.apache.sis.util.ArgumentChecks;
@@ -177,7 +177,7 @@ public final class Store extends StaxDat
      */
     @Override
     public Envelope getEnvelope() throws DataStoreException {
-        return AbstractDataSet.envelope(getMetadata());
+        return AbstractResource.envelope(getMetadata());
     }
 
     /**

Modified: sis/branches/JDK9/storage/sis-xmlstore/src/main/java/org/apache/sis/internal/storage/xml/stream/StaxDataStore.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK9/storage/sis-xmlstore/src/main/java/org/apache/sis/internal/storage/xml/stream/StaxDataStore.java?rev=1813747&r1=1813746&r2=1813747&view=diff
==============================================================================
--- sis/branches/JDK9/storage/sis-xmlstore/src/main/java/org/apache/sis/internal/storage/xml/stream/StaxDataStore.java
[UTF-8] (original)
+++ sis/branches/JDK9/storage/sis-xmlstore/src/main/java/org/apache/sis/internal/storage/xml/stream/StaxDataStore.java
[UTF-8] Mon Oct 30 10:25:08 2017
@@ -125,9 +125,9 @@ public abstract class StaxDataStore exte
      * <p>We keep this reference as long as possible in order to use {@link #mark()}
and {@link #reset()}
      * instead than creating new streams for re-reading the data.  If we can not reset the
stream but can
      * create a new one, then this field will become a reference to the new stream. This
change should be
-     * done only in last resort, when there is no way to reuse the existing stream.  This
is because the
-     * streams created by {@link ChannelFactory#inputStream(String)} are not of the same
kind than the
-     * streams created by {@link StorageConnector}.</p>
+     * done only in last resort, when there is no way to reuse the existing stream. This
is because the
+     * streams created by {@link ChannelFactory#inputStream(String, WarningListeners)} are
not of the same
+     * kind than the streams created by {@link StorageConnector}.</p>
      *
      * @see #close()
      */
@@ -473,7 +473,7 @@ public abstract class StaxDataStore exte
                     if (channelFactory == null) {
                         throw new ForwardOnlyStorageException(getLocale(), name, StandardOpenOption.READ);
                     }
-                    inputOrFile = input = channelFactory.inputStream(name);
+                    inputOrFile = input = channelFactory.inputStream(name, listeners);
                     type = InputType.STREAM;
                     if (stream == null) {
                         stream = input;



Mime
View raw message