/** * Default constructor. Instantiates new {@link SimpleStorageDescriptor}. */ public StorageDescriptor() { simpleStorageDescriptor = new SimpleStorageDescriptor(); }
/** * Assigns the channel ID, position in file and size. * * @param channelId * Channel id to hold. * @param position * Position in file. * @param size * Size. */ public StorageDescriptor(int channelId, long position, long size) { this.channelId = channelId; this.simpleStorageDescriptor = new SimpleStorageDescriptor(position, (int) size); }
/** * Adds the written position and size by updating the existing {@link #descriptors} list. * * @param position * Position that was written. * @param size * Size. */ private synchronized void addPositionAndSize(long position, long size) { for (SimpleStorageDescriptor storageDescriptor : descriptors) { if (((storageDescriptor.getSize() + size) < MAX_RANGE_SIZE) && storageDescriptor.join(position, size)) { return; } } SimpleStorageDescriptor storageDescriptor = new SimpleStorageDescriptor(position, (int) size); descriptors.add(storageDescriptor); }