/** Factory method that creates a suitable implementation of this class for the given ByteBuffers. */ @SuppressWarnings("resource") protected ByteBufferIndexInput newCloneInstance(String newResourceDescription, ByteBuffer[] newBuffers, int offset, long length) { if (newBuffers.length == 1) { newBuffers[0].position(offset); return new SingleBufferImpl(newResourceDescription, newBuffers[0].slice(), length, chunkSizePower, this.guard); } else { return new MultiBufferImpl(newResourceDescription, newBuffers, offset, length, chunkSizePower, guard); } }
MultiBufferImpl(String resourceDescription, ByteBuffer[] buffers, int offset, long length, int chunkSizePower, ByteBufferGuard guard) { super(resourceDescription, buffers, length, chunkSizePower, guard); this.offset = offset; try { seek(0L); } catch (IOException ioe) { throw new AssertionError(ioe); } }
/** Factory method that creates a suitable implementation of this class for the given ByteBuffers. */ @SuppressWarnings("resource") protected ByteBufferIndexInput newCloneInstance(String newResourceDescription, ByteBuffer[] newBuffers, int offset, long length) { if (newBuffers.length == 1) { newBuffers[0].position(offset); return new SingleBufferImpl(newResourceDescription, newBuffers[0].slice(), length, chunkSizePower, this.cleaner, this.clones); } else { return new MultiBufferImpl(newResourceDescription, newBuffers, offset, length, chunkSizePower, cleaner, clones); } }
public static ByteBufferIndexInput newInstance(String resourceDescription, ByteBuffer[] buffers, long length, int chunkSizePower, BufferCleaner cleaner, boolean trackClones) { final WeakIdentityMap<ByteBufferIndexInput,Boolean> clones = trackClones ? WeakIdentityMap.<ByteBufferIndexInput,Boolean>newConcurrentHashMap() : null; if (buffers.length == 1) { return new SingleBufferImpl(resourceDescription, buffers[0], length, chunkSizePower, cleaner, clones); } else { return new MultiBufferImpl(resourceDescription, buffers, 0, length, chunkSizePower, cleaner, clones); } }
/** Factory method that creates a suitable implementation of this class for the given ByteBuffers. */ @SuppressWarnings("resource") protected ByteBufferIndexInput newCloneInstance(String newResourceDescription, ByteBuffer[] newBuffers, int offset, long length) { if (newBuffers.length == 1) { newBuffers[0].position(offset); return new SingleBufferImpl(newResourceDescription, newBuffers[0].slice(), length, chunkSizePower, this.guard); } else { return new MultiBufferImpl(newResourceDescription, newBuffers, offset, length, chunkSizePower, guard); } }
public static ByteBufferIndexInput newInstance(String resourceDescription, ByteBuffer[] buffers, long length, int chunkSizePower, ByteBufferGuard guard) { if (buffers.length == 1) { return new SingleBufferImpl(resourceDescription, buffers[0], length, chunkSizePower, guard); } else { return new MultiBufferImpl(resourceDescription, buffers, 0, length, chunkSizePower, guard); } }
/** Factory method that creates a suitable implementation of this class for the given ByteBuffers. */ @SuppressWarnings("resource") protected ByteBufferIndexInput newCloneInstance(String newResourceDescription, ByteBuffer[] newBuffers, int offset, long length) { if (newBuffers.length == 1) { newBuffers[0].position(offset); return new SingleBufferImpl(newResourceDescription, newBuffers[0].slice(), length, chunkSizePower, this.cleaner, this.clones); } else { return new MultiBufferImpl(newResourceDescription, newBuffers, offset, length, chunkSizePower, cleaner, clones); } }
public static ByteBufferIndexInput newInstance(String resourceDescription, ByteBuffer[] buffers, long length, int chunkSizePower, BufferCleaner cleaner, boolean trackClones) { final WeakIdentityMap<ByteBufferIndexInput,Boolean> clones = trackClones ? WeakIdentityMap.<ByteBufferIndexInput,Boolean>newConcurrentHashMap() : null; if (buffers.length == 1) { return new SingleBufferImpl(resourceDescription, buffers[0], length, chunkSizePower, cleaner, clones); } else { return new MultiBufferImpl(resourceDescription, buffers, 0, length, chunkSizePower, cleaner, clones); } }
MultiBufferImpl(String resourceDescription, ByteBuffer[] buffers, int offset, long length, int chunkSizePower, ByteBufferGuard guard) { super(resourceDescription, buffers, length, chunkSizePower, guard); this.offset = offset; try { seek(0L); } catch (IOException ioe) { throw new AssertionError(ioe); } }
MultiBufferImpl(String resourceDescription, ByteBuffer[] buffers, int offset, long length, int chunkSizePower, BufferCleaner cleaner, WeakIdentityMap<ByteBufferIndexInput,Boolean> clones) { super(resourceDescription, buffers, length, chunkSizePower, cleaner, clones); this.offset = offset; try { seek(0L); } catch (IOException ioe) { throw new AssertionError(ioe); } }
MultiBufferImpl(String resourceDescription, ByteBuffer[] buffers, int offset, long length, int chunkSizePower, BufferCleaner cleaner, WeakIdentityMap<ByteBufferIndexInput,Boolean> clones) { super(resourceDescription, buffers, length, chunkSizePower, cleaner, clones); this.offset = offset; try { seek(0L); } catch (IOException ioe) { throw new AssertionError(ioe); } }
public static ByteBufferIndexInput newInstance(String resourceDescription, ByteBuffer[] buffers, long length, int chunkSizePower, ByteBufferGuard guard) { if (buffers.length == 1) { return new SingleBufferImpl(resourceDescription, buffers[0], length, chunkSizePower, guard); } else { return new MultiBufferImpl(resourceDescription, buffers, 0, length, chunkSizePower, guard); } }