private CompletableFuture<ScaleResponse> startScaleInternal(final Stream stream, final List<Long> sealedSegments, final Map<Double, Double> newKeyRanges, String method, long requestId) { Preconditions.checkNotNull(stream, "stream"); Preconditions.checkNotNull(sealedSegments, "sealedSegments"); Preconditions.checkNotNull(newKeyRanges, "newKeyRanges"); final CompletableFuture<ScaleResponse> result = this.retryConfig.runAsync(() -> { RPCAsyncCallback<ScaleResponse> callback = new RPCAsyncCallback<>(requestId, method); long scaleTimestamp = System.currentTimeMillis(); new ControllerClientTagger(client) .withTag(requestId, method, stream.getScope(), stream.getStreamName(), String.valueOf(scaleTimestamp)) .scale(ScaleRequest.newBuilder() .setStreamInfo(ModelHelper.createStreamInfo(stream.getScope(), stream.getStreamName())) .addAllSealedSegments(sealedSegments) .addAllNewKeyRanges(newKeyRanges.entrySet().stream() .map(x -> ScaleRequest.KeyRangeEntry.newBuilder() .setStart(x.getKey()).setEnd(x.getValue()).build()) .collect(Collectors.toList())) .setScaleTimestamp(scaleTimestamp) .build(), callback); return callback.getFuture(); }, this.executor); return result; }
public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { io.pravega.controller.stream.api.grpc.v1.Controller.ScaleRequest.KeyRangeEntry parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (io.pravega.controller.stream.api.grpc.v1.Controller.ScaleRequest.KeyRangeEntry) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; }
.setScaleTimestamp(createTime + 20) .addSealedSegments(1) .addNewKeyRanges(ScaleRequest.KeyRangeEntry.newBuilder().setStart(0.5).setEnd(0.75).build()) .addNewKeyRanges(ScaleRequest.KeyRangeEntry.newBuilder().setStart(0.75).setEnd(1.0).build()) .build(); ResultObserver<ScaleResponse> result2 = new ResultObserver<>();
/** * <code>repeated .io.pravega.controller.stream.api.grpc.v1.ScaleRequest.KeyRangeEntry newKeyRanges = 3;</code> */ public Builder addNewKeyRanges( int index, io.pravega.controller.stream.api.grpc.v1.Controller.ScaleRequest.KeyRangeEntry.Builder builderForValue) { if (newKeyRangesBuilder_ == null) { ensureNewKeyRangesIsMutable(); newKeyRanges_.add(index, builderForValue.build()); onChanged(); } else { newKeyRangesBuilder_.addMessage(index, builderForValue.build()); } return this; } /**
/** * <code>repeated .io.pravega.controller.stream.api.grpc.v1.ScaleRequest.KeyRangeEntry newKeyRanges = 3;</code> */ public Builder addNewKeyRanges( io.pravega.controller.stream.api.grpc.v1.Controller.ScaleRequest.KeyRangeEntry.Builder builderForValue) { if (newKeyRangesBuilder_ == null) { ensureNewKeyRangesIsMutable(); newKeyRanges_.add(builderForValue.build()); onChanged(); } else { newKeyRangesBuilder_.addMessage(builderForValue.build()); } return this; } /**
public static Builder newBuilder(io.pravega.controller.stream.api.grpc.v1.Controller.ScaleRequest.KeyRangeEntry prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } public Builder toBuilder() {
private Builder() { maybeForceBuilderInitialization(); }
/** * <code>repeated .io.pravega.controller.stream.api.grpc.v1.ScaleRequest.KeyRangeEntry newKeyRanges = 3;</code> */ public Builder setNewKeyRanges( int index, io.pravega.controller.stream.api.grpc.v1.Controller.ScaleRequest.KeyRangeEntry.Builder builderForValue) { if (newKeyRangesBuilder_ == null) { ensureNewKeyRangesIsMutable(); newKeyRanges_.set(index, builderForValue.build()); onChanged(); } else { newKeyRangesBuilder_.setMessage(index, builderForValue.build()); } return this; } /**
public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof io.pravega.controller.stream.api.grpc.v1.Controller.ScaleRequest.KeyRangeEntry) { return mergeFrom((io.pravega.controller.stream.api.grpc.v1.Controller.ScaleRequest.KeyRangeEntry)other); } else { super.mergeFrom(other); return this; } }
private Builder( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() {
public io.pravega.controller.stream.api.grpc.v1.Controller.ScaleRequest.KeyRangeEntry build() { io.pravega.controller.stream.api.grpc.v1.Controller.ScaleRequest.KeyRangeEntry result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; }
public Builder mergeFrom(io.pravega.controller.stream.api.grpc.v1.Controller.ScaleRequest.KeyRangeEntry other) { if (other == io.pravega.controller.stream.api.grpc.v1.Controller.ScaleRequest.KeyRangeEntry.getDefaultInstance()) return this; if (other.getStart() != 0D) { setStart(other.getStart()); } if (other.getEnd() != 0D) { setEnd(other.getEnd()); } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; }
@java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /**