From 05f695c93c7f51c4ece7e7c19aaa49b5c88d2576 Mon Sep 17 00:00:00 2001 From: lixiaolong <702156524@qq.com> Date: Thu, 20 Aug 2026 12:31:29 +0800 Subject: [PATCH] =?UTF-8?q?feat(agv):=20=E6=B7=BB=E5=8A=A0AGV=E9=87=8D?= =?UTF-8?q?=E5=AE=9A=E4=BD=8D=E5=8A=9F=E8=83=BD=E5=B9=B6=E6=89=A9=E5=B1=95?= =?UTF-8?q?=E5=AF=BC=E8=88=AA=E9=80=89=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 新增AgvRelocalizeCommand消息定义,支持在当前活动地图中重新设置AGV定位位姿 - 在AgvService服务中添加relocalize RPC方法,调用前需确保AGV已停止 - 生成相应的Java gRPC服务端和客户端代码实现 - 扩展AgvMotionOptions添加blocked_timeout_ms参数,用于设置连续遇障时最大等待时间 - 更新导航等待工具类支持传入运动选项参数 --- .../web/controller/api/EdgeAgvController.java | 29 +- .../listener/AimaFlowExecutionListener.java | 18 +- .../model/agv/EdgeAgvNavigateToPoseVO.java | 6 + .../model/agv/EdgeAgvNavigateToStationVO.java | 5 + .../client/model/agv/EdgeAgvRelocalizeVO.java | 23 + .../edge/client/service/EdgeAgvService.java | 16 + .../service/impl/EdgeAgvServiceImpl.java | 47 +- .../service/impl/EdgeSystemServiceImpl.java | 3 + .../impl/EdgeSystemServiceImplTest.java | 14 + .../src/main/java/cmvr/api/AgvCommand.java | 2152 +- .../main/java/cmvr/api/AgvServiceGrpc.java | 120 +- .../java/cmvr/api/AgvServiceOuterClass.java | 84 +- .../src/main/java/cmvr/msgs/AgvUtils.java | 242 +- .../src/main/proto/cmvr/api/agv_command.proto | 17 + .../src/main/proto/cmvr/api/agv_service.proto | 3 + .../src/main/proto/cmvr/api/agv_utils.proto | 3 + .../main/proto/cmvr/api/system_service.proto | 4 +- .../framework/config/ThreadPoolConfig.java | 2 + .../InspectionFlowExecutionListener.java | 13 +- cmvr-iot-quic-contract/pom.xml | 2 + .../main/java/cmvr/quic_edge/v1/QuicEdge.java | 18700 ++++++++++++++++ .../gateway/v1/DeviceManagerSnapshot.java | 1235 + .../v1/DeviceManagerSnapshotOrBuilder.java | 76 + .../cmvr/quic/gateway/v1/GrpcEndpoint.java | 675 + .../gateway/v1/GrpcEndpointOrBuilder.java | 34 + .../quic/gateway/v1/ManagedDeviceStatus.java | 1213 + .../v1/ManagedDeviceStatusOrBuilder.java | 82 + .../com/cmvr/quic/gateway/v1/MediaFrame.java | 1483 ++ .../quic/gateway/v1/MediaFrameOrBuilder.java | 106 + .../com/cmvr/quic/gateway/v1/MediaTrack.java | 1612 ++ .../quic/gateway/v1/MediaTrackOrBuilder.java | 118 + .../gateway/v1/NetworkInterfaceAddress.java | 811 + .../v1/NetworkInterfaceAddressOrBuilder.java | 46 + .../com/cmvr/quic/gateway/v1/NodeEvent.java | 760 + .../quic/gateway/v1/NodeEventOrBuilder.java | 42 + .../cmvr/quic/gateway/v1/NodeEventType.java | 141 + .../cmvr/quic/gateway/v1/NodeSnapshot.java | 2641 +++ .../gateway/v1/NodeSnapshotOrBuilder.java | 190 + .../quic/gateway/v1/QuicGatewayProtocol.java | 176 + .../test/config/MediaAnalysisAsyncConfig.java | 23 + .../test/flow/control/FlowControlService.java | 7 + .../dispatcher/FlowEndNodeHandler.java | 13 + .../flow/runtime/engine/FlowItemExecutor.java | 8 + .../engine/support/FlowBranchEvaluator.java | 41 +- .../engine/support/FlowNodeParamPreparer.java | 5 + .../interceptor/FlowAfterInterceptor.java | 3 + .../interceptor/FlowExceptionInterceptor.java | 19 +- .../interceptor/FlowLoggingInterceptor.java | 4 + .../FlowOutputStoreInterceptor.java | 2 +- .../message/TaskNodeExecuteResult.java | 9 + .../operator/edge/AgvNavigationWaiter.java | 13 +- .../operator/edge/EdgeAgvOperateService.java | 17 +- .../llm/AsyncMediaAnalysisCoordinator.java | 227 + .../llm/LLMMediaAnalysisOperateService.java | 60 +- .../service/FlowActionExecutorService.java | 17 +- .../dispatcher/FlowEndNodeHandlerTest.java | 78 + .../support/FlowBranchEvaluatorTest.java | 28 + .../FlowExceptionInterceptorTest.java | 39 + .../AsyncMediaAnalysisCoordinatorTest.java | 185 + .../LLMMediaAnalysisOperateServiceTest.java | 43 +- 60 files changed, 33534 insertions(+), 251 deletions(-) create mode 100644 cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/main/java/com/cmvr/edge/client/model/agv/EdgeAgvRelocalizeVO.java create mode 100644 cmvr-iot-quic-contract/src/main/java/cmvr/quic_edge/v1/QuicEdge.java create mode 100644 cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/DeviceManagerSnapshot.java create mode 100644 cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/DeviceManagerSnapshotOrBuilder.java create mode 100644 cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/GrpcEndpoint.java create mode 100644 cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/GrpcEndpointOrBuilder.java create mode 100644 cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/ManagedDeviceStatus.java create mode 100644 cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/ManagedDeviceStatusOrBuilder.java create mode 100644 cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/MediaFrame.java create mode 100644 cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/MediaFrameOrBuilder.java create mode 100644 cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/MediaTrack.java create mode 100644 cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/MediaTrackOrBuilder.java create mode 100644 cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NetworkInterfaceAddress.java create mode 100644 cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NetworkInterfaceAddressOrBuilder.java create mode 100644 cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NodeEvent.java create mode 100644 cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NodeEventOrBuilder.java create mode 100644 cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NodeEventType.java create mode 100644 cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NodeSnapshot.java create mode 100644 cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NodeSnapshotOrBuilder.java create mode 100644 cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/QuicGatewayProtocol.java create mode 100644 cmvr-iot-test/src/main/java/com/cmvr/test/config/MediaAnalysisAsyncConfig.java create mode 100644 cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/operator/llm/AsyncMediaAnalysisCoordinator.java create mode 100644 cmvr-iot-test/src/test/java/com/cmvr/test/flow/runtime/dispatcher/FlowEndNodeHandlerTest.java create mode 100644 cmvr-iot-test/src/test/java/com/cmvr/test/flow/runtime/engine/support/FlowBranchEvaluatorTest.java create mode 100644 cmvr-iot-test/src/test/java/com/cmvr/test/flow/runtime/interceptor/FlowExceptionInterceptorTest.java create mode 100644 cmvr-iot-test/src/test/java/com/cmvr/test/flow/runtime/operator/llm/AsyncMediaAnalysisCoordinatorTest.java diff --git a/cmvr-iot-admin/src/main/java/com/cmvr/web/controller/api/EdgeAgvController.java b/cmvr-iot-admin/src/main/java/com/cmvr/web/controller/api/EdgeAgvController.java index e75a450..4ac932f 100644 --- a/cmvr-iot-admin/src/main/java/com/cmvr/web/controller/api/EdgeAgvController.java +++ b/cmvr-iot-admin/src/main/java/com/cmvr/web/controller/api/EdgeAgvController.java @@ -6,6 +6,7 @@ import com.cmvr.edge.client.model.EdgeCommonVO; import com.cmvr.edge.client.model.agv.EdgeAgvMapNameVO; import com.cmvr.edge.client.model.agv.EdgeAgvNavigateToPoseVO; import com.cmvr.edge.client.model.agv.EdgeAgvNavigateToStationVO; +import com.cmvr.edge.client.model.agv.EdgeAgvRelocalizeVO; import com.cmvr.edge.client.model.agv.EdgeAgvStartMappingVO; import com.cmvr.edge.client.model.agv.EdgeAgvUploadMapVO; import com.cmvr.edge.client.model.agv.EdgeAgvVelocityVO; @@ -101,6 +102,21 @@ public class EdgeAgvController { return AjaxResult.ok(); } + /** + * 在当前活动地图中重新设置 AGV 定位位姿。 + */ + @ApiOperation("AGV重定位") + @PostMapping("/relocalize") + public AjaxResult relocalize(@RequestBody @Validated EdgeAgvRelocalizeVO vo) { + AgvUtils.AgvPose2d pose = AgvUtils.AgvPose2d.newBuilder() + .setX(vo.getX()) + .setY(vo.getY()) + .setTheta(vo.getTheta()) + .build(); + edgeAgvService.relocalize(vo, pose); + return AjaxResult.ok(); + } + @ApiOperation("固定距离平移") @PostMapping("/translate") public AjaxResult translate(@RequestBody @Validated EdgeAgvTranslateVO vo) { @@ -131,7 +147,7 @@ public class EdgeAgvController { .setY(vo.getY()) .setTheta(vo.getTheta()) .build(); - edgeAgvService.navigateToPose(vo, pose); + edgeAgvService.navigateToPose(vo, pose, navigationOptions(vo.getBlockedTimeoutMs())); return AjaxResult.ok(); } @@ -141,7 +157,7 @@ public class EdgeAgvController { @ApiOperation("导航到站点") @PostMapping("/navigateToStation") public AjaxResult navigateToStation(@RequestBody @Validated EdgeAgvNavigateToStationVO vo) { - edgeAgvService.navigateToStation(vo, vo.getStationId()); + edgeAgvService.navigateToStation(vo, vo.getStationId(), navigationOptions(vo.getBlockedTimeoutMs())); return AjaxResult.ok(); } @@ -311,6 +327,15 @@ public class EdgeAgvController { return vo; } + private AgvUtils.AgvMotionOptions navigationOptions(Integer blockedTimeoutMs) { + int timeout = blockedTimeoutMs == null + ? EdgeAgvService.DEFAULT_BLOCKED_TIMEOUT_MS : blockedTimeoutMs; + return AgvUtils.AgvMotionOptions.newBuilder() + .setAsynchronous(false) + .setBlockedTimeoutMs(timeout) + .build(); + } + private Map toRuntimeStateMap(AgvUtils.AgvRuntimeState state) { Map resultMap = new HashMap<>(); resultMap.put("timestamp", state.getTimestamp()); diff --git a/cmvr-iot-aima/src/main/java/com/cmvr/aima/listener/AimaFlowExecutionListener.java b/cmvr-iot-aima/src/main/java/com/cmvr/aima/listener/AimaFlowExecutionListener.java index 5d42466..e3f5f31 100644 --- a/cmvr-iot-aima/src/main/java/com/cmvr/aima/listener/AimaFlowExecutionListener.java +++ b/cmvr-iot-aima/src/main/java/com/cmvr/aima/listener/AimaFlowExecutionListener.java @@ -166,6 +166,13 @@ public class AimaFlowExecutionListener implements FlowExecutionListener { // 四舍五入保留2位小数 progress = Math.round(progress * 100) / 100.0; JSONObject outputParams = event.getOutputParams(); + boolean nodeFailed = event.getEventType() == FlowExecutionEvent.EventType.NODE_FAILED; + String nodeError = nodeFailed ? StrUtil.trim(event.getErrorMessage()) : null; + JSONObject logOutputParams = outputParams == null + ? new JSONObject() : JSONObject.parseObject(outputParams.toJSONString()); + if (StrUtil.isNotBlank(nodeError)) { + logOutputParams.put("errorMessage", nodeError); + } String imageUrl = FlowMediaParamResolver.lastUrl(outputParams, "imageUrl"); String videoUrl = FlowMediaParamResolver.lastUrl(outputParams, "videoUrl"); String testCaseId = resolveTestCaseId(instId, taskInstance.getTaskId(), event); @@ -181,15 +188,16 @@ public class AimaFlowExecutionListener implements FlowExecutionListener { .itemId(itemId) .itemOrder(event.getItemOrder()) .itemOccurrence(event.getItemOccurrence()) - .logLevel("INFO") - .logType("执行日志") - .logContent("节点【" + event.getNodeName() + "】" + info) - .actualResult(AimaLogExecutionContext.attach(outputParams, itemId, + .logLevel(nodeFailed ? "ERROR" : "INFO") + .logType(nodeFailed ? "异常日志" : "执行日志") + .logContent("节点【" + event.getNodeName() + "】" + info + + (StrUtil.isBlank(nodeError) ? "" : ":" + StrUtil.sub(nodeError, 0, 300))) + .actualResult(AimaLogExecutionContext.attach(logOutputParams, itemId, event.getItemOrder(), event.getItemOccurrence(), event.getEventType().name(), event.getNodeType())) .screenshotUrl(imageUrl) .videoUrl(videoUrl) - .errorStack(event.getErrorMessage()) + .errorStack(nodeError) .logTime(now) .status(nodeLogStatus) .executionStep(event.getNodeName()) diff --git a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/main/java/com/cmvr/edge/client/model/agv/EdgeAgvNavigateToPoseVO.java b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/main/java/com/cmvr/edge/client/model/agv/EdgeAgvNavigateToPoseVO.java index 6e1a116..2c0c850 100644 --- a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/main/java/com/cmvr/edge/client/model/agv/EdgeAgvNavigateToPoseVO.java +++ b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/main/java/com/cmvr/edge/client/model/agv/EdgeAgvNavigateToPoseVO.java @@ -6,6 +6,8 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; +import jakarta.validation.constraints.Min; + /** * AGV 导航到指定坐标的请求参数。 */ @@ -22,4 +24,8 @@ public class EdgeAgvNavigateToPoseVO extends EdgeCommonVO { @ApiModelProperty(value = "目标朝向角,单位:弧度", required = true) private double theta; + + @Min(value = 1, message = "连续遇障超时时间必须大于0") + @ApiModelProperty(value = "连续遇障且底盘停止的超时时间,单位:毫秒", example = "60000") + private Integer blockedTimeoutMs = 60_000; } diff --git a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/main/java/com/cmvr/edge/client/model/agv/EdgeAgvNavigateToStationVO.java b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/main/java/com/cmvr/edge/client/model/agv/EdgeAgvNavigateToStationVO.java index 70c7997..4a39021 100644 --- a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/main/java/com/cmvr/edge/client/model/agv/EdgeAgvNavigateToStationVO.java +++ b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/main/java/com/cmvr/edge/client/model/agv/EdgeAgvNavigateToStationVO.java @@ -7,6 +7,7 @@ import lombok.Data; import lombok.EqualsAndHashCode; import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.Min; /** * AGV 导航到站点的请求参数。 @@ -19,4 +20,8 @@ public class EdgeAgvNavigateToStationVO extends EdgeCommonVO { @NotEmpty(message = "站点ID不能为空") @ApiModelProperty(value = "站点ID", required = true) private String stationId; + + @Min(value = 1, message = "连续遇障超时时间必须大于0") + @ApiModelProperty(value = "连续遇障且底盘停止的超时时间,单位:毫秒", example = "60000") + private Integer blockedTimeoutMs = 60_000; } diff --git a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/main/java/com/cmvr/edge/client/model/agv/EdgeAgvRelocalizeVO.java b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/main/java/com/cmvr/edge/client/model/agv/EdgeAgvRelocalizeVO.java new file mode 100644 index 0000000..4ac873a --- /dev/null +++ b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/main/java/com/cmvr/edge/client/model/agv/EdgeAgvRelocalizeVO.java @@ -0,0 +1,23 @@ +package com.cmvr.edge.client.model.agv; + +import com.cmvr.edge.client.model.EdgeCommonVO; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** AGV 在当前地图中重新设置定位位姿的请求参数。 */ +@Data +@EqualsAndHashCode(callSuper = true) +@ApiModel("AGV重定位参数") +public class EdgeAgvRelocalizeVO extends EdgeCommonVO { + + @ApiModelProperty(value = "定位 X 坐标,单位:米", required = true) + private double x; + + @ApiModelProperty(value = "定位 Y 坐标,单位:米", required = true) + private double y; + + @ApiModelProperty(value = "定位朝向角,单位:弧度,逆时针为正", required = true) + private double theta; +} diff --git a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/main/java/com/cmvr/edge/client/service/EdgeAgvService.java b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/main/java/com/cmvr/edge/client/service/EdgeAgvService.java index f027152..9a7b799 100644 --- a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/main/java/com/cmvr/edge/client/service/EdgeAgvService.java +++ b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/main/java/com/cmvr/edge/client/service/EdgeAgvService.java @@ -15,6 +15,8 @@ import java.util.List; */ public interface EdgeAgvService { + int DEFAULT_BLOCKED_TIMEOUT_MS = 60_000; + /** * 获取AGV运行时状态 * @@ -45,6 +47,11 @@ public interface EdgeAgvService { */ void clearFault(EdgeCommonVO edgeCommonVO); + /** + * 在当前地图中重新设置 AGV 定位位姿。 + */ + void relocalize(EdgeCommonVO edgeCommonVO, AgvUtils.AgvPose2d pose); + /** * 按指定速度平移固定距离。 */ @@ -58,6 +65,9 @@ public interface EdgeAgvService { */ void navigateToPose(EdgeCommonVO edgeCommonVO, AgvUtils.AgvPose2d pose); + void navigateToPose(EdgeCommonVO edgeCommonVO, AgvUtils.AgvPose2d pose, + AgvUtils.AgvMotionOptions options); + /** * 导航到站点 * @@ -66,6 +76,9 @@ public interface EdgeAgvService { */ void navigateToStation(EdgeCommonVO edgeCommonVO, String stationId); + void navigateToStation(EdgeCommonVO edgeCommonVO, String stationId, + AgvUtils.AgvMotionOptions options); + /** * 跟随路径 * @@ -74,6 +87,9 @@ public interface EdgeAgvService { */ void followPath(EdgeCommonVO edgeCommonVO, List pathSegments); + void followPath(EdgeCommonVO edgeCommonVO, List pathSegments, + AgvUtils.AgvMotionOptions options); + /** * 暂停导航 * diff --git a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/main/java/com/cmvr/edge/client/service/impl/EdgeAgvServiceImpl.java b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/main/java/com/cmvr/edge/client/service/impl/EdgeAgvServiceImpl.java index b87640e..0d01bfd 100644 --- a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/main/java/com/cmvr/edge/client/service/impl/EdgeAgvServiceImpl.java +++ b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/main/java/com/cmvr/edge/client/service/impl/EdgeAgvServiceImpl.java @@ -65,6 +65,20 @@ public class EdgeAgvServiceImpl implements EdgeAgvService { executeGrpcCall(() -> stub.clearFault(request)); } + @Override + public void relocalize(EdgeCommonVO edgeCommonVO, AgvUtils.AgvPose2d pose) { + if (pose == null) { + throw new GlobalException("重定位位姿不能为空"); + } + AgvServiceGrpc.AgvServiceBlockingStub stub = grpcServiceManager.getGrpcClient( + edgeCommonVO.getRobotId(), AgvServiceGrpc.AgvServiceBlockingStub.class); + AgvCommand.AgvRelocalizeCommand.Request request = AgvCommand.AgvRelocalizeCommand.Request.newBuilder() + .setHeader(EdgeCommonUtil.buildRequest(edgeCommonVO.getDeviceId())) + .setPose(pose) + .build(); + executeGrpcCall(() -> stub.relocalize(request)); + } + @Override public void translate(EdgeCommonVO edgeCommonVO, AgvUtils.AgvTranslation translation) { if (translation == null || translation.getDistance() <= 0) { @@ -81,6 +95,12 @@ public class EdgeAgvServiceImpl implements EdgeAgvService { @Override public void navigateToPose(EdgeCommonVO edgeCommonVO, AgvUtils.AgvPose2d pose) { + navigateToPose(edgeCommonVO, pose, null); + } + + @Override + public void navigateToPose(EdgeCommonVO edgeCommonVO, AgvUtils.AgvPose2d pose, + AgvUtils.AgvMotionOptions options) { if (pose == null) { throw new GlobalException("目标位姿不能为空"); } @@ -90,12 +110,19 @@ public class EdgeAgvServiceImpl implements EdgeAgvService { AgvCommand.AgvNavigateToPoseCommand.Request request = AgvCommand.AgvNavigateToPoseCommand.Request.newBuilder() .setHeader(EdgeCommonUtil.buildRequest(edgeCommonVO.getDeviceId())) .setPose(pose) + .setOptions(normalizeNavigationOptions(options)) .build(); executeGrpcCall(() -> stub.navigateToPose(request)); } @Override public void navigateToStation(EdgeCommonVO edgeCommonVO, String stationId) { + navigateToStation(edgeCommonVO, stationId, null); + } + + @Override + public void navigateToStation(EdgeCommonVO edgeCommonVO, String stationId, + AgvUtils.AgvMotionOptions options) { if (StrUtil.isBlank(stationId)) { throw new GlobalException("站点ID不能为空"); } @@ -104,9 +131,7 @@ public class EdgeAgvServiceImpl implements EdgeAgvService { edgeCommonVO.getRobotId(), AgvServiceGrpc.AgvServiceBlockingStub.class); AgvCommand.AgvNavigateToStationCommand.Request request = AgvCommand.AgvNavigateToStationCommand.Request.newBuilder() .setHeader(EdgeCommonUtil.buildRequest(edgeCommonVO.getDeviceId())) - .setOptions(AgvUtils.AgvMotionOptions.newBuilder() - .setAsynchronous(false) - .build()) + .setOptions(normalizeNavigationOptions(options)) .setStationId(stationId) .build(); executeGrpcCall(() -> stub.navigateToStation(request)); @@ -114,6 +139,12 @@ public class EdgeAgvServiceImpl implements EdgeAgvService { @Override public void followPath(EdgeCommonVO edgeCommonVO, List pathSegments) { + followPath(edgeCommonVO, pathSegments, null); + } + + @Override + public void followPath(EdgeCommonVO edgeCommonVO, List pathSegments, + AgvUtils.AgvMotionOptions options) { if (pathSegments == null || pathSegments.isEmpty()) { throw new GlobalException("路径段不能为空"); } @@ -123,6 +154,7 @@ public class EdgeAgvServiceImpl implements EdgeAgvService { AgvCommand.AgvFollowPathCommand.Request request = AgvCommand.AgvFollowPathCommand.Request.newBuilder() .setHeader(EdgeCommonUtil.buildRequest(edgeCommonVO.getDeviceId())) .addAllPath(pathSegments) + .setOptions(normalizeNavigationOptions(options)) .build(); executeGrpcCall(() -> stub.followPath(request)); } @@ -268,6 +300,15 @@ public class EdgeAgvServiceImpl implements EdgeAgvService { executeGrpcCall(() -> stub.stopMapping(request)); } + AgvUtils.AgvMotionOptions normalizeNavigationOptions(AgvUtils.AgvMotionOptions options) { + AgvUtils.AgvMotionOptions.Builder builder = options == null + ? AgvUtils.AgvMotionOptions.newBuilder() : options.toBuilder(); + if (builder.getBlockedTimeoutMs() <= 0) { + builder.setBlockedTimeoutMs(EdgeAgvService.DEFAULT_BLOCKED_TIMEOUT_MS); + } + return builder.build(); + } + /** * 执行gRPC调用并处理异常 * diff --git a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/main/java/com/cmvr/edge/client/service/impl/EdgeSystemServiceImpl.java b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/main/java/com/cmvr/edge/client/service/impl/EdgeSystemServiceImpl.java index c3051d5..46ede02 100644 --- a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/main/java/com/cmvr/edge/client/service/impl/EdgeSystemServiceImpl.java +++ b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/main/java/com/cmvr/edge/client/service/impl/EdgeSystemServiceImpl.java @@ -14,6 +14,7 @@ import com.cmvr.edge.client.manage.GrpcServiceManager; import com.cmvr.edge.client.model.system.EdgeSystemJsonCommandVO; import com.cmvr.edge.client.model.system.EdgeSystemUpdateParamsVO; import com.cmvr.edge.client.model.system.EdgeActionQueueVO; +import com.cmvr.edge.client.service.EdgeAgvService; import com.cmvr.edge.client.service.EdgeSystemService; import com.cmvr.edge.client.utils.EdgeCommonUtil; import com.cmvr.common.exception.GlobalException; @@ -314,6 +315,8 @@ public class EdgeSystemServiceImpl implements EdgeSystemService { .setSpeedRatio(params.getDoubleValue("speedRatio")) .setWaitTimeoutMs(params.getIntValue("waitTimeoutMs")) .setPollIntervalMs(params.getIntValue("pollIntervalMs")) + .setBlockedTimeoutMs(params.getIntValue( + "blockedTimeoutMs", EdgeAgvService.DEFAULT_BLOCKED_TIMEOUT_MS)) .setAsynchronous(false) .build(); } diff --git a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/test/java/com/cmvr/edge/client/service/impl/EdgeSystemServiceImplTest.java b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/test/java/com/cmvr/edge/client/service/impl/EdgeSystemServiceImplTest.java index e8b7314..6a92acd 100644 --- a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/test/java/com/cmvr/edge/client/service/impl/EdgeSystemServiceImplTest.java +++ b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-client/src/test/java/com/cmvr/edge/client/service/impl/EdgeSystemServiceImplTest.java @@ -1,6 +1,8 @@ package com.cmvr.edge.client.service.impl; import cmvr.api.SafetyCommand; +import cmvr.msgs.AgvUtils; +import com.cmvr.edge.client.service.EdgeAgvService; import org.junit.Test; import static org.junit.Assert.assertEquals; @@ -38,4 +40,16 @@ public class EdgeSystemServiceImplTest { assertEquals(1000, minimum.getTimeoutMs()); assertEquals(120000, maximum.getTimeoutMs()); } + + @Test + public void appliesDefaultAgvBlockedTimeoutWithoutOverwritingExplicitValue() { + EdgeAgvServiceImpl agvService = new EdgeAgvServiceImpl(null); + + AgvUtils.AgvMotionOptions defaults = agvService.normalizeNavigationOptions(null); + AgvUtils.AgvMotionOptions explicit = agvService.normalizeNavigationOptions( + AgvUtils.AgvMotionOptions.newBuilder().setBlockedTimeoutMs(12_000).build()); + + assertEquals(EdgeAgvService.DEFAULT_BLOCKED_TIMEOUT_MS, defaults.getBlockedTimeoutMs()); + assertEquals(12_000, explicit.getBlockedTimeoutMs()); + } } diff --git a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/java/cmvr/api/AgvCommand.java b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/java/cmvr/api/AgvCommand.java index 2c72111..7b49f24 100644 --- a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/java/cmvr/api/AgvCommand.java +++ b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/java/cmvr/api/AgvCommand.java @@ -4004,6 +4004,1985 @@ public final class AgvCommand { } + public interface AgvRelocalizeCommandOrBuilder extends + // @@protoc_insertion_point(interface_extends:cmvr.api.AgvRelocalizeCommand) + com.google.protobuf.MessageOrBuilder { + } + /** + *
+   * 在当前活动地图中重新设置 AGV 定位位姿。
+   * 
+ * + * Protobuf type {@code cmvr.api.AgvRelocalizeCommand} + */ + public static final class AgvRelocalizeCommand extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:cmvr.api.AgvRelocalizeCommand) + AgvRelocalizeCommandOrBuilder { + private static final long serialVersionUID = 0L; + // Use AgvRelocalizeCommand.newBuilder() to construct. + private AgvRelocalizeCommand(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private AgvRelocalizeCommand() { + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new AgvRelocalizeCommand(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.api.AgvCommand.internal_static_cmvr_api_AgvRelocalizeCommand_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.api.AgvCommand.internal_static_cmvr_api_AgvRelocalizeCommand_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.api.AgvCommand.AgvRelocalizeCommand.class, cmvr.api.AgvCommand.AgvRelocalizeCommand.Builder.class); + } + + public interface RequestOrBuilder extends + // @@protoc_insertion_point(interface_extends:cmvr.api.AgvRelocalizeCommand.Request) + com.google.protobuf.MessageOrBuilder { + + /** + *
+       * header.device_id 指定目标 AGV 设备。
+       * 
+ * + * .cmvr.api.CommandHeader.Request header = 1; + * @return Whether the header field is set. + */ + boolean hasHeader(); + /** + *
+       * header.device_id 指定目标 AGV 设备。
+       * 
+ * + * .cmvr.api.CommandHeader.Request header = 1; + * @return The header. + */ + cmvr.api.Common.CommandHeader.Request getHeader(); + /** + *
+       * header.device_id 指定目标 AGV 设备。
+       * 
+ * + * .cmvr.api.CommandHeader.Request header = 1; + */ + cmvr.api.Common.CommandHeader.RequestOrBuilder getHeaderOrBuilder(); + + /** + *
+       * x/y 单位:米,theta 单位:弧度,逆时针为正。
+       * 
+ * + * .cmvr.msgs.AgvPose2d pose = 2; + * @return Whether the pose field is set. + */ + boolean hasPose(); + /** + *
+       * x/y 单位:米,theta 单位:弧度,逆时针为正。
+       * 
+ * + * .cmvr.msgs.AgvPose2d pose = 2; + * @return The pose. + */ + cmvr.msgs.AgvUtils.AgvPose2d getPose(); + /** + *
+       * x/y 单位:米,theta 单位:弧度,逆时针为正。
+       * 
+ * + * .cmvr.msgs.AgvPose2d pose = 2; + */ + cmvr.msgs.AgvUtils.AgvPose2dOrBuilder getPoseOrBuilder(); + } + /** + * Protobuf type {@code cmvr.api.AgvRelocalizeCommand.Request} + */ + public static final class Request extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:cmvr.api.AgvRelocalizeCommand.Request) + RequestOrBuilder { + private static final long serialVersionUID = 0L; + // Use Request.newBuilder() to construct. + private Request(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private Request() { + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new Request(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.api.AgvCommand.internal_static_cmvr_api_AgvRelocalizeCommand_Request_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.api.AgvCommand.internal_static_cmvr_api_AgvRelocalizeCommand_Request_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.api.AgvCommand.AgvRelocalizeCommand.Request.class, cmvr.api.AgvCommand.AgvRelocalizeCommand.Request.Builder.class); + } + + public static final int HEADER_FIELD_NUMBER = 1; + private cmvr.api.Common.CommandHeader.Request header_; + /** + *
+       * header.device_id 指定目标 AGV 设备。
+       * 
+ * + * .cmvr.api.CommandHeader.Request header = 1; + * @return Whether the header field is set. + */ + @java.lang.Override + public boolean hasHeader() { + return header_ != null; + } + /** + *
+       * header.device_id 指定目标 AGV 设备。
+       * 
+ * + * .cmvr.api.CommandHeader.Request header = 1; + * @return The header. + */ + @java.lang.Override + public cmvr.api.Common.CommandHeader.Request getHeader() { + return header_ == null ? cmvr.api.Common.CommandHeader.Request.getDefaultInstance() : header_; + } + /** + *
+       * header.device_id 指定目标 AGV 设备。
+       * 
+ * + * .cmvr.api.CommandHeader.Request header = 1; + */ + @java.lang.Override + public cmvr.api.Common.CommandHeader.RequestOrBuilder getHeaderOrBuilder() { + return getHeader(); + } + + public static final int POSE_FIELD_NUMBER = 2; + private cmvr.msgs.AgvUtils.AgvPose2d pose_; + /** + *
+       * x/y 单位:米,theta 单位:弧度,逆时针为正。
+       * 
+ * + * .cmvr.msgs.AgvPose2d pose = 2; + * @return Whether the pose field is set. + */ + @java.lang.Override + public boolean hasPose() { + return pose_ != null; + } + /** + *
+       * x/y 单位:米,theta 单位:弧度,逆时针为正。
+       * 
+ * + * .cmvr.msgs.AgvPose2d pose = 2; + * @return The pose. + */ + @java.lang.Override + public cmvr.msgs.AgvUtils.AgvPose2d getPose() { + return pose_ == null ? cmvr.msgs.AgvUtils.AgvPose2d.getDefaultInstance() : pose_; + } + /** + *
+       * x/y 单位:米,theta 单位:弧度,逆时针为正。
+       * 
+ * + * .cmvr.msgs.AgvPose2d pose = 2; + */ + @java.lang.Override + public cmvr.msgs.AgvUtils.AgvPose2dOrBuilder getPoseOrBuilder() { + return getPose(); + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (header_ != null) { + output.writeMessage(1, getHeader()); + } + if (pose_ != null) { + output.writeMessage(2, getPose()); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (header_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getHeader()); + } + if (pose_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2, getPose()); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof cmvr.api.AgvCommand.AgvRelocalizeCommand.Request)) { + return super.equals(obj); + } + cmvr.api.AgvCommand.AgvRelocalizeCommand.Request other = (cmvr.api.AgvCommand.AgvRelocalizeCommand.Request) obj; + + if (hasHeader() != other.hasHeader()) return false; + if (hasHeader()) { + if (!getHeader() + .equals(other.getHeader())) return false; + } + if (hasPose() != other.hasPose()) return false; + if (hasPose()) { + if (!getPose() + .equals(other.getPose())) return false; + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (hasHeader()) { + hash = (37 * hash) + HEADER_FIELD_NUMBER; + hash = (53 * hash) + getHeader().hashCode(); + } + if (hasPose()) { + hash = (37 * hash) + POSE_FIELD_NUMBER; + hash = (53 * hash) + getPose().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Request parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Request parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Request parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Request parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Request parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Request parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Request parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Request parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Request parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Request parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Request parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Request parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(cmvr.api.AgvCommand.AgvRelocalizeCommand.Request prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code cmvr.api.AgvRelocalizeCommand.Request} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:cmvr.api.AgvRelocalizeCommand.Request) + cmvr.api.AgvCommand.AgvRelocalizeCommand.RequestOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.api.AgvCommand.internal_static_cmvr_api_AgvRelocalizeCommand_Request_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.api.AgvCommand.internal_static_cmvr_api_AgvRelocalizeCommand_Request_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.api.AgvCommand.AgvRelocalizeCommand.Request.class, cmvr.api.AgvCommand.AgvRelocalizeCommand.Request.Builder.class); + } + + // Construct using cmvr.api.AgvCommand.AgvRelocalizeCommand.Request.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + if (headerBuilder_ == null) { + header_ = null; + } else { + header_ = null; + headerBuilder_ = null; + } + if (poseBuilder_ == null) { + pose_ = null; + } else { + pose_ = null; + poseBuilder_ = null; + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return cmvr.api.AgvCommand.internal_static_cmvr_api_AgvRelocalizeCommand_Request_descriptor; + } + + @java.lang.Override + public cmvr.api.AgvCommand.AgvRelocalizeCommand.Request getDefaultInstanceForType() { + return cmvr.api.AgvCommand.AgvRelocalizeCommand.Request.getDefaultInstance(); + } + + @java.lang.Override + public cmvr.api.AgvCommand.AgvRelocalizeCommand.Request build() { + cmvr.api.AgvCommand.AgvRelocalizeCommand.Request result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public cmvr.api.AgvCommand.AgvRelocalizeCommand.Request buildPartial() { + cmvr.api.AgvCommand.AgvRelocalizeCommand.Request result = new cmvr.api.AgvCommand.AgvRelocalizeCommand.Request(this); + if (headerBuilder_ == null) { + result.header_ = header_; + } else { + result.header_ = headerBuilder_.build(); + } + if (poseBuilder_ == null) { + result.pose_ = pose_; + } else { + result.pose_ = poseBuilder_.build(); + } + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof cmvr.api.AgvCommand.AgvRelocalizeCommand.Request) { + return mergeFrom((cmvr.api.AgvCommand.AgvRelocalizeCommand.Request)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(cmvr.api.AgvCommand.AgvRelocalizeCommand.Request other) { + if (other == cmvr.api.AgvCommand.AgvRelocalizeCommand.Request.getDefaultInstance()) return this; + if (other.hasHeader()) { + mergeHeader(other.getHeader()); + } + if (other.hasPose()) { + mergePose(other.getPose()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + input.readMessage( + getHeaderFieldBuilder().getBuilder(), + extensionRegistry); + + break; + } // case 10 + case 18: { + input.readMessage( + getPoseFieldBuilder().getBuilder(), + extensionRegistry); + + break; + } // case 18 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private cmvr.api.Common.CommandHeader.Request header_; + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.api.Common.CommandHeader.Request, cmvr.api.Common.CommandHeader.Request.Builder, cmvr.api.Common.CommandHeader.RequestOrBuilder> headerBuilder_; + /** + *
+         * header.device_id 指定目标 AGV 设备。
+         * 
+ * + * .cmvr.api.CommandHeader.Request header = 1; + * @return Whether the header field is set. + */ + public boolean hasHeader() { + return headerBuilder_ != null || header_ != null; + } + /** + *
+         * header.device_id 指定目标 AGV 设备。
+         * 
+ * + * .cmvr.api.CommandHeader.Request header = 1; + * @return The header. + */ + public cmvr.api.Common.CommandHeader.Request getHeader() { + if (headerBuilder_ == null) { + return header_ == null ? cmvr.api.Common.CommandHeader.Request.getDefaultInstance() : header_; + } else { + return headerBuilder_.getMessage(); + } + } + /** + *
+         * header.device_id 指定目标 AGV 设备。
+         * 
+ * + * .cmvr.api.CommandHeader.Request header = 1; + */ + public Builder setHeader(cmvr.api.Common.CommandHeader.Request value) { + if (headerBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + header_ = value; + onChanged(); + } else { + headerBuilder_.setMessage(value); + } + + return this; + } + /** + *
+         * header.device_id 指定目标 AGV 设备。
+         * 
+ * + * .cmvr.api.CommandHeader.Request header = 1; + */ + public Builder setHeader( + cmvr.api.Common.CommandHeader.Request.Builder builderForValue) { + if (headerBuilder_ == null) { + header_ = builderForValue.build(); + onChanged(); + } else { + headerBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + *
+         * header.device_id 指定目标 AGV 设备。
+         * 
+ * + * .cmvr.api.CommandHeader.Request header = 1; + */ + public Builder mergeHeader(cmvr.api.Common.CommandHeader.Request value) { + if (headerBuilder_ == null) { + if (header_ != null) { + header_ = + cmvr.api.Common.CommandHeader.Request.newBuilder(header_).mergeFrom(value).buildPartial(); + } else { + header_ = value; + } + onChanged(); + } else { + headerBuilder_.mergeFrom(value); + } + + return this; + } + /** + *
+         * header.device_id 指定目标 AGV 设备。
+         * 
+ * + * .cmvr.api.CommandHeader.Request header = 1; + */ + public Builder clearHeader() { + if (headerBuilder_ == null) { + header_ = null; + onChanged(); + } else { + header_ = null; + headerBuilder_ = null; + } + + return this; + } + /** + *
+         * header.device_id 指定目标 AGV 设备。
+         * 
+ * + * .cmvr.api.CommandHeader.Request header = 1; + */ + public cmvr.api.Common.CommandHeader.Request.Builder getHeaderBuilder() { + + onChanged(); + return getHeaderFieldBuilder().getBuilder(); + } + /** + *
+         * header.device_id 指定目标 AGV 设备。
+         * 
+ * + * .cmvr.api.CommandHeader.Request header = 1; + */ + public cmvr.api.Common.CommandHeader.RequestOrBuilder getHeaderOrBuilder() { + if (headerBuilder_ != null) { + return headerBuilder_.getMessageOrBuilder(); + } else { + return header_ == null ? + cmvr.api.Common.CommandHeader.Request.getDefaultInstance() : header_; + } + } + /** + *
+         * header.device_id 指定目标 AGV 设备。
+         * 
+ * + * .cmvr.api.CommandHeader.Request header = 1; + */ + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.api.Common.CommandHeader.Request, cmvr.api.Common.CommandHeader.Request.Builder, cmvr.api.Common.CommandHeader.RequestOrBuilder> + getHeaderFieldBuilder() { + if (headerBuilder_ == null) { + headerBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + cmvr.api.Common.CommandHeader.Request, cmvr.api.Common.CommandHeader.Request.Builder, cmvr.api.Common.CommandHeader.RequestOrBuilder>( + getHeader(), + getParentForChildren(), + isClean()); + header_ = null; + } + return headerBuilder_; + } + + private cmvr.msgs.AgvUtils.AgvPose2d pose_; + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.msgs.AgvUtils.AgvPose2d, cmvr.msgs.AgvUtils.AgvPose2d.Builder, cmvr.msgs.AgvUtils.AgvPose2dOrBuilder> poseBuilder_; + /** + *
+         * x/y 单位:米,theta 单位:弧度,逆时针为正。
+         * 
+ * + * .cmvr.msgs.AgvPose2d pose = 2; + * @return Whether the pose field is set. + */ + public boolean hasPose() { + return poseBuilder_ != null || pose_ != null; + } + /** + *
+         * x/y 单位:米,theta 单位:弧度,逆时针为正。
+         * 
+ * + * .cmvr.msgs.AgvPose2d pose = 2; + * @return The pose. + */ + public cmvr.msgs.AgvUtils.AgvPose2d getPose() { + if (poseBuilder_ == null) { + return pose_ == null ? cmvr.msgs.AgvUtils.AgvPose2d.getDefaultInstance() : pose_; + } else { + return poseBuilder_.getMessage(); + } + } + /** + *
+         * x/y 单位:米,theta 单位:弧度,逆时针为正。
+         * 
+ * + * .cmvr.msgs.AgvPose2d pose = 2; + */ + public Builder setPose(cmvr.msgs.AgvUtils.AgvPose2d value) { + if (poseBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + pose_ = value; + onChanged(); + } else { + poseBuilder_.setMessage(value); + } + + return this; + } + /** + *
+         * x/y 单位:米,theta 单位:弧度,逆时针为正。
+         * 
+ * + * .cmvr.msgs.AgvPose2d pose = 2; + */ + public Builder setPose( + cmvr.msgs.AgvUtils.AgvPose2d.Builder builderForValue) { + if (poseBuilder_ == null) { + pose_ = builderForValue.build(); + onChanged(); + } else { + poseBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + *
+         * x/y 单位:米,theta 单位:弧度,逆时针为正。
+         * 
+ * + * .cmvr.msgs.AgvPose2d pose = 2; + */ + public Builder mergePose(cmvr.msgs.AgvUtils.AgvPose2d value) { + if (poseBuilder_ == null) { + if (pose_ != null) { + pose_ = + cmvr.msgs.AgvUtils.AgvPose2d.newBuilder(pose_).mergeFrom(value).buildPartial(); + } else { + pose_ = value; + } + onChanged(); + } else { + poseBuilder_.mergeFrom(value); + } + + return this; + } + /** + *
+         * x/y 单位:米,theta 单位:弧度,逆时针为正。
+         * 
+ * + * .cmvr.msgs.AgvPose2d pose = 2; + */ + public Builder clearPose() { + if (poseBuilder_ == null) { + pose_ = null; + onChanged(); + } else { + pose_ = null; + poseBuilder_ = null; + } + + return this; + } + /** + *
+         * x/y 单位:米,theta 单位:弧度,逆时针为正。
+         * 
+ * + * .cmvr.msgs.AgvPose2d pose = 2; + */ + public cmvr.msgs.AgvUtils.AgvPose2d.Builder getPoseBuilder() { + + onChanged(); + return getPoseFieldBuilder().getBuilder(); + } + /** + *
+         * x/y 单位:米,theta 单位:弧度,逆时针为正。
+         * 
+ * + * .cmvr.msgs.AgvPose2d pose = 2; + */ + public cmvr.msgs.AgvUtils.AgvPose2dOrBuilder getPoseOrBuilder() { + if (poseBuilder_ != null) { + return poseBuilder_.getMessageOrBuilder(); + } else { + return pose_ == null ? + cmvr.msgs.AgvUtils.AgvPose2d.getDefaultInstance() : pose_; + } + } + /** + *
+         * x/y 单位:米,theta 单位:弧度,逆时针为正。
+         * 
+ * + * .cmvr.msgs.AgvPose2d pose = 2; + */ + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.msgs.AgvUtils.AgvPose2d, cmvr.msgs.AgvUtils.AgvPose2d.Builder, cmvr.msgs.AgvUtils.AgvPose2dOrBuilder> + getPoseFieldBuilder() { + if (poseBuilder_ == null) { + poseBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + cmvr.msgs.AgvUtils.AgvPose2d, cmvr.msgs.AgvUtils.AgvPose2d.Builder, cmvr.msgs.AgvUtils.AgvPose2dOrBuilder>( + getPose(), + getParentForChildren(), + isClean()); + pose_ = null; + } + return poseBuilder_; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:cmvr.api.AgvRelocalizeCommand.Request) + } + + // @@protoc_insertion_point(class_scope:cmvr.api.AgvRelocalizeCommand.Request) + private static final cmvr.api.AgvCommand.AgvRelocalizeCommand.Request DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new cmvr.api.AgvCommand.AgvRelocalizeCommand.Request(); + } + + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Request getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public Request parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public cmvr.api.AgvCommand.AgvRelocalizeCommand.Request getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface FeedbackOrBuilder extends + // @@protoc_insertion_point(interface_extends:cmvr.api.AgvRelocalizeCommand.Feedback) + com.google.protobuf.MessageOrBuilder { + + /** + *
+       * 成功仅表示控制器接受命令,不表示定位已经收敛。
+       * 
+ * + * .cmvr.api.CommandHeader.Feedback header = 1; + * @return Whether the header field is set. + */ + boolean hasHeader(); + /** + *
+       * 成功仅表示控制器接受命令,不表示定位已经收敛。
+       * 
+ * + * .cmvr.api.CommandHeader.Feedback header = 1; + * @return The header. + */ + cmvr.api.Common.CommandHeader.Feedback getHeader(); + /** + *
+       * 成功仅表示控制器接受命令,不表示定位已经收敛。
+       * 
+ * + * .cmvr.api.CommandHeader.Feedback header = 1; + */ + cmvr.api.Common.CommandHeader.FeedbackOrBuilder getHeaderOrBuilder(); + } + /** + * Protobuf type {@code cmvr.api.AgvRelocalizeCommand.Feedback} + */ + public static final class Feedback extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:cmvr.api.AgvRelocalizeCommand.Feedback) + FeedbackOrBuilder { + private static final long serialVersionUID = 0L; + // Use Feedback.newBuilder() to construct. + private Feedback(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private Feedback() { + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new Feedback(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.api.AgvCommand.internal_static_cmvr_api_AgvRelocalizeCommand_Feedback_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.api.AgvCommand.internal_static_cmvr_api_AgvRelocalizeCommand_Feedback_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback.class, cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback.Builder.class); + } + + public static final int HEADER_FIELD_NUMBER = 1; + private cmvr.api.Common.CommandHeader.Feedback header_; + /** + *
+       * 成功仅表示控制器接受命令,不表示定位已经收敛。
+       * 
+ * + * .cmvr.api.CommandHeader.Feedback header = 1; + * @return Whether the header field is set. + */ + @java.lang.Override + public boolean hasHeader() { + return header_ != null; + } + /** + *
+       * 成功仅表示控制器接受命令,不表示定位已经收敛。
+       * 
+ * + * .cmvr.api.CommandHeader.Feedback header = 1; + * @return The header. + */ + @java.lang.Override + public cmvr.api.Common.CommandHeader.Feedback getHeader() { + return header_ == null ? cmvr.api.Common.CommandHeader.Feedback.getDefaultInstance() : header_; + } + /** + *
+       * 成功仅表示控制器接受命令,不表示定位已经收敛。
+       * 
+ * + * .cmvr.api.CommandHeader.Feedback header = 1; + */ + @java.lang.Override + public cmvr.api.Common.CommandHeader.FeedbackOrBuilder getHeaderOrBuilder() { + return getHeader(); + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (header_ != null) { + output.writeMessage(1, getHeader()); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (header_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getHeader()); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback)) { + return super.equals(obj); + } + cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback other = (cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback) obj; + + if (hasHeader() != other.hasHeader()) return false; + if (hasHeader()) { + if (!getHeader() + .equals(other.getHeader())) return false; + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (hasHeader()) { + hash = (37 * hash) + HEADER_FIELD_NUMBER; + hash = (53 * hash) + getHeader().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code cmvr.api.AgvRelocalizeCommand.Feedback} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:cmvr.api.AgvRelocalizeCommand.Feedback) + cmvr.api.AgvCommand.AgvRelocalizeCommand.FeedbackOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.api.AgvCommand.internal_static_cmvr_api_AgvRelocalizeCommand_Feedback_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.api.AgvCommand.internal_static_cmvr_api_AgvRelocalizeCommand_Feedback_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback.class, cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback.Builder.class); + } + + // Construct using cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + if (headerBuilder_ == null) { + header_ = null; + } else { + header_ = null; + headerBuilder_ = null; + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return cmvr.api.AgvCommand.internal_static_cmvr_api_AgvRelocalizeCommand_Feedback_descriptor; + } + + @java.lang.Override + public cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback getDefaultInstanceForType() { + return cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback.getDefaultInstance(); + } + + @java.lang.Override + public cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback build() { + cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback buildPartial() { + cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback result = new cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback(this); + if (headerBuilder_ == null) { + result.header_ = header_; + } else { + result.header_ = headerBuilder_.build(); + } + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback) { + return mergeFrom((cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback other) { + if (other == cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback.getDefaultInstance()) return this; + if (other.hasHeader()) { + mergeHeader(other.getHeader()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + input.readMessage( + getHeaderFieldBuilder().getBuilder(), + extensionRegistry); + + break; + } // case 10 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private cmvr.api.Common.CommandHeader.Feedback header_; + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.api.Common.CommandHeader.Feedback, cmvr.api.Common.CommandHeader.Feedback.Builder, cmvr.api.Common.CommandHeader.FeedbackOrBuilder> headerBuilder_; + /** + *
+         * 成功仅表示控制器接受命令,不表示定位已经收敛。
+         * 
+ * + * .cmvr.api.CommandHeader.Feedback header = 1; + * @return Whether the header field is set. + */ + public boolean hasHeader() { + return headerBuilder_ != null || header_ != null; + } + /** + *
+         * 成功仅表示控制器接受命令,不表示定位已经收敛。
+         * 
+ * + * .cmvr.api.CommandHeader.Feedback header = 1; + * @return The header. + */ + public cmvr.api.Common.CommandHeader.Feedback getHeader() { + if (headerBuilder_ == null) { + return header_ == null ? cmvr.api.Common.CommandHeader.Feedback.getDefaultInstance() : header_; + } else { + return headerBuilder_.getMessage(); + } + } + /** + *
+         * 成功仅表示控制器接受命令,不表示定位已经收敛。
+         * 
+ * + * .cmvr.api.CommandHeader.Feedback header = 1; + */ + public Builder setHeader(cmvr.api.Common.CommandHeader.Feedback value) { + if (headerBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + header_ = value; + onChanged(); + } else { + headerBuilder_.setMessage(value); + } + + return this; + } + /** + *
+         * 成功仅表示控制器接受命令,不表示定位已经收敛。
+         * 
+ * + * .cmvr.api.CommandHeader.Feedback header = 1; + */ + public Builder setHeader( + cmvr.api.Common.CommandHeader.Feedback.Builder builderForValue) { + if (headerBuilder_ == null) { + header_ = builderForValue.build(); + onChanged(); + } else { + headerBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + *
+         * 成功仅表示控制器接受命令,不表示定位已经收敛。
+         * 
+ * + * .cmvr.api.CommandHeader.Feedback header = 1; + */ + public Builder mergeHeader(cmvr.api.Common.CommandHeader.Feedback value) { + if (headerBuilder_ == null) { + if (header_ != null) { + header_ = + cmvr.api.Common.CommandHeader.Feedback.newBuilder(header_).mergeFrom(value).buildPartial(); + } else { + header_ = value; + } + onChanged(); + } else { + headerBuilder_.mergeFrom(value); + } + + return this; + } + /** + *
+         * 成功仅表示控制器接受命令,不表示定位已经收敛。
+         * 
+ * + * .cmvr.api.CommandHeader.Feedback header = 1; + */ + public Builder clearHeader() { + if (headerBuilder_ == null) { + header_ = null; + onChanged(); + } else { + header_ = null; + headerBuilder_ = null; + } + + return this; + } + /** + *
+         * 成功仅表示控制器接受命令,不表示定位已经收敛。
+         * 
+ * + * .cmvr.api.CommandHeader.Feedback header = 1; + */ + public cmvr.api.Common.CommandHeader.Feedback.Builder getHeaderBuilder() { + + onChanged(); + return getHeaderFieldBuilder().getBuilder(); + } + /** + *
+         * 成功仅表示控制器接受命令,不表示定位已经收敛。
+         * 
+ * + * .cmvr.api.CommandHeader.Feedback header = 1; + */ + public cmvr.api.Common.CommandHeader.FeedbackOrBuilder getHeaderOrBuilder() { + if (headerBuilder_ != null) { + return headerBuilder_.getMessageOrBuilder(); + } else { + return header_ == null ? + cmvr.api.Common.CommandHeader.Feedback.getDefaultInstance() : header_; + } + } + /** + *
+         * 成功仅表示控制器接受命令,不表示定位已经收敛。
+         * 
+ * + * .cmvr.api.CommandHeader.Feedback header = 1; + */ + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.api.Common.CommandHeader.Feedback, cmvr.api.Common.CommandHeader.Feedback.Builder, cmvr.api.Common.CommandHeader.FeedbackOrBuilder> + getHeaderFieldBuilder() { + if (headerBuilder_ == null) { + headerBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + cmvr.api.Common.CommandHeader.Feedback, cmvr.api.Common.CommandHeader.Feedback.Builder, cmvr.api.Common.CommandHeader.FeedbackOrBuilder>( + getHeader(), + getParentForChildren(), + isClean()); + header_ = null; + } + return headerBuilder_; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:cmvr.api.AgvRelocalizeCommand.Feedback) + } + + // @@protoc_insertion_point(class_scope:cmvr.api.AgvRelocalizeCommand.Feedback) + private static final cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback(); + } + + public static cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public Feedback parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof cmvr.api.AgvCommand.AgvRelocalizeCommand)) { + return super.equals(obj); + } + cmvr.api.AgvCommand.AgvRelocalizeCommand other = (cmvr.api.AgvCommand.AgvRelocalizeCommand) obj; + + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static cmvr.api.AgvCommand.AgvRelocalizeCommand parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.api.AgvCommand.AgvRelocalizeCommand parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(cmvr.api.AgvCommand.AgvRelocalizeCommand prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * 在当前活动地图中重新设置 AGV 定位位姿。
+     * 
+ * + * Protobuf type {@code cmvr.api.AgvRelocalizeCommand} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:cmvr.api.AgvRelocalizeCommand) + cmvr.api.AgvCommand.AgvRelocalizeCommandOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.api.AgvCommand.internal_static_cmvr_api_AgvRelocalizeCommand_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.api.AgvCommand.internal_static_cmvr_api_AgvRelocalizeCommand_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.api.AgvCommand.AgvRelocalizeCommand.class, cmvr.api.AgvCommand.AgvRelocalizeCommand.Builder.class); + } + + // Construct using cmvr.api.AgvCommand.AgvRelocalizeCommand.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return cmvr.api.AgvCommand.internal_static_cmvr_api_AgvRelocalizeCommand_descriptor; + } + + @java.lang.Override + public cmvr.api.AgvCommand.AgvRelocalizeCommand getDefaultInstanceForType() { + return cmvr.api.AgvCommand.AgvRelocalizeCommand.getDefaultInstance(); + } + + @java.lang.Override + public cmvr.api.AgvCommand.AgvRelocalizeCommand build() { + cmvr.api.AgvCommand.AgvRelocalizeCommand result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public cmvr.api.AgvCommand.AgvRelocalizeCommand buildPartial() { + cmvr.api.AgvCommand.AgvRelocalizeCommand result = new cmvr.api.AgvCommand.AgvRelocalizeCommand(this); + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof cmvr.api.AgvCommand.AgvRelocalizeCommand) { + return mergeFrom((cmvr.api.AgvCommand.AgvRelocalizeCommand)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(cmvr.api.AgvCommand.AgvRelocalizeCommand other) { + if (other == cmvr.api.AgvCommand.AgvRelocalizeCommand.getDefaultInstance()) return this; + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:cmvr.api.AgvRelocalizeCommand) + } + + // @@protoc_insertion_point(class_scope:cmvr.api.AgvRelocalizeCommand) + private static final cmvr.api.AgvCommand.AgvRelocalizeCommand DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new cmvr.api.AgvCommand.AgvRelocalizeCommand(); + } + + public static cmvr.api.AgvCommand.AgvRelocalizeCommand getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public AgvRelocalizeCommand parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public cmvr.api.AgvCommand.AgvRelocalizeCommand getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + public interface AgvNavigateToPoseCommandOrBuilder extends // @@protoc_insertion_point(interface_extends:cmvr.api.AgvNavigateToPoseCommand) com.google.protobuf.MessageOrBuilder { @@ -27093,6 +29072,21 @@ public final class AgvCommand { private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_cmvr_api_AgvNavigationStatusCommand_Feedback_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_cmvr_api_AgvRelocalizeCommand_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_cmvr_api_AgvRelocalizeCommand_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_cmvr_api_AgvRelocalizeCommand_Request_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_cmvr_api_AgvRelocalizeCommand_Request_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_cmvr_api_AgvRelocalizeCommand_Feedback_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_cmvr_api_AgvRelocalizeCommand_Feedback_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_cmvr_api_AgvNavigateToPoseCommand_descriptor; private static final @@ -27264,65 +29258,69 @@ public final class AgvCommand { "er.Request\032l\n\010Feedback\0220\n\006header\030\001 \001(\0132 " + ".cmvr.api.CommandHeader.Feedback\022.\n\006stat" + "us\030\002 \001(\0132\036.cmvr.msgs.AgvNavigationStatus" + - "\"\234\002\n\030AgvNavigateToPoseCommand\032\301\001\n\007Reques" + - "t\022/\n\006header\030\001 \001(\0132\037.cmvr.api.CommandHead" + - "er.Request\022\"\n\004pose\030\002 \001(\0132\024.cmvr.msgs.Agv" + - "Pose2d\022,\n\007options\030\003 \001(\0132\033.cmvr.msgs.AgvM" + - "otionOptions\0223\n\016adapter_params\030\004 \001(\0132\033.c" + - "mvr.msgs.AgvAdapterParams\032<\n\010Feedback\0220\n" + - "\006header\030\001 \001(\0132 .cmvr.api.CommandHeader.F" + - "eedback\"\217\002\n\033AgvNavigateToStationCommand\032" + - "\261\001\n\007Request\022/\n\006header\030\001 \001(\0132\037.cmvr.api.C" + - "ommandHeader.Request\022\022\n\nstation_id\030\002 \001(\t" + - "\022,\n\007options\030\003 \001(\0132\033.cmvr.msgs.AgvMotionO" + - "ptions\0223\n\016adapter_params\030\004 \001(\0132\033.cmvr.ms" + - "gs.AgvAdapterParams\032<\n\010Feedback\0220\n\006heade" + - "r\030\001 \001(\0132 .cmvr.api.CommandHeader.Feedbac" + - "k\"\350\001\n\024AgvFollowPathCommand\032\221\001\n\007Request\022/" + - "\n\006header\030\001 \001(\0132\037.cmvr.api.CommandHeader." + - "Request\022\'\n\004path\030\002 \003(\0132\031.cmvr.msgs.AgvPat" + - "hSegment\022,\n\007options\030\003 \001(\0132\033.cmvr.msgs.Ag" + - "vMotionOptions\032<\n\010Feedback\0220\n\006header\030\001 \001" + - "(\0132 .cmvr.api.CommandHeader.Feedback\"\277\001\n" + - "\023AgvTranslateCommand\032j\n\007Request\022/\n\006heade" + - "r\030\001 \001(\0132\037.cmvr.api.CommandHeader.Request" + - "\022.\n\013translation\030\002 \001(\0132\031.cmvr.msgs.AgvTra" + - "nslation\032<\n\010Feedback\0220\n\006header\030\001 \001(\0132 .c" + - "mvr.api.CommandHeader.Feedback\"\273\001\n\025AgvSe" + - "tVelocityCommand\032d\n\007Request\022/\n\006header\030\001 " + - "\001(\0132\037.cmvr.api.CommandHeader.Request\022(\n\010" + - "velocity\030\002 \001(\0132\026.cmvr.msgs.AgvVelocity\032<" + - "\n\010Feedback\0220\n\006header\030\001 \001(\0132 .cmvr.api.Co" + - "mmandHeader.Feedback\"\234\001\n\022AgvListMapsComm" + - "and\032:\n\007Request\022/\n\006header\030\001 \001(\0132\037.cmvr.ap" + - "i.CommandHeader.Request\032J\n\010Feedback\0220\n\006h" + - "eader\030\001 \001(\0132 .cmvr.api.CommandHeader.Fee" + - "dback\022\014\n\004maps\030\002 \003(\t\"\273\001\n\026AgvListStationsC" + - "ommand\032:\n\007Request\022/\n\006header\030\001 \001(\0132\037.cmvr" + - ".api.CommandHeader.Request\032e\n\010Feedback\0220" + - "\n\006header\030\001 \001(\0132 .cmvr.api.CommandHeader." + - "Feedback\022\'\n\010stations\030\002 \003(\0132\025.cmvr.msgs.A" + - "gvStation\"\275\001\n\rAgvMapCommand\032]\n\007Request\022/" + - "\n\006header\030\001 \001(\0132\037.cmvr.api.CommandHeader." + - "Request\022\020\n\010map_name\030\002 \001(\t\022\017\n\007content\030\003 \001" + - "(\t\032M\n\010Feedback\0220\n\006header\030\001 \001(\0132 .cmvr.ap" + - "i.CommandHeader.Feedback\022\017\n\007content\030\002 \001(" + - "\t\"\373\001\n\026AgvStartMappingCommand\032\216\001\n\007Request" + + "\"\264\001\n\024AgvRelocalizeCommand\032^\n\007Request\022/\n\006" + + "header\030\001 \001(\0132\037.cmvr.api.CommandHeader.Re" + + "quest\022\"\n\004pose\030\002 \001(\0132\024.cmvr.msgs.AgvPose2" + + "d\032<\n\010Feedback\0220\n\006header\030\001 \001(\0132 .cmvr.api" + + ".CommandHeader.Feedback\"\234\002\n\030AgvNavigateT" + + "oPoseCommand\032\301\001\n\007Request\022/\n\006header\030\001 \001(\013" + + "2\037.cmvr.api.CommandHeader.Request\022\"\n\004pos" + + "e\030\002 \001(\0132\024.cmvr.msgs.AgvPose2d\022,\n\007options" + + "\030\003 \001(\0132\033.cmvr.msgs.AgvMotionOptions\0223\n\016a" + + "dapter_params\030\004 \001(\0132\033.cmvr.msgs.AgvAdapt" + + "erParams\032<\n\010Feedback\0220\n\006header\030\001 \001(\0132 .c" + + "mvr.api.CommandHeader.Feedback\"\217\002\n\033AgvNa" + + "vigateToStationCommand\032\261\001\n\007Request\022/\n\006he" + + "ader\030\001 \001(\0132\037.cmvr.api.CommandHeader.Requ" + + "est\022\022\n\nstation_id\030\002 \001(\t\022,\n\007options\030\003 \001(\013" + + "2\033.cmvr.msgs.AgvMotionOptions\0223\n\016adapter" + + "_params\030\004 \001(\0132\033.cmvr.msgs.AgvAdapterPara" + + "ms\032<\n\010Feedback\0220\n\006header\030\001 \001(\0132 .cmvr.ap" + + "i.CommandHeader.Feedback\"\350\001\n\024AgvFollowPa" + + "thCommand\032\221\001\n\007Request\022/\n\006header\030\001 \001(\0132\037." + + "cmvr.api.CommandHeader.Request\022\'\n\004path\030\002" + + " \003(\0132\031.cmvr.msgs.AgvPathSegment\022,\n\007optio" + + "ns\030\003 \001(\0132\033.cmvr.msgs.AgvMotionOptions\032<\n" + + "\010Feedback\0220\n\006header\030\001 \001(\0132 .cmvr.api.Com" + + "mandHeader.Feedback\"\277\001\n\023AgvTranslateComm" + + "and\032j\n\007Request\022/\n\006header\030\001 \001(\0132\037.cmvr.ap" + + "i.CommandHeader.Request\022.\n\013translation\030\002" + + " \001(\0132\031.cmvr.msgs.AgvTranslation\032<\n\010Feedb" + + "ack\0220\n\006header\030\001 \001(\0132 .cmvr.api.CommandHe" + + "ader.Feedback\"\273\001\n\025AgvSetVelocityCommand\032" + + "d\n\007Request\022/\n\006header\030\001 \001(\0132\037.cmvr.api.Co" + + "mmandHeader.Request\022(\n\010velocity\030\002 \001(\0132\026." + + "cmvr.msgs.AgvVelocity\032<\n\010Feedback\0220\n\006hea" + + "der\030\001 \001(\0132 .cmvr.api.CommandHeader.Feedb" + + "ack\"\234\001\n\022AgvListMapsCommand\032:\n\007Request\022/\n" + + "\006header\030\001 \001(\0132\037.cmvr.api.CommandHeader.R" + + "equest\032J\n\010Feedback\0220\n\006header\030\001 \001(\0132 .cmv" + + "r.api.CommandHeader.Feedback\022\014\n\004maps\030\002 \003" + + "(\t\"\273\001\n\026AgvListStationsCommand\032:\n\007Request" + "\022/\n\006header\030\001 \001(\0132\037.cmvr.api.CommandHeade" + - "r.Request\022-\n\tdimension\030\002 \001(\0162\032.cmvr.msgs" + - ".AgvMapDimension\022\020\n\010map_name\030\003 \001(\t\022\021\n\tre" + - "al_time\030\004 \001(\010\032P\n\010Feedback\0220\n\006header\030\001 \001(" + - "\0132 .cmvr.api.CommandHeader.Feedback\022\022\n\ns" + - "ession_id\030\002 \001(\t\"\327\002\n\023AgvMapStreamCommand\032" + - "\321\001\n\007Request\022/\n\006header\030\001 \001(\0132\037.cmvr.api.C" + - "ommandHeader.Request\022-\n\tdimension\030\002 \001(\0162" + - "\032.cmvr.msgs.AgvMapDimension\022\020\n\010map_name\030" + - "\003 \001(\t\022\024\n\014resume_token\030\004 \001(\t\022\020\n\010snapshot\030" + - "\005 \001(\010\022\023\n\013incremental\030\006 \001(\010\022\027\n\017max_chunk_" + - "bytes\030\007 \001(\005\032l\n\010Feedback\0220\n\006header\030\001 \001(\0132" + - " .cmvr.api.CommandHeader.Feedback\022.\n\006upd" + - "ate\030\002 \001(\0132\036.cmvr.msgs.AgvUnifiedMapUpdat" + - "eb\006proto3" + "r.Request\032e\n\010Feedback\0220\n\006header\030\001 \001(\0132 ." + + "cmvr.api.CommandHeader.Feedback\022\'\n\010stati" + + "ons\030\002 \003(\0132\025.cmvr.msgs.AgvStation\"\275\001\n\rAgv" + + "MapCommand\032]\n\007Request\022/\n\006header\030\001 \001(\0132\037." + + "cmvr.api.CommandHeader.Request\022\020\n\010map_na" + + "me\030\002 \001(\t\022\017\n\007content\030\003 \001(\t\032M\n\010Feedback\0220\n" + + "\006header\030\001 \001(\0132 .cmvr.api.CommandHeader.F" + + "eedback\022\017\n\007content\030\002 \001(\t\"\373\001\n\026AgvStartMap" + + "pingCommand\032\216\001\n\007Request\022/\n\006header\030\001 \001(\0132" + + "\037.cmvr.api.CommandHeader.Request\022-\n\tdime" + + "nsion\030\002 \001(\0162\032.cmvr.msgs.AgvMapDimension\022" + + "\020\n\010map_name\030\003 \001(\t\022\021\n\treal_time\030\004 \001(\010\032P\n\010" + + "Feedback\0220\n\006header\030\001 \001(\0132 .cmvr.api.Comm" + + "andHeader.Feedback\022\022\n\nsession_id\030\002 \001(\t\"\327" + + "\002\n\023AgvMapStreamCommand\032\321\001\n\007Request\022/\n\006he" + + "ader\030\001 \001(\0132\037.cmvr.api.CommandHeader.Requ" + + "est\022-\n\tdimension\030\002 \001(\0162\032.cmvr.msgs.AgvMa" + + "pDimension\022\020\n\010map_name\030\003 \001(\t\022\024\n\014resume_t" + + "oken\030\004 \001(\t\022\020\n\010snapshot\030\005 \001(\010\022\023\n\013incremen" + + "tal\030\006 \001(\010\022\027\n\017max_chunk_bytes\030\007 \001(\005\032l\n\010Fe" + + "edback\0220\n\006header\030\001 \001(\0132 .cmvr.api.Comman" + + "dHeader.Feedback\022.\n\006update\030\002 \001(\0132\036.cmvr." + + "msgs.AgvUnifiedMapUpdateb\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, @@ -27366,8 +29364,26 @@ public final class AgvCommand { com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_cmvr_api_AgvNavigationStatusCommand_Feedback_descriptor, new java.lang.String[] { "Header", "Status", }); - internal_static_cmvr_api_AgvNavigateToPoseCommand_descriptor = + internal_static_cmvr_api_AgvRelocalizeCommand_descriptor = getDescriptor().getMessageTypes().get(2); + internal_static_cmvr_api_AgvRelocalizeCommand_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_cmvr_api_AgvRelocalizeCommand_descriptor, + new java.lang.String[] { }); + internal_static_cmvr_api_AgvRelocalizeCommand_Request_descriptor = + internal_static_cmvr_api_AgvRelocalizeCommand_descriptor.getNestedTypes().get(0); + internal_static_cmvr_api_AgvRelocalizeCommand_Request_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_cmvr_api_AgvRelocalizeCommand_Request_descriptor, + new java.lang.String[] { "Header", "Pose", }); + internal_static_cmvr_api_AgvRelocalizeCommand_Feedback_descriptor = + internal_static_cmvr_api_AgvRelocalizeCommand_descriptor.getNestedTypes().get(1); + internal_static_cmvr_api_AgvRelocalizeCommand_Feedback_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_cmvr_api_AgvRelocalizeCommand_Feedback_descriptor, + new java.lang.String[] { "Header", }); + internal_static_cmvr_api_AgvNavigateToPoseCommand_descriptor = + getDescriptor().getMessageTypes().get(3); internal_static_cmvr_api_AgvNavigateToPoseCommand_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_cmvr_api_AgvNavigateToPoseCommand_descriptor, @@ -27385,7 +29401,7 @@ public final class AgvCommand { internal_static_cmvr_api_AgvNavigateToPoseCommand_Feedback_descriptor, new java.lang.String[] { "Header", }); internal_static_cmvr_api_AgvNavigateToStationCommand_descriptor = - getDescriptor().getMessageTypes().get(3); + getDescriptor().getMessageTypes().get(4); internal_static_cmvr_api_AgvNavigateToStationCommand_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_cmvr_api_AgvNavigateToStationCommand_descriptor, @@ -27403,7 +29419,7 @@ public final class AgvCommand { internal_static_cmvr_api_AgvNavigateToStationCommand_Feedback_descriptor, new java.lang.String[] { "Header", }); internal_static_cmvr_api_AgvFollowPathCommand_descriptor = - getDescriptor().getMessageTypes().get(4); + getDescriptor().getMessageTypes().get(5); internal_static_cmvr_api_AgvFollowPathCommand_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_cmvr_api_AgvFollowPathCommand_descriptor, @@ -27421,7 +29437,7 @@ public final class AgvCommand { internal_static_cmvr_api_AgvFollowPathCommand_Feedback_descriptor, new java.lang.String[] { "Header", }); internal_static_cmvr_api_AgvTranslateCommand_descriptor = - getDescriptor().getMessageTypes().get(5); + getDescriptor().getMessageTypes().get(6); internal_static_cmvr_api_AgvTranslateCommand_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_cmvr_api_AgvTranslateCommand_descriptor, @@ -27439,7 +29455,7 @@ public final class AgvCommand { internal_static_cmvr_api_AgvTranslateCommand_Feedback_descriptor, new java.lang.String[] { "Header", }); internal_static_cmvr_api_AgvSetVelocityCommand_descriptor = - getDescriptor().getMessageTypes().get(6); + getDescriptor().getMessageTypes().get(7); internal_static_cmvr_api_AgvSetVelocityCommand_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_cmvr_api_AgvSetVelocityCommand_descriptor, @@ -27457,7 +29473,7 @@ public final class AgvCommand { internal_static_cmvr_api_AgvSetVelocityCommand_Feedback_descriptor, new java.lang.String[] { "Header", }); internal_static_cmvr_api_AgvListMapsCommand_descriptor = - getDescriptor().getMessageTypes().get(7); + getDescriptor().getMessageTypes().get(8); internal_static_cmvr_api_AgvListMapsCommand_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_cmvr_api_AgvListMapsCommand_descriptor, @@ -27475,7 +29491,7 @@ public final class AgvCommand { internal_static_cmvr_api_AgvListMapsCommand_Feedback_descriptor, new java.lang.String[] { "Header", "Maps", }); internal_static_cmvr_api_AgvListStationsCommand_descriptor = - getDescriptor().getMessageTypes().get(8); + getDescriptor().getMessageTypes().get(9); internal_static_cmvr_api_AgvListStationsCommand_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_cmvr_api_AgvListStationsCommand_descriptor, @@ -27493,7 +29509,7 @@ public final class AgvCommand { internal_static_cmvr_api_AgvListStationsCommand_Feedback_descriptor, new java.lang.String[] { "Header", "Stations", }); internal_static_cmvr_api_AgvMapCommand_descriptor = - getDescriptor().getMessageTypes().get(9); + getDescriptor().getMessageTypes().get(10); internal_static_cmvr_api_AgvMapCommand_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_cmvr_api_AgvMapCommand_descriptor, @@ -27511,7 +29527,7 @@ public final class AgvCommand { internal_static_cmvr_api_AgvMapCommand_Feedback_descriptor, new java.lang.String[] { "Header", "Content", }); internal_static_cmvr_api_AgvStartMappingCommand_descriptor = - getDescriptor().getMessageTypes().get(10); + getDescriptor().getMessageTypes().get(11); internal_static_cmvr_api_AgvStartMappingCommand_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_cmvr_api_AgvStartMappingCommand_descriptor, @@ -27529,7 +29545,7 @@ public final class AgvCommand { internal_static_cmvr_api_AgvStartMappingCommand_Feedback_descriptor, new java.lang.String[] { "Header", "SessionId", }); internal_static_cmvr_api_AgvMapStreamCommand_descriptor = - getDescriptor().getMessageTypes().get(11); + getDescriptor().getMessageTypes().get(12); internal_static_cmvr_api_AgvMapStreamCommand_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_cmvr_api_AgvMapStreamCommand_descriptor, diff --git a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/java/cmvr/api/AgvServiceGrpc.java b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/java/cmvr/api/AgvServiceGrpc.java index 0ea7ebf..19e8898 100644 --- a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/java/cmvr/api/AgvServiceGrpc.java +++ b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/java/cmvr/api/AgvServiceGrpc.java @@ -143,6 +143,37 @@ public final class AgvServiceGrpc { return getClearFaultMethod; } + private static volatile io.grpc.MethodDescriptor getRelocalizeMethod; + + @io.grpc.stub.annotations.RpcMethod( + fullMethodName = SERVICE_NAME + '/' + "relocalize", + requestType = cmvr.api.AgvCommand.AgvRelocalizeCommand.Request.class, + responseType = cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback.class, + methodType = io.grpc.MethodDescriptor.MethodType.UNARY) + public static io.grpc.MethodDescriptor getRelocalizeMethod() { + io.grpc.MethodDescriptor getRelocalizeMethod; + if ((getRelocalizeMethod = AgvServiceGrpc.getRelocalizeMethod) == null) { + synchronized (AgvServiceGrpc.class) { + if ((getRelocalizeMethod = AgvServiceGrpc.getRelocalizeMethod) == null) { + AgvServiceGrpc.getRelocalizeMethod = getRelocalizeMethod = + io.grpc.MethodDescriptor.newBuilder() + .setType(io.grpc.MethodDescriptor.MethodType.UNARY) + .setFullMethodName(generateFullMethodName(SERVICE_NAME, "relocalize")) + .setSampledToLocalTracing(true) + .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + cmvr.api.AgvCommand.AgvRelocalizeCommand.Request.getDefaultInstance())) + .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( + cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback.getDefaultInstance())) + .setSchemaDescriptor(new AgvServiceMethodDescriptorSupplier("relocalize")) + .build(); + } + } + } + return getRelocalizeMethod; + } + private static volatile io.grpc.MethodDescriptor getNavigateToPoseMethod; @@ -762,6 +793,16 @@ public final class AgvServiceGrpc { io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getClearFaultMethod(), responseObserver); } + /** + *
+     * 在当前活动地图中重新设置定位位姿。调用前 AGV 必须已经停止。
+     * 
+ */ + public void relocalize(cmvr.api.AgvCommand.AgvRelocalizeCommand.Request request, + io.grpc.stub.StreamObserver responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall(getRelocalizeMethod(), responseObserver); + } + /** *
      * 导航到指定地图位姿。目标位姿 x/y 单位为米,theta 单位为弧度。
@@ -964,6 +1005,13 @@ public final class AgvServiceGrpc {
                 cmvr.api.Common.CommandHeader.Request,
                 cmvr.api.Common.CommandHeader.Feedback>(
                   this, METHODID_CLEAR_FAULT)))
+          .addMethod(
+            getRelocalizeMethod(),
+            io.grpc.stub.ServerCalls.asyncUnaryCall(
+              new MethodHandlers<
+                cmvr.api.AgvCommand.AgvRelocalizeCommand.Request,
+                cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback>(
+                  this, METHODID_RELOCALIZE)))
           .addMethod(
             getNavigateToPoseMethod(),
             io.grpc.stub.ServerCalls.asyncUnaryCall(
@@ -1149,6 +1197,17 @@ public final class AgvServiceGrpc {
           getChannel().newCall(getClearFaultMethod(), getCallOptions()), request, responseObserver);
     }
 
+    /**
+     * 
+     * 在当前活动地图中重新设置定位位姿。调用前 AGV 必须已经停止。
+     * 
+ */ + public void relocalize(cmvr.api.AgvCommand.AgvRelocalizeCommand.Request request, + io.grpc.stub.StreamObserver responseObserver) { + io.grpc.stub.ClientCalls.asyncUnaryCall( + getChannel().newCall(getRelocalizeMethod(), getCallOptions()), request, responseObserver); + } + /** *
      * 导航到指定地图位姿。目标位姿 x/y 单位为米,theta 单位为弧度。
@@ -1397,6 +1456,16 @@ public final class AgvServiceGrpc {
           getChannel(), getClearFaultMethod(), getCallOptions(), request);
     }
 
+    /**
+     * 
+     * 在当前活动地图中重新设置定位位姿。调用前 AGV 必须已经停止。
+     * 
+ */ + public cmvr.api.AgvCommand.AgvRelocalizeCommand.Feedback relocalize(cmvr.api.AgvCommand.AgvRelocalizeCommand.Request request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getRelocalizeMethod(), getCallOptions(), request); + } + /** *
      * 导航到指定地图位姿。目标位姿 x/y 单位为米,theta 单位为弧度。
@@ -1633,6 +1702,17 @@ public final class AgvServiceGrpc {
           getChannel().newCall(getClearFaultMethod(), getCallOptions()), request);
     }
 
+    /**
+     * 
+     * 在当前活动地图中重新设置定位位姿。调用前 AGV 必须已经停止。
+     * 
+ */ + public com.google.common.util.concurrent.ListenableFuture relocalize( + cmvr.api.AgvCommand.AgvRelocalizeCommand.Request request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getRelocalizeMethod(), getCallOptions()), request); + } + /** *
      * 导航到指定地图位姿。目标位姿 x/y 单位为米,theta 单位为弧度。
@@ -1815,23 +1895,24 @@ public final class AgvServiceGrpc {
   private static final int METHODID_GET_NAVIGATION_STATUS = 1;
   private static final int METHODID_EMERGENCY_STOP = 2;
   private static final int METHODID_CLEAR_FAULT = 3;
-  private static final int METHODID_NAVIGATE_TO_POSE = 4;
-  private static final int METHODID_NAVIGATE_TO_STATION = 5;
-  private static final int METHODID_FOLLOW_PATH = 6;
-  private static final int METHODID_PAUSE_NAVIGATION = 7;
-  private static final int METHODID_RESUME_NAVIGATION = 8;
-  private static final int METHODID_CANCEL_NAVIGATION = 9;
-  private static final int METHODID_SET_VELOCITY = 10;
-  private static final int METHODID_STOP_VELOCITY_CONTROL = 11;
-  private static final int METHODID_LIST_MAPS = 12;
-  private static final int METHODID_LIST_STATIONS = 13;
-  private static final int METHODID_SWITCH_MAP = 14;
-  private static final int METHODID_UPLOAD_MAP = 15;
-  private static final int METHODID_DOWNLOAD_MAP = 16;
-  private static final int METHODID_START_MAPPING = 17;
-  private static final int METHODID_STREAM_MAP = 18;
-  private static final int METHODID_STOP_MAPPING = 19;
-  private static final int METHODID_TRANSLATE = 20;
+  private static final int METHODID_RELOCALIZE = 4;
+  private static final int METHODID_NAVIGATE_TO_POSE = 5;
+  private static final int METHODID_NAVIGATE_TO_STATION = 6;
+  private static final int METHODID_FOLLOW_PATH = 7;
+  private static final int METHODID_PAUSE_NAVIGATION = 8;
+  private static final int METHODID_RESUME_NAVIGATION = 9;
+  private static final int METHODID_CANCEL_NAVIGATION = 10;
+  private static final int METHODID_SET_VELOCITY = 11;
+  private static final int METHODID_STOP_VELOCITY_CONTROL = 12;
+  private static final int METHODID_LIST_MAPS = 13;
+  private static final int METHODID_LIST_STATIONS = 14;
+  private static final int METHODID_SWITCH_MAP = 15;
+  private static final int METHODID_UPLOAD_MAP = 16;
+  private static final int METHODID_DOWNLOAD_MAP = 17;
+  private static final int METHODID_START_MAPPING = 18;
+  private static final int METHODID_STREAM_MAP = 19;
+  private static final int METHODID_STOP_MAPPING = 20;
+  private static final int METHODID_TRANSLATE = 21;
 
   private static final class MethodHandlers implements
       io.grpc.stub.ServerCalls.UnaryMethod,
@@ -1866,6 +1947,10 @@ public final class AgvServiceGrpc {
           serviceImpl.clearFault((cmvr.api.Common.CommandHeader.Request) request,
               (io.grpc.stub.StreamObserver) responseObserver);
           break;
+        case METHODID_RELOCALIZE:
+          serviceImpl.relocalize((cmvr.api.AgvCommand.AgvRelocalizeCommand.Request) request,
+              (io.grpc.stub.StreamObserver) responseObserver);
+          break;
         case METHODID_NAVIGATE_TO_POSE:
           serviceImpl.navigateToPose((cmvr.api.AgvCommand.AgvNavigateToPoseCommand.Request) request,
               (io.grpc.stub.StreamObserver) responseObserver);
@@ -1999,6 +2084,7 @@ public final class AgvServiceGrpc {
               .addMethod(getGetNavigationStatusMethod())
               .addMethod(getEmergencyStopMethod())
               .addMethod(getClearFaultMethod())
+              .addMethod(getRelocalizeMethod())
               .addMethod(getNavigateToPoseMethod())
               .addMethod(getNavigateToStationMethod())
               .addMethod(getFollowPathMethod())
diff --git a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/java/cmvr/api/AgvServiceOuterClass.java b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/java/cmvr/api/AgvServiceOuterClass.java
index acbffd8..0006505 100644
--- a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/java/cmvr/api/AgvServiceOuterClass.java
+++ b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/java/cmvr/api/AgvServiceOuterClass.java
@@ -25,7 +25,7 @@ public final class AgvServiceOuterClass {
     java.lang.String[] descriptorData = {
       "\n\032cmvr/api/agv_service.proto\022\010cmvr.api\032\025" +
       "cmvr/api/common.proto\032\032cmvr/api/agv_comm" +
-      "and.proto2\254\017\n\nAgvService\022f\n\017getRuntimeSt" +
+      "and.proto2\213\020\n\nAgvService\022f\n\017getRuntimeSt" +
       "ate\022(.cmvr.api.AgvRuntimeStateCommand.Re" +
       "quest\032).cmvr.api.AgvRuntimeStateCommand." +
       "Feedback\022r\n\023getNavigationStatus\022,.cmvr.a" +
@@ -35,46 +35,48 @@ public final class AgvServiceOuterClass {
       "Header.Request\032 .cmvr.api.CommandHeader." +
       "Feedback\022O\n\nclearFault\022\037.cmvr.api.Comman" +
       "dHeader.Request\032 .cmvr.api.CommandHeader" +
-      ".Feedback\022i\n\016navigateToPose\022*.cmvr.api.A" +
-      "gvNavigateToPoseCommand.Request\032+.cmvr.a" +
-      "pi.AgvNavigateToPoseCommand.Feedback\022r\n\021" +
-      "navigateToStation\022-.cmvr.api.AgvNavigate" +
-      "ToStationCommand.Request\032..cmvr.api.AgvN" +
-      "avigateToStationCommand.Feedback\022]\n\nfoll" +
-      "owPath\022&.cmvr.api.AgvFollowPathCommand.R" +
-      "equest\032\'.cmvr.api.AgvFollowPathCommand.F" +
-      "eedback\022T\n\017pauseNavigation\022\037.cmvr.api.Co" +
-      "mmandHeader.Request\032 .cmvr.api.CommandHe" +
-      "ader.Feedback\022U\n\020resumeNavigation\022\037.cmvr" +
-      ".api.CommandHeader.Request\032 .cmvr.api.Co" +
-      "mmandHeader.Feedback\022U\n\020cancelNavigation" +
-      "\022\037.cmvr.api.CommandHeader.Request\032 .cmvr" +
-      ".api.CommandHeader.Feedback\022`\n\013setVeloci" +
-      "ty\022\'.cmvr.api.AgvSetVelocityCommand.Requ" +
-      "est\032(.cmvr.api.AgvSetVelocityCommand.Fee" +
-      "dback\022X\n\023stopVelocityControl\022\037.cmvr.api." +
-      "CommandHeader.Request\032 .cmvr.api.Command" +
-      "Header.Feedback\022W\n\010listMaps\022$.cmvr.api.A" +
-      "gvListMapsCommand.Request\032%.cmvr.api.Agv" +
-      "ListMapsCommand.Feedback\022c\n\014listStations" +
-      "\022(.cmvr.api.AgvListStationsCommand.Reque" +
-      "st\032).cmvr.api.AgvListStationsCommand.Fee" +
-      "dback\022N\n\tswitchMap\022\037.cmvr.api.AgvMapComm" +
-      "and.Request\032 .cmvr.api.AgvMapCommand.Fee" +
-      "dback\022N\n\tuploadMap\022\037.cmvr.api.AgvMapComm" +
-      "and.Request\032 .cmvr.api.AgvMapCommand.Fee" +
-      "dback\022P\n\013downloadMap\022\037.cmvr.api.AgvMapCo" +
-      "mmand.Request\032 .cmvr.api.AgvMapCommand.F" +
-      "eedback\022c\n\014startMapping\022(.cmvr.api.AgvSt" +
-      "artMappingCommand.Request\032).cmvr.api.Agv" +
-      "StartMappingCommand.Feedback\022\\\n\tstreamMa" +
-      "p\022%.cmvr.api.AgvMapStreamCommand.Request" +
-      "\032&.cmvr.api.AgvMapStreamCommand.Feedback" +
-      "0\001\022P\n\013stopMapping\022\037.cmvr.api.CommandHead" +
-      "er.Request\032 .cmvr.api.CommandHeader.Feed" +
-      "back\022Z\n\ttranslate\022%.cmvr.api.AgvTranslat" +
-      "eCommand.Request\032&.cmvr.api.AgvTranslate" +
-      "Command.Feedbackb\006proto3"
+      ".Feedback\022]\n\nrelocalize\022&.cmvr.api.AgvRe" +
+      "localizeCommand.Request\032\'.cmvr.api.AgvRe" +
+      "localizeCommand.Feedback\022i\n\016navigateToPo" +
+      "se\022*.cmvr.api.AgvNavigateToPoseCommand.R" +
+      "equest\032+.cmvr.api.AgvNavigateToPoseComma" +
+      "nd.Feedback\022r\n\021navigateToStation\022-.cmvr." +
+      "api.AgvNavigateToStationCommand.Request\032" +
+      "..cmvr.api.AgvNavigateToStationCommand.F" +
+      "eedback\022]\n\nfollowPath\022&.cmvr.api.AgvFoll" +
+      "owPathCommand.Request\032\'.cmvr.api.AgvFoll" +
+      "owPathCommand.Feedback\022T\n\017pauseNavigatio" +
+      "n\022\037.cmvr.api.CommandHeader.Request\032 .cmv" +
+      "r.api.CommandHeader.Feedback\022U\n\020resumeNa" +
+      "vigation\022\037.cmvr.api.CommandHeader.Reques" +
+      "t\032 .cmvr.api.CommandHeader.Feedback\022U\n\020c" +
+      "ancelNavigation\022\037.cmvr.api.CommandHeader" +
+      ".Request\032 .cmvr.api.CommandHeader.Feedba" +
+      "ck\022`\n\013setVelocity\022\'.cmvr.api.AgvSetVeloc" +
+      "ityCommand.Request\032(.cmvr.api.AgvSetVelo" +
+      "cityCommand.Feedback\022X\n\023stopVelocityCont" +
+      "rol\022\037.cmvr.api.CommandHeader.Request\032 .c" +
+      "mvr.api.CommandHeader.Feedback\022W\n\010listMa" +
+      "ps\022$.cmvr.api.AgvListMapsCommand.Request" +
+      "\032%.cmvr.api.AgvListMapsCommand.Feedback\022" +
+      "c\n\014listStations\022(.cmvr.api.AgvListStatio" +
+      "nsCommand.Request\032).cmvr.api.AgvListStat" +
+      "ionsCommand.Feedback\022N\n\tswitchMap\022\037.cmvr" +
+      ".api.AgvMapCommand.Request\032 .cmvr.api.Ag" +
+      "vMapCommand.Feedback\022N\n\tuploadMap\022\037.cmvr" +
+      ".api.AgvMapCommand.Request\032 .cmvr.api.Ag" +
+      "vMapCommand.Feedback\022P\n\013downloadMap\022\037.cm" +
+      "vr.api.AgvMapCommand.Request\032 .cmvr.api." +
+      "AgvMapCommand.Feedback\022c\n\014startMapping\022(" +
+      ".cmvr.api.AgvStartMappingCommand.Request" +
+      "\032).cmvr.api.AgvStartMappingCommand.Feedb" +
+      "ack\022\\\n\tstreamMap\022%.cmvr.api.AgvMapStream" +
+      "Command.Request\032&.cmvr.api.AgvMapStreamC" +
+      "ommand.Feedback0\001\022P\n\013stopMapping\022\037.cmvr." +
+      "api.CommandHeader.Request\032 .cmvr.api.Com" +
+      "mandHeader.Feedback\022Z\n\ttranslate\022%.cmvr." +
+      "api.AgvTranslateCommand.Request\032&.cmvr.a" +
+      "pi.AgvTranslateCommand.Feedbackb\006proto3"
     };
     descriptor = com.google.protobuf.Descriptors.FileDescriptor
       .internalBuildGeneratedFileFrom(descriptorData,
diff --git a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/java/cmvr/msgs/AgvUtils.java b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/java/cmvr/msgs/AgvUtils.java
index 58525a4..125c7b7 100644
--- a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/java/cmvr/msgs/AgvUtils.java
+++ b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/java/cmvr/msgs/AgvUtils.java
@@ -3863,6 +3863,17 @@ public final class AgvUtils {
      * @return The pollIntervalMs.
      */
     int getPollIntervalMs();
+
+    /**
+     * 
+     * 连续遇障且底盘停止时的最大等待时间,单位:毫秒;
+     * 0 或未传表示使用适配器默认值 60000 毫秒。
+     * 
+ * + * int32 blocked_timeout_ms = 11; + * @return The blockedTimeoutMs. + */ + int getBlockedTimeoutMs(); } /** *
@@ -4060,6 +4071,22 @@ public final class AgvUtils {
       return pollIntervalMs_;
     }
 
+    public static final int BLOCKED_TIMEOUT_MS_FIELD_NUMBER = 11;
+    private int blockedTimeoutMs_;
+    /**
+     * 
+     * 连续遇障且底盘停止时的最大等待时间,单位:毫秒;
+     * 0 或未传表示使用适配器默认值 60000 毫秒。
+     * 
+ * + * int32 blocked_timeout_ms = 11; + * @return The blockedTimeoutMs. + */ + @java.lang.Override + public int getBlockedTimeoutMs() { + return blockedTimeoutMs_; + } + private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -4104,6 +4131,9 @@ public final class AgvUtils { if (pollIntervalMs_ != 0) { output.writeInt32(10, pollIntervalMs_); } + if (blockedTimeoutMs_ != 0) { + output.writeInt32(11, blockedTimeoutMs_); + } getUnknownFields().writeTo(output); } @@ -4153,6 +4183,10 @@ public final class AgvUtils { size += com.google.protobuf.CodedOutputStream .computeInt32Size(10, pollIntervalMs_); } + if (blockedTimeoutMs_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeInt32Size(11, blockedTimeoutMs_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -4195,6 +4229,8 @@ public final class AgvUtils { != other.getWaitTimeoutMs()) return false; if (getPollIntervalMs() != other.getPollIntervalMs()) return false; + if (getBlockedTimeoutMs() + != other.getBlockedTimeoutMs()) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -4234,6 +4270,8 @@ public final class AgvUtils { hash = (53 * hash) + getWaitTimeoutMs(); hash = (37 * hash) + POLL_INTERVAL_MS_FIELD_NUMBER; hash = (53 * hash) + getPollIntervalMs(); + hash = (37 * hash) + BLOCKED_TIMEOUT_MS_FIELD_NUMBER; + hash = (53 * hash) + getBlockedTimeoutMs(); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -4386,6 +4424,8 @@ public final class AgvUtils { pollIntervalMs_ = 0; + blockedTimeoutMs_ = 0; + return this; } @@ -4422,6 +4462,7 @@ public final class AgvUtils { result.asynchronous_ = asynchronous_; result.waitTimeoutMs_ = waitTimeoutMs_; result.pollIntervalMs_ = pollIntervalMs_; + result.blockedTimeoutMs_ = blockedTimeoutMs_; onBuilt(); return result; } @@ -4500,6 +4541,9 @@ public final class AgvUtils { if (other.getPollIntervalMs() != 0) { setPollIntervalMs(other.getPollIntervalMs()); } + if (other.getBlockedTimeoutMs() != 0) { + setBlockedTimeoutMs(other.getBlockedTimeoutMs()); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -4576,6 +4620,11 @@ public final class AgvUtils { break; } // case 80 + case 88: { + blockedTimeoutMs_ = input.readInt32(); + + break; + } // case 88 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { done = true; // was an endgroup tag @@ -5027,6 +5076,52 @@ public final class AgvUtils { onChanged(); return this; } + + private int blockedTimeoutMs_ ; + /** + *
+       * 连续遇障且底盘停止时的最大等待时间,单位:毫秒;
+       * 0 或未传表示使用适配器默认值 60000 毫秒。
+       * 
+ * + * int32 blocked_timeout_ms = 11; + * @return The blockedTimeoutMs. + */ + @java.lang.Override + public int getBlockedTimeoutMs() { + return blockedTimeoutMs_; + } + /** + *
+       * 连续遇障且底盘停止时的最大等待时间,单位:毫秒;
+       * 0 或未传表示使用适配器默认值 60000 毫秒。
+       * 
+ * + * int32 blocked_timeout_ms = 11; + * @param value The blockedTimeoutMs to set. + * @return This builder for chaining. + */ + public Builder setBlockedTimeoutMs(int value) { + + blockedTimeoutMs_ = value; + onChanged(); + return this; + } + /** + *
+       * 连续遇障且底盘停止时的最大等待时间,单位:毫秒;
+       * 0 或未传表示使用适配器默认值 60000 毫秒。
+       * 
+ * + * int32 blocked_timeout_ms = 11; + * @return This builder for chaining. + */ + public Builder clearBlockedTimeoutMs() { + + blockedTimeoutMs_ = 0; + onChanged(); + return this; + } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { @@ -23730,84 +23825,85 @@ java.lang.String defaultValue); "elocity\022\n\n\002vx\030\001 \001(\001\022\n\n\002vy\030\002 \001(\001\022\n\n\002wz\030\003 " + "\001(\001\"n\n\017AgvBatteryState\022\022\n\npercentage\030\001 \001" + "(\001\022\017\n\007voltage\030\002 \001(\001\022\017\n\007current\030\003 \001(\001\022\023\n\013" + - "temperature\030\004 \001(\001\022\020\n\010charging\030\005 \001(\010\"\207\002\n\020" + + "temperature\030\004 \001(\001\022\020\n\010charging\030\005 \001(\010\"\243\002\n\020" + "AgvMotionOptions\022\021\n\tmax_speed\030\001 \001(\001\022\031\n\021m" + "ax_angular_speed\030\002 \001(\001\022\030\n\020max_accelerati" + "on\030\003 \001(\001\022 \n\030max_angular_acceleration\030\004 \001" + "(\001\022\026\n\016reach_distance\030\005 \001(\001\022\023\n\013reach_angl" + "e\030\006 \001(\001\022\023\n\013speed_ratio\030\007 \001(\001\022\024\n\014asynchro" + "nous\030\010 \001(\010\022\027\n\017wait_timeout_ms\030\t \001(\005\022\030\n\020p" + - "oll_interval_ms\030\n \001(\005\"z\n\020AgvAdapterParam" + - "s\0227\n\006values\030\001 \003(\0132\'.cmvr.msgs.AgvAdapter" + - "Params.ValuesEntry\032-\n\013ValuesEntry\022\013\n\003key" + - "\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"\317\002\n\017AgvRuntime" + - "State\022\021\n\ttimestamp\030\001 \001(\001\022\014\n\004mode\030\002 \001(\005\022\021" + - "\n\tconnected\030\003 \001(\010\022\021\n\tlocalized\030\004 \001(\010\022\016\n\006" + - "moving\030\005 \001(\010\022\r\n\005fault\030\006 \001(\010\022\031\n\021emergency" + - "_stopped\030\007 \001(\010\022\"\n\004pose\030\010 \001(\0132\024.cmvr.msgs" + - ".AgvPose2d\022(\n\010velocity\030\t \001(\0132\026.cmvr.msgs" + - ".AgvVelocity\022+\n\007battery\030\n \001(\0132\032.cmvr.msg" + - "s.AgvBatteryState\022\023\n\013current_map\030\013 \001(\t\022\027" + - "\n\017current_station\030\014 \001(\t\022\022\n\nlast_error\030\r " + - "\001(\t\"_\n\nAgvStation\022\n\n\002id\030\001 \001(\t\022\014\n\004type\030\002 " + - "\001(\t\022\"\n\004pose\030\003 \001(\0132\024.cmvr.msgs.AgvPose2d\022" + - "\023\n\013description\030\004 \001(\t\"@\n\016AgvPathSegment\022\026" + - "\n\016source_station\030\001 \001(\t\022\026\n\016target_station" + - "\030\002 \001(\t\"0\n\rAgvMapPoint3D\022\t\n\001x\030\001 \001(\001\022\t\n\001y\030" + - "\002 \001(\001\022\t\n\001z\030\003 \001(\001\"\307\001\n\017AgvUnifiedMap2D\022\020\n\010" + - "frame_id\030\001 \001(\t\022\021\n\ttimestamp\030\002 \001(\001\022\022\n\nres" + - "olution\030\003 \001(\001\022\r\n\005width\030\004 \001(\r\022\016\n\006height\030\005" + - " \001(\r\022$\n\006origin\030\006 \001(\0132\024.cmvr.msgs.AgvPose" + - "2d\022\014\n\004data\030\007 \003(\005\022(\n\007objects\030\010 \003(\0132\027.cmvr" + - ".msgs.AgvMapObject\"l\n\023AgvMapPointSample3" + - "D\022\t\n\001x\030\001 \001(\001\022\t\n\001y\030\002 \001(\001\022\t\n\001z\030\003 \001(\001\022\021\n\tin" + - "tensity\030\004 \001(\002\022\014\n\004ring\030\005 \001(\r\022\023\n\013time_offs" + - "et\030\006 \001(\001\"E\n\rAgvMapVoxel3D\022\t\n\001x\030\001 \001(\005\022\t\n\001" + - "y\030\002 \001(\005\022\t\n\001z\030\003 \001(\005\022\023\n\013probability\030\004 \001(\002\"" + - "~\n\rAgvMapPlane3D\022(\n\006center\030\001 \001(\0132\030.cmvr." + - "msgs.AgvMapPoint3D\022(\n\006normal\030\002 \001(\0132\030.cmv" + - "r.msgs.AgvMapPoint3D\022\t\n\001d\030\003 \001(\001\022\016\n\006radiu" + - "s\030\004 \001(\001\"\360\001\n\014AgvMapObject\022\n\n\002id\030\001 \001(\t\022)\n\004" + - "type\030\002 \001(\0162\033.cmvr.msgs.AgvMapObjectType\022" + - "(\n\006points\030\003 \003(\0132\030.cmvr.msgs.AgvMapPoint3" + - "D\022\017\n\007heading\030\004 \001(\001\022;\n\nproperties\030\005 \003(\0132\'" + - ".cmvr.msgs.AgvMapObject.PropertiesEntry\032" + - "1\n\017PropertiesEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value" + - "\030\002 \001(\t:\0028\001\"\376\001\n\017AgvUnifiedMap3D\022\020\n\010frame_" + - "id\030\001 \001(\t\022\021\n\ttimestamp\030\002 \001(\001\022\030\n\020voxel_res" + - "olution\030\003 \001(\001\022.\n\006points\030\004 \003(\0132\036.cmvr.msg" + - "s.AgvMapPointSample3D\022(\n\006voxels\030\005 \003(\0132\030." + - "cmvr.msgs.AgvMapVoxel3D\022(\n\006planes\030\006 \003(\0132" + - "\030.cmvr.msgs.AgvMapPlane3D\022(\n\007objects\030\007 \003" + - "(\0132\027.cmvr.msgs.AgvMapObject\"\246\003\n\023AgvUnifi" + - "edMapUpdate\022\016\n\006map_id\030\001 \001(\t\022\022\n\nsession_i" + - "d\030\002 \001(\t\022\020\n\010sequence\030\003 \001(\004\022\024\n\014resume_toke" + - "n\030\004 \001(\t\022-\n\tdimension\030\005 \001(\0162\032.cmvr.msgs.A" + - "gvMapDimension\0220\n\013update_type\030\006 \001(\0162\033.cm" + - "vr.msgs.AgvMapUpdateType\022\020\n\010frame_id\030\007 \001" + - "(\t\022\021\n\ttimestamp\030\010 \001(\001\022\026\n\016snapshot_begin\030" + - "\t \001(\010\022\024\n\014snapshot_end\030\n \001(\010\022\023\n\013chunk_ind" + - "ex\030\013 \001(\r\022\023\n\013chunk_count\030\014 \001(\r\022,\n\006map_2d\030" + - "\024 \001(\0132\032.cmvr.msgs.AgvUnifiedMap2DH\000\022,\n\006m" + - "ap_3d\030\025 \001(\0132\032.cmvr.msgs.AgvUnifiedMap3DH" + - "\000B\t\n\007payload\"U\n\023AgvNavigationStatus\022\r\n\005s" + - "tate\030\001 \001(\005\022\014\n\004type\030\002 \001(\005\022\020\n\010progress\030\003 \001" + - "(\001\022\017\n\007message\030\004 \001(\t*^\n\022AgvTranslationMod" + - "e\022!\n\035AGV_TRANSLATION_MODE_ODOMETRY\020\000\022%\n!" + - "AGV_TRANSLATION_MODE_LOCALIZATION\020\001*k\n\017A" + - "gvMapDimension\022!\n\035AGV_MAP_DIMENSION_UNSP" + - "ECIFIED\020\000\022\016\n\nAGV_MAP_2D\020\001\022\016\n\nAGV_MAP_3D\020" + - "\002\022\025\n\021AGV_MAP_2D_AND_3D\020\003*\211\001\n\020AgvMapUpdat" + - "eType\022\036\n\032AGV_MAP_UPDATE_UNSPECIFIED\020\000\022\033\n" + - "\027AGV_MAP_UPDATE_SNAPSHOT\020\001\022\036\n\032AGV_MAP_UP" + - "DATE_INCREMENTAL\020\002\022\030\n\024AGV_MAP_UPDATE_RES" + - "ET\020\003*\376\001\n\020AgvMapObjectType\022\036\n\032AGV_MAP_OBJ" + - "ECT_UNSPECIFIED\020\000\022\032\n\026AGV_MAP_OBJECT_STAT" + - "ION\020\001\022\027\n\023AGV_MAP_OBJECT_LINE\020\002\022\027\n\023AGV_MA" + - "P_OBJECT_AREA\020\003\022\031\n\025AGV_MAP_OBJECT_QR_TAG" + - "\020\004\022\034\n\030AGV_MAP_OBJECT_REFLECTOR\020\005\022\037\n\033AGV_" + - "MAP_OBJECT_BIN_LOCATION\020\006\022\"\n\036AGV_MAP_OBJ" + - "ECT_EXTERNAL_DEVICE\020\007b\006proto3" + "oll_interval_ms\030\n \001(\005\022\032\n\022blocked_timeout" + + "_ms\030\013 \001(\005\"z\n\020AgvAdapterParams\0227\n\006values\030" + + "\001 \003(\0132\'.cmvr.msgs.AgvAdapterParams.Value" + + "sEntry\032-\n\013ValuesEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005va" + + "lue\030\002 \001(\t:\0028\001\"\317\002\n\017AgvRuntimeState\022\021\n\ttim" + + "estamp\030\001 \001(\001\022\014\n\004mode\030\002 \001(\005\022\021\n\tconnected\030" + + "\003 \001(\010\022\021\n\tlocalized\030\004 \001(\010\022\016\n\006moving\030\005 \001(\010" + + "\022\r\n\005fault\030\006 \001(\010\022\031\n\021emergency_stopped\030\007 \001" + + "(\010\022\"\n\004pose\030\010 \001(\0132\024.cmvr.msgs.AgvPose2d\022(" + + "\n\010velocity\030\t \001(\0132\026.cmvr.msgs.AgvVelocity" + + "\022+\n\007battery\030\n \001(\0132\032.cmvr.msgs.AgvBattery" + + "State\022\023\n\013current_map\030\013 \001(\t\022\027\n\017current_st" + + "ation\030\014 \001(\t\022\022\n\nlast_error\030\r \001(\t\"_\n\nAgvSt" + + "ation\022\n\n\002id\030\001 \001(\t\022\014\n\004type\030\002 \001(\t\022\"\n\004pose\030" + + "\003 \001(\0132\024.cmvr.msgs.AgvPose2d\022\023\n\013descripti" + + "on\030\004 \001(\t\"@\n\016AgvPathSegment\022\026\n\016source_sta" + + "tion\030\001 \001(\t\022\026\n\016target_station\030\002 \001(\t\"0\n\rAg" + + "vMapPoint3D\022\t\n\001x\030\001 \001(\001\022\t\n\001y\030\002 \001(\001\022\t\n\001z\030\003" + + " \001(\001\"\307\001\n\017AgvUnifiedMap2D\022\020\n\010frame_id\030\001 \001" + + "(\t\022\021\n\ttimestamp\030\002 \001(\001\022\022\n\nresolution\030\003 \001(" + + "\001\022\r\n\005width\030\004 \001(\r\022\016\n\006height\030\005 \001(\r\022$\n\006orig" + + "in\030\006 \001(\0132\024.cmvr.msgs.AgvPose2d\022\014\n\004data\030\007" + + " \003(\005\022(\n\007objects\030\010 \003(\0132\027.cmvr.msgs.AgvMap" + + "Object\"l\n\023AgvMapPointSample3D\022\t\n\001x\030\001 \001(\001" + + "\022\t\n\001y\030\002 \001(\001\022\t\n\001z\030\003 \001(\001\022\021\n\tintensity\030\004 \001(" + + "\002\022\014\n\004ring\030\005 \001(\r\022\023\n\013time_offset\030\006 \001(\001\"E\n\r" + + "AgvMapVoxel3D\022\t\n\001x\030\001 \001(\005\022\t\n\001y\030\002 \001(\005\022\t\n\001z" + + "\030\003 \001(\005\022\023\n\013probability\030\004 \001(\002\"~\n\rAgvMapPla" + + "ne3D\022(\n\006center\030\001 \001(\0132\030.cmvr.msgs.AgvMapP" + + "oint3D\022(\n\006normal\030\002 \001(\0132\030.cmvr.msgs.AgvMa" + + "pPoint3D\022\t\n\001d\030\003 \001(\001\022\016\n\006radius\030\004 \001(\001\"\360\001\n\014" + + "AgvMapObject\022\n\n\002id\030\001 \001(\t\022)\n\004type\030\002 \001(\0162\033" + + ".cmvr.msgs.AgvMapObjectType\022(\n\006points\030\003 " + + "\003(\0132\030.cmvr.msgs.AgvMapPoint3D\022\017\n\007heading" + + "\030\004 \001(\001\022;\n\nproperties\030\005 \003(\0132\'.cmvr.msgs.A" + + "gvMapObject.PropertiesEntry\0321\n\017Propertie" + + "sEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"\376" + + "\001\n\017AgvUnifiedMap3D\022\020\n\010frame_id\030\001 \001(\t\022\021\n\t" + + "timestamp\030\002 \001(\001\022\030\n\020voxel_resolution\030\003 \001(" + + "\001\022.\n\006points\030\004 \003(\0132\036.cmvr.msgs.AgvMapPoin" + + "tSample3D\022(\n\006voxels\030\005 \003(\0132\030.cmvr.msgs.Ag" + + "vMapVoxel3D\022(\n\006planes\030\006 \003(\0132\030.cmvr.msgs." + + "AgvMapPlane3D\022(\n\007objects\030\007 \003(\0132\027.cmvr.ms" + + "gs.AgvMapObject\"\246\003\n\023AgvUnifiedMapUpdate\022" + + "\016\n\006map_id\030\001 \001(\t\022\022\n\nsession_id\030\002 \001(\t\022\020\n\010s" + + "equence\030\003 \001(\004\022\024\n\014resume_token\030\004 \001(\t\022-\n\td" + + "imension\030\005 \001(\0162\032.cmvr.msgs.AgvMapDimensi" + + "on\0220\n\013update_type\030\006 \001(\0162\033.cmvr.msgs.AgvM" + + "apUpdateType\022\020\n\010frame_id\030\007 \001(\t\022\021\n\ttimest" + + "amp\030\010 \001(\001\022\026\n\016snapshot_begin\030\t \001(\010\022\024\n\014sna" + + "pshot_end\030\n \001(\010\022\023\n\013chunk_index\030\013 \001(\r\022\023\n\013" + + "chunk_count\030\014 \001(\r\022,\n\006map_2d\030\024 \001(\0132\032.cmvr" + + ".msgs.AgvUnifiedMap2DH\000\022,\n\006map_3d\030\025 \001(\0132" + + "\032.cmvr.msgs.AgvUnifiedMap3DH\000B\t\n\007payload" + + "\"U\n\023AgvNavigationStatus\022\r\n\005state\030\001 \001(\005\022\014" + + "\n\004type\030\002 \001(\005\022\020\n\010progress\030\003 \001(\001\022\017\n\007messag" + + "e\030\004 \001(\t*^\n\022AgvTranslationMode\022!\n\035AGV_TRA" + + "NSLATION_MODE_ODOMETRY\020\000\022%\n!AGV_TRANSLAT" + + "ION_MODE_LOCALIZATION\020\001*k\n\017AgvMapDimensi" + + "on\022!\n\035AGV_MAP_DIMENSION_UNSPECIFIED\020\000\022\016\n" + + "\nAGV_MAP_2D\020\001\022\016\n\nAGV_MAP_3D\020\002\022\025\n\021AGV_MAP" + + "_2D_AND_3D\020\003*\211\001\n\020AgvMapUpdateType\022\036\n\032AGV" + + "_MAP_UPDATE_UNSPECIFIED\020\000\022\033\n\027AGV_MAP_UPD" + + "ATE_SNAPSHOT\020\001\022\036\n\032AGV_MAP_UPDATE_INCREME" + + "NTAL\020\002\022\030\n\024AGV_MAP_UPDATE_RESET\020\003*\376\001\n\020Agv" + + "MapObjectType\022\036\n\032AGV_MAP_OBJECT_UNSPECIF" + + "IED\020\000\022\032\n\026AGV_MAP_OBJECT_STATION\020\001\022\027\n\023AGV" + + "_MAP_OBJECT_LINE\020\002\022\027\n\023AGV_MAP_OBJECT_ARE" + + "A\020\003\022\031\n\025AGV_MAP_OBJECT_QR_TAG\020\004\022\034\n\030AGV_MA" + + "P_OBJECT_REFLECTOR\020\005\022\037\n\033AGV_MAP_OBJECT_B" + + "IN_LOCATION\020\006\022\"\n\036AGV_MAP_OBJECT_EXTERNAL" + + "_DEVICE\020\007b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, @@ -23842,7 +23938,7 @@ java.lang.String defaultValue); internal_static_cmvr_msgs_AgvMotionOptions_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_cmvr_msgs_AgvMotionOptions_descriptor, - new java.lang.String[] { "MaxSpeed", "MaxAngularSpeed", "MaxAcceleration", "MaxAngularAcceleration", "ReachDistance", "ReachAngle", "SpeedRatio", "Asynchronous", "WaitTimeoutMs", "PollIntervalMs", }); + new java.lang.String[] { "MaxSpeed", "MaxAngularSpeed", "MaxAcceleration", "MaxAngularAcceleration", "ReachDistance", "ReachAngle", "SpeedRatio", "Asynchronous", "WaitTimeoutMs", "PollIntervalMs", "BlockedTimeoutMs", }); internal_static_cmvr_msgs_AgvAdapterParams_descriptor = getDescriptor().getMessageTypes().get(5); internal_static_cmvr_msgs_AgvAdapterParams_fieldAccessorTable = new diff --git a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/proto/cmvr/api/agv_command.proto b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/proto/cmvr/api/agv_command.proto index b434d50..47578e2 100644 --- a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/proto/cmvr/api/agv_command.proto +++ b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/proto/cmvr/api/agv_command.proto @@ -37,6 +37,23 @@ message AgvNavigationStatusCommand { } } + +// 在当前活动地图中重新设置 AGV 定位位姿。 +message AgvRelocalizeCommand { + message Request { + // header.device_id 指定目标 AGV 设备。 + CommandHeader.Request header = 1; + // x/y 单位:米,theta 单位:弧度,逆时针为正。 + cmvr.msgs.AgvPose2d pose = 2; + } + + message Feedback { + // 成功仅表示控制器接受命令,不表示定位已经收敛。 + CommandHeader.Feedback header = 1; + } +} + + // 导航到指定地图位姿命令。 message AgvNavigateToPoseCommand { // 请求体。 diff --git a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/proto/cmvr/api/agv_service.proto b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/proto/cmvr/api/agv_service.proto index b1b01e7..b8de93d 100644 --- a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/proto/cmvr/api/agv_service.proto +++ b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/proto/cmvr/api/agv_service.proto @@ -20,6 +20,9 @@ service AgvService { // 清除可恢复故障或告警。 rpc clearFault(CommandHeader.Request) returns (CommandHeader.Feedback); + // 在当前活动地图中重新设置定位位姿。调用前 AGV 必须已经停止。 + rpc relocalize(AgvRelocalizeCommand.Request)returns (AgvRelocalizeCommand.Feedback); + // 导航到指定地图位姿。目标位姿 x/y 单位为米,theta 单位为弧度。 rpc navigateToPose(AgvNavigateToPoseCommand.Request) returns (AgvNavigateToPoseCommand.Feedback); diff --git a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/proto/cmvr/api/agv_utils.proto b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/proto/cmvr/api/agv_utils.proto index c05f1a7..39109f4 100644 --- a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/proto/cmvr/api/agv_utils.proto +++ b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/proto/cmvr/api/agv_utils.proto @@ -88,6 +88,9 @@ message AgvMotionOptions { int32 wait_timeout_ms = 9; // 同步导航的状态轮询周期,单位:毫秒;0 表示使用适配器默认值。 int32 poll_interval_ms = 10; + // 连续遇障且底盘停止时的最大等待时间,单位:毫秒; + // 0 或未传表示使用适配器默认值 60000 毫秒。 + int32 blocked_timeout_ms = 11; } // AGV 适配器扩展参数。用于传递厂商或控制器特有的参数。 diff --git a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/proto/cmvr/api/system_service.proto b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/proto/cmvr/api/system_service.proto index 8fbac6a..ac961ac 100644 --- a/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/proto/cmvr/api/system_service.proto +++ b/cmvr-iot-api/cmvr-iot-edge/cmvr-iot-grpc-lib/src/main/proto/cmvr/api/system_service.proto @@ -18,8 +18,6 @@ service SystemService { rpc ExecuteActionQueue(ActionQueueCommand.Request) returns (ActionQueueCommand.Feedback) {} rpc GetSafetyState(GetSafetyStateCommand.Request) returns (GetSafetyStateCommand.Feedback) {} - rpc RecoverSafetyState(RecoverSafetyStateCommand.Request) returns (RecoverSafetyStateCommand.Feedback) { - option deprecated = true; - } + rpc RecoverSafetyState(RecoverSafetyStateCommand.Request) returns (RecoverSafetyStateCommand.Feedback) {} rpc RestoreOperationalState(RestoreOperationalStateCommand.Request) returns (RestoreOperationalStateCommand.Feedback) {} } diff --git a/cmvr-iot-framework/src/main/java/com/cmvr/framework/config/ThreadPoolConfig.java b/cmvr-iot-framework/src/main/java/com/cmvr/framework/config/ThreadPoolConfig.java index d2c6ec1..f067631 100644 --- a/cmvr-iot-framework/src/main/java/com/cmvr/framework/config/ThreadPoolConfig.java +++ b/cmvr-iot-framework/src/main/java/com/cmvr/framework/config/ThreadPoolConfig.java @@ -4,6 +4,7 @@ import com.cmvr.common.utils.Threads; import org.apache.commons.lang3.concurrent.BasicThreadFactory; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Primary; import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.ScheduledThreadPoolExecutor; @@ -30,6 +31,7 @@ public class ThreadPoolConfig private int keepAliveSeconds = 300; @Bean(name = "threadPoolTaskExecutor") + @Primary public ThreadPoolTaskExecutor threadPoolTaskExecutor() { ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor(); diff --git a/cmvr-iot-inspection/src/main/java/com/cmvr/inspection/listener/InspectionFlowExecutionListener.java b/cmvr-iot-inspection/src/main/java/com/cmvr/inspection/listener/InspectionFlowExecutionListener.java index f837714..a35b18e 100644 --- a/cmvr-iot-inspection/src/main/java/com/cmvr/inspection/listener/InspectionFlowExecutionListener.java +++ b/cmvr-iot-inspection/src/main/java/com/cmvr/inspection/listener/InspectionFlowExecutionListener.java @@ -174,6 +174,13 @@ public class InspectionFlowExecutionListener implements FlowExecutionListener { // 四舍五入保留2位小数 progress = Math.round(progress * 100) / 100.0; JSONObject outputParams = event.getOutputParams(); + boolean nodeFailed = event.getEventType() == FlowExecutionEvent.EventType.NODE_FAILED; + String nodeError = nodeFailed ? StrUtil.trim(event.getErrorMessage()) : null; + JSONObject logOutputParams = outputParams == null + ? new JSONObject() : JSONObject.parseObject(outputParams.toJSONString()); + if (StrUtil.isNotBlank(nodeError)) { + logOutputParams.put("errorMessage", nodeError); + } String imageUrl = FlowMediaParamResolver.lastUrl(outputParams, "imageUrl"); String videoUrl = FlowMediaParamResolver.lastUrl(outputParams, "videoUrl"); String audioUrl = FlowMediaParamResolver.lastUrl(outputParams, "audioUrl"); @@ -200,10 +207,10 @@ public class InspectionFlowExecutionListener implements FlowExecutionListener { .nodeId(nodeId) .nodeName(event.getNodeName()) .logType(logType) - .logContent("节点【" + event.getNodeName() + "】" + info) + .logContent("节点【" + event.getNodeName() + "】" + info + + (StrUtil.isBlank(nodeError) ? "" : ":" + StrUtil.sub(nodeError, 0, 300))) .mediaUrl(mediaUrl) - .extraInfo(outputParams == null || outputParams.isEmpty() - ? null : outputParams.toJSONString()) + .extraInfo(logOutputParams.isEmpty() ? null : logOutputParams.toJSONString()) .status(nodeLogStatus) .progress(progress) .logTime(now) diff --git a/cmvr-iot-quic-contract/pom.xml b/cmvr-iot-quic-contract/pom.xml index 0c11514..201bd69 100644 --- a/cmvr-iot-quic-contract/pom.xml +++ b/cmvr-iot-quic-contract/pom.xml @@ -36,6 +36,8 @@ 0.6.1 com.google.protobuf:protoc:3.25.5:exe:${os.detected.classifier} + ${basedir}/src/main/java + false diff --git a/cmvr-iot-quic-contract/src/main/java/cmvr/quic_edge/v1/QuicEdge.java b/cmvr-iot-quic-contract/src/main/java/cmvr/quic_edge/v1/QuicEdge.java new file mode 100644 index 0000000..26de05c --- /dev/null +++ b/cmvr-iot-quic-contract/src/main/java/cmvr/quic_edge/v1/QuicEdge.java @@ -0,0 +1,18700 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: cmvr/quic_edge/v1/quic_edge.proto + +// Protobuf Java Version: 3.25.5 +package cmvr.quic_edge.v1; + +public final class QuicEdge { + private QuicEdge() {} + public static void registerAllExtensions( + com.google.protobuf.ExtensionRegistryLite registry) { + } + + public static void registerAllExtensions( + com.google.protobuf.ExtensionRegistry registry) { + registerAllExtensions( + (com.google.protobuf.ExtensionRegistryLite) registry); + } + /** + *
+   * Stable protocol-level categories for devices managed by cmvr-es. These
+   * values intentionally do not reuse the configuration or gRPC API enums:
+   * their zero values and supported categories have different semantics.
+   * 
+ * + * Protobuf enum {@code cmvr.quic_edge.v1.DeviceKind} + */ + public enum DeviceKind + implements com.google.protobuf.ProtocolMessageEnum { + /** + * DEVICE_KIND_UNSPECIFIED = 0; + */ + DEVICE_KIND_UNSPECIFIED(0), + /** + * DEVICE_KIND_AGV = 1; + */ + DEVICE_KIND_AGV(1), + /** + * DEVICE_KIND_ARM = 2; + */ + DEVICE_KIND_ARM(2), + /** + * DEVICE_KIND_BATTERY = 3; + */ + DEVICE_KIND_BATTERY(3), + /** + * DEVICE_KIND_BIO_HEAD = 4; + */ + DEVICE_KIND_BIO_HEAD(4), + /** + * DEVICE_KIND_CAMERA = 5; + */ + DEVICE_KIND_CAMERA(5), + /** + * DEVICE_KIND_CAN_BUS = 6; + */ + DEVICE_KIND_CAN_BUS(6), + /** + * DEVICE_KIND_DEX_HAND = 7; + */ + DEVICE_KIND_DEX_HAND(7), + /** + * DEVICE_KIND_GRIPPER = 8; + */ + DEVICE_KIND_GRIPPER(8), + /** + * DEVICE_KIND_MICROPHONE = 9; + */ + DEVICE_KIND_MICROPHONE(9), + /** + * DEVICE_KIND_MOTOR = 10; + */ + DEVICE_KIND_MOTOR(10), + /** + * DEVICE_KIND_MOTOR_SYSTEM = 11; + */ + DEVICE_KIND_MOTOR_SYSTEM(11), + /** + * DEVICE_KIND_ROBOT = 12; + */ + DEVICE_KIND_ROBOT(12), + /** + * DEVICE_KIND_SPEAKER = 13; + */ + DEVICE_KIND_SPEAKER(13), + UNRECOGNIZED(-1), + ; + + /** + * DEVICE_KIND_UNSPECIFIED = 0; + */ + public static final int DEVICE_KIND_UNSPECIFIED_VALUE = 0; + /** + * DEVICE_KIND_AGV = 1; + */ + public static final int DEVICE_KIND_AGV_VALUE = 1; + /** + * DEVICE_KIND_ARM = 2; + */ + public static final int DEVICE_KIND_ARM_VALUE = 2; + /** + * DEVICE_KIND_BATTERY = 3; + */ + public static final int DEVICE_KIND_BATTERY_VALUE = 3; + /** + * DEVICE_KIND_BIO_HEAD = 4; + */ + public static final int DEVICE_KIND_BIO_HEAD_VALUE = 4; + /** + * DEVICE_KIND_CAMERA = 5; + */ + public static final int DEVICE_KIND_CAMERA_VALUE = 5; + /** + * DEVICE_KIND_CAN_BUS = 6; + */ + public static final int DEVICE_KIND_CAN_BUS_VALUE = 6; + /** + * DEVICE_KIND_DEX_HAND = 7; + */ + public static final int DEVICE_KIND_DEX_HAND_VALUE = 7; + /** + * DEVICE_KIND_GRIPPER = 8; + */ + public static final int DEVICE_KIND_GRIPPER_VALUE = 8; + /** + * DEVICE_KIND_MICROPHONE = 9; + */ + public static final int DEVICE_KIND_MICROPHONE_VALUE = 9; + /** + * DEVICE_KIND_MOTOR = 10; + */ + public static final int DEVICE_KIND_MOTOR_VALUE = 10; + /** + * DEVICE_KIND_MOTOR_SYSTEM = 11; + */ + public static final int DEVICE_KIND_MOTOR_SYSTEM_VALUE = 11; + /** + * DEVICE_KIND_ROBOT = 12; + */ + public static final int DEVICE_KIND_ROBOT_VALUE = 12; + /** + * DEVICE_KIND_SPEAKER = 13; + */ + public static final int DEVICE_KIND_SPEAKER_VALUE = 13; + + + public final int getNumber() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalArgumentException( + "Can't get the number of an unknown enum value."); + } + return value; + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static DeviceKind valueOf(int value) { + return forNumber(value); + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + */ + public static DeviceKind forNumber(int value) { + switch (value) { + case 0: return DEVICE_KIND_UNSPECIFIED; + case 1: return DEVICE_KIND_AGV; + case 2: return DEVICE_KIND_ARM; + case 3: return DEVICE_KIND_BATTERY; + case 4: return DEVICE_KIND_BIO_HEAD; + case 5: return DEVICE_KIND_CAMERA; + case 6: return DEVICE_KIND_CAN_BUS; + case 7: return DEVICE_KIND_DEX_HAND; + case 8: return DEVICE_KIND_GRIPPER; + case 9: return DEVICE_KIND_MICROPHONE; + case 10: return DEVICE_KIND_MOTOR; + case 11: return DEVICE_KIND_MOTOR_SYSTEM; + case 12: return DEVICE_KIND_ROBOT; + case 13: return DEVICE_KIND_SPEAKER; + default: return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap + internalGetValueMap() { + return internalValueMap; + } + private static final com.google.protobuf.Internal.EnumLiteMap< + DeviceKind> internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public DeviceKind findValueByNumber(int number) { + return DeviceKind.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor + getValueDescriptor() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalStateException( + "Can't get the descriptor of an unrecognized enum value."); + } + return getDescriptor().getValues().get(ordinal()); + } + public final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptorForType() { + return getDescriptor(); + } + public static final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.getDescriptor().getEnumTypes().get(0); + } + + private static final DeviceKind[] VALUES = values(); + + public static DeviceKind valueOf( + com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException( + "EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private DeviceKind(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:cmvr.quic_edge.v1.DeviceKind) + } + + /** + *
+   * DeviceManager's view of a configured entry. REGISTERED means that the
+   * manager owns a device record but has no more specific lifecycle signal.
+   * 
+ * + * Protobuf enum {@code cmvr.quic_edge.v1.ManagedDeviceState} + */ + public enum ManagedDeviceState + implements com.google.protobuf.ProtocolMessageEnum { + /** + * MANAGED_DEVICE_STATE_UNSPECIFIED = 0; + */ + MANAGED_DEVICE_STATE_UNSPECIFIED(0), + /** + * MANAGED_DEVICE_STATE_DISABLED = 1; + */ + MANAGED_DEVICE_STATE_DISABLED(1), + /** + * MANAGED_DEVICE_STATE_INITIALIZING = 2; + */ + MANAGED_DEVICE_STATE_INITIALIZING(2), + /** + * MANAGED_DEVICE_STATE_REGISTERED = 3; + */ + MANAGED_DEVICE_STATE_REGISTERED(3), + /** + * MANAGED_DEVICE_STATE_READY = 4; + */ + MANAGED_DEVICE_STATE_READY(4), + /** + * MANAGED_DEVICE_STATE_RUNNING = 5; + */ + MANAGED_DEVICE_STATE_RUNNING(5), + /** + * MANAGED_DEVICE_STATE_STOPPED = 6; + */ + MANAGED_DEVICE_STATE_STOPPED(6), + /** + * MANAGED_DEVICE_STATE_ERROR = 7; + */ + MANAGED_DEVICE_STATE_ERROR(7), + UNRECOGNIZED(-1), + ; + + /** + * MANAGED_DEVICE_STATE_UNSPECIFIED = 0; + */ + public static final int MANAGED_DEVICE_STATE_UNSPECIFIED_VALUE = 0; + /** + * MANAGED_DEVICE_STATE_DISABLED = 1; + */ + public static final int MANAGED_DEVICE_STATE_DISABLED_VALUE = 1; + /** + * MANAGED_DEVICE_STATE_INITIALIZING = 2; + */ + public static final int MANAGED_DEVICE_STATE_INITIALIZING_VALUE = 2; + /** + * MANAGED_DEVICE_STATE_REGISTERED = 3; + */ + public static final int MANAGED_DEVICE_STATE_REGISTERED_VALUE = 3; + /** + * MANAGED_DEVICE_STATE_READY = 4; + */ + public static final int MANAGED_DEVICE_STATE_READY_VALUE = 4; + /** + * MANAGED_DEVICE_STATE_RUNNING = 5; + */ + public static final int MANAGED_DEVICE_STATE_RUNNING_VALUE = 5; + /** + * MANAGED_DEVICE_STATE_STOPPED = 6; + */ + public static final int MANAGED_DEVICE_STATE_STOPPED_VALUE = 6; + /** + * MANAGED_DEVICE_STATE_ERROR = 7; + */ + public static final int MANAGED_DEVICE_STATE_ERROR_VALUE = 7; + + + public final int getNumber() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalArgumentException( + "Can't get the number of an unknown enum value."); + } + return value; + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static ManagedDeviceState valueOf(int value) { + return forNumber(value); + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + */ + public static ManagedDeviceState forNumber(int value) { + switch (value) { + case 0: return MANAGED_DEVICE_STATE_UNSPECIFIED; + case 1: return MANAGED_DEVICE_STATE_DISABLED; + case 2: return MANAGED_DEVICE_STATE_INITIALIZING; + case 3: return MANAGED_DEVICE_STATE_REGISTERED; + case 4: return MANAGED_DEVICE_STATE_READY; + case 5: return MANAGED_DEVICE_STATE_RUNNING; + case 6: return MANAGED_DEVICE_STATE_STOPPED; + case 7: return MANAGED_DEVICE_STATE_ERROR; + default: return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap + internalGetValueMap() { + return internalValueMap; + } + private static final com.google.protobuf.Internal.EnumLiteMap< + ManagedDeviceState> internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public ManagedDeviceState findValueByNumber(int number) { + return ManagedDeviceState.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor + getValueDescriptor() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalStateException( + "Can't get the descriptor of an unrecognized enum value."); + } + return getDescriptor().getValues().get(ordinal()); + } + public final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptorForType() { + return getDescriptor(); + } + public static final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.getDescriptor().getEnumTypes().get(1); + } + + private static final ManagedDeviceState[] VALUES = values(); + + public static ManagedDeviceState valueOf( + com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException( + "EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private ManagedDeviceState(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:cmvr.quic_edge.v1.ManagedDeviceState) + } + + /** + *
+   * Health is independent of lifecycle. UNSPECIFIED means that no trustworthy
+   * health observation is available and must never be interpreted as healthy.
+   * 
+ * + * Protobuf enum {@code cmvr.quic_edge.v1.DeviceHealthStatus} + */ + public enum DeviceHealthStatus + implements com.google.protobuf.ProtocolMessageEnum { + /** + * DEVICE_HEALTH_STATUS_UNSPECIFIED = 0; + */ + DEVICE_HEALTH_STATUS_UNSPECIFIED(0), + /** + * DEVICE_HEALTH_STATUS_HEALTHY = 1; + */ + DEVICE_HEALTH_STATUS_HEALTHY(1), + /** + * DEVICE_HEALTH_STATUS_DEGRADED = 2; + */ + DEVICE_HEALTH_STATUS_DEGRADED(2), + /** + * DEVICE_HEALTH_STATUS_FAULT = 3; + */ + DEVICE_HEALTH_STATUS_FAULT(3), + UNRECOGNIZED(-1), + ; + + /** + * DEVICE_HEALTH_STATUS_UNSPECIFIED = 0; + */ + public static final int DEVICE_HEALTH_STATUS_UNSPECIFIED_VALUE = 0; + /** + * DEVICE_HEALTH_STATUS_HEALTHY = 1; + */ + public static final int DEVICE_HEALTH_STATUS_HEALTHY_VALUE = 1; + /** + * DEVICE_HEALTH_STATUS_DEGRADED = 2; + */ + public static final int DEVICE_HEALTH_STATUS_DEGRADED_VALUE = 2; + /** + * DEVICE_HEALTH_STATUS_FAULT = 3; + */ + public static final int DEVICE_HEALTH_STATUS_FAULT_VALUE = 3; + + + public final int getNumber() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalArgumentException( + "Can't get the number of an unknown enum value."); + } + return value; + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static DeviceHealthStatus valueOf(int value) { + return forNumber(value); + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + */ + public static DeviceHealthStatus forNumber(int value) { + switch (value) { + case 0: return DEVICE_HEALTH_STATUS_UNSPECIFIED; + case 1: return DEVICE_HEALTH_STATUS_HEALTHY; + case 2: return DEVICE_HEALTH_STATUS_DEGRADED; + case 3: return DEVICE_HEALTH_STATUS_FAULT; + default: return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap + internalGetValueMap() { + return internalValueMap; + } + private static final com.google.protobuf.Internal.EnumLiteMap< + DeviceHealthStatus> internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public DeviceHealthStatus findValueByNumber(int number) { + return DeviceHealthStatus.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor + getValueDescriptor() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalStateException( + "Can't get the descriptor of an unrecognized enum value."); + } + return getDescriptor().getValues().get(ordinal()); + } + public final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptorForType() { + return getDescriptor(); + } + public static final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.getDescriptor().getEnumTypes().get(2); + } + + private static final DeviceHealthStatus[] VALUES = values(); + + public static DeviceHealthStatus valueOf( + com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException( + "EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private DeviceHealthStatus(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:cmvr.quic_edge.v1.DeviceHealthStatus) + } + + /** + * Protobuf enum {@code cmvr.quic_edge.v1.MediaKind} + */ + public enum MediaKind + implements com.google.protobuf.ProtocolMessageEnum { + /** + * MEDIA_KIND_UNSPECIFIED = 0; + */ + MEDIA_KIND_UNSPECIFIED(0), + /** + * MEDIA_KIND_VIDEO = 1; + */ + MEDIA_KIND_VIDEO(1), + /** + * MEDIA_KIND_AUDIO = 2; + */ + MEDIA_KIND_AUDIO(2), + UNRECOGNIZED(-1), + ; + + /** + * MEDIA_KIND_UNSPECIFIED = 0; + */ + public static final int MEDIA_KIND_UNSPECIFIED_VALUE = 0; + /** + * MEDIA_KIND_VIDEO = 1; + */ + public static final int MEDIA_KIND_VIDEO_VALUE = 1; + /** + * MEDIA_KIND_AUDIO = 2; + */ + public static final int MEDIA_KIND_AUDIO_VALUE = 2; + + + public final int getNumber() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalArgumentException( + "Can't get the number of an unknown enum value."); + } + return value; + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static MediaKind valueOf(int value) { + return forNumber(value); + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + */ + public static MediaKind forNumber(int value) { + switch (value) { + case 0: return MEDIA_KIND_UNSPECIFIED; + case 1: return MEDIA_KIND_VIDEO; + case 2: return MEDIA_KIND_AUDIO; + default: return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap + internalGetValueMap() { + return internalValueMap; + } + private static final com.google.protobuf.Internal.EnumLiteMap< + MediaKind> internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public MediaKind findValueByNumber(int number) { + return MediaKind.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor + getValueDescriptor() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalStateException( + "Can't get the descriptor of an unrecognized enum value."); + } + return getDescriptor().getValues().get(ordinal()); + } + public final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptorForType() { + return getDescriptor(); + } + public static final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.getDescriptor().getEnumTypes().get(3); + } + + private static final MediaKind[] VALUES = values(); + + public static MediaKind valueOf( + com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException( + "EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private MediaKind(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:cmvr.quic_edge.v1.MediaKind) + } + + public interface EdgeControlEnvelopeOrBuilder extends + // @@protoc_insertion_point(interface_extends:cmvr.quic_edge.v1.EdgeControlEnvelope) + com.google.protobuf.MessageOrBuilder { + + /** + * uint32 protocol_version = 1; + * @return The protocolVersion. + */ + int getProtocolVersion(); + + /** + * uint64 message_sequence = 2; + * @return The messageSequence. + */ + long getMessageSequence(); + + /** + * .cmvr.quic_edge.v1.NodeRegisterRequest node_register_request = 10; + * @return Whether the nodeRegisterRequest field is set. + */ + boolean hasNodeRegisterRequest(); + /** + * .cmvr.quic_edge.v1.NodeRegisterRequest node_register_request = 10; + * @return The nodeRegisterRequest. + */ + cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest getNodeRegisterRequest(); + /** + * .cmvr.quic_edge.v1.NodeRegisterRequest node_register_request = 10; + */ + cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequestOrBuilder getNodeRegisterRequestOrBuilder(); + + /** + * .cmvr.quic_edge.v1.NodeRegisterResponse node_register_response = 11; + * @return Whether the nodeRegisterResponse field is set. + */ + boolean hasNodeRegisterResponse(); + /** + * .cmvr.quic_edge.v1.NodeRegisterResponse node_register_response = 11; + * @return The nodeRegisterResponse. + */ + cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse getNodeRegisterResponse(); + /** + * .cmvr.quic_edge.v1.NodeRegisterResponse node_register_response = 11; + */ + cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponseOrBuilder getNodeRegisterResponseOrBuilder(); + + /** + * .cmvr.quic_edge.v1.NodeHeartbeat node_heartbeat = 12; + * @return Whether the nodeHeartbeat field is set. + */ + boolean hasNodeHeartbeat(); + /** + * .cmvr.quic_edge.v1.NodeHeartbeat node_heartbeat = 12; + * @return The nodeHeartbeat. + */ + cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat getNodeHeartbeat(); + /** + * .cmvr.quic_edge.v1.NodeHeartbeat node_heartbeat = 12; + */ + cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatOrBuilder getNodeHeartbeatOrBuilder(); + + /** + * .cmvr.quic_edge.v1.NodeHeartbeatAck node_heartbeat_ack = 13; + * @return Whether the nodeHeartbeatAck field is set. + */ + boolean hasNodeHeartbeatAck(); + /** + * .cmvr.quic_edge.v1.NodeHeartbeatAck node_heartbeat_ack = 13; + * @return The nodeHeartbeatAck. + */ + cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck getNodeHeartbeatAck(); + /** + * .cmvr.quic_edge.v1.NodeHeartbeatAck node_heartbeat_ack = 13; + */ + cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAckOrBuilder getNodeHeartbeatAckOrBuilder(); + + /** + * .cmvr.quic_edge.v1.MediaSessionOpen media_session_open = 20; + * @return Whether the mediaSessionOpen field is set. + */ + boolean hasMediaSessionOpen(); + /** + * .cmvr.quic_edge.v1.MediaSessionOpen media_session_open = 20; + * @return The mediaSessionOpen. + */ + cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen getMediaSessionOpen(); + /** + * .cmvr.quic_edge.v1.MediaSessionOpen media_session_open = 20; + */ + cmvr.quic_edge.v1.QuicEdge.MediaSessionOpenOrBuilder getMediaSessionOpenOrBuilder(); + + /** + * .cmvr.quic_edge.v1.MediaTrackDescriptor media_track_descriptor = 21; + * @return Whether the mediaTrackDescriptor field is set. + */ + boolean hasMediaTrackDescriptor(); + /** + * .cmvr.quic_edge.v1.MediaTrackDescriptor media_track_descriptor = 21; + * @return The mediaTrackDescriptor. + */ + cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor getMediaTrackDescriptor(); + /** + * .cmvr.quic_edge.v1.MediaTrackDescriptor media_track_descriptor = 21; + */ + cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptorOrBuilder getMediaTrackDescriptorOrBuilder(); + + /** + * .cmvr.quic_edge.v1.MediaSessionClose media_session_close = 22; + * @return Whether the mediaSessionClose field is set. + */ + boolean hasMediaSessionClose(); + /** + * .cmvr.quic_edge.v1.MediaSessionClose media_session_close = 22; + * @return The mediaSessionClose. + */ + cmvr.quic_edge.v1.QuicEdge.MediaSessionClose getMediaSessionClose(); + /** + * .cmvr.quic_edge.v1.MediaSessionClose media_session_close = 22; + */ + cmvr.quic_edge.v1.QuicEdge.MediaSessionCloseOrBuilder getMediaSessionCloseOrBuilder(); + + /** + * .cmvr.quic_edge.v1.ProtocolError protocol_error = 30; + * @return Whether the protocolError field is set. + */ + boolean hasProtocolError(); + /** + * .cmvr.quic_edge.v1.ProtocolError protocol_error = 30; + * @return The protocolError. + */ + cmvr.quic_edge.v1.QuicEdge.ProtocolError getProtocolError(); + /** + * .cmvr.quic_edge.v1.ProtocolError protocol_error = 30; + */ + cmvr.quic_edge.v1.QuicEdge.ProtocolErrorOrBuilder getProtocolErrorOrBuilder(); + + cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope.PayloadCase getPayloadCase(); + } + /** + *
+   * Every application message on the edge-opened reliable bidirectional stream
+   * is carried by this envelope. message_sequence is strictly increasing per
+   * sender (gaps are allowed) and is independent from the heartbeat sequence used
+   * for liveness acknowledgement.
+   * 
+ * + * Protobuf type {@code cmvr.quic_edge.v1.EdgeControlEnvelope} + */ + public static final class EdgeControlEnvelope extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:cmvr.quic_edge.v1.EdgeControlEnvelope) + EdgeControlEnvelopeOrBuilder { + private static final long serialVersionUID = 0L; + // Use EdgeControlEnvelope.newBuilder() to construct. + private EdgeControlEnvelope(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private EdgeControlEnvelope() { + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new EdgeControlEnvelope(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_EdgeControlEnvelope_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_EdgeControlEnvelope_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope.class, cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope.Builder.class); + } + + private int payloadCase_ = 0; + @SuppressWarnings("serial") + private java.lang.Object payload_; + public enum PayloadCase + implements com.google.protobuf.Internal.EnumLite, + com.google.protobuf.AbstractMessage.InternalOneOfEnum { + NODE_REGISTER_REQUEST(10), + NODE_REGISTER_RESPONSE(11), + NODE_HEARTBEAT(12), + NODE_HEARTBEAT_ACK(13), + MEDIA_SESSION_OPEN(20), + MEDIA_TRACK_DESCRIPTOR(21), + MEDIA_SESSION_CLOSE(22), + PROTOCOL_ERROR(30), + PAYLOAD_NOT_SET(0); + private final int value; + private PayloadCase(int value) { + this.value = value; + } + /** + * @param value The number of the enum to look for. + * @return The enum associated with the given number. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static PayloadCase valueOf(int value) { + return forNumber(value); + } + + public static PayloadCase forNumber(int value) { + switch (value) { + case 10: return NODE_REGISTER_REQUEST; + case 11: return NODE_REGISTER_RESPONSE; + case 12: return NODE_HEARTBEAT; + case 13: return NODE_HEARTBEAT_ACK; + case 20: return MEDIA_SESSION_OPEN; + case 21: return MEDIA_TRACK_DESCRIPTOR; + case 22: return MEDIA_SESSION_CLOSE; + case 30: return PROTOCOL_ERROR; + case 0: return PAYLOAD_NOT_SET; + default: return null; + } + } + public int getNumber() { + return this.value; + } + }; + + public PayloadCase + getPayloadCase() { + return PayloadCase.forNumber( + payloadCase_); + } + + public static final int PROTOCOL_VERSION_FIELD_NUMBER = 1; + private int protocolVersion_ = 0; + /** + * uint32 protocol_version = 1; + * @return The protocolVersion. + */ + @java.lang.Override + public int getProtocolVersion() { + return protocolVersion_; + } + + public static final int MESSAGE_SEQUENCE_FIELD_NUMBER = 2; + private long messageSequence_ = 0L; + /** + * uint64 message_sequence = 2; + * @return The messageSequence. + */ + @java.lang.Override + public long getMessageSequence() { + return messageSequence_; + } + + public static final int NODE_REGISTER_REQUEST_FIELD_NUMBER = 10; + /** + * .cmvr.quic_edge.v1.NodeRegisterRequest node_register_request = 10; + * @return Whether the nodeRegisterRequest field is set. + */ + @java.lang.Override + public boolean hasNodeRegisterRequest() { + return payloadCase_ == 10; + } + /** + * .cmvr.quic_edge.v1.NodeRegisterRequest node_register_request = 10; + * @return The nodeRegisterRequest. + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest getNodeRegisterRequest() { + if (payloadCase_ == 10) { + return (cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest.getDefaultInstance(); + } + /** + * .cmvr.quic_edge.v1.NodeRegisterRequest node_register_request = 10; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequestOrBuilder getNodeRegisterRequestOrBuilder() { + if (payloadCase_ == 10) { + return (cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest.getDefaultInstance(); + } + + public static final int NODE_REGISTER_RESPONSE_FIELD_NUMBER = 11; + /** + * .cmvr.quic_edge.v1.NodeRegisterResponse node_register_response = 11; + * @return Whether the nodeRegisterResponse field is set. + */ + @java.lang.Override + public boolean hasNodeRegisterResponse() { + return payloadCase_ == 11; + } + /** + * .cmvr.quic_edge.v1.NodeRegisterResponse node_register_response = 11; + * @return The nodeRegisterResponse. + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse getNodeRegisterResponse() { + if (payloadCase_ == 11) { + return (cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse.getDefaultInstance(); + } + /** + * .cmvr.quic_edge.v1.NodeRegisterResponse node_register_response = 11; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponseOrBuilder getNodeRegisterResponseOrBuilder() { + if (payloadCase_ == 11) { + return (cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse.getDefaultInstance(); + } + + public static final int NODE_HEARTBEAT_FIELD_NUMBER = 12; + /** + * .cmvr.quic_edge.v1.NodeHeartbeat node_heartbeat = 12; + * @return Whether the nodeHeartbeat field is set. + */ + @java.lang.Override + public boolean hasNodeHeartbeat() { + return payloadCase_ == 12; + } + /** + * .cmvr.quic_edge.v1.NodeHeartbeat node_heartbeat = 12; + * @return The nodeHeartbeat. + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat getNodeHeartbeat() { + if (payloadCase_ == 12) { + return (cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat.getDefaultInstance(); + } + /** + * .cmvr.quic_edge.v1.NodeHeartbeat node_heartbeat = 12; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatOrBuilder getNodeHeartbeatOrBuilder() { + if (payloadCase_ == 12) { + return (cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat.getDefaultInstance(); + } + + public static final int NODE_HEARTBEAT_ACK_FIELD_NUMBER = 13; + /** + * .cmvr.quic_edge.v1.NodeHeartbeatAck node_heartbeat_ack = 13; + * @return Whether the nodeHeartbeatAck field is set. + */ + @java.lang.Override + public boolean hasNodeHeartbeatAck() { + return payloadCase_ == 13; + } + /** + * .cmvr.quic_edge.v1.NodeHeartbeatAck node_heartbeat_ack = 13; + * @return The nodeHeartbeatAck. + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck getNodeHeartbeatAck() { + if (payloadCase_ == 13) { + return (cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck.getDefaultInstance(); + } + /** + * .cmvr.quic_edge.v1.NodeHeartbeatAck node_heartbeat_ack = 13; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAckOrBuilder getNodeHeartbeatAckOrBuilder() { + if (payloadCase_ == 13) { + return (cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck.getDefaultInstance(); + } + + public static final int MEDIA_SESSION_OPEN_FIELD_NUMBER = 20; + /** + * .cmvr.quic_edge.v1.MediaSessionOpen media_session_open = 20; + * @return Whether the mediaSessionOpen field is set. + */ + @java.lang.Override + public boolean hasMediaSessionOpen() { + return payloadCase_ == 20; + } + /** + * .cmvr.quic_edge.v1.MediaSessionOpen media_session_open = 20; + * @return The mediaSessionOpen. + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen getMediaSessionOpen() { + if (payloadCase_ == 20) { + return (cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen.getDefaultInstance(); + } + /** + * .cmvr.quic_edge.v1.MediaSessionOpen media_session_open = 20; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.MediaSessionOpenOrBuilder getMediaSessionOpenOrBuilder() { + if (payloadCase_ == 20) { + return (cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen.getDefaultInstance(); + } + + public static final int MEDIA_TRACK_DESCRIPTOR_FIELD_NUMBER = 21; + /** + * .cmvr.quic_edge.v1.MediaTrackDescriptor media_track_descriptor = 21; + * @return Whether the mediaTrackDescriptor field is set. + */ + @java.lang.Override + public boolean hasMediaTrackDescriptor() { + return payloadCase_ == 21; + } + /** + * .cmvr.quic_edge.v1.MediaTrackDescriptor media_track_descriptor = 21; + * @return The mediaTrackDescriptor. + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor getMediaTrackDescriptor() { + if (payloadCase_ == 21) { + return (cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor.getDefaultInstance(); + } + /** + * .cmvr.quic_edge.v1.MediaTrackDescriptor media_track_descriptor = 21; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptorOrBuilder getMediaTrackDescriptorOrBuilder() { + if (payloadCase_ == 21) { + return (cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor.getDefaultInstance(); + } + + public static final int MEDIA_SESSION_CLOSE_FIELD_NUMBER = 22; + /** + * .cmvr.quic_edge.v1.MediaSessionClose media_session_close = 22; + * @return Whether the mediaSessionClose field is set. + */ + @java.lang.Override + public boolean hasMediaSessionClose() { + return payloadCase_ == 22; + } + /** + * .cmvr.quic_edge.v1.MediaSessionClose media_session_close = 22; + * @return The mediaSessionClose. + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.MediaSessionClose getMediaSessionClose() { + if (payloadCase_ == 22) { + return (cmvr.quic_edge.v1.QuicEdge.MediaSessionClose) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.MediaSessionClose.getDefaultInstance(); + } + /** + * .cmvr.quic_edge.v1.MediaSessionClose media_session_close = 22; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.MediaSessionCloseOrBuilder getMediaSessionCloseOrBuilder() { + if (payloadCase_ == 22) { + return (cmvr.quic_edge.v1.QuicEdge.MediaSessionClose) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.MediaSessionClose.getDefaultInstance(); + } + + public static final int PROTOCOL_ERROR_FIELD_NUMBER = 30; + /** + * .cmvr.quic_edge.v1.ProtocolError protocol_error = 30; + * @return Whether the protocolError field is set. + */ + @java.lang.Override + public boolean hasProtocolError() { + return payloadCase_ == 30; + } + /** + * .cmvr.quic_edge.v1.ProtocolError protocol_error = 30; + * @return The protocolError. + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.ProtocolError getProtocolError() { + if (payloadCase_ == 30) { + return (cmvr.quic_edge.v1.QuicEdge.ProtocolError) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.ProtocolError.getDefaultInstance(); + } + /** + * .cmvr.quic_edge.v1.ProtocolError protocol_error = 30; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.ProtocolErrorOrBuilder getProtocolErrorOrBuilder() { + if (payloadCase_ == 30) { + return (cmvr.quic_edge.v1.QuicEdge.ProtocolError) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.ProtocolError.getDefaultInstance(); + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (protocolVersion_ != 0) { + output.writeUInt32(1, protocolVersion_); + } + if (messageSequence_ != 0L) { + output.writeUInt64(2, messageSequence_); + } + if (payloadCase_ == 10) { + output.writeMessage(10, (cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest) payload_); + } + if (payloadCase_ == 11) { + output.writeMessage(11, (cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse) payload_); + } + if (payloadCase_ == 12) { + output.writeMessage(12, (cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat) payload_); + } + if (payloadCase_ == 13) { + output.writeMessage(13, (cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck) payload_); + } + if (payloadCase_ == 20) { + output.writeMessage(20, (cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen) payload_); + } + if (payloadCase_ == 21) { + output.writeMessage(21, (cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor) payload_); + } + if (payloadCase_ == 22) { + output.writeMessage(22, (cmvr.quic_edge.v1.QuicEdge.MediaSessionClose) payload_); + } + if (payloadCase_ == 30) { + output.writeMessage(30, (cmvr.quic_edge.v1.QuicEdge.ProtocolError) payload_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (protocolVersion_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(1, protocolVersion_); + } + if (messageSequence_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeUInt64Size(2, messageSequence_); + } + if (payloadCase_ == 10) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(10, (cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest) payload_); + } + if (payloadCase_ == 11) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(11, (cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse) payload_); + } + if (payloadCase_ == 12) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(12, (cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat) payload_); + } + if (payloadCase_ == 13) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(13, (cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck) payload_); + } + if (payloadCase_ == 20) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(20, (cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen) payload_); + } + if (payloadCase_ == 21) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(21, (cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor) payload_); + } + if (payloadCase_ == 22) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(22, (cmvr.quic_edge.v1.QuicEdge.MediaSessionClose) payload_); + } + if (payloadCase_ == 30) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(30, (cmvr.quic_edge.v1.QuicEdge.ProtocolError) payload_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope)) { + return super.equals(obj); + } + cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope other = (cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope) obj; + + if (getProtocolVersion() + != other.getProtocolVersion()) return false; + if (getMessageSequence() + != other.getMessageSequence()) return false; + if (!getPayloadCase().equals(other.getPayloadCase())) return false; + switch (payloadCase_) { + case 10: + if (!getNodeRegisterRequest() + .equals(other.getNodeRegisterRequest())) return false; + break; + case 11: + if (!getNodeRegisterResponse() + .equals(other.getNodeRegisterResponse())) return false; + break; + case 12: + if (!getNodeHeartbeat() + .equals(other.getNodeHeartbeat())) return false; + break; + case 13: + if (!getNodeHeartbeatAck() + .equals(other.getNodeHeartbeatAck())) return false; + break; + case 20: + if (!getMediaSessionOpen() + .equals(other.getMediaSessionOpen())) return false; + break; + case 21: + if (!getMediaTrackDescriptor() + .equals(other.getMediaTrackDescriptor())) return false; + break; + case 22: + if (!getMediaSessionClose() + .equals(other.getMediaSessionClose())) return false; + break; + case 30: + if (!getProtocolError() + .equals(other.getProtocolError())) return false; + break; + case 0: + default: + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + PROTOCOL_VERSION_FIELD_NUMBER; + hash = (53 * hash) + getProtocolVersion(); + hash = (37 * hash) + MESSAGE_SEQUENCE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getMessageSequence()); + switch (payloadCase_) { + case 10: + hash = (37 * hash) + NODE_REGISTER_REQUEST_FIELD_NUMBER; + hash = (53 * hash) + getNodeRegisterRequest().hashCode(); + break; + case 11: + hash = (37 * hash) + NODE_REGISTER_RESPONSE_FIELD_NUMBER; + hash = (53 * hash) + getNodeRegisterResponse().hashCode(); + break; + case 12: + hash = (37 * hash) + NODE_HEARTBEAT_FIELD_NUMBER; + hash = (53 * hash) + getNodeHeartbeat().hashCode(); + break; + case 13: + hash = (37 * hash) + NODE_HEARTBEAT_ACK_FIELD_NUMBER; + hash = (53 * hash) + getNodeHeartbeatAck().hashCode(); + break; + case 20: + hash = (37 * hash) + MEDIA_SESSION_OPEN_FIELD_NUMBER; + hash = (53 * hash) + getMediaSessionOpen().hashCode(); + break; + case 21: + hash = (37 * hash) + MEDIA_TRACK_DESCRIPTOR_FIELD_NUMBER; + hash = (53 * hash) + getMediaTrackDescriptor().hashCode(); + break; + case 22: + hash = (37 * hash) + MEDIA_SESSION_CLOSE_FIELD_NUMBER; + hash = (53 * hash) + getMediaSessionClose().hashCode(); + break; + case 30: + hash = (37 * hash) + PROTOCOL_ERROR_FIELD_NUMBER; + hash = (53 * hash) + getProtocolError().hashCode(); + break; + case 0: + default: + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * Every application message on the edge-opened reliable bidirectional stream
+     * is carried by this envelope. message_sequence is strictly increasing per
+     * sender (gaps are allowed) and is independent from the heartbeat sequence used
+     * for liveness acknowledgement.
+     * 
+ * + * Protobuf type {@code cmvr.quic_edge.v1.EdgeControlEnvelope} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:cmvr.quic_edge.v1.EdgeControlEnvelope) + cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelopeOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_EdgeControlEnvelope_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_EdgeControlEnvelope_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope.class, cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope.Builder.class); + } + + // Construct using cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + protocolVersion_ = 0; + messageSequence_ = 0L; + if (nodeRegisterRequestBuilder_ != null) { + nodeRegisterRequestBuilder_.clear(); + } + if (nodeRegisterResponseBuilder_ != null) { + nodeRegisterResponseBuilder_.clear(); + } + if (nodeHeartbeatBuilder_ != null) { + nodeHeartbeatBuilder_.clear(); + } + if (nodeHeartbeatAckBuilder_ != null) { + nodeHeartbeatAckBuilder_.clear(); + } + if (mediaSessionOpenBuilder_ != null) { + mediaSessionOpenBuilder_.clear(); + } + if (mediaTrackDescriptorBuilder_ != null) { + mediaTrackDescriptorBuilder_.clear(); + } + if (mediaSessionCloseBuilder_ != null) { + mediaSessionCloseBuilder_.clear(); + } + if (protocolErrorBuilder_ != null) { + protocolErrorBuilder_.clear(); + } + payloadCase_ = 0; + payload_ = null; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_EdgeControlEnvelope_descriptor; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope getDefaultInstanceForType() { + return cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope.getDefaultInstance(); + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope build() { + cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope buildPartial() { + cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope result = new cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope(this); + if (bitField0_ != 0) { buildPartial0(result); } + buildPartialOneofs(result); + onBuilt(); + return result; + } + + private void buildPartial0(cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.protocolVersion_ = protocolVersion_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.messageSequence_ = messageSequence_; + } + } + + private void buildPartialOneofs(cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope result) { + result.payloadCase_ = payloadCase_; + result.payload_ = this.payload_; + if (payloadCase_ == 10 && + nodeRegisterRequestBuilder_ != null) { + result.payload_ = nodeRegisterRequestBuilder_.build(); + } + if (payloadCase_ == 11 && + nodeRegisterResponseBuilder_ != null) { + result.payload_ = nodeRegisterResponseBuilder_.build(); + } + if (payloadCase_ == 12 && + nodeHeartbeatBuilder_ != null) { + result.payload_ = nodeHeartbeatBuilder_.build(); + } + if (payloadCase_ == 13 && + nodeHeartbeatAckBuilder_ != null) { + result.payload_ = nodeHeartbeatAckBuilder_.build(); + } + if (payloadCase_ == 20 && + mediaSessionOpenBuilder_ != null) { + result.payload_ = mediaSessionOpenBuilder_.build(); + } + if (payloadCase_ == 21 && + mediaTrackDescriptorBuilder_ != null) { + result.payload_ = mediaTrackDescriptorBuilder_.build(); + } + if (payloadCase_ == 22 && + mediaSessionCloseBuilder_ != null) { + result.payload_ = mediaSessionCloseBuilder_.build(); + } + if (payloadCase_ == 30 && + protocolErrorBuilder_ != null) { + result.payload_ = protocolErrorBuilder_.build(); + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope) { + return mergeFrom((cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope other) { + if (other == cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope.getDefaultInstance()) return this; + if (other.getProtocolVersion() != 0) { + setProtocolVersion(other.getProtocolVersion()); + } + if (other.getMessageSequence() != 0L) { + setMessageSequence(other.getMessageSequence()); + } + switch (other.getPayloadCase()) { + case NODE_REGISTER_REQUEST: { + mergeNodeRegisterRequest(other.getNodeRegisterRequest()); + break; + } + case NODE_REGISTER_RESPONSE: { + mergeNodeRegisterResponse(other.getNodeRegisterResponse()); + break; + } + case NODE_HEARTBEAT: { + mergeNodeHeartbeat(other.getNodeHeartbeat()); + break; + } + case NODE_HEARTBEAT_ACK: { + mergeNodeHeartbeatAck(other.getNodeHeartbeatAck()); + break; + } + case MEDIA_SESSION_OPEN: { + mergeMediaSessionOpen(other.getMediaSessionOpen()); + break; + } + case MEDIA_TRACK_DESCRIPTOR: { + mergeMediaTrackDescriptor(other.getMediaTrackDescriptor()); + break; + } + case MEDIA_SESSION_CLOSE: { + mergeMediaSessionClose(other.getMediaSessionClose()); + break; + } + case PROTOCOL_ERROR: { + mergeProtocolError(other.getProtocolError()); + break; + } + case PAYLOAD_NOT_SET: { + break; + } + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: { + protocolVersion_ = input.readUInt32(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 16: { + messageSequence_ = input.readUInt64(); + bitField0_ |= 0x00000002; + break; + } // case 16 + case 82: { + input.readMessage( + getNodeRegisterRequestFieldBuilder().getBuilder(), + extensionRegistry); + payloadCase_ = 10; + break; + } // case 82 + case 90: { + input.readMessage( + getNodeRegisterResponseFieldBuilder().getBuilder(), + extensionRegistry); + payloadCase_ = 11; + break; + } // case 90 + case 98: { + input.readMessage( + getNodeHeartbeatFieldBuilder().getBuilder(), + extensionRegistry); + payloadCase_ = 12; + break; + } // case 98 + case 106: { + input.readMessage( + getNodeHeartbeatAckFieldBuilder().getBuilder(), + extensionRegistry); + payloadCase_ = 13; + break; + } // case 106 + case 162: { + input.readMessage( + getMediaSessionOpenFieldBuilder().getBuilder(), + extensionRegistry); + payloadCase_ = 20; + break; + } // case 162 + case 170: { + input.readMessage( + getMediaTrackDescriptorFieldBuilder().getBuilder(), + extensionRegistry); + payloadCase_ = 21; + break; + } // case 170 + case 178: { + input.readMessage( + getMediaSessionCloseFieldBuilder().getBuilder(), + extensionRegistry); + payloadCase_ = 22; + break; + } // case 178 + case 242: { + input.readMessage( + getProtocolErrorFieldBuilder().getBuilder(), + extensionRegistry); + payloadCase_ = 30; + break; + } // case 242 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int payloadCase_ = 0; + private java.lang.Object payload_; + public PayloadCase + getPayloadCase() { + return PayloadCase.forNumber( + payloadCase_); + } + + public Builder clearPayload() { + payloadCase_ = 0; + payload_ = null; + onChanged(); + return this; + } + + private int bitField0_; + + private int protocolVersion_ ; + /** + * uint32 protocol_version = 1; + * @return The protocolVersion. + */ + @java.lang.Override + public int getProtocolVersion() { + return protocolVersion_; + } + /** + * uint32 protocol_version = 1; + * @param value The protocolVersion to set. + * @return This builder for chaining. + */ + public Builder setProtocolVersion(int value) { + + protocolVersion_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * uint32 protocol_version = 1; + * @return This builder for chaining. + */ + public Builder clearProtocolVersion() { + bitField0_ = (bitField0_ & ~0x00000001); + protocolVersion_ = 0; + onChanged(); + return this; + } + + private long messageSequence_ ; + /** + * uint64 message_sequence = 2; + * @return The messageSequence. + */ + @java.lang.Override + public long getMessageSequence() { + return messageSequence_; + } + /** + * uint64 message_sequence = 2; + * @param value The messageSequence to set. + * @return This builder for chaining. + */ + public Builder setMessageSequence(long value) { + + messageSequence_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * uint64 message_sequence = 2; + * @return This builder for chaining. + */ + public Builder clearMessageSequence() { + bitField0_ = (bitField0_ & ~0x00000002); + messageSequence_ = 0L; + onChanged(); + return this; + } + + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest, cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest.Builder, cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequestOrBuilder> nodeRegisterRequestBuilder_; + /** + * .cmvr.quic_edge.v1.NodeRegisterRequest node_register_request = 10; + * @return Whether the nodeRegisterRequest field is set. + */ + @java.lang.Override + public boolean hasNodeRegisterRequest() { + return payloadCase_ == 10; + } + /** + * .cmvr.quic_edge.v1.NodeRegisterRequest node_register_request = 10; + * @return The nodeRegisterRequest. + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest getNodeRegisterRequest() { + if (nodeRegisterRequestBuilder_ == null) { + if (payloadCase_ == 10) { + return (cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest.getDefaultInstance(); + } else { + if (payloadCase_ == 10) { + return nodeRegisterRequestBuilder_.getMessage(); + } + return cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest.getDefaultInstance(); + } + } + /** + * .cmvr.quic_edge.v1.NodeRegisterRequest node_register_request = 10; + */ + public Builder setNodeRegisterRequest(cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest value) { + if (nodeRegisterRequestBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + payload_ = value; + onChanged(); + } else { + nodeRegisterRequestBuilder_.setMessage(value); + } + payloadCase_ = 10; + return this; + } + /** + * .cmvr.quic_edge.v1.NodeRegisterRequest node_register_request = 10; + */ + public Builder setNodeRegisterRequest( + cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest.Builder builderForValue) { + if (nodeRegisterRequestBuilder_ == null) { + payload_ = builderForValue.build(); + onChanged(); + } else { + nodeRegisterRequestBuilder_.setMessage(builderForValue.build()); + } + payloadCase_ = 10; + return this; + } + /** + * .cmvr.quic_edge.v1.NodeRegisterRequest node_register_request = 10; + */ + public Builder mergeNodeRegisterRequest(cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest value) { + if (nodeRegisterRequestBuilder_ == null) { + if (payloadCase_ == 10 && + payload_ != cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest.getDefaultInstance()) { + payload_ = cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest.newBuilder((cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest) payload_) + .mergeFrom(value).buildPartial(); + } else { + payload_ = value; + } + onChanged(); + } else { + if (payloadCase_ == 10) { + nodeRegisterRequestBuilder_.mergeFrom(value); + } else { + nodeRegisterRequestBuilder_.setMessage(value); + } + } + payloadCase_ = 10; + return this; + } + /** + * .cmvr.quic_edge.v1.NodeRegisterRequest node_register_request = 10; + */ + public Builder clearNodeRegisterRequest() { + if (nodeRegisterRequestBuilder_ == null) { + if (payloadCase_ == 10) { + payloadCase_ = 0; + payload_ = null; + onChanged(); + } + } else { + if (payloadCase_ == 10) { + payloadCase_ = 0; + payload_ = null; + } + nodeRegisterRequestBuilder_.clear(); + } + return this; + } + /** + * .cmvr.quic_edge.v1.NodeRegisterRequest node_register_request = 10; + */ + public cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest.Builder getNodeRegisterRequestBuilder() { + return getNodeRegisterRequestFieldBuilder().getBuilder(); + } + /** + * .cmvr.quic_edge.v1.NodeRegisterRequest node_register_request = 10; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequestOrBuilder getNodeRegisterRequestOrBuilder() { + if ((payloadCase_ == 10) && (nodeRegisterRequestBuilder_ != null)) { + return nodeRegisterRequestBuilder_.getMessageOrBuilder(); + } else { + if (payloadCase_ == 10) { + return (cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest.getDefaultInstance(); + } + } + /** + * .cmvr.quic_edge.v1.NodeRegisterRequest node_register_request = 10; + */ + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest, cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest.Builder, cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequestOrBuilder> + getNodeRegisterRequestFieldBuilder() { + if (nodeRegisterRequestBuilder_ == null) { + if (!(payloadCase_ == 10)) { + payload_ = cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest.getDefaultInstance(); + } + nodeRegisterRequestBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest, cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest.Builder, cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequestOrBuilder>( + (cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest) payload_, + getParentForChildren(), + isClean()); + payload_ = null; + } + payloadCase_ = 10; + onChanged(); + return nodeRegisterRequestBuilder_; + } + + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse, cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse.Builder, cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponseOrBuilder> nodeRegisterResponseBuilder_; + /** + * .cmvr.quic_edge.v1.NodeRegisterResponse node_register_response = 11; + * @return Whether the nodeRegisterResponse field is set. + */ + @java.lang.Override + public boolean hasNodeRegisterResponse() { + return payloadCase_ == 11; + } + /** + * .cmvr.quic_edge.v1.NodeRegisterResponse node_register_response = 11; + * @return The nodeRegisterResponse. + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse getNodeRegisterResponse() { + if (nodeRegisterResponseBuilder_ == null) { + if (payloadCase_ == 11) { + return (cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse.getDefaultInstance(); + } else { + if (payloadCase_ == 11) { + return nodeRegisterResponseBuilder_.getMessage(); + } + return cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse.getDefaultInstance(); + } + } + /** + * .cmvr.quic_edge.v1.NodeRegisterResponse node_register_response = 11; + */ + public Builder setNodeRegisterResponse(cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse value) { + if (nodeRegisterResponseBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + payload_ = value; + onChanged(); + } else { + nodeRegisterResponseBuilder_.setMessage(value); + } + payloadCase_ = 11; + return this; + } + /** + * .cmvr.quic_edge.v1.NodeRegisterResponse node_register_response = 11; + */ + public Builder setNodeRegisterResponse( + cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse.Builder builderForValue) { + if (nodeRegisterResponseBuilder_ == null) { + payload_ = builderForValue.build(); + onChanged(); + } else { + nodeRegisterResponseBuilder_.setMessage(builderForValue.build()); + } + payloadCase_ = 11; + return this; + } + /** + * .cmvr.quic_edge.v1.NodeRegisterResponse node_register_response = 11; + */ + public Builder mergeNodeRegisterResponse(cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse value) { + if (nodeRegisterResponseBuilder_ == null) { + if (payloadCase_ == 11 && + payload_ != cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse.getDefaultInstance()) { + payload_ = cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse.newBuilder((cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse) payload_) + .mergeFrom(value).buildPartial(); + } else { + payload_ = value; + } + onChanged(); + } else { + if (payloadCase_ == 11) { + nodeRegisterResponseBuilder_.mergeFrom(value); + } else { + nodeRegisterResponseBuilder_.setMessage(value); + } + } + payloadCase_ = 11; + return this; + } + /** + * .cmvr.quic_edge.v1.NodeRegisterResponse node_register_response = 11; + */ + public Builder clearNodeRegisterResponse() { + if (nodeRegisterResponseBuilder_ == null) { + if (payloadCase_ == 11) { + payloadCase_ = 0; + payload_ = null; + onChanged(); + } + } else { + if (payloadCase_ == 11) { + payloadCase_ = 0; + payload_ = null; + } + nodeRegisterResponseBuilder_.clear(); + } + return this; + } + /** + * .cmvr.quic_edge.v1.NodeRegisterResponse node_register_response = 11; + */ + public cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse.Builder getNodeRegisterResponseBuilder() { + return getNodeRegisterResponseFieldBuilder().getBuilder(); + } + /** + * .cmvr.quic_edge.v1.NodeRegisterResponse node_register_response = 11; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponseOrBuilder getNodeRegisterResponseOrBuilder() { + if ((payloadCase_ == 11) && (nodeRegisterResponseBuilder_ != null)) { + return nodeRegisterResponseBuilder_.getMessageOrBuilder(); + } else { + if (payloadCase_ == 11) { + return (cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse.getDefaultInstance(); + } + } + /** + * .cmvr.quic_edge.v1.NodeRegisterResponse node_register_response = 11; + */ + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse, cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse.Builder, cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponseOrBuilder> + getNodeRegisterResponseFieldBuilder() { + if (nodeRegisterResponseBuilder_ == null) { + if (!(payloadCase_ == 11)) { + payload_ = cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse.getDefaultInstance(); + } + nodeRegisterResponseBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse, cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse.Builder, cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponseOrBuilder>( + (cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse) payload_, + getParentForChildren(), + isClean()); + payload_ = null; + } + payloadCase_ = 11; + onChanged(); + return nodeRegisterResponseBuilder_; + } + + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat, cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat.Builder, cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatOrBuilder> nodeHeartbeatBuilder_; + /** + * .cmvr.quic_edge.v1.NodeHeartbeat node_heartbeat = 12; + * @return Whether the nodeHeartbeat field is set. + */ + @java.lang.Override + public boolean hasNodeHeartbeat() { + return payloadCase_ == 12; + } + /** + * .cmvr.quic_edge.v1.NodeHeartbeat node_heartbeat = 12; + * @return The nodeHeartbeat. + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat getNodeHeartbeat() { + if (nodeHeartbeatBuilder_ == null) { + if (payloadCase_ == 12) { + return (cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat.getDefaultInstance(); + } else { + if (payloadCase_ == 12) { + return nodeHeartbeatBuilder_.getMessage(); + } + return cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat.getDefaultInstance(); + } + } + /** + * .cmvr.quic_edge.v1.NodeHeartbeat node_heartbeat = 12; + */ + public Builder setNodeHeartbeat(cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat value) { + if (nodeHeartbeatBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + payload_ = value; + onChanged(); + } else { + nodeHeartbeatBuilder_.setMessage(value); + } + payloadCase_ = 12; + return this; + } + /** + * .cmvr.quic_edge.v1.NodeHeartbeat node_heartbeat = 12; + */ + public Builder setNodeHeartbeat( + cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat.Builder builderForValue) { + if (nodeHeartbeatBuilder_ == null) { + payload_ = builderForValue.build(); + onChanged(); + } else { + nodeHeartbeatBuilder_.setMessage(builderForValue.build()); + } + payloadCase_ = 12; + return this; + } + /** + * .cmvr.quic_edge.v1.NodeHeartbeat node_heartbeat = 12; + */ + public Builder mergeNodeHeartbeat(cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat value) { + if (nodeHeartbeatBuilder_ == null) { + if (payloadCase_ == 12 && + payload_ != cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat.getDefaultInstance()) { + payload_ = cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat.newBuilder((cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat) payload_) + .mergeFrom(value).buildPartial(); + } else { + payload_ = value; + } + onChanged(); + } else { + if (payloadCase_ == 12) { + nodeHeartbeatBuilder_.mergeFrom(value); + } else { + nodeHeartbeatBuilder_.setMessage(value); + } + } + payloadCase_ = 12; + return this; + } + /** + * .cmvr.quic_edge.v1.NodeHeartbeat node_heartbeat = 12; + */ + public Builder clearNodeHeartbeat() { + if (nodeHeartbeatBuilder_ == null) { + if (payloadCase_ == 12) { + payloadCase_ = 0; + payload_ = null; + onChanged(); + } + } else { + if (payloadCase_ == 12) { + payloadCase_ = 0; + payload_ = null; + } + nodeHeartbeatBuilder_.clear(); + } + return this; + } + /** + * .cmvr.quic_edge.v1.NodeHeartbeat node_heartbeat = 12; + */ + public cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat.Builder getNodeHeartbeatBuilder() { + return getNodeHeartbeatFieldBuilder().getBuilder(); + } + /** + * .cmvr.quic_edge.v1.NodeHeartbeat node_heartbeat = 12; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatOrBuilder getNodeHeartbeatOrBuilder() { + if ((payloadCase_ == 12) && (nodeHeartbeatBuilder_ != null)) { + return nodeHeartbeatBuilder_.getMessageOrBuilder(); + } else { + if (payloadCase_ == 12) { + return (cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat.getDefaultInstance(); + } + } + /** + * .cmvr.quic_edge.v1.NodeHeartbeat node_heartbeat = 12; + */ + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat, cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat.Builder, cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatOrBuilder> + getNodeHeartbeatFieldBuilder() { + if (nodeHeartbeatBuilder_ == null) { + if (!(payloadCase_ == 12)) { + payload_ = cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat.getDefaultInstance(); + } + nodeHeartbeatBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat, cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat.Builder, cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatOrBuilder>( + (cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat) payload_, + getParentForChildren(), + isClean()); + payload_ = null; + } + payloadCase_ = 12; + onChanged(); + return nodeHeartbeatBuilder_; + } + + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck, cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck.Builder, cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAckOrBuilder> nodeHeartbeatAckBuilder_; + /** + * .cmvr.quic_edge.v1.NodeHeartbeatAck node_heartbeat_ack = 13; + * @return Whether the nodeHeartbeatAck field is set. + */ + @java.lang.Override + public boolean hasNodeHeartbeatAck() { + return payloadCase_ == 13; + } + /** + * .cmvr.quic_edge.v1.NodeHeartbeatAck node_heartbeat_ack = 13; + * @return The nodeHeartbeatAck. + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck getNodeHeartbeatAck() { + if (nodeHeartbeatAckBuilder_ == null) { + if (payloadCase_ == 13) { + return (cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck.getDefaultInstance(); + } else { + if (payloadCase_ == 13) { + return nodeHeartbeatAckBuilder_.getMessage(); + } + return cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck.getDefaultInstance(); + } + } + /** + * .cmvr.quic_edge.v1.NodeHeartbeatAck node_heartbeat_ack = 13; + */ + public Builder setNodeHeartbeatAck(cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck value) { + if (nodeHeartbeatAckBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + payload_ = value; + onChanged(); + } else { + nodeHeartbeatAckBuilder_.setMessage(value); + } + payloadCase_ = 13; + return this; + } + /** + * .cmvr.quic_edge.v1.NodeHeartbeatAck node_heartbeat_ack = 13; + */ + public Builder setNodeHeartbeatAck( + cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck.Builder builderForValue) { + if (nodeHeartbeatAckBuilder_ == null) { + payload_ = builderForValue.build(); + onChanged(); + } else { + nodeHeartbeatAckBuilder_.setMessage(builderForValue.build()); + } + payloadCase_ = 13; + return this; + } + /** + * .cmvr.quic_edge.v1.NodeHeartbeatAck node_heartbeat_ack = 13; + */ + public Builder mergeNodeHeartbeatAck(cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck value) { + if (nodeHeartbeatAckBuilder_ == null) { + if (payloadCase_ == 13 && + payload_ != cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck.getDefaultInstance()) { + payload_ = cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck.newBuilder((cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck) payload_) + .mergeFrom(value).buildPartial(); + } else { + payload_ = value; + } + onChanged(); + } else { + if (payloadCase_ == 13) { + nodeHeartbeatAckBuilder_.mergeFrom(value); + } else { + nodeHeartbeatAckBuilder_.setMessage(value); + } + } + payloadCase_ = 13; + return this; + } + /** + * .cmvr.quic_edge.v1.NodeHeartbeatAck node_heartbeat_ack = 13; + */ + public Builder clearNodeHeartbeatAck() { + if (nodeHeartbeatAckBuilder_ == null) { + if (payloadCase_ == 13) { + payloadCase_ = 0; + payload_ = null; + onChanged(); + } + } else { + if (payloadCase_ == 13) { + payloadCase_ = 0; + payload_ = null; + } + nodeHeartbeatAckBuilder_.clear(); + } + return this; + } + /** + * .cmvr.quic_edge.v1.NodeHeartbeatAck node_heartbeat_ack = 13; + */ + public cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck.Builder getNodeHeartbeatAckBuilder() { + return getNodeHeartbeatAckFieldBuilder().getBuilder(); + } + /** + * .cmvr.quic_edge.v1.NodeHeartbeatAck node_heartbeat_ack = 13; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAckOrBuilder getNodeHeartbeatAckOrBuilder() { + if ((payloadCase_ == 13) && (nodeHeartbeatAckBuilder_ != null)) { + return nodeHeartbeatAckBuilder_.getMessageOrBuilder(); + } else { + if (payloadCase_ == 13) { + return (cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck.getDefaultInstance(); + } + } + /** + * .cmvr.quic_edge.v1.NodeHeartbeatAck node_heartbeat_ack = 13; + */ + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck, cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck.Builder, cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAckOrBuilder> + getNodeHeartbeatAckFieldBuilder() { + if (nodeHeartbeatAckBuilder_ == null) { + if (!(payloadCase_ == 13)) { + payload_ = cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck.getDefaultInstance(); + } + nodeHeartbeatAckBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck, cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck.Builder, cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAckOrBuilder>( + (cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck) payload_, + getParentForChildren(), + isClean()); + payload_ = null; + } + payloadCase_ = 13; + onChanged(); + return nodeHeartbeatAckBuilder_; + } + + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen, cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen.Builder, cmvr.quic_edge.v1.QuicEdge.MediaSessionOpenOrBuilder> mediaSessionOpenBuilder_; + /** + * .cmvr.quic_edge.v1.MediaSessionOpen media_session_open = 20; + * @return Whether the mediaSessionOpen field is set. + */ + @java.lang.Override + public boolean hasMediaSessionOpen() { + return payloadCase_ == 20; + } + /** + * .cmvr.quic_edge.v1.MediaSessionOpen media_session_open = 20; + * @return The mediaSessionOpen. + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen getMediaSessionOpen() { + if (mediaSessionOpenBuilder_ == null) { + if (payloadCase_ == 20) { + return (cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen.getDefaultInstance(); + } else { + if (payloadCase_ == 20) { + return mediaSessionOpenBuilder_.getMessage(); + } + return cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen.getDefaultInstance(); + } + } + /** + * .cmvr.quic_edge.v1.MediaSessionOpen media_session_open = 20; + */ + public Builder setMediaSessionOpen(cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen value) { + if (mediaSessionOpenBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + payload_ = value; + onChanged(); + } else { + mediaSessionOpenBuilder_.setMessage(value); + } + payloadCase_ = 20; + return this; + } + /** + * .cmvr.quic_edge.v1.MediaSessionOpen media_session_open = 20; + */ + public Builder setMediaSessionOpen( + cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen.Builder builderForValue) { + if (mediaSessionOpenBuilder_ == null) { + payload_ = builderForValue.build(); + onChanged(); + } else { + mediaSessionOpenBuilder_.setMessage(builderForValue.build()); + } + payloadCase_ = 20; + return this; + } + /** + * .cmvr.quic_edge.v1.MediaSessionOpen media_session_open = 20; + */ + public Builder mergeMediaSessionOpen(cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen value) { + if (mediaSessionOpenBuilder_ == null) { + if (payloadCase_ == 20 && + payload_ != cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen.getDefaultInstance()) { + payload_ = cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen.newBuilder((cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen) payload_) + .mergeFrom(value).buildPartial(); + } else { + payload_ = value; + } + onChanged(); + } else { + if (payloadCase_ == 20) { + mediaSessionOpenBuilder_.mergeFrom(value); + } else { + mediaSessionOpenBuilder_.setMessage(value); + } + } + payloadCase_ = 20; + return this; + } + /** + * .cmvr.quic_edge.v1.MediaSessionOpen media_session_open = 20; + */ + public Builder clearMediaSessionOpen() { + if (mediaSessionOpenBuilder_ == null) { + if (payloadCase_ == 20) { + payloadCase_ = 0; + payload_ = null; + onChanged(); + } + } else { + if (payloadCase_ == 20) { + payloadCase_ = 0; + payload_ = null; + } + mediaSessionOpenBuilder_.clear(); + } + return this; + } + /** + * .cmvr.quic_edge.v1.MediaSessionOpen media_session_open = 20; + */ + public cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen.Builder getMediaSessionOpenBuilder() { + return getMediaSessionOpenFieldBuilder().getBuilder(); + } + /** + * .cmvr.quic_edge.v1.MediaSessionOpen media_session_open = 20; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.MediaSessionOpenOrBuilder getMediaSessionOpenOrBuilder() { + if ((payloadCase_ == 20) && (mediaSessionOpenBuilder_ != null)) { + return mediaSessionOpenBuilder_.getMessageOrBuilder(); + } else { + if (payloadCase_ == 20) { + return (cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen.getDefaultInstance(); + } + } + /** + * .cmvr.quic_edge.v1.MediaSessionOpen media_session_open = 20; + */ + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen, cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen.Builder, cmvr.quic_edge.v1.QuicEdge.MediaSessionOpenOrBuilder> + getMediaSessionOpenFieldBuilder() { + if (mediaSessionOpenBuilder_ == null) { + if (!(payloadCase_ == 20)) { + payload_ = cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen.getDefaultInstance(); + } + mediaSessionOpenBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen, cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen.Builder, cmvr.quic_edge.v1.QuicEdge.MediaSessionOpenOrBuilder>( + (cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen) payload_, + getParentForChildren(), + isClean()); + payload_ = null; + } + payloadCase_ = 20; + onChanged(); + return mediaSessionOpenBuilder_; + } + + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor, cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor.Builder, cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptorOrBuilder> mediaTrackDescriptorBuilder_; + /** + * .cmvr.quic_edge.v1.MediaTrackDescriptor media_track_descriptor = 21; + * @return Whether the mediaTrackDescriptor field is set. + */ + @java.lang.Override + public boolean hasMediaTrackDescriptor() { + return payloadCase_ == 21; + } + /** + * .cmvr.quic_edge.v1.MediaTrackDescriptor media_track_descriptor = 21; + * @return The mediaTrackDescriptor. + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor getMediaTrackDescriptor() { + if (mediaTrackDescriptorBuilder_ == null) { + if (payloadCase_ == 21) { + return (cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor.getDefaultInstance(); + } else { + if (payloadCase_ == 21) { + return mediaTrackDescriptorBuilder_.getMessage(); + } + return cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor.getDefaultInstance(); + } + } + /** + * .cmvr.quic_edge.v1.MediaTrackDescriptor media_track_descriptor = 21; + */ + public Builder setMediaTrackDescriptor(cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor value) { + if (mediaTrackDescriptorBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + payload_ = value; + onChanged(); + } else { + mediaTrackDescriptorBuilder_.setMessage(value); + } + payloadCase_ = 21; + return this; + } + /** + * .cmvr.quic_edge.v1.MediaTrackDescriptor media_track_descriptor = 21; + */ + public Builder setMediaTrackDescriptor( + cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor.Builder builderForValue) { + if (mediaTrackDescriptorBuilder_ == null) { + payload_ = builderForValue.build(); + onChanged(); + } else { + mediaTrackDescriptorBuilder_.setMessage(builderForValue.build()); + } + payloadCase_ = 21; + return this; + } + /** + * .cmvr.quic_edge.v1.MediaTrackDescriptor media_track_descriptor = 21; + */ + public Builder mergeMediaTrackDescriptor(cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor value) { + if (mediaTrackDescriptorBuilder_ == null) { + if (payloadCase_ == 21 && + payload_ != cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor.getDefaultInstance()) { + payload_ = cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor.newBuilder((cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor) payload_) + .mergeFrom(value).buildPartial(); + } else { + payload_ = value; + } + onChanged(); + } else { + if (payloadCase_ == 21) { + mediaTrackDescriptorBuilder_.mergeFrom(value); + } else { + mediaTrackDescriptorBuilder_.setMessage(value); + } + } + payloadCase_ = 21; + return this; + } + /** + * .cmvr.quic_edge.v1.MediaTrackDescriptor media_track_descriptor = 21; + */ + public Builder clearMediaTrackDescriptor() { + if (mediaTrackDescriptorBuilder_ == null) { + if (payloadCase_ == 21) { + payloadCase_ = 0; + payload_ = null; + onChanged(); + } + } else { + if (payloadCase_ == 21) { + payloadCase_ = 0; + payload_ = null; + } + mediaTrackDescriptorBuilder_.clear(); + } + return this; + } + /** + * .cmvr.quic_edge.v1.MediaTrackDescriptor media_track_descriptor = 21; + */ + public cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor.Builder getMediaTrackDescriptorBuilder() { + return getMediaTrackDescriptorFieldBuilder().getBuilder(); + } + /** + * .cmvr.quic_edge.v1.MediaTrackDescriptor media_track_descriptor = 21; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptorOrBuilder getMediaTrackDescriptorOrBuilder() { + if ((payloadCase_ == 21) && (mediaTrackDescriptorBuilder_ != null)) { + return mediaTrackDescriptorBuilder_.getMessageOrBuilder(); + } else { + if (payloadCase_ == 21) { + return (cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor.getDefaultInstance(); + } + } + /** + * .cmvr.quic_edge.v1.MediaTrackDescriptor media_track_descriptor = 21; + */ + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor, cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor.Builder, cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptorOrBuilder> + getMediaTrackDescriptorFieldBuilder() { + if (mediaTrackDescriptorBuilder_ == null) { + if (!(payloadCase_ == 21)) { + payload_ = cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor.getDefaultInstance(); + } + mediaTrackDescriptorBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor, cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor.Builder, cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptorOrBuilder>( + (cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor) payload_, + getParentForChildren(), + isClean()); + payload_ = null; + } + payloadCase_ = 21; + onChanged(); + return mediaTrackDescriptorBuilder_; + } + + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.MediaSessionClose, cmvr.quic_edge.v1.QuicEdge.MediaSessionClose.Builder, cmvr.quic_edge.v1.QuicEdge.MediaSessionCloseOrBuilder> mediaSessionCloseBuilder_; + /** + * .cmvr.quic_edge.v1.MediaSessionClose media_session_close = 22; + * @return Whether the mediaSessionClose field is set. + */ + @java.lang.Override + public boolean hasMediaSessionClose() { + return payloadCase_ == 22; + } + /** + * .cmvr.quic_edge.v1.MediaSessionClose media_session_close = 22; + * @return The mediaSessionClose. + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.MediaSessionClose getMediaSessionClose() { + if (mediaSessionCloseBuilder_ == null) { + if (payloadCase_ == 22) { + return (cmvr.quic_edge.v1.QuicEdge.MediaSessionClose) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.MediaSessionClose.getDefaultInstance(); + } else { + if (payloadCase_ == 22) { + return mediaSessionCloseBuilder_.getMessage(); + } + return cmvr.quic_edge.v1.QuicEdge.MediaSessionClose.getDefaultInstance(); + } + } + /** + * .cmvr.quic_edge.v1.MediaSessionClose media_session_close = 22; + */ + public Builder setMediaSessionClose(cmvr.quic_edge.v1.QuicEdge.MediaSessionClose value) { + if (mediaSessionCloseBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + payload_ = value; + onChanged(); + } else { + mediaSessionCloseBuilder_.setMessage(value); + } + payloadCase_ = 22; + return this; + } + /** + * .cmvr.quic_edge.v1.MediaSessionClose media_session_close = 22; + */ + public Builder setMediaSessionClose( + cmvr.quic_edge.v1.QuicEdge.MediaSessionClose.Builder builderForValue) { + if (mediaSessionCloseBuilder_ == null) { + payload_ = builderForValue.build(); + onChanged(); + } else { + mediaSessionCloseBuilder_.setMessage(builderForValue.build()); + } + payloadCase_ = 22; + return this; + } + /** + * .cmvr.quic_edge.v1.MediaSessionClose media_session_close = 22; + */ + public Builder mergeMediaSessionClose(cmvr.quic_edge.v1.QuicEdge.MediaSessionClose value) { + if (mediaSessionCloseBuilder_ == null) { + if (payloadCase_ == 22 && + payload_ != cmvr.quic_edge.v1.QuicEdge.MediaSessionClose.getDefaultInstance()) { + payload_ = cmvr.quic_edge.v1.QuicEdge.MediaSessionClose.newBuilder((cmvr.quic_edge.v1.QuicEdge.MediaSessionClose) payload_) + .mergeFrom(value).buildPartial(); + } else { + payload_ = value; + } + onChanged(); + } else { + if (payloadCase_ == 22) { + mediaSessionCloseBuilder_.mergeFrom(value); + } else { + mediaSessionCloseBuilder_.setMessage(value); + } + } + payloadCase_ = 22; + return this; + } + /** + * .cmvr.quic_edge.v1.MediaSessionClose media_session_close = 22; + */ + public Builder clearMediaSessionClose() { + if (mediaSessionCloseBuilder_ == null) { + if (payloadCase_ == 22) { + payloadCase_ = 0; + payload_ = null; + onChanged(); + } + } else { + if (payloadCase_ == 22) { + payloadCase_ = 0; + payload_ = null; + } + mediaSessionCloseBuilder_.clear(); + } + return this; + } + /** + * .cmvr.quic_edge.v1.MediaSessionClose media_session_close = 22; + */ + public cmvr.quic_edge.v1.QuicEdge.MediaSessionClose.Builder getMediaSessionCloseBuilder() { + return getMediaSessionCloseFieldBuilder().getBuilder(); + } + /** + * .cmvr.quic_edge.v1.MediaSessionClose media_session_close = 22; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.MediaSessionCloseOrBuilder getMediaSessionCloseOrBuilder() { + if ((payloadCase_ == 22) && (mediaSessionCloseBuilder_ != null)) { + return mediaSessionCloseBuilder_.getMessageOrBuilder(); + } else { + if (payloadCase_ == 22) { + return (cmvr.quic_edge.v1.QuicEdge.MediaSessionClose) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.MediaSessionClose.getDefaultInstance(); + } + } + /** + * .cmvr.quic_edge.v1.MediaSessionClose media_session_close = 22; + */ + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.MediaSessionClose, cmvr.quic_edge.v1.QuicEdge.MediaSessionClose.Builder, cmvr.quic_edge.v1.QuicEdge.MediaSessionCloseOrBuilder> + getMediaSessionCloseFieldBuilder() { + if (mediaSessionCloseBuilder_ == null) { + if (!(payloadCase_ == 22)) { + payload_ = cmvr.quic_edge.v1.QuicEdge.MediaSessionClose.getDefaultInstance(); + } + mediaSessionCloseBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.MediaSessionClose, cmvr.quic_edge.v1.QuicEdge.MediaSessionClose.Builder, cmvr.quic_edge.v1.QuicEdge.MediaSessionCloseOrBuilder>( + (cmvr.quic_edge.v1.QuicEdge.MediaSessionClose) payload_, + getParentForChildren(), + isClean()); + payload_ = null; + } + payloadCase_ = 22; + onChanged(); + return mediaSessionCloseBuilder_; + } + + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.ProtocolError, cmvr.quic_edge.v1.QuicEdge.ProtocolError.Builder, cmvr.quic_edge.v1.QuicEdge.ProtocolErrorOrBuilder> protocolErrorBuilder_; + /** + * .cmvr.quic_edge.v1.ProtocolError protocol_error = 30; + * @return Whether the protocolError field is set. + */ + @java.lang.Override + public boolean hasProtocolError() { + return payloadCase_ == 30; + } + /** + * .cmvr.quic_edge.v1.ProtocolError protocol_error = 30; + * @return The protocolError. + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.ProtocolError getProtocolError() { + if (protocolErrorBuilder_ == null) { + if (payloadCase_ == 30) { + return (cmvr.quic_edge.v1.QuicEdge.ProtocolError) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.ProtocolError.getDefaultInstance(); + } else { + if (payloadCase_ == 30) { + return protocolErrorBuilder_.getMessage(); + } + return cmvr.quic_edge.v1.QuicEdge.ProtocolError.getDefaultInstance(); + } + } + /** + * .cmvr.quic_edge.v1.ProtocolError protocol_error = 30; + */ + public Builder setProtocolError(cmvr.quic_edge.v1.QuicEdge.ProtocolError value) { + if (protocolErrorBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + payload_ = value; + onChanged(); + } else { + protocolErrorBuilder_.setMessage(value); + } + payloadCase_ = 30; + return this; + } + /** + * .cmvr.quic_edge.v1.ProtocolError protocol_error = 30; + */ + public Builder setProtocolError( + cmvr.quic_edge.v1.QuicEdge.ProtocolError.Builder builderForValue) { + if (protocolErrorBuilder_ == null) { + payload_ = builderForValue.build(); + onChanged(); + } else { + protocolErrorBuilder_.setMessage(builderForValue.build()); + } + payloadCase_ = 30; + return this; + } + /** + * .cmvr.quic_edge.v1.ProtocolError protocol_error = 30; + */ + public Builder mergeProtocolError(cmvr.quic_edge.v1.QuicEdge.ProtocolError value) { + if (protocolErrorBuilder_ == null) { + if (payloadCase_ == 30 && + payload_ != cmvr.quic_edge.v1.QuicEdge.ProtocolError.getDefaultInstance()) { + payload_ = cmvr.quic_edge.v1.QuicEdge.ProtocolError.newBuilder((cmvr.quic_edge.v1.QuicEdge.ProtocolError) payload_) + .mergeFrom(value).buildPartial(); + } else { + payload_ = value; + } + onChanged(); + } else { + if (payloadCase_ == 30) { + protocolErrorBuilder_.mergeFrom(value); + } else { + protocolErrorBuilder_.setMessage(value); + } + } + payloadCase_ = 30; + return this; + } + /** + * .cmvr.quic_edge.v1.ProtocolError protocol_error = 30; + */ + public Builder clearProtocolError() { + if (protocolErrorBuilder_ == null) { + if (payloadCase_ == 30) { + payloadCase_ = 0; + payload_ = null; + onChanged(); + } + } else { + if (payloadCase_ == 30) { + payloadCase_ = 0; + payload_ = null; + } + protocolErrorBuilder_.clear(); + } + return this; + } + /** + * .cmvr.quic_edge.v1.ProtocolError protocol_error = 30; + */ + public cmvr.quic_edge.v1.QuicEdge.ProtocolError.Builder getProtocolErrorBuilder() { + return getProtocolErrorFieldBuilder().getBuilder(); + } + /** + * .cmvr.quic_edge.v1.ProtocolError protocol_error = 30; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.ProtocolErrorOrBuilder getProtocolErrorOrBuilder() { + if ((payloadCase_ == 30) && (protocolErrorBuilder_ != null)) { + return protocolErrorBuilder_.getMessageOrBuilder(); + } else { + if (payloadCase_ == 30) { + return (cmvr.quic_edge.v1.QuicEdge.ProtocolError) payload_; + } + return cmvr.quic_edge.v1.QuicEdge.ProtocolError.getDefaultInstance(); + } + } + /** + * .cmvr.quic_edge.v1.ProtocolError protocol_error = 30; + */ + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.ProtocolError, cmvr.quic_edge.v1.QuicEdge.ProtocolError.Builder, cmvr.quic_edge.v1.QuicEdge.ProtocolErrorOrBuilder> + getProtocolErrorFieldBuilder() { + if (protocolErrorBuilder_ == null) { + if (!(payloadCase_ == 30)) { + payload_ = cmvr.quic_edge.v1.QuicEdge.ProtocolError.getDefaultInstance(); + } + protocolErrorBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.ProtocolError, cmvr.quic_edge.v1.QuicEdge.ProtocolError.Builder, cmvr.quic_edge.v1.QuicEdge.ProtocolErrorOrBuilder>( + (cmvr.quic_edge.v1.QuicEdge.ProtocolError) payload_, + getParentForChildren(), + isClean()); + payload_ = null; + } + payloadCase_ = 30; + onChanged(); + return protocolErrorBuilder_; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:cmvr.quic_edge.v1.EdgeControlEnvelope) + } + + // @@protoc_insertion_point(class_scope:cmvr.quic_edge.v1.EdgeControlEnvelope) + private static final cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope(); + } + + public static cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public EdgeControlEnvelope parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.EdgeControlEnvelope getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface NetworkInterfaceAddressOrBuilder extends + // @@protoc_insertion_point(interface_extends:cmvr.quic_edge.v1.NetworkInterfaceAddress) + com.google.protobuf.MessageOrBuilder { + + /** + * string interface_name = 1; + * @return The interfaceName. + */ + java.lang.String getInterfaceName(); + /** + * string interface_name = 1; + * @return The bytes for interfaceName. + */ + com.google.protobuf.ByteString + getInterfaceNameBytes(); + + /** + * string ip_address = 2; + * @return The ipAddress. + */ + java.lang.String getIpAddress(); + /** + * string ip_address = 2; + * @return The bytes for ipAddress. + */ + com.google.protobuf.ByteString + getIpAddressBytes(); + + /** + * .cmvr.quic_edge.v1.NetworkInterfaceAddress.AddressFamily family = 3; + * @return The enum numeric value on the wire for family. + */ + int getFamilyValue(); + /** + * .cmvr.quic_edge.v1.NetworkInterfaceAddress.AddressFamily family = 3; + * @return The family. + */ + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.AddressFamily getFamily(); + + /** + * bool loopback = 4; + * @return The loopback. + */ + boolean getLoopback(); + } + /** + * Protobuf type {@code cmvr.quic_edge.v1.NetworkInterfaceAddress} + */ + public static final class NetworkInterfaceAddress extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:cmvr.quic_edge.v1.NetworkInterfaceAddress) + NetworkInterfaceAddressOrBuilder { + private static final long serialVersionUID = 0L; + // Use NetworkInterfaceAddress.newBuilder() to construct. + private NetworkInterfaceAddress(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private NetworkInterfaceAddress() { + interfaceName_ = ""; + ipAddress_ = ""; + family_ = 0; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new NetworkInterfaceAddress(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NetworkInterfaceAddress_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NetworkInterfaceAddress_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.class, cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.Builder.class); + } + + /** + * Protobuf enum {@code cmvr.quic_edge.v1.NetworkInterfaceAddress.AddressFamily} + */ + public enum AddressFamily + implements com.google.protobuf.ProtocolMessageEnum { + /** + * ADDRESS_FAMILY_UNSPECIFIED = 0; + */ + ADDRESS_FAMILY_UNSPECIFIED(0), + /** + * ADDRESS_FAMILY_IPV4 = 1; + */ + ADDRESS_FAMILY_IPV4(1), + /** + * ADDRESS_FAMILY_IPV6 = 2; + */ + ADDRESS_FAMILY_IPV6(2), + UNRECOGNIZED(-1), + ; + + /** + * ADDRESS_FAMILY_UNSPECIFIED = 0; + */ + public static final int ADDRESS_FAMILY_UNSPECIFIED_VALUE = 0; + /** + * ADDRESS_FAMILY_IPV4 = 1; + */ + public static final int ADDRESS_FAMILY_IPV4_VALUE = 1; + /** + * ADDRESS_FAMILY_IPV6 = 2; + */ + public static final int ADDRESS_FAMILY_IPV6_VALUE = 2; + + + public final int getNumber() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalArgumentException( + "Can't get the number of an unknown enum value."); + } + return value; + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static AddressFamily valueOf(int value) { + return forNumber(value); + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + */ + public static AddressFamily forNumber(int value) { + switch (value) { + case 0: return ADDRESS_FAMILY_UNSPECIFIED; + case 1: return ADDRESS_FAMILY_IPV4; + case 2: return ADDRESS_FAMILY_IPV6; + default: return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap + internalGetValueMap() { + return internalValueMap; + } + private static final com.google.protobuf.Internal.EnumLiteMap< + AddressFamily> internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public AddressFamily findValueByNumber(int number) { + return AddressFamily.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor + getValueDescriptor() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalStateException( + "Can't get the descriptor of an unrecognized enum value."); + } + return getDescriptor().getValues().get(ordinal()); + } + public final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptorForType() { + return getDescriptor(); + } + public static final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.getDescriptor().getEnumTypes().get(0); + } + + private static final AddressFamily[] VALUES = values(); + + public static AddressFamily valueOf( + com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException( + "EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private AddressFamily(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:cmvr.quic_edge.v1.NetworkInterfaceAddress.AddressFamily) + } + + public static final int INTERFACE_NAME_FIELD_NUMBER = 1; + @SuppressWarnings("serial") + private volatile java.lang.Object interfaceName_ = ""; + /** + * string interface_name = 1; + * @return The interfaceName. + */ + @java.lang.Override + public java.lang.String getInterfaceName() { + java.lang.Object ref = interfaceName_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + interfaceName_ = s; + return s; + } + } + /** + * string interface_name = 1; + * @return The bytes for interfaceName. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getInterfaceNameBytes() { + java.lang.Object ref = interfaceName_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + interfaceName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int IP_ADDRESS_FIELD_NUMBER = 2; + @SuppressWarnings("serial") + private volatile java.lang.Object ipAddress_ = ""; + /** + * string ip_address = 2; + * @return The ipAddress. + */ + @java.lang.Override + public java.lang.String getIpAddress() { + java.lang.Object ref = ipAddress_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + ipAddress_ = s; + return s; + } + } + /** + * string ip_address = 2; + * @return The bytes for ipAddress. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getIpAddressBytes() { + java.lang.Object ref = ipAddress_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + ipAddress_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int FAMILY_FIELD_NUMBER = 3; + private int family_ = 0; + /** + * .cmvr.quic_edge.v1.NetworkInterfaceAddress.AddressFamily family = 3; + * @return The enum numeric value on the wire for family. + */ + @java.lang.Override public int getFamilyValue() { + return family_; + } + /** + * .cmvr.quic_edge.v1.NetworkInterfaceAddress.AddressFamily family = 3; + * @return The family. + */ + @java.lang.Override public cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.AddressFamily getFamily() { + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.AddressFamily result = cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.AddressFamily.forNumber(family_); + return result == null ? cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.AddressFamily.UNRECOGNIZED : result; + } + + public static final int LOOPBACK_FIELD_NUMBER = 4; + private boolean loopback_ = false; + /** + * bool loopback = 4; + * @return The loopback. + */ + @java.lang.Override + public boolean getLoopback() { + return loopback_; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(interfaceName_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, interfaceName_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(ipAddress_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, ipAddress_); + } + if (family_ != cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.AddressFamily.ADDRESS_FAMILY_UNSPECIFIED.getNumber()) { + output.writeEnum(3, family_); + } + if (loopback_ != false) { + output.writeBool(4, loopback_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(interfaceName_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, interfaceName_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(ipAddress_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, ipAddress_); + } + if (family_ != cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.AddressFamily.ADDRESS_FAMILY_UNSPECIFIED.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(3, family_); + } + if (loopback_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(4, loopback_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress)) { + return super.equals(obj); + } + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress other = (cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress) obj; + + if (!getInterfaceName() + .equals(other.getInterfaceName())) return false; + if (!getIpAddress() + .equals(other.getIpAddress())) return false; + if (family_ != other.family_) return false; + if (getLoopback() + != other.getLoopback()) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + INTERFACE_NAME_FIELD_NUMBER; + hash = (53 * hash) + getInterfaceName().hashCode(); + hash = (37 * hash) + IP_ADDRESS_FIELD_NUMBER; + hash = (53 * hash) + getIpAddress().hashCode(); + hash = (37 * hash) + FAMILY_FIELD_NUMBER; + hash = (53 * hash) + family_; + hash = (37 * hash) + LOOPBACK_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getLoopback()); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code cmvr.quic_edge.v1.NetworkInterfaceAddress} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:cmvr.quic_edge.v1.NetworkInterfaceAddress) + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddressOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NetworkInterfaceAddress_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NetworkInterfaceAddress_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.class, cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.Builder.class); + } + + // Construct using cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + interfaceName_ = ""; + ipAddress_ = ""; + family_ = 0; + loopback_ = false; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NetworkInterfaceAddress_descriptor; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress getDefaultInstanceForType() { + return cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.getDefaultInstance(); + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress build() { + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress buildPartial() { + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress result = new cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.interfaceName_ = interfaceName_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.ipAddress_ = ipAddress_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.family_ = family_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.loopback_ = loopback_; + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress) { + return mergeFrom((cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress other) { + if (other == cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.getDefaultInstance()) return this; + if (!other.getInterfaceName().isEmpty()) { + interfaceName_ = other.interfaceName_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getIpAddress().isEmpty()) { + ipAddress_ = other.ipAddress_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (other.family_ != 0) { + setFamilyValue(other.getFamilyValue()); + } + if (other.getLoopback() != false) { + setLoopback(other.getLoopback()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + interfaceName_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: { + ipAddress_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 24: { + family_ = input.readEnum(); + bitField0_ |= 0x00000004; + break; + } // case 24 + case 32: { + loopback_ = input.readBool(); + bitField0_ |= 0x00000008; + break; + } // case 32 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private java.lang.Object interfaceName_ = ""; + /** + * string interface_name = 1; + * @return The interfaceName. + */ + public java.lang.String getInterfaceName() { + java.lang.Object ref = interfaceName_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + interfaceName_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string interface_name = 1; + * @return The bytes for interfaceName. + */ + public com.google.protobuf.ByteString + getInterfaceNameBytes() { + java.lang.Object ref = interfaceName_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + interfaceName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string interface_name = 1; + * @param value The interfaceName to set. + * @return This builder for chaining. + */ + public Builder setInterfaceName( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + interfaceName_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * string interface_name = 1; + * @return This builder for chaining. + */ + public Builder clearInterfaceName() { + interfaceName_ = getDefaultInstance().getInterfaceName(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * string interface_name = 1; + * @param value The bytes for interfaceName to set. + * @return This builder for chaining. + */ + public Builder setInterfaceNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + interfaceName_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object ipAddress_ = ""; + /** + * string ip_address = 2; + * @return The ipAddress. + */ + public java.lang.String getIpAddress() { + java.lang.Object ref = ipAddress_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + ipAddress_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string ip_address = 2; + * @return The bytes for ipAddress. + */ + public com.google.protobuf.ByteString + getIpAddressBytes() { + java.lang.Object ref = ipAddress_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + ipAddress_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string ip_address = 2; + * @param value The ipAddress to set. + * @return This builder for chaining. + */ + public Builder setIpAddress( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ipAddress_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * string ip_address = 2; + * @return This builder for chaining. + */ + public Builder clearIpAddress() { + ipAddress_ = getDefaultInstance().getIpAddress(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + /** + * string ip_address = 2; + * @param value The bytes for ipAddress to set. + * @return This builder for chaining. + */ + public Builder setIpAddressBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + ipAddress_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private int family_ = 0; + /** + * .cmvr.quic_edge.v1.NetworkInterfaceAddress.AddressFamily family = 3; + * @return The enum numeric value on the wire for family. + */ + @java.lang.Override public int getFamilyValue() { + return family_; + } + /** + * .cmvr.quic_edge.v1.NetworkInterfaceAddress.AddressFamily family = 3; + * @param value The enum numeric value on the wire for family to set. + * @return This builder for chaining. + */ + public Builder setFamilyValue(int value) { + family_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * .cmvr.quic_edge.v1.NetworkInterfaceAddress.AddressFamily family = 3; + * @return The family. + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.AddressFamily getFamily() { + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.AddressFamily result = cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.AddressFamily.forNumber(family_); + return result == null ? cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.AddressFamily.UNRECOGNIZED : result; + } + /** + * .cmvr.quic_edge.v1.NetworkInterfaceAddress.AddressFamily family = 3; + * @param value The family to set. + * @return This builder for chaining. + */ + public Builder setFamily(cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.AddressFamily value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000004; + family_ = value.getNumber(); + onChanged(); + return this; + } + /** + * .cmvr.quic_edge.v1.NetworkInterfaceAddress.AddressFamily family = 3; + * @return This builder for chaining. + */ + public Builder clearFamily() { + bitField0_ = (bitField0_ & ~0x00000004); + family_ = 0; + onChanged(); + return this; + } + + private boolean loopback_ ; + /** + * bool loopback = 4; + * @return The loopback. + */ + @java.lang.Override + public boolean getLoopback() { + return loopback_; + } + /** + * bool loopback = 4; + * @param value The loopback to set. + * @return This builder for chaining. + */ + public Builder setLoopback(boolean value) { + + loopback_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * bool loopback = 4; + * @return This builder for chaining. + */ + public Builder clearLoopback() { + bitField0_ = (bitField0_ & ~0x00000008); + loopback_ = false; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:cmvr.quic_edge.v1.NetworkInterfaceAddress) + } + + // @@protoc_insertion_point(class_scope:cmvr.quic_edge.v1.NetworkInterfaceAddress) + private static final cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress(); + } + + public static cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public NetworkInterfaceAddress parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface GrpcEndpointOrBuilder extends + // @@protoc_insertion_point(interface_extends:cmvr.quic_edge.v1.GrpcEndpoint) + com.google.protobuf.MessageOrBuilder { + + /** + * string host = 1; + * @return The host. + */ + java.lang.String getHost(); + /** + * string host = 1; + * @return The bytes for host. + */ + com.google.protobuf.ByteString + getHostBytes(); + + /** + * uint32 port = 2; + * @return The port. + */ + int getPort(); + + /** + * bool tls = 3; + * @return The tls. + */ + boolean getTls(); + } + /** + *
+   * The existing cmvr-es gRPC server remains the robot-control endpoint. The
+   * edge advertises its current reachable address through the QUIC control plane.
+   * 
+ * + * Protobuf type {@code cmvr.quic_edge.v1.GrpcEndpoint} + */ + public static final class GrpcEndpoint extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:cmvr.quic_edge.v1.GrpcEndpoint) + GrpcEndpointOrBuilder { + private static final long serialVersionUID = 0L; + // Use GrpcEndpoint.newBuilder() to construct. + private GrpcEndpoint(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private GrpcEndpoint() { + host_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new GrpcEndpoint(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_GrpcEndpoint_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_GrpcEndpoint_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.class, cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.Builder.class); + } + + public static final int HOST_FIELD_NUMBER = 1; + @SuppressWarnings("serial") + private volatile java.lang.Object host_ = ""; + /** + * string host = 1; + * @return The host. + */ + @java.lang.Override + public java.lang.String getHost() { + java.lang.Object ref = host_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + host_ = s; + return s; + } + } + /** + * string host = 1; + * @return The bytes for host. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getHostBytes() { + java.lang.Object ref = host_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + host_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int PORT_FIELD_NUMBER = 2; + private int port_ = 0; + /** + * uint32 port = 2; + * @return The port. + */ + @java.lang.Override + public int getPort() { + return port_; + } + + public static final int TLS_FIELD_NUMBER = 3; + private boolean tls_ = false; + /** + * bool tls = 3; + * @return The tls. + */ + @java.lang.Override + public boolean getTls() { + return tls_; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(host_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, host_); + } + if (port_ != 0) { + output.writeUInt32(2, port_); + } + if (tls_ != false) { + output.writeBool(3, tls_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(host_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, host_); + } + if (port_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(2, port_); + } + if (tls_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(3, tls_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint)) { + return super.equals(obj); + } + cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint other = (cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint) obj; + + if (!getHost() + .equals(other.getHost())) return false; + if (getPort() + != other.getPort()) return false; + if (getTls() + != other.getTls()) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + HOST_FIELD_NUMBER; + hash = (53 * hash) + getHost().hashCode(); + hash = (37 * hash) + PORT_FIELD_NUMBER; + hash = (53 * hash) + getPort(); + hash = (37 * hash) + TLS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getTls()); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * The existing cmvr-es gRPC server remains the robot-control endpoint. The
+     * edge advertises its current reachable address through the QUIC control plane.
+     * 
+ * + * Protobuf type {@code cmvr.quic_edge.v1.GrpcEndpoint} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:cmvr.quic_edge.v1.GrpcEndpoint) + cmvr.quic_edge.v1.QuicEdge.GrpcEndpointOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_GrpcEndpoint_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_GrpcEndpoint_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.class, cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.Builder.class); + } + + // Construct using cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + host_ = ""; + port_ = 0; + tls_ = false; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_GrpcEndpoint_descriptor; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint getDefaultInstanceForType() { + return cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.getDefaultInstance(); + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint build() { + cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint buildPartial() { + cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint result = new cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.host_ = host_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.port_ = port_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.tls_ = tls_; + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint) { + return mergeFrom((cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint other) { + if (other == cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.getDefaultInstance()) return this; + if (!other.getHost().isEmpty()) { + host_ = other.host_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (other.getPort() != 0) { + setPort(other.getPort()); + } + if (other.getTls() != false) { + setTls(other.getTls()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + host_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 16: { + port_ = input.readUInt32(); + bitField0_ |= 0x00000002; + break; + } // case 16 + case 24: { + tls_ = input.readBool(); + bitField0_ |= 0x00000004; + break; + } // case 24 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private java.lang.Object host_ = ""; + /** + * string host = 1; + * @return The host. + */ + public java.lang.String getHost() { + java.lang.Object ref = host_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + host_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string host = 1; + * @return The bytes for host. + */ + public com.google.protobuf.ByteString + getHostBytes() { + java.lang.Object ref = host_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + host_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string host = 1; + * @param value The host to set. + * @return This builder for chaining. + */ + public Builder setHost( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + host_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * string host = 1; + * @return This builder for chaining. + */ + public Builder clearHost() { + host_ = getDefaultInstance().getHost(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * string host = 1; + * @param value The bytes for host to set. + * @return This builder for chaining. + */ + public Builder setHostBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + host_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private int port_ ; + /** + * uint32 port = 2; + * @return The port. + */ + @java.lang.Override + public int getPort() { + return port_; + } + /** + * uint32 port = 2; + * @param value The port to set. + * @return This builder for chaining. + */ + public Builder setPort(int value) { + + port_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * uint32 port = 2; + * @return This builder for chaining. + */ + public Builder clearPort() { + bitField0_ = (bitField0_ & ~0x00000002); + port_ = 0; + onChanged(); + return this; + } + + private boolean tls_ ; + /** + * bool tls = 3; + * @return The tls. + */ + @java.lang.Override + public boolean getTls() { + return tls_; + } + /** + * bool tls = 3; + * @param value The tls to set. + * @return This builder for chaining. + */ + public Builder setTls(boolean value) { + + tls_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * bool tls = 3; + * @return This builder for chaining. + */ + public Builder clearTls() { + bitField0_ = (bitField0_ & ~0x00000004); + tls_ = false; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:cmvr.quic_edge.v1.GrpcEndpoint) + } + + // @@protoc_insertion_point(class_scope:cmvr.quic_edge.v1.GrpcEndpoint) + private static final cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint(); + } + + public static cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public GrpcEndpoint parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface ManagedDeviceStatusOrBuilder extends + // @@protoc_insertion_point(interface_extends:cmvr.quic_edge.v1.ManagedDeviceStatus) + com.google.protobuf.MessageOrBuilder { + + /** + * string device_id = 1; + * @return The deviceId. + */ + java.lang.String getDeviceId(); + /** + * string device_id = 1; + * @return The bytes for deviceId. + */ + com.google.protobuf.ByteString + getDeviceIdBytes(); + + /** + * .cmvr.quic_edge.v1.DeviceKind kind = 2; + * @return The enum numeric value on the wire for kind. + */ + int getKindValue(); + /** + * .cmvr.quic_edge.v1.DeviceKind kind = 2; + * @return The kind. + */ + cmvr.quic_edge.v1.QuicEdge.DeviceKind getKind(); + + /** + *
+     * Concrete implementation name when a device object exists; otherwise a
+     * category label. It is for display/diagnostics only. Consumers use kind,
+     * rather than this free-form string, for machine decisions.
+     * 
+ * + * string type_name = 3; + * @return The typeName. + */ + java.lang.String getTypeName(); + /** + *
+     * Concrete implementation name when a device object exists; otherwise a
+     * category label. It is for display/diagnostics only. Consumers use kind,
+     * rather than this free-form string, for machine decisions.
+     * 
+ * + * string type_name = 3; + * @return The bytes for typeName. + */ + com.google.protobuf.ByteString + getTypeNameBytes(); + + /** + * bool enabled = 4; + * @return The enabled. + */ + boolean getEnabled(); + + /** + * .cmvr.quic_edge.v1.ManagedDeviceState manager_state = 5; + * @return The enum numeric value on the wire for managerState. + */ + int getManagerStateValue(); + /** + * .cmvr.quic_edge.v1.ManagedDeviceState manager_state = 5; + * @return The managerState. + */ + cmvr.quic_edge.v1.QuicEdge.ManagedDeviceState getManagerState(); + + /** + * .cmvr.quic_edge.v1.DeviceHealthStatus health = 6; + * @return The enum numeric value on the wire for health. + */ + int getHealthValue(); + /** + * .cmvr.quic_edge.v1.DeviceHealthStatus health = 6; + * @return The health. + */ + cmvr.quic_edge.v1.QuicEdge.DeviceHealthStatus getHealth(); + + /** + *
+     * false means that no error is currently confirmed. It does not turn
+     * DEVICE_HEALTH_STATUS_UNSPECIFIED into a healthy observation.
+     * 
+ * + * bool has_error = 7; + * @return The hasError. + */ + boolean getHasError(); + + /** + * string error_message = 8; + * @return The errorMessage. + */ + java.lang.String getErrorMessage(); + /** + * string error_message = 8; + * @return The bytes for errorMessage. + */ + com.google.protobuf.ByteString + getErrorMessageBytes(); + + /** + *
+     * Time at which DeviceManager last changed the lifecycle/error record.
+     * DeviceManagerSnapshot.sampled_at_unix_ms is the freshness timestamp for
+     * the health observation carried by this heartbeat.
+     * 
+ * + * uint64 status_updated_at_unix_ms = 9; + * @return The statusUpdatedAtUnixMs. + */ + long getStatusUpdatedAtUnixMs(); + } + /** + * Protobuf type {@code cmvr.quic_edge.v1.ManagedDeviceStatus} + */ + public static final class ManagedDeviceStatus extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:cmvr.quic_edge.v1.ManagedDeviceStatus) + ManagedDeviceStatusOrBuilder { + private static final long serialVersionUID = 0L; + // Use ManagedDeviceStatus.newBuilder() to construct. + private ManagedDeviceStatus(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private ManagedDeviceStatus() { + deviceId_ = ""; + kind_ = 0; + typeName_ = ""; + managerState_ = 0; + health_ = 0; + errorMessage_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new ManagedDeviceStatus(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_ManagedDeviceStatus_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_ManagedDeviceStatus_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus.class, cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus.Builder.class); + } + + public static final int DEVICE_ID_FIELD_NUMBER = 1; + @SuppressWarnings("serial") + private volatile java.lang.Object deviceId_ = ""; + /** + * string device_id = 1; + * @return The deviceId. + */ + @java.lang.Override + public java.lang.String getDeviceId() { + java.lang.Object ref = deviceId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + deviceId_ = s; + return s; + } + } + /** + * string device_id = 1; + * @return The bytes for deviceId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getDeviceIdBytes() { + java.lang.Object ref = deviceId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + deviceId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int KIND_FIELD_NUMBER = 2; + private int kind_ = 0; + /** + * .cmvr.quic_edge.v1.DeviceKind kind = 2; + * @return The enum numeric value on the wire for kind. + */ + @java.lang.Override public int getKindValue() { + return kind_; + } + /** + * .cmvr.quic_edge.v1.DeviceKind kind = 2; + * @return The kind. + */ + @java.lang.Override public cmvr.quic_edge.v1.QuicEdge.DeviceKind getKind() { + cmvr.quic_edge.v1.QuicEdge.DeviceKind result = cmvr.quic_edge.v1.QuicEdge.DeviceKind.forNumber(kind_); + return result == null ? cmvr.quic_edge.v1.QuicEdge.DeviceKind.UNRECOGNIZED : result; + } + + public static final int TYPE_NAME_FIELD_NUMBER = 3; + @SuppressWarnings("serial") + private volatile java.lang.Object typeName_ = ""; + /** + *
+     * Concrete implementation name when a device object exists; otherwise a
+     * category label. It is for display/diagnostics only. Consumers use kind,
+     * rather than this free-form string, for machine decisions.
+     * 
+ * + * string type_name = 3; + * @return The typeName. + */ + @java.lang.Override + public java.lang.String getTypeName() { + java.lang.Object ref = typeName_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + typeName_ = s; + return s; + } + } + /** + *
+     * Concrete implementation name when a device object exists; otherwise a
+     * category label. It is for display/diagnostics only. Consumers use kind,
+     * rather than this free-form string, for machine decisions.
+     * 
+ * + * string type_name = 3; + * @return The bytes for typeName. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getTypeNameBytes() { + java.lang.Object ref = typeName_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + typeName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int ENABLED_FIELD_NUMBER = 4; + private boolean enabled_ = false; + /** + * bool enabled = 4; + * @return The enabled. + */ + @java.lang.Override + public boolean getEnabled() { + return enabled_; + } + + public static final int MANAGER_STATE_FIELD_NUMBER = 5; + private int managerState_ = 0; + /** + * .cmvr.quic_edge.v1.ManagedDeviceState manager_state = 5; + * @return The enum numeric value on the wire for managerState. + */ + @java.lang.Override public int getManagerStateValue() { + return managerState_; + } + /** + * .cmvr.quic_edge.v1.ManagedDeviceState manager_state = 5; + * @return The managerState. + */ + @java.lang.Override public cmvr.quic_edge.v1.QuicEdge.ManagedDeviceState getManagerState() { + cmvr.quic_edge.v1.QuicEdge.ManagedDeviceState result = cmvr.quic_edge.v1.QuicEdge.ManagedDeviceState.forNumber(managerState_); + return result == null ? cmvr.quic_edge.v1.QuicEdge.ManagedDeviceState.UNRECOGNIZED : result; + } + + public static final int HEALTH_FIELD_NUMBER = 6; + private int health_ = 0; + /** + * .cmvr.quic_edge.v1.DeviceHealthStatus health = 6; + * @return The enum numeric value on the wire for health. + */ + @java.lang.Override public int getHealthValue() { + return health_; + } + /** + * .cmvr.quic_edge.v1.DeviceHealthStatus health = 6; + * @return The health. + */ + @java.lang.Override public cmvr.quic_edge.v1.QuicEdge.DeviceHealthStatus getHealth() { + cmvr.quic_edge.v1.QuicEdge.DeviceHealthStatus result = cmvr.quic_edge.v1.QuicEdge.DeviceHealthStatus.forNumber(health_); + return result == null ? cmvr.quic_edge.v1.QuicEdge.DeviceHealthStatus.UNRECOGNIZED : result; + } + + public static final int HAS_ERROR_FIELD_NUMBER = 7; + private boolean hasError_ = false; + /** + *
+     * false means that no error is currently confirmed. It does not turn
+     * DEVICE_HEALTH_STATUS_UNSPECIFIED into a healthy observation.
+     * 
+ * + * bool has_error = 7; + * @return The hasError. + */ + @java.lang.Override + public boolean getHasError() { + return hasError_; + } + + public static final int ERROR_MESSAGE_FIELD_NUMBER = 8; + @SuppressWarnings("serial") + private volatile java.lang.Object errorMessage_ = ""; + /** + * string error_message = 8; + * @return The errorMessage. + */ + @java.lang.Override + public java.lang.String getErrorMessage() { + java.lang.Object ref = errorMessage_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + errorMessage_ = s; + return s; + } + } + /** + * string error_message = 8; + * @return The bytes for errorMessage. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getErrorMessageBytes() { + java.lang.Object ref = errorMessage_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + errorMessage_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int STATUS_UPDATED_AT_UNIX_MS_FIELD_NUMBER = 9; + private long statusUpdatedAtUnixMs_ = 0L; + /** + *
+     * Time at which DeviceManager last changed the lifecycle/error record.
+     * DeviceManagerSnapshot.sampled_at_unix_ms is the freshness timestamp for
+     * the health observation carried by this heartbeat.
+     * 
+ * + * uint64 status_updated_at_unix_ms = 9; + * @return The statusUpdatedAtUnixMs. + */ + @java.lang.Override + public long getStatusUpdatedAtUnixMs() { + return statusUpdatedAtUnixMs_; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deviceId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, deviceId_); + } + if (kind_ != cmvr.quic_edge.v1.QuicEdge.DeviceKind.DEVICE_KIND_UNSPECIFIED.getNumber()) { + output.writeEnum(2, kind_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(typeName_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, typeName_); + } + if (enabled_ != false) { + output.writeBool(4, enabled_); + } + if (managerState_ != cmvr.quic_edge.v1.QuicEdge.ManagedDeviceState.MANAGED_DEVICE_STATE_UNSPECIFIED.getNumber()) { + output.writeEnum(5, managerState_); + } + if (health_ != cmvr.quic_edge.v1.QuicEdge.DeviceHealthStatus.DEVICE_HEALTH_STATUS_UNSPECIFIED.getNumber()) { + output.writeEnum(6, health_); + } + if (hasError_ != false) { + output.writeBool(7, hasError_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(errorMessage_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 8, errorMessage_); + } + if (statusUpdatedAtUnixMs_ != 0L) { + output.writeUInt64(9, statusUpdatedAtUnixMs_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deviceId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, deviceId_); + } + if (kind_ != cmvr.quic_edge.v1.QuicEdge.DeviceKind.DEVICE_KIND_UNSPECIFIED.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(2, kind_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(typeName_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, typeName_); + } + if (enabled_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(4, enabled_); + } + if (managerState_ != cmvr.quic_edge.v1.QuicEdge.ManagedDeviceState.MANAGED_DEVICE_STATE_UNSPECIFIED.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(5, managerState_); + } + if (health_ != cmvr.quic_edge.v1.QuicEdge.DeviceHealthStatus.DEVICE_HEALTH_STATUS_UNSPECIFIED.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(6, health_); + } + if (hasError_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(7, hasError_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(errorMessage_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(8, errorMessage_); + } + if (statusUpdatedAtUnixMs_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeUInt64Size(9, statusUpdatedAtUnixMs_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus)) { + return super.equals(obj); + } + cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus other = (cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus) obj; + + if (!getDeviceId() + .equals(other.getDeviceId())) return false; + if (kind_ != other.kind_) return false; + if (!getTypeName() + .equals(other.getTypeName())) return false; + if (getEnabled() + != other.getEnabled()) return false; + if (managerState_ != other.managerState_) return false; + if (health_ != other.health_) return false; + if (getHasError() + != other.getHasError()) return false; + if (!getErrorMessage() + .equals(other.getErrorMessage())) return false; + if (getStatusUpdatedAtUnixMs() + != other.getStatusUpdatedAtUnixMs()) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + DEVICE_ID_FIELD_NUMBER; + hash = (53 * hash) + getDeviceId().hashCode(); + hash = (37 * hash) + KIND_FIELD_NUMBER; + hash = (53 * hash) + kind_; + hash = (37 * hash) + TYPE_NAME_FIELD_NUMBER; + hash = (53 * hash) + getTypeName().hashCode(); + hash = (37 * hash) + ENABLED_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getEnabled()); + hash = (37 * hash) + MANAGER_STATE_FIELD_NUMBER; + hash = (53 * hash) + managerState_; + hash = (37 * hash) + HEALTH_FIELD_NUMBER; + hash = (53 * hash) + health_; + hash = (37 * hash) + HAS_ERROR_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getHasError()); + hash = (37 * hash) + ERROR_MESSAGE_FIELD_NUMBER; + hash = (53 * hash) + getErrorMessage().hashCode(); + hash = (37 * hash) + STATUS_UPDATED_AT_UNIX_MS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getStatusUpdatedAtUnixMs()); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code cmvr.quic_edge.v1.ManagedDeviceStatus} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:cmvr.quic_edge.v1.ManagedDeviceStatus) + cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatusOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_ManagedDeviceStatus_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_ManagedDeviceStatus_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus.class, cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus.Builder.class); + } + + // Construct using cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + deviceId_ = ""; + kind_ = 0; + typeName_ = ""; + enabled_ = false; + managerState_ = 0; + health_ = 0; + hasError_ = false; + errorMessage_ = ""; + statusUpdatedAtUnixMs_ = 0L; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_ManagedDeviceStatus_descriptor; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus getDefaultInstanceForType() { + return cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus.getDefaultInstance(); + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus build() { + cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus buildPartial() { + cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus result = new cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.deviceId_ = deviceId_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.kind_ = kind_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.typeName_ = typeName_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.enabled_ = enabled_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.managerState_ = managerState_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.health_ = health_; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.hasError_ = hasError_; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.errorMessage_ = errorMessage_; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + result.statusUpdatedAtUnixMs_ = statusUpdatedAtUnixMs_; + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus) { + return mergeFrom((cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus other) { + if (other == cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus.getDefaultInstance()) return this; + if (!other.getDeviceId().isEmpty()) { + deviceId_ = other.deviceId_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (other.kind_ != 0) { + setKindValue(other.getKindValue()); + } + if (!other.getTypeName().isEmpty()) { + typeName_ = other.typeName_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (other.getEnabled() != false) { + setEnabled(other.getEnabled()); + } + if (other.managerState_ != 0) { + setManagerStateValue(other.getManagerStateValue()); + } + if (other.health_ != 0) { + setHealthValue(other.getHealthValue()); + } + if (other.getHasError() != false) { + setHasError(other.getHasError()); + } + if (!other.getErrorMessage().isEmpty()) { + errorMessage_ = other.errorMessage_; + bitField0_ |= 0x00000080; + onChanged(); + } + if (other.getStatusUpdatedAtUnixMs() != 0L) { + setStatusUpdatedAtUnixMs(other.getStatusUpdatedAtUnixMs()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + deviceId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 16: { + kind_ = input.readEnum(); + bitField0_ |= 0x00000002; + break; + } // case 16 + case 26: { + typeName_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 32: { + enabled_ = input.readBool(); + bitField0_ |= 0x00000008; + break; + } // case 32 + case 40: { + managerState_ = input.readEnum(); + bitField0_ |= 0x00000010; + break; + } // case 40 + case 48: { + health_ = input.readEnum(); + bitField0_ |= 0x00000020; + break; + } // case 48 + case 56: { + hasError_ = input.readBool(); + bitField0_ |= 0x00000040; + break; + } // case 56 + case 66: { + errorMessage_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000080; + break; + } // case 66 + case 72: { + statusUpdatedAtUnixMs_ = input.readUInt64(); + bitField0_ |= 0x00000100; + break; + } // case 72 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private java.lang.Object deviceId_ = ""; + /** + * string device_id = 1; + * @return The deviceId. + */ + public java.lang.String getDeviceId() { + java.lang.Object ref = deviceId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + deviceId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string device_id = 1; + * @return The bytes for deviceId. + */ + public com.google.protobuf.ByteString + getDeviceIdBytes() { + java.lang.Object ref = deviceId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + deviceId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string device_id = 1; + * @param value The deviceId to set. + * @return This builder for chaining. + */ + public Builder setDeviceId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + deviceId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * string device_id = 1; + * @return This builder for chaining. + */ + public Builder clearDeviceId() { + deviceId_ = getDefaultInstance().getDeviceId(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * string device_id = 1; + * @param value The bytes for deviceId to set. + * @return This builder for chaining. + */ + public Builder setDeviceIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + deviceId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private int kind_ = 0; + /** + * .cmvr.quic_edge.v1.DeviceKind kind = 2; + * @return The enum numeric value on the wire for kind. + */ + @java.lang.Override public int getKindValue() { + return kind_; + } + /** + * .cmvr.quic_edge.v1.DeviceKind kind = 2; + * @param value The enum numeric value on the wire for kind to set. + * @return This builder for chaining. + */ + public Builder setKindValue(int value) { + kind_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * .cmvr.quic_edge.v1.DeviceKind kind = 2; + * @return The kind. + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.DeviceKind getKind() { + cmvr.quic_edge.v1.QuicEdge.DeviceKind result = cmvr.quic_edge.v1.QuicEdge.DeviceKind.forNumber(kind_); + return result == null ? cmvr.quic_edge.v1.QuicEdge.DeviceKind.UNRECOGNIZED : result; + } + /** + * .cmvr.quic_edge.v1.DeviceKind kind = 2; + * @param value The kind to set. + * @return This builder for chaining. + */ + public Builder setKind(cmvr.quic_edge.v1.QuicEdge.DeviceKind value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000002; + kind_ = value.getNumber(); + onChanged(); + return this; + } + /** + * .cmvr.quic_edge.v1.DeviceKind kind = 2; + * @return This builder for chaining. + */ + public Builder clearKind() { + bitField0_ = (bitField0_ & ~0x00000002); + kind_ = 0; + onChanged(); + return this; + } + + private java.lang.Object typeName_ = ""; + /** + *
+       * Concrete implementation name when a device object exists; otherwise a
+       * category label. It is for display/diagnostics only. Consumers use kind,
+       * rather than this free-form string, for machine decisions.
+       * 
+ * + * string type_name = 3; + * @return The typeName. + */ + public java.lang.String getTypeName() { + java.lang.Object ref = typeName_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + typeName_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + *
+       * Concrete implementation name when a device object exists; otherwise a
+       * category label. It is for display/diagnostics only. Consumers use kind,
+       * rather than this free-form string, for machine decisions.
+       * 
+ * + * string type_name = 3; + * @return The bytes for typeName. + */ + public com.google.protobuf.ByteString + getTypeNameBytes() { + java.lang.Object ref = typeName_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + typeName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + *
+       * Concrete implementation name when a device object exists; otherwise a
+       * category label. It is for display/diagnostics only. Consumers use kind,
+       * rather than this free-form string, for machine decisions.
+       * 
+ * + * string type_name = 3; + * @param value The typeName to set. + * @return This builder for chaining. + */ + public Builder setTypeName( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + typeName_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + *
+       * Concrete implementation name when a device object exists; otherwise a
+       * category label. It is for display/diagnostics only. Consumers use kind,
+       * rather than this free-form string, for machine decisions.
+       * 
+ * + * string type_name = 3; + * @return This builder for chaining. + */ + public Builder clearTypeName() { + typeName_ = getDefaultInstance().getTypeName(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + /** + *
+       * Concrete implementation name when a device object exists; otherwise a
+       * category label. It is for display/diagnostics only. Consumers use kind,
+       * rather than this free-form string, for machine decisions.
+       * 
+ * + * string type_name = 3; + * @param value The bytes for typeName to set. + * @return This builder for chaining. + */ + public Builder setTypeNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + typeName_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private boolean enabled_ ; + /** + * bool enabled = 4; + * @return The enabled. + */ + @java.lang.Override + public boolean getEnabled() { + return enabled_; + } + /** + * bool enabled = 4; + * @param value The enabled to set. + * @return This builder for chaining. + */ + public Builder setEnabled(boolean value) { + + enabled_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * bool enabled = 4; + * @return This builder for chaining. + */ + public Builder clearEnabled() { + bitField0_ = (bitField0_ & ~0x00000008); + enabled_ = false; + onChanged(); + return this; + } + + private int managerState_ = 0; + /** + * .cmvr.quic_edge.v1.ManagedDeviceState manager_state = 5; + * @return The enum numeric value on the wire for managerState. + */ + @java.lang.Override public int getManagerStateValue() { + return managerState_; + } + /** + * .cmvr.quic_edge.v1.ManagedDeviceState manager_state = 5; + * @param value The enum numeric value on the wire for managerState to set. + * @return This builder for chaining. + */ + public Builder setManagerStateValue(int value) { + managerState_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + * .cmvr.quic_edge.v1.ManagedDeviceState manager_state = 5; + * @return The managerState. + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.ManagedDeviceState getManagerState() { + cmvr.quic_edge.v1.QuicEdge.ManagedDeviceState result = cmvr.quic_edge.v1.QuicEdge.ManagedDeviceState.forNumber(managerState_); + return result == null ? cmvr.quic_edge.v1.QuicEdge.ManagedDeviceState.UNRECOGNIZED : result; + } + /** + * .cmvr.quic_edge.v1.ManagedDeviceState manager_state = 5; + * @param value The managerState to set. + * @return This builder for chaining. + */ + public Builder setManagerState(cmvr.quic_edge.v1.QuicEdge.ManagedDeviceState value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000010; + managerState_ = value.getNumber(); + onChanged(); + return this; + } + /** + * .cmvr.quic_edge.v1.ManagedDeviceState manager_state = 5; + * @return This builder for chaining. + */ + public Builder clearManagerState() { + bitField0_ = (bitField0_ & ~0x00000010); + managerState_ = 0; + onChanged(); + return this; + } + + private int health_ = 0; + /** + * .cmvr.quic_edge.v1.DeviceHealthStatus health = 6; + * @return The enum numeric value on the wire for health. + */ + @java.lang.Override public int getHealthValue() { + return health_; + } + /** + * .cmvr.quic_edge.v1.DeviceHealthStatus health = 6; + * @param value The enum numeric value on the wire for health to set. + * @return This builder for chaining. + */ + public Builder setHealthValue(int value) { + health_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + * .cmvr.quic_edge.v1.DeviceHealthStatus health = 6; + * @return The health. + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.DeviceHealthStatus getHealth() { + cmvr.quic_edge.v1.QuicEdge.DeviceHealthStatus result = cmvr.quic_edge.v1.QuicEdge.DeviceHealthStatus.forNumber(health_); + return result == null ? cmvr.quic_edge.v1.QuicEdge.DeviceHealthStatus.UNRECOGNIZED : result; + } + /** + * .cmvr.quic_edge.v1.DeviceHealthStatus health = 6; + * @param value The health to set. + * @return This builder for chaining. + */ + public Builder setHealth(cmvr.quic_edge.v1.QuicEdge.DeviceHealthStatus value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000020; + health_ = value.getNumber(); + onChanged(); + return this; + } + /** + * .cmvr.quic_edge.v1.DeviceHealthStatus health = 6; + * @return This builder for chaining. + */ + public Builder clearHealth() { + bitField0_ = (bitField0_ & ~0x00000020); + health_ = 0; + onChanged(); + return this; + } + + private boolean hasError_ ; + /** + *
+       * false means that no error is currently confirmed. It does not turn
+       * DEVICE_HEALTH_STATUS_UNSPECIFIED into a healthy observation.
+       * 
+ * + * bool has_error = 7; + * @return The hasError. + */ + @java.lang.Override + public boolean getHasError() { + return hasError_; + } + /** + *
+       * false means that no error is currently confirmed. It does not turn
+       * DEVICE_HEALTH_STATUS_UNSPECIFIED into a healthy observation.
+       * 
+ * + * bool has_error = 7; + * @param value The hasError to set. + * @return This builder for chaining. + */ + public Builder setHasError(boolean value) { + + hasError_ = value; + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + /** + *
+       * false means that no error is currently confirmed. It does not turn
+       * DEVICE_HEALTH_STATUS_UNSPECIFIED into a healthy observation.
+       * 
+ * + * bool has_error = 7; + * @return This builder for chaining. + */ + public Builder clearHasError() { + bitField0_ = (bitField0_ & ~0x00000040); + hasError_ = false; + onChanged(); + return this; + } + + private java.lang.Object errorMessage_ = ""; + /** + * string error_message = 8; + * @return The errorMessage. + */ + public java.lang.String getErrorMessage() { + java.lang.Object ref = errorMessage_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + errorMessage_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string error_message = 8; + * @return The bytes for errorMessage. + */ + public com.google.protobuf.ByteString + getErrorMessageBytes() { + java.lang.Object ref = errorMessage_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + errorMessage_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string error_message = 8; + * @param value The errorMessage to set. + * @return This builder for chaining. + */ + public Builder setErrorMessage( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + errorMessage_ = value; + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + /** + * string error_message = 8; + * @return This builder for chaining. + */ + public Builder clearErrorMessage() { + errorMessage_ = getDefaultInstance().getErrorMessage(); + bitField0_ = (bitField0_ & ~0x00000080); + onChanged(); + return this; + } + /** + * string error_message = 8; + * @param value The bytes for errorMessage to set. + * @return This builder for chaining. + */ + public Builder setErrorMessageBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + errorMessage_ = value; + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + + private long statusUpdatedAtUnixMs_ ; + /** + *
+       * Time at which DeviceManager last changed the lifecycle/error record.
+       * DeviceManagerSnapshot.sampled_at_unix_ms is the freshness timestamp for
+       * the health observation carried by this heartbeat.
+       * 
+ * + * uint64 status_updated_at_unix_ms = 9; + * @return The statusUpdatedAtUnixMs. + */ + @java.lang.Override + public long getStatusUpdatedAtUnixMs() { + return statusUpdatedAtUnixMs_; + } + /** + *
+       * Time at which DeviceManager last changed the lifecycle/error record.
+       * DeviceManagerSnapshot.sampled_at_unix_ms is the freshness timestamp for
+       * the health observation carried by this heartbeat.
+       * 
+ * + * uint64 status_updated_at_unix_ms = 9; + * @param value The statusUpdatedAtUnixMs to set. + * @return This builder for chaining. + */ + public Builder setStatusUpdatedAtUnixMs(long value) { + + statusUpdatedAtUnixMs_ = value; + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + /** + *
+       * Time at which DeviceManager last changed the lifecycle/error record.
+       * DeviceManagerSnapshot.sampled_at_unix_ms is the freshness timestamp for
+       * the health observation carried by this heartbeat.
+       * 
+ * + * uint64 status_updated_at_unix_ms = 9; + * @return This builder for chaining. + */ + public Builder clearStatusUpdatedAtUnixMs() { + bitField0_ = (bitField0_ & ~0x00000100); + statusUpdatedAtUnixMs_ = 0L; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:cmvr.quic_edge.v1.ManagedDeviceStatus) + } + + // @@protoc_insertion_point(class_scope:cmvr.quic_edge.v1.ManagedDeviceStatus) + private static final cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus(); + } + + public static cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public ManagedDeviceStatus parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface DeviceManagerSnapshotOrBuilder extends + // @@protoc_insertion_point(interface_extends:cmvr.quic_edge.v1.DeviceManagerSnapshot) + com.google.protobuf.MessageOrBuilder { + + /** + * string manager_name = 1; + * @return The managerName. + */ + java.lang.String getManagerName(); + /** + * string manager_name = 1; + * @return The bytes for managerName. + */ + com.google.protobuf.ByteString + getManagerNameBytes(); + + /** + * string manager_version = 2; + * @return The managerVersion. + */ + java.lang.String getManagerVersion(); + /** + * string manager_version = 2; + * @return The bytes for managerVersion. + */ + com.google.protobuf.ByteString + getManagerVersionBytes(); + + /** + * string manager_description = 3; + * @return The managerDescription. + */ + java.lang.String getManagerDescription(); + /** + * string manager_description = 3; + * @return The bytes for managerDescription. + */ + com.google.protobuf.ByteString + getManagerDescriptionBytes(); + + /** + *
+     * Current cmvr-es senders include only enabled devices. The enabled field in
+     * each row and DISABLED enum value remain part of v1 for wire compatibility.
+     * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + java.util.List + getDevicesList(); + /** + *
+     * Current cmvr-es senders include only enabled devices. The enabled field in
+     * each row and DISABLED enum value remain part of v1 for wire compatibility.
+     * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus getDevices(int index); + /** + *
+     * Current cmvr-es senders include only enabled devices. The enabled field in
+     * each row and DISABLED enum value remain part of v1 for wire compatibility.
+     * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + int getDevicesCount(); + /** + *
+     * Current cmvr-es senders include only enabled devices. The enabled field in
+     * each row and DISABLED enum value remain part of v1 for wire compatibility.
+     * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + java.util.List + getDevicesOrBuilderList(); + /** + *
+     * Current cmvr-es senders include only enabled devices. The enabled field in
+     * each row and DISABLED enum value remain part of v1 for wire compatibility.
+     * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatusOrBuilder getDevicesOrBuilder( + int index); + + /** + * uint64 sampled_at_unix_ms = 5; + * @return The sampledAtUnixMs. + */ + long getSampledAtUnixMs(); + } + /** + * Protobuf type {@code cmvr.quic_edge.v1.DeviceManagerSnapshot} + */ + public static final class DeviceManagerSnapshot extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:cmvr.quic_edge.v1.DeviceManagerSnapshot) + DeviceManagerSnapshotOrBuilder { + private static final long serialVersionUID = 0L; + // Use DeviceManagerSnapshot.newBuilder() to construct. + private DeviceManagerSnapshot(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private DeviceManagerSnapshot() { + managerName_ = ""; + managerVersion_ = ""; + managerDescription_ = ""; + devices_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new DeviceManagerSnapshot(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_DeviceManagerSnapshot_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_DeviceManagerSnapshot_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot.class, cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot.Builder.class); + } + + public static final int MANAGER_NAME_FIELD_NUMBER = 1; + @SuppressWarnings("serial") + private volatile java.lang.Object managerName_ = ""; + /** + * string manager_name = 1; + * @return The managerName. + */ + @java.lang.Override + public java.lang.String getManagerName() { + java.lang.Object ref = managerName_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + managerName_ = s; + return s; + } + } + /** + * string manager_name = 1; + * @return The bytes for managerName. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getManagerNameBytes() { + java.lang.Object ref = managerName_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + managerName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int MANAGER_VERSION_FIELD_NUMBER = 2; + @SuppressWarnings("serial") + private volatile java.lang.Object managerVersion_ = ""; + /** + * string manager_version = 2; + * @return The managerVersion. + */ + @java.lang.Override + public java.lang.String getManagerVersion() { + java.lang.Object ref = managerVersion_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + managerVersion_ = s; + return s; + } + } + /** + * string manager_version = 2; + * @return The bytes for managerVersion. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getManagerVersionBytes() { + java.lang.Object ref = managerVersion_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + managerVersion_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int MANAGER_DESCRIPTION_FIELD_NUMBER = 3; + @SuppressWarnings("serial") + private volatile java.lang.Object managerDescription_ = ""; + /** + * string manager_description = 3; + * @return The managerDescription. + */ + @java.lang.Override + public java.lang.String getManagerDescription() { + java.lang.Object ref = managerDescription_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + managerDescription_ = s; + return s; + } + } + /** + * string manager_description = 3; + * @return The bytes for managerDescription. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getManagerDescriptionBytes() { + java.lang.Object ref = managerDescription_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + managerDescription_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int DEVICES_FIELD_NUMBER = 4; + @SuppressWarnings("serial") + private java.util.List devices_; + /** + *
+     * Current cmvr-es senders include only enabled devices. The enabled field in
+     * each row and DISABLED enum value remain part of v1 for wire compatibility.
+     * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + @java.lang.Override + public java.util.List getDevicesList() { + return devices_; + } + /** + *
+     * Current cmvr-es senders include only enabled devices. The enabled field in
+     * each row and DISABLED enum value remain part of v1 for wire compatibility.
+     * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + @java.lang.Override + public java.util.List + getDevicesOrBuilderList() { + return devices_; + } + /** + *
+     * Current cmvr-es senders include only enabled devices. The enabled field in
+     * each row and DISABLED enum value remain part of v1 for wire compatibility.
+     * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + @java.lang.Override + public int getDevicesCount() { + return devices_.size(); + } + /** + *
+     * Current cmvr-es senders include only enabled devices. The enabled field in
+     * each row and DISABLED enum value remain part of v1 for wire compatibility.
+     * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus getDevices(int index) { + return devices_.get(index); + } + /** + *
+     * Current cmvr-es senders include only enabled devices. The enabled field in
+     * each row and DISABLED enum value remain part of v1 for wire compatibility.
+     * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatusOrBuilder getDevicesOrBuilder( + int index) { + return devices_.get(index); + } + + public static final int SAMPLED_AT_UNIX_MS_FIELD_NUMBER = 5; + private long sampledAtUnixMs_ = 0L; + /** + * uint64 sampled_at_unix_ms = 5; + * @return The sampledAtUnixMs. + */ + @java.lang.Override + public long getSampledAtUnixMs() { + return sampledAtUnixMs_; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(managerName_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, managerName_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(managerVersion_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, managerVersion_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(managerDescription_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, managerDescription_); + } + for (int i = 0; i < devices_.size(); i++) { + output.writeMessage(4, devices_.get(i)); + } + if (sampledAtUnixMs_ != 0L) { + output.writeUInt64(5, sampledAtUnixMs_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(managerName_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, managerName_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(managerVersion_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, managerVersion_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(managerDescription_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, managerDescription_); + } + for (int i = 0; i < devices_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(4, devices_.get(i)); + } + if (sampledAtUnixMs_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeUInt64Size(5, sampledAtUnixMs_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot)) { + return super.equals(obj); + } + cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot other = (cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot) obj; + + if (!getManagerName() + .equals(other.getManagerName())) return false; + if (!getManagerVersion() + .equals(other.getManagerVersion())) return false; + if (!getManagerDescription() + .equals(other.getManagerDescription())) return false; + if (!getDevicesList() + .equals(other.getDevicesList())) return false; + if (getSampledAtUnixMs() + != other.getSampledAtUnixMs()) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + MANAGER_NAME_FIELD_NUMBER; + hash = (53 * hash) + getManagerName().hashCode(); + hash = (37 * hash) + MANAGER_VERSION_FIELD_NUMBER; + hash = (53 * hash) + getManagerVersion().hashCode(); + hash = (37 * hash) + MANAGER_DESCRIPTION_FIELD_NUMBER; + hash = (53 * hash) + getManagerDescription().hashCode(); + if (getDevicesCount() > 0) { + hash = (37 * hash) + DEVICES_FIELD_NUMBER; + hash = (53 * hash) + getDevicesList().hashCode(); + } + hash = (37 * hash) + SAMPLED_AT_UNIX_MS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getSampledAtUnixMs()); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code cmvr.quic_edge.v1.DeviceManagerSnapshot} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:cmvr.quic_edge.v1.DeviceManagerSnapshot) + cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshotOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_DeviceManagerSnapshot_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_DeviceManagerSnapshot_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot.class, cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot.Builder.class); + } + + // Construct using cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + managerName_ = ""; + managerVersion_ = ""; + managerDescription_ = ""; + if (devicesBuilder_ == null) { + devices_ = java.util.Collections.emptyList(); + } else { + devices_ = null; + devicesBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000008); + sampledAtUnixMs_ = 0L; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_DeviceManagerSnapshot_descriptor; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot getDefaultInstanceForType() { + return cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot.getDefaultInstance(); + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot build() { + cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot buildPartial() { + cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot result = new cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot result) { + if (devicesBuilder_ == null) { + if (((bitField0_ & 0x00000008) != 0)) { + devices_ = java.util.Collections.unmodifiableList(devices_); + bitField0_ = (bitField0_ & ~0x00000008); + } + result.devices_ = devices_; + } else { + result.devices_ = devicesBuilder_.build(); + } + } + + private void buildPartial0(cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.managerName_ = managerName_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.managerVersion_ = managerVersion_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.managerDescription_ = managerDescription_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.sampledAtUnixMs_ = sampledAtUnixMs_; + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot) { + return mergeFrom((cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot other) { + if (other == cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot.getDefaultInstance()) return this; + if (!other.getManagerName().isEmpty()) { + managerName_ = other.managerName_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getManagerVersion().isEmpty()) { + managerVersion_ = other.managerVersion_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getManagerDescription().isEmpty()) { + managerDescription_ = other.managerDescription_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (devicesBuilder_ == null) { + if (!other.devices_.isEmpty()) { + if (devices_.isEmpty()) { + devices_ = other.devices_; + bitField0_ = (bitField0_ & ~0x00000008); + } else { + ensureDevicesIsMutable(); + devices_.addAll(other.devices_); + } + onChanged(); + } + } else { + if (!other.devices_.isEmpty()) { + if (devicesBuilder_.isEmpty()) { + devicesBuilder_.dispose(); + devicesBuilder_ = null; + devices_ = other.devices_; + bitField0_ = (bitField0_ & ~0x00000008); + devicesBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getDevicesFieldBuilder() : null; + } else { + devicesBuilder_.addAllMessages(other.devices_); + } + } + } + if (other.getSampledAtUnixMs() != 0L) { + setSampledAtUnixMs(other.getSampledAtUnixMs()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + managerName_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: { + managerVersion_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: { + managerDescription_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 34: { + cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus m = + input.readMessage( + cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus.parser(), + extensionRegistry); + if (devicesBuilder_ == null) { + ensureDevicesIsMutable(); + devices_.add(m); + } else { + devicesBuilder_.addMessage(m); + } + break; + } // case 34 + case 40: { + sampledAtUnixMs_ = input.readUInt64(); + bitField0_ |= 0x00000010; + break; + } // case 40 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private java.lang.Object managerName_ = ""; + /** + * string manager_name = 1; + * @return The managerName. + */ + public java.lang.String getManagerName() { + java.lang.Object ref = managerName_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + managerName_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string manager_name = 1; + * @return The bytes for managerName. + */ + public com.google.protobuf.ByteString + getManagerNameBytes() { + java.lang.Object ref = managerName_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + managerName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string manager_name = 1; + * @param value The managerName to set. + * @return This builder for chaining. + */ + public Builder setManagerName( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + managerName_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * string manager_name = 1; + * @return This builder for chaining. + */ + public Builder clearManagerName() { + managerName_ = getDefaultInstance().getManagerName(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * string manager_name = 1; + * @param value The bytes for managerName to set. + * @return This builder for chaining. + */ + public Builder setManagerNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + managerName_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object managerVersion_ = ""; + /** + * string manager_version = 2; + * @return The managerVersion. + */ + public java.lang.String getManagerVersion() { + java.lang.Object ref = managerVersion_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + managerVersion_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string manager_version = 2; + * @return The bytes for managerVersion. + */ + public com.google.protobuf.ByteString + getManagerVersionBytes() { + java.lang.Object ref = managerVersion_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + managerVersion_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string manager_version = 2; + * @param value The managerVersion to set. + * @return This builder for chaining. + */ + public Builder setManagerVersion( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + managerVersion_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * string manager_version = 2; + * @return This builder for chaining. + */ + public Builder clearManagerVersion() { + managerVersion_ = getDefaultInstance().getManagerVersion(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + /** + * string manager_version = 2; + * @param value The bytes for managerVersion to set. + * @return This builder for chaining. + */ + public Builder setManagerVersionBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + managerVersion_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private java.lang.Object managerDescription_ = ""; + /** + * string manager_description = 3; + * @return The managerDescription. + */ + public java.lang.String getManagerDescription() { + java.lang.Object ref = managerDescription_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + managerDescription_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string manager_description = 3; + * @return The bytes for managerDescription. + */ + public com.google.protobuf.ByteString + getManagerDescriptionBytes() { + java.lang.Object ref = managerDescription_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + managerDescription_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string manager_description = 3; + * @param value The managerDescription to set. + * @return This builder for chaining. + */ + public Builder setManagerDescription( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + managerDescription_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * string manager_description = 3; + * @return This builder for chaining. + */ + public Builder clearManagerDescription() { + managerDescription_ = getDefaultInstance().getManagerDescription(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + /** + * string manager_description = 3; + * @param value The bytes for managerDescription to set. + * @return This builder for chaining. + */ + public Builder setManagerDescriptionBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + managerDescription_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private java.util.List devices_ = + java.util.Collections.emptyList(); + private void ensureDevicesIsMutable() { + if (!((bitField0_ & 0x00000008) != 0)) { + devices_ = new java.util.ArrayList(devices_); + bitField0_ |= 0x00000008; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus, cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus.Builder, cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatusOrBuilder> devicesBuilder_; + + /** + *
+       * Current cmvr-es senders include only enabled devices. The enabled field in
+       * each row and DISABLED enum value remain part of v1 for wire compatibility.
+       * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + public java.util.List getDevicesList() { + if (devicesBuilder_ == null) { + return java.util.Collections.unmodifiableList(devices_); + } else { + return devicesBuilder_.getMessageList(); + } + } + /** + *
+       * Current cmvr-es senders include only enabled devices. The enabled field in
+       * each row and DISABLED enum value remain part of v1 for wire compatibility.
+       * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + public int getDevicesCount() { + if (devicesBuilder_ == null) { + return devices_.size(); + } else { + return devicesBuilder_.getCount(); + } + } + /** + *
+       * Current cmvr-es senders include only enabled devices. The enabled field in
+       * each row and DISABLED enum value remain part of v1 for wire compatibility.
+       * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + public cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus getDevices(int index) { + if (devicesBuilder_ == null) { + return devices_.get(index); + } else { + return devicesBuilder_.getMessage(index); + } + } + /** + *
+       * Current cmvr-es senders include only enabled devices. The enabled field in
+       * each row and DISABLED enum value remain part of v1 for wire compatibility.
+       * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + public Builder setDevices( + int index, cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus value) { + if (devicesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDevicesIsMutable(); + devices_.set(index, value); + onChanged(); + } else { + devicesBuilder_.setMessage(index, value); + } + return this; + } + /** + *
+       * Current cmvr-es senders include only enabled devices. The enabled field in
+       * each row and DISABLED enum value remain part of v1 for wire compatibility.
+       * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + public Builder setDevices( + int index, cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus.Builder builderForValue) { + if (devicesBuilder_ == null) { + ensureDevicesIsMutable(); + devices_.set(index, builderForValue.build()); + onChanged(); + } else { + devicesBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + *
+       * Current cmvr-es senders include only enabled devices. The enabled field in
+       * each row and DISABLED enum value remain part of v1 for wire compatibility.
+       * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + public Builder addDevices(cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus value) { + if (devicesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDevicesIsMutable(); + devices_.add(value); + onChanged(); + } else { + devicesBuilder_.addMessage(value); + } + return this; + } + /** + *
+       * Current cmvr-es senders include only enabled devices. The enabled field in
+       * each row and DISABLED enum value remain part of v1 for wire compatibility.
+       * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + public Builder addDevices( + int index, cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus value) { + if (devicesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDevicesIsMutable(); + devices_.add(index, value); + onChanged(); + } else { + devicesBuilder_.addMessage(index, value); + } + return this; + } + /** + *
+       * Current cmvr-es senders include only enabled devices. The enabled field in
+       * each row and DISABLED enum value remain part of v1 for wire compatibility.
+       * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + public Builder addDevices( + cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus.Builder builderForValue) { + if (devicesBuilder_ == null) { + ensureDevicesIsMutable(); + devices_.add(builderForValue.build()); + onChanged(); + } else { + devicesBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + *
+       * Current cmvr-es senders include only enabled devices. The enabled field in
+       * each row and DISABLED enum value remain part of v1 for wire compatibility.
+       * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + public Builder addDevices( + int index, cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus.Builder builderForValue) { + if (devicesBuilder_ == null) { + ensureDevicesIsMutable(); + devices_.add(index, builderForValue.build()); + onChanged(); + } else { + devicesBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + *
+       * Current cmvr-es senders include only enabled devices. The enabled field in
+       * each row and DISABLED enum value remain part of v1 for wire compatibility.
+       * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + public Builder addAllDevices( + java.lang.Iterable values) { + if (devicesBuilder_ == null) { + ensureDevicesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, devices_); + onChanged(); + } else { + devicesBuilder_.addAllMessages(values); + } + return this; + } + /** + *
+       * Current cmvr-es senders include only enabled devices. The enabled field in
+       * each row and DISABLED enum value remain part of v1 for wire compatibility.
+       * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + public Builder clearDevices() { + if (devicesBuilder_ == null) { + devices_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + } else { + devicesBuilder_.clear(); + } + return this; + } + /** + *
+       * Current cmvr-es senders include only enabled devices. The enabled field in
+       * each row and DISABLED enum value remain part of v1 for wire compatibility.
+       * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + public Builder removeDevices(int index) { + if (devicesBuilder_ == null) { + ensureDevicesIsMutable(); + devices_.remove(index); + onChanged(); + } else { + devicesBuilder_.remove(index); + } + return this; + } + /** + *
+       * Current cmvr-es senders include only enabled devices. The enabled field in
+       * each row and DISABLED enum value remain part of v1 for wire compatibility.
+       * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + public cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus.Builder getDevicesBuilder( + int index) { + return getDevicesFieldBuilder().getBuilder(index); + } + /** + *
+       * Current cmvr-es senders include only enabled devices. The enabled field in
+       * each row and DISABLED enum value remain part of v1 for wire compatibility.
+       * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + public cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatusOrBuilder getDevicesOrBuilder( + int index) { + if (devicesBuilder_ == null) { + return devices_.get(index); } else { + return devicesBuilder_.getMessageOrBuilder(index); + } + } + /** + *
+       * Current cmvr-es senders include only enabled devices. The enabled field in
+       * each row and DISABLED enum value remain part of v1 for wire compatibility.
+       * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + public java.util.List + getDevicesOrBuilderList() { + if (devicesBuilder_ != null) { + return devicesBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(devices_); + } + } + /** + *
+       * Current cmvr-es senders include only enabled devices. The enabled field in
+       * each row and DISABLED enum value remain part of v1 for wire compatibility.
+       * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + public cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus.Builder addDevicesBuilder() { + return getDevicesFieldBuilder().addBuilder( + cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus.getDefaultInstance()); + } + /** + *
+       * Current cmvr-es senders include only enabled devices. The enabled field in
+       * each row and DISABLED enum value remain part of v1 for wire compatibility.
+       * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + public cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus.Builder addDevicesBuilder( + int index) { + return getDevicesFieldBuilder().addBuilder( + index, cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus.getDefaultInstance()); + } + /** + *
+       * Current cmvr-es senders include only enabled devices. The enabled field in
+       * each row and DISABLED enum value remain part of v1 for wire compatibility.
+       * 
+ * + * repeated .cmvr.quic_edge.v1.ManagedDeviceStatus devices = 4; + */ + public java.util.List + getDevicesBuilderList() { + return getDevicesFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus, cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus.Builder, cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatusOrBuilder> + getDevicesFieldBuilder() { + if (devicesBuilder_ == null) { + devicesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus, cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatus.Builder, cmvr.quic_edge.v1.QuicEdge.ManagedDeviceStatusOrBuilder>( + devices_, + ((bitField0_ & 0x00000008) != 0), + getParentForChildren(), + isClean()); + devices_ = null; + } + return devicesBuilder_; + } + + private long sampledAtUnixMs_ ; + /** + * uint64 sampled_at_unix_ms = 5; + * @return The sampledAtUnixMs. + */ + @java.lang.Override + public long getSampledAtUnixMs() { + return sampledAtUnixMs_; + } + /** + * uint64 sampled_at_unix_ms = 5; + * @param value The sampledAtUnixMs to set. + * @return This builder for chaining. + */ + public Builder setSampledAtUnixMs(long value) { + + sampledAtUnixMs_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + * uint64 sampled_at_unix_ms = 5; + * @return This builder for chaining. + */ + public Builder clearSampledAtUnixMs() { + bitField0_ = (bitField0_ & ~0x00000010); + sampledAtUnixMs_ = 0L; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:cmvr.quic_edge.v1.DeviceManagerSnapshot) + } + + // @@protoc_insertion_point(class_scope:cmvr.quic_edge.v1.DeviceManagerSnapshot) + private static final cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot(); + } + + public static cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public DeviceManagerSnapshot parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface NodeDescriptorOrBuilder extends + // @@protoc_insertion_point(interface_extends:cmvr.quic_edge.v1.NodeDescriptor) + com.google.protobuf.MessageOrBuilder { + + /** + * string node_id = 1; + * @return The nodeId. + */ + java.lang.String getNodeId(); + /** + * string node_id = 1; + * @return The bytes for nodeId. + */ + com.google.protobuf.ByteString + getNodeIdBytes(); + + /** + * string boot_id = 2; + * @return The bootId. + */ + java.lang.String getBootId(); + /** + * string boot_id = 2; + * @return The bytes for bootId. + */ + com.google.protobuf.ByteString + getBootIdBytes(); + + /** + * string software_version = 3; + * @return The softwareVersion. + */ + java.lang.String getSoftwareVersion(); + /** + * string software_version = 3; + * @return The bytes for softwareVersion. + */ + com.google.protobuf.ByteString + getSoftwareVersionBytes(); + + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + java.util.List + getLocalInterfacesList(); + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress getLocalInterfaces(int index); + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + int getLocalInterfacesCount(); + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + java.util.List + getLocalInterfacesOrBuilderList(); + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddressOrBuilder getLocalInterfacesOrBuilder( + int index); + + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 5; + * @return Whether the grpcEndpoint field is set. + */ + boolean hasGrpcEndpoint(); + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 5; + * @return The grpcEndpoint. + */ + cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint getGrpcEndpoint(); + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 5; + */ + cmvr.quic_edge.v1.QuicEdge.GrpcEndpointOrBuilder getGrpcEndpointOrBuilder(); + + /** + * string robot_id = 6; + * @return The robotId. + */ + java.lang.String getRobotId(); + /** + * string robot_id = 6; + * @return The bytes for robotId. + */ + com.google.protobuf.ByteString + getRobotIdBytes(); + } + /** + * Protobuf type {@code cmvr.quic_edge.v1.NodeDescriptor} + */ + public static final class NodeDescriptor extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:cmvr.quic_edge.v1.NodeDescriptor) + NodeDescriptorOrBuilder { + private static final long serialVersionUID = 0L; + // Use NodeDescriptor.newBuilder() to construct. + private NodeDescriptor(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private NodeDescriptor() { + nodeId_ = ""; + bootId_ = ""; + softwareVersion_ = ""; + localInterfaces_ = java.util.Collections.emptyList(); + robotId_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new NodeDescriptor(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NodeDescriptor_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NodeDescriptor_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.NodeDescriptor.class, cmvr.quic_edge.v1.QuicEdge.NodeDescriptor.Builder.class); + } + + private int bitField0_; + public static final int NODE_ID_FIELD_NUMBER = 1; + @SuppressWarnings("serial") + private volatile java.lang.Object nodeId_ = ""; + /** + * string node_id = 1; + * @return The nodeId. + */ + @java.lang.Override + public java.lang.String getNodeId() { + java.lang.Object ref = nodeId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + nodeId_ = s; + return s; + } + } + /** + * string node_id = 1; + * @return The bytes for nodeId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getNodeIdBytes() { + java.lang.Object ref = nodeId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + nodeId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int BOOT_ID_FIELD_NUMBER = 2; + @SuppressWarnings("serial") + private volatile java.lang.Object bootId_ = ""; + /** + * string boot_id = 2; + * @return The bootId. + */ + @java.lang.Override + public java.lang.String getBootId() { + java.lang.Object ref = bootId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + bootId_ = s; + return s; + } + } + /** + * string boot_id = 2; + * @return The bytes for bootId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getBootIdBytes() { + java.lang.Object ref = bootId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + bootId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SOFTWARE_VERSION_FIELD_NUMBER = 3; + @SuppressWarnings("serial") + private volatile java.lang.Object softwareVersion_ = ""; + /** + * string software_version = 3; + * @return The softwareVersion. + */ + @java.lang.Override + public java.lang.String getSoftwareVersion() { + java.lang.Object ref = softwareVersion_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + softwareVersion_ = s; + return s; + } + } + /** + * string software_version = 3; + * @return The bytes for softwareVersion. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getSoftwareVersionBytes() { + java.lang.Object ref = softwareVersion_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + softwareVersion_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int LOCAL_INTERFACES_FIELD_NUMBER = 4; + @SuppressWarnings("serial") + private java.util.List localInterfaces_; + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + @java.lang.Override + public java.util.List getLocalInterfacesList() { + return localInterfaces_; + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + @java.lang.Override + public java.util.List + getLocalInterfacesOrBuilderList() { + return localInterfaces_; + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + @java.lang.Override + public int getLocalInterfacesCount() { + return localInterfaces_.size(); + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress getLocalInterfaces(int index) { + return localInterfaces_.get(index); + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddressOrBuilder getLocalInterfacesOrBuilder( + int index) { + return localInterfaces_.get(index); + } + + public static final int GRPC_ENDPOINT_FIELD_NUMBER = 5; + private cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint grpcEndpoint_; + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 5; + * @return Whether the grpcEndpoint field is set. + */ + @java.lang.Override + public boolean hasGrpcEndpoint() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 5; + * @return The grpcEndpoint. + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint getGrpcEndpoint() { + return grpcEndpoint_ == null ? cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.getDefaultInstance() : grpcEndpoint_; + } + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 5; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.GrpcEndpointOrBuilder getGrpcEndpointOrBuilder() { + return grpcEndpoint_ == null ? cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.getDefaultInstance() : grpcEndpoint_; + } + + public static final int ROBOT_ID_FIELD_NUMBER = 6; + @SuppressWarnings("serial") + private volatile java.lang.Object robotId_ = ""; + /** + * string robot_id = 6; + * @return The robotId. + */ + @java.lang.Override + public java.lang.String getRobotId() { + java.lang.Object ref = robotId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + robotId_ = s; + return s; + } + } + /** + * string robot_id = 6; + * @return The bytes for robotId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getRobotIdBytes() { + java.lang.Object ref = robotId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + robotId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nodeId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, nodeId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(bootId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, bootId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(softwareVersion_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, softwareVersion_); + } + for (int i = 0; i < localInterfaces_.size(); i++) { + output.writeMessage(4, localInterfaces_.get(i)); + } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(5, getGrpcEndpoint()); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(robotId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 6, robotId_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nodeId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, nodeId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(bootId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, bootId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(softwareVersion_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, softwareVersion_); + } + for (int i = 0; i < localInterfaces_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(4, localInterfaces_.get(i)); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(5, getGrpcEndpoint()); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(robotId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, robotId_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof cmvr.quic_edge.v1.QuicEdge.NodeDescriptor)) { + return super.equals(obj); + } + cmvr.quic_edge.v1.QuicEdge.NodeDescriptor other = (cmvr.quic_edge.v1.QuicEdge.NodeDescriptor) obj; + + if (!getNodeId() + .equals(other.getNodeId())) return false; + if (!getBootId() + .equals(other.getBootId())) return false; + if (!getSoftwareVersion() + .equals(other.getSoftwareVersion())) return false; + if (!getLocalInterfacesList() + .equals(other.getLocalInterfacesList())) return false; + if (hasGrpcEndpoint() != other.hasGrpcEndpoint()) return false; + if (hasGrpcEndpoint()) { + if (!getGrpcEndpoint() + .equals(other.getGrpcEndpoint())) return false; + } + if (!getRobotId() + .equals(other.getRobotId())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + NODE_ID_FIELD_NUMBER; + hash = (53 * hash) + getNodeId().hashCode(); + hash = (37 * hash) + BOOT_ID_FIELD_NUMBER; + hash = (53 * hash) + getBootId().hashCode(); + hash = (37 * hash) + SOFTWARE_VERSION_FIELD_NUMBER; + hash = (53 * hash) + getSoftwareVersion().hashCode(); + if (getLocalInterfacesCount() > 0) { + hash = (37 * hash) + LOCAL_INTERFACES_FIELD_NUMBER; + hash = (53 * hash) + getLocalInterfacesList().hashCode(); + } + if (hasGrpcEndpoint()) { + hash = (37 * hash) + GRPC_ENDPOINT_FIELD_NUMBER; + hash = (53 * hash) + getGrpcEndpoint().hashCode(); + } + hash = (37 * hash) + ROBOT_ID_FIELD_NUMBER; + hash = (53 * hash) + getRobotId().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static cmvr.quic_edge.v1.QuicEdge.NodeDescriptor parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeDescriptor parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeDescriptor parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeDescriptor parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeDescriptor parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeDescriptor parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeDescriptor parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeDescriptor parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static cmvr.quic_edge.v1.QuicEdge.NodeDescriptor parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static cmvr.quic_edge.v1.QuicEdge.NodeDescriptor parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeDescriptor parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeDescriptor parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(cmvr.quic_edge.v1.QuicEdge.NodeDescriptor prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code cmvr.quic_edge.v1.NodeDescriptor} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:cmvr.quic_edge.v1.NodeDescriptor) + cmvr.quic_edge.v1.QuicEdge.NodeDescriptorOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NodeDescriptor_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NodeDescriptor_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.NodeDescriptor.class, cmvr.quic_edge.v1.QuicEdge.NodeDescriptor.Builder.class); + } + + // Construct using cmvr.quic_edge.v1.QuicEdge.NodeDescriptor.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getLocalInterfacesFieldBuilder(); + getGrpcEndpointFieldBuilder(); + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + nodeId_ = ""; + bootId_ = ""; + softwareVersion_ = ""; + if (localInterfacesBuilder_ == null) { + localInterfaces_ = java.util.Collections.emptyList(); + } else { + localInterfaces_ = null; + localInterfacesBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000008); + grpcEndpoint_ = null; + if (grpcEndpointBuilder_ != null) { + grpcEndpointBuilder_.dispose(); + grpcEndpointBuilder_ = null; + } + robotId_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NodeDescriptor_descriptor; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeDescriptor getDefaultInstanceForType() { + return cmvr.quic_edge.v1.QuicEdge.NodeDescriptor.getDefaultInstance(); + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeDescriptor build() { + cmvr.quic_edge.v1.QuicEdge.NodeDescriptor result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeDescriptor buildPartial() { + cmvr.quic_edge.v1.QuicEdge.NodeDescriptor result = new cmvr.quic_edge.v1.QuicEdge.NodeDescriptor(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(cmvr.quic_edge.v1.QuicEdge.NodeDescriptor result) { + if (localInterfacesBuilder_ == null) { + if (((bitField0_ & 0x00000008) != 0)) { + localInterfaces_ = java.util.Collections.unmodifiableList(localInterfaces_); + bitField0_ = (bitField0_ & ~0x00000008); + } + result.localInterfaces_ = localInterfaces_; + } else { + result.localInterfaces_ = localInterfacesBuilder_.build(); + } + } + + private void buildPartial0(cmvr.quic_edge.v1.QuicEdge.NodeDescriptor result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.nodeId_ = nodeId_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.bootId_ = bootId_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.softwareVersion_ = softwareVersion_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000010) != 0)) { + result.grpcEndpoint_ = grpcEndpointBuilder_ == null + ? grpcEndpoint_ + : grpcEndpointBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.robotId_ = robotId_; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof cmvr.quic_edge.v1.QuicEdge.NodeDescriptor) { + return mergeFrom((cmvr.quic_edge.v1.QuicEdge.NodeDescriptor)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(cmvr.quic_edge.v1.QuicEdge.NodeDescriptor other) { + if (other == cmvr.quic_edge.v1.QuicEdge.NodeDescriptor.getDefaultInstance()) return this; + if (!other.getNodeId().isEmpty()) { + nodeId_ = other.nodeId_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getBootId().isEmpty()) { + bootId_ = other.bootId_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getSoftwareVersion().isEmpty()) { + softwareVersion_ = other.softwareVersion_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (localInterfacesBuilder_ == null) { + if (!other.localInterfaces_.isEmpty()) { + if (localInterfaces_.isEmpty()) { + localInterfaces_ = other.localInterfaces_; + bitField0_ = (bitField0_ & ~0x00000008); + } else { + ensureLocalInterfacesIsMutable(); + localInterfaces_.addAll(other.localInterfaces_); + } + onChanged(); + } + } else { + if (!other.localInterfaces_.isEmpty()) { + if (localInterfacesBuilder_.isEmpty()) { + localInterfacesBuilder_.dispose(); + localInterfacesBuilder_ = null; + localInterfaces_ = other.localInterfaces_; + bitField0_ = (bitField0_ & ~0x00000008); + localInterfacesBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getLocalInterfacesFieldBuilder() : null; + } else { + localInterfacesBuilder_.addAllMessages(other.localInterfaces_); + } + } + } + if (other.hasGrpcEndpoint()) { + mergeGrpcEndpoint(other.getGrpcEndpoint()); + } + if (!other.getRobotId().isEmpty()) { + robotId_ = other.robotId_; + bitField0_ |= 0x00000020; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + nodeId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: { + bootId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: { + softwareVersion_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 34: { + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress m = + input.readMessage( + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.parser(), + extensionRegistry); + if (localInterfacesBuilder_ == null) { + ensureLocalInterfacesIsMutable(); + localInterfaces_.add(m); + } else { + localInterfacesBuilder_.addMessage(m); + } + break; + } // case 34 + case 42: { + input.readMessage( + getGrpcEndpointFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000010; + break; + } // case 42 + case 50: { + robotId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000020; + break; + } // case 50 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private java.lang.Object nodeId_ = ""; + /** + * string node_id = 1; + * @return The nodeId. + */ + public java.lang.String getNodeId() { + java.lang.Object ref = nodeId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + nodeId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string node_id = 1; + * @return The bytes for nodeId. + */ + public com.google.protobuf.ByteString + getNodeIdBytes() { + java.lang.Object ref = nodeId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + nodeId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string node_id = 1; + * @param value The nodeId to set. + * @return This builder for chaining. + */ + public Builder setNodeId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + nodeId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * string node_id = 1; + * @return This builder for chaining. + */ + public Builder clearNodeId() { + nodeId_ = getDefaultInstance().getNodeId(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * string node_id = 1; + * @param value The bytes for nodeId to set. + * @return This builder for chaining. + */ + public Builder setNodeIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + nodeId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object bootId_ = ""; + /** + * string boot_id = 2; + * @return The bootId. + */ + public java.lang.String getBootId() { + java.lang.Object ref = bootId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + bootId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string boot_id = 2; + * @return The bytes for bootId. + */ + public com.google.protobuf.ByteString + getBootIdBytes() { + java.lang.Object ref = bootId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + bootId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string boot_id = 2; + * @param value The bootId to set. + * @return This builder for chaining. + */ + public Builder setBootId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + bootId_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * string boot_id = 2; + * @return This builder for chaining. + */ + public Builder clearBootId() { + bootId_ = getDefaultInstance().getBootId(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + /** + * string boot_id = 2; + * @param value The bytes for bootId to set. + * @return This builder for chaining. + */ + public Builder setBootIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + bootId_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private java.lang.Object softwareVersion_ = ""; + /** + * string software_version = 3; + * @return The softwareVersion. + */ + public java.lang.String getSoftwareVersion() { + java.lang.Object ref = softwareVersion_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + softwareVersion_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string software_version = 3; + * @return The bytes for softwareVersion. + */ + public com.google.protobuf.ByteString + getSoftwareVersionBytes() { + java.lang.Object ref = softwareVersion_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + softwareVersion_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string software_version = 3; + * @param value The softwareVersion to set. + * @return This builder for chaining. + */ + public Builder setSoftwareVersion( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + softwareVersion_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * string software_version = 3; + * @return This builder for chaining. + */ + public Builder clearSoftwareVersion() { + softwareVersion_ = getDefaultInstance().getSoftwareVersion(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + /** + * string software_version = 3; + * @param value The bytes for softwareVersion to set. + * @return This builder for chaining. + */ + public Builder setSoftwareVersionBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + softwareVersion_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private java.util.List localInterfaces_ = + java.util.Collections.emptyList(); + private void ensureLocalInterfacesIsMutable() { + if (!((bitField0_ & 0x00000008) != 0)) { + localInterfaces_ = new java.util.ArrayList(localInterfaces_); + bitField0_ |= 0x00000008; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress, cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.Builder, cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddressOrBuilder> localInterfacesBuilder_; + + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + public java.util.List getLocalInterfacesList() { + if (localInterfacesBuilder_ == null) { + return java.util.Collections.unmodifiableList(localInterfaces_); + } else { + return localInterfacesBuilder_.getMessageList(); + } + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + public int getLocalInterfacesCount() { + if (localInterfacesBuilder_ == null) { + return localInterfaces_.size(); + } else { + return localInterfacesBuilder_.getCount(); + } + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + public cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress getLocalInterfaces(int index) { + if (localInterfacesBuilder_ == null) { + return localInterfaces_.get(index); + } else { + return localInterfacesBuilder_.getMessage(index); + } + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + public Builder setLocalInterfaces( + int index, cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress value) { + if (localInterfacesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLocalInterfacesIsMutable(); + localInterfaces_.set(index, value); + onChanged(); + } else { + localInterfacesBuilder_.setMessage(index, value); + } + return this; + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + public Builder setLocalInterfaces( + int index, cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.Builder builderForValue) { + if (localInterfacesBuilder_ == null) { + ensureLocalInterfacesIsMutable(); + localInterfaces_.set(index, builderForValue.build()); + onChanged(); + } else { + localInterfacesBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + public Builder addLocalInterfaces(cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress value) { + if (localInterfacesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLocalInterfacesIsMutable(); + localInterfaces_.add(value); + onChanged(); + } else { + localInterfacesBuilder_.addMessage(value); + } + return this; + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + public Builder addLocalInterfaces( + int index, cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress value) { + if (localInterfacesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLocalInterfacesIsMutable(); + localInterfaces_.add(index, value); + onChanged(); + } else { + localInterfacesBuilder_.addMessage(index, value); + } + return this; + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + public Builder addLocalInterfaces( + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.Builder builderForValue) { + if (localInterfacesBuilder_ == null) { + ensureLocalInterfacesIsMutable(); + localInterfaces_.add(builderForValue.build()); + onChanged(); + } else { + localInterfacesBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + public Builder addLocalInterfaces( + int index, cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.Builder builderForValue) { + if (localInterfacesBuilder_ == null) { + ensureLocalInterfacesIsMutable(); + localInterfaces_.add(index, builderForValue.build()); + onChanged(); + } else { + localInterfacesBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + public Builder addAllLocalInterfaces( + java.lang.Iterable values) { + if (localInterfacesBuilder_ == null) { + ensureLocalInterfacesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, localInterfaces_); + onChanged(); + } else { + localInterfacesBuilder_.addAllMessages(values); + } + return this; + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + public Builder clearLocalInterfaces() { + if (localInterfacesBuilder_ == null) { + localInterfaces_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + } else { + localInterfacesBuilder_.clear(); + } + return this; + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + public Builder removeLocalInterfaces(int index) { + if (localInterfacesBuilder_ == null) { + ensureLocalInterfacesIsMutable(); + localInterfaces_.remove(index); + onChanged(); + } else { + localInterfacesBuilder_.remove(index); + } + return this; + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + public cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.Builder getLocalInterfacesBuilder( + int index) { + return getLocalInterfacesFieldBuilder().getBuilder(index); + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + public cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddressOrBuilder getLocalInterfacesOrBuilder( + int index) { + if (localInterfacesBuilder_ == null) { + return localInterfaces_.get(index); } else { + return localInterfacesBuilder_.getMessageOrBuilder(index); + } + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + public java.util.List + getLocalInterfacesOrBuilderList() { + if (localInterfacesBuilder_ != null) { + return localInterfacesBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(localInterfaces_); + } + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + public cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.Builder addLocalInterfacesBuilder() { + return getLocalInterfacesFieldBuilder().addBuilder( + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.getDefaultInstance()); + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + public cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.Builder addLocalInterfacesBuilder( + int index) { + return getLocalInterfacesFieldBuilder().addBuilder( + index, cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.getDefaultInstance()); + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 4; + */ + public java.util.List + getLocalInterfacesBuilderList() { + return getLocalInterfacesFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress, cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.Builder, cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddressOrBuilder> + getLocalInterfacesFieldBuilder() { + if (localInterfacesBuilder_ == null) { + localInterfacesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress, cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.Builder, cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddressOrBuilder>( + localInterfaces_, + ((bitField0_ & 0x00000008) != 0), + getParentForChildren(), + isClean()); + localInterfaces_ = null; + } + return localInterfacesBuilder_; + } + + private cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint grpcEndpoint_; + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint, cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.Builder, cmvr.quic_edge.v1.QuicEdge.GrpcEndpointOrBuilder> grpcEndpointBuilder_; + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 5; + * @return Whether the grpcEndpoint field is set. + */ + public boolean hasGrpcEndpoint() { + return ((bitField0_ & 0x00000010) != 0); + } + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 5; + * @return The grpcEndpoint. + */ + public cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint getGrpcEndpoint() { + if (grpcEndpointBuilder_ == null) { + return grpcEndpoint_ == null ? cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.getDefaultInstance() : grpcEndpoint_; + } else { + return grpcEndpointBuilder_.getMessage(); + } + } + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 5; + */ + public Builder setGrpcEndpoint(cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint value) { + if (grpcEndpointBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + grpcEndpoint_ = value; + } else { + grpcEndpointBuilder_.setMessage(value); + } + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 5; + */ + public Builder setGrpcEndpoint( + cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.Builder builderForValue) { + if (grpcEndpointBuilder_ == null) { + grpcEndpoint_ = builderForValue.build(); + } else { + grpcEndpointBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 5; + */ + public Builder mergeGrpcEndpoint(cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint value) { + if (grpcEndpointBuilder_ == null) { + if (((bitField0_ & 0x00000010) != 0) && + grpcEndpoint_ != null && + grpcEndpoint_ != cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.getDefaultInstance()) { + getGrpcEndpointBuilder().mergeFrom(value); + } else { + grpcEndpoint_ = value; + } + } else { + grpcEndpointBuilder_.mergeFrom(value); + } + if (grpcEndpoint_ != null) { + bitField0_ |= 0x00000010; + onChanged(); + } + return this; + } + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 5; + */ + public Builder clearGrpcEndpoint() { + bitField0_ = (bitField0_ & ~0x00000010); + grpcEndpoint_ = null; + if (grpcEndpointBuilder_ != null) { + grpcEndpointBuilder_.dispose(); + grpcEndpointBuilder_ = null; + } + onChanged(); + return this; + } + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 5; + */ + public cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.Builder getGrpcEndpointBuilder() { + bitField0_ |= 0x00000010; + onChanged(); + return getGrpcEndpointFieldBuilder().getBuilder(); + } + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 5; + */ + public cmvr.quic_edge.v1.QuicEdge.GrpcEndpointOrBuilder getGrpcEndpointOrBuilder() { + if (grpcEndpointBuilder_ != null) { + return grpcEndpointBuilder_.getMessageOrBuilder(); + } else { + return grpcEndpoint_ == null ? + cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.getDefaultInstance() : grpcEndpoint_; + } + } + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 5; + */ + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint, cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.Builder, cmvr.quic_edge.v1.QuicEdge.GrpcEndpointOrBuilder> + getGrpcEndpointFieldBuilder() { + if (grpcEndpointBuilder_ == null) { + grpcEndpointBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint, cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.Builder, cmvr.quic_edge.v1.QuicEdge.GrpcEndpointOrBuilder>( + getGrpcEndpoint(), + getParentForChildren(), + isClean()); + grpcEndpoint_ = null; + } + return grpcEndpointBuilder_; + } + + private java.lang.Object robotId_ = ""; + /** + * string robot_id = 6; + * @return The robotId. + */ + public java.lang.String getRobotId() { + java.lang.Object ref = robotId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + robotId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string robot_id = 6; + * @return The bytes for robotId. + */ + public com.google.protobuf.ByteString + getRobotIdBytes() { + java.lang.Object ref = robotId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + robotId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string robot_id = 6; + * @param value The robotId to set. + * @return This builder for chaining. + */ + public Builder setRobotId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + robotId_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + * string robot_id = 6; + * @return This builder for chaining. + */ + public Builder clearRobotId() { + robotId_ = getDefaultInstance().getRobotId(); + bitField0_ = (bitField0_ & ~0x00000020); + onChanged(); + return this; + } + /** + * string robot_id = 6; + * @param value The bytes for robotId to set. + * @return This builder for chaining. + */ + public Builder setRobotIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + robotId_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:cmvr.quic_edge.v1.NodeDescriptor) + } + + // @@protoc_insertion_point(class_scope:cmvr.quic_edge.v1.NodeDescriptor) + private static final cmvr.quic_edge.v1.QuicEdge.NodeDescriptor DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new cmvr.quic_edge.v1.QuicEdge.NodeDescriptor(); + } + + public static cmvr.quic_edge.v1.QuicEdge.NodeDescriptor getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public NodeDescriptor parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeDescriptor getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface NodeRegisterRequestOrBuilder extends + // @@protoc_insertion_point(interface_extends:cmvr.quic_edge.v1.NodeRegisterRequest) + com.google.protobuf.MessageOrBuilder { + + /** + * .cmvr.quic_edge.v1.NodeDescriptor node = 1; + * @return Whether the node field is set. + */ + boolean hasNode(); + /** + * .cmvr.quic_edge.v1.NodeDescriptor node = 1; + * @return The node. + */ + cmvr.quic_edge.v1.QuicEdge.NodeDescriptor getNode(); + /** + * .cmvr.quic_edge.v1.NodeDescriptor node = 1; + */ + cmvr.quic_edge.v1.QuicEdge.NodeDescriptorOrBuilder getNodeOrBuilder(); + + /** + * uint64 sent_at_unix_ms = 2; + * @return The sentAtUnixMs. + */ + long getSentAtUnixMs(); + } + /** + *
+   * This must be the first application message sent after each QUIC connection
+   * is established. A reconnect always creates a new registration session.
+   * 
+ * + * Protobuf type {@code cmvr.quic_edge.v1.NodeRegisterRequest} + */ + public static final class NodeRegisterRequest extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:cmvr.quic_edge.v1.NodeRegisterRequest) + NodeRegisterRequestOrBuilder { + private static final long serialVersionUID = 0L; + // Use NodeRegisterRequest.newBuilder() to construct. + private NodeRegisterRequest(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private NodeRegisterRequest() { + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new NodeRegisterRequest(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NodeRegisterRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NodeRegisterRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest.class, cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest.Builder.class); + } + + private int bitField0_; + public static final int NODE_FIELD_NUMBER = 1; + private cmvr.quic_edge.v1.QuicEdge.NodeDescriptor node_; + /** + * .cmvr.quic_edge.v1.NodeDescriptor node = 1; + * @return Whether the node field is set. + */ + @java.lang.Override + public boolean hasNode() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * .cmvr.quic_edge.v1.NodeDescriptor node = 1; + * @return The node. + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeDescriptor getNode() { + return node_ == null ? cmvr.quic_edge.v1.QuicEdge.NodeDescriptor.getDefaultInstance() : node_; + } + /** + * .cmvr.quic_edge.v1.NodeDescriptor node = 1; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeDescriptorOrBuilder getNodeOrBuilder() { + return node_ == null ? cmvr.quic_edge.v1.QuicEdge.NodeDescriptor.getDefaultInstance() : node_; + } + + public static final int SENT_AT_UNIX_MS_FIELD_NUMBER = 2; + private long sentAtUnixMs_ = 0L; + /** + * uint64 sent_at_unix_ms = 2; + * @return The sentAtUnixMs. + */ + @java.lang.Override + public long getSentAtUnixMs() { + return sentAtUnixMs_; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(1, getNode()); + } + if (sentAtUnixMs_ != 0L) { + output.writeUInt64(2, sentAtUnixMs_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getNode()); + } + if (sentAtUnixMs_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeUInt64Size(2, sentAtUnixMs_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest)) { + return super.equals(obj); + } + cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest other = (cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest) obj; + + if (hasNode() != other.hasNode()) return false; + if (hasNode()) { + if (!getNode() + .equals(other.getNode())) return false; + } + if (getSentAtUnixMs() + != other.getSentAtUnixMs()) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (hasNode()) { + hash = (37 * hash) + NODE_FIELD_NUMBER; + hash = (53 * hash) + getNode().hashCode(); + } + hash = (37 * hash) + SENT_AT_UNIX_MS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getSentAtUnixMs()); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * This must be the first application message sent after each QUIC connection
+     * is established. A reconnect always creates a new registration session.
+     * 
+ * + * Protobuf type {@code cmvr.quic_edge.v1.NodeRegisterRequest} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:cmvr.quic_edge.v1.NodeRegisterRequest) + cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequestOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NodeRegisterRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NodeRegisterRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest.class, cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest.Builder.class); + } + + // Construct using cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getNodeFieldBuilder(); + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + node_ = null; + if (nodeBuilder_ != null) { + nodeBuilder_.dispose(); + nodeBuilder_ = null; + } + sentAtUnixMs_ = 0L; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NodeRegisterRequest_descriptor; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest getDefaultInstanceForType() { + return cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest.getDefaultInstance(); + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest build() { + cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest buildPartial() { + cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest result = new cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest result) { + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.node_ = nodeBuilder_ == null + ? node_ + : nodeBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.sentAtUnixMs_ = sentAtUnixMs_; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest) { + return mergeFrom((cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest other) { + if (other == cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest.getDefaultInstance()) return this; + if (other.hasNode()) { + mergeNode(other.getNode()); + } + if (other.getSentAtUnixMs() != 0L) { + setSentAtUnixMs(other.getSentAtUnixMs()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + input.readMessage( + getNodeFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 16: { + sentAtUnixMs_ = input.readUInt64(); + bitField0_ |= 0x00000002; + break; + } // case 16 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private cmvr.quic_edge.v1.QuicEdge.NodeDescriptor node_; + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.NodeDescriptor, cmvr.quic_edge.v1.QuicEdge.NodeDescriptor.Builder, cmvr.quic_edge.v1.QuicEdge.NodeDescriptorOrBuilder> nodeBuilder_; + /** + * .cmvr.quic_edge.v1.NodeDescriptor node = 1; + * @return Whether the node field is set. + */ + public boolean hasNode() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * .cmvr.quic_edge.v1.NodeDescriptor node = 1; + * @return The node. + */ + public cmvr.quic_edge.v1.QuicEdge.NodeDescriptor getNode() { + if (nodeBuilder_ == null) { + return node_ == null ? cmvr.quic_edge.v1.QuicEdge.NodeDescriptor.getDefaultInstance() : node_; + } else { + return nodeBuilder_.getMessage(); + } + } + /** + * .cmvr.quic_edge.v1.NodeDescriptor node = 1; + */ + public Builder setNode(cmvr.quic_edge.v1.QuicEdge.NodeDescriptor value) { + if (nodeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + node_ = value; + } else { + nodeBuilder_.setMessage(value); + } + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * .cmvr.quic_edge.v1.NodeDescriptor node = 1; + */ + public Builder setNode( + cmvr.quic_edge.v1.QuicEdge.NodeDescriptor.Builder builderForValue) { + if (nodeBuilder_ == null) { + node_ = builderForValue.build(); + } else { + nodeBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * .cmvr.quic_edge.v1.NodeDescriptor node = 1; + */ + public Builder mergeNode(cmvr.quic_edge.v1.QuicEdge.NodeDescriptor value) { + if (nodeBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0) && + node_ != null && + node_ != cmvr.quic_edge.v1.QuicEdge.NodeDescriptor.getDefaultInstance()) { + getNodeBuilder().mergeFrom(value); + } else { + node_ = value; + } + } else { + nodeBuilder_.mergeFrom(value); + } + if (node_ != null) { + bitField0_ |= 0x00000001; + onChanged(); + } + return this; + } + /** + * .cmvr.quic_edge.v1.NodeDescriptor node = 1; + */ + public Builder clearNode() { + bitField0_ = (bitField0_ & ~0x00000001); + node_ = null; + if (nodeBuilder_ != null) { + nodeBuilder_.dispose(); + nodeBuilder_ = null; + } + onChanged(); + return this; + } + /** + * .cmvr.quic_edge.v1.NodeDescriptor node = 1; + */ + public cmvr.quic_edge.v1.QuicEdge.NodeDescriptor.Builder getNodeBuilder() { + bitField0_ |= 0x00000001; + onChanged(); + return getNodeFieldBuilder().getBuilder(); + } + /** + * .cmvr.quic_edge.v1.NodeDescriptor node = 1; + */ + public cmvr.quic_edge.v1.QuicEdge.NodeDescriptorOrBuilder getNodeOrBuilder() { + if (nodeBuilder_ != null) { + return nodeBuilder_.getMessageOrBuilder(); + } else { + return node_ == null ? + cmvr.quic_edge.v1.QuicEdge.NodeDescriptor.getDefaultInstance() : node_; + } + } + /** + * .cmvr.quic_edge.v1.NodeDescriptor node = 1; + */ + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.NodeDescriptor, cmvr.quic_edge.v1.QuicEdge.NodeDescriptor.Builder, cmvr.quic_edge.v1.QuicEdge.NodeDescriptorOrBuilder> + getNodeFieldBuilder() { + if (nodeBuilder_ == null) { + nodeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.NodeDescriptor, cmvr.quic_edge.v1.QuicEdge.NodeDescriptor.Builder, cmvr.quic_edge.v1.QuicEdge.NodeDescriptorOrBuilder>( + getNode(), + getParentForChildren(), + isClean()); + node_ = null; + } + return nodeBuilder_; + } + + private long sentAtUnixMs_ ; + /** + * uint64 sent_at_unix_ms = 2; + * @return The sentAtUnixMs. + */ + @java.lang.Override + public long getSentAtUnixMs() { + return sentAtUnixMs_; + } + /** + * uint64 sent_at_unix_ms = 2; + * @param value The sentAtUnixMs to set. + * @return This builder for chaining. + */ + public Builder setSentAtUnixMs(long value) { + + sentAtUnixMs_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * uint64 sent_at_unix_ms = 2; + * @return This builder for chaining. + */ + public Builder clearSentAtUnixMs() { + bitField0_ = (bitField0_ & ~0x00000002); + sentAtUnixMs_ = 0L; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:cmvr.quic_edge.v1.NodeRegisterRequest) + } + + // @@protoc_insertion_point(class_scope:cmvr.quic_edge.v1.NodeRegisterRequest) + private static final cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest(); + } + + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public NodeRegisterRequest parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeRegisterRequest getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface NodeRegisterResponseOrBuilder extends + // @@protoc_insertion_point(interface_extends:cmvr.quic_edge.v1.NodeRegisterResponse) + com.google.protobuf.MessageOrBuilder { + + /** + * bool accepted = 1; + * @return The accepted. + */ + boolean getAccepted(); + + /** + * string session_id = 2; + * @return The sessionId. + */ + java.lang.String getSessionId(); + /** + * string session_id = 2; + * @return The bytes for sessionId. + */ + com.google.protobuf.ByteString + getSessionIdBytes(); + + /** + * string message = 3; + * @return The message. + */ + java.lang.String getMessage(); + /** + * string message = 3; + * @return The bytes for message. + */ + com.google.protobuf.ByteString + getMessageBytes(); + + /** + *
+     * Zero tells the edge to keep its locally configured interval.
+     * 
+ * + * uint32 heartbeat_interval_ms = 4; + * @return The heartbeatIntervalMs. + */ + int getHeartbeatIntervalMs(); + + /** + *
+     * Derived by the receiver from the authenticated QUIC peer address. It is
+     * not copied from a client-supplied local interface.
+     * 
+ * + * string observed_source_ip = 5; + * @return The observedSourceIp. + */ + java.lang.String getObservedSourceIp(); + /** + *
+     * Derived by the receiver from the authenticated QUIC peer address. It is
+     * not copied from a client-supplied local interface.
+     * 
+ * + * string observed_source_ip = 5; + * @return The bytes for observedSourceIp. + */ + com.google.protobuf.ByteString + getObservedSourceIpBytes(); + } + /** + * Protobuf type {@code cmvr.quic_edge.v1.NodeRegisterResponse} + */ + public static final class NodeRegisterResponse extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:cmvr.quic_edge.v1.NodeRegisterResponse) + NodeRegisterResponseOrBuilder { + private static final long serialVersionUID = 0L; + // Use NodeRegisterResponse.newBuilder() to construct. + private NodeRegisterResponse(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private NodeRegisterResponse() { + sessionId_ = ""; + message_ = ""; + observedSourceIp_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new NodeRegisterResponse(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NodeRegisterResponse_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NodeRegisterResponse_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse.class, cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse.Builder.class); + } + + public static final int ACCEPTED_FIELD_NUMBER = 1; + private boolean accepted_ = false; + /** + * bool accepted = 1; + * @return The accepted. + */ + @java.lang.Override + public boolean getAccepted() { + return accepted_; + } + + public static final int SESSION_ID_FIELD_NUMBER = 2; + @SuppressWarnings("serial") + private volatile java.lang.Object sessionId_ = ""; + /** + * string session_id = 2; + * @return The sessionId. + */ + @java.lang.Override + public java.lang.String getSessionId() { + java.lang.Object ref = sessionId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sessionId_ = s; + return s; + } + } + /** + * string session_id = 2; + * @return The bytes for sessionId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getSessionIdBytes() { + java.lang.Object ref = sessionId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + sessionId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int MESSAGE_FIELD_NUMBER = 3; + @SuppressWarnings("serial") + private volatile java.lang.Object message_ = ""; + /** + * string message = 3; + * @return The message. + */ + @java.lang.Override + public java.lang.String getMessage() { + java.lang.Object ref = message_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + message_ = s; + return s; + } + } + /** + * string message = 3; + * @return The bytes for message. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getMessageBytes() { + java.lang.Object ref = message_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + message_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int HEARTBEAT_INTERVAL_MS_FIELD_NUMBER = 4; + private int heartbeatIntervalMs_ = 0; + /** + *
+     * Zero tells the edge to keep its locally configured interval.
+     * 
+ * + * uint32 heartbeat_interval_ms = 4; + * @return The heartbeatIntervalMs. + */ + @java.lang.Override + public int getHeartbeatIntervalMs() { + return heartbeatIntervalMs_; + } + + public static final int OBSERVED_SOURCE_IP_FIELD_NUMBER = 5; + @SuppressWarnings("serial") + private volatile java.lang.Object observedSourceIp_ = ""; + /** + *
+     * Derived by the receiver from the authenticated QUIC peer address. It is
+     * not copied from a client-supplied local interface.
+     * 
+ * + * string observed_source_ip = 5; + * @return The observedSourceIp. + */ + @java.lang.Override + public java.lang.String getObservedSourceIp() { + java.lang.Object ref = observedSourceIp_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + observedSourceIp_ = s; + return s; + } + } + /** + *
+     * Derived by the receiver from the authenticated QUIC peer address. It is
+     * not copied from a client-supplied local interface.
+     * 
+ * + * string observed_source_ip = 5; + * @return The bytes for observedSourceIp. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getObservedSourceIpBytes() { + java.lang.Object ref = observedSourceIp_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + observedSourceIp_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (accepted_ != false) { + output.writeBool(1, accepted_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sessionId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, sessionId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(message_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, message_); + } + if (heartbeatIntervalMs_ != 0) { + output.writeUInt32(4, heartbeatIntervalMs_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(observedSourceIp_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 5, observedSourceIp_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (accepted_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(1, accepted_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sessionId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, sessionId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(message_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, message_); + } + if (heartbeatIntervalMs_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(4, heartbeatIntervalMs_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(observedSourceIp_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, observedSourceIp_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse)) { + return super.equals(obj); + } + cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse other = (cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse) obj; + + if (getAccepted() + != other.getAccepted()) return false; + if (!getSessionId() + .equals(other.getSessionId())) return false; + if (!getMessage() + .equals(other.getMessage())) return false; + if (getHeartbeatIntervalMs() + != other.getHeartbeatIntervalMs()) return false; + if (!getObservedSourceIp() + .equals(other.getObservedSourceIp())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + ACCEPTED_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getAccepted()); + hash = (37 * hash) + SESSION_ID_FIELD_NUMBER; + hash = (53 * hash) + getSessionId().hashCode(); + hash = (37 * hash) + MESSAGE_FIELD_NUMBER; + hash = (53 * hash) + getMessage().hashCode(); + hash = (37 * hash) + HEARTBEAT_INTERVAL_MS_FIELD_NUMBER; + hash = (53 * hash) + getHeartbeatIntervalMs(); + hash = (37 * hash) + OBSERVED_SOURCE_IP_FIELD_NUMBER; + hash = (53 * hash) + getObservedSourceIp().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code cmvr.quic_edge.v1.NodeRegisterResponse} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:cmvr.quic_edge.v1.NodeRegisterResponse) + cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponseOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NodeRegisterResponse_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NodeRegisterResponse_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse.class, cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse.Builder.class); + } + + // Construct using cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + accepted_ = false; + sessionId_ = ""; + message_ = ""; + heartbeatIntervalMs_ = 0; + observedSourceIp_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NodeRegisterResponse_descriptor; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse getDefaultInstanceForType() { + return cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse.getDefaultInstance(); + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse build() { + cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse buildPartial() { + cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse result = new cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.accepted_ = accepted_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.sessionId_ = sessionId_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.message_ = message_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.heartbeatIntervalMs_ = heartbeatIntervalMs_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.observedSourceIp_ = observedSourceIp_; + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse) { + return mergeFrom((cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse other) { + if (other == cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse.getDefaultInstance()) return this; + if (other.getAccepted() != false) { + setAccepted(other.getAccepted()); + } + if (!other.getSessionId().isEmpty()) { + sessionId_ = other.sessionId_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getMessage().isEmpty()) { + message_ = other.message_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (other.getHeartbeatIntervalMs() != 0) { + setHeartbeatIntervalMs(other.getHeartbeatIntervalMs()); + } + if (!other.getObservedSourceIp().isEmpty()) { + observedSourceIp_ = other.observedSourceIp_; + bitField0_ |= 0x00000010; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: { + accepted_ = input.readBool(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 18: { + sessionId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: { + message_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 32: { + heartbeatIntervalMs_ = input.readUInt32(); + bitField0_ |= 0x00000008; + break; + } // case 32 + case 42: { + observedSourceIp_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000010; + break; + } // case 42 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private boolean accepted_ ; + /** + * bool accepted = 1; + * @return The accepted. + */ + @java.lang.Override + public boolean getAccepted() { + return accepted_; + } + /** + * bool accepted = 1; + * @param value The accepted to set. + * @return This builder for chaining. + */ + public Builder setAccepted(boolean value) { + + accepted_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * bool accepted = 1; + * @return This builder for chaining. + */ + public Builder clearAccepted() { + bitField0_ = (bitField0_ & ~0x00000001); + accepted_ = false; + onChanged(); + return this; + } + + private java.lang.Object sessionId_ = ""; + /** + * string session_id = 2; + * @return The sessionId. + */ + public java.lang.String getSessionId() { + java.lang.Object ref = sessionId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sessionId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string session_id = 2; + * @return The bytes for sessionId. + */ + public com.google.protobuf.ByteString + getSessionIdBytes() { + java.lang.Object ref = sessionId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + sessionId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string session_id = 2; + * @param value The sessionId to set. + * @return This builder for chaining. + */ + public Builder setSessionId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + sessionId_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * string session_id = 2; + * @return This builder for chaining. + */ + public Builder clearSessionId() { + sessionId_ = getDefaultInstance().getSessionId(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + /** + * string session_id = 2; + * @param value The bytes for sessionId to set. + * @return This builder for chaining. + */ + public Builder setSessionIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + sessionId_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private java.lang.Object message_ = ""; + /** + * string message = 3; + * @return The message. + */ + public java.lang.String getMessage() { + java.lang.Object ref = message_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + message_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string message = 3; + * @return The bytes for message. + */ + public com.google.protobuf.ByteString + getMessageBytes() { + java.lang.Object ref = message_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + message_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string message = 3; + * @param value The message to set. + * @return This builder for chaining. + */ + public Builder setMessage( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + message_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * string message = 3; + * @return This builder for chaining. + */ + public Builder clearMessage() { + message_ = getDefaultInstance().getMessage(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + /** + * string message = 3; + * @param value The bytes for message to set. + * @return This builder for chaining. + */ + public Builder setMessageBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + message_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private int heartbeatIntervalMs_ ; + /** + *
+       * Zero tells the edge to keep its locally configured interval.
+       * 
+ * + * uint32 heartbeat_interval_ms = 4; + * @return The heartbeatIntervalMs. + */ + @java.lang.Override + public int getHeartbeatIntervalMs() { + return heartbeatIntervalMs_; + } + /** + *
+       * Zero tells the edge to keep its locally configured interval.
+       * 
+ * + * uint32 heartbeat_interval_ms = 4; + * @param value The heartbeatIntervalMs to set. + * @return This builder for chaining. + */ + public Builder setHeartbeatIntervalMs(int value) { + + heartbeatIntervalMs_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + *
+       * Zero tells the edge to keep its locally configured interval.
+       * 
+ * + * uint32 heartbeat_interval_ms = 4; + * @return This builder for chaining. + */ + public Builder clearHeartbeatIntervalMs() { + bitField0_ = (bitField0_ & ~0x00000008); + heartbeatIntervalMs_ = 0; + onChanged(); + return this; + } + + private java.lang.Object observedSourceIp_ = ""; + /** + *
+       * Derived by the receiver from the authenticated QUIC peer address. It is
+       * not copied from a client-supplied local interface.
+       * 
+ * + * string observed_source_ip = 5; + * @return The observedSourceIp. + */ + public java.lang.String getObservedSourceIp() { + java.lang.Object ref = observedSourceIp_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + observedSourceIp_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + *
+       * Derived by the receiver from the authenticated QUIC peer address. It is
+       * not copied from a client-supplied local interface.
+       * 
+ * + * string observed_source_ip = 5; + * @return The bytes for observedSourceIp. + */ + public com.google.protobuf.ByteString + getObservedSourceIpBytes() { + java.lang.Object ref = observedSourceIp_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + observedSourceIp_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + *
+       * Derived by the receiver from the authenticated QUIC peer address. It is
+       * not copied from a client-supplied local interface.
+       * 
+ * + * string observed_source_ip = 5; + * @param value The observedSourceIp to set. + * @return This builder for chaining. + */ + public Builder setObservedSourceIp( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + observedSourceIp_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + *
+       * Derived by the receiver from the authenticated QUIC peer address. It is
+       * not copied from a client-supplied local interface.
+       * 
+ * + * string observed_source_ip = 5; + * @return This builder for chaining. + */ + public Builder clearObservedSourceIp() { + observedSourceIp_ = getDefaultInstance().getObservedSourceIp(); + bitField0_ = (bitField0_ & ~0x00000010); + onChanged(); + return this; + } + /** + *
+       * Derived by the receiver from the authenticated QUIC peer address. It is
+       * not copied from a client-supplied local interface.
+       * 
+ * + * string observed_source_ip = 5; + * @param value The bytes for observedSourceIp to set. + * @return This builder for chaining. + */ + public Builder setObservedSourceIpBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + observedSourceIp_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:cmvr.quic_edge.v1.NodeRegisterResponse) + } + + // @@protoc_insertion_point(class_scope:cmvr.quic_edge.v1.NodeRegisterResponse) + private static final cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse(); + } + + public static cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public NodeRegisterResponse parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeRegisterResponse getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface NodeHeartbeatOrBuilder extends + // @@protoc_insertion_point(interface_extends:cmvr.quic_edge.v1.NodeHeartbeat) + com.google.protobuf.MessageOrBuilder { + + /** + * string node_id = 1; + * @return The nodeId. + */ + java.lang.String getNodeId(); + /** + * string node_id = 1; + * @return The bytes for nodeId. + */ + com.google.protobuf.ByteString + getNodeIdBytes(); + + /** + * string boot_id = 2; + * @return The bootId. + */ + java.lang.String getBootId(); + /** + * string boot_id = 2; + * @return The bytes for bootId. + */ + com.google.protobuf.ByteString + getBootIdBytes(); + + /** + * string session_id = 3; + * @return The sessionId. + */ + java.lang.String getSessionId(); + /** + * string session_id = 3; + * @return The bytes for sessionId. + */ + com.google.protobuf.ByteString + getSessionIdBytes(); + + /** + * uint64 sequence = 4; + * @return The sequence. + */ + long getSequence(); + + /** + * uint64 sent_at_unix_ms = 5; + * @return The sentAtUnixMs. + */ + long getSentAtUnixMs(); + + /** + * string software_version = 6; + * @return The softwareVersion. + */ + java.lang.String getSoftwareVersion(); + /** + * string software_version = 6; + * @return The bytes for softwareVersion. + */ + com.google.protobuf.ByteString + getSoftwareVersionBytes(); + + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + java.util.List + getLocalInterfacesList(); + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress getLocalInterfaces(int index); + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + int getLocalInterfacesCount(); + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + java.util.List + getLocalInterfacesOrBuilderList(); + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddressOrBuilder getLocalInterfacesOrBuilder( + int index); + + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 8; + * @return Whether the grpcEndpoint field is set. + */ + boolean hasGrpcEndpoint(); + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 8; + * @return The grpcEndpoint. + */ + cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint getGrpcEndpoint(); + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 8; + */ + cmvr.quic_edge.v1.QuicEdge.GrpcEndpointOrBuilder getGrpcEndpointOrBuilder(); + + /** + * .cmvr.quic_edge.v1.DeviceManagerSnapshot device_manager = 9; + * @return Whether the deviceManager field is set. + */ + boolean hasDeviceManager(); + /** + * .cmvr.quic_edge.v1.DeviceManagerSnapshot device_manager = 9; + * @return The deviceManager. + */ + cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot getDeviceManager(); + /** + * .cmvr.quic_edge.v1.DeviceManagerSnapshot device_manager = 9; + */ + cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshotOrBuilder getDeviceManagerOrBuilder(); + + /** + * string robot_id = 10; + * @return The robotId. + */ + java.lang.String getRobotId(); + /** + * string robot_id = 10; + * @return The bytes for robotId. + */ + com.google.protobuf.ByteString + getRobotIdBytes(); + } + /** + *
+   * A heartbeat carries a fresh network snapshot so address changes are reported
+   * without opening a second protocol or connection.
+   * 
+ * + * Protobuf type {@code cmvr.quic_edge.v1.NodeHeartbeat} + */ + public static final class NodeHeartbeat extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:cmvr.quic_edge.v1.NodeHeartbeat) + NodeHeartbeatOrBuilder { + private static final long serialVersionUID = 0L; + // Use NodeHeartbeat.newBuilder() to construct. + private NodeHeartbeat(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private NodeHeartbeat() { + nodeId_ = ""; + bootId_ = ""; + sessionId_ = ""; + softwareVersion_ = ""; + localInterfaces_ = java.util.Collections.emptyList(); + robotId_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new NodeHeartbeat(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NodeHeartbeat_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NodeHeartbeat_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat.class, cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat.Builder.class); + } + + private int bitField0_; + public static final int NODE_ID_FIELD_NUMBER = 1; + @SuppressWarnings("serial") + private volatile java.lang.Object nodeId_ = ""; + /** + * string node_id = 1; + * @return The nodeId. + */ + @java.lang.Override + public java.lang.String getNodeId() { + java.lang.Object ref = nodeId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + nodeId_ = s; + return s; + } + } + /** + * string node_id = 1; + * @return The bytes for nodeId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getNodeIdBytes() { + java.lang.Object ref = nodeId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + nodeId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int BOOT_ID_FIELD_NUMBER = 2; + @SuppressWarnings("serial") + private volatile java.lang.Object bootId_ = ""; + /** + * string boot_id = 2; + * @return The bootId. + */ + @java.lang.Override + public java.lang.String getBootId() { + java.lang.Object ref = bootId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + bootId_ = s; + return s; + } + } + /** + * string boot_id = 2; + * @return The bytes for bootId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getBootIdBytes() { + java.lang.Object ref = bootId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + bootId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SESSION_ID_FIELD_NUMBER = 3; + @SuppressWarnings("serial") + private volatile java.lang.Object sessionId_ = ""; + /** + * string session_id = 3; + * @return The sessionId. + */ + @java.lang.Override + public java.lang.String getSessionId() { + java.lang.Object ref = sessionId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sessionId_ = s; + return s; + } + } + /** + * string session_id = 3; + * @return The bytes for sessionId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getSessionIdBytes() { + java.lang.Object ref = sessionId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + sessionId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SEQUENCE_FIELD_NUMBER = 4; + private long sequence_ = 0L; + /** + * uint64 sequence = 4; + * @return The sequence. + */ + @java.lang.Override + public long getSequence() { + return sequence_; + } + + public static final int SENT_AT_UNIX_MS_FIELD_NUMBER = 5; + private long sentAtUnixMs_ = 0L; + /** + * uint64 sent_at_unix_ms = 5; + * @return The sentAtUnixMs. + */ + @java.lang.Override + public long getSentAtUnixMs() { + return sentAtUnixMs_; + } + + public static final int SOFTWARE_VERSION_FIELD_NUMBER = 6; + @SuppressWarnings("serial") + private volatile java.lang.Object softwareVersion_ = ""; + /** + * string software_version = 6; + * @return The softwareVersion. + */ + @java.lang.Override + public java.lang.String getSoftwareVersion() { + java.lang.Object ref = softwareVersion_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + softwareVersion_ = s; + return s; + } + } + /** + * string software_version = 6; + * @return The bytes for softwareVersion. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getSoftwareVersionBytes() { + java.lang.Object ref = softwareVersion_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + softwareVersion_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int LOCAL_INTERFACES_FIELD_NUMBER = 7; + @SuppressWarnings("serial") + private java.util.List localInterfaces_; + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + @java.lang.Override + public java.util.List getLocalInterfacesList() { + return localInterfaces_; + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + @java.lang.Override + public java.util.List + getLocalInterfacesOrBuilderList() { + return localInterfaces_; + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + @java.lang.Override + public int getLocalInterfacesCount() { + return localInterfaces_.size(); + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress getLocalInterfaces(int index) { + return localInterfaces_.get(index); + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddressOrBuilder getLocalInterfacesOrBuilder( + int index) { + return localInterfaces_.get(index); + } + + public static final int GRPC_ENDPOINT_FIELD_NUMBER = 8; + private cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint grpcEndpoint_; + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 8; + * @return Whether the grpcEndpoint field is set. + */ + @java.lang.Override + public boolean hasGrpcEndpoint() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 8; + * @return The grpcEndpoint. + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint getGrpcEndpoint() { + return grpcEndpoint_ == null ? cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.getDefaultInstance() : grpcEndpoint_; + } + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 8; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.GrpcEndpointOrBuilder getGrpcEndpointOrBuilder() { + return grpcEndpoint_ == null ? cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.getDefaultInstance() : grpcEndpoint_; + } + + public static final int DEVICE_MANAGER_FIELD_NUMBER = 9; + private cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot deviceManager_; + /** + * .cmvr.quic_edge.v1.DeviceManagerSnapshot device_manager = 9; + * @return Whether the deviceManager field is set. + */ + @java.lang.Override + public boolean hasDeviceManager() { + return ((bitField0_ & 0x00000002) != 0); + } + /** + * .cmvr.quic_edge.v1.DeviceManagerSnapshot device_manager = 9; + * @return The deviceManager. + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot getDeviceManager() { + return deviceManager_ == null ? cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot.getDefaultInstance() : deviceManager_; + } + /** + * .cmvr.quic_edge.v1.DeviceManagerSnapshot device_manager = 9; + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshotOrBuilder getDeviceManagerOrBuilder() { + return deviceManager_ == null ? cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot.getDefaultInstance() : deviceManager_; + } + + public static final int ROBOT_ID_FIELD_NUMBER = 10; + @SuppressWarnings("serial") + private volatile java.lang.Object robotId_ = ""; + /** + * string robot_id = 10; + * @return The robotId. + */ + @java.lang.Override + public java.lang.String getRobotId() { + java.lang.Object ref = robotId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + robotId_ = s; + return s; + } + } + /** + * string robot_id = 10; + * @return The bytes for robotId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getRobotIdBytes() { + java.lang.Object ref = robotId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + robotId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nodeId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, nodeId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(bootId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, bootId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sessionId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, sessionId_); + } + if (sequence_ != 0L) { + output.writeUInt64(4, sequence_); + } + if (sentAtUnixMs_ != 0L) { + output.writeUInt64(5, sentAtUnixMs_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(softwareVersion_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 6, softwareVersion_); + } + for (int i = 0; i < localInterfaces_.size(); i++) { + output.writeMessage(7, localInterfaces_.get(i)); + } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(8, getGrpcEndpoint()); + } + if (((bitField0_ & 0x00000002) != 0)) { + output.writeMessage(9, getDeviceManager()); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(robotId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 10, robotId_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nodeId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, nodeId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(bootId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, bootId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sessionId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, sessionId_); + } + if (sequence_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeUInt64Size(4, sequence_); + } + if (sentAtUnixMs_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeUInt64Size(5, sentAtUnixMs_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(softwareVersion_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, softwareVersion_); + } + for (int i = 0; i < localInterfaces_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(7, localInterfaces_.get(i)); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(8, getGrpcEndpoint()); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(9, getDeviceManager()); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(robotId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(10, robotId_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat)) { + return super.equals(obj); + } + cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat other = (cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat) obj; + + if (!getNodeId() + .equals(other.getNodeId())) return false; + if (!getBootId() + .equals(other.getBootId())) return false; + if (!getSessionId() + .equals(other.getSessionId())) return false; + if (getSequence() + != other.getSequence()) return false; + if (getSentAtUnixMs() + != other.getSentAtUnixMs()) return false; + if (!getSoftwareVersion() + .equals(other.getSoftwareVersion())) return false; + if (!getLocalInterfacesList() + .equals(other.getLocalInterfacesList())) return false; + if (hasGrpcEndpoint() != other.hasGrpcEndpoint()) return false; + if (hasGrpcEndpoint()) { + if (!getGrpcEndpoint() + .equals(other.getGrpcEndpoint())) return false; + } + if (hasDeviceManager() != other.hasDeviceManager()) return false; + if (hasDeviceManager()) { + if (!getDeviceManager() + .equals(other.getDeviceManager())) return false; + } + if (!getRobotId() + .equals(other.getRobotId())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + NODE_ID_FIELD_NUMBER; + hash = (53 * hash) + getNodeId().hashCode(); + hash = (37 * hash) + BOOT_ID_FIELD_NUMBER; + hash = (53 * hash) + getBootId().hashCode(); + hash = (37 * hash) + SESSION_ID_FIELD_NUMBER; + hash = (53 * hash) + getSessionId().hashCode(); + hash = (37 * hash) + SEQUENCE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getSequence()); + hash = (37 * hash) + SENT_AT_UNIX_MS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getSentAtUnixMs()); + hash = (37 * hash) + SOFTWARE_VERSION_FIELD_NUMBER; + hash = (53 * hash) + getSoftwareVersion().hashCode(); + if (getLocalInterfacesCount() > 0) { + hash = (37 * hash) + LOCAL_INTERFACES_FIELD_NUMBER; + hash = (53 * hash) + getLocalInterfacesList().hashCode(); + } + if (hasGrpcEndpoint()) { + hash = (37 * hash) + GRPC_ENDPOINT_FIELD_NUMBER; + hash = (53 * hash) + getGrpcEndpoint().hashCode(); + } + if (hasDeviceManager()) { + hash = (37 * hash) + DEVICE_MANAGER_FIELD_NUMBER; + hash = (53 * hash) + getDeviceManager().hashCode(); + } + hash = (37 * hash) + ROBOT_ID_FIELD_NUMBER; + hash = (53 * hash) + getRobotId().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * A heartbeat carries a fresh network snapshot so address changes are reported
+     * without opening a second protocol or connection.
+     * 
+ * + * Protobuf type {@code cmvr.quic_edge.v1.NodeHeartbeat} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:cmvr.quic_edge.v1.NodeHeartbeat) + cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NodeHeartbeat_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NodeHeartbeat_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat.class, cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat.Builder.class); + } + + // Construct using cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getLocalInterfacesFieldBuilder(); + getGrpcEndpointFieldBuilder(); + getDeviceManagerFieldBuilder(); + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + nodeId_ = ""; + bootId_ = ""; + sessionId_ = ""; + sequence_ = 0L; + sentAtUnixMs_ = 0L; + softwareVersion_ = ""; + if (localInterfacesBuilder_ == null) { + localInterfaces_ = java.util.Collections.emptyList(); + } else { + localInterfaces_ = null; + localInterfacesBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000040); + grpcEndpoint_ = null; + if (grpcEndpointBuilder_ != null) { + grpcEndpointBuilder_.dispose(); + grpcEndpointBuilder_ = null; + } + deviceManager_ = null; + if (deviceManagerBuilder_ != null) { + deviceManagerBuilder_.dispose(); + deviceManagerBuilder_ = null; + } + robotId_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NodeHeartbeat_descriptor; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat getDefaultInstanceForType() { + return cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat.getDefaultInstance(); + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat build() { + cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat buildPartial() { + cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat result = new cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat result) { + if (localInterfacesBuilder_ == null) { + if (((bitField0_ & 0x00000040) != 0)) { + localInterfaces_ = java.util.Collections.unmodifiableList(localInterfaces_); + bitField0_ = (bitField0_ & ~0x00000040); + } + result.localInterfaces_ = localInterfaces_; + } else { + result.localInterfaces_ = localInterfacesBuilder_.build(); + } + } + + private void buildPartial0(cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.nodeId_ = nodeId_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.bootId_ = bootId_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.sessionId_ = sessionId_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.sequence_ = sequence_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.sentAtUnixMs_ = sentAtUnixMs_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.softwareVersion_ = softwareVersion_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000080) != 0)) { + result.grpcEndpoint_ = grpcEndpointBuilder_ == null + ? grpcEndpoint_ + : grpcEndpointBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + result.deviceManager_ = deviceManagerBuilder_ == null + ? deviceManager_ + : deviceManagerBuilder_.build(); + to_bitField0_ |= 0x00000002; + } + if (((from_bitField0_ & 0x00000200) != 0)) { + result.robotId_ = robotId_; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat) { + return mergeFrom((cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat other) { + if (other == cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat.getDefaultInstance()) return this; + if (!other.getNodeId().isEmpty()) { + nodeId_ = other.nodeId_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getBootId().isEmpty()) { + bootId_ = other.bootId_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getSessionId().isEmpty()) { + sessionId_ = other.sessionId_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (other.getSequence() != 0L) { + setSequence(other.getSequence()); + } + if (other.getSentAtUnixMs() != 0L) { + setSentAtUnixMs(other.getSentAtUnixMs()); + } + if (!other.getSoftwareVersion().isEmpty()) { + softwareVersion_ = other.softwareVersion_; + bitField0_ |= 0x00000020; + onChanged(); + } + if (localInterfacesBuilder_ == null) { + if (!other.localInterfaces_.isEmpty()) { + if (localInterfaces_.isEmpty()) { + localInterfaces_ = other.localInterfaces_; + bitField0_ = (bitField0_ & ~0x00000040); + } else { + ensureLocalInterfacesIsMutable(); + localInterfaces_.addAll(other.localInterfaces_); + } + onChanged(); + } + } else { + if (!other.localInterfaces_.isEmpty()) { + if (localInterfacesBuilder_.isEmpty()) { + localInterfacesBuilder_.dispose(); + localInterfacesBuilder_ = null; + localInterfaces_ = other.localInterfaces_; + bitField0_ = (bitField0_ & ~0x00000040); + localInterfacesBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getLocalInterfacesFieldBuilder() : null; + } else { + localInterfacesBuilder_.addAllMessages(other.localInterfaces_); + } + } + } + if (other.hasGrpcEndpoint()) { + mergeGrpcEndpoint(other.getGrpcEndpoint()); + } + if (other.hasDeviceManager()) { + mergeDeviceManager(other.getDeviceManager()); + } + if (!other.getRobotId().isEmpty()) { + robotId_ = other.robotId_; + bitField0_ |= 0x00000200; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + nodeId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: { + bootId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: { + sessionId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 32: { + sequence_ = input.readUInt64(); + bitField0_ |= 0x00000008; + break; + } // case 32 + case 40: { + sentAtUnixMs_ = input.readUInt64(); + bitField0_ |= 0x00000010; + break; + } // case 40 + case 50: { + softwareVersion_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000020; + break; + } // case 50 + case 58: { + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress m = + input.readMessage( + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.parser(), + extensionRegistry); + if (localInterfacesBuilder_ == null) { + ensureLocalInterfacesIsMutable(); + localInterfaces_.add(m); + } else { + localInterfacesBuilder_.addMessage(m); + } + break; + } // case 58 + case 66: { + input.readMessage( + getGrpcEndpointFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000080; + break; + } // case 66 + case 74: { + input.readMessage( + getDeviceManagerFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000100; + break; + } // case 74 + case 82: { + robotId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000200; + break; + } // case 82 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private java.lang.Object nodeId_ = ""; + /** + * string node_id = 1; + * @return The nodeId. + */ + public java.lang.String getNodeId() { + java.lang.Object ref = nodeId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + nodeId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string node_id = 1; + * @return The bytes for nodeId. + */ + public com.google.protobuf.ByteString + getNodeIdBytes() { + java.lang.Object ref = nodeId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + nodeId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string node_id = 1; + * @param value The nodeId to set. + * @return This builder for chaining. + */ + public Builder setNodeId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + nodeId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * string node_id = 1; + * @return This builder for chaining. + */ + public Builder clearNodeId() { + nodeId_ = getDefaultInstance().getNodeId(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * string node_id = 1; + * @param value The bytes for nodeId to set. + * @return This builder for chaining. + */ + public Builder setNodeIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + nodeId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object bootId_ = ""; + /** + * string boot_id = 2; + * @return The bootId. + */ + public java.lang.String getBootId() { + java.lang.Object ref = bootId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + bootId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string boot_id = 2; + * @return The bytes for bootId. + */ + public com.google.protobuf.ByteString + getBootIdBytes() { + java.lang.Object ref = bootId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + bootId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string boot_id = 2; + * @param value The bootId to set. + * @return This builder for chaining. + */ + public Builder setBootId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + bootId_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * string boot_id = 2; + * @return This builder for chaining. + */ + public Builder clearBootId() { + bootId_ = getDefaultInstance().getBootId(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + /** + * string boot_id = 2; + * @param value The bytes for bootId to set. + * @return This builder for chaining. + */ + public Builder setBootIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + bootId_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private java.lang.Object sessionId_ = ""; + /** + * string session_id = 3; + * @return The sessionId. + */ + public java.lang.String getSessionId() { + java.lang.Object ref = sessionId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sessionId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string session_id = 3; + * @return The bytes for sessionId. + */ + public com.google.protobuf.ByteString + getSessionIdBytes() { + java.lang.Object ref = sessionId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + sessionId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string session_id = 3; + * @param value The sessionId to set. + * @return This builder for chaining. + */ + public Builder setSessionId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + sessionId_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * string session_id = 3; + * @return This builder for chaining. + */ + public Builder clearSessionId() { + sessionId_ = getDefaultInstance().getSessionId(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + /** + * string session_id = 3; + * @param value The bytes for sessionId to set. + * @return This builder for chaining. + */ + public Builder setSessionIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + sessionId_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private long sequence_ ; + /** + * uint64 sequence = 4; + * @return The sequence. + */ + @java.lang.Override + public long getSequence() { + return sequence_; + } + /** + * uint64 sequence = 4; + * @param value The sequence to set. + * @return This builder for chaining. + */ + public Builder setSequence(long value) { + + sequence_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * uint64 sequence = 4; + * @return This builder for chaining. + */ + public Builder clearSequence() { + bitField0_ = (bitField0_ & ~0x00000008); + sequence_ = 0L; + onChanged(); + return this; + } + + private long sentAtUnixMs_ ; + /** + * uint64 sent_at_unix_ms = 5; + * @return The sentAtUnixMs. + */ + @java.lang.Override + public long getSentAtUnixMs() { + return sentAtUnixMs_; + } + /** + * uint64 sent_at_unix_ms = 5; + * @param value The sentAtUnixMs to set. + * @return This builder for chaining. + */ + public Builder setSentAtUnixMs(long value) { + + sentAtUnixMs_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + * uint64 sent_at_unix_ms = 5; + * @return This builder for chaining. + */ + public Builder clearSentAtUnixMs() { + bitField0_ = (bitField0_ & ~0x00000010); + sentAtUnixMs_ = 0L; + onChanged(); + return this; + } + + private java.lang.Object softwareVersion_ = ""; + /** + * string software_version = 6; + * @return The softwareVersion. + */ + public java.lang.String getSoftwareVersion() { + java.lang.Object ref = softwareVersion_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + softwareVersion_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string software_version = 6; + * @return The bytes for softwareVersion. + */ + public com.google.protobuf.ByteString + getSoftwareVersionBytes() { + java.lang.Object ref = softwareVersion_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + softwareVersion_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string software_version = 6; + * @param value The softwareVersion to set. + * @return This builder for chaining. + */ + public Builder setSoftwareVersion( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + softwareVersion_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + * string software_version = 6; + * @return This builder for chaining. + */ + public Builder clearSoftwareVersion() { + softwareVersion_ = getDefaultInstance().getSoftwareVersion(); + bitField0_ = (bitField0_ & ~0x00000020); + onChanged(); + return this; + } + /** + * string software_version = 6; + * @param value The bytes for softwareVersion to set. + * @return This builder for chaining. + */ + public Builder setSoftwareVersionBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + softwareVersion_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + + private java.util.List localInterfaces_ = + java.util.Collections.emptyList(); + private void ensureLocalInterfacesIsMutable() { + if (!((bitField0_ & 0x00000040) != 0)) { + localInterfaces_ = new java.util.ArrayList(localInterfaces_); + bitField0_ |= 0x00000040; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress, cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.Builder, cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddressOrBuilder> localInterfacesBuilder_; + + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + public java.util.List getLocalInterfacesList() { + if (localInterfacesBuilder_ == null) { + return java.util.Collections.unmodifiableList(localInterfaces_); + } else { + return localInterfacesBuilder_.getMessageList(); + } + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + public int getLocalInterfacesCount() { + if (localInterfacesBuilder_ == null) { + return localInterfaces_.size(); + } else { + return localInterfacesBuilder_.getCount(); + } + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + public cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress getLocalInterfaces(int index) { + if (localInterfacesBuilder_ == null) { + return localInterfaces_.get(index); + } else { + return localInterfacesBuilder_.getMessage(index); + } + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + public Builder setLocalInterfaces( + int index, cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress value) { + if (localInterfacesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLocalInterfacesIsMutable(); + localInterfaces_.set(index, value); + onChanged(); + } else { + localInterfacesBuilder_.setMessage(index, value); + } + return this; + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + public Builder setLocalInterfaces( + int index, cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.Builder builderForValue) { + if (localInterfacesBuilder_ == null) { + ensureLocalInterfacesIsMutable(); + localInterfaces_.set(index, builderForValue.build()); + onChanged(); + } else { + localInterfacesBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + public Builder addLocalInterfaces(cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress value) { + if (localInterfacesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLocalInterfacesIsMutable(); + localInterfaces_.add(value); + onChanged(); + } else { + localInterfacesBuilder_.addMessage(value); + } + return this; + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + public Builder addLocalInterfaces( + int index, cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress value) { + if (localInterfacesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLocalInterfacesIsMutable(); + localInterfaces_.add(index, value); + onChanged(); + } else { + localInterfacesBuilder_.addMessage(index, value); + } + return this; + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + public Builder addLocalInterfaces( + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.Builder builderForValue) { + if (localInterfacesBuilder_ == null) { + ensureLocalInterfacesIsMutable(); + localInterfaces_.add(builderForValue.build()); + onChanged(); + } else { + localInterfacesBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + public Builder addLocalInterfaces( + int index, cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.Builder builderForValue) { + if (localInterfacesBuilder_ == null) { + ensureLocalInterfacesIsMutable(); + localInterfaces_.add(index, builderForValue.build()); + onChanged(); + } else { + localInterfacesBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + public Builder addAllLocalInterfaces( + java.lang.Iterable values) { + if (localInterfacesBuilder_ == null) { + ensureLocalInterfacesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, localInterfaces_); + onChanged(); + } else { + localInterfacesBuilder_.addAllMessages(values); + } + return this; + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + public Builder clearLocalInterfaces() { + if (localInterfacesBuilder_ == null) { + localInterfaces_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000040); + onChanged(); + } else { + localInterfacesBuilder_.clear(); + } + return this; + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + public Builder removeLocalInterfaces(int index) { + if (localInterfacesBuilder_ == null) { + ensureLocalInterfacesIsMutable(); + localInterfaces_.remove(index); + onChanged(); + } else { + localInterfacesBuilder_.remove(index); + } + return this; + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + public cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.Builder getLocalInterfacesBuilder( + int index) { + return getLocalInterfacesFieldBuilder().getBuilder(index); + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + public cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddressOrBuilder getLocalInterfacesOrBuilder( + int index) { + if (localInterfacesBuilder_ == null) { + return localInterfaces_.get(index); } else { + return localInterfacesBuilder_.getMessageOrBuilder(index); + } + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + public java.util.List + getLocalInterfacesOrBuilderList() { + if (localInterfacesBuilder_ != null) { + return localInterfacesBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(localInterfaces_); + } + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + public cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.Builder addLocalInterfacesBuilder() { + return getLocalInterfacesFieldBuilder().addBuilder( + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.getDefaultInstance()); + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + public cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.Builder addLocalInterfacesBuilder( + int index) { + return getLocalInterfacesFieldBuilder().addBuilder( + index, cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.getDefaultInstance()); + } + /** + * repeated .cmvr.quic_edge.v1.NetworkInterfaceAddress local_interfaces = 7; + */ + public java.util.List + getLocalInterfacesBuilderList() { + return getLocalInterfacesFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress, cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.Builder, cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddressOrBuilder> + getLocalInterfacesFieldBuilder() { + if (localInterfacesBuilder_ == null) { + localInterfacesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress, cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddress.Builder, cmvr.quic_edge.v1.QuicEdge.NetworkInterfaceAddressOrBuilder>( + localInterfaces_, + ((bitField0_ & 0x00000040) != 0), + getParentForChildren(), + isClean()); + localInterfaces_ = null; + } + return localInterfacesBuilder_; + } + + private cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint grpcEndpoint_; + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint, cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.Builder, cmvr.quic_edge.v1.QuicEdge.GrpcEndpointOrBuilder> grpcEndpointBuilder_; + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 8; + * @return Whether the grpcEndpoint field is set. + */ + public boolean hasGrpcEndpoint() { + return ((bitField0_ & 0x00000080) != 0); + } + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 8; + * @return The grpcEndpoint. + */ + public cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint getGrpcEndpoint() { + if (grpcEndpointBuilder_ == null) { + return grpcEndpoint_ == null ? cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.getDefaultInstance() : grpcEndpoint_; + } else { + return grpcEndpointBuilder_.getMessage(); + } + } + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 8; + */ + public Builder setGrpcEndpoint(cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint value) { + if (grpcEndpointBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + grpcEndpoint_ = value; + } else { + grpcEndpointBuilder_.setMessage(value); + } + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 8; + */ + public Builder setGrpcEndpoint( + cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.Builder builderForValue) { + if (grpcEndpointBuilder_ == null) { + grpcEndpoint_ = builderForValue.build(); + } else { + grpcEndpointBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 8; + */ + public Builder mergeGrpcEndpoint(cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint value) { + if (grpcEndpointBuilder_ == null) { + if (((bitField0_ & 0x00000080) != 0) && + grpcEndpoint_ != null && + grpcEndpoint_ != cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.getDefaultInstance()) { + getGrpcEndpointBuilder().mergeFrom(value); + } else { + grpcEndpoint_ = value; + } + } else { + grpcEndpointBuilder_.mergeFrom(value); + } + if (grpcEndpoint_ != null) { + bitField0_ |= 0x00000080; + onChanged(); + } + return this; + } + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 8; + */ + public Builder clearGrpcEndpoint() { + bitField0_ = (bitField0_ & ~0x00000080); + grpcEndpoint_ = null; + if (grpcEndpointBuilder_ != null) { + grpcEndpointBuilder_.dispose(); + grpcEndpointBuilder_ = null; + } + onChanged(); + return this; + } + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 8; + */ + public cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.Builder getGrpcEndpointBuilder() { + bitField0_ |= 0x00000080; + onChanged(); + return getGrpcEndpointFieldBuilder().getBuilder(); + } + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 8; + */ + public cmvr.quic_edge.v1.QuicEdge.GrpcEndpointOrBuilder getGrpcEndpointOrBuilder() { + if (grpcEndpointBuilder_ != null) { + return grpcEndpointBuilder_.getMessageOrBuilder(); + } else { + return grpcEndpoint_ == null ? + cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.getDefaultInstance() : grpcEndpoint_; + } + } + /** + * .cmvr.quic_edge.v1.GrpcEndpoint grpc_endpoint = 8; + */ + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint, cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.Builder, cmvr.quic_edge.v1.QuicEdge.GrpcEndpointOrBuilder> + getGrpcEndpointFieldBuilder() { + if (grpcEndpointBuilder_ == null) { + grpcEndpointBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint, cmvr.quic_edge.v1.QuicEdge.GrpcEndpoint.Builder, cmvr.quic_edge.v1.QuicEdge.GrpcEndpointOrBuilder>( + getGrpcEndpoint(), + getParentForChildren(), + isClean()); + grpcEndpoint_ = null; + } + return grpcEndpointBuilder_; + } + + private cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot deviceManager_; + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot, cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot.Builder, cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshotOrBuilder> deviceManagerBuilder_; + /** + * .cmvr.quic_edge.v1.DeviceManagerSnapshot device_manager = 9; + * @return Whether the deviceManager field is set. + */ + public boolean hasDeviceManager() { + return ((bitField0_ & 0x00000100) != 0); + } + /** + * .cmvr.quic_edge.v1.DeviceManagerSnapshot device_manager = 9; + * @return The deviceManager. + */ + public cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot getDeviceManager() { + if (deviceManagerBuilder_ == null) { + return deviceManager_ == null ? cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot.getDefaultInstance() : deviceManager_; + } else { + return deviceManagerBuilder_.getMessage(); + } + } + /** + * .cmvr.quic_edge.v1.DeviceManagerSnapshot device_manager = 9; + */ + public Builder setDeviceManager(cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot value) { + if (deviceManagerBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + deviceManager_ = value; + } else { + deviceManagerBuilder_.setMessage(value); + } + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + /** + * .cmvr.quic_edge.v1.DeviceManagerSnapshot device_manager = 9; + */ + public Builder setDeviceManager( + cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot.Builder builderForValue) { + if (deviceManagerBuilder_ == null) { + deviceManager_ = builderForValue.build(); + } else { + deviceManagerBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + /** + * .cmvr.quic_edge.v1.DeviceManagerSnapshot device_manager = 9; + */ + public Builder mergeDeviceManager(cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot value) { + if (deviceManagerBuilder_ == null) { + if (((bitField0_ & 0x00000100) != 0) && + deviceManager_ != null && + deviceManager_ != cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot.getDefaultInstance()) { + getDeviceManagerBuilder().mergeFrom(value); + } else { + deviceManager_ = value; + } + } else { + deviceManagerBuilder_.mergeFrom(value); + } + if (deviceManager_ != null) { + bitField0_ |= 0x00000100; + onChanged(); + } + return this; + } + /** + * .cmvr.quic_edge.v1.DeviceManagerSnapshot device_manager = 9; + */ + public Builder clearDeviceManager() { + bitField0_ = (bitField0_ & ~0x00000100); + deviceManager_ = null; + if (deviceManagerBuilder_ != null) { + deviceManagerBuilder_.dispose(); + deviceManagerBuilder_ = null; + } + onChanged(); + return this; + } + /** + * .cmvr.quic_edge.v1.DeviceManagerSnapshot device_manager = 9; + */ + public cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot.Builder getDeviceManagerBuilder() { + bitField0_ |= 0x00000100; + onChanged(); + return getDeviceManagerFieldBuilder().getBuilder(); + } + /** + * .cmvr.quic_edge.v1.DeviceManagerSnapshot device_manager = 9; + */ + public cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshotOrBuilder getDeviceManagerOrBuilder() { + if (deviceManagerBuilder_ != null) { + return deviceManagerBuilder_.getMessageOrBuilder(); + } else { + return deviceManager_ == null ? + cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot.getDefaultInstance() : deviceManager_; + } + } + /** + * .cmvr.quic_edge.v1.DeviceManagerSnapshot device_manager = 9; + */ + private com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot, cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot.Builder, cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshotOrBuilder> + getDeviceManagerFieldBuilder() { + if (deviceManagerBuilder_ == null) { + deviceManagerBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot, cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshot.Builder, cmvr.quic_edge.v1.QuicEdge.DeviceManagerSnapshotOrBuilder>( + getDeviceManager(), + getParentForChildren(), + isClean()); + deviceManager_ = null; + } + return deviceManagerBuilder_; + } + + private java.lang.Object robotId_ = ""; + /** + * string robot_id = 10; + * @return The robotId. + */ + public java.lang.String getRobotId() { + java.lang.Object ref = robotId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + robotId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string robot_id = 10; + * @return The bytes for robotId. + */ + public com.google.protobuf.ByteString + getRobotIdBytes() { + java.lang.Object ref = robotId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + robotId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string robot_id = 10; + * @param value The robotId to set. + * @return This builder for chaining. + */ + public Builder setRobotId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + robotId_ = value; + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + /** + * string robot_id = 10; + * @return This builder for chaining. + */ + public Builder clearRobotId() { + robotId_ = getDefaultInstance().getRobotId(); + bitField0_ = (bitField0_ & ~0x00000200); + onChanged(); + return this; + } + /** + * string robot_id = 10; + * @param value The bytes for robotId to set. + * @return This builder for chaining. + */ + public Builder setRobotIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + robotId_ = value; + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:cmvr.quic_edge.v1.NodeHeartbeat) + } + + // @@protoc_insertion_point(class_scope:cmvr.quic_edge.v1.NodeHeartbeat) + private static final cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat(); + } + + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public NodeHeartbeat parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeHeartbeat getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface NodeHeartbeatAckOrBuilder extends + // @@protoc_insertion_point(interface_extends:cmvr.quic_edge.v1.NodeHeartbeatAck) + com.google.protobuf.MessageOrBuilder { + + /** + * bool accepted = 1; + * @return The accepted. + */ + boolean getAccepted(); + + /** + * uint64 acknowledged_sequence = 2; + * @return The acknowledgedSequence. + */ + long getAcknowledgedSequence(); + + /** + * string message = 3; + * @return The message. + */ + java.lang.String getMessage(); + /** + * string message = 3; + * @return The bytes for message. + */ + com.google.protobuf.ByteString + getMessageBytes(); + + /** + * uint64 server_time_unix_ms = 4; + * @return The serverTimeUnixMs. + */ + long getServerTimeUnixMs(); + + /** + * string observed_source_ip = 5; + * @return The observedSourceIp. + */ + java.lang.String getObservedSourceIp(); + /** + * string observed_source_ip = 5; + * @return The bytes for observedSourceIp. + */ + com.google.protobuf.ByteString + getObservedSourceIpBytes(); + + /** + * string session_id = 6; + * @return The sessionId. + */ + java.lang.String getSessionId(); + /** + * string session_id = 6; + * @return The bytes for sessionId. + */ + com.google.protobuf.ByteString + getSessionIdBytes(); + } + /** + * Protobuf type {@code cmvr.quic_edge.v1.NodeHeartbeatAck} + */ + public static final class NodeHeartbeatAck extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:cmvr.quic_edge.v1.NodeHeartbeatAck) + NodeHeartbeatAckOrBuilder { + private static final long serialVersionUID = 0L; + // Use NodeHeartbeatAck.newBuilder() to construct. + private NodeHeartbeatAck(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private NodeHeartbeatAck() { + message_ = ""; + observedSourceIp_ = ""; + sessionId_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new NodeHeartbeatAck(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NodeHeartbeatAck_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NodeHeartbeatAck_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck.class, cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck.Builder.class); + } + + public static final int ACCEPTED_FIELD_NUMBER = 1; + private boolean accepted_ = false; + /** + * bool accepted = 1; + * @return The accepted. + */ + @java.lang.Override + public boolean getAccepted() { + return accepted_; + } + + public static final int ACKNOWLEDGED_SEQUENCE_FIELD_NUMBER = 2; + private long acknowledgedSequence_ = 0L; + /** + * uint64 acknowledged_sequence = 2; + * @return The acknowledgedSequence. + */ + @java.lang.Override + public long getAcknowledgedSequence() { + return acknowledgedSequence_; + } + + public static final int MESSAGE_FIELD_NUMBER = 3; + @SuppressWarnings("serial") + private volatile java.lang.Object message_ = ""; + /** + * string message = 3; + * @return The message. + */ + @java.lang.Override + public java.lang.String getMessage() { + java.lang.Object ref = message_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + message_ = s; + return s; + } + } + /** + * string message = 3; + * @return The bytes for message. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getMessageBytes() { + java.lang.Object ref = message_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + message_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SERVER_TIME_UNIX_MS_FIELD_NUMBER = 4; + private long serverTimeUnixMs_ = 0L; + /** + * uint64 server_time_unix_ms = 4; + * @return The serverTimeUnixMs. + */ + @java.lang.Override + public long getServerTimeUnixMs() { + return serverTimeUnixMs_; + } + + public static final int OBSERVED_SOURCE_IP_FIELD_NUMBER = 5; + @SuppressWarnings("serial") + private volatile java.lang.Object observedSourceIp_ = ""; + /** + * string observed_source_ip = 5; + * @return The observedSourceIp. + */ + @java.lang.Override + public java.lang.String getObservedSourceIp() { + java.lang.Object ref = observedSourceIp_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + observedSourceIp_ = s; + return s; + } + } + /** + * string observed_source_ip = 5; + * @return The bytes for observedSourceIp. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getObservedSourceIpBytes() { + java.lang.Object ref = observedSourceIp_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + observedSourceIp_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SESSION_ID_FIELD_NUMBER = 6; + @SuppressWarnings("serial") + private volatile java.lang.Object sessionId_ = ""; + /** + * string session_id = 6; + * @return The sessionId. + */ + @java.lang.Override + public java.lang.String getSessionId() { + java.lang.Object ref = sessionId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sessionId_ = s; + return s; + } + } + /** + * string session_id = 6; + * @return The bytes for sessionId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getSessionIdBytes() { + java.lang.Object ref = sessionId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + sessionId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (accepted_ != false) { + output.writeBool(1, accepted_); + } + if (acknowledgedSequence_ != 0L) { + output.writeUInt64(2, acknowledgedSequence_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(message_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, message_); + } + if (serverTimeUnixMs_ != 0L) { + output.writeUInt64(4, serverTimeUnixMs_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(observedSourceIp_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 5, observedSourceIp_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sessionId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 6, sessionId_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (accepted_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(1, accepted_); + } + if (acknowledgedSequence_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeUInt64Size(2, acknowledgedSequence_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(message_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, message_); + } + if (serverTimeUnixMs_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeUInt64Size(4, serverTimeUnixMs_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(observedSourceIp_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, observedSourceIp_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sessionId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, sessionId_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck)) { + return super.equals(obj); + } + cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck other = (cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck) obj; + + if (getAccepted() + != other.getAccepted()) return false; + if (getAcknowledgedSequence() + != other.getAcknowledgedSequence()) return false; + if (!getMessage() + .equals(other.getMessage())) return false; + if (getServerTimeUnixMs() + != other.getServerTimeUnixMs()) return false; + if (!getObservedSourceIp() + .equals(other.getObservedSourceIp())) return false; + if (!getSessionId() + .equals(other.getSessionId())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + ACCEPTED_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getAccepted()); + hash = (37 * hash) + ACKNOWLEDGED_SEQUENCE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getAcknowledgedSequence()); + hash = (37 * hash) + MESSAGE_FIELD_NUMBER; + hash = (53 * hash) + getMessage().hashCode(); + hash = (37 * hash) + SERVER_TIME_UNIX_MS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getServerTimeUnixMs()); + hash = (37 * hash) + OBSERVED_SOURCE_IP_FIELD_NUMBER; + hash = (53 * hash) + getObservedSourceIp().hashCode(); + hash = (37 * hash) + SESSION_ID_FIELD_NUMBER; + hash = (53 * hash) + getSessionId().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code cmvr.quic_edge.v1.NodeHeartbeatAck} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:cmvr.quic_edge.v1.NodeHeartbeatAck) + cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAckOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NodeHeartbeatAck_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NodeHeartbeatAck_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck.class, cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck.Builder.class); + } + + // Construct using cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + accepted_ = false; + acknowledgedSequence_ = 0L; + message_ = ""; + serverTimeUnixMs_ = 0L; + observedSourceIp_ = ""; + sessionId_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_NodeHeartbeatAck_descriptor; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck getDefaultInstanceForType() { + return cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck.getDefaultInstance(); + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck build() { + cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck buildPartial() { + cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck result = new cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.accepted_ = accepted_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.acknowledgedSequence_ = acknowledgedSequence_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.message_ = message_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.serverTimeUnixMs_ = serverTimeUnixMs_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.observedSourceIp_ = observedSourceIp_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.sessionId_ = sessionId_; + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck) { + return mergeFrom((cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck other) { + if (other == cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck.getDefaultInstance()) return this; + if (other.getAccepted() != false) { + setAccepted(other.getAccepted()); + } + if (other.getAcknowledgedSequence() != 0L) { + setAcknowledgedSequence(other.getAcknowledgedSequence()); + } + if (!other.getMessage().isEmpty()) { + message_ = other.message_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (other.getServerTimeUnixMs() != 0L) { + setServerTimeUnixMs(other.getServerTimeUnixMs()); + } + if (!other.getObservedSourceIp().isEmpty()) { + observedSourceIp_ = other.observedSourceIp_; + bitField0_ |= 0x00000010; + onChanged(); + } + if (!other.getSessionId().isEmpty()) { + sessionId_ = other.sessionId_; + bitField0_ |= 0x00000020; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: { + accepted_ = input.readBool(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 16: { + acknowledgedSequence_ = input.readUInt64(); + bitField0_ |= 0x00000002; + break; + } // case 16 + case 26: { + message_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 32: { + serverTimeUnixMs_ = input.readUInt64(); + bitField0_ |= 0x00000008; + break; + } // case 32 + case 42: { + observedSourceIp_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000010; + break; + } // case 42 + case 50: { + sessionId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000020; + break; + } // case 50 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private boolean accepted_ ; + /** + * bool accepted = 1; + * @return The accepted. + */ + @java.lang.Override + public boolean getAccepted() { + return accepted_; + } + /** + * bool accepted = 1; + * @param value The accepted to set. + * @return This builder for chaining. + */ + public Builder setAccepted(boolean value) { + + accepted_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * bool accepted = 1; + * @return This builder for chaining. + */ + public Builder clearAccepted() { + bitField0_ = (bitField0_ & ~0x00000001); + accepted_ = false; + onChanged(); + return this; + } + + private long acknowledgedSequence_ ; + /** + * uint64 acknowledged_sequence = 2; + * @return The acknowledgedSequence. + */ + @java.lang.Override + public long getAcknowledgedSequence() { + return acknowledgedSequence_; + } + /** + * uint64 acknowledged_sequence = 2; + * @param value The acknowledgedSequence to set. + * @return This builder for chaining. + */ + public Builder setAcknowledgedSequence(long value) { + + acknowledgedSequence_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * uint64 acknowledged_sequence = 2; + * @return This builder for chaining. + */ + public Builder clearAcknowledgedSequence() { + bitField0_ = (bitField0_ & ~0x00000002); + acknowledgedSequence_ = 0L; + onChanged(); + return this; + } + + private java.lang.Object message_ = ""; + /** + * string message = 3; + * @return The message. + */ + public java.lang.String getMessage() { + java.lang.Object ref = message_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + message_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string message = 3; + * @return The bytes for message. + */ + public com.google.protobuf.ByteString + getMessageBytes() { + java.lang.Object ref = message_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + message_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string message = 3; + * @param value The message to set. + * @return This builder for chaining. + */ + public Builder setMessage( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + message_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * string message = 3; + * @return This builder for chaining. + */ + public Builder clearMessage() { + message_ = getDefaultInstance().getMessage(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + /** + * string message = 3; + * @param value The bytes for message to set. + * @return This builder for chaining. + */ + public Builder setMessageBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + message_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private long serverTimeUnixMs_ ; + /** + * uint64 server_time_unix_ms = 4; + * @return The serverTimeUnixMs. + */ + @java.lang.Override + public long getServerTimeUnixMs() { + return serverTimeUnixMs_; + } + /** + * uint64 server_time_unix_ms = 4; + * @param value The serverTimeUnixMs to set. + * @return This builder for chaining. + */ + public Builder setServerTimeUnixMs(long value) { + + serverTimeUnixMs_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * uint64 server_time_unix_ms = 4; + * @return This builder for chaining. + */ + public Builder clearServerTimeUnixMs() { + bitField0_ = (bitField0_ & ~0x00000008); + serverTimeUnixMs_ = 0L; + onChanged(); + return this; + } + + private java.lang.Object observedSourceIp_ = ""; + /** + * string observed_source_ip = 5; + * @return The observedSourceIp. + */ + public java.lang.String getObservedSourceIp() { + java.lang.Object ref = observedSourceIp_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + observedSourceIp_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string observed_source_ip = 5; + * @return The bytes for observedSourceIp. + */ + public com.google.protobuf.ByteString + getObservedSourceIpBytes() { + java.lang.Object ref = observedSourceIp_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + observedSourceIp_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string observed_source_ip = 5; + * @param value The observedSourceIp to set. + * @return This builder for chaining. + */ + public Builder setObservedSourceIp( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + observedSourceIp_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + * string observed_source_ip = 5; + * @return This builder for chaining. + */ + public Builder clearObservedSourceIp() { + observedSourceIp_ = getDefaultInstance().getObservedSourceIp(); + bitField0_ = (bitField0_ & ~0x00000010); + onChanged(); + return this; + } + /** + * string observed_source_ip = 5; + * @param value The bytes for observedSourceIp to set. + * @return This builder for chaining. + */ + public Builder setObservedSourceIpBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + observedSourceIp_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + + private java.lang.Object sessionId_ = ""; + /** + * string session_id = 6; + * @return The sessionId. + */ + public java.lang.String getSessionId() { + java.lang.Object ref = sessionId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sessionId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string session_id = 6; + * @return The bytes for sessionId. + */ + public com.google.protobuf.ByteString + getSessionIdBytes() { + java.lang.Object ref = sessionId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + sessionId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string session_id = 6; + * @param value The sessionId to set. + * @return This builder for chaining. + */ + public Builder setSessionId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + sessionId_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + * string session_id = 6; + * @return This builder for chaining. + */ + public Builder clearSessionId() { + sessionId_ = getDefaultInstance().getSessionId(); + bitField0_ = (bitField0_ & ~0x00000020); + onChanged(); + return this; + } + /** + * string session_id = 6; + * @param value The bytes for sessionId to set. + * @return This builder for chaining. + */ + public Builder setSessionIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + sessionId_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:cmvr.quic_edge.v1.NodeHeartbeatAck) + } + + // @@protoc_insertion_point(class_scope:cmvr.quic_edge.v1.NodeHeartbeatAck) + private static final cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck(); + } + + public static cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public NodeHeartbeatAck parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.NodeHeartbeatAck getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface MediaSessionOpenOrBuilder extends + // @@protoc_insertion_point(interface_extends:cmvr.quic_edge.v1.MediaSessionOpen) + com.google.protobuf.MessageOrBuilder { + + /** + * string node_id = 1; + * @return The nodeId. + */ + java.lang.String getNodeId(); + /** + * string node_id = 1; + * @return The bytes for nodeId. + */ + com.google.protobuf.ByteString + getNodeIdBytes(); + + /** + * uint64 session_epoch = 2; + * @return The sessionEpoch. + */ + long getSessionEpoch(); + + /** + *
+     * Binds the media epoch to the accepted node registration on this QUIC
+     * connection. Media must not start before this session is assigned.
+     * 
+ * + * string session_id = 3; + * @return The sessionId. + */ + java.lang.String getSessionId(); + /** + *
+     * Binds the media epoch to the accepted node registration on this QUIC
+     * connection. Media must not start before this session is assigned.
+     * 
+ * + * string session_id = 3; + * @return The bytes for sessionId. + */ + com.google.protobuf.ByteString + getSessionIdBytes(); + } + /** + * Protobuf type {@code cmvr.quic_edge.v1.MediaSessionOpen} + */ + public static final class MediaSessionOpen extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:cmvr.quic_edge.v1.MediaSessionOpen) + MediaSessionOpenOrBuilder { + private static final long serialVersionUID = 0L; + // Use MediaSessionOpen.newBuilder() to construct. + private MediaSessionOpen(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private MediaSessionOpen() { + nodeId_ = ""; + sessionId_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new MediaSessionOpen(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_MediaSessionOpen_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_MediaSessionOpen_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen.class, cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen.Builder.class); + } + + public static final int NODE_ID_FIELD_NUMBER = 1; + @SuppressWarnings("serial") + private volatile java.lang.Object nodeId_ = ""; + /** + * string node_id = 1; + * @return The nodeId. + */ + @java.lang.Override + public java.lang.String getNodeId() { + java.lang.Object ref = nodeId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + nodeId_ = s; + return s; + } + } + /** + * string node_id = 1; + * @return The bytes for nodeId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getNodeIdBytes() { + java.lang.Object ref = nodeId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + nodeId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SESSION_EPOCH_FIELD_NUMBER = 2; + private long sessionEpoch_ = 0L; + /** + * uint64 session_epoch = 2; + * @return The sessionEpoch. + */ + @java.lang.Override + public long getSessionEpoch() { + return sessionEpoch_; + } + + public static final int SESSION_ID_FIELD_NUMBER = 3; + @SuppressWarnings("serial") + private volatile java.lang.Object sessionId_ = ""; + /** + *
+     * Binds the media epoch to the accepted node registration on this QUIC
+     * connection. Media must not start before this session is assigned.
+     * 
+ * + * string session_id = 3; + * @return The sessionId. + */ + @java.lang.Override + public java.lang.String getSessionId() { + java.lang.Object ref = sessionId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sessionId_ = s; + return s; + } + } + /** + *
+     * Binds the media epoch to the accepted node registration on this QUIC
+     * connection. Media must not start before this session is assigned.
+     * 
+ * + * string session_id = 3; + * @return The bytes for sessionId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getSessionIdBytes() { + java.lang.Object ref = sessionId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + sessionId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nodeId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, nodeId_); + } + if (sessionEpoch_ != 0L) { + output.writeUInt64(2, sessionEpoch_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sessionId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, sessionId_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nodeId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, nodeId_); + } + if (sessionEpoch_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeUInt64Size(2, sessionEpoch_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sessionId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, sessionId_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen)) { + return super.equals(obj); + } + cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen other = (cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen) obj; + + if (!getNodeId() + .equals(other.getNodeId())) return false; + if (getSessionEpoch() + != other.getSessionEpoch()) return false; + if (!getSessionId() + .equals(other.getSessionId())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + NODE_ID_FIELD_NUMBER; + hash = (53 * hash) + getNodeId().hashCode(); + hash = (37 * hash) + SESSION_EPOCH_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getSessionEpoch()); + hash = (37 * hash) + SESSION_ID_FIELD_NUMBER; + hash = (53 * hash) + getSessionId().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code cmvr.quic_edge.v1.MediaSessionOpen} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:cmvr.quic_edge.v1.MediaSessionOpen) + cmvr.quic_edge.v1.QuicEdge.MediaSessionOpenOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_MediaSessionOpen_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_MediaSessionOpen_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen.class, cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen.Builder.class); + } + + // Construct using cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + nodeId_ = ""; + sessionEpoch_ = 0L; + sessionId_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_MediaSessionOpen_descriptor; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen getDefaultInstanceForType() { + return cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen.getDefaultInstance(); + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen build() { + cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen buildPartial() { + cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen result = new cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.nodeId_ = nodeId_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.sessionEpoch_ = sessionEpoch_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.sessionId_ = sessionId_; + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen) { + return mergeFrom((cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen other) { + if (other == cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen.getDefaultInstance()) return this; + if (!other.getNodeId().isEmpty()) { + nodeId_ = other.nodeId_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (other.getSessionEpoch() != 0L) { + setSessionEpoch(other.getSessionEpoch()); + } + if (!other.getSessionId().isEmpty()) { + sessionId_ = other.sessionId_; + bitField0_ |= 0x00000004; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + nodeId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 16: { + sessionEpoch_ = input.readUInt64(); + bitField0_ |= 0x00000002; + break; + } // case 16 + case 26: { + sessionId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private java.lang.Object nodeId_ = ""; + /** + * string node_id = 1; + * @return The nodeId. + */ + public java.lang.String getNodeId() { + java.lang.Object ref = nodeId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + nodeId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string node_id = 1; + * @return The bytes for nodeId. + */ + public com.google.protobuf.ByteString + getNodeIdBytes() { + java.lang.Object ref = nodeId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + nodeId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string node_id = 1; + * @param value The nodeId to set. + * @return This builder for chaining. + */ + public Builder setNodeId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + nodeId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * string node_id = 1; + * @return This builder for chaining. + */ + public Builder clearNodeId() { + nodeId_ = getDefaultInstance().getNodeId(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * string node_id = 1; + * @param value The bytes for nodeId to set. + * @return This builder for chaining. + */ + public Builder setNodeIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + nodeId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private long sessionEpoch_ ; + /** + * uint64 session_epoch = 2; + * @return The sessionEpoch. + */ + @java.lang.Override + public long getSessionEpoch() { + return sessionEpoch_; + } + /** + * uint64 session_epoch = 2; + * @param value The sessionEpoch to set. + * @return This builder for chaining. + */ + public Builder setSessionEpoch(long value) { + + sessionEpoch_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * uint64 session_epoch = 2; + * @return This builder for chaining. + */ + public Builder clearSessionEpoch() { + bitField0_ = (bitField0_ & ~0x00000002); + sessionEpoch_ = 0L; + onChanged(); + return this; + } + + private java.lang.Object sessionId_ = ""; + /** + *
+       * Binds the media epoch to the accepted node registration on this QUIC
+       * connection. Media must not start before this session is assigned.
+       * 
+ * + * string session_id = 3; + * @return The sessionId. + */ + public java.lang.String getSessionId() { + java.lang.Object ref = sessionId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sessionId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + *
+       * Binds the media epoch to the accepted node registration on this QUIC
+       * connection. Media must not start before this session is assigned.
+       * 
+ * + * string session_id = 3; + * @return The bytes for sessionId. + */ + public com.google.protobuf.ByteString + getSessionIdBytes() { + java.lang.Object ref = sessionId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + sessionId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + *
+       * Binds the media epoch to the accepted node registration on this QUIC
+       * connection. Media must not start before this session is assigned.
+       * 
+ * + * string session_id = 3; + * @param value The sessionId to set. + * @return This builder for chaining. + */ + public Builder setSessionId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + sessionId_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + *
+       * Binds the media epoch to the accepted node registration on this QUIC
+       * connection. Media must not start before this session is assigned.
+       * 
+ * + * string session_id = 3; + * @return This builder for chaining. + */ + public Builder clearSessionId() { + sessionId_ = getDefaultInstance().getSessionId(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + /** + *
+       * Binds the media epoch to the accepted node registration on this QUIC
+       * connection. Media must not start before this session is assigned.
+       * 
+ * + * string session_id = 3; + * @param value The bytes for sessionId to set. + * @return This builder for chaining. + */ + public Builder setSessionIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + sessionId_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:cmvr.quic_edge.v1.MediaSessionOpen) + } + + // @@protoc_insertion_point(class_scope:cmvr.quic_edge.v1.MediaSessionOpen) + private static final cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen(); + } + + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public MediaSessionOpen parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.MediaSessionOpen getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface MediaTrackDescriptorOrBuilder extends + // @@protoc_insertion_point(interface_extends:cmvr.quic_edge.v1.MediaTrackDescriptor) + com.google.protobuf.MessageOrBuilder { + + /** + * uint32 track_id = 1; + * @return The trackId. + */ + int getTrackId(); + + /** + * .cmvr.quic_edge.v1.MediaKind kind = 2; + * @return The enum numeric value on the wire for kind. + */ + int getKindValue(); + /** + * .cmvr.quic_edge.v1.MediaKind kind = 2; + * @return The kind. + */ + cmvr.quic_edge.v1.QuicEdge.MediaKind getKind(); + + /** + * string device_id = 3; + * @return The deviceId. + */ + java.lang.String getDeviceId(); + /** + * string device_id = 3; + * @return The bytes for deviceId. + */ + com.google.protobuf.ByteString + getDeviceIdBytes(); + + /** + * string codec = 4; + * @return The codec. + */ + java.lang.String getCodec(); + /** + * string codec = 4; + * @return The bytes for codec. + */ + com.google.protobuf.ByteString + getCodecBytes(); + + /** + * uint64 codec_generation = 5; + * @return The codecGeneration. + */ + long getCodecGeneration(); + + /** + *
+     * The exact MediaSourceHub track and the 32-bit token repeated in every
+     * DATAGRAM header. The full generation remains on the reliable stream.
+     * 
+ * + * string source_track_id = 6; + * @return The sourceTrackId. + */ + java.lang.String getSourceTrackId(); + /** + *
+     * The exact MediaSourceHub track and the 32-bit token repeated in every
+     * DATAGRAM header. The full generation remains on the reliable stream.
+     * 
+ * + * string source_track_id = 6; + * @return The bytes for sourceTrackId. + */ + com.google.protobuf.ByteString + getSourceTrackIdBytes(); + + /** + * uint32 codec_generation_token = 7; + * @return The codecGenerationToken. + */ + int getCodecGenerationToken(); + + /** + * string payload_format = 8; + * @return The payloadFormat. + */ + java.lang.String getPayloadFormat(); + /** + * string payload_format = 8; + * @return The bytes for payloadFormat. + */ + com.google.protobuf.ByteString + getPayloadFormatBytes(); + + /** + *
+     * Video fields. They are zero for audio tracks.
+     * 
+ * + * uint32 width = 10; + * @return The width. + */ + int getWidth(); + + /** + * uint32 height = 11; + * @return The height. + */ + int getHeight(); + + /** + * uint32 frames_per_second = 12; + * @return The framesPerSecond. + */ + int getFramesPerSecond(); + + /** + *
+     * Audio fields. They are zero for video tracks.
+     * 
+ * + * uint32 sample_rate = 20; + * @return The sampleRate. + */ + int getSampleRate(); + + /** + * uint32 channels = 21; + * @return The channels. + */ + int getChannels(); + + /** + *
+     * Decoder initialization bytes, for example AVCC/HVCC or AudioSpecificConfig.
+     * Existing cmvr-es sources may leave this empty when configuration NAL units
+     * are carried in-band.
+     * 
+ * + * bytes codec_config = 30; + * @return The codecConfig. + */ + com.google.protobuf.ByteString getCodecConfig(); + } + /** + * Protobuf type {@code cmvr.quic_edge.v1.MediaTrackDescriptor} + */ + public static final class MediaTrackDescriptor extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:cmvr.quic_edge.v1.MediaTrackDescriptor) + MediaTrackDescriptorOrBuilder { + private static final long serialVersionUID = 0L; + // Use MediaTrackDescriptor.newBuilder() to construct. + private MediaTrackDescriptor(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private MediaTrackDescriptor() { + kind_ = 0; + deviceId_ = ""; + codec_ = ""; + sourceTrackId_ = ""; + payloadFormat_ = ""; + codecConfig_ = com.google.protobuf.ByteString.EMPTY; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new MediaTrackDescriptor(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_MediaTrackDescriptor_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_MediaTrackDescriptor_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor.class, cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor.Builder.class); + } + + public static final int TRACK_ID_FIELD_NUMBER = 1; + private int trackId_ = 0; + /** + * uint32 track_id = 1; + * @return The trackId. + */ + @java.lang.Override + public int getTrackId() { + return trackId_; + } + + public static final int KIND_FIELD_NUMBER = 2; + private int kind_ = 0; + /** + * .cmvr.quic_edge.v1.MediaKind kind = 2; + * @return The enum numeric value on the wire for kind. + */ + @java.lang.Override public int getKindValue() { + return kind_; + } + /** + * .cmvr.quic_edge.v1.MediaKind kind = 2; + * @return The kind. + */ + @java.lang.Override public cmvr.quic_edge.v1.QuicEdge.MediaKind getKind() { + cmvr.quic_edge.v1.QuicEdge.MediaKind result = cmvr.quic_edge.v1.QuicEdge.MediaKind.forNumber(kind_); + return result == null ? cmvr.quic_edge.v1.QuicEdge.MediaKind.UNRECOGNIZED : result; + } + + public static final int DEVICE_ID_FIELD_NUMBER = 3; + @SuppressWarnings("serial") + private volatile java.lang.Object deviceId_ = ""; + /** + * string device_id = 3; + * @return The deviceId. + */ + @java.lang.Override + public java.lang.String getDeviceId() { + java.lang.Object ref = deviceId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + deviceId_ = s; + return s; + } + } + /** + * string device_id = 3; + * @return The bytes for deviceId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getDeviceIdBytes() { + java.lang.Object ref = deviceId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + deviceId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int CODEC_FIELD_NUMBER = 4; + @SuppressWarnings("serial") + private volatile java.lang.Object codec_ = ""; + /** + * string codec = 4; + * @return The codec. + */ + @java.lang.Override + public java.lang.String getCodec() { + java.lang.Object ref = codec_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + codec_ = s; + return s; + } + } + /** + * string codec = 4; + * @return The bytes for codec. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getCodecBytes() { + java.lang.Object ref = codec_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + codec_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int CODEC_GENERATION_FIELD_NUMBER = 5; + private long codecGeneration_ = 0L; + /** + * uint64 codec_generation = 5; + * @return The codecGeneration. + */ + @java.lang.Override + public long getCodecGeneration() { + return codecGeneration_; + } + + public static final int SOURCE_TRACK_ID_FIELD_NUMBER = 6; + @SuppressWarnings("serial") + private volatile java.lang.Object sourceTrackId_ = ""; + /** + *
+     * The exact MediaSourceHub track and the 32-bit token repeated in every
+     * DATAGRAM header. The full generation remains on the reliable stream.
+     * 
+ * + * string source_track_id = 6; + * @return The sourceTrackId. + */ + @java.lang.Override + public java.lang.String getSourceTrackId() { + java.lang.Object ref = sourceTrackId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sourceTrackId_ = s; + return s; + } + } + /** + *
+     * The exact MediaSourceHub track and the 32-bit token repeated in every
+     * DATAGRAM header. The full generation remains on the reliable stream.
+     * 
+ * + * string source_track_id = 6; + * @return The bytes for sourceTrackId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getSourceTrackIdBytes() { + java.lang.Object ref = sourceTrackId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + sourceTrackId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int CODEC_GENERATION_TOKEN_FIELD_NUMBER = 7; + private int codecGenerationToken_ = 0; + /** + * uint32 codec_generation_token = 7; + * @return The codecGenerationToken. + */ + @java.lang.Override + public int getCodecGenerationToken() { + return codecGenerationToken_; + } + + public static final int PAYLOAD_FORMAT_FIELD_NUMBER = 8; + @SuppressWarnings("serial") + private volatile java.lang.Object payloadFormat_ = ""; + /** + * string payload_format = 8; + * @return The payloadFormat. + */ + @java.lang.Override + public java.lang.String getPayloadFormat() { + java.lang.Object ref = payloadFormat_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + payloadFormat_ = s; + return s; + } + } + /** + * string payload_format = 8; + * @return The bytes for payloadFormat. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getPayloadFormatBytes() { + java.lang.Object ref = payloadFormat_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + payloadFormat_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int WIDTH_FIELD_NUMBER = 10; + private int width_ = 0; + /** + *
+     * Video fields. They are zero for audio tracks.
+     * 
+ * + * uint32 width = 10; + * @return The width. + */ + @java.lang.Override + public int getWidth() { + return width_; + } + + public static final int HEIGHT_FIELD_NUMBER = 11; + private int height_ = 0; + /** + * uint32 height = 11; + * @return The height. + */ + @java.lang.Override + public int getHeight() { + return height_; + } + + public static final int FRAMES_PER_SECOND_FIELD_NUMBER = 12; + private int framesPerSecond_ = 0; + /** + * uint32 frames_per_second = 12; + * @return The framesPerSecond. + */ + @java.lang.Override + public int getFramesPerSecond() { + return framesPerSecond_; + } + + public static final int SAMPLE_RATE_FIELD_NUMBER = 20; + private int sampleRate_ = 0; + /** + *
+     * Audio fields. They are zero for video tracks.
+     * 
+ * + * uint32 sample_rate = 20; + * @return The sampleRate. + */ + @java.lang.Override + public int getSampleRate() { + return sampleRate_; + } + + public static final int CHANNELS_FIELD_NUMBER = 21; + private int channels_ = 0; + /** + * uint32 channels = 21; + * @return The channels. + */ + @java.lang.Override + public int getChannels() { + return channels_; + } + + public static final int CODEC_CONFIG_FIELD_NUMBER = 30; + private com.google.protobuf.ByteString codecConfig_ = com.google.protobuf.ByteString.EMPTY; + /** + *
+     * Decoder initialization bytes, for example AVCC/HVCC or AudioSpecificConfig.
+     * Existing cmvr-es sources may leave this empty when configuration NAL units
+     * are carried in-band.
+     * 
+ * + * bytes codec_config = 30; + * @return The codecConfig. + */ + @java.lang.Override + public com.google.protobuf.ByteString getCodecConfig() { + return codecConfig_; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (trackId_ != 0) { + output.writeUInt32(1, trackId_); + } + if (kind_ != cmvr.quic_edge.v1.QuicEdge.MediaKind.MEDIA_KIND_UNSPECIFIED.getNumber()) { + output.writeEnum(2, kind_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deviceId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, deviceId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(codec_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 4, codec_); + } + if (codecGeneration_ != 0L) { + output.writeUInt64(5, codecGeneration_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sourceTrackId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 6, sourceTrackId_); + } + if (codecGenerationToken_ != 0) { + output.writeUInt32(7, codecGenerationToken_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(payloadFormat_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 8, payloadFormat_); + } + if (width_ != 0) { + output.writeUInt32(10, width_); + } + if (height_ != 0) { + output.writeUInt32(11, height_); + } + if (framesPerSecond_ != 0) { + output.writeUInt32(12, framesPerSecond_); + } + if (sampleRate_ != 0) { + output.writeUInt32(20, sampleRate_); + } + if (channels_ != 0) { + output.writeUInt32(21, channels_); + } + if (!codecConfig_.isEmpty()) { + output.writeBytes(30, codecConfig_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (trackId_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(1, trackId_); + } + if (kind_ != cmvr.quic_edge.v1.QuicEdge.MediaKind.MEDIA_KIND_UNSPECIFIED.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(2, kind_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deviceId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, deviceId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(codec_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, codec_); + } + if (codecGeneration_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeUInt64Size(5, codecGeneration_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sourceTrackId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, sourceTrackId_); + } + if (codecGenerationToken_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(7, codecGenerationToken_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(payloadFormat_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(8, payloadFormat_); + } + if (width_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(10, width_); + } + if (height_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(11, height_); + } + if (framesPerSecond_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(12, framesPerSecond_); + } + if (sampleRate_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(20, sampleRate_); + } + if (channels_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(21, channels_); + } + if (!codecConfig_.isEmpty()) { + size += com.google.protobuf.CodedOutputStream + .computeBytesSize(30, codecConfig_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor)) { + return super.equals(obj); + } + cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor other = (cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor) obj; + + if (getTrackId() + != other.getTrackId()) return false; + if (kind_ != other.kind_) return false; + if (!getDeviceId() + .equals(other.getDeviceId())) return false; + if (!getCodec() + .equals(other.getCodec())) return false; + if (getCodecGeneration() + != other.getCodecGeneration()) return false; + if (!getSourceTrackId() + .equals(other.getSourceTrackId())) return false; + if (getCodecGenerationToken() + != other.getCodecGenerationToken()) return false; + if (!getPayloadFormat() + .equals(other.getPayloadFormat())) return false; + if (getWidth() + != other.getWidth()) return false; + if (getHeight() + != other.getHeight()) return false; + if (getFramesPerSecond() + != other.getFramesPerSecond()) return false; + if (getSampleRate() + != other.getSampleRate()) return false; + if (getChannels() + != other.getChannels()) return false; + if (!getCodecConfig() + .equals(other.getCodecConfig())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + TRACK_ID_FIELD_NUMBER; + hash = (53 * hash) + getTrackId(); + hash = (37 * hash) + KIND_FIELD_NUMBER; + hash = (53 * hash) + kind_; + hash = (37 * hash) + DEVICE_ID_FIELD_NUMBER; + hash = (53 * hash) + getDeviceId().hashCode(); + hash = (37 * hash) + CODEC_FIELD_NUMBER; + hash = (53 * hash) + getCodec().hashCode(); + hash = (37 * hash) + CODEC_GENERATION_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getCodecGeneration()); + hash = (37 * hash) + SOURCE_TRACK_ID_FIELD_NUMBER; + hash = (53 * hash) + getSourceTrackId().hashCode(); + hash = (37 * hash) + CODEC_GENERATION_TOKEN_FIELD_NUMBER; + hash = (53 * hash) + getCodecGenerationToken(); + hash = (37 * hash) + PAYLOAD_FORMAT_FIELD_NUMBER; + hash = (53 * hash) + getPayloadFormat().hashCode(); + hash = (37 * hash) + WIDTH_FIELD_NUMBER; + hash = (53 * hash) + getWidth(); + hash = (37 * hash) + HEIGHT_FIELD_NUMBER; + hash = (53 * hash) + getHeight(); + hash = (37 * hash) + FRAMES_PER_SECOND_FIELD_NUMBER; + hash = (53 * hash) + getFramesPerSecond(); + hash = (37 * hash) + SAMPLE_RATE_FIELD_NUMBER; + hash = (53 * hash) + getSampleRate(); + hash = (37 * hash) + CHANNELS_FIELD_NUMBER; + hash = (53 * hash) + getChannels(); + hash = (37 * hash) + CODEC_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getCodecConfig().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code cmvr.quic_edge.v1.MediaTrackDescriptor} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:cmvr.quic_edge.v1.MediaTrackDescriptor) + cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptorOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_MediaTrackDescriptor_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_MediaTrackDescriptor_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor.class, cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor.Builder.class); + } + + // Construct using cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + trackId_ = 0; + kind_ = 0; + deviceId_ = ""; + codec_ = ""; + codecGeneration_ = 0L; + sourceTrackId_ = ""; + codecGenerationToken_ = 0; + payloadFormat_ = ""; + width_ = 0; + height_ = 0; + framesPerSecond_ = 0; + sampleRate_ = 0; + channels_ = 0; + codecConfig_ = com.google.protobuf.ByteString.EMPTY; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_MediaTrackDescriptor_descriptor; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor getDefaultInstanceForType() { + return cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor.getDefaultInstance(); + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor build() { + cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor buildPartial() { + cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor result = new cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.trackId_ = trackId_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.kind_ = kind_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.deviceId_ = deviceId_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.codec_ = codec_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.codecGeneration_ = codecGeneration_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.sourceTrackId_ = sourceTrackId_; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.codecGenerationToken_ = codecGenerationToken_; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.payloadFormat_ = payloadFormat_; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + result.width_ = width_; + } + if (((from_bitField0_ & 0x00000200) != 0)) { + result.height_ = height_; + } + if (((from_bitField0_ & 0x00000400) != 0)) { + result.framesPerSecond_ = framesPerSecond_; + } + if (((from_bitField0_ & 0x00000800) != 0)) { + result.sampleRate_ = sampleRate_; + } + if (((from_bitField0_ & 0x00001000) != 0)) { + result.channels_ = channels_; + } + if (((from_bitField0_ & 0x00002000) != 0)) { + result.codecConfig_ = codecConfig_; + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor) { + return mergeFrom((cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor other) { + if (other == cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor.getDefaultInstance()) return this; + if (other.getTrackId() != 0) { + setTrackId(other.getTrackId()); + } + if (other.kind_ != 0) { + setKindValue(other.getKindValue()); + } + if (!other.getDeviceId().isEmpty()) { + deviceId_ = other.deviceId_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (!other.getCodec().isEmpty()) { + codec_ = other.codec_; + bitField0_ |= 0x00000008; + onChanged(); + } + if (other.getCodecGeneration() != 0L) { + setCodecGeneration(other.getCodecGeneration()); + } + if (!other.getSourceTrackId().isEmpty()) { + sourceTrackId_ = other.sourceTrackId_; + bitField0_ |= 0x00000020; + onChanged(); + } + if (other.getCodecGenerationToken() != 0) { + setCodecGenerationToken(other.getCodecGenerationToken()); + } + if (!other.getPayloadFormat().isEmpty()) { + payloadFormat_ = other.payloadFormat_; + bitField0_ |= 0x00000080; + onChanged(); + } + if (other.getWidth() != 0) { + setWidth(other.getWidth()); + } + if (other.getHeight() != 0) { + setHeight(other.getHeight()); + } + if (other.getFramesPerSecond() != 0) { + setFramesPerSecond(other.getFramesPerSecond()); + } + if (other.getSampleRate() != 0) { + setSampleRate(other.getSampleRate()); + } + if (other.getChannels() != 0) { + setChannels(other.getChannels()); + } + if (other.getCodecConfig() != com.google.protobuf.ByteString.EMPTY) { + setCodecConfig(other.getCodecConfig()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: { + trackId_ = input.readUInt32(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 16: { + kind_ = input.readEnum(); + bitField0_ |= 0x00000002; + break; + } // case 16 + case 26: { + deviceId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 34: { + codec_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000008; + break; + } // case 34 + case 40: { + codecGeneration_ = input.readUInt64(); + bitField0_ |= 0x00000010; + break; + } // case 40 + case 50: { + sourceTrackId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000020; + break; + } // case 50 + case 56: { + codecGenerationToken_ = input.readUInt32(); + bitField0_ |= 0x00000040; + break; + } // case 56 + case 66: { + payloadFormat_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000080; + break; + } // case 66 + case 80: { + width_ = input.readUInt32(); + bitField0_ |= 0x00000100; + break; + } // case 80 + case 88: { + height_ = input.readUInt32(); + bitField0_ |= 0x00000200; + break; + } // case 88 + case 96: { + framesPerSecond_ = input.readUInt32(); + bitField0_ |= 0x00000400; + break; + } // case 96 + case 160: { + sampleRate_ = input.readUInt32(); + bitField0_ |= 0x00000800; + break; + } // case 160 + case 168: { + channels_ = input.readUInt32(); + bitField0_ |= 0x00001000; + break; + } // case 168 + case 242: { + codecConfig_ = input.readBytes(); + bitField0_ |= 0x00002000; + break; + } // case 242 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private int trackId_ ; + /** + * uint32 track_id = 1; + * @return The trackId. + */ + @java.lang.Override + public int getTrackId() { + return trackId_; + } + /** + * uint32 track_id = 1; + * @param value The trackId to set. + * @return This builder for chaining. + */ + public Builder setTrackId(int value) { + + trackId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * uint32 track_id = 1; + * @return This builder for chaining. + */ + public Builder clearTrackId() { + bitField0_ = (bitField0_ & ~0x00000001); + trackId_ = 0; + onChanged(); + return this; + } + + private int kind_ = 0; + /** + * .cmvr.quic_edge.v1.MediaKind kind = 2; + * @return The enum numeric value on the wire for kind. + */ + @java.lang.Override public int getKindValue() { + return kind_; + } + /** + * .cmvr.quic_edge.v1.MediaKind kind = 2; + * @param value The enum numeric value on the wire for kind to set. + * @return This builder for chaining. + */ + public Builder setKindValue(int value) { + kind_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * .cmvr.quic_edge.v1.MediaKind kind = 2; + * @return The kind. + */ + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.MediaKind getKind() { + cmvr.quic_edge.v1.QuicEdge.MediaKind result = cmvr.quic_edge.v1.QuicEdge.MediaKind.forNumber(kind_); + return result == null ? cmvr.quic_edge.v1.QuicEdge.MediaKind.UNRECOGNIZED : result; + } + /** + * .cmvr.quic_edge.v1.MediaKind kind = 2; + * @param value The kind to set. + * @return This builder for chaining. + */ + public Builder setKind(cmvr.quic_edge.v1.QuicEdge.MediaKind value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000002; + kind_ = value.getNumber(); + onChanged(); + return this; + } + /** + * .cmvr.quic_edge.v1.MediaKind kind = 2; + * @return This builder for chaining. + */ + public Builder clearKind() { + bitField0_ = (bitField0_ & ~0x00000002); + kind_ = 0; + onChanged(); + return this; + } + + private java.lang.Object deviceId_ = ""; + /** + * string device_id = 3; + * @return The deviceId. + */ + public java.lang.String getDeviceId() { + java.lang.Object ref = deviceId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + deviceId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string device_id = 3; + * @return The bytes for deviceId. + */ + public com.google.protobuf.ByteString + getDeviceIdBytes() { + java.lang.Object ref = deviceId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + deviceId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string device_id = 3; + * @param value The deviceId to set. + * @return This builder for chaining. + */ + public Builder setDeviceId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + deviceId_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * string device_id = 3; + * @return This builder for chaining. + */ + public Builder clearDeviceId() { + deviceId_ = getDefaultInstance().getDeviceId(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + /** + * string device_id = 3; + * @param value The bytes for deviceId to set. + * @return This builder for chaining. + */ + public Builder setDeviceIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + deviceId_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private java.lang.Object codec_ = ""; + /** + * string codec = 4; + * @return The codec. + */ + public java.lang.String getCodec() { + java.lang.Object ref = codec_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + codec_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string codec = 4; + * @return The bytes for codec. + */ + public com.google.protobuf.ByteString + getCodecBytes() { + java.lang.Object ref = codec_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + codec_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string codec = 4; + * @param value The codec to set. + * @return This builder for chaining. + */ + public Builder setCodec( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + codec_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * string codec = 4; + * @return This builder for chaining. + */ + public Builder clearCodec() { + codec_ = getDefaultInstance().getCodec(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + return this; + } + /** + * string codec = 4; + * @param value The bytes for codec to set. + * @return This builder for chaining. + */ + public Builder setCodecBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + codec_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + private long codecGeneration_ ; + /** + * uint64 codec_generation = 5; + * @return The codecGeneration. + */ + @java.lang.Override + public long getCodecGeneration() { + return codecGeneration_; + } + /** + * uint64 codec_generation = 5; + * @param value The codecGeneration to set. + * @return This builder for chaining. + */ + public Builder setCodecGeneration(long value) { + + codecGeneration_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + * uint64 codec_generation = 5; + * @return This builder for chaining. + */ + public Builder clearCodecGeneration() { + bitField0_ = (bitField0_ & ~0x00000010); + codecGeneration_ = 0L; + onChanged(); + return this; + } + + private java.lang.Object sourceTrackId_ = ""; + /** + *
+       * The exact MediaSourceHub track and the 32-bit token repeated in every
+       * DATAGRAM header. The full generation remains on the reliable stream.
+       * 
+ * + * string source_track_id = 6; + * @return The sourceTrackId. + */ + public java.lang.String getSourceTrackId() { + java.lang.Object ref = sourceTrackId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sourceTrackId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + *
+       * The exact MediaSourceHub track and the 32-bit token repeated in every
+       * DATAGRAM header. The full generation remains on the reliable stream.
+       * 
+ * + * string source_track_id = 6; + * @return The bytes for sourceTrackId. + */ + public com.google.protobuf.ByteString + getSourceTrackIdBytes() { + java.lang.Object ref = sourceTrackId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + sourceTrackId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + *
+       * The exact MediaSourceHub track and the 32-bit token repeated in every
+       * DATAGRAM header. The full generation remains on the reliable stream.
+       * 
+ * + * string source_track_id = 6; + * @param value The sourceTrackId to set. + * @return This builder for chaining. + */ + public Builder setSourceTrackId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + sourceTrackId_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + *
+       * The exact MediaSourceHub track and the 32-bit token repeated in every
+       * DATAGRAM header. The full generation remains on the reliable stream.
+       * 
+ * + * string source_track_id = 6; + * @return This builder for chaining. + */ + public Builder clearSourceTrackId() { + sourceTrackId_ = getDefaultInstance().getSourceTrackId(); + bitField0_ = (bitField0_ & ~0x00000020); + onChanged(); + return this; + } + /** + *
+       * The exact MediaSourceHub track and the 32-bit token repeated in every
+       * DATAGRAM header. The full generation remains on the reliable stream.
+       * 
+ * + * string source_track_id = 6; + * @param value The bytes for sourceTrackId to set. + * @return This builder for chaining. + */ + public Builder setSourceTrackIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + sourceTrackId_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + + private int codecGenerationToken_ ; + /** + * uint32 codec_generation_token = 7; + * @return The codecGenerationToken. + */ + @java.lang.Override + public int getCodecGenerationToken() { + return codecGenerationToken_; + } + /** + * uint32 codec_generation_token = 7; + * @param value The codecGenerationToken to set. + * @return This builder for chaining. + */ + public Builder setCodecGenerationToken(int value) { + + codecGenerationToken_ = value; + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + /** + * uint32 codec_generation_token = 7; + * @return This builder for chaining. + */ + public Builder clearCodecGenerationToken() { + bitField0_ = (bitField0_ & ~0x00000040); + codecGenerationToken_ = 0; + onChanged(); + return this; + } + + private java.lang.Object payloadFormat_ = ""; + /** + * string payload_format = 8; + * @return The payloadFormat. + */ + public java.lang.String getPayloadFormat() { + java.lang.Object ref = payloadFormat_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + payloadFormat_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string payload_format = 8; + * @return The bytes for payloadFormat. + */ + public com.google.protobuf.ByteString + getPayloadFormatBytes() { + java.lang.Object ref = payloadFormat_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + payloadFormat_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string payload_format = 8; + * @param value The payloadFormat to set. + * @return This builder for chaining. + */ + public Builder setPayloadFormat( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + payloadFormat_ = value; + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + /** + * string payload_format = 8; + * @return This builder for chaining. + */ + public Builder clearPayloadFormat() { + payloadFormat_ = getDefaultInstance().getPayloadFormat(); + bitField0_ = (bitField0_ & ~0x00000080); + onChanged(); + return this; + } + /** + * string payload_format = 8; + * @param value The bytes for payloadFormat to set. + * @return This builder for chaining. + */ + public Builder setPayloadFormatBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + payloadFormat_ = value; + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + + private int width_ ; + /** + *
+       * Video fields. They are zero for audio tracks.
+       * 
+ * + * uint32 width = 10; + * @return The width. + */ + @java.lang.Override + public int getWidth() { + return width_; + } + /** + *
+       * Video fields. They are zero for audio tracks.
+       * 
+ * + * uint32 width = 10; + * @param value The width to set. + * @return This builder for chaining. + */ + public Builder setWidth(int value) { + + width_ = value; + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + /** + *
+       * Video fields. They are zero for audio tracks.
+       * 
+ * + * uint32 width = 10; + * @return This builder for chaining. + */ + public Builder clearWidth() { + bitField0_ = (bitField0_ & ~0x00000100); + width_ = 0; + onChanged(); + return this; + } + + private int height_ ; + /** + * uint32 height = 11; + * @return The height. + */ + @java.lang.Override + public int getHeight() { + return height_; + } + /** + * uint32 height = 11; + * @param value The height to set. + * @return This builder for chaining. + */ + public Builder setHeight(int value) { + + height_ = value; + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + /** + * uint32 height = 11; + * @return This builder for chaining. + */ + public Builder clearHeight() { + bitField0_ = (bitField0_ & ~0x00000200); + height_ = 0; + onChanged(); + return this; + } + + private int framesPerSecond_ ; + /** + * uint32 frames_per_second = 12; + * @return The framesPerSecond. + */ + @java.lang.Override + public int getFramesPerSecond() { + return framesPerSecond_; + } + /** + * uint32 frames_per_second = 12; + * @param value The framesPerSecond to set. + * @return This builder for chaining. + */ + public Builder setFramesPerSecond(int value) { + + framesPerSecond_ = value; + bitField0_ |= 0x00000400; + onChanged(); + return this; + } + /** + * uint32 frames_per_second = 12; + * @return This builder for chaining. + */ + public Builder clearFramesPerSecond() { + bitField0_ = (bitField0_ & ~0x00000400); + framesPerSecond_ = 0; + onChanged(); + return this; + } + + private int sampleRate_ ; + /** + *
+       * Audio fields. They are zero for video tracks.
+       * 
+ * + * uint32 sample_rate = 20; + * @return The sampleRate. + */ + @java.lang.Override + public int getSampleRate() { + return sampleRate_; + } + /** + *
+       * Audio fields. They are zero for video tracks.
+       * 
+ * + * uint32 sample_rate = 20; + * @param value The sampleRate to set. + * @return This builder for chaining. + */ + public Builder setSampleRate(int value) { + + sampleRate_ = value; + bitField0_ |= 0x00000800; + onChanged(); + return this; + } + /** + *
+       * Audio fields. They are zero for video tracks.
+       * 
+ * + * uint32 sample_rate = 20; + * @return This builder for chaining. + */ + public Builder clearSampleRate() { + bitField0_ = (bitField0_ & ~0x00000800); + sampleRate_ = 0; + onChanged(); + return this; + } + + private int channels_ ; + /** + * uint32 channels = 21; + * @return The channels. + */ + @java.lang.Override + public int getChannels() { + return channels_; + } + /** + * uint32 channels = 21; + * @param value The channels to set. + * @return This builder for chaining. + */ + public Builder setChannels(int value) { + + channels_ = value; + bitField0_ |= 0x00001000; + onChanged(); + return this; + } + /** + * uint32 channels = 21; + * @return This builder for chaining. + */ + public Builder clearChannels() { + bitField0_ = (bitField0_ & ~0x00001000); + channels_ = 0; + onChanged(); + return this; + } + + private com.google.protobuf.ByteString codecConfig_ = com.google.protobuf.ByteString.EMPTY; + /** + *
+       * Decoder initialization bytes, for example AVCC/HVCC or AudioSpecificConfig.
+       * Existing cmvr-es sources may leave this empty when configuration NAL units
+       * are carried in-band.
+       * 
+ * + * bytes codec_config = 30; + * @return The codecConfig. + */ + @java.lang.Override + public com.google.protobuf.ByteString getCodecConfig() { + return codecConfig_; + } + /** + *
+       * Decoder initialization bytes, for example AVCC/HVCC or AudioSpecificConfig.
+       * Existing cmvr-es sources may leave this empty when configuration NAL units
+       * are carried in-band.
+       * 
+ * + * bytes codec_config = 30; + * @param value The codecConfig to set. + * @return This builder for chaining. + */ + public Builder setCodecConfig(com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + codecConfig_ = value; + bitField0_ |= 0x00002000; + onChanged(); + return this; + } + /** + *
+       * Decoder initialization bytes, for example AVCC/HVCC or AudioSpecificConfig.
+       * Existing cmvr-es sources may leave this empty when configuration NAL units
+       * are carried in-band.
+       * 
+ * + * bytes codec_config = 30; + * @return This builder for chaining. + */ + public Builder clearCodecConfig() { + bitField0_ = (bitField0_ & ~0x00002000); + codecConfig_ = getDefaultInstance().getCodecConfig(); + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:cmvr.quic_edge.v1.MediaTrackDescriptor) + } + + // @@protoc_insertion_point(class_scope:cmvr.quic_edge.v1.MediaTrackDescriptor) + private static final cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor(); + } + + public static cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public MediaTrackDescriptor parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.MediaTrackDescriptor getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface MediaSessionCloseOrBuilder extends + // @@protoc_insertion_point(interface_extends:cmvr.quic_edge.v1.MediaSessionClose) + com.google.protobuf.MessageOrBuilder { + + /** + * string reason = 1; + * @return The reason. + */ + java.lang.String getReason(); + /** + * string reason = 1; + * @return The bytes for reason. + */ + com.google.protobuf.ByteString + getReasonBytes(); + + /** + * string session_id = 2; + * @return The sessionId. + */ + java.lang.String getSessionId(); + /** + * string session_id = 2; + * @return The bytes for sessionId. + */ + com.google.protobuf.ByteString + getSessionIdBytes(); + + /** + * uint64 session_epoch = 3; + * @return The sessionEpoch. + */ + long getSessionEpoch(); + } + /** + * Protobuf type {@code cmvr.quic_edge.v1.MediaSessionClose} + */ + public static final class MediaSessionClose extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:cmvr.quic_edge.v1.MediaSessionClose) + MediaSessionCloseOrBuilder { + private static final long serialVersionUID = 0L; + // Use MediaSessionClose.newBuilder() to construct. + private MediaSessionClose(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private MediaSessionClose() { + reason_ = ""; + sessionId_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new MediaSessionClose(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_MediaSessionClose_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_MediaSessionClose_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.MediaSessionClose.class, cmvr.quic_edge.v1.QuicEdge.MediaSessionClose.Builder.class); + } + + public static final int REASON_FIELD_NUMBER = 1; + @SuppressWarnings("serial") + private volatile java.lang.Object reason_ = ""; + /** + * string reason = 1; + * @return The reason. + */ + @java.lang.Override + public java.lang.String getReason() { + java.lang.Object ref = reason_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + reason_ = s; + return s; + } + } + /** + * string reason = 1; + * @return The bytes for reason. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getReasonBytes() { + java.lang.Object ref = reason_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + reason_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SESSION_ID_FIELD_NUMBER = 2; + @SuppressWarnings("serial") + private volatile java.lang.Object sessionId_ = ""; + /** + * string session_id = 2; + * @return The sessionId. + */ + @java.lang.Override + public java.lang.String getSessionId() { + java.lang.Object ref = sessionId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sessionId_ = s; + return s; + } + } + /** + * string session_id = 2; + * @return The bytes for sessionId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getSessionIdBytes() { + java.lang.Object ref = sessionId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + sessionId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SESSION_EPOCH_FIELD_NUMBER = 3; + private long sessionEpoch_ = 0L; + /** + * uint64 session_epoch = 3; + * @return The sessionEpoch. + */ + @java.lang.Override + public long getSessionEpoch() { + return sessionEpoch_; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(reason_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, reason_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sessionId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, sessionId_); + } + if (sessionEpoch_ != 0L) { + output.writeUInt64(3, sessionEpoch_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(reason_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, reason_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sessionId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, sessionId_); + } + if (sessionEpoch_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeUInt64Size(3, sessionEpoch_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof cmvr.quic_edge.v1.QuicEdge.MediaSessionClose)) { + return super.equals(obj); + } + cmvr.quic_edge.v1.QuicEdge.MediaSessionClose other = (cmvr.quic_edge.v1.QuicEdge.MediaSessionClose) obj; + + if (!getReason() + .equals(other.getReason())) return false; + if (!getSessionId() + .equals(other.getSessionId())) return false; + if (getSessionEpoch() + != other.getSessionEpoch()) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + REASON_FIELD_NUMBER; + hash = (53 * hash) + getReason().hashCode(); + hash = (37 * hash) + SESSION_ID_FIELD_NUMBER; + hash = (53 * hash) + getSessionId().hashCode(); + hash = (37 * hash) + SESSION_EPOCH_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getSessionEpoch()); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionClose parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionClose parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionClose parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionClose parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionClose parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionClose parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionClose parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionClose parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionClose parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionClose parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionClose parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionClose parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(cmvr.quic_edge.v1.QuicEdge.MediaSessionClose prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code cmvr.quic_edge.v1.MediaSessionClose} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:cmvr.quic_edge.v1.MediaSessionClose) + cmvr.quic_edge.v1.QuicEdge.MediaSessionCloseOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_MediaSessionClose_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_MediaSessionClose_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.MediaSessionClose.class, cmvr.quic_edge.v1.QuicEdge.MediaSessionClose.Builder.class); + } + + // Construct using cmvr.quic_edge.v1.QuicEdge.MediaSessionClose.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + reason_ = ""; + sessionId_ = ""; + sessionEpoch_ = 0L; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_MediaSessionClose_descriptor; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.MediaSessionClose getDefaultInstanceForType() { + return cmvr.quic_edge.v1.QuicEdge.MediaSessionClose.getDefaultInstance(); + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.MediaSessionClose build() { + cmvr.quic_edge.v1.QuicEdge.MediaSessionClose result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.MediaSessionClose buildPartial() { + cmvr.quic_edge.v1.QuicEdge.MediaSessionClose result = new cmvr.quic_edge.v1.QuicEdge.MediaSessionClose(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(cmvr.quic_edge.v1.QuicEdge.MediaSessionClose result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.reason_ = reason_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.sessionId_ = sessionId_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.sessionEpoch_ = sessionEpoch_; + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof cmvr.quic_edge.v1.QuicEdge.MediaSessionClose) { + return mergeFrom((cmvr.quic_edge.v1.QuicEdge.MediaSessionClose)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(cmvr.quic_edge.v1.QuicEdge.MediaSessionClose other) { + if (other == cmvr.quic_edge.v1.QuicEdge.MediaSessionClose.getDefaultInstance()) return this; + if (!other.getReason().isEmpty()) { + reason_ = other.reason_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getSessionId().isEmpty()) { + sessionId_ = other.sessionId_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (other.getSessionEpoch() != 0L) { + setSessionEpoch(other.getSessionEpoch()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + reason_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: { + sessionId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 24: { + sessionEpoch_ = input.readUInt64(); + bitField0_ |= 0x00000004; + break; + } // case 24 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private java.lang.Object reason_ = ""; + /** + * string reason = 1; + * @return The reason. + */ + public java.lang.String getReason() { + java.lang.Object ref = reason_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + reason_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string reason = 1; + * @return The bytes for reason. + */ + public com.google.protobuf.ByteString + getReasonBytes() { + java.lang.Object ref = reason_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + reason_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string reason = 1; + * @param value The reason to set. + * @return This builder for chaining. + */ + public Builder setReason( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + reason_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * string reason = 1; + * @return This builder for chaining. + */ + public Builder clearReason() { + reason_ = getDefaultInstance().getReason(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * string reason = 1; + * @param value The bytes for reason to set. + * @return This builder for chaining. + */ + public Builder setReasonBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + reason_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object sessionId_ = ""; + /** + * string session_id = 2; + * @return The sessionId. + */ + public java.lang.String getSessionId() { + java.lang.Object ref = sessionId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sessionId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string session_id = 2; + * @return The bytes for sessionId. + */ + public com.google.protobuf.ByteString + getSessionIdBytes() { + java.lang.Object ref = sessionId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + sessionId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string session_id = 2; + * @param value The sessionId to set. + * @return This builder for chaining. + */ + public Builder setSessionId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + sessionId_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * string session_id = 2; + * @return This builder for chaining. + */ + public Builder clearSessionId() { + sessionId_ = getDefaultInstance().getSessionId(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + /** + * string session_id = 2; + * @param value The bytes for sessionId to set. + * @return This builder for chaining. + */ + public Builder setSessionIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + sessionId_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private long sessionEpoch_ ; + /** + * uint64 session_epoch = 3; + * @return The sessionEpoch. + */ + @java.lang.Override + public long getSessionEpoch() { + return sessionEpoch_; + } + /** + * uint64 session_epoch = 3; + * @param value The sessionEpoch to set. + * @return This builder for chaining. + */ + public Builder setSessionEpoch(long value) { + + sessionEpoch_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * uint64 session_epoch = 3; + * @return This builder for chaining. + */ + public Builder clearSessionEpoch() { + bitField0_ = (bitField0_ & ~0x00000004); + sessionEpoch_ = 0L; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:cmvr.quic_edge.v1.MediaSessionClose) + } + + // @@protoc_insertion_point(class_scope:cmvr.quic_edge.v1.MediaSessionClose) + private static final cmvr.quic_edge.v1.QuicEdge.MediaSessionClose DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new cmvr.quic_edge.v1.QuicEdge.MediaSessionClose(); + } + + public static cmvr.quic_edge.v1.QuicEdge.MediaSessionClose getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public MediaSessionClose parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.MediaSessionClose getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface ProtocolErrorOrBuilder extends + // @@protoc_insertion_point(interface_extends:cmvr.quic_edge.v1.ProtocolError) + com.google.protobuf.MessageOrBuilder { + + /** + * uint32 code = 1; + * @return The code. + */ + int getCode(); + + /** + * string message = 2; + * @return The message. + */ + java.lang.String getMessage(); + /** + * string message = 2; + * @return The bytes for message. + */ + com.google.protobuf.ByteString + getMessageBytes(); + + /** + * uint64 related_message_sequence = 3; + * @return The relatedMessageSequence. + */ + long getRelatedMessageSequence(); + + /** + * bool fatal = 4; + * @return The fatal. + */ + boolean getFatal(); + } + /** + * Protobuf type {@code cmvr.quic_edge.v1.ProtocolError} + */ + public static final class ProtocolError extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:cmvr.quic_edge.v1.ProtocolError) + ProtocolErrorOrBuilder { + private static final long serialVersionUID = 0L; + // Use ProtocolError.newBuilder() to construct. + private ProtocolError(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private ProtocolError() { + message_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new ProtocolError(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_ProtocolError_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_ProtocolError_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.ProtocolError.class, cmvr.quic_edge.v1.QuicEdge.ProtocolError.Builder.class); + } + + public static final int CODE_FIELD_NUMBER = 1; + private int code_ = 0; + /** + * uint32 code = 1; + * @return The code. + */ + @java.lang.Override + public int getCode() { + return code_; + } + + public static final int MESSAGE_FIELD_NUMBER = 2; + @SuppressWarnings("serial") + private volatile java.lang.Object message_ = ""; + /** + * string message = 2; + * @return The message. + */ + @java.lang.Override + public java.lang.String getMessage() { + java.lang.Object ref = message_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + message_ = s; + return s; + } + } + /** + * string message = 2; + * @return The bytes for message. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getMessageBytes() { + java.lang.Object ref = message_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + message_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int RELATED_MESSAGE_SEQUENCE_FIELD_NUMBER = 3; + private long relatedMessageSequence_ = 0L; + /** + * uint64 related_message_sequence = 3; + * @return The relatedMessageSequence. + */ + @java.lang.Override + public long getRelatedMessageSequence() { + return relatedMessageSequence_; + } + + public static final int FATAL_FIELD_NUMBER = 4; + private boolean fatal_ = false; + /** + * bool fatal = 4; + * @return The fatal. + */ + @java.lang.Override + public boolean getFatal() { + return fatal_; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (code_ != 0) { + output.writeUInt32(1, code_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(message_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, message_); + } + if (relatedMessageSequence_ != 0L) { + output.writeUInt64(3, relatedMessageSequence_); + } + if (fatal_ != false) { + output.writeBool(4, fatal_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (code_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(1, code_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(message_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, message_); + } + if (relatedMessageSequence_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeUInt64Size(3, relatedMessageSequence_); + } + if (fatal_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(4, fatal_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof cmvr.quic_edge.v1.QuicEdge.ProtocolError)) { + return super.equals(obj); + } + cmvr.quic_edge.v1.QuicEdge.ProtocolError other = (cmvr.quic_edge.v1.QuicEdge.ProtocolError) obj; + + if (getCode() + != other.getCode()) return false; + if (!getMessage() + .equals(other.getMessage())) return false; + if (getRelatedMessageSequence() + != other.getRelatedMessageSequence()) return false; + if (getFatal() + != other.getFatal()) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + CODE_FIELD_NUMBER; + hash = (53 * hash) + getCode(); + hash = (37 * hash) + MESSAGE_FIELD_NUMBER; + hash = (53 * hash) + getMessage().hashCode(); + hash = (37 * hash) + RELATED_MESSAGE_SEQUENCE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getRelatedMessageSequence()); + hash = (37 * hash) + FATAL_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getFatal()); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static cmvr.quic_edge.v1.QuicEdge.ProtocolError parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.ProtocolError parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.ProtocolError parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.ProtocolError parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.ProtocolError parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static cmvr.quic_edge.v1.QuicEdge.ProtocolError parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.ProtocolError parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.ProtocolError parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static cmvr.quic_edge.v1.QuicEdge.ProtocolError parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static cmvr.quic_edge.v1.QuicEdge.ProtocolError parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static cmvr.quic_edge.v1.QuicEdge.ProtocolError parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static cmvr.quic_edge.v1.QuicEdge.ProtocolError parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(cmvr.quic_edge.v1.QuicEdge.ProtocolError prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code cmvr.quic_edge.v1.ProtocolError} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:cmvr.quic_edge.v1.ProtocolError) + cmvr.quic_edge.v1.QuicEdge.ProtocolErrorOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_ProtocolError_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_ProtocolError_fieldAccessorTable + .ensureFieldAccessorsInitialized( + cmvr.quic_edge.v1.QuicEdge.ProtocolError.class, cmvr.quic_edge.v1.QuicEdge.ProtocolError.Builder.class); + } + + // Construct using cmvr.quic_edge.v1.QuicEdge.ProtocolError.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + code_ = 0; + message_ = ""; + relatedMessageSequence_ = 0L; + fatal_ = false; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return cmvr.quic_edge.v1.QuicEdge.internal_static_cmvr_quic_edge_v1_ProtocolError_descriptor; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.ProtocolError getDefaultInstanceForType() { + return cmvr.quic_edge.v1.QuicEdge.ProtocolError.getDefaultInstance(); + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.ProtocolError build() { + cmvr.quic_edge.v1.QuicEdge.ProtocolError result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.ProtocolError buildPartial() { + cmvr.quic_edge.v1.QuicEdge.ProtocolError result = new cmvr.quic_edge.v1.QuicEdge.ProtocolError(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(cmvr.quic_edge.v1.QuicEdge.ProtocolError result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.code_ = code_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.message_ = message_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.relatedMessageSequence_ = relatedMessageSequence_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.fatal_ = fatal_; + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof cmvr.quic_edge.v1.QuicEdge.ProtocolError) { + return mergeFrom((cmvr.quic_edge.v1.QuicEdge.ProtocolError)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(cmvr.quic_edge.v1.QuicEdge.ProtocolError other) { + if (other == cmvr.quic_edge.v1.QuicEdge.ProtocolError.getDefaultInstance()) return this; + if (other.getCode() != 0) { + setCode(other.getCode()); + } + if (!other.getMessage().isEmpty()) { + message_ = other.message_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (other.getRelatedMessageSequence() != 0L) { + setRelatedMessageSequence(other.getRelatedMessageSequence()); + } + if (other.getFatal() != false) { + setFatal(other.getFatal()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: { + code_ = input.readUInt32(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 18: { + message_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 24: { + relatedMessageSequence_ = input.readUInt64(); + bitField0_ |= 0x00000004; + break; + } // case 24 + case 32: { + fatal_ = input.readBool(); + bitField0_ |= 0x00000008; + break; + } // case 32 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private int code_ ; + /** + * uint32 code = 1; + * @return The code. + */ + @java.lang.Override + public int getCode() { + return code_; + } + /** + * uint32 code = 1; + * @param value The code to set. + * @return This builder for chaining. + */ + public Builder setCode(int value) { + + code_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * uint32 code = 1; + * @return This builder for chaining. + */ + public Builder clearCode() { + bitField0_ = (bitField0_ & ~0x00000001); + code_ = 0; + onChanged(); + return this; + } + + private java.lang.Object message_ = ""; + /** + * string message = 2; + * @return The message. + */ + public java.lang.String getMessage() { + java.lang.Object ref = message_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + message_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string message = 2; + * @return The bytes for message. + */ + public com.google.protobuf.ByteString + getMessageBytes() { + java.lang.Object ref = message_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + message_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string message = 2; + * @param value The message to set. + * @return This builder for chaining. + */ + public Builder setMessage( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + message_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * string message = 2; + * @return This builder for chaining. + */ + public Builder clearMessage() { + message_ = getDefaultInstance().getMessage(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + /** + * string message = 2; + * @param value The bytes for message to set. + * @return This builder for chaining. + */ + public Builder setMessageBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + message_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private long relatedMessageSequence_ ; + /** + * uint64 related_message_sequence = 3; + * @return The relatedMessageSequence. + */ + @java.lang.Override + public long getRelatedMessageSequence() { + return relatedMessageSequence_; + } + /** + * uint64 related_message_sequence = 3; + * @param value The relatedMessageSequence to set. + * @return This builder for chaining. + */ + public Builder setRelatedMessageSequence(long value) { + + relatedMessageSequence_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * uint64 related_message_sequence = 3; + * @return This builder for chaining. + */ + public Builder clearRelatedMessageSequence() { + bitField0_ = (bitField0_ & ~0x00000004); + relatedMessageSequence_ = 0L; + onChanged(); + return this; + } + + private boolean fatal_ ; + /** + * bool fatal = 4; + * @return The fatal. + */ + @java.lang.Override + public boolean getFatal() { + return fatal_; + } + /** + * bool fatal = 4; + * @param value The fatal to set. + * @return This builder for chaining. + */ + public Builder setFatal(boolean value) { + + fatal_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * bool fatal = 4; + * @return This builder for chaining. + */ + public Builder clearFatal() { + bitField0_ = (bitField0_ & ~0x00000008); + fatal_ = false; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:cmvr.quic_edge.v1.ProtocolError) + } + + // @@protoc_insertion_point(class_scope:cmvr.quic_edge.v1.ProtocolError) + private static final cmvr.quic_edge.v1.QuicEdge.ProtocolError DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new cmvr.quic_edge.v1.QuicEdge.ProtocolError(); + } + + public static cmvr.quic_edge.v1.QuicEdge.ProtocolError getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public ProtocolError parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public cmvr.quic_edge.v1.QuicEdge.ProtocolError getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_cmvr_quic_edge_v1_EdgeControlEnvelope_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_cmvr_quic_edge_v1_EdgeControlEnvelope_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_cmvr_quic_edge_v1_NetworkInterfaceAddress_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_cmvr_quic_edge_v1_NetworkInterfaceAddress_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_cmvr_quic_edge_v1_GrpcEndpoint_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_cmvr_quic_edge_v1_GrpcEndpoint_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_cmvr_quic_edge_v1_ManagedDeviceStatus_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_cmvr_quic_edge_v1_ManagedDeviceStatus_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_cmvr_quic_edge_v1_DeviceManagerSnapshot_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_cmvr_quic_edge_v1_DeviceManagerSnapshot_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_cmvr_quic_edge_v1_NodeDescriptor_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_cmvr_quic_edge_v1_NodeDescriptor_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_cmvr_quic_edge_v1_NodeRegisterRequest_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_cmvr_quic_edge_v1_NodeRegisterRequest_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_cmvr_quic_edge_v1_NodeRegisterResponse_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_cmvr_quic_edge_v1_NodeRegisterResponse_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_cmvr_quic_edge_v1_NodeHeartbeat_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_cmvr_quic_edge_v1_NodeHeartbeat_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_cmvr_quic_edge_v1_NodeHeartbeatAck_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_cmvr_quic_edge_v1_NodeHeartbeatAck_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_cmvr_quic_edge_v1_MediaSessionOpen_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_cmvr_quic_edge_v1_MediaSessionOpen_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_cmvr_quic_edge_v1_MediaTrackDescriptor_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_cmvr_quic_edge_v1_MediaTrackDescriptor_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_cmvr_quic_edge_v1_MediaSessionClose_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_cmvr_quic_edge_v1_MediaSessionClose_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_cmvr_quic_edge_v1_ProtocolError_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_cmvr_quic_edge_v1_ProtocolError_fieldAccessorTable; + + public static com.google.protobuf.Descriptors.FileDescriptor + getDescriptor() { + return descriptor; + } + private static com.google.protobuf.Descriptors.FileDescriptor + descriptor; + static { + java.lang.String[] descriptorData = { + "\n!cmvr/quic_edge/v1/quic_edge.proto\022\021cmv" + + "r.quic_edge.v1\"\366\004\n\023EdgeControlEnvelope\022\030" + + "\n\020protocol_version\030\001 \001(\r\022\030\n\020message_sequ" + + "ence\030\002 \001(\004\022G\n\025node_register_request\030\n \001(" + + "\0132&.cmvr.quic_edge.v1.NodeRegisterReques" + + "tH\000\022I\n\026node_register_response\030\013 \001(\0132\'.cm" + + "vr.quic_edge.v1.NodeRegisterResponseH\000\022:" + + "\n\016node_heartbeat\030\014 \001(\0132 .cmvr.quic_edge." + + "v1.NodeHeartbeatH\000\022A\n\022node_heartbeat_ack" + + "\030\r \001(\0132#.cmvr.quic_edge.v1.NodeHeartbeat" + + "AckH\000\022A\n\022media_session_open\030\024 \001(\0132#.cmvr" + + ".quic_edge.v1.MediaSessionOpenH\000\022I\n\026medi" + + "a_track_descriptor\030\025 \001(\0132\'.cmvr.quic_edg" + + "e.v1.MediaTrackDescriptorH\000\022C\n\023media_ses" + + "sion_close\030\026 \001(\0132$.cmvr.quic_edge.v1.Med" + + "iaSessionCloseH\000\022:\n\016protocol_error\030\036 \001(\013" + + "2 .cmvr.quic_edge.v1.ProtocolErrorH\000B\t\n\007" + + "payload\"\204\002\n\027NetworkInterfaceAddress\022\026\n\016i" + + "nterface_name\030\001 \001(\t\022\022\n\nip_address\030\002 \001(\t\022" + + "H\n\006family\030\003 \001(\01628.cmvr.quic_edge.v1.Netw" + + "orkInterfaceAddress.AddressFamily\022\020\n\010loo" + + "pback\030\004 \001(\010\"a\n\rAddressFamily\022\036\n\032ADDRESS_" + + "FAMILY_UNSPECIFIED\020\000\022\027\n\023ADDRESS_FAMILY_I" + + "PV4\020\001\022\027\n\023ADDRESS_FAMILY_IPV6\020\002\"7\n\014GrpcEn" + + "dpoint\022\014\n\004host\030\001 \001(\t\022\014\n\004port\030\002 \001(\r\022\013\n\003tl" + + "s\030\003 \001(\010\"\273\002\n\023ManagedDeviceStatus\022\021\n\tdevic" + + "e_id\030\001 \001(\t\022+\n\004kind\030\002 \001(\0162\035.cmvr.quic_edg" + + "e.v1.DeviceKind\022\021\n\ttype_name\030\003 \001(\t\022\017\n\007en" + + "abled\030\004 \001(\010\022<\n\rmanager_state\030\005 \001(\0162%.cmv" + + "r.quic_edge.v1.ManagedDeviceState\0225\n\006hea" + + "lth\030\006 \001(\0162%.cmvr.quic_edge.v1.DeviceHeal" + + "thStatus\022\021\n\thas_error\030\007 \001(\010\022\025\n\rerror_mes" + + "sage\030\010 \001(\t\022!\n\031status_updated_at_unix_ms\030" + + "\t \001(\004\"\270\001\n\025DeviceManagerSnapshot\022\024\n\014manag" + + "er_name\030\001 \001(\t\022\027\n\017manager_version\030\002 \001(\t\022\033" + + "\n\023manager_description\030\003 \001(\t\0227\n\007devices\030\004" + + " \003(\0132&.cmvr.quic_edge.v1.ManagedDeviceSt" + + "atus\022\032\n\022sampled_at_unix_ms\030\005 \001(\004\"\334\001\n\016Nod" + + "eDescriptor\022\017\n\007node_id\030\001 \001(\t\022\017\n\007boot_id\030" + + "\002 \001(\t\022\030\n\020software_version\030\003 \001(\t\022D\n\020local" + + "_interfaces\030\004 \003(\0132*.cmvr.quic_edge.v1.Ne" + + "tworkInterfaceAddress\0226\n\rgrpc_endpoint\030\005" + + " \001(\0132\037.cmvr.quic_edge.v1.GrpcEndpoint\022\020\n" + + "\010robot_id\030\006 \001(\t\"_\n\023NodeRegisterRequest\022/" + + "\n\004node\030\001 \001(\0132!.cmvr.quic_edge.v1.NodeDes" + + "criptor\022\027\n\017sent_at_unix_ms\030\002 \001(\004\"\210\001\n\024Nod" + + "eRegisterResponse\022\020\n\010accepted\030\001 \001(\010\022\022\n\ns" + + "ession_id\030\002 \001(\t\022\017\n\007message\030\003 \001(\t\022\035\n\025hear" + + "tbeat_interval_ms\030\004 \001(\r\022\032\n\022observed_sour" + + "ce_ip\030\005 \001(\t\"\334\002\n\rNodeHeartbeat\022\017\n\007node_id" + + "\030\001 \001(\t\022\017\n\007boot_id\030\002 \001(\t\022\022\n\nsession_id\030\003 " + + "\001(\t\022\020\n\010sequence\030\004 \001(\004\022\027\n\017sent_at_unix_ms" + + "\030\005 \001(\004\022\030\n\020software_version\030\006 \001(\t\022D\n\020loca" + + "l_interfaces\030\007 \003(\0132*.cmvr.quic_edge.v1.N" + + "etworkInterfaceAddress\0226\n\rgrpc_endpoint\030" + + "\010 \001(\0132\037.cmvr.quic_edge.v1.GrpcEndpoint\022@" + + "\n\016device_manager\030\t \001(\0132(.cmvr.quic_edge." + + "v1.DeviceManagerSnapshot\022\020\n\010robot_id\030\n \001" + + "(\t\"\241\001\n\020NodeHeartbeatAck\022\020\n\010accepted\030\001 \001(" + + "\010\022\035\n\025acknowledged_sequence\030\002 \001(\004\022\017\n\007mess" + + "age\030\003 \001(\t\022\033\n\023server_time_unix_ms\030\004 \001(\004\022\032" + + "\n\022observed_source_ip\030\005 \001(\t\022\022\n\nsession_id" + + "\030\006 \001(\t\"N\n\020MediaSessionOpen\022\017\n\007node_id\030\001 " + + "\001(\t\022\025\n\rsession_epoch\030\002 \001(\004\022\022\n\nsession_id" + + "\030\003 \001(\t\"\330\002\n\024MediaTrackDescriptor\022\020\n\010track" + + "_id\030\001 \001(\r\022*\n\004kind\030\002 \001(\0162\034.cmvr.quic_edge" + + ".v1.MediaKind\022\021\n\tdevice_id\030\003 \001(\t\022\r\n\005code" + + "c\030\004 \001(\t\022\030\n\020codec_generation\030\005 \001(\004\022\027\n\017sou" + + "rce_track_id\030\006 \001(\t\022\036\n\026codec_generation_t" + + "oken\030\007 \001(\r\022\026\n\016payload_format\030\010 \001(\t\022\r\n\005wi" + + "dth\030\n \001(\r\022\016\n\006height\030\013 \001(\r\022\031\n\021frames_per_" + + "second\030\014 \001(\r\022\023\n\013sample_rate\030\024 \001(\r\022\020\n\010cha" + + "nnels\030\025 \001(\r\022\024\n\014codec_config\030\036 \001(\014\"N\n\021Med" + + "iaSessionClose\022\016\n\006reason\030\001 \001(\t\022\022\n\nsessio" + + "n_id\030\002 \001(\t\022\025\n\rsession_epoch\030\003 \001(\004\"_\n\rPro" + + "tocolError\022\014\n\004code\030\001 \001(\r\022\017\n\007message\030\002 \001(" + + "\t\022 \n\030related_message_sequence\030\003 \001(\004\022\r\n\005f" + + "atal\030\004 \001(\010*\353\002\n\nDeviceKind\022\033\n\027DEVICE_KIND" + + "_UNSPECIFIED\020\000\022\023\n\017DEVICE_KIND_AGV\020\001\022\023\n\017D" + + "EVICE_KIND_ARM\020\002\022\027\n\023DEVICE_KIND_BATTERY\020" + + "\003\022\030\n\024DEVICE_KIND_BIO_HEAD\020\004\022\026\n\022DEVICE_KI" + + "ND_CAMERA\020\005\022\027\n\023DEVICE_KIND_CAN_BUS\020\006\022\030\n\024" + + "DEVICE_KIND_DEX_HAND\020\007\022\027\n\023DEVICE_KIND_GR" + + "IPPER\020\010\022\032\n\026DEVICE_KIND_MICROPHONE\020\t\022\025\n\021D" + + "EVICE_KIND_MOTOR\020\n\022\034\n\030DEVICE_KIND_MOTOR_" + + "SYSTEM\020\013\022\025\n\021DEVICE_KIND_ROBOT\020\014\022\027\n\023DEVIC" + + "E_KIND_SPEAKER\020\r*\255\002\n\022ManagedDeviceState\022" + + "$\n MANAGED_DEVICE_STATE_UNSPECIFIED\020\000\022!\n" + + "\035MANAGED_DEVICE_STATE_DISABLED\020\001\022%\n!MANA" + + "GED_DEVICE_STATE_INITIALIZING\020\002\022#\n\037MANAG" + + "ED_DEVICE_STATE_REGISTERED\020\003\022\036\n\032MANAGED_" + + "DEVICE_STATE_READY\020\004\022 \n\034MANAGED_DEVICE_S" + + "TATE_RUNNING\020\005\022 \n\034MANAGED_DEVICE_STATE_S" + + "TOPPED\020\006\022\036\n\032MANAGED_DEVICE_STATE_ERROR\020\007" + + "*\237\001\n\022DeviceHealthStatus\022$\n DEVICE_HEALTH" + + "_STATUS_UNSPECIFIED\020\000\022 \n\034DEVICE_HEALTH_S" + + "TATUS_HEALTHY\020\001\022!\n\035DEVICE_HEALTH_STATUS_" + + "DEGRADED\020\002\022\036\n\032DEVICE_HEALTH_STATUS_FAULT" + + "\020\003*S\n\tMediaKind\022\032\n\026MEDIA_KIND_UNSPECIFIE" + + "D\020\000\022\024\n\020MEDIA_KIND_VIDEO\020\001\022\024\n\020MEDIA_KIND_" + + "AUDIO\020\002b\006proto3" + }; + descriptor = com.google.protobuf.Descriptors.FileDescriptor + .internalBuildGeneratedFileFrom(descriptorData, + new com.google.protobuf.Descriptors.FileDescriptor[] { + }); + internal_static_cmvr_quic_edge_v1_EdgeControlEnvelope_descriptor = + getDescriptor().getMessageTypes().get(0); + internal_static_cmvr_quic_edge_v1_EdgeControlEnvelope_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_cmvr_quic_edge_v1_EdgeControlEnvelope_descriptor, + new java.lang.String[] { "ProtocolVersion", "MessageSequence", "NodeRegisterRequest", "NodeRegisterResponse", "NodeHeartbeat", "NodeHeartbeatAck", "MediaSessionOpen", "MediaTrackDescriptor", "MediaSessionClose", "ProtocolError", "Payload", }); + internal_static_cmvr_quic_edge_v1_NetworkInterfaceAddress_descriptor = + getDescriptor().getMessageTypes().get(1); + internal_static_cmvr_quic_edge_v1_NetworkInterfaceAddress_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_cmvr_quic_edge_v1_NetworkInterfaceAddress_descriptor, + new java.lang.String[] { "InterfaceName", "IpAddress", "Family", "Loopback", }); + internal_static_cmvr_quic_edge_v1_GrpcEndpoint_descriptor = + getDescriptor().getMessageTypes().get(2); + internal_static_cmvr_quic_edge_v1_GrpcEndpoint_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_cmvr_quic_edge_v1_GrpcEndpoint_descriptor, + new java.lang.String[] { "Host", "Port", "Tls", }); + internal_static_cmvr_quic_edge_v1_ManagedDeviceStatus_descriptor = + getDescriptor().getMessageTypes().get(3); + internal_static_cmvr_quic_edge_v1_ManagedDeviceStatus_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_cmvr_quic_edge_v1_ManagedDeviceStatus_descriptor, + new java.lang.String[] { "DeviceId", "Kind", "TypeName", "Enabled", "ManagerState", "Health", "HasError", "ErrorMessage", "StatusUpdatedAtUnixMs", }); + internal_static_cmvr_quic_edge_v1_DeviceManagerSnapshot_descriptor = + getDescriptor().getMessageTypes().get(4); + internal_static_cmvr_quic_edge_v1_DeviceManagerSnapshot_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_cmvr_quic_edge_v1_DeviceManagerSnapshot_descriptor, + new java.lang.String[] { "ManagerName", "ManagerVersion", "ManagerDescription", "Devices", "SampledAtUnixMs", }); + internal_static_cmvr_quic_edge_v1_NodeDescriptor_descriptor = + getDescriptor().getMessageTypes().get(5); + internal_static_cmvr_quic_edge_v1_NodeDescriptor_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_cmvr_quic_edge_v1_NodeDescriptor_descriptor, + new java.lang.String[] { "NodeId", "BootId", "SoftwareVersion", "LocalInterfaces", "GrpcEndpoint", "RobotId", }); + internal_static_cmvr_quic_edge_v1_NodeRegisterRequest_descriptor = + getDescriptor().getMessageTypes().get(6); + internal_static_cmvr_quic_edge_v1_NodeRegisterRequest_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_cmvr_quic_edge_v1_NodeRegisterRequest_descriptor, + new java.lang.String[] { "Node", "SentAtUnixMs", }); + internal_static_cmvr_quic_edge_v1_NodeRegisterResponse_descriptor = + getDescriptor().getMessageTypes().get(7); + internal_static_cmvr_quic_edge_v1_NodeRegisterResponse_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_cmvr_quic_edge_v1_NodeRegisterResponse_descriptor, + new java.lang.String[] { "Accepted", "SessionId", "Message", "HeartbeatIntervalMs", "ObservedSourceIp", }); + internal_static_cmvr_quic_edge_v1_NodeHeartbeat_descriptor = + getDescriptor().getMessageTypes().get(8); + internal_static_cmvr_quic_edge_v1_NodeHeartbeat_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_cmvr_quic_edge_v1_NodeHeartbeat_descriptor, + new java.lang.String[] { "NodeId", "BootId", "SessionId", "Sequence", "SentAtUnixMs", "SoftwareVersion", "LocalInterfaces", "GrpcEndpoint", "DeviceManager", "RobotId", }); + internal_static_cmvr_quic_edge_v1_NodeHeartbeatAck_descriptor = + getDescriptor().getMessageTypes().get(9); + internal_static_cmvr_quic_edge_v1_NodeHeartbeatAck_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_cmvr_quic_edge_v1_NodeHeartbeatAck_descriptor, + new java.lang.String[] { "Accepted", "AcknowledgedSequence", "Message", "ServerTimeUnixMs", "ObservedSourceIp", "SessionId", }); + internal_static_cmvr_quic_edge_v1_MediaSessionOpen_descriptor = + getDescriptor().getMessageTypes().get(10); + internal_static_cmvr_quic_edge_v1_MediaSessionOpen_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_cmvr_quic_edge_v1_MediaSessionOpen_descriptor, + new java.lang.String[] { "NodeId", "SessionEpoch", "SessionId", }); + internal_static_cmvr_quic_edge_v1_MediaTrackDescriptor_descriptor = + getDescriptor().getMessageTypes().get(11); + internal_static_cmvr_quic_edge_v1_MediaTrackDescriptor_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_cmvr_quic_edge_v1_MediaTrackDescriptor_descriptor, + new java.lang.String[] { "TrackId", "Kind", "DeviceId", "Codec", "CodecGeneration", "SourceTrackId", "CodecGenerationToken", "PayloadFormat", "Width", "Height", "FramesPerSecond", "SampleRate", "Channels", "CodecConfig", }); + internal_static_cmvr_quic_edge_v1_MediaSessionClose_descriptor = + getDescriptor().getMessageTypes().get(12); + internal_static_cmvr_quic_edge_v1_MediaSessionClose_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_cmvr_quic_edge_v1_MediaSessionClose_descriptor, + new java.lang.String[] { "Reason", "SessionId", "SessionEpoch", }); + internal_static_cmvr_quic_edge_v1_ProtocolError_descriptor = + getDescriptor().getMessageTypes().get(13); + internal_static_cmvr_quic_edge_v1_ProtocolError_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_cmvr_quic_edge_v1_ProtocolError_descriptor, + new java.lang.String[] { "Code", "Message", "RelatedMessageSequence", "Fatal", }); + } + + // @@protoc_insertion_point(outer_class_scope) +} diff --git a/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/DeviceManagerSnapshot.java b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/DeviceManagerSnapshot.java new file mode 100644 index 0000000..5648bf7 --- /dev/null +++ b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/DeviceManagerSnapshot.java @@ -0,0 +1,1235 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: cmvr/quic_gateway/v1/quic_gateway.proto + +// Protobuf Java Version: 3.25.5 +package com.cmvr.quic.gateway.v1; + +/** + * Protobuf type {@code cmvr.quic_gateway.v1.DeviceManagerSnapshot} + */ +public final class DeviceManagerSnapshot extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:cmvr.quic_gateway.v1.DeviceManagerSnapshot) + DeviceManagerSnapshotOrBuilder { +private static final long serialVersionUID = 0L; + // Use DeviceManagerSnapshot.newBuilder() to construct. + private DeviceManagerSnapshot(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private DeviceManagerSnapshot() { + managerName_ = ""; + managerVersion_ = ""; + managerDescription_ = ""; + devices_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new DeviceManagerSnapshot(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_DeviceManagerSnapshot_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_DeviceManagerSnapshot_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.cmvr.quic.gateway.v1.DeviceManagerSnapshot.class, com.cmvr.quic.gateway.v1.DeviceManagerSnapshot.Builder.class); + } + + public static final int MANAGER_NAME_FIELD_NUMBER = 1; + @SuppressWarnings("serial") + private volatile java.lang.Object managerName_ = ""; + /** + * string manager_name = 1; + * @return The managerName. + */ + @java.lang.Override + public java.lang.String getManagerName() { + java.lang.Object ref = managerName_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + managerName_ = s; + return s; + } + } + /** + * string manager_name = 1; + * @return The bytes for managerName. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getManagerNameBytes() { + java.lang.Object ref = managerName_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + managerName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int MANAGER_VERSION_FIELD_NUMBER = 2; + @SuppressWarnings("serial") + private volatile java.lang.Object managerVersion_ = ""; + /** + * string manager_version = 2; + * @return The managerVersion. + */ + @java.lang.Override + public java.lang.String getManagerVersion() { + java.lang.Object ref = managerVersion_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + managerVersion_ = s; + return s; + } + } + /** + * string manager_version = 2; + * @return The bytes for managerVersion. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getManagerVersionBytes() { + java.lang.Object ref = managerVersion_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + managerVersion_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int MANAGER_DESCRIPTION_FIELD_NUMBER = 3; + @SuppressWarnings("serial") + private volatile java.lang.Object managerDescription_ = ""; + /** + * string manager_description = 3; + * @return The managerDescription. + */ + @java.lang.Override + public java.lang.String getManagerDescription() { + java.lang.Object ref = managerDescription_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + managerDescription_ = s; + return s; + } + } + /** + * string manager_description = 3; + * @return The bytes for managerDescription. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getManagerDescriptionBytes() { + java.lang.Object ref = managerDescription_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + managerDescription_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SAMPLED_AT_UNIX_MS_FIELD_NUMBER = 4; + private long sampledAtUnixMs_ = 0L; + /** + * uint64 sampled_at_unix_ms = 4; + * @return The sampledAtUnixMs. + */ + @java.lang.Override + public long getSampledAtUnixMs() { + return sampledAtUnixMs_; + } + + public static final int DEVICES_FIELD_NUMBER = 5; + @SuppressWarnings("serial") + private java.util.List devices_; + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + @java.lang.Override + public java.util.List getDevicesList() { + return devices_; + } + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + @java.lang.Override + public java.util.List + getDevicesOrBuilderList() { + return devices_; + } + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + @java.lang.Override + public int getDevicesCount() { + return devices_.size(); + } + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + @java.lang.Override + public com.cmvr.quic.gateway.v1.ManagedDeviceStatus getDevices(int index) { + return devices_.get(index); + } + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + @java.lang.Override + public com.cmvr.quic.gateway.v1.ManagedDeviceStatusOrBuilder getDevicesOrBuilder( + int index) { + return devices_.get(index); + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(managerName_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, managerName_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(managerVersion_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, managerVersion_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(managerDescription_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, managerDescription_); + } + if (sampledAtUnixMs_ != 0L) { + output.writeUInt64(4, sampledAtUnixMs_); + } + for (int i = 0; i < devices_.size(); i++) { + output.writeMessage(5, devices_.get(i)); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(managerName_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, managerName_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(managerVersion_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, managerVersion_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(managerDescription_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, managerDescription_); + } + if (sampledAtUnixMs_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeUInt64Size(4, sampledAtUnixMs_); + } + for (int i = 0; i < devices_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(5, devices_.get(i)); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.cmvr.quic.gateway.v1.DeviceManagerSnapshot)) { + return super.equals(obj); + } + com.cmvr.quic.gateway.v1.DeviceManagerSnapshot other = (com.cmvr.quic.gateway.v1.DeviceManagerSnapshot) obj; + + if (!getManagerName() + .equals(other.getManagerName())) return false; + if (!getManagerVersion() + .equals(other.getManagerVersion())) return false; + if (!getManagerDescription() + .equals(other.getManagerDescription())) return false; + if (getSampledAtUnixMs() + != other.getSampledAtUnixMs()) return false; + if (!getDevicesList() + .equals(other.getDevicesList())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + MANAGER_NAME_FIELD_NUMBER; + hash = (53 * hash) + getManagerName().hashCode(); + hash = (37 * hash) + MANAGER_VERSION_FIELD_NUMBER; + hash = (53 * hash) + getManagerVersion().hashCode(); + hash = (37 * hash) + MANAGER_DESCRIPTION_FIELD_NUMBER; + hash = (53 * hash) + getManagerDescription().hashCode(); + hash = (37 * hash) + SAMPLED_AT_UNIX_MS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getSampledAtUnixMs()); + if (getDevicesCount() > 0) { + hash = (37 * hash) + DEVICES_FIELD_NUMBER; + hash = (53 * hash) + getDevicesList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.cmvr.quic.gateway.v1.DeviceManagerSnapshot parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.cmvr.quic.gateway.v1.DeviceManagerSnapshot parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.DeviceManagerSnapshot parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.cmvr.quic.gateway.v1.DeviceManagerSnapshot parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.DeviceManagerSnapshot parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.cmvr.quic.gateway.v1.DeviceManagerSnapshot parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.DeviceManagerSnapshot parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static com.cmvr.quic.gateway.v1.DeviceManagerSnapshot parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static com.cmvr.quic.gateway.v1.DeviceManagerSnapshot parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static com.cmvr.quic.gateway.v1.DeviceManagerSnapshot parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.DeviceManagerSnapshot parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static com.cmvr.quic.gateway.v1.DeviceManagerSnapshot parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(com.cmvr.quic.gateway.v1.DeviceManagerSnapshot prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code cmvr.quic_gateway.v1.DeviceManagerSnapshot} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:cmvr.quic_gateway.v1.DeviceManagerSnapshot) + com.cmvr.quic.gateway.v1.DeviceManagerSnapshotOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_DeviceManagerSnapshot_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_DeviceManagerSnapshot_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.cmvr.quic.gateway.v1.DeviceManagerSnapshot.class, com.cmvr.quic.gateway.v1.DeviceManagerSnapshot.Builder.class); + } + + // Construct using com.cmvr.quic.gateway.v1.DeviceManagerSnapshot.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + managerName_ = ""; + managerVersion_ = ""; + managerDescription_ = ""; + sampledAtUnixMs_ = 0L; + if (devicesBuilder_ == null) { + devices_ = java.util.Collections.emptyList(); + } else { + devices_ = null; + devicesBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000010); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_DeviceManagerSnapshot_descriptor; + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.DeviceManagerSnapshot getDefaultInstanceForType() { + return com.cmvr.quic.gateway.v1.DeviceManagerSnapshot.getDefaultInstance(); + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.DeviceManagerSnapshot build() { + com.cmvr.quic.gateway.v1.DeviceManagerSnapshot result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.DeviceManagerSnapshot buildPartial() { + com.cmvr.quic.gateway.v1.DeviceManagerSnapshot result = new com.cmvr.quic.gateway.v1.DeviceManagerSnapshot(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(com.cmvr.quic.gateway.v1.DeviceManagerSnapshot result) { + if (devicesBuilder_ == null) { + if (((bitField0_ & 0x00000010) != 0)) { + devices_ = java.util.Collections.unmodifiableList(devices_); + bitField0_ = (bitField0_ & ~0x00000010); + } + result.devices_ = devices_; + } else { + result.devices_ = devicesBuilder_.build(); + } + } + + private void buildPartial0(com.cmvr.quic.gateway.v1.DeviceManagerSnapshot result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.managerName_ = managerName_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.managerVersion_ = managerVersion_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.managerDescription_ = managerDescription_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.sampledAtUnixMs_ = sampledAtUnixMs_; + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.cmvr.quic.gateway.v1.DeviceManagerSnapshot) { + return mergeFrom((com.cmvr.quic.gateway.v1.DeviceManagerSnapshot)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.cmvr.quic.gateway.v1.DeviceManagerSnapshot other) { + if (other == com.cmvr.quic.gateway.v1.DeviceManagerSnapshot.getDefaultInstance()) return this; + if (!other.getManagerName().isEmpty()) { + managerName_ = other.managerName_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getManagerVersion().isEmpty()) { + managerVersion_ = other.managerVersion_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getManagerDescription().isEmpty()) { + managerDescription_ = other.managerDescription_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (other.getSampledAtUnixMs() != 0L) { + setSampledAtUnixMs(other.getSampledAtUnixMs()); + } + if (devicesBuilder_ == null) { + if (!other.devices_.isEmpty()) { + if (devices_.isEmpty()) { + devices_ = other.devices_; + bitField0_ = (bitField0_ & ~0x00000010); + } else { + ensureDevicesIsMutable(); + devices_.addAll(other.devices_); + } + onChanged(); + } + } else { + if (!other.devices_.isEmpty()) { + if (devicesBuilder_.isEmpty()) { + devicesBuilder_.dispose(); + devicesBuilder_ = null; + devices_ = other.devices_; + bitField0_ = (bitField0_ & ~0x00000010); + devicesBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getDevicesFieldBuilder() : null; + } else { + devicesBuilder_.addAllMessages(other.devices_); + } + } + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + managerName_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: { + managerVersion_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: { + managerDescription_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 32: { + sampledAtUnixMs_ = input.readUInt64(); + bitField0_ |= 0x00000008; + break; + } // case 32 + case 42: { + com.cmvr.quic.gateway.v1.ManagedDeviceStatus m = + input.readMessage( + com.cmvr.quic.gateway.v1.ManagedDeviceStatus.parser(), + extensionRegistry); + if (devicesBuilder_ == null) { + ensureDevicesIsMutable(); + devices_.add(m); + } else { + devicesBuilder_.addMessage(m); + } + break; + } // case 42 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private java.lang.Object managerName_ = ""; + /** + * string manager_name = 1; + * @return The managerName. + */ + public java.lang.String getManagerName() { + java.lang.Object ref = managerName_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + managerName_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string manager_name = 1; + * @return The bytes for managerName. + */ + public com.google.protobuf.ByteString + getManagerNameBytes() { + java.lang.Object ref = managerName_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + managerName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string manager_name = 1; + * @param value The managerName to set. + * @return This builder for chaining. + */ + public Builder setManagerName( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + managerName_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * string manager_name = 1; + * @return This builder for chaining. + */ + public Builder clearManagerName() { + managerName_ = getDefaultInstance().getManagerName(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * string manager_name = 1; + * @param value The bytes for managerName to set. + * @return This builder for chaining. + */ + public Builder setManagerNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + managerName_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object managerVersion_ = ""; + /** + * string manager_version = 2; + * @return The managerVersion. + */ + public java.lang.String getManagerVersion() { + java.lang.Object ref = managerVersion_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + managerVersion_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string manager_version = 2; + * @return The bytes for managerVersion. + */ + public com.google.protobuf.ByteString + getManagerVersionBytes() { + java.lang.Object ref = managerVersion_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + managerVersion_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string manager_version = 2; + * @param value The managerVersion to set. + * @return This builder for chaining. + */ + public Builder setManagerVersion( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + managerVersion_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * string manager_version = 2; + * @return This builder for chaining. + */ + public Builder clearManagerVersion() { + managerVersion_ = getDefaultInstance().getManagerVersion(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + /** + * string manager_version = 2; + * @param value The bytes for managerVersion to set. + * @return This builder for chaining. + */ + public Builder setManagerVersionBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + managerVersion_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private java.lang.Object managerDescription_ = ""; + /** + * string manager_description = 3; + * @return The managerDescription. + */ + public java.lang.String getManagerDescription() { + java.lang.Object ref = managerDescription_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + managerDescription_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string manager_description = 3; + * @return The bytes for managerDescription. + */ + public com.google.protobuf.ByteString + getManagerDescriptionBytes() { + java.lang.Object ref = managerDescription_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + managerDescription_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string manager_description = 3; + * @param value The managerDescription to set. + * @return This builder for chaining. + */ + public Builder setManagerDescription( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + managerDescription_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * string manager_description = 3; + * @return This builder for chaining. + */ + public Builder clearManagerDescription() { + managerDescription_ = getDefaultInstance().getManagerDescription(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + /** + * string manager_description = 3; + * @param value The bytes for managerDescription to set. + * @return This builder for chaining. + */ + public Builder setManagerDescriptionBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + managerDescription_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private long sampledAtUnixMs_ ; + /** + * uint64 sampled_at_unix_ms = 4; + * @return The sampledAtUnixMs. + */ + @java.lang.Override + public long getSampledAtUnixMs() { + return sampledAtUnixMs_; + } + /** + * uint64 sampled_at_unix_ms = 4; + * @param value The sampledAtUnixMs to set. + * @return This builder for chaining. + */ + public Builder setSampledAtUnixMs(long value) { + + sampledAtUnixMs_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * uint64 sampled_at_unix_ms = 4; + * @return This builder for chaining. + */ + public Builder clearSampledAtUnixMs() { + bitField0_ = (bitField0_ & ~0x00000008); + sampledAtUnixMs_ = 0L; + onChanged(); + return this; + } + + private java.util.List devices_ = + java.util.Collections.emptyList(); + private void ensureDevicesIsMutable() { + if (!((bitField0_ & 0x00000010) != 0)) { + devices_ = new java.util.ArrayList(devices_); + bitField0_ |= 0x00000010; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + com.cmvr.quic.gateway.v1.ManagedDeviceStatus, com.cmvr.quic.gateway.v1.ManagedDeviceStatus.Builder, com.cmvr.quic.gateway.v1.ManagedDeviceStatusOrBuilder> devicesBuilder_; + + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + public java.util.List getDevicesList() { + if (devicesBuilder_ == null) { + return java.util.Collections.unmodifiableList(devices_); + } else { + return devicesBuilder_.getMessageList(); + } + } + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + public int getDevicesCount() { + if (devicesBuilder_ == null) { + return devices_.size(); + } else { + return devicesBuilder_.getCount(); + } + } + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + public com.cmvr.quic.gateway.v1.ManagedDeviceStatus getDevices(int index) { + if (devicesBuilder_ == null) { + return devices_.get(index); + } else { + return devicesBuilder_.getMessage(index); + } + } + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + public Builder setDevices( + int index, com.cmvr.quic.gateway.v1.ManagedDeviceStatus value) { + if (devicesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDevicesIsMutable(); + devices_.set(index, value); + onChanged(); + } else { + devicesBuilder_.setMessage(index, value); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + public Builder setDevices( + int index, com.cmvr.quic.gateway.v1.ManagedDeviceStatus.Builder builderForValue) { + if (devicesBuilder_ == null) { + ensureDevicesIsMutable(); + devices_.set(index, builderForValue.build()); + onChanged(); + } else { + devicesBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + public Builder addDevices(com.cmvr.quic.gateway.v1.ManagedDeviceStatus value) { + if (devicesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDevicesIsMutable(); + devices_.add(value); + onChanged(); + } else { + devicesBuilder_.addMessage(value); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + public Builder addDevices( + int index, com.cmvr.quic.gateway.v1.ManagedDeviceStatus value) { + if (devicesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureDevicesIsMutable(); + devices_.add(index, value); + onChanged(); + } else { + devicesBuilder_.addMessage(index, value); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + public Builder addDevices( + com.cmvr.quic.gateway.v1.ManagedDeviceStatus.Builder builderForValue) { + if (devicesBuilder_ == null) { + ensureDevicesIsMutable(); + devices_.add(builderForValue.build()); + onChanged(); + } else { + devicesBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + public Builder addDevices( + int index, com.cmvr.quic.gateway.v1.ManagedDeviceStatus.Builder builderForValue) { + if (devicesBuilder_ == null) { + ensureDevicesIsMutable(); + devices_.add(index, builderForValue.build()); + onChanged(); + } else { + devicesBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + public Builder addAllDevices( + java.lang.Iterable values) { + if (devicesBuilder_ == null) { + ensureDevicesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, devices_); + onChanged(); + } else { + devicesBuilder_.addAllMessages(values); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + public Builder clearDevices() { + if (devicesBuilder_ == null) { + devices_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000010); + onChanged(); + } else { + devicesBuilder_.clear(); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + public Builder removeDevices(int index) { + if (devicesBuilder_ == null) { + ensureDevicesIsMutable(); + devices_.remove(index); + onChanged(); + } else { + devicesBuilder_.remove(index); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + public com.cmvr.quic.gateway.v1.ManagedDeviceStatus.Builder getDevicesBuilder( + int index) { + return getDevicesFieldBuilder().getBuilder(index); + } + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + public com.cmvr.quic.gateway.v1.ManagedDeviceStatusOrBuilder getDevicesOrBuilder( + int index) { + if (devicesBuilder_ == null) { + return devices_.get(index); } else { + return devicesBuilder_.getMessageOrBuilder(index); + } + } + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + public java.util.List + getDevicesOrBuilderList() { + if (devicesBuilder_ != null) { + return devicesBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(devices_); + } + } + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + public com.cmvr.quic.gateway.v1.ManagedDeviceStatus.Builder addDevicesBuilder() { + return getDevicesFieldBuilder().addBuilder( + com.cmvr.quic.gateway.v1.ManagedDeviceStatus.getDefaultInstance()); + } + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + public com.cmvr.quic.gateway.v1.ManagedDeviceStatus.Builder addDevicesBuilder( + int index) { + return getDevicesFieldBuilder().addBuilder( + index, com.cmvr.quic.gateway.v1.ManagedDeviceStatus.getDefaultInstance()); + } + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + public java.util.List + getDevicesBuilderList() { + return getDevicesFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + com.cmvr.quic.gateway.v1.ManagedDeviceStatus, com.cmvr.quic.gateway.v1.ManagedDeviceStatus.Builder, com.cmvr.quic.gateway.v1.ManagedDeviceStatusOrBuilder> + getDevicesFieldBuilder() { + if (devicesBuilder_ == null) { + devicesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + com.cmvr.quic.gateway.v1.ManagedDeviceStatus, com.cmvr.quic.gateway.v1.ManagedDeviceStatus.Builder, com.cmvr.quic.gateway.v1.ManagedDeviceStatusOrBuilder>( + devices_, + ((bitField0_ & 0x00000010) != 0), + getParentForChildren(), + isClean()); + devices_ = null; + } + return devicesBuilder_; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:cmvr.quic_gateway.v1.DeviceManagerSnapshot) + } + + // @@protoc_insertion_point(class_scope:cmvr.quic_gateway.v1.DeviceManagerSnapshot) + private static final com.cmvr.quic.gateway.v1.DeviceManagerSnapshot DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new com.cmvr.quic.gateway.v1.DeviceManagerSnapshot(); + } + + public static com.cmvr.quic.gateway.v1.DeviceManagerSnapshot getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public DeviceManagerSnapshot parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.DeviceManagerSnapshot getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + +} + diff --git a/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/DeviceManagerSnapshotOrBuilder.java b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/DeviceManagerSnapshotOrBuilder.java new file mode 100644 index 0000000..b276df0 --- /dev/null +++ b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/DeviceManagerSnapshotOrBuilder.java @@ -0,0 +1,76 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: cmvr/quic_gateway/v1/quic_gateway.proto + +// Protobuf Java Version: 3.25.5 +package com.cmvr.quic.gateway.v1; + +public interface DeviceManagerSnapshotOrBuilder extends + // @@protoc_insertion_point(interface_extends:cmvr.quic_gateway.v1.DeviceManagerSnapshot) + com.google.protobuf.MessageOrBuilder { + + /** + * string manager_name = 1; + * @return The managerName. + */ + java.lang.String getManagerName(); + /** + * string manager_name = 1; + * @return The bytes for managerName. + */ + com.google.protobuf.ByteString + getManagerNameBytes(); + + /** + * string manager_version = 2; + * @return The managerVersion. + */ + java.lang.String getManagerVersion(); + /** + * string manager_version = 2; + * @return The bytes for managerVersion. + */ + com.google.protobuf.ByteString + getManagerVersionBytes(); + + /** + * string manager_description = 3; + * @return The managerDescription. + */ + java.lang.String getManagerDescription(); + /** + * string manager_description = 3; + * @return The bytes for managerDescription. + */ + com.google.protobuf.ByteString + getManagerDescriptionBytes(); + + /** + * uint64 sampled_at_unix_ms = 4; + * @return The sampledAtUnixMs. + */ + long getSampledAtUnixMs(); + + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + java.util.List + getDevicesList(); + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + com.cmvr.quic.gateway.v1.ManagedDeviceStatus getDevices(int index); + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + int getDevicesCount(); + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + java.util.List + getDevicesOrBuilderList(); + /** + * repeated .cmvr.quic_gateway.v1.ManagedDeviceStatus devices = 5; + */ + com.cmvr.quic.gateway.v1.ManagedDeviceStatusOrBuilder getDevicesOrBuilder( + int index); +} diff --git a/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/GrpcEndpoint.java b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/GrpcEndpoint.java new file mode 100644 index 0000000..14e2af5 --- /dev/null +++ b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/GrpcEndpoint.java @@ -0,0 +1,675 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: cmvr/quic_gateway/v1/quic_gateway.proto + +// Protobuf Java Version: 3.25.5 +package com.cmvr.quic.gateway.v1; + +/** + * Protobuf type {@code cmvr.quic_gateway.v1.GrpcEndpoint} + */ +public final class GrpcEndpoint extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:cmvr.quic_gateway.v1.GrpcEndpoint) + GrpcEndpointOrBuilder { +private static final long serialVersionUID = 0L; + // Use GrpcEndpoint.newBuilder() to construct. + private GrpcEndpoint(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private GrpcEndpoint() { + host_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new GrpcEndpoint(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_GrpcEndpoint_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_GrpcEndpoint_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.cmvr.quic.gateway.v1.GrpcEndpoint.class, com.cmvr.quic.gateway.v1.GrpcEndpoint.Builder.class); + } + + public static final int HOST_FIELD_NUMBER = 1; + @SuppressWarnings("serial") + private volatile java.lang.Object host_ = ""; + /** + * string host = 1; + * @return The host. + */ + @java.lang.Override + public java.lang.String getHost() { + java.lang.Object ref = host_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + host_ = s; + return s; + } + } + /** + * string host = 1; + * @return The bytes for host. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getHostBytes() { + java.lang.Object ref = host_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + host_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int PORT_FIELD_NUMBER = 2; + private int port_ = 0; + /** + * uint32 port = 2; + * @return The port. + */ + @java.lang.Override + public int getPort() { + return port_; + } + + public static final int TLS_FIELD_NUMBER = 3; + private boolean tls_ = false; + /** + * bool tls = 3; + * @return The tls. + */ + @java.lang.Override + public boolean getTls() { + return tls_; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(host_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, host_); + } + if (port_ != 0) { + output.writeUInt32(2, port_); + } + if (tls_ != false) { + output.writeBool(3, tls_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(host_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, host_); + } + if (port_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(2, port_); + } + if (tls_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(3, tls_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.cmvr.quic.gateway.v1.GrpcEndpoint)) { + return super.equals(obj); + } + com.cmvr.quic.gateway.v1.GrpcEndpoint other = (com.cmvr.quic.gateway.v1.GrpcEndpoint) obj; + + if (!getHost() + .equals(other.getHost())) return false; + if (getPort() + != other.getPort()) return false; + if (getTls() + != other.getTls()) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + HOST_FIELD_NUMBER; + hash = (53 * hash) + getHost().hashCode(); + hash = (37 * hash) + PORT_FIELD_NUMBER; + hash = (53 * hash) + getPort(); + hash = (37 * hash) + TLS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getTls()); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.cmvr.quic.gateway.v1.GrpcEndpoint parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.cmvr.quic.gateway.v1.GrpcEndpoint parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.GrpcEndpoint parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.cmvr.quic.gateway.v1.GrpcEndpoint parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.GrpcEndpoint parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.cmvr.quic.gateway.v1.GrpcEndpoint parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.GrpcEndpoint parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static com.cmvr.quic.gateway.v1.GrpcEndpoint parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static com.cmvr.quic.gateway.v1.GrpcEndpoint parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static com.cmvr.quic.gateway.v1.GrpcEndpoint parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.GrpcEndpoint parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static com.cmvr.quic.gateway.v1.GrpcEndpoint parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(com.cmvr.quic.gateway.v1.GrpcEndpoint prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code cmvr.quic_gateway.v1.GrpcEndpoint} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:cmvr.quic_gateway.v1.GrpcEndpoint) + com.cmvr.quic.gateway.v1.GrpcEndpointOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_GrpcEndpoint_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_GrpcEndpoint_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.cmvr.quic.gateway.v1.GrpcEndpoint.class, com.cmvr.quic.gateway.v1.GrpcEndpoint.Builder.class); + } + + // Construct using com.cmvr.quic.gateway.v1.GrpcEndpoint.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + host_ = ""; + port_ = 0; + tls_ = false; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_GrpcEndpoint_descriptor; + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.GrpcEndpoint getDefaultInstanceForType() { + return com.cmvr.quic.gateway.v1.GrpcEndpoint.getDefaultInstance(); + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.GrpcEndpoint build() { + com.cmvr.quic.gateway.v1.GrpcEndpoint result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.GrpcEndpoint buildPartial() { + com.cmvr.quic.gateway.v1.GrpcEndpoint result = new com.cmvr.quic.gateway.v1.GrpcEndpoint(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(com.cmvr.quic.gateway.v1.GrpcEndpoint result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.host_ = host_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.port_ = port_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.tls_ = tls_; + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.cmvr.quic.gateway.v1.GrpcEndpoint) { + return mergeFrom((com.cmvr.quic.gateway.v1.GrpcEndpoint)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.cmvr.quic.gateway.v1.GrpcEndpoint other) { + if (other == com.cmvr.quic.gateway.v1.GrpcEndpoint.getDefaultInstance()) return this; + if (!other.getHost().isEmpty()) { + host_ = other.host_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (other.getPort() != 0) { + setPort(other.getPort()); + } + if (other.getTls() != false) { + setTls(other.getTls()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + host_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 16: { + port_ = input.readUInt32(); + bitField0_ |= 0x00000002; + break; + } // case 16 + case 24: { + tls_ = input.readBool(); + bitField0_ |= 0x00000004; + break; + } // case 24 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private java.lang.Object host_ = ""; + /** + * string host = 1; + * @return The host. + */ + public java.lang.String getHost() { + java.lang.Object ref = host_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + host_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string host = 1; + * @return The bytes for host. + */ + public com.google.protobuf.ByteString + getHostBytes() { + java.lang.Object ref = host_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + host_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string host = 1; + * @param value The host to set. + * @return This builder for chaining. + */ + public Builder setHost( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + host_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * string host = 1; + * @return This builder for chaining. + */ + public Builder clearHost() { + host_ = getDefaultInstance().getHost(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * string host = 1; + * @param value The bytes for host to set. + * @return This builder for chaining. + */ + public Builder setHostBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + host_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private int port_ ; + /** + * uint32 port = 2; + * @return The port. + */ + @java.lang.Override + public int getPort() { + return port_; + } + /** + * uint32 port = 2; + * @param value The port to set. + * @return This builder for chaining. + */ + public Builder setPort(int value) { + + port_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * uint32 port = 2; + * @return This builder for chaining. + */ + public Builder clearPort() { + bitField0_ = (bitField0_ & ~0x00000002); + port_ = 0; + onChanged(); + return this; + } + + private boolean tls_ ; + /** + * bool tls = 3; + * @return The tls. + */ + @java.lang.Override + public boolean getTls() { + return tls_; + } + /** + * bool tls = 3; + * @param value The tls to set. + * @return This builder for chaining. + */ + public Builder setTls(boolean value) { + + tls_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * bool tls = 3; + * @return This builder for chaining. + */ + public Builder clearTls() { + bitField0_ = (bitField0_ & ~0x00000004); + tls_ = false; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:cmvr.quic_gateway.v1.GrpcEndpoint) + } + + // @@protoc_insertion_point(class_scope:cmvr.quic_gateway.v1.GrpcEndpoint) + private static final com.cmvr.quic.gateway.v1.GrpcEndpoint DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new com.cmvr.quic.gateway.v1.GrpcEndpoint(); + } + + public static com.cmvr.quic.gateway.v1.GrpcEndpoint getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public GrpcEndpoint parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.GrpcEndpoint getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + +} + diff --git a/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/GrpcEndpointOrBuilder.java b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/GrpcEndpointOrBuilder.java new file mode 100644 index 0000000..af0a649 --- /dev/null +++ b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/GrpcEndpointOrBuilder.java @@ -0,0 +1,34 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: cmvr/quic_gateway/v1/quic_gateway.proto + +// Protobuf Java Version: 3.25.5 +package com.cmvr.quic.gateway.v1; + +public interface GrpcEndpointOrBuilder extends + // @@protoc_insertion_point(interface_extends:cmvr.quic_gateway.v1.GrpcEndpoint) + com.google.protobuf.MessageOrBuilder { + + /** + * string host = 1; + * @return The host. + */ + java.lang.String getHost(); + /** + * string host = 1; + * @return The bytes for host. + */ + com.google.protobuf.ByteString + getHostBytes(); + + /** + * uint32 port = 2; + * @return The port. + */ + int getPort(); + + /** + * bool tls = 3; + * @return The tls. + */ + boolean getTls(); +} diff --git a/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/ManagedDeviceStatus.java b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/ManagedDeviceStatus.java new file mode 100644 index 0000000..01d0aa7 --- /dev/null +++ b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/ManagedDeviceStatus.java @@ -0,0 +1,1213 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: cmvr/quic_gateway/v1/quic_gateway.proto + +// Protobuf Java Version: 3.25.5 +package com.cmvr.quic.gateway.v1; + +/** + * Protobuf type {@code cmvr.quic_gateway.v1.ManagedDeviceStatus} + */ +public final class ManagedDeviceStatus extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:cmvr.quic_gateway.v1.ManagedDeviceStatus) + ManagedDeviceStatusOrBuilder { +private static final long serialVersionUID = 0L; + // Use ManagedDeviceStatus.newBuilder() to construct. + private ManagedDeviceStatus(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private ManagedDeviceStatus() { + deviceId_ = ""; + typeName_ = ""; + errorMessage_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new ManagedDeviceStatus(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_ManagedDeviceStatus_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_ManagedDeviceStatus_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.cmvr.quic.gateway.v1.ManagedDeviceStatus.class, com.cmvr.quic.gateway.v1.ManagedDeviceStatus.Builder.class); + } + + public static final int DEVICE_ID_FIELD_NUMBER = 1; + @SuppressWarnings("serial") + private volatile java.lang.Object deviceId_ = ""; + /** + * string device_id = 1; + * @return The deviceId. + */ + @java.lang.Override + public java.lang.String getDeviceId() { + java.lang.Object ref = deviceId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + deviceId_ = s; + return s; + } + } + /** + * string device_id = 1; + * @return The bytes for deviceId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getDeviceIdBytes() { + java.lang.Object ref = deviceId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + deviceId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int KIND_FIELD_NUMBER = 2; + private int kind_ = 0; + /** + * int32 kind = 2; + * @return The kind. + */ + @java.lang.Override + public int getKind() { + return kind_; + } + + public static final int TYPE_NAME_FIELD_NUMBER = 3; + @SuppressWarnings("serial") + private volatile java.lang.Object typeName_ = ""; + /** + * string type_name = 3; + * @return The typeName. + */ + @java.lang.Override + public java.lang.String getTypeName() { + java.lang.Object ref = typeName_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + typeName_ = s; + return s; + } + } + /** + * string type_name = 3; + * @return The bytes for typeName. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getTypeNameBytes() { + java.lang.Object ref = typeName_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + typeName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int ENABLED_FIELD_NUMBER = 4; + private boolean enabled_ = false; + /** + * bool enabled = 4; + * @return The enabled. + */ + @java.lang.Override + public boolean getEnabled() { + return enabled_; + } + + public static final int MANAGER_STATE_FIELD_NUMBER = 5; + private int managerState_ = 0; + /** + * int32 manager_state = 5; + * @return The managerState. + */ + @java.lang.Override + public int getManagerState() { + return managerState_; + } + + public static final int HEALTH_FIELD_NUMBER = 6; + private int health_ = 0; + /** + * int32 health = 6; + * @return The health. + */ + @java.lang.Override + public int getHealth() { + return health_; + } + + public static final int HAS_ERROR_FIELD_NUMBER = 7; + private boolean hasError_ = false; + /** + * bool has_error = 7; + * @return The hasError. + */ + @java.lang.Override + public boolean getHasError() { + return hasError_; + } + + public static final int ERROR_MESSAGE_FIELD_NUMBER = 8; + @SuppressWarnings("serial") + private volatile java.lang.Object errorMessage_ = ""; + /** + * string error_message = 8; + * @return The errorMessage. + */ + @java.lang.Override + public java.lang.String getErrorMessage() { + java.lang.Object ref = errorMessage_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + errorMessage_ = s; + return s; + } + } + /** + * string error_message = 8; + * @return The bytes for errorMessage. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getErrorMessageBytes() { + java.lang.Object ref = errorMessage_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + errorMessage_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int STATUS_UPDATED_AT_UNIX_MS_FIELD_NUMBER = 9; + private long statusUpdatedAtUnixMs_ = 0L; + /** + * uint64 status_updated_at_unix_ms = 9; + * @return The statusUpdatedAtUnixMs. + */ + @java.lang.Override + public long getStatusUpdatedAtUnixMs() { + return statusUpdatedAtUnixMs_; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deviceId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, deviceId_); + } + if (kind_ != 0) { + output.writeInt32(2, kind_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(typeName_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, typeName_); + } + if (enabled_ != false) { + output.writeBool(4, enabled_); + } + if (managerState_ != 0) { + output.writeInt32(5, managerState_); + } + if (health_ != 0) { + output.writeInt32(6, health_); + } + if (hasError_ != false) { + output.writeBool(7, hasError_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(errorMessage_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 8, errorMessage_); + } + if (statusUpdatedAtUnixMs_ != 0L) { + output.writeUInt64(9, statusUpdatedAtUnixMs_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deviceId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, deviceId_); + } + if (kind_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeInt32Size(2, kind_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(typeName_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, typeName_); + } + if (enabled_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(4, enabled_); + } + if (managerState_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeInt32Size(5, managerState_); + } + if (health_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeInt32Size(6, health_); + } + if (hasError_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(7, hasError_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(errorMessage_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(8, errorMessage_); + } + if (statusUpdatedAtUnixMs_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeUInt64Size(9, statusUpdatedAtUnixMs_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.cmvr.quic.gateway.v1.ManagedDeviceStatus)) { + return super.equals(obj); + } + com.cmvr.quic.gateway.v1.ManagedDeviceStatus other = (com.cmvr.quic.gateway.v1.ManagedDeviceStatus) obj; + + if (!getDeviceId() + .equals(other.getDeviceId())) return false; + if (getKind() + != other.getKind()) return false; + if (!getTypeName() + .equals(other.getTypeName())) return false; + if (getEnabled() + != other.getEnabled()) return false; + if (getManagerState() + != other.getManagerState()) return false; + if (getHealth() + != other.getHealth()) return false; + if (getHasError() + != other.getHasError()) return false; + if (!getErrorMessage() + .equals(other.getErrorMessage())) return false; + if (getStatusUpdatedAtUnixMs() + != other.getStatusUpdatedAtUnixMs()) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + DEVICE_ID_FIELD_NUMBER; + hash = (53 * hash) + getDeviceId().hashCode(); + hash = (37 * hash) + KIND_FIELD_NUMBER; + hash = (53 * hash) + getKind(); + hash = (37 * hash) + TYPE_NAME_FIELD_NUMBER; + hash = (53 * hash) + getTypeName().hashCode(); + hash = (37 * hash) + ENABLED_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getEnabled()); + hash = (37 * hash) + MANAGER_STATE_FIELD_NUMBER; + hash = (53 * hash) + getManagerState(); + hash = (37 * hash) + HEALTH_FIELD_NUMBER; + hash = (53 * hash) + getHealth(); + hash = (37 * hash) + HAS_ERROR_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getHasError()); + hash = (37 * hash) + ERROR_MESSAGE_FIELD_NUMBER; + hash = (53 * hash) + getErrorMessage().hashCode(); + hash = (37 * hash) + STATUS_UPDATED_AT_UNIX_MS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getStatusUpdatedAtUnixMs()); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.cmvr.quic.gateway.v1.ManagedDeviceStatus parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.cmvr.quic.gateway.v1.ManagedDeviceStatus parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.ManagedDeviceStatus parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.cmvr.quic.gateway.v1.ManagedDeviceStatus parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.ManagedDeviceStatus parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.cmvr.quic.gateway.v1.ManagedDeviceStatus parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.ManagedDeviceStatus parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static com.cmvr.quic.gateway.v1.ManagedDeviceStatus parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static com.cmvr.quic.gateway.v1.ManagedDeviceStatus parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static com.cmvr.quic.gateway.v1.ManagedDeviceStatus parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.ManagedDeviceStatus parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static com.cmvr.quic.gateway.v1.ManagedDeviceStatus parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(com.cmvr.quic.gateway.v1.ManagedDeviceStatus prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code cmvr.quic_gateway.v1.ManagedDeviceStatus} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:cmvr.quic_gateway.v1.ManagedDeviceStatus) + com.cmvr.quic.gateway.v1.ManagedDeviceStatusOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_ManagedDeviceStatus_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_ManagedDeviceStatus_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.cmvr.quic.gateway.v1.ManagedDeviceStatus.class, com.cmvr.quic.gateway.v1.ManagedDeviceStatus.Builder.class); + } + + // Construct using com.cmvr.quic.gateway.v1.ManagedDeviceStatus.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + deviceId_ = ""; + kind_ = 0; + typeName_ = ""; + enabled_ = false; + managerState_ = 0; + health_ = 0; + hasError_ = false; + errorMessage_ = ""; + statusUpdatedAtUnixMs_ = 0L; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_ManagedDeviceStatus_descriptor; + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.ManagedDeviceStatus getDefaultInstanceForType() { + return com.cmvr.quic.gateway.v1.ManagedDeviceStatus.getDefaultInstance(); + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.ManagedDeviceStatus build() { + com.cmvr.quic.gateway.v1.ManagedDeviceStatus result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.ManagedDeviceStatus buildPartial() { + com.cmvr.quic.gateway.v1.ManagedDeviceStatus result = new com.cmvr.quic.gateway.v1.ManagedDeviceStatus(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(com.cmvr.quic.gateway.v1.ManagedDeviceStatus result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.deviceId_ = deviceId_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.kind_ = kind_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.typeName_ = typeName_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.enabled_ = enabled_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.managerState_ = managerState_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.health_ = health_; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.hasError_ = hasError_; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.errorMessage_ = errorMessage_; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + result.statusUpdatedAtUnixMs_ = statusUpdatedAtUnixMs_; + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.cmvr.quic.gateway.v1.ManagedDeviceStatus) { + return mergeFrom((com.cmvr.quic.gateway.v1.ManagedDeviceStatus)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.cmvr.quic.gateway.v1.ManagedDeviceStatus other) { + if (other == com.cmvr.quic.gateway.v1.ManagedDeviceStatus.getDefaultInstance()) return this; + if (!other.getDeviceId().isEmpty()) { + deviceId_ = other.deviceId_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (other.getKind() != 0) { + setKind(other.getKind()); + } + if (!other.getTypeName().isEmpty()) { + typeName_ = other.typeName_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (other.getEnabled() != false) { + setEnabled(other.getEnabled()); + } + if (other.getManagerState() != 0) { + setManagerState(other.getManagerState()); + } + if (other.getHealth() != 0) { + setHealth(other.getHealth()); + } + if (other.getHasError() != false) { + setHasError(other.getHasError()); + } + if (!other.getErrorMessage().isEmpty()) { + errorMessage_ = other.errorMessage_; + bitField0_ |= 0x00000080; + onChanged(); + } + if (other.getStatusUpdatedAtUnixMs() != 0L) { + setStatusUpdatedAtUnixMs(other.getStatusUpdatedAtUnixMs()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + deviceId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 16: { + kind_ = input.readInt32(); + bitField0_ |= 0x00000002; + break; + } // case 16 + case 26: { + typeName_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 32: { + enabled_ = input.readBool(); + bitField0_ |= 0x00000008; + break; + } // case 32 + case 40: { + managerState_ = input.readInt32(); + bitField0_ |= 0x00000010; + break; + } // case 40 + case 48: { + health_ = input.readInt32(); + bitField0_ |= 0x00000020; + break; + } // case 48 + case 56: { + hasError_ = input.readBool(); + bitField0_ |= 0x00000040; + break; + } // case 56 + case 66: { + errorMessage_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000080; + break; + } // case 66 + case 72: { + statusUpdatedAtUnixMs_ = input.readUInt64(); + bitField0_ |= 0x00000100; + break; + } // case 72 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private java.lang.Object deviceId_ = ""; + /** + * string device_id = 1; + * @return The deviceId. + */ + public java.lang.String getDeviceId() { + java.lang.Object ref = deviceId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + deviceId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string device_id = 1; + * @return The bytes for deviceId. + */ + public com.google.protobuf.ByteString + getDeviceIdBytes() { + java.lang.Object ref = deviceId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + deviceId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string device_id = 1; + * @param value The deviceId to set. + * @return This builder for chaining. + */ + public Builder setDeviceId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + deviceId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * string device_id = 1; + * @return This builder for chaining. + */ + public Builder clearDeviceId() { + deviceId_ = getDefaultInstance().getDeviceId(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * string device_id = 1; + * @param value The bytes for deviceId to set. + * @return This builder for chaining. + */ + public Builder setDeviceIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + deviceId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private int kind_ ; + /** + * int32 kind = 2; + * @return The kind. + */ + @java.lang.Override + public int getKind() { + return kind_; + } + /** + * int32 kind = 2; + * @param value The kind to set. + * @return This builder for chaining. + */ + public Builder setKind(int value) { + + kind_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * int32 kind = 2; + * @return This builder for chaining. + */ + public Builder clearKind() { + bitField0_ = (bitField0_ & ~0x00000002); + kind_ = 0; + onChanged(); + return this; + } + + private java.lang.Object typeName_ = ""; + /** + * string type_name = 3; + * @return The typeName. + */ + public java.lang.String getTypeName() { + java.lang.Object ref = typeName_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + typeName_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string type_name = 3; + * @return The bytes for typeName. + */ + public com.google.protobuf.ByteString + getTypeNameBytes() { + java.lang.Object ref = typeName_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + typeName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string type_name = 3; + * @param value The typeName to set. + * @return This builder for chaining. + */ + public Builder setTypeName( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + typeName_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * string type_name = 3; + * @return This builder for chaining. + */ + public Builder clearTypeName() { + typeName_ = getDefaultInstance().getTypeName(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + /** + * string type_name = 3; + * @param value The bytes for typeName to set. + * @return This builder for chaining. + */ + public Builder setTypeNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + typeName_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private boolean enabled_ ; + /** + * bool enabled = 4; + * @return The enabled. + */ + @java.lang.Override + public boolean getEnabled() { + return enabled_; + } + /** + * bool enabled = 4; + * @param value The enabled to set. + * @return This builder for chaining. + */ + public Builder setEnabled(boolean value) { + + enabled_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * bool enabled = 4; + * @return This builder for chaining. + */ + public Builder clearEnabled() { + bitField0_ = (bitField0_ & ~0x00000008); + enabled_ = false; + onChanged(); + return this; + } + + private int managerState_ ; + /** + * int32 manager_state = 5; + * @return The managerState. + */ + @java.lang.Override + public int getManagerState() { + return managerState_; + } + /** + * int32 manager_state = 5; + * @param value The managerState to set. + * @return This builder for chaining. + */ + public Builder setManagerState(int value) { + + managerState_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + * int32 manager_state = 5; + * @return This builder for chaining. + */ + public Builder clearManagerState() { + bitField0_ = (bitField0_ & ~0x00000010); + managerState_ = 0; + onChanged(); + return this; + } + + private int health_ ; + /** + * int32 health = 6; + * @return The health. + */ + @java.lang.Override + public int getHealth() { + return health_; + } + /** + * int32 health = 6; + * @param value The health to set. + * @return This builder for chaining. + */ + public Builder setHealth(int value) { + + health_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + * int32 health = 6; + * @return This builder for chaining. + */ + public Builder clearHealth() { + bitField0_ = (bitField0_ & ~0x00000020); + health_ = 0; + onChanged(); + return this; + } + + private boolean hasError_ ; + /** + * bool has_error = 7; + * @return The hasError. + */ + @java.lang.Override + public boolean getHasError() { + return hasError_; + } + /** + * bool has_error = 7; + * @param value The hasError to set. + * @return This builder for chaining. + */ + public Builder setHasError(boolean value) { + + hasError_ = value; + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + /** + * bool has_error = 7; + * @return This builder for chaining. + */ + public Builder clearHasError() { + bitField0_ = (bitField0_ & ~0x00000040); + hasError_ = false; + onChanged(); + return this; + } + + private java.lang.Object errorMessage_ = ""; + /** + * string error_message = 8; + * @return The errorMessage. + */ + public java.lang.String getErrorMessage() { + java.lang.Object ref = errorMessage_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + errorMessage_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string error_message = 8; + * @return The bytes for errorMessage. + */ + public com.google.protobuf.ByteString + getErrorMessageBytes() { + java.lang.Object ref = errorMessage_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + errorMessage_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string error_message = 8; + * @param value The errorMessage to set. + * @return This builder for chaining. + */ + public Builder setErrorMessage( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + errorMessage_ = value; + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + /** + * string error_message = 8; + * @return This builder for chaining. + */ + public Builder clearErrorMessage() { + errorMessage_ = getDefaultInstance().getErrorMessage(); + bitField0_ = (bitField0_ & ~0x00000080); + onChanged(); + return this; + } + /** + * string error_message = 8; + * @param value The bytes for errorMessage to set. + * @return This builder for chaining. + */ + public Builder setErrorMessageBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + errorMessage_ = value; + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + + private long statusUpdatedAtUnixMs_ ; + /** + * uint64 status_updated_at_unix_ms = 9; + * @return The statusUpdatedAtUnixMs. + */ + @java.lang.Override + public long getStatusUpdatedAtUnixMs() { + return statusUpdatedAtUnixMs_; + } + /** + * uint64 status_updated_at_unix_ms = 9; + * @param value The statusUpdatedAtUnixMs to set. + * @return This builder for chaining. + */ + public Builder setStatusUpdatedAtUnixMs(long value) { + + statusUpdatedAtUnixMs_ = value; + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + /** + * uint64 status_updated_at_unix_ms = 9; + * @return This builder for chaining. + */ + public Builder clearStatusUpdatedAtUnixMs() { + bitField0_ = (bitField0_ & ~0x00000100); + statusUpdatedAtUnixMs_ = 0L; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:cmvr.quic_gateway.v1.ManagedDeviceStatus) + } + + // @@protoc_insertion_point(class_scope:cmvr.quic_gateway.v1.ManagedDeviceStatus) + private static final com.cmvr.quic.gateway.v1.ManagedDeviceStatus DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new com.cmvr.quic.gateway.v1.ManagedDeviceStatus(); + } + + public static com.cmvr.quic.gateway.v1.ManagedDeviceStatus getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public ManagedDeviceStatus parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.ManagedDeviceStatus getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + +} + diff --git a/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/ManagedDeviceStatusOrBuilder.java b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/ManagedDeviceStatusOrBuilder.java new file mode 100644 index 0000000..b54ac04 --- /dev/null +++ b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/ManagedDeviceStatusOrBuilder.java @@ -0,0 +1,82 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: cmvr/quic_gateway/v1/quic_gateway.proto + +// Protobuf Java Version: 3.25.5 +package com.cmvr.quic.gateway.v1; + +public interface ManagedDeviceStatusOrBuilder extends + // @@protoc_insertion_point(interface_extends:cmvr.quic_gateway.v1.ManagedDeviceStatus) + com.google.protobuf.MessageOrBuilder { + + /** + * string device_id = 1; + * @return The deviceId. + */ + java.lang.String getDeviceId(); + /** + * string device_id = 1; + * @return The bytes for deviceId. + */ + com.google.protobuf.ByteString + getDeviceIdBytes(); + + /** + * int32 kind = 2; + * @return The kind. + */ + int getKind(); + + /** + * string type_name = 3; + * @return The typeName. + */ + java.lang.String getTypeName(); + /** + * string type_name = 3; + * @return The bytes for typeName. + */ + com.google.protobuf.ByteString + getTypeNameBytes(); + + /** + * bool enabled = 4; + * @return The enabled. + */ + boolean getEnabled(); + + /** + * int32 manager_state = 5; + * @return The managerState. + */ + int getManagerState(); + + /** + * int32 health = 6; + * @return The health. + */ + int getHealth(); + + /** + * bool has_error = 7; + * @return The hasError. + */ + boolean getHasError(); + + /** + * string error_message = 8; + * @return The errorMessage. + */ + java.lang.String getErrorMessage(); + /** + * string error_message = 8; + * @return The bytes for errorMessage. + */ + com.google.protobuf.ByteString + getErrorMessageBytes(); + + /** + * uint64 status_updated_at_unix_ms = 9; + * @return The statusUpdatedAtUnixMs. + */ + long getStatusUpdatedAtUnixMs(); +} diff --git a/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/MediaFrame.java b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/MediaFrame.java new file mode 100644 index 0000000..63f4cb3 --- /dev/null +++ b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/MediaFrame.java @@ -0,0 +1,1483 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: cmvr/quic_gateway/v1/quic_gateway.proto + +// Protobuf Java Version: 3.25.5 +package com.cmvr.quic.gateway.v1; + +/** + * Protobuf type {@code cmvr.quic_gateway.v1.MediaFrame} + */ +public final class MediaFrame extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:cmvr.quic_gateway.v1.MediaFrame) + MediaFrameOrBuilder { +private static final long serialVersionUID = 0L; + // Use MediaFrame.newBuilder() to construct. + private MediaFrame(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private MediaFrame() { + nodeId_ = ""; + sessionId_ = ""; + codec_ = ""; + payloadFormat_ = ""; + payload_ = com.google.protobuf.ByteString.EMPTY; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new MediaFrame(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_MediaFrame_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_MediaFrame_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.cmvr.quic.gateway.v1.MediaFrame.class, com.cmvr.quic.gateway.v1.MediaFrame.Builder.class); + } + + public static final int NODE_ID_FIELD_NUMBER = 1; + @SuppressWarnings("serial") + private volatile java.lang.Object nodeId_ = ""; + /** + * string node_id = 1; + * @return The nodeId. + */ + @java.lang.Override + public java.lang.String getNodeId() { + java.lang.Object ref = nodeId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + nodeId_ = s; + return s; + } + } + /** + * string node_id = 1; + * @return The bytes for nodeId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getNodeIdBytes() { + java.lang.Object ref = nodeId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + nodeId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SESSION_ID_FIELD_NUMBER = 2; + @SuppressWarnings("serial") + private volatile java.lang.Object sessionId_ = ""; + /** + * string session_id = 2; + * @return The sessionId. + */ + @java.lang.Override + public java.lang.String getSessionId() { + java.lang.Object ref = sessionId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sessionId_ = s; + return s; + } + } + /** + * string session_id = 2; + * @return The bytes for sessionId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getSessionIdBytes() { + java.lang.Object ref = sessionId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + sessionId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SESSION_EPOCH_FIELD_NUMBER = 3; + private long sessionEpoch_ = 0L; + /** + * uint64 session_epoch = 3; + * @return The sessionEpoch. + */ + @java.lang.Override + public long getSessionEpoch() { + return sessionEpoch_; + } + + public static final int TRACK_ID_FIELD_NUMBER = 4; + private int trackId_ = 0; + /** + * uint32 track_id = 4; + * @return The trackId. + */ + @java.lang.Override + public int getTrackId() { + return trackId_; + } + + public static final int KIND_FIELD_NUMBER = 5; + private int kind_ = 0; + /** + * int32 kind = 5; + * @return The kind. + */ + @java.lang.Override + public int getKind() { + return kind_; + } + + public static final int CODEC_FIELD_NUMBER = 6; + @SuppressWarnings("serial") + private volatile java.lang.Object codec_ = ""; + /** + * string codec = 6; + * @return The codec. + */ + @java.lang.Override + public java.lang.String getCodec() { + java.lang.Object ref = codec_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + codec_ = s; + return s; + } + } + /** + * string codec = 6; + * @return The bytes for codec. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getCodecBytes() { + java.lang.Object ref = codec_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + codec_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int PAYLOAD_FORMAT_FIELD_NUMBER = 7; + @SuppressWarnings("serial") + private volatile java.lang.Object payloadFormat_ = ""; + /** + * string payload_format = 7; + * @return The payloadFormat. + */ + @java.lang.Override + public java.lang.String getPayloadFormat() { + java.lang.Object ref = payloadFormat_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + payloadFormat_ = s; + return s; + } + } + /** + * string payload_format = 7; + * @return The bytes for payloadFormat. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getPayloadFormatBytes() { + java.lang.Object ref = payloadFormat_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + payloadFormat_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int PACKET_SEQUENCE_FIELD_NUMBER = 8; + private long packetSequence_ = 0L; + /** + * uint64 packet_sequence = 8; + * @return The packetSequence. + */ + @java.lang.Override + public long getPacketSequence() { + return packetSequence_; + } + + public static final int FRAME_SEQUENCE_FIELD_NUMBER = 9; + private long frameSequence_ = 0L; + /** + * uint64 frame_sequence = 9; + * @return The frameSequence. + */ + @java.lang.Override + public long getFrameSequence() { + return frameSequence_; + } + + public static final int CAPTURE_TIMESTAMP_US_FIELD_NUMBER = 10; + private long captureTimestampUs_ = 0L; + /** + * uint64 capture_timestamp_us = 10; + * @return The captureTimestampUs. + */ + @java.lang.Override + public long getCaptureTimestampUs() { + return captureTimestampUs_; + } + + public static final int FLAGS_FIELD_NUMBER = 11; + private int flags_ = 0; + /** + * uint32 flags = 11; + * @return The flags. + */ + @java.lang.Override + public int getFlags() { + return flags_; + } + + public static final int PAYLOAD_FIELD_NUMBER = 12; + private com.google.protobuf.ByteString payload_ = com.google.protobuf.ByteString.EMPTY; + /** + * bytes payload = 12; + * @return The payload. + */ + @java.lang.Override + public com.google.protobuf.ByteString getPayload() { + return payload_; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nodeId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, nodeId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sessionId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, sessionId_); + } + if (sessionEpoch_ != 0L) { + output.writeUInt64(3, sessionEpoch_); + } + if (trackId_ != 0) { + output.writeUInt32(4, trackId_); + } + if (kind_ != 0) { + output.writeInt32(5, kind_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(codec_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 6, codec_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(payloadFormat_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 7, payloadFormat_); + } + if (packetSequence_ != 0L) { + output.writeUInt64(8, packetSequence_); + } + if (frameSequence_ != 0L) { + output.writeUInt64(9, frameSequence_); + } + if (captureTimestampUs_ != 0L) { + output.writeUInt64(10, captureTimestampUs_); + } + if (flags_ != 0) { + output.writeUInt32(11, flags_); + } + if (!payload_.isEmpty()) { + output.writeBytes(12, payload_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nodeId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, nodeId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sessionId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, sessionId_); + } + if (sessionEpoch_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeUInt64Size(3, sessionEpoch_); + } + if (trackId_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(4, trackId_); + } + if (kind_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeInt32Size(5, kind_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(codec_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, codec_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(payloadFormat_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, payloadFormat_); + } + if (packetSequence_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeUInt64Size(8, packetSequence_); + } + if (frameSequence_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeUInt64Size(9, frameSequence_); + } + if (captureTimestampUs_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeUInt64Size(10, captureTimestampUs_); + } + if (flags_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(11, flags_); + } + if (!payload_.isEmpty()) { + size += com.google.protobuf.CodedOutputStream + .computeBytesSize(12, payload_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.cmvr.quic.gateway.v1.MediaFrame)) { + return super.equals(obj); + } + com.cmvr.quic.gateway.v1.MediaFrame other = (com.cmvr.quic.gateway.v1.MediaFrame) obj; + + if (!getNodeId() + .equals(other.getNodeId())) return false; + if (!getSessionId() + .equals(other.getSessionId())) return false; + if (getSessionEpoch() + != other.getSessionEpoch()) return false; + if (getTrackId() + != other.getTrackId()) return false; + if (getKind() + != other.getKind()) return false; + if (!getCodec() + .equals(other.getCodec())) return false; + if (!getPayloadFormat() + .equals(other.getPayloadFormat())) return false; + if (getPacketSequence() + != other.getPacketSequence()) return false; + if (getFrameSequence() + != other.getFrameSequence()) return false; + if (getCaptureTimestampUs() + != other.getCaptureTimestampUs()) return false; + if (getFlags() + != other.getFlags()) return false; + if (!getPayload() + .equals(other.getPayload())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + NODE_ID_FIELD_NUMBER; + hash = (53 * hash) + getNodeId().hashCode(); + hash = (37 * hash) + SESSION_ID_FIELD_NUMBER; + hash = (53 * hash) + getSessionId().hashCode(); + hash = (37 * hash) + SESSION_EPOCH_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getSessionEpoch()); + hash = (37 * hash) + TRACK_ID_FIELD_NUMBER; + hash = (53 * hash) + getTrackId(); + hash = (37 * hash) + KIND_FIELD_NUMBER; + hash = (53 * hash) + getKind(); + hash = (37 * hash) + CODEC_FIELD_NUMBER; + hash = (53 * hash) + getCodec().hashCode(); + hash = (37 * hash) + PAYLOAD_FORMAT_FIELD_NUMBER; + hash = (53 * hash) + getPayloadFormat().hashCode(); + hash = (37 * hash) + PACKET_SEQUENCE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getPacketSequence()); + hash = (37 * hash) + FRAME_SEQUENCE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getFrameSequence()); + hash = (37 * hash) + CAPTURE_TIMESTAMP_US_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getCaptureTimestampUs()); + hash = (37 * hash) + FLAGS_FIELD_NUMBER; + hash = (53 * hash) + getFlags(); + hash = (37 * hash) + PAYLOAD_FIELD_NUMBER; + hash = (53 * hash) + getPayload().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.cmvr.quic.gateway.v1.MediaFrame parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.cmvr.quic.gateway.v1.MediaFrame parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.MediaFrame parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.cmvr.quic.gateway.v1.MediaFrame parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.MediaFrame parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.cmvr.quic.gateway.v1.MediaFrame parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.MediaFrame parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static com.cmvr.quic.gateway.v1.MediaFrame parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static com.cmvr.quic.gateway.v1.MediaFrame parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static com.cmvr.quic.gateway.v1.MediaFrame parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.MediaFrame parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static com.cmvr.quic.gateway.v1.MediaFrame parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(com.cmvr.quic.gateway.v1.MediaFrame prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code cmvr.quic_gateway.v1.MediaFrame} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:cmvr.quic_gateway.v1.MediaFrame) + com.cmvr.quic.gateway.v1.MediaFrameOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_MediaFrame_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_MediaFrame_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.cmvr.quic.gateway.v1.MediaFrame.class, com.cmvr.quic.gateway.v1.MediaFrame.Builder.class); + } + + // Construct using com.cmvr.quic.gateway.v1.MediaFrame.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + nodeId_ = ""; + sessionId_ = ""; + sessionEpoch_ = 0L; + trackId_ = 0; + kind_ = 0; + codec_ = ""; + payloadFormat_ = ""; + packetSequence_ = 0L; + frameSequence_ = 0L; + captureTimestampUs_ = 0L; + flags_ = 0; + payload_ = com.google.protobuf.ByteString.EMPTY; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_MediaFrame_descriptor; + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.MediaFrame getDefaultInstanceForType() { + return com.cmvr.quic.gateway.v1.MediaFrame.getDefaultInstance(); + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.MediaFrame build() { + com.cmvr.quic.gateway.v1.MediaFrame result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.MediaFrame buildPartial() { + com.cmvr.quic.gateway.v1.MediaFrame result = new com.cmvr.quic.gateway.v1.MediaFrame(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(com.cmvr.quic.gateway.v1.MediaFrame result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.nodeId_ = nodeId_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.sessionId_ = sessionId_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.sessionEpoch_ = sessionEpoch_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.trackId_ = trackId_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.kind_ = kind_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.codec_ = codec_; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.payloadFormat_ = payloadFormat_; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.packetSequence_ = packetSequence_; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + result.frameSequence_ = frameSequence_; + } + if (((from_bitField0_ & 0x00000200) != 0)) { + result.captureTimestampUs_ = captureTimestampUs_; + } + if (((from_bitField0_ & 0x00000400) != 0)) { + result.flags_ = flags_; + } + if (((from_bitField0_ & 0x00000800) != 0)) { + result.payload_ = payload_; + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.cmvr.quic.gateway.v1.MediaFrame) { + return mergeFrom((com.cmvr.quic.gateway.v1.MediaFrame)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.cmvr.quic.gateway.v1.MediaFrame other) { + if (other == com.cmvr.quic.gateway.v1.MediaFrame.getDefaultInstance()) return this; + if (!other.getNodeId().isEmpty()) { + nodeId_ = other.nodeId_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getSessionId().isEmpty()) { + sessionId_ = other.sessionId_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (other.getSessionEpoch() != 0L) { + setSessionEpoch(other.getSessionEpoch()); + } + if (other.getTrackId() != 0) { + setTrackId(other.getTrackId()); + } + if (other.getKind() != 0) { + setKind(other.getKind()); + } + if (!other.getCodec().isEmpty()) { + codec_ = other.codec_; + bitField0_ |= 0x00000020; + onChanged(); + } + if (!other.getPayloadFormat().isEmpty()) { + payloadFormat_ = other.payloadFormat_; + bitField0_ |= 0x00000040; + onChanged(); + } + if (other.getPacketSequence() != 0L) { + setPacketSequence(other.getPacketSequence()); + } + if (other.getFrameSequence() != 0L) { + setFrameSequence(other.getFrameSequence()); + } + if (other.getCaptureTimestampUs() != 0L) { + setCaptureTimestampUs(other.getCaptureTimestampUs()); + } + if (other.getFlags() != 0) { + setFlags(other.getFlags()); + } + if (other.getPayload() != com.google.protobuf.ByteString.EMPTY) { + setPayload(other.getPayload()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + nodeId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: { + sessionId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 24: { + sessionEpoch_ = input.readUInt64(); + bitField0_ |= 0x00000004; + break; + } // case 24 + case 32: { + trackId_ = input.readUInt32(); + bitField0_ |= 0x00000008; + break; + } // case 32 + case 40: { + kind_ = input.readInt32(); + bitField0_ |= 0x00000010; + break; + } // case 40 + case 50: { + codec_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000020; + break; + } // case 50 + case 58: { + payloadFormat_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000040; + break; + } // case 58 + case 64: { + packetSequence_ = input.readUInt64(); + bitField0_ |= 0x00000080; + break; + } // case 64 + case 72: { + frameSequence_ = input.readUInt64(); + bitField0_ |= 0x00000100; + break; + } // case 72 + case 80: { + captureTimestampUs_ = input.readUInt64(); + bitField0_ |= 0x00000200; + break; + } // case 80 + case 88: { + flags_ = input.readUInt32(); + bitField0_ |= 0x00000400; + break; + } // case 88 + case 98: { + payload_ = input.readBytes(); + bitField0_ |= 0x00000800; + break; + } // case 98 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private java.lang.Object nodeId_ = ""; + /** + * string node_id = 1; + * @return The nodeId. + */ + public java.lang.String getNodeId() { + java.lang.Object ref = nodeId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + nodeId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string node_id = 1; + * @return The bytes for nodeId. + */ + public com.google.protobuf.ByteString + getNodeIdBytes() { + java.lang.Object ref = nodeId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + nodeId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string node_id = 1; + * @param value The nodeId to set. + * @return This builder for chaining. + */ + public Builder setNodeId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + nodeId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * string node_id = 1; + * @return This builder for chaining. + */ + public Builder clearNodeId() { + nodeId_ = getDefaultInstance().getNodeId(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * string node_id = 1; + * @param value The bytes for nodeId to set. + * @return This builder for chaining. + */ + public Builder setNodeIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + nodeId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object sessionId_ = ""; + /** + * string session_id = 2; + * @return The sessionId. + */ + public java.lang.String getSessionId() { + java.lang.Object ref = sessionId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sessionId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string session_id = 2; + * @return The bytes for sessionId. + */ + public com.google.protobuf.ByteString + getSessionIdBytes() { + java.lang.Object ref = sessionId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + sessionId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string session_id = 2; + * @param value The sessionId to set. + * @return This builder for chaining. + */ + public Builder setSessionId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + sessionId_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * string session_id = 2; + * @return This builder for chaining. + */ + public Builder clearSessionId() { + sessionId_ = getDefaultInstance().getSessionId(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + /** + * string session_id = 2; + * @param value The bytes for sessionId to set. + * @return This builder for chaining. + */ + public Builder setSessionIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + sessionId_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private long sessionEpoch_ ; + /** + * uint64 session_epoch = 3; + * @return The sessionEpoch. + */ + @java.lang.Override + public long getSessionEpoch() { + return sessionEpoch_; + } + /** + * uint64 session_epoch = 3; + * @param value The sessionEpoch to set. + * @return This builder for chaining. + */ + public Builder setSessionEpoch(long value) { + + sessionEpoch_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * uint64 session_epoch = 3; + * @return This builder for chaining. + */ + public Builder clearSessionEpoch() { + bitField0_ = (bitField0_ & ~0x00000004); + sessionEpoch_ = 0L; + onChanged(); + return this; + } + + private int trackId_ ; + /** + * uint32 track_id = 4; + * @return The trackId. + */ + @java.lang.Override + public int getTrackId() { + return trackId_; + } + /** + * uint32 track_id = 4; + * @param value The trackId to set. + * @return This builder for chaining. + */ + public Builder setTrackId(int value) { + + trackId_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * uint32 track_id = 4; + * @return This builder for chaining. + */ + public Builder clearTrackId() { + bitField0_ = (bitField0_ & ~0x00000008); + trackId_ = 0; + onChanged(); + return this; + } + + private int kind_ ; + /** + * int32 kind = 5; + * @return The kind. + */ + @java.lang.Override + public int getKind() { + return kind_; + } + /** + * int32 kind = 5; + * @param value The kind to set. + * @return This builder for chaining. + */ + public Builder setKind(int value) { + + kind_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + * int32 kind = 5; + * @return This builder for chaining. + */ + public Builder clearKind() { + bitField0_ = (bitField0_ & ~0x00000010); + kind_ = 0; + onChanged(); + return this; + } + + private java.lang.Object codec_ = ""; + /** + * string codec = 6; + * @return The codec. + */ + public java.lang.String getCodec() { + java.lang.Object ref = codec_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + codec_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string codec = 6; + * @return The bytes for codec. + */ + public com.google.protobuf.ByteString + getCodecBytes() { + java.lang.Object ref = codec_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + codec_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string codec = 6; + * @param value The codec to set. + * @return This builder for chaining. + */ + public Builder setCodec( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + codec_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + * string codec = 6; + * @return This builder for chaining. + */ + public Builder clearCodec() { + codec_ = getDefaultInstance().getCodec(); + bitField0_ = (bitField0_ & ~0x00000020); + onChanged(); + return this; + } + /** + * string codec = 6; + * @param value The bytes for codec to set. + * @return This builder for chaining. + */ + public Builder setCodecBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + codec_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + + private java.lang.Object payloadFormat_ = ""; + /** + * string payload_format = 7; + * @return The payloadFormat. + */ + public java.lang.String getPayloadFormat() { + java.lang.Object ref = payloadFormat_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + payloadFormat_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string payload_format = 7; + * @return The bytes for payloadFormat. + */ + public com.google.protobuf.ByteString + getPayloadFormatBytes() { + java.lang.Object ref = payloadFormat_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + payloadFormat_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string payload_format = 7; + * @param value The payloadFormat to set. + * @return This builder for chaining. + */ + public Builder setPayloadFormat( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + payloadFormat_ = value; + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + /** + * string payload_format = 7; + * @return This builder for chaining. + */ + public Builder clearPayloadFormat() { + payloadFormat_ = getDefaultInstance().getPayloadFormat(); + bitField0_ = (bitField0_ & ~0x00000040); + onChanged(); + return this; + } + /** + * string payload_format = 7; + * @param value The bytes for payloadFormat to set. + * @return This builder for chaining. + */ + public Builder setPayloadFormatBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + payloadFormat_ = value; + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + + private long packetSequence_ ; + /** + * uint64 packet_sequence = 8; + * @return The packetSequence. + */ + @java.lang.Override + public long getPacketSequence() { + return packetSequence_; + } + /** + * uint64 packet_sequence = 8; + * @param value The packetSequence to set. + * @return This builder for chaining. + */ + public Builder setPacketSequence(long value) { + + packetSequence_ = value; + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + /** + * uint64 packet_sequence = 8; + * @return This builder for chaining. + */ + public Builder clearPacketSequence() { + bitField0_ = (bitField0_ & ~0x00000080); + packetSequence_ = 0L; + onChanged(); + return this; + } + + private long frameSequence_ ; + /** + * uint64 frame_sequence = 9; + * @return The frameSequence. + */ + @java.lang.Override + public long getFrameSequence() { + return frameSequence_; + } + /** + * uint64 frame_sequence = 9; + * @param value The frameSequence to set. + * @return This builder for chaining. + */ + public Builder setFrameSequence(long value) { + + frameSequence_ = value; + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + /** + * uint64 frame_sequence = 9; + * @return This builder for chaining. + */ + public Builder clearFrameSequence() { + bitField0_ = (bitField0_ & ~0x00000100); + frameSequence_ = 0L; + onChanged(); + return this; + } + + private long captureTimestampUs_ ; + /** + * uint64 capture_timestamp_us = 10; + * @return The captureTimestampUs. + */ + @java.lang.Override + public long getCaptureTimestampUs() { + return captureTimestampUs_; + } + /** + * uint64 capture_timestamp_us = 10; + * @param value The captureTimestampUs to set. + * @return This builder for chaining. + */ + public Builder setCaptureTimestampUs(long value) { + + captureTimestampUs_ = value; + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + /** + * uint64 capture_timestamp_us = 10; + * @return This builder for chaining. + */ + public Builder clearCaptureTimestampUs() { + bitField0_ = (bitField0_ & ~0x00000200); + captureTimestampUs_ = 0L; + onChanged(); + return this; + } + + private int flags_ ; + /** + * uint32 flags = 11; + * @return The flags. + */ + @java.lang.Override + public int getFlags() { + return flags_; + } + /** + * uint32 flags = 11; + * @param value The flags to set. + * @return This builder for chaining. + */ + public Builder setFlags(int value) { + + flags_ = value; + bitField0_ |= 0x00000400; + onChanged(); + return this; + } + /** + * uint32 flags = 11; + * @return This builder for chaining. + */ + public Builder clearFlags() { + bitField0_ = (bitField0_ & ~0x00000400); + flags_ = 0; + onChanged(); + return this; + } + + private com.google.protobuf.ByteString payload_ = com.google.protobuf.ByteString.EMPTY; + /** + * bytes payload = 12; + * @return The payload. + */ + @java.lang.Override + public com.google.protobuf.ByteString getPayload() { + return payload_; + } + /** + * bytes payload = 12; + * @param value The payload to set. + * @return This builder for chaining. + */ + public Builder setPayload(com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + payload_ = value; + bitField0_ |= 0x00000800; + onChanged(); + return this; + } + /** + * bytes payload = 12; + * @return This builder for chaining. + */ + public Builder clearPayload() { + bitField0_ = (bitField0_ & ~0x00000800); + payload_ = getDefaultInstance().getPayload(); + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:cmvr.quic_gateway.v1.MediaFrame) + } + + // @@protoc_insertion_point(class_scope:cmvr.quic_gateway.v1.MediaFrame) + private static final com.cmvr.quic.gateway.v1.MediaFrame DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new com.cmvr.quic.gateway.v1.MediaFrame(); + } + + public static com.cmvr.quic.gateway.v1.MediaFrame getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public MediaFrame parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.MediaFrame getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + +} + diff --git a/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/MediaFrameOrBuilder.java b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/MediaFrameOrBuilder.java new file mode 100644 index 0000000..96bb615 --- /dev/null +++ b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/MediaFrameOrBuilder.java @@ -0,0 +1,106 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: cmvr/quic_gateway/v1/quic_gateway.proto + +// Protobuf Java Version: 3.25.5 +package com.cmvr.quic.gateway.v1; + +public interface MediaFrameOrBuilder extends + // @@protoc_insertion_point(interface_extends:cmvr.quic_gateway.v1.MediaFrame) + com.google.protobuf.MessageOrBuilder { + + /** + * string node_id = 1; + * @return The nodeId. + */ + java.lang.String getNodeId(); + /** + * string node_id = 1; + * @return The bytes for nodeId. + */ + com.google.protobuf.ByteString + getNodeIdBytes(); + + /** + * string session_id = 2; + * @return The sessionId. + */ + java.lang.String getSessionId(); + /** + * string session_id = 2; + * @return The bytes for sessionId. + */ + com.google.protobuf.ByteString + getSessionIdBytes(); + + /** + * uint64 session_epoch = 3; + * @return The sessionEpoch. + */ + long getSessionEpoch(); + + /** + * uint32 track_id = 4; + * @return The trackId. + */ + int getTrackId(); + + /** + * int32 kind = 5; + * @return The kind. + */ + int getKind(); + + /** + * string codec = 6; + * @return The codec. + */ + java.lang.String getCodec(); + /** + * string codec = 6; + * @return The bytes for codec. + */ + com.google.protobuf.ByteString + getCodecBytes(); + + /** + * string payload_format = 7; + * @return The payloadFormat. + */ + java.lang.String getPayloadFormat(); + /** + * string payload_format = 7; + * @return The bytes for payloadFormat. + */ + com.google.protobuf.ByteString + getPayloadFormatBytes(); + + /** + * uint64 packet_sequence = 8; + * @return The packetSequence. + */ + long getPacketSequence(); + + /** + * uint64 frame_sequence = 9; + * @return The frameSequence. + */ + long getFrameSequence(); + + /** + * uint64 capture_timestamp_us = 10; + * @return The captureTimestampUs. + */ + long getCaptureTimestampUs(); + + /** + * uint32 flags = 11; + * @return The flags. + */ + int getFlags(); + + /** + * bytes payload = 12; + * @return The payload. + */ + com.google.protobuf.ByteString getPayload(); +} diff --git a/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/MediaTrack.java b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/MediaTrack.java new file mode 100644 index 0000000..d27d646 --- /dev/null +++ b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/MediaTrack.java @@ -0,0 +1,1612 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: cmvr/quic_gateway/v1/quic_gateway.proto + +// Protobuf Java Version: 3.25.5 +package com.cmvr.quic.gateway.v1; + +/** + * Protobuf type {@code cmvr.quic_gateway.v1.MediaTrack} + */ +public final class MediaTrack extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:cmvr.quic_gateway.v1.MediaTrack) + MediaTrackOrBuilder { +private static final long serialVersionUID = 0L; + // Use MediaTrack.newBuilder() to construct. + private MediaTrack(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private MediaTrack() { + deviceId_ = ""; + sourceTrackId_ = ""; + codec_ = ""; + payloadFormat_ = ""; + codecConfig_ = com.google.protobuf.ByteString.EMPTY; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new MediaTrack(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_MediaTrack_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_MediaTrack_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.cmvr.quic.gateway.v1.MediaTrack.class, com.cmvr.quic.gateway.v1.MediaTrack.Builder.class); + } + + public static final int TRACK_ID_FIELD_NUMBER = 1; + private int trackId_ = 0; + /** + * uint32 track_id = 1; + * @return The trackId. + */ + @java.lang.Override + public int getTrackId() { + return trackId_; + } + + public static final int KIND_FIELD_NUMBER = 2; + private int kind_ = 0; + /** + * int32 kind = 2; + * @return The kind. + */ + @java.lang.Override + public int getKind() { + return kind_; + } + + public static final int DEVICE_ID_FIELD_NUMBER = 3; + @SuppressWarnings("serial") + private volatile java.lang.Object deviceId_ = ""; + /** + * string device_id = 3; + * @return The deviceId. + */ + @java.lang.Override + public java.lang.String getDeviceId() { + java.lang.Object ref = deviceId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + deviceId_ = s; + return s; + } + } + /** + * string device_id = 3; + * @return The bytes for deviceId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getDeviceIdBytes() { + java.lang.Object ref = deviceId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + deviceId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SOURCE_TRACK_ID_FIELD_NUMBER = 4; + @SuppressWarnings("serial") + private volatile java.lang.Object sourceTrackId_ = ""; + /** + * string source_track_id = 4; + * @return The sourceTrackId. + */ + @java.lang.Override + public java.lang.String getSourceTrackId() { + java.lang.Object ref = sourceTrackId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sourceTrackId_ = s; + return s; + } + } + /** + * string source_track_id = 4; + * @return The bytes for sourceTrackId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getSourceTrackIdBytes() { + java.lang.Object ref = sourceTrackId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + sourceTrackId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int CODEC_FIELD_NUMBER = 5; + @SuppressWarnings("serial") + private volatile java.lang.Object codec_ = ""; + /** + * string codec = 5; + * @return The codec. + */ + @java.lang.Override + public java.lang.String getCodec() { + java.lang.Object ref = codec_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + codec_ = s; + return s; + } + } + /** + * string codec = 5; + * @return The bytes for codec. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getCodecBytes() { + java.lang.Object ref = codec_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + codec_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int PAYLOAD_FORMAT_FIELD_NUMBER = 6; + @SuppressWarnings("serial") + private volatile java.lang.Object payloadFormat_ = ""; + /** + * string payload_format = 6; + * @return The payloadFormat. + */ + @java.lang.Override + public java.lang.String getPayloadFormat() { + java.lang.Object ref = payloadFormat_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + payloadFormat_ = s; + return s; + } + } + /** + * string payload_format = 6; + * @return The bytes for payloadFormat. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getPayloadFormatBytes() { + java.lang.Object ref = payloadFormat_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + payloadFormat_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int CODEC_GENERATION_FIELD_NUMBER = 7; + private long codecGeneration_ = 0L; + /** + * uint64 codec_generation = 7; + * @return The codecGeneration. + */ + @java.lang.Override + public long getCodecGeneration() { + return codecGeneration_; + } + + public static final int CODEC_GENERATION_TOKEN_FIELD_NUMBER = 8; + private int codecGenerationToken_ = 0; + /** + * uint32 codec_generation_token = 8; + * @return The codecGenerationToken. + */ + @java.lang.Override + public int getCodecGenerationToken() { + return codecGenerationToken_; + } + + public static final int WIDTH_FIELD_NUMBER = 9; + private int width_ = 0; + /** + * uint32 width = 9; + * @return The width. + */ + @java.lang.Override + public int getWidth() { + return width_; + } + + public static final int HEIGHT_FIELD_NUMBER = 10; + private int height_ = 0; + /** + * uint32 height = 10; + * @return The height. + */ + @java.lang.Override + public int getHeight() { + return height_; + } + + public static final int FRAMES_PER_SECOND_FIELD_NUMBER = 11; + private int framesPerSecond_ = 0; + /** + * uint32 frames_per_second = 11; + * @return The framesPerSecond. + */ + @java.lang.Override + public int getFramesPerSecond() { + return framesPerSecond_; + } + + public static final int SAMPLE_RATE_FIELD_NUMBER = 12; + private int sampleRate_ = 0; + /** + * uint32 sample_rate = 12; + * @return The sampleRate. + */ + @java.lang.Override + public int getSampleRate() { + return sampleRate_; + } + + public static final int CHANNELS_FIELD_NUMBER = 13; + private int channels_ = 0; + /** + * uint32 channels = 13; + * @return The channels. + */ + @java.lang.Override + public int getChannels() { + return channels_; + } + + public static final int CODEC_CONFIG_FIELD_NUMBER = 14; + private com.google.protobuf.ByteString codecConfig_ = com.google.protobuf.ByteString.EMPTY; + /** + * bytes codec_config = 14; + * @return The codecConfig. + */ + @java.lang.Override + public com.google.protobuf.ByteString getCodecConfig() { + return codecConfig_; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (trackId_ != 0) { + output.writeUInt32(1, trackId_); + } + if (kind_ != 0) { + output.writeInt32(2, kind_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deviceId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, deviceId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sourceTrackId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 4, sourceTrackId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(codec_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 5, codec_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(payloadFormat_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 6, payloadFormat_); + } + if (codecGeneration_ != 0L) { + output.writeUInt64(7, codecGeneration_); + } + if (codecGenerationToken_ != 0) { + output.writeUInt32(8, codecGenerationToken_); + } + if (width_ != 0) { + output.writeUInt32(9, width_); + } + if (height_ != 0) { + output.writeUInt32(10, height_); + } + if (framesPerSecond_ != 0) { + output.writeUInt32(11, framesPerSecond_); + } + if (sampleRate_ != 0) { + output.writeUInt32(12, sampleRate_); + } + if (channels_ != 0) { + output.writeUInt32(13, channels_); + } + if (!codecConfig_.isEmpty()) { + output.writeBytes(14, codecConfig_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (trackId_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(1, trackId_); + } + if (kind_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeInt32Size(2, kind_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deviceId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, deviceId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sourceTrackId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, sourceTrackId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(codec_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, codec_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(payloadFormat_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, payloadFormat_); + } + if (codecGeneration_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeUInt64Size(7, codecGeneration_); + } + if (codecGenerationToken_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(8, codecGenerationToken_); + } + if (width_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(9, width_); + } + if (height_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(10, height_); + } + if (framesPerSecond_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(11, framesPerSecond_); + } + if (sampleRate_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(12, sampleRate_); + } + if (channels_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(13, channels_); + } + if (!codecConfig_.isEmpty()) { + size += com.google.protobuf.CodedOutputStream + .computeBytesSize(14, codecConfig_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.cmvr.quic.gateway.v1.MediaTrack)) { + return super.equals(obj); + } + com.cmvr.quic.gateway.v1.MediaTrack other = (com.cmvr.quic.gateway.v1.MediaTrack) obj; + + if (getTrackId() + != other.getTrackId()) return false; + if (getKind() + != other.getKind()) return false; + if (!getDeviceId() + .equals(other.getDeviceId())) return false; + if (!getSourceTrackId() + .equals(other.getSourceTrackId())) return false; + if (!getCodec() + .equals(other.getCodec())) return false; + if (!getPayloadFormat() + .equals(other.getPayloadFormat())) return false; + if (getCodecGeneration() + != other.getCodecGeneration()) return false; + if (getCodecGenerationToken() + != other.getCodecGenerationToken()) return false; + if (getWidth() + != other.getWidth()) return false; + if (getHeight() + != other.getHeight()) return false; + if (getFramesPerSecond() + != other.getFramesPerSecond()) return false; + if (getSampleRate() + != other.getSampleRate()) return false; + if (getChannels() + != other.getChannels()) return false; + if (!getCodecConfig() + .equals(other.getCodecConfig())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + TRACK_ID_FIELD_NUMBER; + hash = (53 * hash) + getTrackId(); + hash = (37 * hash) + KIND_FIELD_NUMBER; + hash = (53 * hash) + getKind(); + hash = (37 * hash) + DEVICE_ID_FIELD_NUMBER; + hash = (53 * hash) + getDeviceId().hashCode(); + hash = (37 * hash) + SOURCE_TRACK_ID_FIELD_NUMBER; + hash = (53 * hash) + getSourceTrackId().hashCode(); + hash = (37 * hash) + CODEC_FIELD_NUMBER; + hash = (53 * hash) + getCodec().hashCode(); + hash = (37 * hash) + PAYLOAD_FORMAT_FIELD_NUMBER; + hash = (53 * hash) + getPayloadFormat().hashCode(); + hash = (37 * hash) + CODEC_GENERATION_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getCodecGeneration()); + hash = (37 * hash) + CODEC_GENERATION_TOKEN_FIELD_NUMBER; + hash = (53 * hash) + getCodecGenerationToken(); + hash = (37 * hash) + WIDTH_FIELD_NUMBER; + hash = (53 * hash) + getWidth(); + hash = (37 * hash) + HEIGHT_FIELD_NUMBER; + hash = (53 * hash) + getHeight(); + hash = (37 * hash) + FRAMES_PER_SECOND_FIELD_NUMBER; + hash = (53 * hash) + getFramesPerSecond(); + hash = (37 * hash) + SAMPLE_RATE_FIELD_NUMBER; + hash = (53 * hash) + getSampleRate(); + hash = (37 * hash) + CHANNELS_FIELD_NUMBER; + hash = (53 * hash) + getChannels(); + hash = (37 * hash) + CODEC_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getCodecConfig().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.cmvr.quic.gateway.v1.MediaTrack parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.cmvr.quic.gateway.v1.MediaTrack parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.MediaTrack parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.cmvr.quic.gateway.v1.MediaTrack parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.MediaTrack parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.cmvr.quic.gateway.v1.MediaTrack parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.MediaTrack parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static com.cmvr.quic.gateway.v1.MediaTrack parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static com.cmvr.quic.gateway.v1.MediaTrack parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static com.cmvr.quic.gateway.v1.MediaTrack parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.MediaTrack parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static com.cmvr.quic.gateway.v1.MediaTrack parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(com.cmvr.quic.gateway.v1.MediaTrack prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code cmvr.quic_gateway.v1.MediaTrack} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:cmvr.quic_gateway.v1.MediaTrack) + com.cmvr.quic.gateway.v1.MediaTrackOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_MediaTrack_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_MediaTrack_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.cmvr.quic.gateway.v1.MediaTrack.class, com.cmvr.quic.gateway.v1.MediaTrack.Builder.class); + } + + // Construct using com.cmvr.quic.gateway.v1.MediaTrack.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + trackId_ = 0; + kind_ = 0; + deviceId_ = ""; + sourceTrackId_ = ""; + codec_ = ""; + payloadFormat_ = ""; + codecGeneration_ = 0L; + codecGenerationToken_ = 0; + width_ = 0; + height_ = 0; + framesPerSecond_ = 0; + sampleRate_ = 0; + channels_ = 0; + codecConfig_ = com.google.protobuf.ByteString.EMPTY; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_MediaTrack_descriptor; + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.MediaTrack getDefaultInstanceForType() { + return com.cmvr.quic.gateway.v1.MediaTrack.getDefaultInstance(); + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.MediaTrack build() { + com.cmvr.quic.gateway.v1.MediaTrack result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.MediaTrack buildPartial() { + com.cmvr.quic.gateway.v1.MediaTrack result = new com.cmvr.quic.gateway.v1.MediaTrack(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(com.cmvr.quic.gateway.v1.MediaTrack result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.trackId_ = trackId_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.kind_ = kind_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.deviceId_ = deviceId_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.sourceTrackId_ = sourceTrackId_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.codec_ = codec_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.payloadFormat_ = payloadFormat_; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.codecGeneration_ = codecGeneration_; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.codecGenerationToken_ = codecGenerationToken_; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + result.width_ = width_; + } + if (((from_bitField0_ & 0x00000200) != 0)) { + result.height_ = height_; + } + if (((from_bitField0_ & 0x00000400) != 0)) { + result.framesPerSecond_ = framesPerSecond_; + } + if (((from_bitField0_ & 0x00000800) != 0)) { + result.sampleRate_ = sampleRate_; + } + if (((from_bitField0_ & 0x00001000) != 0)) { + result.channels_ = channels_; + } + if (((from_bitField0_ & 0x00002000) != 0)) { + result.codecConfig_ = codecConfig_; + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.cmvr.quic.gateway.v1.MediaTrack) { + return mergeFrom((com.cmvr.quic.gateway.v1.MediaTrack)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.cmvr.quic.gateway.v1.MediaTrack other) { + if (other == com.cmvr.quic.gateway.v1.MediaTrack.getDefaultInstance()) return this; + if (other.getTrackId() != 0) { + setTrackId(other.getTrackId()); + } + if (other.getKind() != 0) { + setKind(other.getKind()); + } + if (!other.getDeviceId().isEmpty()) { + deviceId_ = other.deviceId_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (!other.getSourceTrackId().isEmpty()) { + sourceTrackId_ = other.sourceTrackId_; + bitField0_ |= 0x00000008; + onChanged(); + } + if (!other.getCodec().isEmpty()) { + codec_ = other.codec_; + bitField0_ |= 0x00000010; + onChanged(); + } + if (!other.getPayloadFormat().isEmpty()) { + payloadFormat_ = other.payloadFormat_; + bitField0_ |= 0x00000020; + onChanged(); + } + if (other.getCodecGeneration() != 0L) { + setCodecGeneration(other.getCodecGeneration()); + } + if (other.getCodecGenerationToken() != 0) { + setCodecGenerationToken(other.getCodecGenerationToken()); + } + if (other.getWidth() != 0) { + setWidth(other.getWidth()); + } + if (other.getHeight() != 0) { + setHeight(other.getHeight()); + } + if (other.getFramesPerSecond() != 0) { + setFramesPerSecond(other.getFramesPerSecond()); + } + if (other.getSampleRate() != 0) { + setSampleRate(other.getSampleRate()); + } + if (other.getChannels() != 0) { + setChannels(other.getChannels()); + } + if (other.getCodecConfig() != com.google.protobuf.ByteString.EMPTY) { + setCodecConfig(other.getCodecConfig()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: { + trackId_ = input.readUInt32(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 16: { + kind_ = input.readInt32(); + bitField0_ |= 0x00000002; + break; + } // case 16 + case 26: { + deviceId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 34: { + sourceTrackId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000008; + break; + } // case 34 + case 42: { + codec_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000010; + break; + } // case 42 + case 50: { + payloadFormat_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000020; + break; + } // case 50 + case 56: { + codecGeneration_ = input.readUInt64(); + bitField0_ |= 0x00000040; + break; + } // case 56 + case 64: { + codecGenerationToken_ = input.readUInt32(); + bitField0_ |= 0x00000080; + break; + } // case 64 + case 72: { + width_ = input.readUInt32(); + bitField0_ |= 0x00000100; + break; + } // case 72 + case 80: { + height_ = input.readUInt32(); + bitField0_ |= 0x00000200; + break; + } // case 80 + case 88: { + framesPerSecond_ = input.readUInt32(); + bitField0_ |= 0x00000400; + break; + } // case 88 + case 96: { + sampleRate_ = input.readUInt32(); + bitField0_ |= 0x00000800; + break; + } // case 96 + case 104: { + channels_ = input.readUInt32(); + bitField0_ |= 0x00001000; + break; + } // case 104 + case 114: { + codecConfig_ = input.readBytes(); + bitField0_ |= 0x00002000; + break; + } // case 114 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private int trackId_ ; + /** + * uint32 track_id = 1; + * @return The trackId. + */ + @java.lang.Override + public int getTrackId() { + return trackId_; + } + /** + * uint32 track_id = 1; + * @param value The trackId to set. + * @return This builder for chaining. + */ + public Builder setTrackId(int value) { + + trackId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * uint32 track_id = 1; + * @return This builder for chaining. + */ + public Builder clearTrackId() { + bitField0_ = (bitField0_ & ~0x00000001); + trackId_ = 0; + onChanged(); + return this; + } + + private int kind_ ; + /** + * int32 kind = 2; + * @return The kind. + */ + @java.lang.Override + public int getKind() { + return kind_; + } + /** + * int32 kind = 2; + * @param value The kind to set. + * @return This builder for chaining. + */ + public Builder setKind(int value) { + + kind_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * int32 kind = 2; + * @return This builder for chaining. + */ + public Builder clearKind() { + bitField0_ = (bitField0_ & ~0x00000002); + kind_ = 0; + onChanged(); + return this; + } + + private java.lang.Object deviceId_ = ""; + /** + * string device_id = 3; + * @return The deviceId. + */ + public java.lang.String getDeviceId() { + java.lang.Object ref = deviceId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + deviceId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string device_id = 3; + * @return The bytes for deviceId. + */ + public com.google.protobuf.ByteString + getDeviceIdBytes() { + java.lang.Object ref = deviceId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + deviceId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string device_id = 3; + * @param value The deviceId to set. + * @return This builder for chaining. + */ + public Builder setDeviceId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + deviceId_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * string device_id = 3; + * @return This builder for chaining. + */ + public Builder clearDeviceId() { + deviceId_ = getDefaultInstance().getDeviceId(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + /** + * string device_id = 3; + * @param value The bytes for deviceId to set. + * @return This builder for chaining. + */ + public Builder setDeviceIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + deviceId_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private java.lang.Object sourceTrackId_ = ""; + /** + * string source_track_id = 4; + * @return The sourceTrackId. + */ + public java.lang.String getSourceTrackId() { + java.lang.Object ref = sourceTrackId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sourceTrackId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string source_track_id = 4; + * @return The bytes for sourceTrackId. + */ + public com.google.protobuf.ByteString + getSourceTrackIdBytes() { + java.lang.Object ref = sourceTrackId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + sourceTrackId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string source_track_id = 4; + * @param value The sourceTrackId to set. + * @return This builder for chaining. + */ + public Builder setSourceTrackId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + sourceTrackId_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * string source_track_id = 4; + * @return This builder for chaining. + */ + public Builder clearSourceTrackId() { + sourceTrackId_ = getDefaultInstance().getSourceTrackId(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + return this; + } + /** + * string source_track_id = 4; + * @param value The bytes for sourceTrackId to set. + * @return This builder for chaining. + */ + public Builder setSourceTrackIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + sourceTrackId_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + private java.lang.Object codec_ = ""; + /** + * string codec = 5; + * @return The codec. + */ + public java.lang.String getCodec() { + java.lang.Object ref = codec_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + codec_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string codec = 5; + * @return The bytes for codec. + */ + public com.google.protobuf.ByteString + getCodecBytes() { + java.lang.Object ref = codec_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + codec_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string codec = 5; + * @param value The codec to set. + * @return This builder for chaining. + */ + public Builder setCodec( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + codec_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + * string codec = 5; + * @return This builder for chaining. + */ + public Builder clearCodec() { + codec_ = getDefaultInstance().getCodec(); + bitField0_ = (bitField0_ & ~0x00000010); + onChanged(); + return this; + } + /** + * string codec = 5; + * @param value The bytes for codec to set. + * @return This builder for chaining. + */ + public Builder setCodecBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + codec_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + + private java.lang.Object payloadFormat_ = ""; + /** + * string payload_format = 6; + * @return The payloadFormat. + */ + public java.lang.String getPayloadFormat() { + java.lang.Object ref = payloadFormat_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + payloadFormat_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string payload_format = 6; + * @return The bytes for payloadFormat. + */ + public com.google.protobuf.ByteString + getPayloadFormatBytes() { + java.lang.Object ref = payloadFormat_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + payloadFormat_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string payload_format = 6; + * @param value The payloadFormat to set. + * @return This builder for chaining. + */ + public Builder setPayloadFormat( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + payloadFormat_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + * string payload_format = 6; + * @return This builder for chaining. + */ + public Builder clearPayloadFormat() { + payloadFormat_ = getDefaultInstance().getPayloadFormat(); + bitField0_ = (bitField0_ & ~0x00000020); + onChanged(); + return this; + } + /** + * string payload_format = 6; + * @param value The bytes for payloadFormat to set. + * @return This builder for chaining. + */ + public Builder setPayloadFormatBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + payloadFormat_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + + private long codecGeneration_ ; + /** + * uint64 codec_generation = 7; + * @return The codecGeneration. + */ + @java.lang.Override + public long getCodecGeneration() { + return codecGeneration_; + } + /** + * uint64 codec_generation = 7; + * @param value The codecGeneration to set. + * @return This builder for chaining. + */ + public Builder setCodecGeneration(long value) { + + codecGeneration_ = value; + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + /** + * uint64 codec_generation = 7; + * @return This builder for chaining. + */ + public Builder clearCodecGeneration() { + bitField0_ = (bitField0_ & ~0x00000040); + codecGeneration_ = 0L; + onChanged(); + return this; + } + + private int codecGenerationToken_ ; + /** + * uint32 codec_generation_token = 8; + * @return The codecGenerationToken. + */ + @java.lang.Override + public int getCodecGenerationToken() { + return codecGenerationToken_; + } + /** + * uint32 codec_generation_token = 8; + * @param value The codecGenerationToken to set. + * @return This builder for chaining. + */ + public Builder setCodecGenerationToken(int value) { + + codecGenerationToken_ = value; + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + /** + * uint32 codec_generation_token = 8; + * @return This builder for chaining. + */ + public Builder clearCodecGenerationToken() { + bitField0_ = (bitField0_ & ~0x00000080); + codecGenerationToken_ = 0; + onChanged(); + return this; + } + + private int width_ ; + /** + * uint32 width = 9; + * @return The width. + */ + @java.lang.Override + public int getWidth() { + return width_; + } + /** + * uint32 width = 9; + * @param value The width to set. + * @return This builder for chaining. + */ + public Builder setWidth(int value) { + + width_ = value; + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + /** + * uint32 width = 9; + * @return This builder for chaining. + */ + public Builder clearWidth() { + bitField0_ = (bitField0_ & ~0x00000100); + width_ = 0; + onChanged(); + return this; + } + + private int height_ ; + /** + * uint32 height = 10; + * @return The height. + */ + @java.lang.Override + public int getHeight() { + return height_; + } + /** + * uint32 height = 10; + * @param value The height to set. + * @return This builder for chaining. + */ + public Builder setHeight(int value) { + + height_ = value; + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + /** + * uint32 height = 10; + * @return This builder for chaining. + */ + public Builder clearHeight() { + bitField0_ = (bitField0_ & ~0x00000200); + height_ = 0; + onChanged(); + return this; + } + + private int framesPerSecond_ ; + /** + * uint32 frames_per_second = 11; + * @return The framesPerSecond. + */ + @java.lang.Override + public int getFramesPerSecond() { + return framesPerSecond_; + } + /** + * uint32 frames_per_second = 11; + * @param value The framesPerSecond to set. + * @return This builder for chaining. + */ + public Builder setFramesPerSecond(int value) { + + framesPerSecond_ = value; + bitField0_ |= 0x00000400; + onChanged(); + return this; + } + /** + * uint32 frames_per_second = 11; + * @return This builder for chaining. + */ + public Builder clearFramesPerSecond() { + bitField0_ = (bitField0_ & ~0x00000400); + framesPerSecond_ = 0; + onChanged(); + return this; + } + + private int sampleRate_ ; + /** + * uint32 sample_rate = 12; + * @return The sampleRate. + */ + @java.lang.Override + public int getSampleRate() { + return sampleRate_; + } + /** + * uint32 sample_rate = 12; + * @param value The sampleRate to set. + * @return This builder for chaining. + */ + public Builder setSampleRate(int value) { + + sampleRate_ = value; + bitField0_ |= 0x00000800; + onChanged(); + return this; + } + /** + * uint32 sample_rate = 12; + * @return This builder for chaining. + */ + public Builder clearSampleRate() { + bitField0_ = (bitField0_ & ~0x00000800); + sampleRate_ = 0; + onChanged(); + return this; + } + + private int channels_ ; + /** + * uint32 channels = 13; + * @return The channels. + */ + @java.lang.Override + public int getChannels() { + return channels_; + } + /** + * uint32 channels = 13; + * @param value The channels to set. + * @return This builder for chaining. + */ + public Builder setChannels(int value) { + + channels_ = value; + bitField0_ |= 0x00001000; + onChanged(); + return this; + } + /** + * uint32 channels = 13; + * @return This builder for chaining. + */ + public Builder clearChannels() { + bitField0_ = (bitField0_ & ~0x00001000); + channels_ = 0; + onChanged(); + return this; + } + + private com.google.protobuf.ByteString codecConfig_ = com.google.protobuf.ByteString.EMPTY; + /** + * bytes codec_config = 14; + * @return The codecConfig. + */ + @java.lang.Override + public com.google.protobuf.ByteString getCodecConfig() { + return codecConfig_; + } + /** + * bytes codec_config = 14; + * @param value The codecConfig to set. + * @return This builder for chaining. + */ + public Builder setCodecConfig(com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + codecConfig_ = value; + bitField0_ |= 0x00002000; + onChanged(); + return this; + } + /** + * bytes codec_config = 14; + * @return This builder for chaining. + */ + public Builder clearCodecConfig() { + bitField0_ = (bitField0_ & ~0x00002000); + codecConfig_ = getDefaultInstance().getCodecConfig(); + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:cmvr.quic_gateway.v1.MediaTrack) + } + + // @@protoc_insertion_point(class_scope:cmvr.quic_gateway.v1.MediaTrack) + private static final com.cmvr.quic.gateway.v1.MediaTrack DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new com.cmvr.quic.gateway.v1.MediaTrack(); + } + + public static com.cmvr.quic.gateway.v1.MediaTrack getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public MediaTrack parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.MediaTrack getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + +} + diff --git a/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/MediaTrackOrBuilder.java b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/MediaTrackOrBuilder.java new file mode 100644 index 0000000..d947c75 --- /dev/null +++ b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/MediaTrackOrBuilder.java @@ -0,0 +1,118 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: cmvr/quic_gateway/v1/quic_gateway.proto + +// Protobuf Java Version: 3.25.5 +package com.cmvr.quic.gateway.v1; + +public interface MediaTrackOrBuilder extends + // @@protoc_insertion_point(interface_extends:cmvr.quic_gateway.v1.MediaTrack) + com.google.protobuf.MessageOrBuilder { + + /** + * uint32 track_id = 1; + * @return The trackId. + */ + int getTrackId(); + + /** + * int32 kind = 2; + * @return The kind. + */ + int getKind(); + + /** + * string device_id = 3; + * @return The deviceId. + */ + java.lang.String getDeviceId(); + /** + * string device_id = 3; + * @return The bytes for deviceId. + */ + com.google.protobuf.ByteString + getDeviceIdBytes(); + + /** + * string source_track_id = 4; + * @return The sourceTrackId. + */ + java.lang.String getSourceTrackId(); + /** + * string source_track_id = 4; + * @return The bytes for sourceTrackId. + */ + com.google.protobuf.ByteString + getSourceTrackIdBytes(); + + /** + * string codec = 5; + * @return The codec. + */ + java.lang.String getCodec(); + /** + * string codec = 5; + * @return The bytes for codec. + */ + com.google.protobuf.ByteString + getCodecBytes(); + + /** + * string payload_format = 6; + * @return The payloadFormat. + */ + java.lang.String getPayloadFormat(); + /** + * string payload_format = 6; + * @return The bytes for payloadFormat. + */ + com.google.protobuf.ByteString + getPayloadFormatBytes(); + + /** + * uint64 codec_generation = 7; + * @return The codecGeneration. + */ + long getCodecGeneration(); + + /** + * uint32 codec_generation_token = 8; + * @return The codecGenerationToken. + */ + int getCodecGenerationToken(); + + /** + * uint32 width = 9; + * @return The width. + */ + int getWidth(); + + /** + * uint32 height = 10; + * @return The height. + */ + int getHeight(); + + /** + * uint32 frames_per_second = 11; + * @return The framesPerSecond. + */ + int getFramesPerSecond(); + + /** + * uint32 sample_rate = 12; + * @return The sampleRate. + */ + int getSampleRate(); + + /** + * uint32 channels = 13; + * @return The channels. + */ + int getChannels(); + + /** + * bytes codec_config = 14; + * @return The codecConfig. + */ + com.google.protobuf.ByteString getCodecConfig(); +} diff --git a/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NetworkInterfaceAddress.java b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NetworkInterfaceAddress.java new file mode 100644 index 0000000..8b0b1b2 --- /dev/null +++ b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NetworkInterfaceAddress.java @@ -0,0 +1,811 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: cmvr/quic_gateway/v1/quic_gateway.proto + +// Protobuf Java Version: 3.25.5 +package com.cmvr.quic.gateway.v1; + +/** + * Protobuf type {@code cmvr.quic_gateway.v1.NetworkInterfaceAddress} + */ +public final class NetworkInterfaceAddress extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:cmvr.quic_gateway.v1.NetworkInterfaceAddress) + NetworkInterfaceAddressOrBuilder { +private static final long serialVersionUID = 0L; + // Use NetworkInterfaceAddress.newBuilder() to construct. + private NetworkInterfaceAddress(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private NetworkInterfaceAddress() { + interfaceName_ = ""; + ipAddress_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new NetworkInterfaceAddress(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_NetworkInterfaceAddress_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_NetworkInterfaceAddress_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.cmvr.quic.gateway.v1.NetworkInterfaceAddress.class, com.cmvr.quic.gateway.v1.NetworkInterfaceAddress.Builder.class); + } + + public static final int INTERFACE_NAME_FIELD_NUMBER = 1; + @SuppressWarnings("serial") + private volatile java.lang.Object interfaceName_ = ""; + /** + * string interface_name = 1; + * @return The interfaceName. + */ + @java.lang.Override + public java.lang.String getInterfaceName() { + java.lang.Object ref = interfaceName_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + interfaceName_ = s; + return s; + } + } + /** + * string interface_name = 1; + * @return The bytes for interfaceName. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getInterfaceNameBytes() { + java.lang.Object ref = interfaceName_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + interfaceName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int IP_ADDRESS_FIELD_NUMBER = 2; + @SuppressWarnings("serial") + private volatile java.lang.Object ipAddress_ = ""; + /** + * string ip_address = 2; + * @return The ipAddress. + */ + @java.lang.Override + public java.lang.String getIpAddress() { + java.lang.Object ref = ipAddress_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + ipAddress_ = s; + return s; + } + } + /** + * string ip_address = 2; + * @return The bytes for ipAddress. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getIpAddressBytes() { + java.lang.Object ref = ipAddress_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + ipAddress_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int FAMILY_FIELD_NUMBER = 3; + private int family_ = 0; + /** + * int32 family = 3; + * @return The family. + */ + @java.lang.Override + public int getFamily() { + return family_; + } + + public static final int LOOPBACK_FIELD_NUMBER = 4; + private boolean loopback_ = false; + /** + * bool loopback = 4; + * @return The loopback. + */ + @java.lang.Override + public boolean getLoopback() { + return loopback_; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(interfaceName_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, interfaceName_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(ipAddress_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, ipAddress_); + } + if (family_ != 0) { + output.writeInt32(3, family_); + } + if (loopback_ != false) { + output.writeBool(4, loopback_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(interfaceName_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, interfaceName_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(ipAddress_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, ipAddress_); + } + if (family_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeInt32Size(3, family_); + } + if (loopback_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(4, loopback_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.cmvr.quic.gateway.v1.NetworkInterfaceAddress)) { + return super.equals(obj); + } + com.cmvr.quic.gateway.v1.NetworkInterfaceAddress other = (com.cmvr.quic.gateway.v1.NetworkInterfaceAddress) obj; + + if (!getInterfaceName() + .equals(other.getInterfaceName())) return false; + if (!getIpAddress() + .equals(other.getIpAddress())) return false; + if (getFamily() + != other.getFamily()) return false; + if (getLoopback() + != other.getLoopback()) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + INTERFACE_NAME_FIELD_NUMBER; + hash = (53 * hash) + getInterfaceName().hashCode(); + hash = (37 * hash) + IP_ADDRESS_FIELD_NUMBER; + hash = (53 * hash) + getIpAddress().hashCode(); + hash = (37 * hash) + FAMILY_FIELD_NUMBER; + hash = (53 * hash) + getFamily(); + hash = (37 * hash) + LOOPBACK_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getLoopback()); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.cmvr.quic.gateway.v1.NetworkInterfaceAddress parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.cmvr.quic.gateway.v1.NetworkInterfaceAddress parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.NetworkInterfaceAddress parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.cmvr.quic.gateway.v1.NetworkInterfaceAddress parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.NetworkInterfaceAddress parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.cmvr.quic.gateway.v1.NetworkInterfaceAddress parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.NetworkInterfaceAddress parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static com.cmvr.quic.gateway.v1.NetworkInterfaceAddress parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static com.cmvr.quic.gateway.v1.NetworkInterfaceAddress parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static com.cmvr.quic.gateway.v1.NetworkInterfaceAddress parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.NetworkInterfaceAddress parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static com.cmvr.quic.gateway.v1.NetworkInterfaceAddress parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(com.cmvr.quic.gateway.v1.NetworkInterfaceAddress prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code cmvr.quic_gateway.v1.NetworkInterfaceAddress} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:cmvr.quic_gateway.v1.NetworkInterfaceAddress) + com.cmvr.quic.gateway.v1.NetworkInterfaceAddressOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_NetworkInterfaceAddress_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_NetworkInterfaceAddress_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.cmvr.quic.gateway.v1.NetworkInterfaceAddress.class, com.cmvr.quic.gateway.v1.NetworkInterfaceAddress.Builder.class); + } + + // Construct using com.cmvr.quic.gateway.v1.NetworkInterfaceAddress.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + interfaceName_ = ""; + ipAddress_ = ""; + family_ = 0; + loopback_ = false; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_NetworkInterfaceAddress_descriptor; + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.NetworkInterfaceAddress getDefaultInstanceForType() { + return com.cmvr.quic.gateway.v1.NetworkInterfaceAddress.getDefaultInstance(); + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.NetworkInterfaceAddress build() { + com.cmvr.quic.gateway.v1.NetworkInterfaceAddress result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.NetworkInterfaceAddress buildPartial() { + com.cmvr.quic.gateway.v1.NetworkInterfaceAddress result = new com.cmvr.quic.gateway.v1.NetworkInterfaceAddress(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(com.cmvr.quic.gateway.v1.NetworkInterfaceAddress result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.interfaceName_ = interfaceName_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.ipAddress_ = ipAddress_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.family_ = family_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.loopback_ = loopback_; + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.cmvr.quic.gateway.v1.NetworkInterfaceAddress) { + return mergeFrom((com.cmvr.quic.gateway.v1.NetworkInterfaceAddress)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.cmvr.quic.gateway.v1.NetworkInterfaceAddress other) { + if (other == com.cmvr.quic.gateway.v1.NetworkInterfaceAddress.getDefaultInstance()) return this; + if (!other.getInterfaceName().isEmpty()) { + interfaceName_ = other.interfaceName_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getIpAddress().isEmpty()) { + ipAddress_ = other.ipAddress_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (other.getFamily() != 0) { + setFamily(other.getFamily()); + } + if (other.getLoopback() != false) { + setLoopback(other.getLoopback()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + interfaceName_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: { + ipAddress_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 24: { + family_ = input.readInt32(); + bitField0_ |= 0x00000004; + break; + } // case 24 + case 32: { + loopback_ = input.readBool(); + bitField0_ |= 0x00000008; + break; + } // case 32 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private java.lang.Object interfaceName_ = ""; + /** + * string interface_name = 1; + * @return The interfaceName. + */ + public java.lang.String getInterfaceName() { + java.lang.Object ref = interfaceName_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + interfaceName_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string interface_name = 1; + * @return The bytes for interfaceName. + */ + public com.google.protobuf.ByteString + getInterfaceNameBytes() { + java.lang.Object ref = interfaceName_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + interfaceName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string interface_name = 1; + * @param value The interfaceName to set. + * @return This builder for chaining. + */ + public Builder setInterfaceName( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + interfaceName_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * string interface_name = 1; + * @return This builder for chaining. + */ + public Builder clearInterfaceName() { + interfaceName_ = getDefaultInstance().getInterfaceName(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * string interface_name = 1; + * @param value The bytes for interfaceName to set. + * @return This builder for chaining. + */ + public Builder setInterfaceNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + interfaceName_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object ipAddress_ = ""; + /** + * string ip_address = 2; + * @return The ipAddress. + */ + public java.lang.String getIpAddress() { + java.lang.Object ref = ipAddress_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + ipAddress_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string ip_address = 2; + * @return The bytes for ipAddress. + */ + public com.google.protobuf.ByteString + getIpAddressBytes() { + java.lang.Object ref = ipAddress_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + ipAddress_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string ip_address = 2; + * @param value The ipAddress to set. + * @return This builder for chaining. + */ + public Builder setIpAddress( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ipAddress_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * string ip_address = 2; + * @return This builder for chaining. + */ + public Builder clearIpAddress() { + ipAddress_ = getDefaultInstance().getIpAddress(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + /** + * string ip_address = 2; + * @param value The bytes for ipAddress to set. + * @return This builder for chaining. + */ + public Builder setIpAddressBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + ipAddress_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private int family_ ; + /** + * int32 family = 3; + * @return The family. + */ + @java.lang.Override + public int getFamily() { + return family_; + } + /** + * int32 family = 3; + * @param value The family to set. + * @return This builder for chaining. + */ + public Builder setFamily(int value) { + + family_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * int32 family = 3; + * @return This builder for chaining. + */ + public Builder clearFamily() { + bitField0_ = (bitField0_ & ~0x00000004); + family_ = 0; + onChanged(); + return this; + } + + private boolean loopback_ ; + /** + * bool loopback = 4; + * @return The loopback. + */ + @java.lang.Override + public boolean getLoopback() { + return loopback_; + } + /** + * bool loopback = 4; + * @param value The loopback to set. + * @return This builder for chaining. + */ + public Builder setLoopback(boolean value) { + + loopback_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * bool loopback = 4; + * @return This builder for chaining. + */ + public Builder clearLoopback() { + bitField0_ = (bitField0_ & ~0x00000008); + loopback_ = false; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:cmvr.quic_gateway.v1.NetworkInterfaceAddress) + } + + // @@protoc_insertion_point(class_scope:cmvr.quic_gateway.v1.NetworkInterfaceAddress) + private static final com.cmvr.quic.gateway.v1.NetworkInterfaceAddress DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new com.cmvr.quic.gateway.v1.NetworkInterfaceAddress(); + } + + public static com.cmvr.quic.gateway.v1.NetworkInterfaceAddress getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public NetworkInterfaceAddress parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.NetworkInterfaceAddress getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + +} + diff --git a/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NetworkInterfaceAddressOrBuilder.java b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NetworkInterfaceAddressOrBuilder.java new file mode 100644 index 0000000..4a10337 --- /dev/null +++ b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NetworkInterfaceAddressOrBuilder.java @@ -0,0 +1,46 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: cmvr/quic_gateway/v1/quic_gateway.proto + +// Protobuf Java Version: 3.25.5 +package com.cmvr.quic.gateway.v1; + +public interface NetworkInterfaceAddressOrBuilder extends + // @@protoc_insertion_point(interface_extends:cmvr.quic_gateway.v1.NetworkInterfaceAddress) + com.google.protobuf.MessageOrBuilder { + + /** + * string interface_name = 1; + * @return The interfaceName. + */ + java.lang.String getInterfaceName(); + /** + * string interface_name = 1; + * @return The bytes for interfaceName. + */ + com.google.protobuf.ByteString + getInterfaceNameBytes(); + + /** + * string ip_address = 2; + * @return The ipAddress. + */ + java.lang.String getIpAddress(); + /** + * string ip_address = 2; + * @return The bytes for ipAddress. + */ + com.google.protobuf.ByteString + getIpAddressBytes(); + + /** + * int32 family = 3; + * @return The family. + */ + int getFamily(); + + /** + * bool loopback = 4; + * @return The loopback. + */ + boolean getLoopback(); +} diff --git a/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NodeEvent.java b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NodeEvent.java new file mode 100644 index 0000000..6a788bb --- /dev/null +++ b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NodeEvent.java @@ -0,0 +1,760 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: cmvr/quic_gateway/v1/quic_gateway.proto + +// Protobuf Java Version: 3.25.5 +package com.cmvr.quic.gateway.v1; + +/** + * Protobuf type {@code cmvr.quic_gateway.v1.NodeEvent} + */ +public final class NodeEvent extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:cmvr.quic_gateway.v1.NodeEvent) + NodeEventOrBuilder { +private static final long serialVersionUID = 0L; + // Use NodeEvent.newBuilder() to construct. + private NodeEvent(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private NodeEvent() { + type_ = 0; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new NodeEvent(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_NodeEvent_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_NodeEvent_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.cmvr.quic.gateway.v1.NodeEvent.class, com.cmvr.quic.gateway.v1.NodeEvent.Builder.class); + } + + private int bitField0_; + public static final int TYPE_FIELD_NUMBER = 1; + private int type_ = 0; + /** + * .cmvr.quic_gateway.v1.NodeEventType type = 1; + * @return The enum numeric value on the wire for type. + */ + @java.lang.Override public int getTypeValue() { + return type_; + } + /** + * .cmvr.quic_gateway.v1.NodeEventType type = 1; + * @return The type. + */ + @java.lang.Override public com.cmvr.quic.gateway.v1.NodeEventType getType() { + com.cmvr.quic.gateway.v1.NodeEventType result = com.cmvr.quic.gateway.v1.NodeEventType.forNumber(type_); + return result == null ? com.cmvr.quic.gateway.v1.NodeEventType.UNRECOGNIZED : result; + } + + public static final int NODE_FIELD_NUMBER = 2; + private com.cmvr.quic.gateway.v1.NodeSnapshot node_; + /** + * .cmvr.quic_gateway.v1.NodeSnapshot node = 2; + * @return Whether the node field is set. + */ + @java.lang.Override + public boolean hasNode() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * .cmvr.quic_gateway.v1.NodeSnapshot node = 2; + * @return The node. + */ + @java.lang.Override + public com.cmvr.quic.gateway.v1.NodeSnapshot getNode() { + return node_ == null ? com.cmvr.quic.gateway.v1.NodeSnapshot.getDefaultInstance() : node_; + } + /** + * .cmvr.quic_gateway.v1.NodeSnapshot node = 2; + */ + @java.lang.Override + public com.cmvr.quic.gateway.v1.NodeSnapshotOrBuilder getNodeOrBuilder() { + return node_ == null ? com.cmvr.quic.gateway.v1.NodeSnapshot.getDefaultInstance() : node_; + } + + public static final int EVENT_TIME_UNIX_MS_FIELD_NUMBER = 3; + private long eventTimeUnixMs_ = 0L; + /** + * uint64 event_time_unix_ms = 3; + * @return The eventTimeUnixMs. + */ + @java.lang.Override + public long getEventTimeUnixMs() { + return eventTimeUnixMs_; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (type_ != com.cmvr.quic.gateway.v1.NodeEventType.NODE_EVENT_TYPE_UNSPECIFIED.getNumber()) { + output.writeEnum(1, type_); + } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(2, getNode()); + } + if (eventTimeUnixMs_ != 0L) { + output.writeUInt64(3, eventTimeUnixMs_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (type_ != com.cmvr.quic.gateway.v1.NodeEventType.NODE_EVENT_TYPE_UNSPECIFIED.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(1, type_); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2, getNode()); + } + if (eventTimeUnixMs_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeUInt64Size(3, eventTimeUnixMs_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.cmvr.quic.gateway.v1.NodeEvent)) { + return super.equals(obj); + } + com.cmvr.quic.gateway.v1.NodeEvent other = (com.cmvr.quic.gateway.v1.NodeEvent) obj; + + if (type_ != other.type_) return false; + if (hasNode() != other.hasNode()) return false; + if (hasNode()) { + if (!getNode() + .equals(other.getNode())) return false; + } + if (getEventTimeUnixMs() + != other.getEventTimeUnixMs()) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + TYPE_FIELD_NUMBER; + hash = (53 * hash) + type_; + if (hasNode()) { + hash = (37 * hash) + NODE_FIELD_NUMBER; + hash = (53 * hash) + getNode().hashCode(); + } + hash = (37 * hash) + EVENT_TIME_UNIX_MS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getEventTimeUnixMs()); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.cmvr.quic.gateway.v1.NodeEvent parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.cmvr.quic.gateway.v1.NodeEvent parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.NodeEvent parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.cmvr.quic.gateway.v1.NodeEvent parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.NodeEvent parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.cmvr.quic.gateway.v1.NodeEvent parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.NodeEvent parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static com.cmvr.quic.gateway.v1.NodeEvent parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static com.cmvr.quic.gateway.v1.NodeEvent parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static com.cmvr.quic.gateway.v1.NodeEvent parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.NodeEvent parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static com.cmvr.quic.gateway.v1.NodeEvent parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(com.cmvr.quic.gateway.v1.NodeEvent prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code cmvr.quic_gateway.v1.NodeEvent} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:cmvr.quic_gateway.v1.NodeEvent) + com.cmvr.quic.gateway.v1.NodeEventOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_NodeEvent_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_NodeEvent_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.cmvr.quic.gateway.v1.NodeEvent.class, com.cmvr.quic.gateway.v1.NodeEvent.Builder.class); + } + + // Construct using com.cmvr.quic.gateway.v1.NodeEvent.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getNodeFieldBuilder(); + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + type_ = 0; + node_ = null; + if (nodeBuilder_ != null) { + nodeBuilder_.dispose(); + nodeBuilder_ = null; + } + eventTimeUnixMs_ = 0L; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_NodeEvent_descriptor; + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.NodeEvent getDefaultInstanceForType() { + return com.cmvr.quic.gateway.v1.NodeEvent.getDefaultInstance(); + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.NodeEvent build() { + com.cmvr.quic.gateway.v1.NodeEvent result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.NodeEvent buildPartial() { + com.cmvr.quic.gateway.v1.NodeEvent result = new com.cmvr.quic.gateway.v1.NodeEvent(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(com.cmvr.quic.gateway.v1.NodeEvent result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.type_ = type_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000002) != 0)) { + result.node_ = nodeBuilder_ == null + ? node_ + : nodeBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.eventTimeUnixMs_ = eventTimeUnixMs_; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.cmvr.quic.gateway.v1.NodeEvent) { + return mergeFrom((com.cmvr.quic.gateway.v1.NodeEvent)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.cmvr.quic.gateway.v1.NodeEvent other) { + if (other == com.cmvr.quic.gateway.v1.NodeEvent.getDefaultInstance()) return this; + if (other.type_ != 0) { + setTypeValue(other.getTypeValue()); + } + if (other.hasNode()) { + mergeNode(other.getNode()); + } + if (other.getEventTimeUnixMs() != 0L) { + setEventTimeUnixMs(other.getEventTimeUnixMs()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: { + type_ = input.readEnum(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 18: { + input.readMessage( + getNodeFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 24: { + eventTimeUnixMs_ = input.readUInt64(); + bitField0_ |= 0x00000004; + break; + } // case 24 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private int type_ = 0; + /** + * .cmvr.quic_gateway.v1.NodeEventType type = 1; + * @return The enum numeric value on the wire for type. + */ + @java.lang.Override public int getTypeValue() { + return type_; + } + /** + * .cmvr.quic_gateway.v1.NodeEventType type = 1; + * @param value The enum numeric value on the wire for type to set. + * @return This builder for chaining. + */ + public Builder setTypeValue(int value) { + type_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * .cmvr.quic_gateway.v1.NodeEventType type = 1; + * @return The type. + */ + @java.lang.Override + public com.cmvr.quic.gateway.v1.NodeEventType getType() { + com.cmvr.quic.gateway.v1.NodeEventType result = com.cmvr.quic.gateway.v1.NodeEventType.forNumber(type_); + return result == null ? com.cmvr.quic.gateway.v1.NodeEventType.UNRECOGNIZED : result; + } + /** + * .cmvr.quic_gateway.v1.NodeEventType type = 1; + * @param value The type to set. + * @return This builder for chaining. + */ + public Builder setType(com.cmvr.quic.gateway.v1.NodeEventType value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000001; + type_ = value.getNumber(); + onChanged(); + return this; + } + /** + * .cmvr.quic_gateway.v1.NodeEventType type = 1; + * @return This builder for chaining. + */ + public Builder clearType() { + bitField0_ = (bitField0_ & ~0x00000001); + type_ = 0; + onChanged(); + return this; + } + + private com.cmvr.quic.gateway.v1.NodeSnapshot node_; + private com.google.protobuf.SingleFieldBuilderV3< + com.cmvr.quic.gateway.v1.NodeSnapshot, com.cmvr.quic.gateway.v1.NodeSnapshot.Builder, com.cmvr.quic.gateway.v1.NodeSnapshotOrBuilder> nodeBuilder_; + /** + * .cmvr.quic_gateway.v1.NodeSnapshot node = 2; + * @return Whether the node field is set. + */ + public boolean hasNode() { + return ((bitField0_ & 0x00000002) != 0); + } + /** + * .cmvr.quic_gateway.v1.NodeSnapshot node = 2; + * @return The node. + */ + public com.cmvr.quic.gateway.v1.NodeSnapshot getNode() { + if (nodeBuilder_ == null) { + return node_ == null ? com.cmvr.quic.gateway.v1.NodeSnapshot.getDefaultInstance() : node_; + } else { + return nodeBuilder_.getMessage(); + } + } + /** + * .cmvr.quic_gateway.v1.NodeSnapshot node = 2; + */ + public Builder setNode(com.cmvr.quic.gateway.v1.NodeSnapshot value) { + if (nodeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + node_ = value; + } else { + nodeBuilder_.setMessage(value); + } + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * .cmvr.quic_gateway.v1.NodeSnapshot node = 2; + */ + public Builder setNode( + com.cmvr.quic.gateway.v1.NodeSnapshot.Builder builderForValue) { + if (nodeBuilder_ == null) { + node_ = builderForValue.build(); + } else { + nodeBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * .cmvr.quic_gateway.v1.NodeSnapshot node = 2; + */ + public Builder mergeNode(com.cmvr.quic.gateway.v1.NodeSnapshot value) { + if (nodeBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0) && + node_ != null && + node_ != com.cmvr.quic.gateway.v1.NodeSnapshot.getDefaultInstance()) { + getNodeBuilder().mergeFrom(value); + } else { + node_ = value; + } + } else { + nodeBuilder_.mergeFrom(value); + } + if (node_ != null) { + bitField0_ |= 0x00000002; + onChanged(); + } + return this; + } + /** + * .cmvr.quic_gateway.v1.NodeSnapshot node = 2; + */ + public Builder clearNode() { + bitField0_ = (bitField0_ & ~0x00000002); + node_ = null; + if (nodeBuilder_ != null) { + nodeBuilder_.dispose(); + nodeBuilder_ = null; + } + onChanged(); + return this; + } + /** + * .cmvr.quic_gateway.v1.NodeSnapshot node = 2; + */ + public com.cmvr.quic.gateway.v1.NodeSnapshot.Builder getNodeBuilder() { + bitField0_ |= 0x00000002; + onChanged(); + return getNodeFieldBuilder().getBuilder(); + } + /** + * .cmvr.quic_gateway.v1.NodeSnapshot node = 2; + */ + public com.cmvr.quic.gateway.v1.NodeSnapshotOrBuilder getNodeOrBuilder() { + if (nodeBuilder_ != null) { + return nodeBuilder_.getMessageOrBuilder(); + } else { + return node_ == null ? + com.cmvr.quic.gateway.v1.NodeSnapshot.getDefaultInstance() : node_; + } + } + /** + * .cmvr.quic_gateway.v1.NodeSnapshot node = 2; + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.cmvr.quic.gateway.v1.NodeSnapshot, com.cmvr.quic.gateway.v1.NodeSnapshot.Builder, com.cmvr.quic.gateway.v1.NodeSnapshotOrBuilder> + getNodeFieldBuilder() { + if (nodeBuilder_ == null) { + nodeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + com.cmvr.quic.gateway.v1.NodeSnapshot, com.cmvr.quic.gateway.v1.NodeSnapshot.Builder, com.cmvr.quic.gateway.v1.NodeSnapshotOrBuilder>( + getNode(), + getParentForChildren(), + isClean()); + node_ = null; + } + return nodeBuilder_; + } + + private long eventTimeUnixMs_ ; + /** + * uint64 event_time_unix_ms = 3; + * @return The eventTimeUnixMs. + */ + @java.lang.Override + public long getEventTimeUnixMs() { + return eventTimeUnixMs_; + } + /** + * uint64 event_time_unix_ms = 3; + * @param value The eventTimeUnixMs to set. + * @return This builder for chaining. + */ + public Builder setEventTimeUnixMs(long value) { + + eventTimeUnixMs_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * uint64 event_time_unix_ms = 3; + * @return This builder for chaining. + */ + public Builder clearEventTimeUnixMs() { + bitField0_ = (bitField0_ & ~0x00000004); + eventTimeUnixMs_ = 0L; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:cmvr.quic_gateway.v1.NodeEvent) + } + + // @@protoc_insertion_point(class_scope:cmvr.quic_gateway.v1.NodeEvent) + private static final com.cmvr.quic.gateway.v1.NodeEvent DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new com.cmvr.quic.gateway.v1.NodeEvent(); + } + + public static com.cmvr.quic.gateway.v1.NodeEvent getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public NodeEvent parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.NodeEvent getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + +} + diff --git a/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NodeEventOrBuilder.java b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NodeEventOrBuilder.java new file mode 100644 index 0000000..cb801ea --- /dev/null +++ b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NodeEventOrBuilder.java @@ -0,0 +1,42 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: cmvr/quic_gateway/v1/quic_gateway.proto + +// Protobuf Java Version: 3.25.5 +package com.cmvr.quic.gateway.v1; + +public interface NodeEventOrBuilder extends + // @@protoc_insertion_point(interface_extends:cmvr.quic_gateway.v1.NodeEvent) + com.google.protobuf.MessageOrBuilder { + + /** + * .cmvr.quic_gateway.v1.NodeEventType type = 1; + * @return The enum numeric value on the wire for type. + */ + int getTypeValue(); + /** + * .cmvr.quic_gateway.v1.NodeEventType type = 1; + * @return The type. + */ + com.cmvr.quic.gateway.v1.NodeEventType getType(); + + /** + * .cmvr.quic_gateway.v1.NodeSnapshot node = 2; + * @return Whether the node field is set. + */ + boolean hasNode(); + /** + * .cmvr.quic_gateway.v1.NodeSnapshot node = 2; + * @return The node. + */ + com.cmvr.quic.gateway.v1.NodeSnapshot getNode(); + /** + * .cmvr.quic_gateway.v1.NodeSnapshot node = 2; + */ + com.cmvr.quic.gateway.v1.NodeSnapshotOrBuilder getNodeOrBuilder(); + + /** + * uint64 event_time_unix_ms = 3; + * @return The eventTimeUnixMs. + */ + long getEventTimeUnixMs(); +} diff --git a/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NodeEventType.java b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NodeEventType.java new file mode 100644 index 0000000..4c26639 --- /dev/null +++ b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NodeEventType.java @@ -0,0 +1,141 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: cmvr/quic_gateway/v1/quic_gateway.proto + +// Protobuf Java Version: 3.25.5 +package com.cmvr.quic.gateway.v1; + +/** + * Protobuf enum {@code cmvr.quic_gateway.v1.NodeEventType} + */ +public enum NodeEventType + implements com.google.protobuf.ProtocolMessageEnum { + /** + * NODE_EVENT_TYPE_UNSPECIFIED = 0; + */ + NODE_EVENT_TYPE_UNSPECIFIED(0), + /** + * NODE_EVENT_TYPE_REGISTERED = 1; + */ + NODE_EVENT_TYPE_REGISTERED(1), + /** + * NODE_EVENT_TYPE_HEARTBEAT = 2; + */ + NODE_EVENT_TYPE_HEARTBEAT(2), + /** + * NODE_EVENT_TYPE_OFFLINE = 3; + */ + NODE_EVENT_TYPE_OFFLINE(3), + /** + * NODE_EVENT_TYPE_MEDIA_CHANGED = 4; + */ + NODE_EVENT_TYPE_MEDIA_CHANGED(4), + UNRECOGNIZED(-1), + ; + + /** + * NODE_EVENT_TYPE_UNSPECIFIED = 0; + */ + public static final int NODE_EVENT_TYPE_UNSPECIFIED_VALUE = 0; + /** + * NODE_EVENT_TYPE_REGISTERED = 1; + */ + public static final int NODE_EVENT_TYPE_REGISTERED_VALUE = 1; + /** + * NODE_EVENT_TYPE_HEARTBEAT = 2; + */ + public static final int NODE_EVENT_TYPE_HEARTBEAT_VALUE = 2; + /** + * NODE_EVENT_TYPE_OFFLINE = 3; + */ + public static final int NODE_EVENT_TYPE_OFFLINE_VALUE = 3; + /** + * NODE_EVENT_TYPE_MEDIA_CHANGED = 4; + */ + public static final int NODE_EVENT_TYPE_MEDIA_CHANGED_VALUE = 4; + + + public final int getNumber() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalArgumentException( + "Can't get the number of an unknown enum value."); + } + return value; + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static NodeEventType valueOf(int value) { + return forNumber(value); + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + */ + public static NodeEventType forNumber(int value) { + switch (value) { + case 0: return NODE_EVENT_TYPE_UNSPECIFIED; + case 1: return NODE_EVENT_TYPE_REGISTERED; + case 2: return NODE_EVENT_TYPE_HEARTBEAT; + case 3: return NODE_EVENT_TYPE_OFFLINE; + case 4: return NODE_EVENT_TYPE_MEDIA_CHANGED; + default: return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap + internalGetValueMap() { + return internalValueMap; + } + private static final com.google.protobuf.Internal.EnumLiteMap< + NodeEventType> internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public NodeEventType findValueByNumber(int number) { + return NodeEventType.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor + getValueDescriptor() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalStateException( + "Can't get the descriptor of an unrecognized enum value."); + } + return getDescriptor().getValues().get(ordinal()); + } + public final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptorForType() { + return getDescriptor(); + } + public static final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptor() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.getDescriptor().getEnumTypes().get(0); + } + + private static final NodeEventType[] VALUES = values(); + + public static NodeEventType valueOf( + com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException( + "EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private NodeEventType(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:cmvr.quic_gateway.v1.NodeEventType) +} + diff --git a/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NodeSnapshot.java b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NodeSnapshot.java new file mode 100644 index 0000000..52f3c1b --- /dev/null +++ b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NodeSnapshot.java @@ -0,0 +1,2641 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: cmvr/quic_gateway/v1/quic_gateway.proto + +// Protobuf Java Version: 3.25.5 +package com.cmvr.quic.gateway.v1; + +/** + * Protobuf type {@code cmvr.quic_gateway.v1.NodeSnapshot} + */ +public final class NodeSnapshot extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:cmvr.quic_gateway.v1.NodeSnapshot) + NodeSnapshotOrBuilder { +private static final long serialVersionUID = 0L; + // Use NodeSnapshot.newBuilder() to construct. + private NodeSnapshot(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private NodeSnapshot() { + nodeId_ = ""; + bootId_ = ""; + sessionId_ = ""; + softwareVersion_ = ""; + observedSourceIp_ = ""; + localInterfaces_ = java.util.Collections.emptyList(); + tracks_ = java.util.Collections.emptyList(); + robotId_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new NodeSnapshot(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_NodeSnapshot_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_NodeSnapshot_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.cmvr.quic.gateway.v1.NodeSnapshot.class, com.cmvr.quic.gateway.v1.NodeSnapshot.Builder.class); + } + + private int bitField0_; + public static final int NODE_ID_FIELD_NUMBER = 1; + @SuppressWarnings("serial") + private volatile java.lang.Object nodeId_ = ""; + /** + * string node_id = 1; + * @return The nodeId. + */ + @java.lang.Override + public java.lang.String getNodeId() { + java.lang.Object ref = nodeId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + nodeId_ = s; + return s; + } + } + /** + * string node_id = 1; + * @return The bytes for nodeId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getNodeIdBytes() { + java.lang.Object ref = nodeId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + nodeId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int BOOT_ID_FIELD_NUMBER = 2; + @SuppressWarnings("serial") + private volatile java.lang.Object bootId_ = ""; + /** + * string boot_id = 2; + * @return The bootId. + */ + @java.lang.Override + public java.lang.String getBootId() { + java.lang.Object ref = bootId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + bootId_ = s; + return s; + } + } + /** + * string boot_id = 2; + * @return The bytes for bootId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getBootIdBytes() { + java.lang.Object ref = bootId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + bootId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SESSION_ID_FIELD_NUMBER = 3; + @SuppressWarnings("serial") + private volatile java.lang.Object sessionId_ = ""; + /** + * string session_id = 3; + * @return The sessionId. + */ + @java.lang.Override + public java.lang.String getSessionId() { + java.lang.Object ref = sessionId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sessionId_ = s; + return s; + } + } + /** + * string session_id = 3; + * @return The bytes for sessionId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getSessionIdBytes() { + java.lang.Object ref = sessionId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + sessionId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SOFTWARE_VERSION_FIELD_NUMBER = 4; + @SuppressWarnings("serial") + private volatile java.lang.Object softwareVersion_ = ""; + /** + * string software_version = 4; + * @return The softwareVersion. + */ + @java.lang.Override + public java.lang.String getSoftwareVersion() { + java.lang.Object ref = softwareVersion_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + softwareVersion_ = s; + return s; + } + } + /** + * string software_version = 4; + * @return The bytes for softwareVersion. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getSoftwareVersionBytes() { + java.lang.Object ref = softwareVersion_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + softwareVersion_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int ONLINE_FIELD_NUMBER = 5; + private boolean online_ = false; + /** + * bool online = 5; + * @return The online. + */ + @java.lang.Override + public boolean getOnline() { + return online_; + } + + public static final int REGISTERED_AT_UNIX_MS_FIELD_NUMBER = 6; + private long registeredAtUnixMs_ = 0L; + /** + * uint64 registered_at_unix_ms = 6; + * @return The registeredAtUnixMs. + */ + @java.lang.Override + public long getRegisteredAtUnixMs() { + return registeredAtUnixMs_; + } + + public static final int LAST_HEARTBEAT_AT_UNIX_MS_FIELD_NUMBER = 7; + private long lastHeartbeatAtUnixMs_ = 0L; + /** + * uint64 last_heartbeat_at_unix_ms = 7; + * @return The lastHeartbeatAtUnixMs. + */ + @java.lang.Override + public long getLastHeartbeatAtUnixMs() { + return lastHeartbeatAtUnixMs_; + } + + public static final int HEARTBEAT_SEQUENCE_FIELD_NUMBER = 8; + private long heartbeatSequence_ = 0L; + /** + * uint64 heartbeat_sequence = 8; + * @return The heartbeatSequence. + */ + @java.lang.Override + public long getHeartbeatSequence() { + return heartbeatSequence_; + } + + public static final int OBSERVED_SOURCE_IP_FIELD_NUMBER = 9; + @SuppressWarnings("serial") + private volatile java.lang.Object observedSourceIp_ = ""; + /** + * string observed_source_ip = 9; + * @return The observedSourceIp. + */ + @java.lang.Override + public java.lang.String getObservedSourceIp() { + java.lang.Object ref = observedSourceIp_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + observedSourceIp_ = s; + return s; + } + } + /** + * string observed_source_ip = 9; + * @return The bytes for observedSourceIp. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getObservedSourceIpBytes() { + java.lang.Object ref = observedSourceIp_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + observedSourceIp_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int GRPC_ENDPOINT_FIELD_NUMBER = 10; + private com.cmvr.quic.gateway.v1.GrpcEndpoint grpcEndpoint_; + /** + * .cmvr.quic_gateway.v1.GrpcEndpoint grpc_endpoint = 10; + * @return Whether the grpcEndpoint field is set. + */ + @java.lang.Override + public boolean hasGrpcEndpoint() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * .cmvr.quic_gateway.v1.GrpcEndpoint grpc_endpoint = 10; + * @return The grpcEndpoint. + */ + @java.lang.Override + public com.cmvr.quic.gateway.v1.GrpcEndpoint getGrpcEndpoint() { + return grpcEndpoint_ == null ? com.cmvr.quic.gateway.v1.GrpcEndpoint.getDefaultInstance() : grpcEndpoint_; + } + /** + * .cmvr.quic_gateway.v1.GrpcEndpoint grpc_endpoint = 10; + */ + @java.lang.Override + public com.cmvr.quic.gateway.v1.GrpcEndpointOrBuilder getGrpcEndpointOrBuilder() { + return grpcEndpoint_ == null ? com.cmvr.quic.gateway.v1.GrpcEndpoint.getDefaultInstance() : grpcEndpoint_; + } + + public static final int LOCAL_INTERFACES_FIELD_NUMBER = 11; + @SuppressWarnings("serial") + private java.util.List localInterfaces_; + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + @java.lang.Override + public java.util.List getLocalInterfacesList() { + return localInterfaces_; + } + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + @java.lang.Override + public java.util.List + getLocalInterfacesOrBuilderList() { + return localInterfaces_; + } + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + @java.lang.Override + public int getLocalInterfacesCount() { + return localInterfaces_.size(); + } + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + @java.lang.Override + public com.cmvr.quic.gateway.v1.NetworkInterfaceAddress getLocalInterfaces(int index) { + return localInterfaces_.get(index); + } + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + @java.lang.Override + public com.cmvr.quic.gateway.v1.NetworkInterfaceAddressOrBuilder getLocalInterfacesOrBuilder( + int index) { + return localInterfaces_.get(index); + } + + public static final int DEVICE_MANAGER_FIELD_NUMBER = 12; + private com.cmvr.quic.gateway.v1.DeviceManagerSnapshot deviceManager_; + /** + * .cmvr.quic_gateway.v1.DeviceManagerSnapshot device_manager = 12; + * @return Whether the deviceManager field is set. + */ + @java.lang.Override + public boolean hasDeviceManager() { + return ((bitField0_ & 0x00000002) != 0); + } + /** + * .cmvr.quic_gateway.v1.DeviceManagerSnapshot device_manager = 12; + * @return The deviceManager. + */ + @java.lang.Override + public com.cmvr.quic.gateway.v1.DeviceManagerSnapshot getDeviceManager() { + return deviceManager_ == null ? com.cmvr.quic.gateway.v1.DeviceManagerSnapshot.getDefaultInstance() : deviceManager_; + } + /** + * .cmvr.quic_gateway.v1.DeviceManagerSnapshot device_manager = 12; + */ + @java.lang.Override + public com.cmvr.quic.gateway.v1.DeviceManagerSnapshotOrBuilder getDeviceManagerOrBuilder() { + return deviceManager_ == null ? com.cmvr.quic.gateway.v1.DeviceManagerSnapshot.getDefaultInstance() : deviceManager_; + } + + public static final int MEDIA_SESSION_EPOCH_FIELD_NUMBER = 13; + private long mediaSessionEpoch_ = 0L; + /** + * uint64 media_session_epoch = 13; + * @return The mediaSessionEpoch. + */ + @java.lang.Override + public long getMediaSessionEpoch() { + return mediaSessionEpoch_; + } + + public static final int TRACKS_FIELD_NUMBER = 14; + @SuppressWarnings("serial") + private java.util.List tracks_; + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + @java.lang.Override + public java.util.List getTracksList() { + return tracks_; + } + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + @java.lang.Override + public java.util.List + getTracksOrBuilderList() { + return tracks_; + } + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + @java.lang.Override + public int getTracksCount() { + return tracks_.size(); + } + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + @java.lang.Override + public com.cmvr.quic.gateway.v1.MediaTrack getTracks(int index) { + return tracks_.get(index); + } + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + @java.lang.Override + public com.cmvr.quic.gateway.v1.MediaTrackOrBuilder getTracksOrBuilder( + int index) { + return tracks_.get(index); + } + + public static final int ROBOT_ID_FIELD_NUMBER = 15; + @SuppressWarnings("serial") + private volatile java.lang.Object robotId_ = ""; + /** + * string robot_id = 15; + * @return The robotId. + */ + @java.lang.Override + public java.lang.String getRobotId() { + java.lang.Object ref = robotId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + robotId_ = s; + return s; + } + } + /** + * string robot_id = 15; + * @return The bytes for robotId. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getRobotIdBytes() { + java.lang.Object ref = robotId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + robotId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nodeId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, nodeId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(bootId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, bootId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sessionId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, sessionId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(softwareVersion_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 4, softwareVersion_); + } + if (online_ != false) { + output.writeBool(5, online_); + } + if (registeredAtUnixMs_ != 0L) { + output.writeUInt64(6, registeredAtUnixMs_); + } + if (lastHeartbeatAtUnixMs_ != 0L) { + output.writeUInt64(7, lastHeartbeatAtUnixMs_); + } + if (heartbeatSequence_ != 0L) { + output.writeUInt64(8, heartbeatSequence_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(observedSourceIp_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 9, observedSourceIp_); + } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(10, getGrpcEndpoint()); + } + for (int i = 0; i < localInterfaces_.size(); i++) { + output.writeMessage(11, localInterfaces_.get(i)); + } + if (((bitField0_ & 0x00000002) != 0)) { + output.writeMessage(12, getDeviceManager()); + } + if (mediaSessionEpoch_ != 0L) { + output.writeUInt64(13, mediaSessionEpoch_); + } + for (int i = 0; i < tracks_.size(); i++) { + output.writeMessage(14, tracks_.get(i)); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(robotId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 15, robotId_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nodeId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, nodeId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(bootId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, bootId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sessionId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, sessionId_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(softwareVersion_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, softwareVersion_); + } + if (online_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(5, online_); + } + if (registeredAtUnixMs_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeUInt64Size(6, registeredAtUnixMs_); + } + if (lastHeartbeatAtUnixMs_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeUInt64Size(7, lastHeartbeatAtUnixMs_); + } + if (heartbeatSequence_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeUInt64Size(8, heartbeatSequence_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(observedSourceIp_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(9, observedSourceIp_); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(10, getGrpcEndpoint()); + } + for (int i = 0; i < localInterfaces_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(11, localInterfaces_.get(i)); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(12, getDeviceManager()); + } + if (mediaSessionEpoch_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeUInt64Size(13, mediaSessionEpoch_); + } + for (int i = 0; i < tracks_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(14, tracks_.get(i)); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(robotId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(15, robotId_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.cmvr.quic.gateway.v1.NodeSnapshot)) { + return super.equals(obj); + } + com.cmvr.quic.gateway.v1.NodeSnapshot other = (com.cmvr.quic.gateway.v1.NodeSnapshot) obj; + + if (!getNodeId() + .equals(other.getNodeId())) return false; + if (!getBootId() + .equals(other.getBootId())) return false; + if (!getSessionId() + .equals(other.getSessionId())) return false; + if (!getSoftwareVersion() + .equals(other.getSoftwareVersion())) return false; + if (getOnline() + != other.getOnline()) return false; + if (getRegisteredAtUnixMs() + != other.getRegisteredAtUnixMs()) return false; + if (getLastHeartbeatAtUnixMs() + != other.getLastHeartbeatAtUnixMs()) return false; + if (getHeartbeatSequence() + != other.getHeartbeatSequence()) return false; + if (!getObservedSourceIp() + .equals(other.getObservedSourceIp())) return false; + if (hasGrpcEndpoint() != other.hasGrpcEndpoint()) return false; + if (hasGrpcEndpoint()) { + if (!getGrpcEndpoint() + .equals(other.getGrpcEndpoint())) return false; + } + if (!getLocalInterfacesList() + .equals(other.getLocalInterfacesList())) return false; + if (hasDeviceManager() != other.hasDeviceManager()) return false; + if (hasDeviceManager()) { + if (!getDeviceManager() + .equals(other.getDeviceManager())) return false; + } + if (getMediaSessionEpoch() + != other.getMediaSessionEpoch()) return false; + if (!getTracksList() + .equals(other.getTracksList())) return false; + if (!getRobotId() + .equals(other.getRobotId())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + NODE_ID_FIELD_NUMBER; + hash = (53 * hash) + getNodeId().hashCode(); + hash = (37 * hash) + BOOT_ID_FIELD_NUMBER; + hash = (53 * hash) + getBootId().hashCode(); + hash = (37 * hash) + SESSION_ID_FIELD_NUMBER; + hash = (53 * hash) + getSessionId().hashCode(); + hash = (37 * hash) + SOFTWARE_VERSION_FIELD_NUMBER; + hash = (53 * hash) + getSoftwareVersion().hashCode(); + hash = (37 * hash) + ONLINE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getOnline()); + hash = (37 * hash) + REGISTERED_AT_UNIX_MS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getRegisteredAtUnixMs()); + hash = (37 * hash) + LAST_HEARTBEAT_AT_UNIX_MS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getLastHeartbeatAtUnixMs()); + hash = (37 * hash) + HEARTBEAT_SEQUENCE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getHeartbeatSequence()); + hash = (37 * hash) + OBSERVED_SOURCE_IP_FIELD_NUMBER; + hash = (53 * hash) + getObservedSourceIp().hashCode(); + if (hasGrpcEndpoint()) { + hash = (37 * hash) + GRPC_ENDPOINT_FIELD_NUMBER; + hash = (53 * hash) + getGrpcEndpoint().hashCode(); + } + if (getLocalInterfacesCount() > 0) { + hash = (37 * hash) + LOCAL_INTERFACES_FIELD_NUMBER; + hash = (53 * hash) + getLocalInterfacesList().hashCode(); + } + if (hasDeviceManager()) { + hash = (37 * hash) + DEVICE_MANAGER_FIELD_NUMBER; + hash = (53 * hash) + getDeviceManager().hashCode(); + } + hash = (37 * hash) + MEDIA_SESSION_EPOCH_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getMediaSessionEpoch()); + if (getTracksCount() > 0) { + hash = (37 * hash) + TRACKS_FIELD_NUMBER; + hash = (53 * hash) + getTracksList().hashCode(); + } + hash = (37 * hash) + ROBOT_ID_FIELD_NUMBER; + hash = (53 * hash) + getRobotId().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.cmvr.quic.gateway.v1.NodeSnapshot parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.cmvr.quic.gateway.v1.NodeSnapshot parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.NodeSnapshot parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.cmvr.quic.gateway.v1.NodeSnapshot parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.NodeSnapshot parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.cmvr.quic.gateway.v1.NodeSnapshot parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.NodeSnapshot parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static com.cmvr.quic.gateway.v1.NodeSnapshot parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static com.cmvr.quic.gateway.v1.NodeSnapshot parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + + public static com.cmvr.quic.gateway.v1.NodeSnapshot parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static com.cmvr.quic.gateway.v1.NodeSnapshot parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static com.cmvr.quic.gateway.v1.NodeSnapshot parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(com.cmvr.quic.gateway.v1.NodeSnapshot prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code cmvr.quic_gateway.v1.NodeSnapshot} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:cmvr.quic_gateway.v1.NodeSnapshot) + com.cmvr.quic.gateway.v1.NodeSnapshotOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_NodeSnapshot_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_NodeSnapshot_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.cmvr.quic.gateway.v1.NodeSnapshot.class, com.cmvr.quic.gateway.v1.NodeSnapshot.Builder.class); + } + + // Construct using com.cmvr.quic.gateway.v1.NodeSnapshot.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getGrpcEndpointFieldBuilder(); + getLocalInterfacesFieldBuilder(); + getDeviceManagerFieldBuilder(); + getTracksFieldBuilder(); + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + nodeId_ = ""; + bootId_ = ""; + sessionId_ = ""; + softwareVersion_ = ""; + online_ = false; + registeredAtUnixMs_ = 0L; + lastHeartbeatAtUnixMs_ = 0L; + heartbeatSequence_ = 0L; + observedSourceIp_ = ""; + grpcEndpoint_ = null; + if (grpcEndpointBuilder_ != null) { + grpcEndpointBuilder_.dispose(); + grpcEndpointBuilder_ = null; + } + if (localInterfacesBuilder_ == null) { + localInterfaces_ = java.util.Collections.emptyList(); + } else { + localInterfaces_ = null; + localInterfacesBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000400); + deviceManager_ = null; + if (deviceManagerBuilder_ != null) { + deviceManagerBuilder_.dispose(); + deviceManagerBuilder_ = null; + } + mediaSessionEpoch_ = 0L; + if (tracksBuilder_ == null) { + tracks_ = java.util.Collections.emptyList(); + } else { + tracks_ = null; + tracksBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00002000); + robotId_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return com.cmvr.quic.gateway.v1.QuicGatewayProtocol.internal_static_cmvr_quic_gateway_v1_NodeSnapshot_descriptor; + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.NodeSnapshot getDefaultInstanceForType() { + return com.cmvr.quic.gateway.v1.NodeSnapshot.getDefaultInstance(); + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.NodeSnapshot build() { + com.cmvr.quic.gateway.v1.NodeSnapshot result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.NodeSnapshot buildPartial() { + com.cmvr.quic.gateway.v1.NodeSnapshot result = new com.cmvr.quic.gateway.v1.NodeSnapshot(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(com.cmvr.quic.gateway.v1.NodeSnapshot result) { + if (localInterfacesBuilder_ == null) { + if (((bitField0_ & 0x00000400) != 0)) { + localInterfaces_ = java.util.Collections.unmodifiableList(localInterfaces_); + bitField0_ = (bitField0_ & ~0x00000400); + } + result.localInterfaces_ = localInterfaces_; + } else { + result.localInterfaces_ = localInterfacesBuilder_.build(); + } + if (tracksBuilder_ == null) { + if (((bitField0_ & 0x00002000) != 0)) { + tracks_ = java.util.Collections.unmodifiableList(tracks_); + bitField0_ = (bitField0_ & ~0x00002000); + } + result.tracks_ = tracks_; + } else { + result.tracks_ = tracksBuilder_.build(); + } + } + + private void buildPartial0(com.cmvr.quic.gateway.v1.NodeSnapshot result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.nodeId_ = nodeId_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.bootId_ = bootId_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.sessionId_ = sessionId_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.softwareVersion_ = softwareVersion_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.online_ = online_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.registeredAtUnixMs_ = registeredAtUnixMs_; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.lastHeartbeatAtUnixMs_ = lastHeartbeatAtUnixMs_; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.heartbeatSequence_ = heartbeatSequence_; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + result.observedSourceIp_ = observedSourceIp_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000200) != 0)) { + result.grpcEndpoint_ = grpcEndpointBuilder_ == null + ? grpcEndpoint_ + : grpcEndpointBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000800) != 0)) { + result.deviceManager_ = deviceManagerBuilder_ == null + ? deviceManager_ + : deviceManagerBuilder_.build(); + to_bitField0_ |= 0x00000002; + } + if (((from_bitField0_ & 0x00001000) != 0)) { + result.mediaSessionEpoch_ = mediaSessionEpoch_; + } + if (((from_bitField0_ & 0x00004000) != 0)) { + result.robotId_ = robotId_; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.cmvr.quic.gateway.v1.NodeSnapshot) { + return mergeFrom((com.cmvr.quic.gateway.v1.NodeSnapshot)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.cmvr.quic.gateway.v1.NodeSnapshot other) { + if (other == com.cmvr.quic.gateway.v1.NodeSnapshot.getDefaultInstance()) return this; + if (!other.getNodeId().isEmpty()) { + nodeId_ = other.nodeId_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getBootId().isEmpty()) { + bootId_ = other.bootId_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getSessionId().isEmpty()) { + sessionId_ = other.sessionId_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (!other.getSoftwareVersion().isEmpty()) { + softwareVersion_ = other.softwareVersion_; + bitField0_ |= 0x00000008; + onChanged(); + } + if (other.getOnline() != false) { + setOnline(other.getOnline()); + } + if (other.getRegisteredAtUnixMs() != 0L) { + setRegisteredAtUnixMs(other.getRegisteredAtUnixMs()); + } + if (other.getLastHeartbeatAtUnixMs() != 0L) { + setLastHeartbeatAtUnixMs(other.getLastHeartbeatAtUnixMs()); + } + if (other.getHeartbeatSequence() != 0L) { + setHeartbeatSequence(other.getHeartbeatSequence()); + } + if (!other.getObservedSourceIp().isEmpty()) { + observedSourceIp_ = other.observedSourceIp_; + bitField0_ |= 0x00000100; + onChanged(); + } + if (other.hasGrpcEndpoint()) { + mergeGrpcEndpoint(other.getGrpcEndpoint()); + } + if (localInterfacesBuilder_ == null) { + if (!other.localInterfaces_.isEmpty()) { + if (localInterfaces_.isEmpty()) { + localInterfaces_ = other.localInterfaces_; + bitField0_ = (bitField0_ & ~0x00000400); + } else { + ensureLocalInterfacesIsMutable(); + localInterfaces_.addAll(other.localInterfaces_); + } + onChanged(); + } + } else { + if (!other.localInterfaces_.isEmpty()) { + if (localInterfacesBuilder_.isEmpty()) { + localInterfacesBuilder_.dispose(); + localInterfacesBuilder_ = null; + localInterfaces_ = other.localInterfaces_; + bitField0_ = (bitField0_ & ~0x00000400); + localInterfacesBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getLocalInterfacesFieldBuilder() : null; + } else { + localInterfacesBuilder_.addAllMessages(other.localInterfaces_); + } + } + } + if (other.hasDeviceManager()) { + mergeDeviceManager(other.getDeviceManager()); + } + if (other.getMediaSessionEpoch() != 0L) { + setMediaSessionEpoch(other.getMediaSessionEpoch()); + } + if (tracksBuilder_ == null) { + if (!other.tracks_.isEmpty()) { + if (tracks_.isEmpty()) { + tracks_ = other.tracks_; + bitField0_ = (bitField0_ & ~0x00002000); + } else { + ensureTracksIsMutable(); + tracks_.addAll(other.tracks_); + } + onChanged(); + } + } else { + if (!other.tracks_.isEmpty()) { + if (tracksBuilder_.isEmpty()) { + tracksBuilder_.dispose(); + tracksBuilder_ = null; + tracks_ = other.tracks_; + bitField0_ = (bitField0_ & ~0x00002000); + tracksBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getTracksFieldBuilder() : null; + } else { + tracksBuilder_.addAllMessages(other.tracks_); + } + } + } + if (!other.getRobotId().isEmpty()) { + robotId_ = other.robotId_; + bitField0_ |= 0x00004000; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + nodeId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: { + bootId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: { + sessionId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 34: { + softwareVersion_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000008; + break; + } // case 34 + case 40: { + online_ = input.readBool(); + bitField0_ |= 0x00000010; + break; + } // case 40 + case 48: { + registeredAtUnixMs_ = input.readUInt64(); + bitField0_ |= 0x00000020; + break; + } // case 48 + case 56: { + lastHeartbeatAtUnixMs_ = input.readUInt64(); + bitField0_ |= 0x00000040; + break; + } // case 56 + case 64: { + heartbeatSequence_ = input.readUInt64(); + bitField0_ |= 0x00000080; + break; + } // case 64 + case 74: { + observedSourceIp_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000100; + break; + } // case 74 + case 82: { + input.readMessage( + getGrpcEndpointFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000200; + break; + } // case 82 + case 90: { + com.cmvr.quic.gateway.v1.NetworkInterfaceAddress m = + input.readMessage( + com.cmvr.quic.gateway.v1.NetworkInterfaceAddress.parser(), + extensionRegistry); + if (localInterfacesBuilder_ == null) { + ensureLocalInterfacesIsMutable(); + localInterfaces_.add(m); + } else { + localInterfacesBuilder_.addMessage(m); + } + break; + } // case 90 + case 98: { + input.readMessage( + getDeviceManagerFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000800; + break; + } // case 98 + case 104: { + mediaSessionEpoch_ = input.readUInt64(); + bitField0_ |= 0x00001000; + break; + } // case 104 + case 114: { + com.cmvr.quic.gateway.v1.MediaTrack m = + input.readMessage( + com.cmvr.quic.gateway.v1.MediaTrack.parser(), + extensionRegistry); + if (tracksBuilder_ == null) { + ensureTracksIsMutable(); + tracks_.add(m); + } else { + tracksBuilder_.addMessage(m); + } + break; + } // case 114 + case 122: { + robotId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00004000; + break; + } // case 122 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private java.lang.Object nodeId_ = ""; + /** + * string node_id = 1; + * @return The nodeId. + */ + public java.lang.String getNodeId() { + java.lang.Object ref = nodeId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + nodeId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string node_id = 1; + * @return The bytes for nodeId. + */ + public com.google.protobuf.ByteString + getNodeIdBytes() { + java.lang.Object ref = nodeId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + nodeId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string node_id = 1; + * @param value The nodeId to set. + * @return This builder for chaining. + */ + public Builder setNodeId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + nodeId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * string node_id = 1; + * @return This builder for chaining. + */ + public Builder clearNodeId() { + nodeId_ = getDefaultInstance().getNodeId(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * string node_id = 1; + * @param value The bytes for nodeId to set. + * @return This builder for chaining. + */ + public Builder setNodeIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + nodeId_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object bootId_ = ""; + /** + * string boot_id = 2; + * @return The bootId. + */ + public java.lang.String getBootId() { + java.lang.Object ref = bootId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + bootId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string boot_id = 2; + * @return The bytes for bootId. + */ + public com.google.protobuf.ByteString + getBootIdBytes() { + java.lang.Object ref = bootId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + bootId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string boot_id = 2; + * @param value The bootId to set. + * @return This builder for chaining. + */ + public Builder setBootId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + bootId_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * string boot_id = 2; + * @return This builder for chaining. + */ + public Builder clearBootId() { + bootId_ = getDefaultInstance().getBootId(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + /** + * string boot_id = 2; + * @param value The bytes for bootId to set. + * @return This builder for chaining. + */ + public Builder setBootIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + bootId_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private java.lang.Object sessionId_ = ""; + /** + * string session_id = 3; + * @return The sessionId. + */ + public java.lang.String getSessionId() { + java.lang.Object ref = sessionId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sessionId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string session_id = 3; + * @return The bytes for sessionId. + */ + public com.google.protobuf.ByteString + getSessionIdBytes() { + java.lang.Object ref = sessionId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + sessionId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string session_id = 3; + * @param value The sessionId to set. + * @return This builder for chaining. + */ + public Builder setSessionId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + sessionId_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * string session_id = 3; + * @return This builder for chaining. + */ + public Builder clearSessionId() { + sessionId_ = getDefaultInstance().getSessionId(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + /** + * string session_id = 3; + * @param value The bytes for sessionId to set. + * @return This builder for chaining. + */ + public Builder setSessionIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + sessionId_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private java.lang.Object softwareVersion_ = ""; + /** + * string software_version = 4; + * @return The softwareVersion. + */ + public java.lang.String getSoftwareVersion() { + java.lang.Object ref = softwareVersion_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + softwareVersion_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string software_version = 4; + * @return The bytes for softwareVersion. + */ + public com.google.protobuf.ByteString + getSoftwareVersionBytes() { + java.lang.Object ref = softwareVersion_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + softwareVersion_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string software_version = 4; + * @param value The softwareVersion to set. + * @return This builder for chaining. + */ + public Builder setSoftwareVersion( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + softwareVersion_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * string software_version = 4; + * @return This builder for chaining. + */ + public Builder clearSoftwareVersion() { + softwareVersion_ = getDefaultInstance().getSoftwareVersion(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + return this; + } + /** + * string software_version = 4; + * @param value The bytes for softwareVersion to set. + * @return This builder for chaining. + */ + public Builder setSoftwareVersionBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + softwareVersion_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + private boolean online_ ; + /** + * bool online = 5; + * @return The online. + */ + @java.lang.Override + public boolean getOnline() { + return online_; + } + /** + * bool online = 5; + * @param value The online to set. + * @return This builder for chaining. + */ + public Builder setOnline(boolean value) { + + online_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + * bool online = 5; + * @return This builder for chaining. + */ + public Builder clearOnline() { + bitField0_ = (bitField0_ & ~0x00000010); + online_ = false; + onChanged(); + return this; + } + + private long registeredAtUnixMs_ ; + /** + * uint64 registered_at_unix_ms = 6; + * @return The registeredAtUnixMs. + */ + @java.lang.Override + public long getRegisteredAtUnixMs() { + return registeredAtUnixMs_; + } + /** + * uint64 registered_at_unix_ms = 6; + * @param value The registeredAtUnixMs to set. + * @return This builder for chaining. + */ + public Builder setRegisteredAtUnixMs(long value) { + + registeredAtUnixMs_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + * uint64 registered_at_unix_ms = 6; + * @return This builder for chaining. + */ + public Builder clearRegisteredAtUnixMs() { + bitField0_ = (bitField0_ & ~0x00000020); + registeredAtUnixMs_ = 0L; + onChanged(); + return this; + } + + private long lastHeartbeatAtUnixMs_ ; + /** + * uint64 last_heartbeat_at_unix_ms = 7; + * @return The lastHeartbeatAtUnixMs. + */ + @java.lang.Override + public long getLastHeartbeatAtUnixMs() { + return lastHeartbeatAtUnixMs_; + } + /** + * uint64 last_heartbeat_at_unix_ms = 7; + * @param value The lastHeartbeatAtUnixMs to set. + * @return This builder for chaining. + */ + public Builder setLastHeartbeatAtUnixMs(long value) { + + lastHeartbeatAtUnixMs_ = value; + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + /** + * uint64 last_heartbeat_at_unix_ms = 7; + * @return This builder for chaining. + */ + public Builder clearLastHeartbeatAtUnixMs() { + bitField0_ = (bitField0_ & ~0x00000040); + lastHeartbeatAtUnixMs_ = 0L; + onChanged(); + return this; + } + + private long heartbeatSequence_ ; + /** + * uint64 heartbeat_sequence = 8; + * @return The heartbeatSequence. + */ + @java.lang.Override + public long getHeartbeatSequence() { + return heartbeatSequence_; + } + /** + * uint64 heartbeat_sequence = 8; + * @param value The heartbeatSequence to set. + * @return This builder for chaining. + */ + public Builder setHeartbeatSequence(long value) { + + heartbeatSequence_ = value; + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + /** + * uint64 heartbeat_sequence = 8; + * @return This builder for chaining. + */ + public Builder clearHeartbeatSequence() { + bitField0_ = (bitField0_ & ~0x00000080); + heartbeatSequence_ = 0L; + onChanged(); + return this; + } + + private java.lang.Object observedSourceIp_ = ""; + /** + * string observed_source_ip = 9; + * @return The observedSourceIp. + */ + public java.lang.String getObservedSourceIp() { + java.lang.Object ref = observedSourceIp_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + observedSourceIp_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string observed_source_ip = 9; + * @return The bytes for observedSourceIp. + */ + public com.google.protobuf.ByteString + getObservedSourceIpBytes() { + java.lang.Object ref = observedSourceIp_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + observedSourceIp_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string observed_source_ip = 9; + * @param value The observedSourceIp to set. + * @return This builder for chaining. + */ + public Builder setObservedSourceIp( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + observedSourceIp_ = value; + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + /** + * string observed_source_ip = 9; + * @return This builder for chaining. + */ + public Builder clearObservedSourceIp() { + observedSourceIp_ = getDefaultInstance().getObservedSourceIp(); + bitField0_ = (bitField0_ & ~0x00000100); + onChanged(); + return this; + } + /** + * string observed_source_ip = 9; + * @param value The bytes for observedSourceIp to set. + * @return This builder for chaining. + */ + public Builder setObservedSourceIpBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + observedSourceIp_ = value; + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + + private com.cmvr.quic.gateway.v1.GrpcEndpoint grpcEndpoint_; + private com.google.protobuf.SingleFieldBuilderV3< + com.cmvr.quic.gateway.v1.GrpcEndpoint, com.cmvr.quic.gateway.v1.GrpcEndpoint.Builder, com.cmvr.quic.gateway.v1.GrpcEndpointOrBuilder> grpcEndpointBuilder_; + /** + * .cmvr.quic_gateway.v1.GrpcEndpoint grpc_endpoint = 10; + * @return Whether the grpcEndpoint field is set. + */ + public boolean hasGrpcEndpoint() { + return ((bitField0_ & 0x00000200) != 0); + } + /** + * .cmvr.quic_gateway.v1.GrpcEndpoint grpc_endpoint = 10; + * @return The grpcEndpoint. + */ + public com.cmvr.quic.gateway.v1.GrpcEndpoint getGrpcEndpoint() { + if (grpcEndpointBuilder_ == null) { + return grpcEndpoint_ == null ? com.cmvr.quic.gateway.v1.GrpcEndpoint.getDefaultInstance() : grpcEndpoint_; + } else { + return grpcEndpointBuilder_.getMessage(); + } + } + /** + * .cmvr.quic_gateway.v1.GrpcEndpoint grpc_endpoint = 10; + */ + public Builder setGrpcEndpoint(com.cmvr.quic.gateway.v1.GrpcEndpoint value) { + if (grpcEndpointBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + grpcEndpoint_ = value; + } else { + grpcEndpointBuilder_.setMessage(value); + } + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + /** + * .cmvr.quic_gateway.v1.GrpcEndpoint grpc_endpoint = 10; + */ + public Builder setGrpcEndpoint( + com.cmvr.quic.gateway.v1.GrpcEndpoint.Builder builderForValue) { + if (grpcEndpointBuilder_ == null) { + grpcEndpoint_ = builderForValue.build(); + } else { + grpcEndpointBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + /** + * .cmvr.quic_gateway.v1.GrpcEndpoint grpc_endpoint = 10; + */ + public Builder mergeGrpcEndpoint(com.cmvr.quic.gateway.v1.GrpcEndpoint value) { + if (grpcEndpointBuilder_ == null) { + if (((bitField0_ & 0x00000200) != 0) && + grpcEndpoint_ != null && + grpcEndpoint_ != com.cmvr.quic.gateway.v1.GrpcEndpoint.getDefaultInstance()) { + getGrpcEndpointBuilder().mergeFrom(value); + } else { + grpcEndpoint_ = value; + } + } else { + grpcEndpointBuilder_.mergeFrom(value); + } + if (grpcEndpoint_ != null) { + bitField0_ |= 0x00000200; + onChanged(); + } + return this; + } + /** + * .cmvr.quic_gateway.v1.GrpcEndpoint grpc_endpoint = 10; + */ + public Builder clearGrpcEndpoint() { + bitField0_ = (bitField0_ & ~0x00000200); + grpcEndpoint_ = null; + if (grpcEndpointBuilder_ != null) { + grpcEndpointBuilder_.dispose(); + grpcEndpointBuilder_ = null; + } + onChanged(); + return this; + } + /** + * .cmvr.quic_gateway.v1.GrpcEndpoint grpc_endpoint = 10; + */ + public com.cmvr.quic.gateway.v1.GrpcEndpoint.Builder getGrpcEndpointBuilder() { + bitField0_ |= 0x00000200; + onChanged(); + return getGrpcEndpointFieldBuilder().getBuilder(); + } + /** + * .cmvr.quic_gateway.v1.GrpcEndpoint grpc_endpoint = 10; + */ + public com.cmvr.quic.gateway.v1.GrpcEndpointOrBuilder getGrpcEndpointOrBuilder() { + if (grpcEndpointBuilder_ != null) { + return grpcEndpointBuilder_.getMessageOrBuilder(); + } else { + return grpcEndpoint_ == null ? + com.cmvr.quic.gateway.v1.GrpcEndpoint.getDefaultInstance() : grpcEndpoint_; + } + } + /** + * .cmvr.quic_gateway.v1.GrpcEndpoint grpc_endpoint = 10; + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.cmvr.quic.gateway.v1.GrpcEndpoint, com.cmvr.quic.gateway.v1.GrpcEndpoint.Builder, com.cmvr.quic.gateway.v1.GrpcEndpointOrBuilder> + getGrpcEndpointFieldBuilder() { + if (grpcEndpointBuilder_ == null) { + grpcEndpointBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + com.cmvr.quic.gateway.v1.GrpcEndpoint, com.cmvr.quic.gateway.v1.GrpcEndpoint.Builder, com.cmvr.quic.gateway.v1.GrpcEndpointOrBuilder>( + getGrpcEndpoint(), + getParentForChildren(), + isClean()); + grpcEndpoint_ = null; + } + return grpcEndpointBuilder_; + } + + private java.util.List localInterfaces_ = + java.util.Collections.emptyList(); + private void ensureLocalInterfacesIsMutable() { + if (!((bitField0_ & 0x00000400) != 0)) { + localInterfaces_ = new java.util.ArrayList(localInterfaces_); + bitField0_ |= 0x00000400; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + com.cmvr.quic.gateway.v1.NetworkInterfaceAddress, com.cmvr.quic.gateway.v1.NetworkInterfaceAddress.Builder, com.cmvr.quic.gateway.v1.NetworkInterfaceAddressOrBuilder> localInterfacesBuilder_; + + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + public java.util.List getLocalInterfacesList() { + if (localInterfacesBuilder_ == null) { + return java.util.Collections.unmodifiableList(localInterfaces_); + } else { + return localInterfacesBuilder_.getMessageList(); + } + } + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + public int getLocalInterfacesCount() { + if (localInterfacesBuilder_ == null) { + return localInterfaces_.size(); + } else { + return localInterfacesBuilder_.getCount(); + } + } + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + public com.cmvr.quic.gateway.v1.NetworkInterfaceAddress getLocalInterfaces(int index) { + if (localInterfacesBuilder_ == null) { + return localInterfaces_.get(index); + } else { + return localInterfacesBuilder_.getMessage(index); + } + } + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + public Builder setLocalInterfaces( + int index, com.cmvr.quic.gateway.v1.NetworkInterfaceAddress value) { + if (localInterfacesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLocalInterfacesIsMutable(); + localInterfaces_.set(index, value); + onChanged(); + } else { + localInterfacesBuilder_.setMessage(index, value); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + public Builder setLocalInterfaces( + int index, com.cmvr.quic.gateway.v1.NetworkInterfaceAddress.Builder builderForValue) { + if (localInterfacesBuilder_ == null) { + ensureLocalInterfacesIsMutable(); + localInterfaces_.set(index, builderForValue.build()); + onChanged(); + } else { + localInterfacesBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + public Builder addLocalInterfaces(com.cmvr.quic.gateway.v1.NetworkInterfaceAddress value) { + if (localInterfacesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLocalInterfacesIsMutable(); + localInterfaces_.add(value); + onChanged(); + } else { + localInterfacesBuilder_.addMessage(value); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + public Builder addLocalInterfaces( + int index, com.cmvr.quic.gateway.v1.NetworkInterfaceAddress value) { + if (localInterfacesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureLocalInterfacesIsMutable(); + localInterfaces_.add(index, value); + onChanged(); + } else { + localInterfacesBuilder_.addMessage(index, value); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + public Builder addLocalInterfaces( + com.cmvr.quic.gateway.v1.NetworkInterfaceAddress.Builder builderForValue) { + if (localInterfacesBuilder_ == null) { + ensureLocalInterfacesIsMutable(); + localInterfaces_.add(builderForValue.build()); + onChanged(); + } else { + localInterfacesBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + public Builder addLocalInterfaces( + int index, com.cmvr.quic.gateway.v1.NetworkInterfaceAddress.Builder builderForValue) { + if (localInterfacesBuilder_ == null) { + ensureLocalInterfacesIsMutable(); + localInterfaces_.add(index, builderForValue.build()); + onChanged(); + } else { + localInterfacesBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + public Builder addAllLocalInterfaces( + java.lang.Iterable values) { + if (localInterfacesBuilder_ == null) { + ensureLocalInterfacesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, localInterfaces_); + onChanged(); + } else { + localInterfacesBuilder_.addAllMessages(values); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + public Builder clearLocalInterfaces() { + if (localInterfacesBuilder_ == null) { + localInterfaces_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000400); + onChanged(); + } else { + localInterfacesBuilder_.clear(); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + public Builder removeLocalInterfaces(int index) { + if (localInterfacesBuilder_ == null) { + ensureLocalInterfacesIsMutable(); + localInterfaces_.remove(index); + onChanged(); + } else { + localInterfacesBuilder_.remove(index); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + public com.cmvr.quic.gateway.v1.NetworkInterfaceAddress.Builder getLocalInterfacesBuilder( + int index) { + return getLocalInterfacesFieldBuilder().getBuilder(index); + } + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + public com.cmvr.quic.gateway.v1.NetworkInterfaceAddressOrBuilder getLocalInterfacesOrBuilder( + int index) { + if (localInterfacesBuilder_ == null) { + return localInterfaces_.get(index); } else { + return localInterfacesBuilder_.getMessageOrBuilder(index); + } + } + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + public java.util.List + getLocalInterfacesOrBuilderList() { + if (localInterfacesBuilder_ != null) { + return localInterfacesBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(localInterfaces_); + } + } + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + public com.cmvr.quic.gateway.v1.NetworkInterfaceAddress.Builder addLocalInterfacesBuilder() { + return getLocalInterfacesFieldBuilder().addBuilder( + com.cmvr.quic.gateway.v1.NetworkInterfaceAddress.getDefaultInstance()); + } + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + public com.cmvr.quic.gateway.v1.NetworkInterfaceAddress.Builder addLocalInterfacesBuilder( + int index) { + return getLocalInterfacesFieldBuilder().addBuilder( + index, com.cmvr.quic.gateway.v1.NetworkInterfaceAddress.getDefaultInstance()); + } + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + public java.util.List + getLocalInterfacesBuilderList() { + return getLocalInterfacesFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + com.cmvr.quic.gateway.v1.NetworkInterfaceAddress, com.cmvr.quic.gateway.v1.NetworkInterfaceAddress.Builder, com.cmvr.quic.gateway.v1.NetworkInterfaceAddressOrBuilder> + getLocalInterfacesFieldBuilder() { + if (localInterfacesBuilder_ == null) { + localInterfacesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + com.cmvr.quic.gateway.v1.NetworkInterfaceAddress, com.cmvr.quic.gateway.v1.NetworkInterfaceAddress.Builder, com.cmvr.quic.gateway.v1.NetworkInterfaceAddressOrBuilder>( + localInterfaces_, + ((bitField0_ & 0x00000400) != 0), + getParentForChildren(), + isClean()); + localInterfaces_ = null; + } + return localInterfacesBuilder_; + } + + private com.cmvr.quic.gateway.v1.DeviceManagerSnapshot deviceManager_; + private com.google.protobuf.SingleFieldBuilderV3< + com.cmvr.quic.gateway.v1.DeviceManagerSnapshot, com.cmvr.quic.gateway.v1.DeviceManagerSnapshot.Builder, com.cmvr.quic.gateway.v1.DeviceManagerSnapshotOrBuilder> deviceManagerBuilder_; + /** + * .cmvr.quic_gateway.v1.DeviceManagerSnapshot device_manager = 12; + * @return Whether the deviceManager field is set. + */ + public boolean hasDeviceManager() { + return ((bitField0_ & 0x00000800) != 0); + } + /** + * .cmvr.quic_gateway.v1.DeviceManagerSnapshot device_manager = 12; + * @return The deviceManager. + */ + public com.cmvr.quic.gateway.v1.DeviceManagerSnapshot getDeviceManager() { + if (deviceManagerBuilder_ == null) { + return deviceManager_ == null ? com.cmvr.quic.gateway.v1.DeviceManagerSnapshot.getDefaultInstance() : deviceManager_; + } else { + return deviceManagerBuilder_.getMessage(); + } + } + /** + * .cmvr.quic_gateway.v1.DeviceManagerSnapshot device_manager = 12; + */ + public Builder setDeviceManager(com.cmvr.quic.gateway.v1.DeviceManagerSnapshot value) { + if (deviceManagerBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + deviceManager_ = value; + } else { + deviceManagerBuilder_.setMessage(value); + } + bitField0_ |= 0x00000800; + onChanged(); + return this; + } + /** + * .cmvr.quic_gateway.v1.DeviceManagerSnapshot device_manager = 12; + */ + public Builder setDeviceManager( + com.cmvr.quic.gateway.v1.DeviceManagerSnapshot.Builder builderForValue) { + if (deviceManagerBuilder_ == null) { + deviceManager_ = builderForValue.build(); + } else { + deviceManagerBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000800; + onChanged(); + return this; + } + /** + * .cmvr.quic_gateway.v1.DeviceManagerSnapshot device_manager = 12; + */ + public Builder mergeDeviceManager(com.cmvr.quic.gateway.v1.DeviceManagerSnapshot value) { + if (deviceManagerBuilder_ == null) { + if (((bitField0_ & 0x00000800) != 0) && + deviceManager_ != null && + deviceManager_ != com.cmvr.quic.gateway.v1.DeviceManagerSnapshot.getDefaultInstance()) { + getDeviceManagerBuilder().mergeFrom(value); + } else { + deviceManager_ = value; + } + } else { + deviceManagerBuilder_.mergeFrom(value); + } + if (deviceManager_ != null) { + bitField0_ |= 0x00000800; + onChanged(); + } + return this; + } + /** + * .cmvr.quic_gateway.v1.DeviceManagerSnapshot device_manager = 12; + */ + public Builder clearDeviceManager() { + bitField0_ = (bitField0_ & ~0x00000800); + deviceManager_ = null; + if (deviceManagerBuilder_ != null) { + deviceManagerBuilder_.dispose(); + deviceManagerBuilder_ = null; + } + onChanged(); + return this; + } + /** + * .cmvr.quic_gateway.v1.DeviceManagerSnapshot device_manager = 12; + */ + public com.cmvr.quic.gateway.v1.DeviceManagerSnapshot.Builder getDeviceManagerBuilder() { + bitField0_ |= 0x00000800; + onChanged(); + return getDeviceManagerFieldBuilder().getBuilder(); + } + /** + * .cmvr.quic_gateway.v1.DeviceManagerSnapshot device_manager = 12; + */ + public com.cmvr.quic.gateway.v1.DeviceManagerSnapshotOrBuilder getDeviceManagerOrBuilder() { + if (deviceManagerBuilder_ != null) { + return deviceManagerBuilder_.getMessageOrBuilder(); + } else { + return deviceManager_ == null ? + com.cmvr.quic.gateway.v1.DeviceManagerSnapshot.getDefaultInstance() : deviceManager_; + } + } + /** + * .cmvr.quic_gateway.v1.DeviceManagerSnapshot device_manager = 12; + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.cmvr.quic.gateway.v1.DeviceManagerSnapshot, com.cmvr.quic.gateway.v1.DeviceManagerSnapshot.Builder, com.cmvr.quic.gateway.v1.DeviceManagerSnapshotOrBuilder> + getDeviceManagerFieldBuilder() { + if (deviceManagerBuilder_ == null) { + deviceManagerBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + com.cmvr.quic.gateway.v1.DeviceManagerSnapshot, com.cmvr.quic.gateway.v1.DeviceManagerSnapshot.Builder, com.cmvr.quic.gateway.v1.DeviceManagerSnapshotOrBuilder>( + getDeviceManager(), + getParentForChildren(), + isClean()); + deviceManager_ = null; + } + return deviceManagerBuilder_; + } + + private long mediaSessionEpoch_ ; + /** + * uint64 media_session_epoch = 13; + * @return The mediaSessionEpoch. + */ + @java.lang.Override + public long getMediaSessionEpoch() { + return mediaSessionEpoch_; + } + /** + * uint64 media_session_epoch = 13; + * @param value The mediaSessionEpoch to set. + * @return This builder for chaining. + */ + public Builder setMediaSessionEpoch(long value) { + + mediaSessionEpoch_ = value; + bitField0_ |= 0x00001000; + onChanged(); + return this; + } + /** + * uint64 media_session_epoch = 13; + * @return This builder for chaining. + */ + public Builder clearMediaSessionEpoch() { + bitField0_ = (bitField0_ & ~0x00001000); + mediaSessionEpoch_ = 0L; + onChanged(); + return this; + } + + private java.util.List tracks_ = + java.util.Collections.emptyList(); + private void ensureTracksIsMutable() { + if (!((bitField0_ & 0x00002000) != 0)) { + tracks_ = new java.util.ArrayList(tracks_); + bitField0_ |= 0x00002000; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + com.cmvr.quic.gateway.v1.MediaTrack, com.cmvr.quic.gateway.v1.MediaTrack.Builder, com.cmvr.quic.gateway.v1.MediaTrackOrBuilder> tracksBuilder_; + + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + public java.util.List getTracksList() { + if (tracksBuilder_ == null) { + return java.util.Collections.unmodifiableList(tracks_); + } else { + return tracksBuilder_.getMessageList(); + } + } + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + public int getTracksCount() { + if (tracksBuilder_ == null) { + return tracks_.size(); + } else { + return tracksBuilder_.getCount(); + } + } + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + public com.cmvr.quic.gateway.v1.MediaTrack getTracks(int index) { + if (tracksBuilder_ == null) { + return tracks_.get(index); + } else { + return tracksBuilder_.getMessage(index); + } + } + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + public Builder setTracks( + int index, com.cmvr.quic.gateway.v1.MediaTrack value) { + if (tracksBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureTracksIsMutable(); + tracks_.set(index, value); + onChanged(); + } else { + tracksBuilder_.setMessage(index, value); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + public Builder setTracks( + int index, com.cmvr.quic.gateway.v1.MediaTrack.Builder builderForValue) { + if (tracksBuilder_ == null) { + ensureTracksIsMutable(); + tracks_.set(index, builderForValue.build()); + onChanged(); + } else { + tracksBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + public Builder addTracks(com.cmvr.quic.gateway.v1.MediaTrack value) { + if (tracksBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureTracksIsMutable(); + tracks_.add(value); + onChanged(); + } else { + tracksBuilder_.addMessage(value); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + public Builder addTracks( + int index, com.cmvr.quic.gateway.v1.MediaTrack value) { + if (tracksBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureTracksIsMutable(); + tracks_.add(index, value); + onChanged(); + } else { + tracksBuilder_.addMessage(index, value); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + public Builder addTracks( + com.cmvr.quic.gateway.v1.MediaTrack.Builder builderForValue) { + if (tracksBuilder_ == null) { + ensureTracksIsMutable(); + tracks_.add(builderForValue.build()); + onChanged(); + } else { + tracksBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + public Builder addTracks( + int index, com.cmvr.quic.gateway.v1.MediaTrack.Builder builderForValue) { + if (tracksBuilder_ == null) { + ensureTracksIsMutable(); + tracks_.add(index, builderForValue.build()); + onChanged(); + } else { + tracksBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + public Builder addAllTracks( + java.lang.Iterable values) { + if (tracksBuilder_ == null) { + ensureTracksIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, tracks_); + onChanged(); + } else { + tracksBuilder_.addAllMessages(values); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + public Builder clearTracks() { + if (tracksBuilder_ == null) { + tracks_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00002000); + onChanged(); + } else { + tracksBuilder_.clear(); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + public Builder removeTracks(int index) { + if (tracksBuilder_ == null) { + ensureTracksIsMutable(); + tracks_.remove(index); + onChanged(); + } else { + tracksBuilder_.remove(index); + } + return this; + } + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + public com.cmvr.quic.gateway.v1.MediaTrack.Builder getTracksBuilder( + int index) { + return getTracksFieldBuilder().getBuilder(index); + } + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + public com.cmvr.quic.gateway.v1.MediaTrackOrBuilder getTracksOrBuilder( + int index) { + if (tracksBuilder_ == null) { + return tracks_.get(index); } else { + return tracksBuilder_.getMessageOrBuilder(index); + } + } + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + public java.util.List + getTracksOrBuilderList() { + if (tracksBuilder_ != null) { + return tracksBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(tracks_); + } + } + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + public com.cmvr.quic.gateway.v1.MediaTrack.Builder addTracksBuilder() { + return getTracksFieldBuilder().addBuilder( + com.cmvr.quic.gateway.v1.MediaTrack.getDefaultInstance()); + } + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + public com.cmvr.quic.gateway.v1.MediaTrack.Builder addTracksBuilder( + int index) { + return getTracksFieldBuilder().addBuilder( + index, com.cmvr.quic.gateway.v1.MediaTrack.getDefaultInstance()); + } + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + public java.util.List + getTracksBuilderList() { + return getTracksFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + com.cmvr.quic.gateway.v1.MediaTrack, com.cmvr.quic.gateway.v1.MediaTrack.Builder, com.cmvr.quic.gateway.v1.MediaTrackOrBuilder> + getTracksFieldBuilder() { + if (tracksBuilder_ == null) { + tracksBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + com.cmvr.quic.gateway.v1.MediaTrack, com.cmvr.quic.gateway.v1.MediaTrack.Builder, com.cmvr.quic.gateway.v1.MediaTrackOrBuilder>( + tracks_, + ((bitField0_ & 0x00002000) != 0), + getParentForChildren(), + isClean()); + tracks_ = null; + } + return tracksBuilder_; + } + + private java.lang.Object robotId_ = ""; + /** + * string robot_id = 15; + * @return The robotId. + */ + public java.lang.String getRobotId() { + java.lang.Object ref = robotId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + robotId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string robot_id = 15; + * @return The bytes for robotId. + */ + public com.google.protobuf.ByteString + getRobotIdBytes() { + java.lang.Object ref = robotId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + robotId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string robot_id = 15; + * @param value The robotId to set. + * @return This builder for chaining. + */ + public Builder setRobotId( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + robotId_ = value; + bitField0_ |= 0x00004000; + onChanged(); + return this; + } + /** + * string robot_id = 15; + * @return This builder for chaining. + */ + public Builder clearRobotId() { + robotId_ = getDefaultInstance().getRobotId(); + bitField0_ = (bitField0_ & ~0x00004000); + onChanged(); + return this; + } + /** + * string robot_id = 15; + * @param value The bytes for robotId to set. + * @return This builder for chaining. + */ + public Builder setRobotIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + robotId_ = value; + bitField0_ |= 0x00004000; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:cmvr.quic_gateway.v1.NodeSnapshot) + } + + // @@protoc_insertion_point(class_scope:cmvr.quic_gateway.v1.NodeSnapshot) + private static final com.cmvr.quic.gateway.v1.NodeSnapshot DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new com.cmvr.quic.gateway.v1.NodeSnapshot(); + } + + public static com.cmvr.quic.gateway.v1.NodeSnapshot getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public NodeSnapshot parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.cmvr.quic.gateway.v1.NodeSnapshot getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + +} + diff --git a/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NodeSnapshotOrBuilder.java b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NodeSnapshotOrBuilder.java new file mode 100644 index 0000000..103f2c4 --- /dev/null +++ b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/NodeSnapshotOrBuilder.java @@ -0,0 +1,190 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: cmvr/quic_gateway/v1/quic_gateway.proto + +// Protobuf Java Version: 3.25.5 +package com.cmvr.quic.gateway.v1; + +public interface NodeSnapshotOrBuilder extends + // @@protoc_insertion_point(interface_extends:cmvr.quic_gateway.v1.NodeSnapshot) + com.google.protobuf.MessageOrBuilder { + + /** + * string node_id = 1; + * @return The nodeId. + */ + java.lang.String getNodeId(); + /** + * string node_id = 1; + * @return The bytes for nodeId. + */ + com.google.protobuf.ByteString + getNodeIdBytes(); + + /** + * string boot_id = 2; + * @return The bootId. + */ + java.lang.String getBootId(); + /** + * string boot_id = 2; + * @return The bytes for bootId. + */ + com.google.protobuf.ByteString + getBootIdBytes(); + + /** + * string session_id = 3; + * @return The sessionId. + */ + java.lang.String getSessionId(); + /** + * string session_id = 3; + * @return The bytes for sessionId. + */ + com.google.protobuf.ByteString + getSessionIdBytes(); + + /** + * string software_version = 4; + * @return The softwareVersion. + */ + java.lang.String getSoftwareVersion(); + /** + * string software_version = 4; + * @return The bytes for softwareVersion. + */ + com.google.protobuf.ByteString + getSoftwareVersionBytes(); + + /** + * bool online = 5; + * @return The online. + */ + boolean getOnline(); + + /** + * uint64 registered_at_unix_ms = 6; + * @return The registeredAtUnixMs. + */ + long getRegisteredAtUnixMs(); + + /** + * uint64 last_heartbeat_at_unix_ms = 7; + * @return The lastHeartbeatAtUnixMs. + */ + long getLastHeartbeatAtUnixMs(); + + /** + * uint64 heartbeat_sequence = 8; + * @return The heartbeatSequence. + */ + long getHeartbeatSequence(); + + /** + * string observed_source_ip = 9; + * @return The observedSourceIp. + */ + java.lang.String getObservedSourceIp(); + /** + * string observed_source_ip = 9; + * @return The bytes for observedSourceIp. + */ + com.google.protobuf.ByteString + getObservedSourceIpBytes(); + + /** + * .cmvr.quic_gateway.v1.GrpcEndpoint grpc_endpoint = 10; + * @return Whether the grpcEndpoint field is set. + */ + boolean hasGrpcEndpoint(); + /** + * .cmvr.quic_gateway.v1.GrpcEndpoint grpc_endpoint = 10; + * @return The grpcEndpoint. + */ + com.cmvr.quic.gateway.v1.GrpcEndpoint getGrpcEndpoint(); + /** + * .cmvr.quic_gateway.v1.GrpcEndpoint grpc_endpoint = 10; + */ + com.cmvr.quic.gateway.v1.GrpcEndpointOrBuilder getGrpcEndpointOrBuilder(); + + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + java.util.List + getLocalInterfacesList(); + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + com.cmvr.quic.gateway.v1.NetworkInterfaceAddress getLocalInterfaces(int index); + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + int getLocalInterfacesCount(); + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + java.util.List + getLocalInterfacesOrBuilderList(); + /** + * repeated .cmvr.quic_gateway.v1.NetworkInterfaceAddress local_interfaces = 11; + */ + com.cmvr.quic.gateway.v1.NetworkInterfaceAddressOrBuilder getLocalInterfacesOrBuilder( + int index); + + /** + * .cmvr.quic_gateway.v1.DeviceManagerSnapshot device_manager = 12; + * @return Whether the deviceManager field is set. + */ + boolean hasDeviceManager(); + /** + * .cmvr.quic_gateway.v1.DeviceManagerSnapshot device_manager = 12; + * @return The deviceManager. + */ + com.cmvr.quic.gateway.v1.DeviceManagerSnapshot getDeviceManager(); + /** + * .cmvr.quic_gateway.v1.DeviceManagerSnapshot device_manager = 12; + */ + com.cmvr.quic.gateway.v1.DeviceManagerSnapshotOrBuilder getDeviceManagerOrBuilder(); + + /** + * uint64 media_session_epoch = 13; + * @return The mediaSessionEpoch. + */ + long getMediaSessionEpoch(); + + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + java.util.List + getTracksList(); + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + com.cmvr.quic.gateway.v1.MediaTrack getTracks(int index); + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + int getTracksCount(); + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + java.util.List + getTracksOrBuilderList(); + /** + * repeated .cmvr.quic_gateway.v1.MediaTrack tracks = 14; + */ + com.cmvr.quic.gateway.v1.MediaTrackOrBuilder getTracksOrBuilder( + int index); + + /** + * string robot_id = 15; + * @return The robotId. + */ + java.lang.String getRobotId(); + /** + * string robot_id = 15; + * @return The bytes for robotId. + */ + com.google.protobuf.ByteString + getRobotIdBytes(); +} diff --git a/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/QuicGatewayProtocol.java b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/QuicGatewayProtocol.java new file mode 100644 index 0000000..04b153f --- /dev/null +++ b/cmvr-iot-quic-contract/src/main/java/com/cmvr/quic/gateway/v1/QuicGatewayProtocol.java @@ -0,0 +1,176 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: cmvr/quic_gateway/v1/quic_gateway.proto + +// Protobuf Java Version: 3.25.5 +package com.cmvr.quic.gateway.v1; + +public final class QuicGatewayProtocol { + private QuicGatewayProtocol() {} + public static void registerAllExtensions( + com.google.protobuf.ExtensionRegistryLite registry) { + } + + public static void registerAllExtensions( + com.google.protobuf.ExtensionRegistry registry) { + registerAllExtensions( + (com.google.protobuf.ExtensionRegistryLite) registry); + } + static final com.google.protobuf.Descriptors.Descriptor + internal_static_cmvr_quic_gateway_v1_NodeEvent_descriptor; + static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_cmvr_quic_gateway_v1_NodeEvent_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_cmvr_quic_gateway_v1_NodeSnapshot_descriptor; + static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_cmvr_quic_gateway_v1_NodeSnapshot_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_cmvr_quic_gateway_v1_GrpcEndpoint_descriptor; + static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_cmvr_quic_gateway_v1_GrpcEndpoint_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_cmvr_quic_gateway_v1_NetworkInterfaceAddress_descriptor; + static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_cmvr_quic_gateway_v1_NetworkInterfaceAddress_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_cmvr_quic_gateway_v1_DeviceManagerSnapshot_descriptor; + static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_cmvr_quic_gateway_v1_DeviceManagerSnapshot_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_cmvr_quic_gateway_v1_ManagedDeviceStatus_descriptor; + static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_cmvr_quic_gateway_v1_ManagedDeviceStatus_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_cmvr_quic_gateway_v1_MediaTrack_descriptor; + static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_cmvr_quic_gateway_v1_MediaTrack_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_cmvr_quic_gateway_v1_MediaFrame_descriptor; + static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_cmvr_quic_gateway_v1_MediaFrame_fieldAccessorTable; + + public static com.google.protobuf.Descriptors.FileDescriptor + getDescriptor() { + return descriptor; + } + private static com.google.protobuf.Descriptors.FileDescriptor + descriptor; + static { + java.lang.String[] descriptorData = { + "\n\'cmvr/quic_gateway/v1/quic_gateway.prot" + + "o\022\024cmvr.quic_gateway.v1\"\214\001\n\tNodeEvent\0221\n" + + "\004type\030\001 \001(\0162#.cmvr.quic_gateway.v1.NodeE" + + "ventType\0220\n\004node\030\002 \001(\0132\".cmvr.quic_gatew" + + "ay.v1.NodeSnapshot\022\032\n\022event_time_unix_ms" + + "\030\003 \001(\004\"\222\004\n\014NodeSnapshot\022\017\n\007node_id\030\001 \001(\t" + + "\022\017\n\007boot_id\030\002 \001(\t\022\022\n\nsession_id\030\003 \001(\t\022\030\n" + + "\020software_version\030\004 \001(\t\022\016\n\006online\030\005 \001(\010\022" + + "\035\n\025registered_at_unix_ms\030\006 \001(\004\022!\n\031last_h" + + "eartbeat_at_unix_ms\030\007 \001(\004\022\032\n\022heartbeat_s" + + "equence\030\010 \001(\004\022\032\n\022observed_source_ip\030\t \001(" + + "\t\0229\n\rgrpc_endpoint\030\n \001(\0132\".cmvr.quic_gat" + + "eway.v1.GrpcEndpoint\022G\n\020local_interfaces" + + "\030\013 \003(\0132-.cmvr.quic_gateway.v1.NetworkInt" + + "erfaceAddress\022C\n\016device_manager\030\014 \001(\0132+." + + "cmvr.quic_gateway.v1.DeviceManagerSnapsh" + + "ot\022\033\n\023media_session_epoch\030\r \001(\004\0220\n\006track" + + "s\030\016 \003(\0132 .cmvr.quic_gateway.v1.MediaTrac" + + "k\022\020\n\010robot_id\030\017 \001(\t\"7\n\014GrpcEndpoint\022\014\n\004h" + + "ost\030\001 \001(\t\022\014\n\004port\030\002 \001(\r\022\013\n\003tls\030\003 \001(\010\"g\n\027" + + "NetworkInterfaceAddress\022\026\n\016interface_nam" + + "e\030\001 \001(\t\022\022\n\nip_address\030\002 \001(\t\022\016\n\006family\030\003 " + + "\001(\005\022\020\n\010loopback\030\004 \001(\010\"\273\001\n\025DeviceManagerS" + + "napshot\022\024\n\014manager_name\030\001 \001(\t\022\027\n\017manager" + + "_version\030\002 \001(\t\022\033\n\023manager_description\030\003 " + + "\001(\t\022\032\n\022sampled_at_unix_ms\030\004 \001(\004\022:\n\007devic" + + "es\030\005 \003(\0132).cmvr.quic_gateway.v1.ManagedD" + + "eviceStatus\"\316\001\n\023ManagedDeviceStatus\022\021\n\td" + + "evice_id\030\001 \001(\t\022\014\n\004kind\030\002 \001(\005\022\021\n\ttype_nam" + + "e\030\003 \001(\t\022\017\n\007enabled\030\004 \001(\010\022\025\n\rmanager_stat" + + "e\030\005 \001(\005\022\016\n\006health\030\006 \001(\005\022\021\n\thas_error\030\007 \001" + + "(\010\022\025\n\rerror_message\030\010 \001(\t\022!\n\031status_upda" + + "ted_at_unix_ms\030\t \001(\004\"\260\002\n\nMediaTrack\022\020\n\010t" + + "rack_id\030\001 \001(\r\022\014\n\004kind\030\002 \001(\005\022\021\n\tdevice_id" + + "\030\003 \001(\t\022\027\n\017source_track_id\030\004 \001(\t\022\r\n\005codec" + + "\030\005 \001(\t\022\026\n\016payload_format\030\006 \001(\t\022\030\n\020codec_" + + "generation\030\007 \001(\004\022\036\n\026codec_generation_tok" + + "en\030\010 \001(\r\022\r\n\005width\030\t \001(\r\022\016\n\006height\030\n \001(\r\022" + + "\031\n\021frames_per_second\030\013 \001(\r\022\023\n\013sample_rat" + + "e\030\014 \001(\r\022\020\n\010channels\030\r \001(\r\022\024\n\014codec_confi" + + "g\030\016 \001(\014\"\376\001\n\nMediaFrame\022\017\n\007node_id\030\001 \001(\t\022" + + "\022\n\nsession_id\030\002 \001(\t\022\025\n\rsession_epoch\030\003 \001" + + "(\004\022\020\n\010track_id\030\004 \001(\r\022\014\n\004kind\030\005 \001(\005\022\r\n\005co" + + "dec\030\006 \001(\t\022\026\n\016payload_format\030\007 \001(\t\022\027\n\017pac" + + "ket_sequence\030\010 \001(\004\022\026\n\016frame_sequence\030\t \001" + + "(\004\022\034\n\024capture_timestamp_us\030\n \001(\004\022\r\n\005flag" + + "s\030\013 \001(\r\022\017\n\007payload\030\014 \001(\014*\257\001\n\rNodeEventTy" + + "pe\022\037\n\033NODE_EVENT_TYPE_UNSPECIFIED\020\000\022\036\n\032N" + + "ODE_EVENT_TYPE_REGISTERED\020\001\022\035\n\031NODE_EVEN" + + "T_TYPE_HEARTBEAT\020\002\022\033\n\027NODE_EVENT_TYPE_OF" + + "FLINE\020\003\022!\n\035NODE_EVENT_TYPE_MEDIA_CHANGED" + + "\020\004B1\n\030com.cmvr.quic.gateway.v1B\023QuicGate" + + "wayProtocolP\001b\006proto3" + }; + descriptor = com.google.protobuf.Descriptors.FileDescriptor + .internalBuildGeneratedFileFrom(descriptorData, + new com.google.protobuf.Descriptors.FileDescriptor[] { + }); + internal_static_cmvr_quic_gateway_v1_NodeEvent_descriptor = + getDescriptor().getMessageTypes().get(0); + internal_static_cmvr_quic_gateway_v1_NodeEvent_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_cmvr_quic_gateway_v1_NodeEvent_descriptor, + new java.lang.String[] { "Type", "Node", "EventTimeUnixMs", }); + internal_static_cmvr_quic_gateway_v1_NodeSnapshot_descriptor = + getDescriptor().getMessageTypes().get(1); + internal_static_cmvr_quic_gateway_v1_NodeSnapshot_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_cmvr_quic_gateway_v1_NodeSnapshot_descriptor, + new java.lang.String[] { "NodeId", "BootId", "SessionId", "SoftwareVersion", "Online", "RegisteredAtUnixMs", "LastHeartbeatAtUnixMs", "HeartbeatSequence", "ObservedSourceIp", "GrpcEndpoint", "LocalInterfaces", "DeviceManager", "MediaSessionEpoch", "Tracks", "RobotId", }); + internal_static_cmvr_quic_gateway_v1_GrpcEndpoint_descriptor = + getDescriptor().getMessageTypes().get(2); + internal_static_cmvr_quic_gateway_v1_GrpcEndpoint_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_cmvr_quic_gateway_v1_GrpcEndpoint_descriptor, + new java.lang.String[] { "Host", "Port", "Tls", }); + internal_static_cmvr_quic_gateway_v1_NetworkInterfaceAddress_descriptor = + getDescriptor().getMessageTypes().get(3); + internal_static_cmvr_quic_gateway_v1_NetworkInterfaceAddress_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_cmvr_quic_gateway_v1_NetworkInterfaceAddress_descriptor, + new java.lang.String[] { "InterfaceName", "IpAddress", "Family", "Loopback", }); + internal_static_cmvr_quic_gateway_v1_DeviceManagerSnapshot_descriptor = + getDescriptor().getMessageTypes().get(4); + internal_static_cmvr_quic_gateway_v1_DeviceManagerSnapshot_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_cmvr_quic_gateway_v1_DeviceManagerSnapshot_descriptor, + new java.lang.String[] { "ManagerName", "ManagerVersion", "ManagerDescription", "SampledAtUnixMs", "Devices", }); + internal_static_cmvr_quic_gateway_v1_ManagedDeviceStatus_descriptor = + getDescriptor().getMessageTypes().get(5); + internal_static_cmvr_quic_gateway_v1_ManagedDeviceStatus_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_cmvr_quic_gateway_v1_ManagedDeviceStatus_descriptor, + new java.lang.String[] { "DeviceId", "Kind", "TypeName", "Enabled", "ManagerState", "Health", "HasError", "ErrorMessage", "StatusUpdatedAtUnixMs", }); + internal_static_cmvr_quic_gateway_v1_MediaTrack_descriptor = + getDescriptor().getMessageTypes().get(6); + internal_static_cmvr_quic_gateway_v1_MediaTrack_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_cmvr_quic_gateway_v1_MediaTrack_descriptor, + new java.lang.String[] { "TrackId", "Kind", "DeviceId", "SourceTrackId", "Codec", "PayloadFormat", "CodecGeneration", "CodecGenerationToken", "Width", "Height", "FramesPerSecond", "SampleRate", "Channels", "CodecConfig", }); + internal_static_cmvr_quic_gateway_v1_MediaFrame_descriptor = + getDescriptor().getMessageTypes().get(7); + internal_static_cmvr_quic_gateway_v1_MediaFrame_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_cmvr_quic_gateway_v1_MediaFrame_descriptor, + new java.lang.String[] { "NodeId", "SessionId", "SessionEpoch", "TrackId", "Kind", "Codec", "PayloadFormat", "PacketSequence", "FrameSequence", "CaptureTimestampUs", "Flags", "Payload", }); + } + + // @@protoc_insertion_point(outer_class_scope) +} diff --git a/cmvr-iot-test/src/main/java/com/cmvr/test/config/MediaAnalysisAsyncConfig.java b/cmvr-iot-test/src/main/java/com/cmvr/test/config/MediaAnalysisAsyncConfig.java new file mode 100644 index 0000000..18bdd7e --- /dev/null +++ b/cmvr-iot-test/src/main/java/com/cmvr/test/config/MediaAnalysisAsyncConfig.java @@ -0,0 +1,23 @@ +package com.cmvr.test.config; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; + +import java.util.concurrent.ThreadPoolExecutor; + +@Configuration +public class MediaAnalysisAsyncConfig { + + @Bean(name = "mediaAnalysisTaskExecutor") + public ThreadPoolTaskExecutor mediaAnalysisTaskExecutor() { + ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor(); + executor.setCorePoolSize(4); + executor.setMaxPoolSize(16); + executor.setQueueCapacity(200); + executor.setKeepAliveSeconds(300); + executor.setThreadNamePrefix("media-analysis-"); + executor.setRejectedExecutionHandler(new ThreadPoolExecutor.AbortPolicy()); + return executor; + } +} diff --git a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/control/FlowControlService.java b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/control/FlowControlService.java index 065ea1e..b1a051b 100644 --- a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/control/FlowControlService.java +++ b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/control/FlowControlService.java @@ -17,6 +17,7 @@ import com.cmvr.test.flow.context.TaskThreadRegistry; import com.cmvr.test.flow.runtime.engine.FlowItemExecutor; import com.cmvr.test.flow.runtime.message.TaskNodeExecuteContext; import com.cmvr.test.flow.runtime.message.TaskNodeExecuteMessage; +import com.cmvr.test.flow.runtime.operator.llm.AsyncMediaAnalysisCoordinator; import com.cmvr.test.service.ITeNodeInstService; import com.cmvr.test.service.ITeTaskInstService; import com.cmvr.test.model.domain.TeTaskInst; @@ -60,6 +61,9 @@ public class FlowControlService { private final EdgeCameraService edgeCameraService; private final ITeTaskInstService taskInstService; + @Resource + private AsyncMediaAnalysisCoordinator asyncMediaAnalysisCoordinator; + /** * 终止流程 */ @@ -75,6 +79,9 @@ public class FlowControlService { } // 先阻止节点继续执行,再清理设备与本地媒体会话,避免终止过程中重新登记录音/录像。 taskInstHolder.syncStatus(instId, TaskStatusEnum.STOPPED); + if (asyncMediaAnalysisCoordinator != null) { + asyncMediaAnalysisCoordinator.cancelAll(instId); + } taskThreadRegistry.interruptAll(instId); // 终止必须等设备和后端媒体会话完成清理后再返回,防止立即重跑命中旧录音/录像状态。 stopAllRobots(ctx); diff --git a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/dispatcher/FlowEndNodeHandler.java b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/dispatcher/FlowEndNodeHandler.java index 2fc0787..9cf3b81 100644 --- a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/dispatcher/FlowEndNodeHandler.java +++ b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/dispatcher/FlowEndNodeHandler.java @@ -6,6 +6,7 @@ import com.cmvr.test.flow.context.TaskContext; import com.cmvr.test.flow.context.TaskInstHolder; import com.cmvr.test.flow.runtime.message.TaskNodeExecuteMessage; import com.cmvr.test.flow.runtime.message.TaskNodeExecuteResult; +import com.cmvr.test.flow.runtime.operator.llm.AsyncMediaAnalysisCoordinator; import com.cmvr.test.service.ex.ExAeEvaluationService; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -21,6 +22,7 @@ public class FlowEndNodeHandler implements FlowNodeTypeHandler { private final TaskInstHolder taskInstHolder; private final ExAeEvaluationService exAeEvaluationService; + private final AsyncMediaAnalysisCoordinator asyncMediaAnalysisCoordinator; @Resource(name = "threadPoolTaskExecutor") private final ThreadPoolTaskExecutor executor; @@ -30,7 +32,18 @@ public class FlowEndNodeHandler implements FlowNodeTypeHandler { String instId = message.getInstId(); String itemId = message.getItemId(); String taskId = message.getTaskId(); + // Earlier items must not wait for media analysis; otherwise the next item + // cannot start. The final END node is the task-level completion barrier. + if (message.getPendingItemCount() == 0) { + TaskNodeExecuteResult asyncResult = asyncMediaAnalysisCoordinator.awaitAll(instId); + if (!asyncResult.isSuccess()) { + return asyncResult; + } + } TaskContext context = taskInstHolder.getContext(instId); + if (context == null) { + return null; + } RunModeEnum runMode = context.getRunMode(); // if (runMode.equals(RunModeEnum.NORMAL) || runMode.equals(RunModeEnum.TRIAL)) { // // 仅语音交互和触控交互进行评估 diff --git a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/engine/FlowItemExecutor.java b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/engine/FlowItemExecutor.java index 6332a42..9ce9225 100644 --- a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/engine/FlowItemExecutor.java +++ b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/engine/FlowItemExecutor.java @@ -20,6 +20,7 @@ import com.cmvr.test.flow.runtime.interceptor.FlowMsgPreInterceptor; import com.cmvr.test.flow.runtime.message.TaskNodeExecuteContext; import com.cmvr.test.flow.runtime.message.TaskNodeExecuteMessage; import com.cmvr.test.flow.runtime.message.TaskNodeExecuteResult; +import com.cmvr.test.flow.runtime.operator.llm.AsyncMediaAnalysisCoordinator; import com.cmvr.test.model.dto.TeQueryTaskDetailDTO; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -42,6 +43,7 @@ public class FlowItemExecutor { private final FlowExecutionChainBuilder chainBuilder; private final TaskThreadRegistry taskThreadRegistry; private final FlowRuntimeAssignmentResolver runtimeAssignmentResolver; + private final AsyncMediaAnalysisCoordinator asyncMediaAnalysisCoordinator; /** * 执行主流程(每个检测项调用一次) @@ -257,6 +259,12 @@ public class FlowItemExecutor { private void postHandleBranchNode(TaskContext taskContext, FlowGraph graph, FlowNodeWrapper node, String startNodeId, List startInputDefs, TaskNodeExecuteMessage rootMessage, Runnable onFinished, List iterations, String nodeId, JSONObject inputParams, TaskNodeExecuteMessage message) { + // Only wait for analysis results referenced by this branch and this item. + for (String referencedNodeId : FlowBranchEvaluator.referencedNodeIds(node.getBranchConditions())) { + asyncMediaAnalysisCoordinator.awaitNode( + message.getInstId(), message.getItemId(), message.getItemOrder(), + message.getItemOccurrence(), referencedNodeId, message.getIterations()); + } String matchedAnchorId = FlowBranchEvaluator.evaluate(taskContext, iterations,nodeId, node.getBranchConditions(), inputParams); FlowEdge matchedEdge = graph.getEdgeByFromAnchorId(matchedAnchorId); diff --git a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/engine/support/FlowBranchEvaluator.java b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/engine/support/FlowBranchEvaluator.java index ee49506..0e077fb 100644 --- a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/engine/support/FlowBranchEvaluator.java +++ b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/engine/support/FlowBranchEvaluator.java @@ -2,6 +2,7 @@ package com.cmvr.test.flow.runtime.engine.support; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ObjUtil; +import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson2.JSONObject; import com.cmvr.test.enums.BranchConditionOpEnum; import com.cmvr.test.flow.builder.FlowBranchConditionGroup; @@ -11,6 +12,7 @@ import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Objects; +import java.util.Set; /** * 分支节点条件匹配器 @@ -41,18 +43,7 @@ public class FlowBranchEvaluator { if (CollUtil.isEmpty(taskContext.getNodeOutputs())) { return; } - HashSet quoteIds = new HashSet<>(); - for (FlowBranchConditionGroup group : groups) { - List expressions = group.getExpressions(); - for (FlowBranchConditionGroup.ConditionExpression expression : expressions) { - if (expression.getNameType().equalsIgnoreCase("quote")) { - List nameQuotePath = expression.getNameQuotePath(); - if (CollUtil.isNotEmpty(nameQuotePath) && nameQuotePath.get(0).length() == 32) { - quoteIds.add(nameQuotePath.get(0)); - } - } - } - } + Set quoteIds = referencedNodeIds(groups); for (String quoteId : quoteIds) { JSONObject nodeOutput = taskContext.getNodeOutput(quoteId, iterations); if (ObjUtil.isNotEmpty(nodeOutput)) { @@ -62,6 +53,32 @@ public class FlowBranchEvaluator { } } + /** + * Returns upstream node IDs referenced by branch expressions. + */ + public static Set referencedNodeIds(List groups) { + Set quoteIds = new HashSet<>(); + if (CollUtil.isEmpty(groups)) { + return quoteIds; + } + for (FlowBranchConditionGroup group : groups) { + if (group == null || CollUtil.isEmpty(group.getExpressions())) { + continue; + } + for (FlowBranchConditionGroup.ConditionExpression expression : group.getExpressions()) { + addReferencedNodeId(quoteIds, expression.getNameType(), expression.getNameQuotePath()); + addReferencedNodeId(quoteIds, expression.getValueType(), expression.getQuotePath()); + } + } + return quoteIds; + } + + private static void addReferencedNodeId(Set quoteIds, String type, List path) { + if ("quote".equalsIgnoreCase(type) && CollUtil.isNotEmpty(path) && StrUtil.isNotBlank(path.get(0))) { + quoteIds.add(path.get(0)); + } + } + /** * 匹配某个条件组是否成立 */ diff --git a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/engine/support/FlowNodeParamPreparer.java b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/engine/support/FlowNodeParamPreparer.java index f5a3f87..dce98b0 100644 --- a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/engine/support/FlowNodeParamPreparer.java +++ b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/engine/support/FlowNodeParamPreparer.java @@ -13,6 +13,7 @@ import com.cmvr.test.flow.builder.FlowParamDef; import com.cmvr.test.flow.context.TaskContext; import com.cmvr.test.flow.context.TaskInstHolder; import com.cmvr.test.flow.runtime.message.TaskNodeExecuteMessage; +import com.cmvr.test.flow.runtime.operator.llm.AsyncMediaAnalysisCoordinator; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Component; @@ -23,6 +24,7 @@ import java.util.List; public class FlowNodeParamPreparer { private final TaskInstHolder taskInstHolder; + private final AsyncMediaAnalysisCoordinator asyncMediaAnalysisCoordinator; public JSONObject prepare(FlowGraph graph, FlowNodeWrapper node, @@ -86,6 +88,9 @@ public class FlowNodeParamPreparer { } else if ("output".equalsIgnoreCase(param.getQuoteType())) { // 2.2 引用上游的 output 参数(运行时实际执行结果) // 用 nodeId + iterations 作为 key,避免覆盖 + asyncMediaAnalysisCoordinator.awaitNode( + rootMessage.getInstId(), rootMessage.getItemId(), rootMessage.getItemOrder(), + rootMessage.getItemOccurrence(), refNodeId, rootMessage.getIterations()); source = ctx.getNodeOutput(refNodeId, rootMessage.getIterations()); } else { throw new GlobalException("参数应用类型出错!quoteType:" + param.getQuoteType()); diff --git a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/interceptor/FlowAfterInterceptor.java b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/interceptor/FlowAfterInterceptor.java index 9579fdb..83618a0 100644 --- a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/interceptor/FlowAfterInterceptor.java +++ b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/interceptor/FlowAfterInterceptor.java @@ -28,6 +28,9 @@ public class FlowAfterInterceptor extends AbstractFlowMsgPreInterceptor{ @Override public TaskNodeExecuteResult doIntercept(TaskNodeExecuteMessage message, Function next) { TaskNodeExecuteResult result = next.apply(message); + if (result != null && result.isDeferred()) { + return result; + } TaskContext taskContext = taskInstHolder.getContext(message.getInstId()); if (result == null && (taskContext == null || taskContext.isPaused() || taskContext.isStopped())) { return null; diff --git a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/interceptor/FlowExceptionInterceptor.java b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/interceptor/FlowExceptionInterceptor.java index 904e10b..11b8b19 100644 --- a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/interceptor/FlowExceptionInterceptor.java +++ b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/interceptor/FlowExceptionInterceptor.java @@ -1,9 +1,7 @@ package com.cmvr.test.flow.runtime.interceptor; import cn.hutool.core.exceptions.ExceptionUtil; -import cn.hutool.core.util.ObjUtil; import cn.hutool.core.util.StrUtil; -import com.cmvr.common.exception.GlobalException; import com.cmvr.test.flow.context.TaskContext; import com.cmvr.test.flow.context.TaskInstHolder; import com.cmvr.test.flow.runtime.event.FlowExecutionEventPublisher; @@ -47,18 +45,11 @@ public class FlowExceptionInterceptor extends AbstractFlowMsgPreInterceptor { log.error("节点执行异常:instId={}, nodeId={}, action={}", message.getInstId(), message.getNodeId(), message.getAction(), e); - taskInstHolder.markFailed( - message.getInstId(), - message.getTaskId(), - message.getItemId(), - message.getNodeId(), - message.getNodeType(), - message.getAction().getOperate(), message.getAction().getOperate(), - ObjUtil.isEmpty(message.getInputParams()) ? null : message.getInputParams().toJSONString(), - "执行异常:" + StrUtil.sub(ExceptionUtil.getMessage(e), 0, 480), - message.getIterations() - ); - throw new GlobalException("任务执行失败", e); + String detail = StrUtil.blankToDefault(ExceptionUtil.getMessage(e), e.toString()); + // Convert thrown device exceptions into a normal failed result. The outer + // FlowAfterInterceptor can then publish NODE_FAILED with node identity and + // the executor will persist the task failure exactly once. + return TaskNodeExecuteResult.failure("执行异常:" + StrUtil.sub(detail, 0, 480)); } } } diff --git a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/interceptor/FlowLoggingInterceptor.java b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/interceptor/FlowLoggingInterceptor.java index f927a12..fa13acc 100644 --- a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/interceptor/FlowLoggingInterceptor.java +++ b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/interceptor/FlowLoggingInterceptor.java @@ -40,6 +40,10 @@ public class FlowLoggingInterceptor extends AbstractFlowMsgPreInterceptor { TaskNodeExecuteResult result = next.apply(message); + if (result != null && result.isDeferred()) { + return result; + } + // 节点执行返回拦截 判断此时是否被终止或暂停 TaskContext context = taskInstHolder.getContext(message.getInstId()); if (context == null || context.isPaused()) { diff --git a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/interceptor/FlowOutputStoreInterceptor.java b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/interceptor/FlowOutputStoreInterceptor.java index 3acd8d2..5f799c7 100644 --- a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/interceptor/FlowOutputStoreInterceptor.java +++ b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/interceptor/FlowOutputStoreInterceptor.java @@ -33,7 +33,7 @@ public class FlowOutputStoreInterceptor extends AbstractFlowMsgPreInterceptor { TaskNodeExecuteResult result = next.apply(message); - if (result != null && result.isSuccess()) { + if (result != null && result.isSuccess() && !result.isDeferred()) { TaskContext ctx = taskInstHolder.getContext(message.getInstId()); if (ctx != null) { JSONObject outputParams = result.getOutputParams(); diff --git a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/message/TaskNodeExecuteResult.java b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/message/TaskNodeExecuteResult.java index 1c1fd92..e80e81d 100644 --- a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/message/TaskNodeExecuteResult.java +++ b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/message/TaskNodeExecuteResult.java @@ -18,6 +18,9 @@ public class TaskNodeExecuteResult { /** 错误信息(如果执行失败) */ private String errorMsg; + /** 后台任务已经提交,节点的最终完成状态将由异步协调器写入。 */ + private boolean deferred; + public static TaskNodeExecuteResult success(JSONObject output) { TaskNodeExecuteResult result = new TaskNodeExecuteResult(); result.setSuccess(true); @@ -38,4 +41,10 @@ public class TaskNodeExecuteResult { result.setErrorMsg(msg); return result; } + + public static TaskNodeExecuteResult deferred(JSONObject output) { + TaskNodeExecuteResult result = success(output); + result.setDeferred(true); + return result; + } } diff --git a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/operator/edge/AgvNavigationWaiter.java b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/operator/edge/AgvNavigationWaiter.java index 0cf8bff..3c47ffa 100644 --- a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/operator/edge/AgvNavigationWaiter.java +++ b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/operator/edge/AgvNavigationWaiter.java @@ -30,6 +30,17 @@ public final class AgvNavigationWaiter { String stationId, long waitTimeoutMs, long pollIntervalMs) { + return navigateToStationAndWait(edgeAgvService, common, stationId, waitTimeoutMs, + pollIntervalMs, null); + } + + public static AgvUtils.AgvNavigationStatus navigateToStationAndWait( + EdgeAgvService edgeAgvService, + EdgeCommonVO common, + String stationId, + long waitTimeoutMs, + long pollIntervalMs, + AgvUtils.AgvMotionOptions options) { if (waitTimeoutMs <= 0) { throw new GlobalException("导航等待超时时间必须大于0"); } @@ -37,7 +48,7 @@ public final class AgvNavigationWaiter { throw new GlobalException("导航状态轮询间隔必须大于0且不能超过等待超时时间"); } - edgeAgvService.navigateToStation(common, stationId); + edgeAgvService.navigateToStation(common, stationId, options); long deadlineNanos = System.nanoTime() + TimeUnit.MILLISECONDS.toNanos(waitTimeoutMs); AgvUtils.AgvNavigationStatus lastStatus = null; diff --git a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/operator/edge/EdgeAgvOperateService.java b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/operator/edge/EdgeAgvOperateService.java index 949b431..c697761 100644 --- a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/operator/edge/EdgeAgvOperateService.java +++ b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/operator/edge/EdgeAgvOperateService.java @@ -71,7 +71,7 @@ public class EdgeAgvOperateService implements EdgeOperateService { edgeCommonVO.setDeviceId(deviceId); // 直接调用边缘端AGV服务执行导航 - edgeAgvService.navigateToPose(edgeCommonVO, pose); + edgeAgvService.navigateToPose(edgeCommonVO, pose, navigationOptions(inputParams)); log.info("AGV移动任务下发成功"); @@ -90,7 +90,8 @@ public class EdgeAgvOperateService implements EdgeOperateService { long waitTimeoutMs = inputParams.getLongValue("waitTimeoutMs", AgvNavigationWaiter.DEFAULT_WAIT_TIMEOUT_MS); long pollIntervalMs = inputParams.getLongValue("pollIntervalMs", AgvNavigationWaiter.DEFAULT_POLL_INTERVAL_MS); AgvUtils.AgvNavigationStatus status = AgvNavigationWaiter.navigateToStationAndWait( - edgeAgvService, edgeCommonVO, stationId.trim(), waitTimeoutMs, pollIntervalMs); + edgeAgvService, edgeCommonVO, stationId.trim(), waitTimeoutMs, pollIntervalMs, + navigationOptions(inputParams)); return TaskNodeExecuteResult.success(new JSONObject() .fluentPut("state", status.getState()) .fluentPut("progress", status.getProgress()) @@ -104,4 +105,16 @@ public class EdgeAgvOperateService implements EdgeOperateService { return TaskNodeExecuteResult.success(); } + + private AgvUtils.AgvMotionOptions navigationOptions(JSONObject inputParams) { + int blockedTimeoutMs = inputParams.getIntValue( + "blockedTimeoutMs", EdgeAgvService.DEFAULT_BLOCKED_TIMEOUT_MS); + if (blockedTimeoutMs <= 0) { + blockedTimeoutMs = EdgeAgvService.DEFAULT_BLOCKED_TIMEOUT_MS; + } + return AgvUtils.AgvMotionOptions.newBuilder() + .setAsynchronous(false) + .setBlockedTimeoutMs(blockedTimeoutMs) + .build(); + } } diff --git a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/operator/llm/AsyncMediaAnalysisCoordinator.java b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/operator/llm/AsyncMediaAnalysisCoordinator.java new file mode 100644 index 0000000..cfc7917 --- /dev/null +++ b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/operator/llm/AsyncMediaAnalysisCoordinator.java @@ -0,0 +1,227 @@ +package com.cmvr.test.flow.runtime.operator.llm; + +import cn.hutool.core.exceptions.ExceptionUtil; +import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson2.JSONObject; +import com.cmvr.common.exception.GlobalException; +import com.cmvr.test.flow.builder.TaskKeyBuilder; +import com.cmvr.test.flow.context.TaskContext; +import com.cmvr.test.flow.context.TaskInstHolder; +import com.cmvr.test.flow.runtime.event.FlowExecutionEvent; +import com.cmvr.test.flow.runtime.event.FlowExecutionEventPublisher; +import com.cmvr.test.flow.runtime.message.TaskNodeExecuteMessage; +import com.cmvr.test.flow.runtime.message.TaskNodeExecuteResult; +import com.cmvr.test.service.ITeNodeInstService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Qualifier; +import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.concurrent.CompletableFuture; +import java.util.concurrent.CancellationException; +import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.ExecutionException; +import java.util.concurrent.atomic.AtomicReference; +import java.util.function.Supplier; + +@Slf4j +@Service +public class AsyncMediaAnalysisCoordinator { + + private final TaskInstHolder taskInstHolder; + private final ITeNodeInstService nodeInstService; + private final FlowExecutionEventPublisher eventPublisher; + private final ThreadPoolTaskExecutor executor; + private final Map groups = new ConcurrentHashMap<>(); + + public AsyncMediaAnalysisCoordinator( + TaskInstHolder taskInstHolder, + ITeNodeInstService nodeInstService, + FlowExecutionEventPublisher eventPublisher, + @Qualifier("mediaAnalysisTaskExecutor") ThreadPoolTaskExecutor executor) { + this.taskInstHolder = taskInstHolder; + this.nodeInstService = nodeInstService; + this.eventPublisher = eventPublisher; + this.executor = executor; + } + + public TaskNodeExecuteResult submit(TaskNodeExecuteMessage message, String requestId, + Supplier analysis) { + JSONObject accepted = new JSONObject() + .fluentPut("asynchronous", true) + .fluentPut("analysisStatus", "SUBMITTED") + .fluentPut("requestId", requestId); + TaskContext context = taskInstHolder.getContext(message.getInstId()); + if (context == null) { + executor.execute(() -> runDetached(message, analysis)); + return TaskNodeExecuteResult.success(accepted); + } + + String moduleCode = context.getModuleCode(); + String nodeKey = nodeKey(message.getItemId(), message.getItemOrder(), + message.getItemOccurrence(), message.getNodeId(), safeIterations(message)); + ExecutionGroup group = groups.computeIfAbsent(message.getInstId(), ignored -> new ExecutionGroup()); + CompletableFuture analysisFuture = CompletableFuture.supplyAsync(analysis, executor); + CompletableFuture completion = analysisFuture.handle((result, error) -> { + completeNode(message, moduleCode, result, error, group, nodeKey); + return null; + }); + group.jobs.put(nodeKey, completion); + log.info("异步媒体分析已提交:instId={}, nodeId={}, requestId={}", + message.getInstId(), message.getNodeId(), requestId); + return TaskNodeExecuteResult.deferred(accepted); + } + + public void awaitNode(String instId, String itemId, Integer itemOrder, Integer itemOccurrence, + String nodeId, List iterations) { + ExecutionGroup group = groups.get(instId); + if (group == null) return; + String key = nodeKey(itemId, itemOrder, itemOccurrence, nodeId, safeIterations(iterations)); + CompletableFuture job = group.jobs.get(key); + if (job != null) await(job); + String error = group.nodeFailures.get(key); + if (error != null) throw new GlobalException(error); + } + + public TaskNodeExecuteResult awaitAll(String instId) { + ExecutionGroup group = groups.get(instId); + if (group == null) return TaskNodeExecuteResult.success(); + boolean completed = false; + try { + while (true) { + CompletableFuture[] snapshot = group.jobs.values().toArray(new CompletableFuture[0]); + await(CompletableFuture.allOf(snapshot)); + if (group.jobs.values().stream().allMatch(CompletableFuture::isDone)) break; + } + completed = true; + String error = group.failure.get(); + return error == null ? TaskNodeExecuteResult.success() : TaskNodeExecuteResult.failure(error); + } finally { + if (completed) groups.remove(instId, group); + } + } + + public void cancelAll(String instId) { + ExecutionGroup group = groups.remove(instId); + if (group == null) return; + group.cancelled = true; + group.jobs.values().forEach(job -> job.cancel(true)); + log.info("已取消任务的异步媒体分析登记:instId={}, count={}", instId, group.jobs.size()); + } + + private void completeNode(TaskNodeExecuteMessage message, String moduleCode, + TaskNodeExecuteResult result, Throwable error, ExecutionGroup group, + String nodeKey) { + try { + TaskContext currentContext = taskInstHolder.getContext(message.getInstId()); + if (group.cancelled || currentContext == null || currentContext.isStopped()) { + log.info("任务已终止,忽略异步媒体分析结果:instId={}, nodeId={}", + message.getInstId(), message.getNodeId()); + return; + } + Throwable cause = error == null ? null : ExceptionUtil.getRootCause(error); + if (cause == null && (result == null || !result.isSuccess())) { + cause = new GlobalException(result == null ? "异步分析结果为空" : result.getErrorMsg()); + } + if (cause != null) { + String detail = "异步分析失败:" + StrUtil.sub( + StrUtil.blankToDefault(ExceptionUtil.getMessage(cause), cause.toString()), 0, 480); + group.failure.compareAndSet(null, detail); + group.nodeFailures.put(nodeKey, detail); + nodeInstService.logFailed(message.getInstId(), message.getTaskId(), message.getItemId(), + message.getNodeId(), message.getNodeType(), + message.getAction() == null ? null : message.getAction().getOperate(), + message.getAction() == null ? null : message.getAction().getAction(), + message.getInputParams() == null ? null : message.getInputParams().toJSONString(), + detail, safeIterations(message)); + publish(message, moduleCode, FlowExecutionEvent.EventType.NODE_FAILED, null, detail); + return; + } + + JSONObject output = result.getOutputParams() == null ? new JSONObject() : result.getOutputParams(); + taskInstHolder.setNodeOutParams(message.getInstId(), message.getNodeId(), safeIterations(message), output); + taskInstHolder.markNodeSuccess(message.getInstId(), message.getItemId(), message.getNodeId(), + message.getPendingItemCount(), message.getNodeType(), output.toJSONString(), + "异步分析执行成功", safeIterations(message)); + publish(message, moduleCode, FlowExecutionEvent.EventType.NODE_COMPLETED, output, null); + } catch (Throwable finalizeError) { + String detail = "异步分析结果处理失败:" + StrUtil.sub( + StrUtil.blankToDefault(ExceptionUtil.getMessage(finalizeError), finalizeError.toString()), 0, 480); + group.failure.compareAndSet(null, detail); + group.nodeFailures.put(nodeKey, detail); + log.error("异步媒体分析结果处理异常:instId={}, nodeId={}", + message.getInstId(), message.getNodeId(), finalizeError); + } + } + + private void publish(TaskNodeExecuteMessage message, String moduleCode, + FlowExecutionEvent.EventType eventType, JSONObject output, String error) { + int nodeCount = message.getGraph() == null ? 0 : message.getGraph().allNodeIds().size(); + eventPublisher.publishEvent(FlowExecutionEvent.builder() + .eventType(eventType) + .nodeName(message.getNodeName()) + .instId(message.getInstId()) + .taskId(message.getTaskId()) + .moduleCode(moduleCode) + .itemId(message.getItemId()) + .itemOrder(message.getItemOrder()) + .itemOccurrence(message.getItemOccurrence()) + .nodeId(message.getNodeId()) + .nodeCount(nodeCount) + .nodeType(message.getNodeType()) + .action(message.getAction()) + .outputParams(output) + .robotId(message.getRobotId()) + .iterations(new ArrayList<>(safeIterations(message))) + .errorMessage(error) + .build()); + } + + private void runDetached(TaskNodeExecuteMessage message, Supplier analysis) { + try { + analysis.get(); + } catch (Throwable error) { + log.error("单节点异步媒体分析失败:nodeId={}", message.getNodeId(), error); + } + } + + private List safeIterations(TaskNodeExecuteMessage message) { + return safeIterations(message.getIterations()); + } + + private List safeIterations(List iterations) { + return iterations == null ? List.of() : iterations; + } + + private String nodeKey(String itemId, Integer itemOrder, Integer itemOccurrence, + String nodeId, List iterations) { + return StrUtil.blankToDefault(itemId, "item") + ":" + + (itemOrder == null ? 0 : itemOrder) + ":" + + (itemOccurrence == null ? 0 : itemOccurrence) + ":" + + TaskKeyBuilder.buildKey(nodeId, iterations); + } + + private void await(CompletableFuture future) { + try { + future.get(); + } catch (InterruptedException error) { + Thread.currentThread().interrupt(); + throw new GlobalException("等待异步分析被中断", error); + } catch (ExecutionException error) { + Throwable cause = ExceptionUtil.getRootCause(error); + throw new GlobalException("异步分析执行失败:" + ExceptionUtil.getMessage(cause), cause); + } catch (CancellationException error) { + throw new GlobalException("异步分析已取消", error); + } + } + + private static final class ExecutionGroup { + private final Map> jobs = new ConcurrentHashMap<>(); + private final Map nodeFailures = new ConcurrentHashMap<>(); + private final AtomicReference failure = new AtomicReference<>(); + private volatile boolean cancelled; + } +} diff --git a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/operator/llm/LLMMediaAnalysisOperateService.java b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/operator/llm/LLMMediaAnalysisOperateService.java index dec41d0..241011b 100644 --- a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/operator/llm/LLMMediaAnalysisOperateService.java +++ b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/operator/llm/LLMMediaAnalysisOperateService.java @@ -7,8 +7,8 @@ import com.cmvr.test.enums.ActionEnum; import com.cmvr.test.flow.runtime.message.TaskNodeExecuteMessage; import com.cmvr.test.flow.runtime.message.TaskNodeExecuteResult; import com.cmvr.test.flow.runtime.operator.FlowMediaParamResolver; -import lombok.RequiredArgsConstructor; import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; @@ -16,11 +16,22 @@ import java.util.Set; import java.util.UUID; @Service -@RequiredArgsConstructor public class LLMMediaAnalysisOperateService implements LLMOperateService { private static final Set VIDEO_ANALYSIS_MODES = Set.of("AUTO", "FAST", "ACCURATE"); private final MediaAnalysisClient mediaAnalysisClient; + private final AsyncMediaAnalysisCoordinator asyncCoordinator; + + @Autowired + public LLMMediaAnalysisOperateService(MediaAnalysisClient mediaAnalysisClient, + AsyncMediaAnalysisCoordinator asyncCoordinator) { + this.mediaAnalysisClient = mediaAnalysisClient; + this.asyncCoordinator = asyncCoordinator; + } + + LLMMediaAnalysisOperateService(MediaAnalysisClient mediaAnalysisClient) { + this(mediaAnalysisClient, null); + } @Override public boolean supports(ActionEnum action) { @@ -91,6 +102,12 @@ public class LLMMediaAnalysisOperateService implements LLMOperateService { } options.put("prompt", prompt); options.put("analysisMode", analysisMode); + String analysisMethod = StringUtils.defaultIfBlank( + input.getString("analysisMethod"), "AUTO").trim().toUpperCase(); + if (!Set.of("AUTO", "VISION_MODEL", "TEXT_LOCATE", "REFERENCE_MATCH").contains(analysisMethod)) { + throw new GlobalException("图片分析方式无效: {}", analysisMethod); + } + options.put("analysisMethod", analysisMethod); String referenceImageUrl = FlowMediaParamResolver.lastUrl(input, "referenceImageUrl"); if (StringUtils.isNotBlank(referenceImageUrl)) { options.put("referenceImageUrl", referenceImageUrl); @@ -102,7 +119,8 @@ public class LLMMediaAnalysisOperateService implements LLMOperateService { } JSONObject request = new JSONObject(); - request.put("requestId", buildRequestId(message)); + String requestId = buildRequestId(message); + request.put("requestId", requestId); request.put("analysisType", audio ? "AUDIO_CLASSIFICATION" : (image ? "IMAGE_ANALYSIS" : "VIDEO_ANALYSIS")); request.put("profileCode", profileCode); @@ -113,6 +131,19 @@ public class LLMMediaAnalysisOperateService implements LLMOperateService { request.put("options", options); request.put("context", context); + String finalExpectedLabel = expectedLabel; + String finalExpectedLabelName = expectedLabelName; + if (Boolean.TRUE.equals(input.getBoolean("asynchronous")) && asyncCoordinator != null) { + return asyncCoordinator.submit(message, requestId, + () -> analyze(request, audio, image, mediaUrl, mediaUrls, + finalExpectedLabel, finalExpectedLabelName)); + } + return analyze(request, audio, image, mediaUrl, mediaUrls, expectedLabel, expectedLabelName); + } + + private TaskNodeExecuteResult analyze(JSONObject request, boolean audio, boolean image, + String mediaUrl, List mediaUrls, + String expectedLabel, String expectedLabelName) { JSONObject response = mediaAnalysisClient.analyze(request); JSONObject output = response.getJSONObject("result"); if (output == null) { @@ -184,12 +215,35 @@ public class LLMMediaAnalysisOperateService implements LLMOperateService { Integer maxWidth = source.getInteger("maxWidth"); Integer maxImages = source.getInteger("maxImages"); Integer maxOutputTokens = source.getInteger("maxOutputTokens"); + Double matchThreshold = source.getDouble("matchThreshold"); + Double locateConfidenceThreshold = source.getDouble("locateConfidenceThreshold"); + String matchSelector = StringUtils.trimToNull(source.getString("matchSelector")); + Integer matchIndex = source.getInteger("matchIndex"); + String matchSort = StringUtils.trimToNull(source.getString("matchSort")); validateRange("图片宽度", maxWidth, 640, 1600); validateRange("图片数量", maxImages, 1, 12); validateRange("最大输出长度", maxOutputTokens, 32, 4096); + validateRange("最低匹配分数", matchThreshold, 0.2D, 0.95D); + validateRange("最低定位置信度", locateConfidenceThreshold, 0.2D, 0.95D); + validateRange("匹配序号", matchIndex, 1, 20); + if (matchSelector != null && !Set.of( + "BEST", "INDEX", "TOP_LEFT", "TOP_RIGHT", "BOTTOM_LEFT", "BOTTOM_RIGHT" + ).contains(matchSelector.toUpperCase())) { + throw new GlobalException("匹配结果选择方式无效: {}", matchSelector); + } + if (matchSort != null && !Set.of("ROW_MAJOR", "COLUMN_MAJOR").contains(matchSort.toUpperCase())) { + throw new GlobalException("匹配排序方式无效: {}", matchSort); + } if (maxWidth != null) tuning.put("maxWidth", maxWidth); if (maxImages != null) tuning.put("maxImages", maxImages); if (maxOutputTokens != null) tuning.put("maxOutputTokens", maxOutputTokens); + if (matchThreshold != null) tuning.put("matchThreshold", matchThreshold); + if (locateConfidenceThreshold != null) { + tuning.put("locateConfidenceThreshold", locateConfidenceThreshold); + } + if (matchSelector != null) tuning.put("matchSelector", matchSelector.toUpperCase()); + if (matchIndex != null) tuning.put("matchIndex", matchIndex); + if (matchSort != null) tuning.put("matchSort", matchSort.toUpperCase()); return tuning; } diff --git a/cmvr-iot-test/src/main/java/com/cmvr/test/service/FlowActionExecutorService.java b/cmvr-iot-test/src/main/java/com/cmvr/test/service/FlowActionExecutorService.java index b9308a2..69cbe1e 100644 --- a/cmvr-iot-test/src/main/java/com/cmvr/test/service/FlowActionExecutorService.java +++ b/cmvr-iot-test/src/main/java/com/cmvr/test/service/FlowActionExecutorService.java @@ -258,7 +258,7 @@ public class FlowActionExecutorService { .build(); // 直接调用边缘端AGV服务 - edgeAgvService.navigateToPose(edgeCommonVO, pose); + edgeAgvService.navigateToPose(edgeCommonVO, pose, buildAgvNavigationOptions(payload)); log.info("AGV移动任务下发成功"); @@ -274,7 +274,8 @@ public class FlowActionExecutorService { long waitTimeoutMs = payload.getLongValue("waitTimeoutMs", AgvNavigationWaiter.DEFAULT_WAIT_TIMEOUT_MS); long pollIntervalMs = payload.getLongValue("pollIntervalMs", AgvNavigationWaiter.DEFAULT_POLL_INTERVAL_MS); AgvNavigationWaiter.navigateToStationAndWait( - edgeAgvService, edgeCommonVO, stationId.trim(), waitTimeoutMs, pollIntervalMs); + edgeAgvService, edgeCommonVO, stationId.trim(), waitTimeoutMs, pollIntervalMs, + buildAgvNavigationOptions(payload)); log.info("AGV移动到指定站点完成,设备ID: {},站点ID: {}", deviceId, stationId); return "AGV移动到指定站点完成"; } @@ -284,6 +285,18 @@ public class FlowActionExecutorService { } } + private AgvUtils.AgvMotionOptions buildAgvNavigationOptions(JSONObject payload) { + int blockedTimeoutMs = payload.getIntValue( + "blockedTimeoutMs", EdgeAgvService.DEFAULT_BLOCKED_TIMEOUT_MS); + if (blockedTimeoutMs <= 0) { + blockedTimeoutMs = EdgeAgvService.DEFAULT_BLOCKED_TIMEOUT_MS; + } + return AgvUtils.AgvMotionOptions.newBuilder() + .setAsynchronous(false) + .setBlockedTimeoutMs(blockedTimeoutMs) + .build(); + } + private String executeInspectionAlertAction(ActionEnum action, JSONObject payload) { String robotId = payload.getString("robotId"); java.util.List types = resolveInspectionAlertEventTypes(payload); diff --git a/cmvr-iot-test/src/test/java/com/cmvr/test/flow/runtime/dispatcher/FlowEndNodeHandlerTest.java b/cmvr-iot-test/src/test/java/com/cmvr/test/flow/runtime/dispatcher/FlowEndNodeHandlerTest.java new file mode 100644 index 0000000..dadffcf --- /dev/null +++ b/cmvr-iot-test/src/test/java/com/cmvr/test/flow/runtime/dispatcher/FlowEndNodeHandlerTest.java @@ -0,0 +1,78 @@ +package com.cmvr.test.flow.runtime.dispatcher; + +import com.cmvr.test.flow.context.TaskContext; +import com.cmvr.test.flow.context.TaskContextManager; +import com.cmvr.test.flow.context.TaskInstHolder; +import com.cmvr.test.flow.runtime.event.FlowExecutionEventPublisher; +import com.cmvr.test.flow.runtime.message.TaskNodeExecuteMessage; +import com.cmvr.test.flow.runtime.message.TaskNodeExecuteResult; +import com.cmvr.test.flow.runtime.operator.llm.AsyncMediaAnalysisCoordinator; +import com.cmvr.test.service.ITeNodeInstService; +import org.junit.Test; +import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; + +import java.lang.reflect.Proxy; +import java.util.List; +import java.util.concurrent.atomic.AtomicInteger; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; + +public class FlowEndNodeHandlerTest { + + @Test + public void waitsForAsyncAnalysisOnlyAtLastItem() { + AtomicInteger awaitAllCalls = new AtomicInteger(); + AsyncMediaAnalysisCoordinator coordinator = new AsyncMediaAnalysisCoordinator(null, null, null, null) { + @Override + public TaskNodeExecuteResult awaitAll(String instId) { + awaitAllCalls.incrementAndGet(); + return TaskNodeExecuteResult.success(); + } + }; + + ITeNodeInstService nodeService = (ITeNodeInstService) Proxy.newProxyInstance( + ITeNodeInstService.class.getClassLoader(), new Class[]{ITeNodeInstService.class}, + (proxy, method, args) -> defaultValue(method.getReturnType())); + TaskContextManager contextManager = new TaskContextManager(); + TaskContext context = new TaskContext(); + context.setInstId("inst-1"); + contextManager.register(context); + TaskInstHolder holder = new TaskInstHolder(nodeService, contextManager, null, + new FlowExecutionEventPublisher(List.of())); + + ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor(); + executor.setCorePoolSize(1); + executor.setMaxPoolSize(1); + executor.initialize(); + try { + FlowEndNodeHandler handler = new FlowEndNodeHandler(holder, null, coordinator, executor); + + TaskNodeExecuteMessage earlierItem = message(1); + assertTrue(handler.handle(earlierItem).isSuccess()); + assertEquals(0, awaitAllCalls.get()); + + TaskNodeExecuteMessage lastItem = message(0); + assertTrue(handler.handle(lastItem).isSuccess()); + assertEquals(1, awaitAllCalls.get()); + } finally { + executor.shutdown(); + } + } + + private TaskNodeExecuteMessage message(int pendingItemCount) { + TaskNodeExecuteMessage message = new TaskNodeExecuteMessage(); + message.setInstId("inst-1"); + message.setTaskId("task-1"); + message.setItemId("item-1"); + message.setPendingItemCount(pendingItemCount); + return message; + } + + private static Object defaultValue(Class type) { + if (!type.isPrimitive()) return null; + if (type == boolean.class) return false; + if (type == char.class) return '\0'; + return 0; + } +} diff --git a/cmvr-iot-test/src/test/java/com/cmvr/test/flow/runtime/engine/support/FlowBranchEvaluatorTest.java b/cmvr-iot-test/src/test/java/com/cmvr/test/flow/runtime/engine/support/FlowBranchEvaluatorTest.java new file mode 100644 index 0000000..de838e7 --- /dev/null +++ b/cmvr-iot-test/src/test/java/com/cmvr/test/flow/runtime/engine/support/FlowBranchEvaluatorTest.java @@ -0,0 +1,28 @@ +package com.cmvr.test.flow.runtime.engine.support; + +import com.cmvr.test.flow.builder.FlowBranchConditionGroup; +import org.junit.Test; + +import java.util.List; +import java.util.Set; + +import static org.junit.Assert.assertEquals; + +public class FlowBranchEvaluatorTest { + + @Test + public void extractsBothSidesOfQuotedBranchExpressions() { + FlowBranchConditionGroup.ConditionExpression expression = + new FlowBranchConditionGroup.ConditionExpression(); + expression.setNameType("quote"); + expression.setNameQuotePath(List.of("video-node", "output", "passed")); + expression.setValueType("quote"); + expression.setQuotePath(List.of("audio-node", "output", "passed")); + + FlowBranchConditionGroup group = new FlowBranchConditionGroup(); + group.setExpressions(List.of(expression)); + + assertEquals(Set.of("video-node", "audio-node"), + FlowBranchEvaluator.referencedNodeIds(List.of(group))); + } +} diff --git a/cmvr-iot-test/src/test/java/com/cmvr/test/flow/runtime/interceptor/FlowExceptionInterceptorTest.java b/cmvr-iot-test/src/test/java/com/cmvr/test/flow/runtime/interceptor/FlowExceptionInterceptorTest.java new file mode 100644 index 0000000..4a38869 --- /dev/null +++ b/cmvr-iot-test/src/test/java/com/cmvr/test/flow/runtime/interceptor/FlowExceptionInterceptorTest.java @@ -0,0 +1,39 @@ +package com.cmvr.test.flow.runtime.interceptor; + +import com.cmvr.test.flow.context.TaskContext; +import com.cmvr.test.flow.context.TaskContextManager; +import com.cmvr.test.flow.context.TaskInstHolder; +import com.cmvr.test.flow.runtime.event.FlowExecutionEventPublisher; +import com.cmvr.test.flow.runtime.message.TaskNodeExecuteMessage; +import com.cmvr.test.flow.runtime.message.TaskNodeExecuteResult; +import org.junit.Test; + +import java.util.Collections; + +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; + +public class FlowExceptionInterceptorTest { + + @Test + public void convertsDeviceExceptionToFailedResultWithOriginalReason() { + TaskContextManager contextManager = new TaskContextManager(); + TaskContext context = new TaskContext(); + context.setInstId("inst-1"); + contextManager.register(context); + + FlowExecutionEventPublisher publisher = new FlowExecutionEventPublisher(Collections.emptyList()); + TaskInstHolder holder = new TaskInstHolder(null, contextManager, null, publisher); + FlowExceptionInterceptor interceptor = new FlowExceptionInterceptor(publisher, holder); + TaskNodeExecuteMessage message = new TaskNodeExecuteMessage(); + message.setInstId("inst-1"); + message.setNodeId("arm-node"); + + TaskNodeExecuteResult result = interceptor.doIntercept(message, ignored -> { + throw new IllegalStateException("机械臂通信失败: setPayload ret=13"); + }); + + assertFalse(result.isSuccess()); + assertTrue(result.getErrorMsg().contains("机械臂通信失败: setPayload ret=13")); + } +} diff --git a/cmvr-iot-test/src/test/java/com/cmvr/test/flow/runtime/operator/llm/AsyncMediaAnalysisCoordinatorTest.java b/cmvr-iot-test/src/test/java/com/cmvr/test/flow/runtime/operator/llm/AsyncMediaAnalysisCoordinatorTest.java new file mode 100644 index 0000000..44bebbb --- /dev/null +++ b/cmvr-iot-test/src/test/java/com/cmvr/test/flow/runtime/operator/llm/AsyncMediaAnalysisCoordinatorTest.java @@ -0,0 +1,185 @@ +package com.cmvr.test.flow.runtime.operator.llm; + +import com.alibaba.fastjson2.JSONObject; +import com.cmvr.test.enums.ActionEnum; +import com.cmvr.test.flow.context.TaskContext; +import com.cmvr.test.flow.context.TaskContextManager; +import com.cmvr.test.flow.context.TaskInstHolder; +import com.cmvr.test.flow.runtime.event.FlowExecutionEvent; +import com.cmvr.test.flow.runtime.event.FlowExecutionEventPublisher; +import com.cmvr.test.flow.runtime.event.FlowExecutionListener; +import com.cmvr.test.flow.runtime.message.TaskNodeExecuteMessage; +import com.cmvr.test.flow.runtime.message.TaskNodeExecuteResult; +import com.cmvr.test.service.ITeNodeInstService; +import org.junit.Test; +import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; + +import java.lang.reflect.Proxy; +import java.util.Collections; +import java.util.List; +import java.util.concurrent.CountDownLatch; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicBoolean; +import java.util.concurrent.atomic.AtomicReference; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNull; +import static org.junit.Assert.assertTrue; + +public class AsyncMediaAnalysisCoordinatorTest { + + @Test + public void submitsImmediatelyAndStoresFinalResultBeforeAwaitReturns() throws Exception { + Fixture fixture = fixture(); + CountDownLatch started = new CountDownLatch(1); + CountDownLatch release = new CountDownLatch(1); + try { + TaskNodeExecuteResult submitted = fixture.coordinator.submit(fixture.message, "request-1", () -> { + started.countDown(); + await(release); + return TaskNodeExecuteResult.success(new JSONObject().fluentPut("passed", true)); + }); + + assertTrue(submitted.isSuccess()); + assertTrue(submitted.isDeferred()); + assertTrue(started.await(1, TimeUnit.SECONDS)); + assertNull(fixture.context.getNodeOutput("analysis-node", Collections.emptyList())); + + release.countDown(); + assertTrue(fixture.coordinator.awaitAll("inst-1").isSuccess()); + assertTrue(fixture.context.getNodeOutput( + "analysis-node", Collections.emptyList()).getBooleanValue("passed")); + assertTrue(fixture.nodeSucceeded.get()); + assertEquals(FlowExecutionEvent.EventType.NODE_COMPLETED, + fixture.lastEvent.get().getEventType()); + } finally { + release.countDown(); + fixture.executor.shutdown(); + } + } + + @Test + public void reportsBackgroundFailureAtFlowBarrier() { + Fixture fixture = fixture(); + try { + fixture.coordinator.submit(fixture.message, "request-2", () -> { + throw new IllegalStateException("vision service unavailable"); + }); + + TaskNodeExecuteResult result = fixture.coordinator.awaitAll("inst-1"); + + assertFalse(result.isSuccess()); + assertTrue(result.getErrorMsg().contains("vision service unavailable")); + assertTrue(fixture.nodeFailed.get()); + assertEquals(FlowExecutionEvent.EventType.NODE_FAILED, + fixture.lastEvent.get().getEventType()); + } finally { + fixture.executor.shutdown(); + } + } + + @Test + public void unrelatedItemFailureDoesNotBreakCurrentItemDependencyWait() { + Fixture fixture = fixture(); + try { + TaskNodeExecuteMessage failedItem = fixture.message; + fixture.coordinator.submit(failedItem, "request-failed", () -> { + throw new IllegalStateException("first item failed"); + }); + + TaskNodeExecuteMessage currentItem = message("item-2"); + fixture.coordinator.submit(currentItem, "request-current", () -> + TaskNodeExecuteResult.success(new JSONObject().fluentPut("passed", true))); + + fixture.coordinator.awaitNode("inst-1", "item-2", null, null, + "analysis-node", Collections.emptyList()); + assertFalse(fixture.coordinator.awaitAll("inst-1").isSuccess()); + } finally { + fixture.executor.shutdown(); + } + } + + private Fixture fixture() { + AtomicBoolean nodeSucceeded = new AtomicBoolean(); + AtomicBoolean nodeFailed = new AtomicBoolean(); + ITeNodeInstService nodeService = (ITeNodeInstService) Proxy.newProxyInstance( + ITeNodeInstService.class.getClassLoader(), new Class[]{ITeNodeInstService.class}, + (proxy, method, args) -> { + if ("logSuccess".equals(method.getName())) nodeSucceeded.set(true); + if ("logFailed".equals(method.getName())) nodeFailed.set(true); + return defaultValue(method.getReturnType()); + }); + AtomicReference lastEvent = new AtomicReference<>(); + FlowExecutionListener listener = new FlowExecutionListener() { + @Override + public void onEvent(FlowExecutionEvent event) { + lastEvent.set(event); + } + + @Override + public String getModuleCode() { + return "AIMA"; + } + }; + FlowExecutionEventPublisher publisher = new FlowExecutionEventPublisher(List.of(listener)); + TaskContextManager contextManager = new TaskContextManager(); + TaskContext context = new TaskContext(); + context.setInstId("inst-1"); + context.setModuleCode("AIMA"); + contextManager.register(context); + TaskInstHolder holder = new TaskInstHolder(nodeService, contextManager, null, publisher); + ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor(); + executor.setCorePoolSize(1); + executor.setMaxPoolSize(1); + executor.setQueueCapacity(10); + executor.setThreadNamePrefix("media-analysis-test-"); + executor.initialize(); + AsyncMediaAnalysisCoordinator coordinator = new AsyncMediaAnalysisCoordinator( + holder, nodeService, publisher, executor); + + TaskNodeExecuteMessage message = message("item-1"); + return new Fixture(coordinator, executor, context, message, + nodeSucceeded, nodeFailed, lastEvent); + } + + private TaskNodeExecuteMessage message(String itemId) { + TaskNodeExecuteMessage message = new TaskNodeExecuteMessage(); + message.setInstId("inst-1"); + message.setTaskId("task-1"); + message.setItemId(itemId); + message.setNodeId("analysis-node"); + message.setNodeName("视频分析"); + message.setNodeType("LLM"); + message.setAction(ActionEnum.VIDEO_ANALYZE); + message.setInputParams(new JSONObject()); + message.setIterations(Collections.emptyList()); + return message; + } + + private void await(CountDownLatch latch) { + try { + latch.await(); + } catch (InterruptedException e) { + Thread.currentThread().interrupt(); + throw new IllegalStateException(e); + } + } + + private Object defaultValue(Class type) { + if (!type.isPrimitive()) return null; + if (type == boolean.class) return false; + if (type == char.class) return '\0'; + return 0; + } + + private record Fixture( + AsyncMediaAnalysisCoordinator coordinator, + ThreadPoolTaskExecutor executor, + TaskContext context, + TaskNodeExecuteMessage message, + AtomicBoolean nodeSucceeded, + AtomicBoolean nodeFailed, + AtomicReference lastEvent) { + } +} diff --git a/cmvr-iot-test/src/test/java/com/cmvr/test/flow/runtime/operator/llm/LLMMediaAnalysisOperateServiceTest.java b/cmvr-iot-test/src/test/java/com/cmvr/test/flow/runtime/operator/llm/LLMMediaAnalysisOperateServiceTest.java index d8ae807..4089608 100644 --- a/cmvr-iot-test/src/test/java/com/cmvr/test/flow/runtime/operator/llm/LLMMediaAnalysisOperateServiceTest.java +++ b/cmvr-iot-test/src/test/java/com/cmvr/test/flow/runtime/operator/llm/LLMMediaAnalysisOperateServiceTest.java @@ -154,11 +154,16 @@ public class LLMMediaAnalysisOperateServiceTest { .fluentAdd("https://files.example/scene-2.jpg")) .fluentPut("referenceImageUrl", "https://files.example/icon.jpg") .fluentPut("prompt", "最后一张图片是参考图,输出匹配图标的中心坐标 JSON") + .fluentPut("analysisMethod", "REFERENCE_MATCH") .fluentPut("analysisMode", "ACCURATE") .fluentPut("analysisTuning", new JSONObject() .fluentPut("maxWidth", 1280) .fluentPut("maxImages", 8) - .fluentPut("maxOutputTokens", 256)); + .fluentPut("maxOutputTokens", 256) + .fluentPut("matchThreshold", 0.55D) + .fluentPut("matchSelector", "INDEX") + .fluentPut("matchIndex", 3) + .fluentPut("matchSort", "COLUMN_MAJOR")); TaskNodeExecuteResult result = service.execute(message(ActionEnum.IMAGE_ANALYZE, input)); @@ -168,12 +173,48 @@ public class LLMMediaAnalysisOperateServiceTest { JSONObject options = captured.get().getJSONObject("options"); assertEquals("最后一张图片是参考图,输出匹配图标的中心坐标 JSON", options.getString("prompt")); assertEquals("https://files.example/icon.jpg", options.getString("referenceImageUrl")); + assertEquals("REFERENCE_MATCH", options.getString("analysisMethod")); assertEquals(8, options.getJSONObject("tuning").getIntValue("maxImages")); assertEquals(256, options.getJSONObject("tuning").getIntValue("maxOutputTokens")); + assertEquals(0.55D, options.getJSONObject("tuning").getDoubleValue("matchThreshold"), 0.0001D); + assertEquals("INDEX", options.getJSONObject("tuning").getString("matchSelector")); + assertEquals(3, options.getJSONObject("tuning").getIntValue("matchIndex")); + assertEquals("COLUMN_MAJOR", options.getJSONObject("tuning").getString("matchSort")); assertEquals(2, result.getOutputParams().getJSONArray("mediaUrls").size()); assertNull(result.getOutputParams().get("passed")); } + @Test + public void forwardsDescriptionLocationMethodAndThreshold() { + AtomicReference captured = new AtomicReference<>(); + MediaAnalysisClient client = request -> { + captured.set(request); + return new JSONObject() + .fluentPut("status", "SUCCEEDED") + .fluentPut("analysisType", "IMAGE_ANALYSIS") + .fluentPut("profileCode", "common.image_analysis.v1") + .fluentPut("result", new JSONObject() + .fluentPut("result", new JSONArray().fluentAdd(10).fluentAdd(20).fluentAdd(30).fluentAdd(40)) + .fluentPut("matched", true)); + }; + LLMMediaAnalysisOperateService service = new LLMMediaAnalysisOperateService(client); + JSONObject input = new JSONObject() + .fluentPut("profileCode", "common.image_analysis.v1") + .fluentPut("imageUrl", "https://files.example/scene.jpg") + .fluentPut("prompt", "右上角的蓝牙图标") + .fluentPut("analysisMethod", "TEXT_LOCATE") + .fluentPut("analysisMode", "ACCURATE") + .fluentPut("analysisTuning", new JSONObject() + .fluentPut("locateConfidenceThreshold", 0.65D)); + + service.execute(message(ActionEnum.IMAGE_ANALYZE, input)); + + JSONObject options = captured.get().getJSONObject("options"); + assertEquals("TEXT_LOCATE", options.getString("analysisMethod")); + assertEquals(0.65D, options.getJSONObject("tuning") + .getDoubleValue("locateConfidenceThreshold"), 0.0001D); + } + @Test public void restoresStaticImageUrlArraySerializedByLegacyFlowParamModel() { AtomicReference captured = new AtomicReference<>();