@java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); if (getSegmentsCount() > 0) { hash = (37 * hash) + SEGMENTS_FIELD_NUMBER; hash = (53 * hash) + getSegmentsList().hashCode(); } hash = (37 * hash) + DELEGATIONTOKEN_FIELD_NUMBER; hash = (53 * hash) + getDelegationToken().hashCode(); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; }
public static final SuccessorResponse.Builder createSuccessorResponse(Map<SegmentRange, List<Long>> segments) { Preconditions.checkNotNull(segments); return SuccessorResponse.newBuilder() .addAllSegments( segments.entrySet().stream().map( segmentRangeListEntry -> SuccessorResponse.SegmentEntry.newBuilder() .setSegment(segmentRangeListEntry.getKey()) .addAllValue(segmentRangeListEntry.getValue()) .build()) .collect(Collectors.toList())); } }
public io.pravega.controller.stream.api.grpc.v1.Controller.SuccessorResponse buildPartial() { io.pravega.controller.stream.api.grpc.v1.Controller.SuccessorResponse result = new io.pravega.controller.stream.api.grpc.v1.Controller.SuccessorResponse(this); int from_bitField0_ = bitField0_; int to_bitField0_ = 0; if (segmentsBuilder_ == null) { if (((bitField0_ & 0x00000001) == 0x00000001)) { segments_ = java.util.Collections.unmodifiableList(segments_); bitField0_ = (bitField0_ & ~0x00000001); } result.segments_ = segments_; } else { result.segments_ = segmentsBuilder_.build(); } result.delegationToken_ = delegationToken_; result.bitField0_ = to_bitField0_; onBuilt(); return result; }
result.put(ModelHelper.createSegmentId("scope1", "stream1", 7), Pair.of(0.5, 0.25)); val builder = SuccessorResponse.newBuilder(); for (Entry<SegmentId, Pair<Double, Double>> entry : result.entrySet()) { builder.addSegments(SuccessorResponse.SegmentEntry.newBuilder() result.put(ModelHelper.createSegmentId("scope1", "stream8", 10), Pair.of(0.5, 1.0)); val builder = SuccessorResponse.newBuilder(); for (Entry<SegmentId, Pair<Double, Double>> entry : result.entrySet()) { builder.addSegments(SuccessorResponse.SegmentEntry.newBuilder()
public Builder mergeFrom(io.pravega.controller.stream.api.grpc.v1.Controller.SuccessorResponse other) { if (other == io.pravega.controller.stream.api.grpc.v1.Controller.SuccessorResponse.getDefaultInstance()) return this; if (segmentsBuilder_ == null) { if (!other.segments_.isEmpty()) { if (!other.getDelegationToken().isEmpty()) { delegationToken_ = other.delegationToken_; onChanged();
@io.grpc.stub.annotations.RpcMethod( fullMethodName = SERVICE_NAME + '/' + "getSegmentsImmediatlyFollowing", requestType = io.pravega.controller.stream.api.grpc.v1.Controller.SegmentId.class, responseType = io.pravega.controller.stream.api.grpc.v1.Controller.SuccessorResponse.class, methodType = io.grpc.MethodDescriptor.MethodType.UNARY) public static io.grpc.MethodDescriptor<io.pravega.controller.stream.api.grpc.v1.Controller.SegmentId, io.pravega.controller.stream.api.grpc.v1.Controller.SuccessorResponse> getGetSegmentsImmediatlyFollowingMethod() { io.grpc.MethodDescriptor<io.pravega.controller.stream.api.grpc.v1.Controller.SegmentId, io.pravega.controller.stream.api.grpc.v1.Controller.SuccessorResponse> getGetSegmentsImmediatlyFollowingMethod; if ((getGetSegmentsImmediatlyFollowingMethod = ControllerServiceGrpc.getGetSegmentsImmediatlyFollowingMethod) == null) { synchronized (ControllerServiceGrpc.class) { if ((getGetSegmentsImmediatlyFollowingMethod = ControllerServiceGrpc.getGetSegmentsImmediatlyFollowingMethod) == null) { ControllerServiceGrpc.getGetSegmentsImmediatlyFollowingMethod = getGetSegmentsImmediatlyFollowingMethod = io.grpc.MethodDescriptor.<io.pravega.controller.stream.api.grpc.v1.Controller.SegmentId, io.pravega.controller.stream.api.grpc.v1.Controller.SuccessorResponse>newBuilder() .setType(io.grpc.MethodDescriptor.MethodType.UNARY) .setFullMethodName(generateFullMethodName( "io.pravega.controller.stream.api.grpc.v1.ControllerService", "getSegmentsImmediatlyFollowing")) .setSampledToLocalTracing(true) .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( io.pravega.controller.stream.api.grpc.v1.Controller.SegmentId.getDefaultInstance())) .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( io.pravega.controller.stream.api.grpc.v1.Controller.SuccessorResponse.getDefaultInstance())) .setSchemaDescriptor(new ControllerServiceMethodDescriptorSupplier("getSegmentsImmediatlyFollowing")) .build(); } } } return getGetSegmentsImmediatlyFollowingMethod; }
@Override public CompletableFuture<StreamSegmentsWithPredecessors> getSuccessors(Segment segment) { Exceptions.checkNotClosed(closed.get(), this); long traceId = LoggerHelpers.traceEnter(log, "getSuccessors", segment); final CompletableFuture<SuccessorResponse> resultFuture = this.retryConfig.runAsync(() -> { RPCAsyncCallback<SuccessorResponse> callback = new RPCAsyncCallback<>(traceId, "getSuccessors"); client.getSegmentsImmediatlyFollowing(ModelHelper.decode(segment), callback); return callback.getFuture(); }, this.executor); return resultFuture.thenApply(successors -> { log.debug("Received the following data from the controller {}", successors.getSegmentsList()); Map<SegmentWithRange, List<Long>> result = new HashMap<>(); for (SuccessorResponse.SegmentEntry entry : successors.getSegmentsList()) { result.put(ModelHelper.encode(entry.getSegment()), entry.getValueList()); } return new StreamSegmentsWithPredecessors(result, successors.getDelegationToken()); }).whenComplete((x, e) -> { if (e != null) { log.warn("getSuccessors failed: ", e); } LoggerHelpers.traceLeave(log, "getSuccessors", traceId); }); }
@java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof io.pravega.controller.stream.api.grpc.v1.Controller.SuccessorResponse)) { return super.equals(obj); } io.pravega.controller.stream.api.grpc.v1.Controller.SuccessorResponse other = (io.pravega.controller.stream.api.grpc.v1.Controller.SuccessorResponse) obj; boolean result = true; result = result && getSegmentsList() .equals(other.getSegmentsList()); result = result && getDelegationToken() .equals(other.getDelegationToken()); result = result && unknownFields.equals(other.unknownFields); return result; }
public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; for (int i = 0; i < segments_.size(); i++) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(1, segments_.get(i)); } if (!getDelegationTokenBytes().isEmpty()) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, delegationToken_); } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; }
@Test public void getSegmentsImmediatlyFollowingTest() { scaleTest(); ResultObserver<SuccessorResponse> result = new ResultObserver<>(); this.controllerService.getSegmentsImmediatlyFollowing(ModelHelper.createSegmentId(SCOPE1, STREAM1, 1), result); final SuccessorResponse successorResponse = result.get(); Assert.assertEquals(2, successorResponse.getSegmentsCount()); ResultObserver<SuccessorResponse> result2 = new ResultObserver<>(); this.controllerService.getSegmentsImmediatlyFollowing(ModelHelper.createSegmentId(SCOPE1, STREAM1, 0), result2); final SuccessorResponse successorResponse2 = result2.get(); Assert.assertEquals(0, successorResponse2.getSegmentsCount()); }
public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() {
public io.pravega.controller.stream.api.grpc.v1.Controller.SuccessorResponse getDefaultInstanceForType() { return io.pravega.controller.stream.api.grpc.v1.Controller.SuccessorResponse.getDefaultInstance(); }
public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { for (int i = 0; i < segments_.size(); i++) { output.writeMessage(1, segments_.get(i)); } if (!getDelegationTokenBytes().isEmpty()) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, delegationToken_); } unknownFields.writeTo(output); }
@Test public void createSuccessorResponse() { Controller.SegmentRange segmentRange = createSegmentRange(0.1, 0.5); Map<Controller.SegmentRange, List<Long>> inputMap = new HashMap<>(1); inputMap.put(segmentRange, Arrays.asList(1L)); Controller.SuccessorResponse successorResponse = ModelHelper.createSuccessorResponse(inputMap).build(); Assert.assertEquals(1, successorResponse.getSegmentsCount()); final SegmentId resultSegmentID = successorResponse.getSegments(0).getSegment().getSegmentId(); assertEquals("testScope", resultSegmentID.getStreamInfo().getScope()); assertEquals("testStream", resultSegmentID.getStreamInfo().getStream()); }
/** * <code>string delegationToken = 2;</code> */ public Builder clearDelegationToken() { delegationToken_ = getDefaultInstance().getDelegationToken(); onChanged(); return this; } /**