@Override public CompletableFuture<ReadResult> read(String streamSegmentName, long offset, int maxLength, Duration timeout) { return invoke( streamSegmentName, container -> container.read(streamSegmentName, offset, maxLength, timeout), "read", streamSegmentName, offset, maxLength); }
@Override public CompletableFuture<Void> append(String streamSegmentName, long offset, byte[] data, Collection<AttributeUpdate> attributeUpdates, Duration timeout) { return invoke( streamSegmentName, container -> container.append(streamSegmentName, offset, data, attributeUpdates, timeout), "appendWithOffset", streamSegmentName, offset, data.length, attributeUpdates); }
@Override public CompletableFuture<Long> sealStreamSegment(String streamSegmentName, Duration timeout) { return invoke( streamSegmentName, container -> container.sealStreamSegment(streamSegmentName, timeout), "sealStreamSegment", streamSegmentName); }
@Override public CompletableFuture<Void> append(String streamSegmentName, byte[] data, Collection<AttributeUpdate> attributeUpdates, Duration timeout) { return invoke( streamSegmentName, container -> container.append(streamSegmentName, data, attributeUpdates, timeout), "append", streamSegmentName, data.length, attributeUpdates); }
@Override public CompletableFuture<Void> createStreamSegment(String streamSegmentName, Collection<AttributeUpdate> attributes, Duration timeout) { return invoke( streamSegmentName, container -> container.createStreamSegment(streamSegmentName, attributes, timeout), "createStreamSegment", streamSegmentName, attributes); }
@Override public CompletableFuture<Void> updateAttributes(String streamSegmentName, Collection<AttributeUpdate> attributeUpdates, Duration timeout) { return invoke( streamSegmentName, container -> container.updateAttributes(streamSegmentName, attributeUpdates, timeout), "updateAttributes", streamSegmentName, attributeUpdates); }
@Override public CompletableFuture<Map<UUID, Long>> getAttributes(String streamSegmentName, Collection<UUID> attributeIds, boolean cache, Duration timeout) { return invoke( streamSegmentName, container -> container.getAttributes(streamSegmentName, attributeIds, cache, timeout), "getAttributes", streamSegmentName, attributeIds); }
@Override public CompletableFuture<Void> deleteStreamSegment(String streamSegmentName, Duration timeout) { return invoke( streamSegmentName, container -> container.deleteStreamSegment(streamSegmentName, timeout), "deleteStreamSegment", streamSegmentName); }
@Override public CompletableFuture<SegmentProperties> getStreamSegmentInfo(String streamSegmentName, Duration timeout) { return invoke( streamSegmentName, container -> container.getStreamSegmentInfo(streamSegmentName, timeout), "getStreamSegmentInfo", streamSegmentName); }
@Override public CompletableFuture<SegmentProperties> mergeStreamSegment(String targetStreamSegment, String sourceStreamSegment, Duration timeout) { return invoke( sourceStreamSegment, container -> container.mergeStreamSegment(targetStreamSegment, sourceStreamSegment, timeout), "mergeTransaction", targetStreamSegment, sourceStreamSegment); }
@Override public CompletableFuture<Void> truncateStreamSegment(String streamSegmentName, long offset, Duration timeout) { return invoke( streamSegmentName, container -> container.truncateStreamSegment(streamSegmentName, offset, timeout), "truncateStreamSegment", streamSegmentName); }