diff --git a/storage/v1alpha1/autogen.md b/storage/v1alpha1/autogen.md index efb2b30f..def9bfd2 100644 --- a/storage/v1alpha1/autogen.md +++ b/storage/v1alpha1/autogen.md @@ -35,7 +35,6 @@ - [CreateNvmeRemoteControllerRequest](#opi_api-storage-v1-CreateNvmeRemoteControllerRequest) - [DeleteNvmePathRequest](#opi_api-storage-v1-DeleteNvmePathRequest) - [DeleteNvmeRemoteControllerRequest](#opi_api-storage-v1-DeleteNvmeRemoteControllerRequest) - - [FabricsPath](#opi_api-storage-v1-FabricsPath) - [GetNvmePathRequest](#opi_api-storage-v1-GetNvmePathRequest) - [GetNvmeRemoteControllerRequest](#opi_api-storage-v1-GetNvmeRemoteControllerRequest) - [GetNvmeRemoteNamespaceRequest](#opi_api-storage-v1-GetNvmeRemoteNamespaceRequest) @@ -630,26 +629,6 @@ Represents a request to delete an Nvme Remote Controller. - - -### FabricsPath -Represents Fabrics transport path parameters - - -| Field | Type | Label | Description | -| ----- | ---- | ----- | ----------- | -| trsvcid | [int64](#int64) | | Destination service id (e.g. Port) | -| subnqn | [string](#string) | | Subsystem NQN | -| adrfam | [NvmeAddressFamily](#opi_api-storage-v1-NvmeAddressFamily) | | Address family | -| source_traddr | [string](#string) | | Source address (e.g. IP of local NIC) | -| source_trsvcid | [int64](#int64) | | Source port (e.g. Port of local NIC) | -| hostnqn | [string](#string) | | Host NQN | - - - - - - ### GetNvmePathRequest @@ -805,8 +784,8 @@ Represents a specific path to target controller | name | [string](#string) | | name is an opaque object handle that is not user settable. name will be returned with created object user can only set {resource}_id on the Create request object | | controller_name_ref | [string](#string) | | Nvme Remote Controller this path corresponds to | | trtype | [NvmeTransportType](#opi_api-storage-v1-NvmeTransportType) | | Transport type | -| traddr | [string](#string) | | Destination address (e.g. IP address, BDF for local PCIe) | -| fabrics | [FabricsPath](#opi_api-storage-v1-FabricsPath) | | Not applicable for local PCIe. Required for Nvme over fabrics transport types | +| pcie | [PciEndpoint](#opi_api-storage-v1-PciEndpoint) | | Required for pcie transport type. | +| fabrics | [FabricsEndpoint](#opi_api-storage-v1-FabricsEndpoint) | | Required for Nvme over fabrics transport types | @@ -823,6 +802,8 @@ Represents a target controller | ----- | ---- | ----- | ----------- | | name | [string](#string) | | name is an opaque object handle that is not user settable. name will be returned with created object user can only set {resource}_id on the Create request object | | multipath | [NvmeMultipath](#opi_api-storage-v1-NvmeMultipath) | | Multipath mode | +| subnqn | [string](#string) | | Subsystem NQN | +| hostnqn | [string](#string) | | Host NQN | | io_queues_count | [int64](#int64) | | IO queues count | | queue_size | [int64](#int64) | | Queue size | | tcp | [TcpController](#opi_api-storage-v1-TcpController) | | Nvme over TCP specific fields | @@ -2702,6 +2683,8 @@ Represents Fabrics Endpoint | traddr | [string](#string) | | ip address for TCP and RDMA | | trsvcid | [string](#string) | | port for TCP and RDMA | | adrfam | [NvmeAddressFamily](#opi_api-storage-v1-NvmeAddressFamily) | | address family | +| source_traddr | [string](#string) | | source address (e.g. IP of local NIC) not used for frontend | +| source_trsvcid | [string](#string) | | source port (e.g. Port of local NIC) not used for frontend | @@ -2723,9 +2706,18 @@ confusion with storage "devices". | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | -| port_id | [google.protobuf.Int32Value](#google-protobuf-Int32Value) | | The "port" or "device". In other words, the connector/cable that's plugged into a particular host. This number may end up matching the host-assigned "device" value in the bus:device:function identifier, but it does not strictly have to and that should not be relied upon. | -| physical_function | [google.protobuf.Int32Value](#google-protobuf-Int32Value) | | Physical function index. This may end up matching the host-assigned "function" value in the bus:device:function identifier, but it does not strictly have to and that should not be relied upon. | -| virtual_function | [google.protobuf.Int32Value](#google-protobuf-Int32Value) | | Virtual function index. 1-based index. The value 0 is reserved to represent the PCI physical "device". This may end up matching the host-assigned "function" value in the bus:device:function identifier, but it does not strictly have to and that should not be relied upon. | +| port_id | [google.protobuf.Int32Value](#google-protobuf-Int32Value) | | for frontend: The "port" or "device". In other words, the connector/cable that's plugged into a particular host. This number may end up matching the host-assigned "device" value in the bus:device:function identifier, but it does not strictly have to and that should not be relied upon. + +for backend: Corresponds to "bus" part of BDF | +| physical_function | [google.protobuf.Int32Value](#google-protobuf-Int32Value) | | for frontend: Physical function index. This may end up matching the host-assigned "function" value in the bus:device:function identifier, but it does not strictly have to and that should not be relied upon. + +for backend: Corresponds to "device" part of BDF | +| virtual_function | [google.protobuf.Int32Value](#google-protobuf-Int32Value) | | for frontend: Virtual function index. 1-based index. The value 0 is reserved to represent the PCI physical "device". This may end up matching the host-assigned "function" value in the bus:device:function identifier, but it does not strictly have to and that should not be relied upon. + +for backend: Corresponds to "function" part of BDF | +| domain_id | [google.protobuf.Int32Value](#google-protobuf-Int32Value) | | for frontend: Not used + +for backend: Corresponds to pci domain value | diff --git a/storage/v1alpha1/backend_nvme.proto b/storage/v1alpha1/backend_nvme.proto index f11587ad..0d220e40 100755 --- a/storage/v1alpha1/backend_nvme.proto +++ b/storage/v1alpha1/backend_nvme.proto @@ -153,14 +153,20 @@ message NvmeRemoteController { // Multipath mode NvmeMultipath multipath = 2 [(google.api.field_behavior) = REQUIRED]; + // Subsystem NQN + string subnqn = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Host NQN + string hostnqn = 4 [(google.api.field_behavior) = OPTIONAL]; + // IO queues count - int64 io_queues_count = 3 [(google.api.field_behavior) = OPTIONAL]; + int64 io_queues_count = 5 [(google.api.field_behavior) = OPTIONAL]; // Queue size - int64 queue_size = 4 [(google.api.field_behavior) = OPTIONAL]; + int64 queue_size = 6 [(google.api.field_behavior) = OPTIONAL]; // Nvme over TCP specific fields - TcpController tcp = 5 [(google.api.field_behavior) = OPTIONAL]; + TcpController tcp = 7 [(google.api.field_behavior) = OPTIONAL]; } // Represents parameters specific for TCP target controller @@ -206,32 +212,16 @@ message NvmePath { // Transport type NvmeTransportType trtype = 3 [(google.api.field_behavior) = REQUIRED]; - // Destination address (e.g. IP address, BDF for local PCIe) - string traddr = 4 [(google.api.field_behavior) = REQUIRED]; - - // Not applicable for local PCIe. Required for Nvme over fabrics transport types - FabricsPath fabrics = 5 [(google.api.field_behavior) = OPTIONAL]; -} - -// Represents Fabrics transport path parameters -message FabricsPath { - // Destination service id (e.g. Port) - int64 trsvcid = 1 [(google.api.field_behavior) = REQUIRED]; + // xPU's PCI/Fabrics endpoint for the controller. + // One of the values is required + // see https://github.com/aip-dev/google.aip.dev/issues/1147 for field_behavior annotations + oneof endpoint { + // Required for pcie transport type. + PciEndpoint pcie = 4 [(google.api.field_behavior) = OPTIONAL]; - // Subsystem NQN - string subnqn = 2 [(google.api.field_behavior) = REQUIRED]; - - // Address family - NvmeAddressFamily adrfam = 3 [(google.api.field_behavior) = REQUIRED]; - - // Source address (e.g. IP of local NIC) - string source_traddr = 4 [(google.api.field_behavior) = OPTIONAL]; - - // Source port (e.g. Port of local NIC) - int64 source_trsvcid = 5 [(google.api.field_behavior) = OPTIONAL]; - - // Host NQN - string hostnqn = 6 [(google.api.field_behavior) = OPTIONAL]; + // Required for Nvme over fabrics transport types + FabricsEndpoint fabrics = 5 [(google.api.field_behavior) = OPTIONAL]; + } } // Represent Nvme namespace created on bridge after connection to a target diff --git a/storage/v1alpha1/gen/cpp/backend_nvme.pb.cc b/storage/v1alpha1/gen/cpp/backend_nvme.pb.cc index 6f1dab29..e527cc1b 100644 --- a/storage/v1alpha1/gen/cpp/backend_nvme.pb.cc +++ b/storage/v1alpha1/gen/cpp/backend_nvme.pb.cc @@ -26,6 +26,8 @@ namespace v1 { PROTOBUF_CONSTEXPR NvmeRemoteController::NvmeRemoteController( ::_pbi::ConstantInitialized): _impl_{ /*decltype(_impl_.name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.subnqn_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.hostnqn_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} , /*decltype(_impl_.tcp_)*/nullptr , /*decltype(_impl_.io_queues_count_)*/int64_t{0} , /*decltype(_impl_.queue_size_)*/int64_t{0} @@ -59,10 +61,10 @@ PROTOBUF_CONSTEXPR NvmePath::NvmePath( ::_pbi::ConstantInitialized): _impl_{ /*decltype(_impl_.name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} , /*decltype(_impl_.controller_name_ref_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} - , /*decltype(_impl_.traddr_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} - , /*decltype(_impl_.fabrics_)*/nullptr , /*decltype(_impl_.trtype_)*/0 - , /*decltype(_impl_._cached_size_)*/{}} {} + , /*decltype(_impl_.endpoint_)*/{} + , /*decltype(_impl_._cached_size_)*/{} + , /*decltype(_impl_._oneof_case_)*/{}} {} struct NvmePathDefaultTypeInternal { PROTOBUF_CONSTEXPR NvmePathDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {} @@ -72,24 +74,6 @@ struct NvmePathDefaultTypeInternal { }; }; PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 NvmePathDefaultTypeInternal _NvmePath_default_instance_; -PROTOBUF_CONSTEXPR FabricsPath::FabricsPath( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_.subnqn_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} - , /*decltype(_impl_.source_traddr_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} - , /*decltype(_impl_.hostnqn_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} - , /*decltype(_impl_.trsvcid_)*/int64_t{0} - , /*decltype(_impl_.source_trsvcid_)*/int64_t{0} - , /*decltype(_impl_.adrfam_)*/0 - , /*decltype(_impl_._cached_size_)*/{}} {} -struct FabricsPathDefaultTypeInternal { - PROTOBUF_CONSTEXPR FabricsPathDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~FabricsPathDefaultTypeInternal() {} - union { - FabricsPath _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 FabricsPathDefaultTypeInternal _FabricsPath_default_instance_; PROTOBUF_CONSTEXPR NvmeRemoteNamespace::NvmeRemoteNamespace( ::_pbi::ConstantInitialized): _impl_{ /*decltype(_impl_.name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} @@ -388,7 +372,7 @@ PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORIT } // namespace v1 } // namespace storage } // namespace opi_api -static ::_pb::Metadata file_level_metadata_backend_5fnvme_2eproto[25]; +static ::_pb::Metadata file_level_metadata_backend_5fnvme_2eproto[24]; static const ::_pb::EnumDescriptor* file_level_enum_descriptors_backend_5fnvme_2eproto[1]; static constexpr ::_pb::ServiceDescriptor const** file_level_service_descriptors_backend_5fnvme_2eproto = nullptr; @@ -401,6 +385,8 @@ const uint32_t TableStruct_backend_5fnvme_2eproto::offsets[] PROTOBUF_SECTION_VA ~0u, // no _inlined_string_donated_ PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::NvmeRemoteController, _impl_.name_), PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::NvmeRemoteController, _impl_.multipath_), + PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::NvmeRemoteController, _impl_.subnqn_), + PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::NvmeRemoteController, _impl_.hostnqn_), PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::NvmeRemoteController, _impl_.io_queues_count_), PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::NvmeRemoteController, _impl_.queue_size_), PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::NvmeRemoteController, _impl_.tcp_), @@ -416,26 +402,15 @@ const uint32_t TableStruct_backend_5fnvme_2eproto::offsets[] PROTOBUF_SECTION_VA ~0u, // no _has_bits_ PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::NvmePath, _internal_metadata_), ~0u, // no _extensions_ - ~0u, // no _oneof_case_ + PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::NvmePath, _impl_._oneof_case_[0]), ~0u, // no _weak_field_map_ ~0u, // no _inlined_string_donated_ PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::NvmePath, _impl_.name_), PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::NvmePath, _impl_.controller_name_ref_), PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::NvmePath, _impl_.trtype_), - PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::NvmePath, _impl_.traddr_), - PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::NvmePath, _impl_.fabrics_), - ~0u, // no _has_bits_ - PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::FabricsPath, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::FabricsPath, _impl_.trsvcid_), - PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::FabricsPath, _impl_.subnqn_), - PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::FabricsPath, _impl_.adrfam_), - PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::FabricsPath, _impl_.source_traddr_), - PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::FabricsPath, _impl_.source_trsvcid_), - PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::FabricsPath, _impl_.hostnqn_), + ::_pbi::kInvalidFieldOffsetTag, + ::_pbi::kInvalidFieldOffsetTag, + PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::NvmePath, _impl_.endpoint_), ~0u, // no _has_bits_ PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::NvmeRemoteNamespace, _internal_metadata_), ~0u, // no _extensions_ @@ -608,37 +583,35 @@ const uint32_t TableStruct_backend_5fnvme_2eproto::offsets[] PROTOBUF_SECTION_VA }; static const ::_pbi::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { { 0, -1, -1, sizeof(::opi_api::storage::v1::NvmeRemoteController)}, - { 11, -1, -1, sizeof(::opi_api::storage::v1::TcpController)}, - { 20, -1, -1, sizeof(::opi_api::storage::v1::NvmePath)}, - { 31, -1, -1, sizeof(::opi_api::storage::v1::FabricsPath)}, - { 43, -1, -1, sizeof(::opi_api::storage::v1::NvmeRemoteNamespace)}, - { 55, -1, -1, sizeof(::opi_api::storage::v1::CreateNvmeRemoteControllerRequest)}, - { 63, -1, -1, sizeof(::opi_api::storage::v1::DeleteNvmeRemoteControllerRequest)}, - { 71, -1, -1, sizeof(::opi_api::storage::v1::UpdateNvmeRemoteControllerRequest)}, - { 80, -1, -1, sizeof(::opi_api::storage::v1::ListNvmeRemoteControllersRequest)}, - { 89, -1, -1, sizeof(::opi_api::storage::v1::ListNvmeRemoteControllersResponse)}, - { 97, -1, -1, sizeof(::opi_api::storage::v1::GetNvmeRemoteControllerRequest)}, - { 104, -1, -1, sizeof(::opi_api::storage::v1::ResetNvmeRemoteControllerRequest)}, - { 111, -1, -1, sizeof(::opi_api::storage::v1::StatsNvmeRemoteControllerRequest)}, - { 118, -1, -1, sizeof(::opi_api::storage::v1::StatsNvmeRemoteControllerResponse)}, - { 125, -1, -1, sizeof(::opi_api::storage::v1::ListNvmeRemoteNamespacesRequest)}, - { 134, -1, -1, sizeof(::opi_api::storage::v1::ListNvmeRemoteNamespacesResponse)}, - { 142, -1, -1, sizeof(::opi_api::storage::v1::GetNvmeRemoteNamespaceRequest)}, - { 149, -1, -1, sizeof(::opi_api::storage::v1::CreateNvmePathRequest)}, - { 157, -1, -1, sizeof(::opi_api::storage::v1::DeleteNvmePathRequest)}, - { 165, -1, -1, sizeof(::opi_api::storage::v1::UpdateNvmePathRequest)}, - { 174, -1, -1, sizeof(::opi_api::storage::v1::ListNvmePathsRequest)}, - { 183, -1, -1, sizeof(::opi_api::storage::v1::ListNvmePathsResponse)}, - { 191, -1, -1, sizeof(::opi_api::storage::v1::GetNvmePathRequest)}, - { 198, -1, -1, sizeof(::opi_api::storage::v1::StatsNvmePathRequest)}, - { 205, -1, -1, sizeof(::opi_api::storage::v1::StatsNvmePathResponse)}, + { 13, -1, -1, sizeof(::opi_api::storage::v1::TcpController)}, + { 22, -1, -1, sizeof(::opi_api::storage::v1::NvmePath)}, + { 34, -1, -1, sizeof(::opi_api::storage::v1::NvmeRemoteNamespace)}, + { 46, -1, -1, sizeof(::opi_api::storage::v1::CreateNvmeRemoteControllerRequest)}, + { 54, -1, -1, sizeof(::opi_api::storage::v1::DeleteNvmeRemoteControllerRequest)}, + { 62, -1, -1, sizeof(::opi_api::storage::v1::UpdateNvmeRemoteControllerRequest)}, + { 71, -1, -1, sizeof(::opi_api::storage::v1::ListNvmeRemoteControllersRequest)}, + { 80, -1, -1, sizeof(::opi_api::storage::v1::ListNvmeRemoteControllersResponse)}, + { 88, -1, -1, sizeof(::opi_api::storage::v1::GetNvmeRemoteControllerRequest)}, + { 95, -1, -1, sizeof(::opi_api::storage::v1::ResetNvmeRemoteControllerRequest)}, + { 102, -1, -1, sizeof(::opi_api::storage::v1::StatsNvmeRemoteControllerRequest)}, + { 109, -1, -1, sizeof(::opi_api::storage::v1::StatsNvmeRemoteControllerResponse)}, + { 116, -1, -1, sizeof(::opi_api::storage::v1::ListNvmeRemoteNamespacesRequest)}, + { 125, -1, -1, sizeof(::opi_api::storage::v1::ListNvmeRemoteNamespacesResponse)}, + { 133, -1, -1, sizeof(::opi_api::storage::v1::GetNvmeRemoteNamespaceRequest)}, + { 140, -1, -1, sizeof(::opi_api::storage::v1::CreateNvmePathRequest)}, + { 148, -1, -1, sizeof(::opi_api::storage::v1::DeleteNvmePathRequest)}, + { 156, -1, -1, sizeof(::opi_api::storage::v1::UpdateNvmePathRequest)}, + { 165, -1, -1, sizeof(::opi_api::storage::v1::ListNvmePathsRequest)}, + { 174, -1, -1, sizeof(::opi_api::storage::v1::ListNvmePathsResponse)}, + { 182, -1, -1, sizeof(::opi_api::storage::v1::GetNvmePathRequest)}, + { 189, -1, -1, sizeof(::opi_api::storage::v1::StatsNvmePathRequest)}, + { 196, -1, -1, sizeof(::opi_api::storage::v1::StatsNvmePathResponse)}, }; static const ::_pb::Message* const file_default_instances[] = { &::opi_api::storage::v1::_NvmeRemoteController_default_instance_._instance, &::opi_api::storage::v1::_TcpController_default_instance_._instance, &::opi_api::storage::v1::_NvmePath_default_instance_._instance, - &::opi_api::storage::v1::_FabricsPath_default_instance_._instance, &::opi_api::storage::v1::_NvmeRemoteNamespace_default_instance_._instance, &::opi_api::storage::v1::_CreateNvmeRemoteControllerRequest_default_instance_._instance, &::opi_api::storage::v1::_DeleteNvmeRemoteControllerRequest_default_instance_._instance, @@ -669,169 +642,166 @@ const char descriptor_table_protodef_backend_5fnvme_2eproto[] PROTOBUF_SECTION_V "o\032\034google/api/annotations.proto\032\037google/" "api/field_behavior.proto\032 google/protobu" "f/field_mask.proto\032\017opicommon.proto\032\nuui" - "d.proto\"\313\002\n\024NvmeRemoteController\022\021\n\004name" + "d.proto\"\366\002\n\024NvmeRemoteController\022\021\n\004name" "\030\001 \001(\tB\003\340A\010\0229\n\tmultipath\030\002 \001(\0162!.opi_api" - ".storage.v1.NvmeMultipathB\003\340A\002\022\034\n\017io_que" - "ues_count\030\003 \001(\003B\003\340A\001\022\027\n\nqueue_size\030\004 \001(\003" - "B\003\340A\001\0223\n\003tcp\030\005 \001(\0132!.opi_api.storage.v1." - "TcpControllerB\003\340A\001:y\352Av\n\'opi_api.storage" - ".v1/NvmeRemoteController\022\036nvmeRemoteCont" - "rollers/{volume}*\025nvmeRemoteControllers2" - "\024nvmeRemoteController\"I\n\rTcpController\022\022" - "\n\005hdgst\030\001 \001(\010B\003\340A\001\022\022\n\005ddgst\030\002 \001(\010B\003\340A\001\022\020" - "\n\003psk\030\003 \001(\014B\003\340A\001\"\276\002\n\010NvmePath\022\021\n\004name\030\001 " - "\001(\tB\003\340A\010\022L\n\023controller_name_ref\030\002 \001(\tB/\340" - "A\002\372A)\n\'opi_api.storage.v1/NvmeRemoteCont" - "roller\022:\n\006trtype\030\003 \001(\0162%.opi_api.storage" - ".v1.NvmeTransportTypeB\003\340A\002\022\023\n\006traddr\030\004 \001" - "(\tB\003\340A\002\0225\n\007fabrics\030\005 \001(\0132\037.opi_api.stora" - "ge.v1.FabricsPathB\003\340A\001:I\352AF\n\033opi_api.sto" - "rage.v1/NvmePath\022\022nvmePaths/{volume}*\tnv" - "mePaths2\010nvmePath\"\303\001\n\013FabricsPath\022\024\n\007trs" - "vcid\030\001 \001(\003B\003\340A\002\022\023\n\006subnqn\030\002 \001(\tB\003\340A\002\022:\n\006" - "adrfam\030\003 \001(\0162%.opi_api.storage.v1.NvmeAd" - "dressFamilyB\003\340A\002\022\032\n\rsource_traddr\030\004 \001(\tB" - "\003\340A\001\022\033\n\016source_trsvcid\030\005 \001(\003B\003\340A\001\022\024\n\007hos" - "tnqn\030\006 \001(\tB\003\340A\001\"\324\002\n\023NvmeRemoteNamespace\022" - "\021\n\004name\030\001 \001(\tB\003\340A\010\022L\n\023controller_name_re" - "f\030\002 \001(\tB/\340A\003\372A)\n\'opi_api.storage.v1/Nvme" - "RemoteController\022\021\n\004nsid\030\003 \001(\005B\003\340A\003\022\022\n\005n" - "guid\030\004 \001(\tB\003\340A\003\022\022\n\005eui64\030\005 \001(\003B\003\340A\003\022*\n\004u" - "uid\030\006 \001(\0132\027.opi_api.common.v1.UuidB\003\340A\003:" - "u\352Ar\n&opi_api.storage.v1/NvmeRemoteNames" - "pace\022\035nvmeRemoteNamespaces/{volume}*\024nvm" - "eRemoteNamespaces2\023nvmeRemoteNamespace\"\232" - "\001\n!CreateNvmeRemoteControllerRequest\022M\n\026" - "nvme_remote_controller\030\001 \001(\0132(.opi_api.s" - "torage.v1.NvmeRemoteControllerB\003\340A\002\022&\n\031n" - "vme_remote_controller_id\030\002 \001(\tB\003\340A\001\"~\n!D" - "eleteNvmeRemoteControllerRequest\022=\n\004name" - "\030\001 \001(\tB/\340A\002\372A)\n\'opi_api.storage.v1/NvmeR" - "emoteController\022\032\n\rallow_missing\030\002 \001(\010B\003" - "\340A\001\"\304\001\n!UpdateNvmeRemoteControllerReques" - "t\022M\n\026nvme_remote_controller\030\001 \001(\0132(.opi_" - "api.storage.v1.NvmeRemoteControllerB\003\340A\002" - "\0224\n\013update_mask\030\002 \001(\0132\032.google.protobuf." - "FieldMaskB\003\340A\001\022\032\n\rallow_missing\030\003 \001(\010B\003\340" - "A\001\"\224\001\n ListNvmeRemoteControllersRequest\022" - "\?\n\006parent\030\001 \001(\tB/\340A\002\372A)\022\'opi_api.storage" - ".v1/NvmeRemoteController\022\026\n\tpage_size\030\002 " - "\001(\005B\003\340A\001\022\027\n\npage_token\030\003 \001(\tB\003\340A\001\"\207\001\n!Li" - "stNvmeRemoteControllersResponse\022I\n\027nvme_" - "remote_controllers\030\001 \003(\0132(.opi_api.stora" - "ge.v1.NvmeRemoteController\022\027\n\017next_page_" - "token\030\002 \001(\t\"_\n\036GetNvmeRemoteControllerRe" - "quest\022=\n\004name\030\001 \001(\tB/\340A\002\372A)\n\'opi_api.sto" - "rage.v1/NvmeRemoteController\"a\n ResetNvm" - "eRemoteControllerRequest\022=\n\004name\030\001 \001(\tB/" - "\340A\002\372A)\n\'opi_api.storage.v1/NvmeRemoteCon" - "troller\"a\n StatsNvmeRemoteControllerRequ" - "est\022=\n\004name\030\001 \001(\tB/\340A\002\372A)\n\'opi_api.stora" - "ge.v1/NvmeRemoteController\"S\n!StatsNvmeR" - "emoteControllerResponse\022.\n\005stats\030\001 \001(\0132\037" - ".opi_api.storage.v1.VolumeStats\"\222\001\n\037List" - "NvmeRemoteNamespacesRequest\022>\n\006parent\030\001 " - "\001(\tB.\340A\002\372A(\022&opi_api.storage.v1/NvmeRemo" - "teNamespace\022\026\n\tpage_size\030\002 \001(\005B\003\340A\001\022\027\n\np" - "age_token\030\003 \001(\tB\003\340A\001\"\204\001\n ListNvmeRemoteN" - "amespacesResponse\022G\n\026nvme_remote_namespa" - "ces\030\001 \003(\0132\'.opi_api.storage.v1.NvmeRemot" - "eNamespace\022\027\n\017next_page_token\030\002 \001(\t\"]\n\035G" - "etNvmeRemoteNamespaceRequest\022<\n\004name\030\001 \001" - "(\tB.\340A\002\372A(\n&opi_api.storage.v1/NvmeRemot" - "eNamespace\"h\n\025CreateNvmePathRequest\0224\n\tn" - "vme_path\030\001 \001(\0132\034.opi_api.storage.v1.Nvme" - "PathB\003\340A\002\022\031\n\014nvme_path_id\030\002 \001(\tB\003\340A\001\"f\n\025" - "DeleteNvmePathRequest\0221\n\004name\030\001 \001(\tB#\340A\002" - "\372A\035\n\033opi_api.storage.v1/NvmePath\022\032\n\rallo" - "w_missing\030\002 \001(\010B\003\340A\001\"\237\001\n\025UpdateNvmePathR" - "equest\0224\n\tnvme_path\030\001 \001(\0132\034.opi_api.stor" - "age.v1.NvmePathB\003\340A\002\0224\n\013update_mask\030\002 \001(" - "\0132\032.google.protobuf.FieldMaskB\003\340A\001\022\032\n\ral" - "low_missing\030\003 \001(\010B\003\340A\001\"|\n\024ListNvmePathsR" - "equest\0223\n\006parent\030\001 \001(\tB#\340A\002\372A\035\022\033opi_api." - "storage.v1/NvmePath\022\026\n\tpage_size\030\002 \001(\005B\003" - "\340A\001\022\027\n\npage_token\030\003 \001(\tB\003\340A\001\"b\n\025ListNvme" - "PathsResponse\0220\n\nnvme_paths\030\001 \003(\0132\034.opi_" - "api.storage.v1.NvmePath\022\027\n\017next_page_tok" - "en\030\002 \001(\t\"G\n\022GetNvmePathRequest\0221\n\004name\030\001" - " \001(\tB#\340A\002\372A\035\n\033opi_api.storage.v1/NvmePat" - "h\"I\n\024StatsNvmePathRequest\0221\n\004name\030\001 \001(\tB" - "#\340A\002\372A\035\n\033opi_api.storage.v1/NvmePath\"G\n\025" - "StatsNvmePathResponse\022.\n\005stats\030\001 \001(\0132\037.o" - "pi_api.storage.v1.VolumeStats*\206\001\n\rNvmeMu" - "ltipath\022\036\n\032NVME_MULTIPATH_UNSPECIFIED\020\000\022" - "\032\n\026NVME_MULTIPATH_DISABLE\020\001\022\033\n\027NVME_MULT" - "IPATH_FAILOVER\020\002\022\034\n\030NVME_MULTIPATH_MULTI" - "PATH\020\0032\262\024\n\033NvmeRemoteControllerService\022\353" - "\001\n\032CreateNvmeRemoteController\0225.opi_api." - "storage.v1.CreateNvmeRemoteControllerReq" - "uest\032(.opi_api.storage.v1.NvmeRemoteCont" - "roller\"l\202\323\344\223\0023\"\031/v1/nvmeRemoteController" - "s:\026nvme_remote_controller\332A0nvme_remote_" - "controller,nvme_remote_controller_id\022\236\001\n" - "\032DeleteNvmeRemoteController\0225.opi_api.st" - "orage.v1.DeleteNvmeRemoteControllerReque" - "st\032\026.google.protobuf.Empty\"1\202\323\344\223\002$*\"/v1/" - "{name=nvmeRemoteControllers/*}\332A\004name\022\375\001" - "\n\032UpdateNvmeRemoteController\0225.opi_api.s" - "torage.v1.UpdateNvmeRemoteControllerRequ" - "est\032(.opi_api.storage.v1.NvmeRemoteContr" - "oller\"~\202\323\344\223\002S29/v1/{nvme_remote_controll" - "er.name=nvmeRemoteControllers/*}:\026nvme_r" - "emote_controller\332A\"nvme_remote_controlle" - "r,update_mask\022\262\001\n\031ListNvmeRemoteControll" - "ers\0224.opi_api.storage.v1.ListNvmeRemoteC" - "ontrollersRequest\0325.opi_api.storage.v1.L" - "istNvmeRemoteControllersResponse\"(\202\323\344\223\002\031" - "\022\027/v1/{parent=subsystems}\332A\006parent\022\252\001\n\027G" - "etNvmeRemoteController\0222.opi_api.storage" - ".v1.GetNvmeRemoteControllerRequest\032(.opi" - "_api.storage.v1.NvmeRemoteController\"1\202\323" - "\344\223\002$\022\"/v1/{name=nvmeRemoteControllers/*}" - "\332A\004name\022\245\001\n\031ResetNvmeRemoteController\0224." - "opi_api.storage.v1.ResetNvmeRemoteContro" - "llerRequest\032\026.google.protobuf.Empty\":\202\323\344" - "\223\002-\"(/v1/{name=nvmeRemoteControllers/*}:" - "reset:\001*\332A\004name\022\301\001\n\031StatsNvmeRemoteContr" - "oller\0224.opi_api.storage.v1.StatsNvmeRemo" - "teControllerRequest\0325.opi_api.storage.v1" - ".StatsNvmeRemoteControllerResponse\"7\202\323\344\223" - "\002*\022(/v1/{name=nvmeRemoteControllers/*}:s" - "tats\332A\004name\022\257\001\n\030ListNvmeRemoteNamespaces" - "\0223.opi_api.storage.v1.ListNvmeRemoteName" - "spacesRequest\0324.opi_api.storage.v1.ListN" - "vmeRemoteNamespacesResponse\"(\202\323\344\223\002\031\022\027/v1" - "/{parent=subsystems}\332A\006parent\022\246\001\n\026GetNvm" - "eRemoteNamespace\0221.opi_api.storage.v1.Ge" - "tNvmeRemoteNamespaceRequest\032\'.opi_api.st" - "orage.v1.NvmeRemoteNamespace\"0\202\323\344\223\002#\022!/v" - "1/{name=nvmeRemoteNamespaces/*}\332A\004name\022\224" - "\001\n\016CreateNvmePath\022).opi_api.storage.v1.C" - "reateNvmePathRequest\032\034.opi_api.storage.v" - "1.NvmePath\"9\202\323\344\223\002\032\"\r/v1/nvmePaths:\tnvme_" - "path\332A\026nvme_path,nvme_path_id\022z\n\016DeleteN" - "vmePath\022).opi_api.storage.v1.DeleteNvmeP" - "athRequest\032\026.google.protobuf.Empty\"%\202\323\344\223" - "\002\030*\026/v1/{name=nvmePaths/*}\332A\004name\022\246\001\n\016Up" - "dateNvmePath\022).opi_api.storage.v1.Update" - "NvmePathRequest\032\034.opi_api.storage.v1.Nvm" - "ePath\"K\202\323\344\223\002-2 /v1/{nvme_path.name=nvmeP" - "aths/*}:\tnvme_path\332A\025nvme_path,update_ma" - "sk\022\216\001\n\rListNvmePaths\022(.opi_api.storage.v" - "1.ListNvmePathsRequest\032).opi_api.storage" - ".v1.ListNvmePathsResponse\"(\202\323\344\223\002\031\022\027/v1/{" - "parent=subsystems}\332A\006parent\022z\n\013GetNvmePa" - "th\022&.opi_api.storage.v1.GetNvmePathReque" - "st\032\034.opi_api.storage.v1.NvmePath\"%\202\323\344\223\002\030" - "\022\026/v1/{name=nvmePaths/*}\332A\004name\022\221\001\n\rStat" - "sNvmePath\022(.opi_api.storage.v1.StatsNvme" - "PathRequest\032).opi_api.storage.v1.StatsNv" - "mePathResponse\"+\202\323\344\223\002\036\022\034/v1/{name=nvmePa" - "ths/*}:stats\332A\004nameB_\n\022opi_api.storage.v" - "1B\020BackendNvmeProtoP\001Z5github.com/opipro" - "ject/opi-api/storage/v1alpha1/gen/gob\006pr" - "oto3" + ".storage.v1.NvmeMultipathB\003\340A\002\022\023\n\006subnqn" + "\030\003 \001(\tB\003\340A\001\022\024\n\007hostnqn\030\004 \001(\tB\003\340A\001\022\034\n\017io_" + "queues_count\030\005 \001(\003B\003\340A\001\022\027\n\nqueue_size\030\006 " + "\001(\003B\003\340A\001\0223\n\003tcp\030\007 \001(\0132!.opi_api.storage." + "v1.TcpControllerB\003\340A\001:y\352Av\n\'opi_api.stor" + "age.v1/NvmeRemoteController\022\036nvmeRemoteC" + "ontrollers/{volume}*\025nvmeRemoteControlle" + "rs2\024nvmeRemoteController\"I\n\rTcpControlle" + "r\022\022\n\005hdgst\030\001 \001(\010B\003\340A\001\022\022\n\005ddgst\030\002 \001(\010B\003\340A" + "\001\022\020\n\003psk\030\003 \001(\014B\003\340A\001\"\361\002\n\010NvmePath\022\021\n\004name" + "\030\001 \001(\tB\003\340A\010\022L\n\023controller_name_ref\030\002 \001(\t" + "B/\340A\002\372A)\n\'opi_api.storage.v1/NvmeRemoteC" + "ontroller\022:\n\006trtype\030\003 \001(\0162%.opi_api.stor" + "age.v1.NvmeTransportTypeB\003\340A\002\0224\n\004pcie\030\004 " + "\001(\0132\037.opi_api.storage.v1.PciEndpointB\003\340A" + "\001H\000\022;\n\007fabrics\030\005 \001(\0132#.opi_api.storage.v" + "1.FabricsEndpointB\003\340A\001H\000:I\352AF\n\033opi_api.s" + "torage.v1/NvmePath\022\022nvmePaths/{volume}*\t" + "nvmePaths2\010nvmePathB\n\n\010endpoint\"\324\002\n\023Nvme" + "RemoteNamespace\022\021\n\004name\030\001 \001(\tB\003\340A\010\022L\n\023co" + "ntroller_name_ref\030\002 \001(\tB/\340A\003\372A)\n\'opi_api" + ".storage.v1/NvmeRemoteController\022\021\n\004nsid" + "\030\003 \001(\005B\003\340A\003\022\022\n\005nguid\030\004 \001(\tB\003\340A\003\022\022\n\005eui64" + "\030\005 \001(\003B\003\340A\003\022*\n\004uuid\030\006 \001(\0132\027.opi_api.comm" + "on.v1.UuidB\003\340A\003:u\352Ar\n&opi_api.storage.v1" + "/NvmeRemoteNamespace\022\035nvmeRemoteNamespac" + "es/{volume}*\024nvmeRemoteNamespaces2\023nvmeR" + "emoteNamespace\"\232\001\n!CreateNvmeRemoteContr" + "ollerRequest\022M\n\026nvme_remote_controller\030\001" + " \001(\0132(.opi_api.storage.v1.NvmeRemoteCont" + "rollerB\003\340A\002\022&\n\031nvme_remote_controller_id" + "\030\002 \001(\tB\003\340A\001\"~\n!DeleteNvmeRemoteControlle" + "rRequest\022=\n\004name\030\001 \001(\tB/\340A\002\372A)\n\'opi_api." + "storage.v1/NvmeRemoteController\022\032\n\rallow" + "_missing\030\002 \001(\010B\003\340A\001\"\304\001\n!UpdateNvmeRemote" + "ControllerRequest\022M\n\026nvme_remote_control" + "ler\030\001 \001(\0132(.opi_api.storage.v1.NvmeRemot" + "eControllerB\003\340A\002\0224\n\013update_mask\030\002 \001(\0132\032." + "google.protobuf.FieldMaskB\003\340A\001\022\032\n\rallow_" + "missing\030\003 \001(\010B\003\340A\001\"\224\001\n ListNvmeRemoteCon" + "trollersRequest\022\?\n\006parent\030\001 \001(\tB/\340A\002\372A)\022" + "\'opi_api.storage.v1/NvmeRemoteController" + "\022\026\n\tpage_size\030\002 \001(\005B\003\340A\001\022\027\n\npage_token\030\003" + " \001(\tB\003\340A\001\"\207\001\n!ListNvmeRemoteControllersR" + "esponse\022I\n\027nvme_remote_controllers\030\001 \003(\013" + "2(.opi_api.storage.v1.NvmeRemoteControll" + "er\022\027\n\017next_page_token\030\002 \001(\t\"_\n\036GetNvmeRe" + "moteControllerRequest\022=\n\004name\030\001 \001(\tB/\340A\002" + "\372A)\n\'opi_api.storage.v1/NvmeRemoteContro" + "ller\"a\n ResetNvmeRemoteControllerRequest" + "\022=\n\004name\030\001 \001(\tB/\340A\002\372A)\n\'opi_api.storage." + "v1/NvmeRemoteController\"a\n StatsNvmeRemo" + "teControllerRequest\022=\n\004name\030\001 \001(\tB/\340A\002\372A" + ")\n\'opi_api.storage.v1/NvmeRemoteControll" + "er\"S\n!StatsNvmeRemoteControllerResponse\022" + ".\n\005stats\030\001 \001(\0132\037.opi_api.storage.v1.Volu" + "meStats\"\222\001\n\037ListNvmeRemoteNamespacesRequ" + "est\022>\n\006parent\030\001 \001(\tB.\340A\002\372A(\022&opi_api.sto" + "rage.v1/NvmeRemoteNamespace\022\026\n\tpage_size" + "\030\002 \001(\005B\003\340A\001\022\027\n\npage_token\030\003 \001(\tB\003\340A\001\"\204\001\n" + " ListNvmeRemoteNamespacesResponse\022G\n\026nvm" + "e_remote_namespaces\030\001 \003(\0132\'.opi_api.stor" + "age.v1.NvmeRemoteNamespace\022\027\n\017next_page_" + "token\030\002 \001(\t\"]\n\035GetNvmeRemoteNamespaceReq" + "uest\022<\n\004name\030\001 \001(\tB.\340A\002\372A(\n&opi_api.stor" + "age.v1/NvmeRemoteNamespace\"h\n\025CreateNvme" + "PathRequest\0224\n\tnvme_path\030\001 \001(\0132\034.opi_api" + ".storage.v1.NvmePathB\003\340A\002\022\031\n\014nvme_path_i" + "d\030\002 \001(\tB\003\340A\001\"f\n\025DeleteNvmePathRequest\0221\n" + "\004name\030\001 \001(\tB#\340A\002\372A\035\n\033opi_api.storage.v1/" + "NvmePath\022\032\n\rallow_missing\030\002 \001(\010B\003\340A\001\"\237\001\n" + "\025UpdateNvmePathRequest\0224\n\tnvme_path\030\001 \001(" + "\0132\034.opi_api.storage.v1.NvmePathB\003\340A\002\0224\n\013" + "update_mask\030\002 \001(\0132\032.google.protobuf.Fiel" + "dMaskB\003\340A\001\022\032\n\rallow_missing\030\003 \001(\010B\003\340A\001\"|" + "\n\024ListNvmePathsRequest\0223\n\006parent\030\001 \001(\tB#" + "\340A\002\372A\035\022\033opi_api.storage.v1/NvmePath\022\026\n\tp" + "age_size\030\002 \001(\005B\003\340A\001\022\027\n\npage_token\030\003 \001(\tB" + "\003\340A\001\"b\n\025ListNvmePathsResponse\0220\n\nnvme_pa" + "ths\030\001 \003(\0132\034.opi_api.storage.v1.NvmePath\022" + "\027\n\017next_page_token\030\002 \001(\t\"G\n\022GetNvmePathR" + "equest\0221\n\004name\030\001 \001(\tB#\340A\002\372A\035\n\033opi_api.st" + "orage.v1/NvmePath\"I\n\024StatsNvmePathReques" + "t\0221\n\004name\030\001 \001(\tB#\340A\002\372A\035\n\033opi_api.storage" + ".v1/NvmePath\"G\n\025StatsNvmePathResponse\022.\n" + "\005stats\030\001 \001(\0132\037.opi_api.storage.v1.Volume" + "Stats*\206\001\n\rNvmeMultipath\022\036\n\032NVME_MULTIPAT" + "H_UNSPECIFIED\020\000\022\032\n\026NVME_MULTIPATH_DISABL" + "E\020\001\022\033\n\027NVME_MULTIPATH_FAILOVER\020\002\022\034\n\030NVME" + "_MULTIPATH_MULTIPATH\020\0032\262\024\n\033NvmeRemoteCon" + "trollerService\022\353\001\n\032CreateNvmeRemoteContr" + "oller\0225.opi_api.storage.v1.CreateNvmeRem" + "oteControllerRequest\032(.opi_api.storage.v" + "1.NvmeRemoteController\"l\202\323\344\223\0023\"\031/v1/nvme" + "RemoteControllers:\026nvme_remote_controlle" + "r\332A0nvme_remote_controller,nvme_remote_c" + "ontroller_id\022\236\001\n\032DeleteNvmeRemoteControl" + "ler\0225.opi_api.storage.v1.DeleteNvmeRemot" + "eControllerRequest\032\026.google.protobuf.Emp" + "ty\"1\202\323\344\223\002$*\"/v1/{name=nvmeRemoteControll" + "ers/*}\332A\004name\022\375\001\n\032UpdateNvmeRemoteContro" + "ller\0225.opi_api.storage.v1.UpdateNvmeRemo" + "teControllerRequest\032(.opi_api.storage.v1" + ".NvmeRemoteController\"~\202\323\344\223\002S29/v1/{nvme" + "_remote_controller.name=nvmeRemoteContro" + "llers/*}:\026nvme_remote_controller\332A\"nvme_" + "remote_controller,update_mask\022\262\001\n\031ListNv" + "meRemoteControllers\0224.opi_api.storage.v1" + ".ListNvmeRemoteControllersRequest\0325.opi_" + "api.storage.v1.ListNvmeRemoteControllers" + "Response\"(\202\323\344\223\002\031\022\027/v1/{parent=subsystems" + "}\332A\006parent\022\252\001\n\027GetNvmeRemoteController\0222" + ".opi_api.storage.v1.GetNvmeRemoteControl" + "lerRequest\032(.opi_api.storage.v1.NvmeRemo" + "teController\"1\202\323\344\223\002$\022\"/v1/{name=nvmeRemo" + "teControllers/*}\332A\004name\022\245\001\n\031ResetNvmeRem" + "oteController\0224.opi_api.storage.v1.Reset" + "NvmeRemoteControllerRequest\032\026.google.pro" + "tobuf.Empty\":\202\323\344\223\002-\"(/v1/{name=nvmeRemot" + "eControllers/*}:reset:\001*\332A\004name\022\301\001\n\031Stat" + "sNvmeRemoteController\0224.opi_api.storage." + "v1.StatsNvmeRemoteControllerRequest\0325.op" + "i_api.storage.v1.StatsNvmeRemoteControll" + "erResponse\"7\202\323\344\223\002*\022(/v1/{name=nvmeRemote" + "Controllers/*}:stats\332A\004name\022\257\001\n\030ListNvme" + "RemoteNamespaces\0223.opi_api.storage.v1.Li" + "stNvmeRemoteNamespacesRequest\0324.opi_api." + "storage.v1.ListNvmeRemoteNamespacesRespo" + "nse\"(\202\323\344\223\002\031\022\027/v1/{parent=subsystems}\332A\006p" + "arent\022\246\001\n\026GetNvmeRemoteNamespace\0221.opi_a" + "pi.storage.v1.GetNvmeRemoteNamespaceRequ" + "est\032\'.opi_api.storage.v1.NvmeRemoteNames" + "pace\"0\202\323\344\223\002#\022!/v1/{name=nvmeRemoteNamesp" + "aces/*}\332A\004name\022\224\001\n\016CreateNvmePath\022).opi_" + "api.storage.v1.CreateNvmePathRequest\032\034.o" + "pi_api.storage.v1.NvmePath\"9\202\323\344\223\002\032\"\r/v1/" + "nvmePaths:\tnvme_path\332A\026nvme_path,nvme_pa" + "th_id\022z\n\016DeleteNvmePath\022).opi_api.storag" + "e.v1.DeleteNvmePathRequest\032\026.google.prot" + "obuf.Empty\"%\202\323\344\223\002\030*\026/v1/{name=nvmePaths/" + "*}\332A\004name\022\246\001\n\016UpdateNvmePath\022).opi_api.s" + "torage.v1.UpdateNvmePathRequest\032\034.opi_ap" + "i.storage.v1.NvmePath\"K\202\323\344\223\002-2 /v1/{nvme" + "_path.name=nvmePaths/*}:\tnvme_path\332A\025nvm" + "e_path,update_mask\022\216\001\n\rListNvmePaths\022(.o" + "pi_api.storage.v1.ListNvmePathsRequest\032)" + ".opi_api.storage.v1.ListNvmePathsRespons" + "e\"(\202\323\344\223\002\031\022\027/v1/{parent=subsystems}\332A\006par" + "ent\022z\n\013GetNvmePath\022&.opi_api.storage.v1." + "GetNvmePathRequest\032\034.opi_api.storage.v1." + "NvmePath\"%\202\323\344\223\002\030\022\026/v1/{name=nvmePaths/*}" + "\332A\004name\022\221\001\n\rStatsNvmePath\022(.opi_api.stor" + "age.v1.StatsNvmePathRequest\032).opi_api.st" + "orage.v1.StatsNvmePathResponse\"+\202\323\344\223\002\036\022\034" + "/v1/{name=nvmePaths/*}:stats\332A\004nameB_\n\022o" + "pi_api.storage.v1B\020BackendNvmeProtoP\001Z5g" + "ithub.com/opiproject/opi-api/storage/v1a" + "lpha1/gen/gob\006proto3" ; static const ::_pbi::DescriptorTable* const descriptor_table_backend_5fnvme_2eproto_deps[8] = { &::descriptor_table_google_2fapi_2fannotations_2eproto, @@ -845,9 +815,9 @@ static const ::_pbi::DescriptorTable* const descriptor_table_backend_5fnvme_2epr }; static ::_pbi::once_flag descriptor_table_backend_5fnvme_2eproto_once; const ::_pbi::DescriptorTable descriptor_table_backend_5fnvme_2eproto = { - false, false, 6724, descriptor_table_protodef_backend_5fnvme_2eproto, + false, false, 6620, descriptor_table_protodef_backend_5fnvme_2eproto, "backend_nvme.proto", - &descriptor_table_backend_5fnvme_2eproto_once, descriptor_table_backend_5fnvme_2eproto_deps, 8, 25, + &descriptor_table_backend_5fnvme_2eproto_once, descriptor_table_backend_5fnvme_2eproto_deps, 8, 24, schemas, file_default_instances, TableStruct_backend_5fnvme_2eproto::offsets, file_level_metadata_backend_5fnvme_2eproto, file_level_enum_descriptors_backend_5fnvme_2eproto, file_level_service_descriptors_backend_5fnvme_2eproto, @@ -900,6 +870,8 @@ NvmeRemoteController::NvmeRemoteController(const NvmeRemoteController& from) NvmeRemoteController* const _this = this; (void)_this; new (&_impl_) Impl_{ decltype(_impl_.name_){} + , decltype(_impl_.subnqn_){} + , decltype(_impl_.hostnqn_){} , decltype(_impl_.tcp_){nullptr} , decltype(_impl_.io_queues_count_){} , decltype(_impl_.queue_size_){} @@ -915,6 +887,22 @@ NvmeRemoteController::NvmeRemoteController(const NvmeRemoteController& from) _this->_impl_.name_.Set(from._internal_name(), _this->GetArenaForAllocation()); } + _impl_.subnqn_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.subnqn_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (!from._internal_subnqn().empty()) { + _this->_impl_.subnqn_.Set(from._internal_subnqn(), + _this->GetArenaForAllocation()); + } + _impl_.hostnqn_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.hostnqn_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (!from._internal_hostnqn().empty()) { + _this->_impl_.hostnqn_.Set(from._internal_hostnqn(), + _this->GetArenaForAllocation()); + } if (from._internal_has_tcp()) { _this->_impl_.tcp_ = new ::opi_api::storage::v1::TcpController(*from._impl_.tcp_); } @@ -930,6 +918,8 @@ inline void NvmeRemoteController::SharedCtor( (void)is_message_owned; new (&_impl_) Impl_{ decltype(_impl_.name_){} + , decltype(_impl_.subnqn_){} + , decltype(_impl_.hostnqn_){} , decltype(_impl_.tcp_){nullptr} , decltype(_impl_.io_queues_count_){int64_t{0}} , decltype(_impl_.queue_size_){int64_t{0}} @@ -940,6 +930,14 @@ inline void NvmeRemoteController::SharedCtor( #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING _impl_.name_.Set("", GetArenaForAllocation()); #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.subnqn_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.subnqn_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.hostnqn_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.hostnqn_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING } NvmeRemoteController::~NvmeRemoteController() { @@ -954,6 +952,8 @@ NvmeRemoteController::~NvmeRemoteController() { inline void NvmeRemoteController::SharedDtor() { GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); _impl_.name_.Destroy(); + _impl_.subnqn_.Destroy(); + _impl_.hostnqn_.Destroy(); if (this != internal_default_instance()) delete _impl_.tcp_; } @@ -968,6 +968,8 @@ void NvmeRemoteController::Clear() { (void) cached_has_bits; _impl_.name_.ClearToEmpty(); + _impl_.subnqn_.ClearToEmpty(); + _impl_.hostnqn_.ClearToEmpty(); if (GetArenaForAllocation() == nullptr && _impl_.tcp_ != nullptr) { delete _impl_.tcp_; } @@ -1003,25 +1005,45 @@ const char* NvmeRemoteController::_InternalParse(const char* ptr, ::_pbi::ParseC } else goto handle_unusual; continue; - // int64 io_queues_count = 3 [(.google.api.field_behavior) = OPTIONAL]; + // string subnqn = 3 [(.google.api.field_behavior) = OPTIONAL]; case 3: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 24)) { - _impl_.io_queues_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 26)) { + auto str = _internal_mutable_subnqn(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "opi_api.storage.v1.NvmeRemoteController.subnqn")); } else goto handle_unusual; continue; - // int64 queue_size = 4 [(.google.api.field_behavior) = OPTIONAL]; + // string hostnqn = 4 [(.google.api.field_behavior) = OPTIONAL]; case 4: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 32)) { - _impl_.queue_size_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 34)) { + auto str = _internal_mutable_hostnqn(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "opi_api.storage.v1.NvmeRemoteController.hostnqn")); } else goto handle_unusual; continue; - // .opi_api.storage.v1.TcpController tcp = 5 [(.google.api.field_behavior) = OPTIONAL]; + // int64 io_queues_count = 5 [(.google.api.field_behavior) = OPTIONAL]; case 5: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 42)) { + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 40)) { + _impl_.io_queues_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // int64 queue_size = 6 [(.google.api.field_behavior) = OPTIONAL]; + case 6: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 48)) { + _impl_.queue_size_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // .opi_api.storage.v1.TcpController tcp = 7 [(.google.api.field_behavior) = OPTIONAL]; + case 7: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 58)) { ptr = ctx->ParseMessage(_internal_mutable_tcp(), ptr); CHK_(ptr); } else @@ -1073,22 +1095,42 @@ uint8_t* NvmeRemoteController::_InternalSerialize( 2, this->_internal_multipath(), target); } - // int64 io_queues_count = 3 [(.google.api.field_behavior) = OPTIONAL]; + // string subnqn = 3 [(.google.api.field_behavior) = OPTIONAL]; + if (!this->_internal_subnqn().empty()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_subnqn().data(), static_cast(this->_internal_subnqn().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "opi_api.storage.v1.NvmeRemoteController.subnqn"); + target = stream->WriteStringMaybeAliased( + 3, this->_internal_subnqn(), target); + } + + // string hostnqn = 4 [(.google.api.field_behavior) = OPTIONAL]; + if (!this->_internal_hostnqn().empty()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_hostnqn().data(), static_cast(this->_internal_hostnqn().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "opi_api.storage.v1.NvmeRemoteController.hostnqn"); + target = stream->WriteStringMaybeAliased( + 4, this->_internal_hostnqn(), target); + } + + // int64 io_queues_count = 5 [(.google.api.field_behavior) = OPTIONAL]; if (this->_internal_io_queues_count() != 0) { target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteInt64ToArray(3, this->_internal_io_queues_count(), target); + target = ::_pbi::WireFormatLite::WriteInt64ToArray(5, this->_internal_io_queues_count(), target); } - // int64 queue_size = 4 [(.google.api.field_behavior) = OPTIONAL]; + // int64 queue_size = 6 [(.google.api.field_behavior) = OPTIONAL]; if (this->_internal_queue_size() != 0) { target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteInt64ToArray(4, this->_internal_queue_size(), target); + target = ::_pbi::WireFormatLite::WriteInt64ToArray(6, this->_internal_queue_size(), target); } - // .opi_api.storage.v1.TcpController tcp = 5 [(.google.api.field_behavior) = OPTIONAL]; + // .opi_api.storage.v1.TcpController tcp = 7 [(.google.api.field_behavior) = OPTIONAL]; if (this->_internal_has_tcp()) { target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(5, _Internal::tcp(this), + InternalWriteMessage(7, _Internal::tcp(this), _Internal::tcp(this).GetCachedSize(), target, stream); } @@ -1115,19 +1157,33 @@ size_t NvmeRemoteController::ByteSizeLong() const { this->_internal_name()); } - // .opi_api.storage.v1.TcpController tcp = 5 [(.google.api.field_behavior) = OPTIONAL]; + // string subnqn = 3 [(.google.api.field_behavior) = OPTIONAL]; + if (!this->_internal_subnqn().empty()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_subnqn()); + } + + // string hostnqn = 4 [(.google.api.field_behavior) = OPTIONAL]; + if (!this->_internal_hostnqn().empty()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_hostnqn()); + } + + // .opi_api.storage.v1.TcpController tcp = 7 [(.google.api.field_behavior) = OPTIONAL]; if (this->_internal_has_tcp()) { total_size += 1 + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( *_impl_.tcp_); } - // int64 io_queues_count = 3 [(.google.api.field_behavior) = OPTIONAL]; + // int64 io_queues_count = 5 [(.google.api.field_behavior) = OPTIONAL]; if (this->_internal_io_queues_count() != 0) { total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_io_queues_count()); } - // int64 queue_size = 4 [(.google.api.field_behavior) = OPTIONAL]; + // int64 queue_size = 6 [(.google.api.field_behavior) = OPTIONAL]; if (this->_internal_queue_size() != 0) { total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_queue_size()); } @@ -1159,6 +1215,12 @@ void NvmeRemoteController::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, c if (!from._internal_name().empty()) { _this->_internal_set_name(from._internal_name()); } + if (!from._internal_subnqn().empty()) { + _this->_internal_set_subnqn(from._internal_subnqn()); + } + if (!from._internal_hostnqn().empty()) { + _this->_internal_set_hostnqn(from._internal_hostnqn()); + } if (from._internal_has_tcp()) { _this->_internal_mutable_tcp()->::opi_api::storage::v1::TcpController::MergeFrom( from._internal_tcp()); @@ -1195,6 +1257,14 @@ void NvmeRemoteController::InternalSwap(NvmeRemoteController* other) { &_impl_.name_, lhs_arena, &other->_impl_.name_, rhs_arena ); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.subnqn_, lhs_arena, + &other->_impl_.subnqn_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.hostnqn_, lhs_arena, + &other->_impl_.hostnqn_, rhs_arena + ); ::PROTOBUF_NAMESPACE_ID::internal::memswap< PROTOBUF_FIELD_OFFSET(NvmeRemoteController, _impl_.multipath_) + sizeof(NvmeRemoteController::_impl_.multipath_) @@ -1471,12 +1541,65 @@ ::PROTOBUF_NAMESPACE_ID::Metadata TcpController::GetMetadata() const { class NvmePath::_Internal { public: - static const ::opi_api::storage::v1::FabricsPath& fabrics(const NvmePath* msg); + static const ::opi_api::storage::v1::PciEndpoint& pcie(const NvmePath* msg); + static const ::opi_api::storage::v1::FabricsEndpoint& fabrics(const NvmePath* msg); }; -const ::opi_api::storage::v1::FabricsPath& +const ::opi_api::storage::v1::PciEndpoint& +NvmePath::_Internal::pcie(const NvmePath* msg) { + return *msg->_impl_.endpoint_.pcie_; +} +const ::opi_api::storage::v1::FabricsEndpoint& NvmePath::_Internal::fabrics(const NvmePath* msg) { - return *msg->_impl_.fabrics_; + return *msg->_impl_.endpoint_.fabrics_; +} +void NvmePath::set_allocated_pcie(::opi_api::storage::v1::PciEndpoint* pcie) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + clear_endpoint(); + if (pcie) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena( + reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(pcie)); + if (message_arena != submessage_arena) { + pcie = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, pcie, submessage_arena); + } + set_has_pcie(); + _impl_.endpoint_.pcie_ = pcie; + } + // @@protoc_insertion_point(field_set_allocated:opi_api.storage.v1.NvmePath.pcie) +} +void NvmePath::clear_pcie() { + if (_internal_has_pcie()) { + if (GetArenaForAllocation() == nullptr) { + delete _impl_.endpoint_.pcie_; + } + clear_has_endpoint(); + } +} +void NvmePath::set_allocated_fabrics(::opi_api::storage::v1::FabricsEndpoint* fabrics) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + clear_endpoint(); + if (fabrics) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena( + reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(fabrics)); + if (message_arena != submessage_arena) { + fabrics = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, fabrics, submessage_arena); + } + set_has_fabrics(); + _impl_.endpoint_.fabrics_ = fabrics; + } + // @@protoc_insertion_point(field_set_allocated:opi_api.storage.v1.NvmePath.fabrics) +} +void NvmePath::clear_fabrics() { + if (_internal_has_fabrics()) { + if (GetArenaForAllocation() == nullptr) { + delete _impl_.endpoint_.fabrics_; + } + clear_has_endpoint(); + } } NvmePath::NvmePath(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned) @@ -1490,10 +1613,10 @@ NvmePath::NvmePath(const NvmePath& from) new (&_impl_) Impl_{ decltype(_impl_.name_){} , decltype(_impl_.controller_name_ref_){} - , decltype(_impl_.traddr_){} - , decltype(_impl_.fabrics_){nullptr} , decltype(_impl_.trtype_){} - , /*decltype(_impl_._cached_size_)*/{}}; + , decltype(_impl_.endpoint_){} + , /*decltype(_impl_._cached_size_)*/{} + , /*decltype(_impl_._oneof_case_)*/{}}; _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); _impl_.name_.InitDefault(); @@ -1512,18 +1635,23 @@ NvmePath::NvmePath(const NvmePath& from) _this->_impl_.controller_name_ref_.Set(from._internal_controller_name_ref(), _this->GetArenaForAllocation()); } - _impl_.traddr_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.traddr_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (!from._internal_traddr().empty()) { - _this->_impl_.traddr_.Set(from._internal_traddr(), - _this->GetArenaForAllocation()); - } - if (from._internal_has_fabrics()) { - _this->_impl_.fabrics_ = new ::opi_api::storage::v1::FabricsPath(*from._impl_.fabrics_); - } _this->_impl_.trtype_ = from._impl_.trtype_; + clear_has_endpoint(); + switch (from.endpoint_case()) { + case kPcie: { + _this->_internal_mutable_pcie()->::opi_api::storage::v1::PciEndpoint::MergeFrom( + from._internal_pcie()); + break; + } + case kFabrics: { + _this->_internal_mutable_fabrics()->::opi_api::storage::v1::FabricsEndpoint::MergeFrom( + from._internal_fabrics()); + break; + } + case ENDPOINT_NOT_SET: { + break; + } + } // @@protoc_insertion_point(copy_constructor:opi_api.storage.v1.NvmePath) } @@ -1534,10 +1662,10 @@ inline void NvmePath::SharedCtor( new (&_impl_) Impl_{ decltype(_impl_.name_){} , decltype(_impl_.controller_name_ref_){} - , decltype(_impl_.traddr_){} - , decltype(_impl_.fabrics_){nullptr} , decltype(_impl_.trtype_){0} + , decltype(_impl_.endpoint_){} , /*decltype(_impl_._cached_size_)*/{} + , /*decltype(_impl_._oneof_case_)*/{} }; _impl_.name_.InitDefault(); #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING @@ -1547,10 +1675,7 @@ inline void NvmePath::SharedCtor( #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING _impl_.controller_name_ref_.Set("", GetArenaForAllocation()); #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.traddr_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.traddr_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + clear_has_endpoint(); } NvmePath::~NvmePath() { @@ -1566,14 +1691,38 @@ inline void NvmePath::SharedDtor() { GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); _impl_.name_.Destroy(); _impl_.controller_name_ref_.Destroy(); - _impl_.traddr_.Destroy(); - if (this != internal_default_instance()) delete _impl_.fabrics_; + if (has_endpoint()) { + clear_endpoint(); + } } void NvmePath::SetCachedSize(int size) const { _impl_._cached_size_.Set(size); } +void NvmePath::clear_endpoint() { +// @@protoc_insertion_point(one_of_clear_start:opi_api.storage.v1.NvmePath) + switch (endpoint_case()) { + case kPcie: { + if (GetArenaForAllocation() == nullptr) { + delete _impl_.endpoint_.pcie_; + } + break; + } + case kFabrics: { + if (GetArenaForAllocation() == nullptr) { + delete _impl_.endpoint_.fabrics_; + } + break; + } + case ENDPOINT_NOT_SET: { + break; + } + } + _impl_._oneof_case_[0] = ENDPOINT_NOT_SET; +} + + void NvmePath::Clear() { // @@protoc_insertion_point(message_clear_start:opi_api.storage.v1.NvmePath) uint32_t cached_has_bits = 0; @@ -1582,12 +1731,8 @@ void NvmePath::Clear() { _impl_.name_.ClearToEmpty(); _impl_.controller_name_ref_.ClearToEmpty(); - _impl_.traddr_.ClearToEmpty(); - if (GetArenaForAllocation() == nullptr && _impl_.fabrics_ != nullptr) { - delete _impl_.fabrics_; - } - _impl_.fabrics_ = nullptr; _impl_.trtype_ = 0; + clear_endpoint(); _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } @@ -1626,17 +1771,15 @@ const char* NvmePath::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) } else goto handle_unusual; continue; - // string traddr = 4 [(.google.api.field_behavior) = REQUIRED]; + // .opi_api.storage.v1.PciEndpoint pcie = 4 [(.google.api.field_behavior) = OPTIONAL]; case 4: if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 34)) { - auto str = _internal_mutable_traddr(); - ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + ptr = ctx->ParseMessage(_internal_mutable_pcie(), ptr); CHK_(ptr); - CHK_(::_pbi::VerifyUTF8(str, "opi_api.storage.v1.NvmePath.traddr")); } else goto handle_unusual; continue; - // .opi_api.storage.v1.FabricsPath fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; + // .opi_api.storage.v1.FabricsEndpoint fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; case 5: if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 42)) { ptr = ctx->ParseMessage(_internal_mutable_fabrics(), ptr); @@ -1700,18 +1843,15 @@ uint8_t* NvmePath::_InternalSerialize( 3, this->_internal_trtype(), target); } - // string traddr = 4 [(.google.api.field_behavior) = REQUIRED]; - if (!this->_internal_traddr().empty()) { - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( - this->_internal_traddr().data(), static_cast(this->_internal_traddr().length()), - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, - "opi_api.storage.v1.NvmePath.traddr"); - target = stream->WriteStringMaybeAliased( - 4, this->_internal_traddr(), target); + // .opi_api.storage.v1.PciEndpoint pcie = 4 [(.google.api.field_behavior) = OPTIONAL]; + if (_internal_has_pcie()) { + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(4, _Internal::pcie(this), + _Internal::pcie(this).GetCachedSize(), target, stream); } - // .opi_api.storage.v1.FabricsPath fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; - if (this->_internal_has_fabrics()) { + // .opi_api.storage.v1.FabricsEndpoint fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; + if (_internal_has_fabrics()) { target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: InternalWriteMessage(5, _Internal::fabrics(this), _Internal::fabrics(this).GetCachedSize(), target, stream); @@ -1747,26 +1887,31 @@ size_t NvmePath::ByteSizeLong() const { this->_internal_controller_name_ref()); } - // string traddr = 4 [(.google.api.field_behavior) = REQUIRED]; - if (!this->_internal_traddr().empty()) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( - this->_internal_traddr()); - } - - // .opi_api.storage.v1.FabricsPath fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; - if (this->_internal_has_fabrics()) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *_impl_.fabrics_); - } - // .opi_api.storage.v1.NvmeTransportType trtype = 3 [(.google.api.field_behavior) = REQUIRED]; if (this->_internal_trtype() != 0) { total_size += 1 + ::_pbi::WireFormatLite::EnumSize(this->_internal_trtype()); } + switch (endpoint_case()) { + // .opi_api.storage.v1.PciEndpoint pcie = 4 [(.google.api.field_behavior) = OPTIONAL]; + case kPcie: { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *_impl_.endpoint_.pcie_); + break; + } + // .opi_api.storage.v1.FabricsEndpoint fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; + case kFabrics: { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *_impl_.endpoint_.fabrics_); + break; + } + case ENDPOINT_NOT_SET: { + break; + } + } return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); } @@ -1791,16 +1936,24 @@ void NvmePath::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTO if (!from._internal_controller_name_ref().empty()) { _this->_internal_set_controller_name_ref(from._internal_controller_name_ref()); } - if (!from._internal_traddr().empty()) { - _this->_internal_set_traddr(from._internal_traddr()); - } - if (from._internal_has_fabrics()) { - _this->_internal_mutable_fabrics()->::opi_api::storage::v1::FabricsPath::MergeFrom( - from._internal_fabrics()); - } if (from._internal_trtype() != 0) { _this->_internal_set_trtype(from._internal_trtype()); } + switch (from.endpoint_case()) { + case kPcie: { + _this->_internal_mutable_pcie()->::opi_api::storage::v1::PciEndpoint::MergeFrom( + from._internal_pcie()); + break; + } + case kFabrics: { + _this->_internal_mutable_fabrics()->::opi_api::storage::v1::FabricsEndpoint::MergeFrom( + from._internal_fabrics()); + break; + } + case ENDPOINT_NOT_SET: { + break; + } + } _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); } @@ -1828,16 +1981,9 @@ void NvmePath::InternalSwap(NvmePath* other) { &_impl_.controller_name_ref_, lhs_arena, &other->_impl_.controller_name_ref_, rhs_arena ); - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( - &_impl_.traddr_, lhs_arena, - &other->_impl_.traddr_, rhs_arena - ); - ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(NvmePath, _impl_.trtype_) - + sizeof(NvmePath::_impl_.trtype_) - - PROTOBUF_FIELD_OFFSET(NvmePath, _impl_.fabrics_)>( - reinterpret_cast(&_impl_.fabrics_), - reinterpret_cast(&other->_impl_.fabrics_)); + swap(_impl_.trtype_, other->_impl_.trtype_); + swap(_impl_.endpoint_, other->_impl_.endpoint_); + swap(_impl_._oneof_case_[0], other->_impl_._oneof_case_[0]); } ::PROTOBUF_NAMESPACE_ID::Metadata NvmePath::GetMetadata() const { @@ -1848,396 +1994,6 @@ ::PROTOBUF_NAMESPACE_ID::Metadata NvmePath::GetMetadata() const { // =================================================================== -class FabricsPath::_Internal { - public: -}; - -FabricsPath::FabricsPath(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:opi_api.storage.v1.FabricsPath) -} -FabricsPath::FabricsPath(const FabricsPath& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - FabricsPath* const _this = this; (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_.subnqn_){} - , decltype(_impl_.source_traddr_){} - , decltype(_impl_.hostnqn_){} - , decltype(_impl_.trsvcid_){} - , decltype(_impl_.source_trsvcid_){} - , decltype(_impl_.adrfam_){} - , /*decltype(_impl_._cached_size_)*/{}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - _impl_.subnqn_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.subnqn_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (!from._internal_subnqn().empty()) { - _this->_impl_.subnqn_.Set(from._internal_subnqn(), - _this->GetArenaForAllocation()); - } - _impl_.source_traddr_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.source_traddr_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (!from._internal_source_traddr().empty()) { - _this->_impl_.source_traddr_.Set(from._internal_source_traddr(), - _this->GetArenaForAllocation()); - } - _impl_.hostnqn_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.hostnqn_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (!from._internal_hostnqn().empty()) { - _this->_impl_.hostnqn_.Set(from._internal_hostnqn(), - _this->GetArenaForAllocation()); - } - ::memcpy(&_impl_.trsvcid_, &from._impl_.trsvcid_, - static_cast(reinterpret_cast(&_impl_.adrfam_) - - reinterpret_cast(&_impl_.trsvcid_)) + sizeof(_impl_.adrfam_)); - // @@protoc_insertion_point(copy_constructor:opi_api.storage.v1.FabricsPath) -} - -inline void FabricsPath::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_.subnqn_){} - , decltype(_impl_.source_traddr_){} - , decltype(_impl_.hostnqn_){} - , decltype(_impl_.trsvcid_){int64_t{0}} - , decltype(_impl_.source_trsvcid_){int64_t{0}} - , decltype(_impl_.adrfam_){0} - , /*decltype(_impl_._cached_size_)*/{} - }; - _impl_.subnqn_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.subnqn_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.source_traddr_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.source_traddr_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.hostnqn_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.hostnqn_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING -} - -FabricsPath::~FabricsPath() { - // @@protoc_insertion_point(destructor:opi_api.storage.v1.FabricsPath) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void FabricsPath::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); - _impl_.subnqn_.Destroy(); - _impl_.source_traddr_.Destroy(); - _impl_.hostnqn_.Destroy(); -} - -void FabricsPath::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void FabricsPath::Clear() { -// @@protoc_insertion_point(message_clear_start:opi_api.storage.v1.FabricsPath) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - _impl_.subnqn_.ClearToEmpty(); - _impl_.source_traddr_.ClearToEmpty(); - _impl_.hostnqn_.ClearToEmpty(); - ::memset(&_impl_.trsvcid_, 0, static_cast( - reinterpret_cast(&_impl_.adrfam_) - - reinterpret_cast(&_impl_.trsvcid_)) + sizeof(_impl_.adrfam_)); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* FabricsPath::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // int64 trsvcid = 1 [(.google.api.field_behavior) = REQUIRED]; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - _impl_.trsvcid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // string subnqn = 2 [(.google.api.field_behavior) = REQUIRED]; - case 2: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 18)) { - auto str = _internal_mutable_subnqn(); - ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); - CHK_(ptr); - CHK_(::_pbi::VerifyUTF8(str, "opi_api.storage.v1.FabricsPath.subnqn")); - } else - goto handle_unusual; - continue; - // .opi_api.storage.v1.NvmeAddressFamily adrfam = 3 [(.google.api.field_behavior) = REQUIRED]; - case 3: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 24)) { - uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - _internal_set_adrfam(static_cast<::opi_api::storage::v1::NvmeAddressFamily>(val)); - } else - goto handle_unusual; - continue; - // string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; - case 4: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 34)) { - auto str = _internal_mutable_source_traddr(); - ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); - CHK_(ptr); - CHK_(::_pbi::VerifyUTF8(str, "opi_api.storage.v1.FabricsPath.source_traddr")); - } else - goto handle_unusual; - continue; - // int64 source_trsvcid = 5 [(.google.api.field_behavior) = OPTIONAL]; - case 5: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 40)) { - _impl_.source_trsvcid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // string hostnqn = 6 [(.google.api.field_behavior) = OPTIONAL]; - case 6: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 50)) { - auto str = _internal_mutable_hostnqn(); - ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); - CHK_(ptr); - CHK_(::_pbi::VerifyUTF8(str, "opi_api.storage.v1.FabricsPath.hostnqn")); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch - handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* FabricsPath::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:opi_api.storage.v1.FabricsPath) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - // int64 trsvcid = 1 [(.google.api.field_behavior) = REQUIRED]; - if (this->_internal_trsvcid() != 0) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteInt64ToArray(1, this->_internal_trsvcid(), target); - } - - // string subnqn = 2 [(.google.api.field_behavior) = REQUIRED]; - if (!this->_internal_subnqn().empty()) { - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( - this->_internal_subnqn().data(), static_cast(this->_internal_subnqn().length()), - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, - "opi_api.storage.v1.FabricsPath.subnqn"); - target = stream->WriteStringMaybeAliased( - 2, this->_internal_subnqn(), target); - } - - // .opi_api.storage.v1.NvmeAddressFamily adrfam = 3 [(.google.api.field_behavior) = REQUIRED]; - if (this->_internal_adrfam() != 0) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteEnumToArray( - 3, this->_internal_adrfam(), target); - } - - // string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; - if (!this->_internal_source_traddr().empty()) { - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( - this->_internal_source_traddr().data(), static_cast(this->_internal_source_traddr().length()), - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, - "opi_api.storage.v1.FabricsPath.source_traddr"); - target = stream->WriteStringMaybeAliased( - 4, this->_internal_source_traddr(), target); - } - - // int64 source_trsvcid = 5 [(.google.api.field_behavior) = OPTIONAL]; - if (this->_internal_source_trsvcid() != 0) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteInt64ToArray(5, this->_internal_source_trsvcid(), target); - } - - // string hostnqn = 6 [(.google.api.field_behavior) = OPTIONAL]; - if (!this->_internal_hostnqn().empty()) { - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( - this->_internal_hostnqn().data(), static_cast(this->_internal_hostnqn().length()), - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, - "opi_api.storage.v1.FabricsPath.hostnqn"); - target = stream->WriteStringMaybeAliased( - 6, this->_internal_hostnqn(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:opi_api.storage.v1.FabricsPath) - return target; -} - -size_t FabricsPath::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:opi_api.storage.v1.FabricsPath) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // string subnqn = 2 [(.google.api.field_behavior) = REQUIRED]; - if (!this->_internal_subnqn().empty()) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( - this->_internal_subnqn()); - } - - // string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; - if (!this->_internal_source_traddr().empty()) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( - this->_internal_source_traddr()); - } - - // string hostnqn = 6 [(.google.api.field_behavior) = OPTIONAL]; - if (!this->_internal_hostnqn().empty()) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( - this->_internal_hostnqn()); - } - - // int64 trsvcid = 1 [(.google.api.field_behavior) = REQUIRED]; - if (this->_internal_trsvcid() != 0) { - total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_trsvcid()); - } - - // int64 source_trsvcid = 5 [(.google.api.field_behavior) = OPTIONAL]; - if (this->_internal_source_trsvcid() != 0) { - total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_source_trsvcid()); - } - - // .opi_api.storage.v1.NvmeAddressFamily adrfam = 3 [(.google.api.field_behavior) = REQUIRED]; - if (this->_internal_adrfam() != 0) { - total_size += 1 + - ::_pbi::WireFormatLite::EnumSize(this->_internal_adrfam()); - } - - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData FabricsPath::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - FabricsPath::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*FabricsPath::GetClassData() const { return &_class_data_; } - - -void FabricsPath::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:opi_api.storage.v1.FabricsPath) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - if (!from._internal_subnqn().empty()) { - _this->_internal_set_subnqn(from._internal_subnqn()); - } - if (!from._internal_source_traddr().empty()) { - _this->_internal_set_source_traddr(from._internal_source_traddr()); - } - if (!from._internal_hostnqn().empty()) { - _this->_internal_set_hostnqn(from._internal_hostnqn()); - } - if (from._internal_trsvcid() != 0) { - _this->_internal_set_trsvcid(from._internal_trsvcid()); - } - if (from._internal_source_trsvcid() != 0) { - _this->_internal_set_source_trsvcid(from._internal_source_trsvcid()); - } - if (from._internal_adrfam() != 0) { - _this->_internal_set_adrfam(from._internal_adrfam()); - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void FabricsPath::CopyFrom(const FabricsPath& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:opi_api.storage.v1.FabricsPath) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool FabricsPath::IsInitialized() const { - return true; -} - -void FabricsPath::InternalSwap(FabricsPath* other) { - using std::swap; - auto* lhs_arena = GetArenaForAllocation(); - auto* rhs_arena = other->GetArenaForAllocation(); - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( - &_impl_.subnqn_, lhs_arena, - &other->_impl_.subnqn_, rhs_arena - ); - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( - &_impl_.source_traddr_, lhs_arena, - &other->_impl_.source_traddr_, rhs_arena - ); - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( - &_impl_.hostnqn_, lhs_arena, - &other->_impl_.hostnqn_, rhs_arena - ); - ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(FabricsPath, _impl_.adrfam_) - + sizeof(FabricsPath::_impl_.adrfam_) - - PROTOBUF_FIELD_OFFSET(FabricsPath, _impl_.trsvcid_)>( - reinterpret_cast(&_impl_.trsvcid_), - reinterpret_cast(&other->_impl_.trsvcid_)); -} - -::PROTOBUF_NAMESPACE_ID::Metadata FabricsPath::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_backend_5fnvme_2eproto_getter, &descriptor_table_backend_5fnvme_2eproto_once, - file_level_metadata_backend_5fnvme_2eproto[3]); -} - -// =================================================================== - class NvmeRemoteNamespace::_Internal { public: static const ::opi_api::common::v1::Uuid& uuid(const NvmeRemoteNamespace* msg); @@ -2643,7 +2399,7 @@ void NvmeRemoteNamespace::InternalSwap(NvmeRemoteNamespace* other) { ::PROTOBUF_NAMESPACE_ID::Metadata NvmeRemoteNamespace::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_backend_5fnvme_2eproto_getter, &descriptor_table_backend_5fnvme_2eproto_once, - file_level_metadata_backend_5fnvme_2eproto[4]); + file_level_metadata_backend_5fnvme_2eproto[3]); } // =================================================================== @@ -2888,7 +2644,7 @@ void CreateNvmeRemoteControllerRequest::InternalSwap(CreateNvmeRemoteControllerR ::PROTOBUF_NAMESPACE_ID::Metadata CreateNvmeRemoteControllerRequest::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_backend_5fnvme_2eproto_getter, &descriptor_table_backend_5fnvme_2eproto_once, - file_level_metadata_backend_5fnvme_2eproto[5]); + file_level_metadata_backend_5fnvme_2eproto[4]); } // =================================================================== @@ -3118,7 +2874,7 @@ void DeleteNvmeRemoteControllerRequest::InternalSwap(DeleteNvmeRemoteControllerR ::PROTOBUF_NAMESPACE_ID::Metadata DeleteNvmeRemoteControllerRequest::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_backend_5fnvme_2eproto_getter, &descriptor_table_backend_5fnvme_2eproto_once, - file_level_metadata_backend_5fnvme_2eproto[6]); + file_level_metadata_backend_5fnvme_2eproto[5]); } // =================================================================== @@ -3389,7 +3145,7 @@ void UpdateNvmeRemoteControllerRequest::InternalSwap(UpdateNvmeRemoteControllerR ::PROTOBUF_NAMESPACE_ID::Metadata UpdateNvmeRemoteControllerRequest::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_backend_5fnvme_2eproto_getter, &descriptor_table_backend_5fnvme_2eproto_once, - file_level_metadata_backend_5fnvme_2eproto[7]); + file_level_metadata_backend_5fnvme_2eproto[6]); } // =================================================================== @@ -3669,7 +3425,7 @@ void ListNvmeRemoteControllersRequest::InternalSwap(ListNvmeRemoteControllersReq ::PROTOBUF_NAMESPACE_ID::Metadata ListNvmeRemoteControllersRequest::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_backend_5fnvme_2eproto_getter, &descriptor_table_backend_5fnvme_2eproto_once, - file_level_metadata_backend_5fnvme_2eproto[8]); + file_level_metadata_backend_5fnvme_2eproto[7]); } // =================================================================== @@ -3906,7 +3662,7 @@ void ListNvmeRemoteControllersResponse::InternalSwap(ListNvmeRemoteControllersRe ::PROTOBUF_NAMESPACE_ID::Metadata ListNvmeRemoteControllersResponse::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_backend_5fnvme_2eproto_getter, &descriptor_table_backend_5fnvme_2eproto_once, - file_level_metadata_backend_5fnvme_2eproto[9]); + file_level_metadata_backend_5fnvme_2eproto[8]); } // =================================================================== @@ -4109,7 +3865,7 @@ void GetNvmeRemoteControllerRequest::InternalSwap(GetNvmeRemoteControllerRequest ::PROTOBUF_NAMESPACE_ID::Metadata GetNvmeRemoteControllerRequest::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_backend_5fnvme_2eproto_getter, &descriptor_table_backend_5fnvme_2eproto_once, - file_level_metadata_backend_5fnvme_2eproto[10]); + file_level_metadata_backend_5fnvme_2eproto[9]); } // =================================================================== @@ -4312,7 +4068,7 @@ void ResetNvmeRemoteControllerRequest::InternalSwap(ResetNvmeRemoteControllerReq ::PROTOBUF_NAMESPACE_ID::Metadata ResetNvmeRemoteControllerRequest::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_backend_5fnvme_2eproto_getter, &descriptor_table_backend_5fnvme_2eproto_once, - file_level_metadata_backend_5fnvme_2eproto[11]); + file_level_metadata_backend_5fnvme_2eproto[10]); } // =================================================================== @@ -4515,7 +4271,7 @@ void StatsNvmeRemoteControllerRequest::InternalSwap(StatsNvmeRemoteControllerReq ::PROTOBUF_NAMESPACE_ID::Metadata StatsNvmeRemoteControllerRequest::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_backend_5fnvme_2eproto_getter, &descriptor_table_backend_5fnvme_2eproto_once, - file_level_metadata_backend_5fnvme_2eproto[12]); + file_level_metadata_backend_5fnvme_2eproto[11]); } // =================================================================== @@ -4714,7 +4470,7 @@ void StatsNvmeRemoteControllerResponse::InternalSwap(StatsNvmeRemoteControllerRe ::PROTOBUF_NAMESPACE_ID::Metadata StatsNvmeRemoteControllerResponse::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_backend_5fnvme_2eproto_getter, &descriptor_table_backend_5fnvme_2eproto_once, - file_level_metadata_backend_5fnvme_2eproto[13]); + file_level_metadata_backend_5fnvme_2eproto[12]); } // =================================================================== @@ -4994,7 +4750,7 @@ void ListNvmeRemoteNamespacesRequest::InternalSwap(ListNvmeRemoteNamespacesReque ::PROTOBUF_NAMESPACE_ID::Metadata ListNvmeRemoteNamespacesRequest::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_backend_5fnvme_2eproto_getter, &descriptor_table_backend_5fnvme_2eproto_once, - file_level_metadata_backend_5fnvme_2eproto[14]); + file_level_metadata_backend_5fnvme_2eproto[13]); } // =================================================================== @@ -5231,7 +4987,7 @@ void ListNvmeRemoteNamespacesResponse::InternalSwap(ListNvmeRemoteNamespacesResp ::PROTOBUF_NAMESPACE_ID::Metadata ListNvmeRemoteNamespacesResponse::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_backend_5fnvme_2eproto_getter, &descriptor_table_backend_5fnvme_2eproto_once, - file_level_metadata_backend_5fnvme_2eproto[15]); + file_level_metadata_backend_5fnvme_2eproto[14]); } // =================================================================== @@ -5434,7 +5190,7 @@ void GetNvmeRemoteNamespaceRequest::InternalSwap(GetNvmeRemoteNamespaceRequest* ::PROTOBUF_NAMESPACE_ID::Metadata GetNvmeRemoteNamespaceRequest::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_backend_5fnvme_2eproto_getter, &descriptor_table_backend_5fnvme_2eproto_once, - file_level_metadata_backend_5fnvme_2eproto[16]); + file_level_metadata_backend_5fnvme_2eproto[15]); } // =================================================================== @@ -5679,7 +5435,7 @@ void CreateNvmePathRequest::InternalSwap(CreateNvmePathRequest* other) { ::PROTOBUF_NAMESPACE_ID::Metadata CreateNvmePathRequest::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_backend_5fnvme_2eproto_getter, &descriptor_table_backend_5fnvme_2eproto_once, - file_level_metadata_backend_5fnvme_2eproto[17]); + file_level_metadata_backend_5fnvme_2eproto[16]); } // =================================================================== @@ -5909,7 +5665,7 @@ void DeleteNvmePathRequest::InternalSwap(DeleteNvmePathRequest* other) { ::PROTOBUF_NAMESPACE_ID::Metadata DeleteNvmePathRequest::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_backend_5fnvme_2eproto_getter, &descriptor_table_backend_5fnvme_2eproto_once, - file_level_metadata_backend_5fnvme_2eproto[18]); + file_level_metadata_backend_5fnvme_2eproto[17]); } // =================================================================== @@ -6180,7 +5936,7 @@ void UpdateNvmePathRequest::InternalSwap(UpdateNvmePathRequest* other) { ::PROTOBUF_NAMESPACE_ID::Metadata UpdateNvmePathRequest::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_backend_5fnvme_2eproto_getter, &descriptor_table_backend_5fnvme_2eproto_once, - file_level_metadata_backend_5fnvme_2eproto[19]); + file_level_metadata_backend_5fnvme_2eproto[18]); } // =================================================================== @@ -6460,7 +6216,7 @@ void ListNvmePathsRequest::InternalSwap(ListNvmePathsRequest* other) { ::PROTOBUF_NAMESPACE_ID::Metadata ListNvmePathsRequest::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_backend_5fnvme_2eproto_getter, &descriptor_table_backend_5fnvme_2eproto_once, - file_level_metadata_backend_5fnvme_2eproto[20]); + file_level_metadata_backend_5fnvme_2eproto[19]); } // =================================================================== @@ -6697,7 +6453,7 @@ void ListNvmePathsResponse::InternalSwap(ListNvmePathsResponse* other) { ::PROTOBUF_NAMESPACE_ID::Metadata ListNvmePathsResponse::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_backend_5fnvme_2eproto_getter, &descriptor_table_backend_5fnvme_2eproto_once, - file_level_metadata_backend_5fnvme_2eproto[21]); + file_level_metadata_backend_5fnvme_2eproto[20]); } // =================================================================== @@ -6900,7 +6656,7 @@ void GetNvmePathRequest::InternalSwap(GetNvmePathRequest* other) { ::PROTOBUF_NAMESPACE_ID::Metadata GetNvmePathRequest::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_backend_5fnvme_2eproto_getter, &descriptor_table_backend_5fnvme_2eproto_once, - file_level_metadata_backend_5fnvme_2eproto[22]); + file_level_metadata_backend_5fnvme_2eproto[21]); } // =================================================================== @@ -7103,7 +6859,7 @@ void StatsNvmePathRequest::InternalSwap(StatsNvmePathRequest* other) { ::PROTOBUF_NAMESPACE_ID::Metadata StatsNvmePathRequest::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_backend_5fnvme_2eproto_getter, &descriptor_table_backend_5fnvme_2eproto_once, - file_level_metadata_backend_5fnvme_2eproto[23]); + file_level_metadata_backend_5fnvme_2eproto[22]); } // =================================================================== @@ -7302,7 +7058,7 @@ void StatsNvmePathResponse::InternalSwap(StatsNvmePathResponse* other) { ::PROTOBUF_NAMESPACE_ID::Metadata StatsNvmePathResponse::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_backend_5fnvme_2eproto_getter, &descriptor_table_backend_5fnvme_2eproto_once, - file_level_metadata_backend_5fnvme_2eproto[24]); + file_level_metadata_backend_5fnvme_2eproto[23]); } // @@protoc_insertion_point(namespace_scope) @@ -7322,10 +7078,6 @@ template<> PROTOBUF_NOINLINE ::opi_api::storage::v1::NvmePath* Arena::CreateMaybeMessage< ::opi_api::storage::v1::NvmePath >(Arena* arena) { return Arena::CreateMessageInternal< ::opi_api::storage::v1::NvmePath >(arena); } -template<> PROTOBUF_NOINLINE ::opi_api::storage::v1::FabricsPath* -Arena::CreateMaybeMessage< ::opi_api::storage::v1::FabricsPath >(Arena* arena) { - return Arena::CreateMessageInternal< ::opi_api::storage::v1::FabricsPath >(arena); -} template<> PROTOBUF_NOINLINE ::opi_api::storage::v1::NvmeRemoteNamespace* Arena::CreateMaybeMessage< ::opi_api::storage::v1::NvmeRemoteNamespace >(Arena* arena) { return Arena::CreateMessageInternal< ::opi_api::storage::v1::NvmeRemoteNamespace >(arena); diff --git a/storage/v1alpha1/gen/cpp/backend_nvme.pb.h b/storage/v1alpha1/gen/cpp/backend_nvme.pb.h index d1acd377..5f264edb 100644 --- a/storage/v1alpha1/gen/cpp/backend_nvme.pb.h +++ b/storage/v1alpha1/gen/cpp/backend_nvme.pb.h @@ -68,9 +68,6 @@ extern DeleteNvmePathRequestDefaultTypeInternal _DeleteNvmePathRequest_default_i class DeleteNvmeRemoteControllerRequest; struct DeleteNvmeRemoteControllerRequestDefaultTypeInternal; extern DeleteNvmeRemoteControllerRequestDefaultTypeInternal _DeleteNvmeRemoteControllerRequest_default_instance_; -class FabricsPath; -struct FabricsPathDefaultTypeInternal; -extern FabricsPathDefaultTypeInternal _FabricsPath_default_instance_; class GetNvmePathRequest; struct GetNvmePathRequestDefaultTypeInternal; extern GetNvmePathRequestDefaultTypeInternal _GetNvmePathRequest_default_instance_; @@ -139,7 +136,6 @@ template<> ::opi_api::storage::v1::CreateNvmePathRequest* Arena::CreateMaybeMess template<> ::opi_api::storage::v1::CreateNvmeRemoteControllerRequest* Arena::CreateMaybeMessage<::opi_api::storage::v1::CreateNvmeRemoteControllerRequest>(Arena*); template<> ::opi_api::storage::v1::DeleteNvmePathRequest* Arena::CreateMaybeMessage<::opi_api::storage::v1::DeleteNvmePathRequest>(Arena*); template<> ::opi_api::storage::v1::DeleteNvmeRemoteControllerRequest* Arena::CreateMaybeMessage<::opi_api::storage::v1::DeleteNvmeRemoteControllerRequest>(Arena*); -template<> ::opi_api::storage::v1::FabricsPath* Arena::CreateMaybeMessage<::opi_api::storage::v1::FabricsPath>(Arena*); template<> ::opi_api::storage::v1::GetNvmePathRequest* Arena::CreateMaybeMessage<::opi_api::storage::v1::GetNvmePathRequest>(Arena*); template<> ::opi_api::storage::v1::GetNvmeRemoteControllerRequest* Arena::CreateMaybeMessage<::opi_api::storage::v1::GetNvmeRemoteControllerRequest>(Arena*); template<> ::opi_api::storage::v1::GetNvmeRemoteNamespaceRequest* Arena::CreateMaybeMessage<::opi_api::storage::v1::GetNvmeRemoteNamespaceRequest>(Arena*); @@ -316,9 +312,11 @@ class NvmeRemoteController final : enum : int { kNameFieldNumber = 1, - kTcpFieldNumber = 5, - kIoQueuesCountFieldNumber = 3, - kQueueSizeFieldNumber = 4, + kSubnqnFieldNumber = 3, + kHostnqnFieldNumber = 4, + kTcpFieldNumber = 7, + kIoQueuesCountFieldNumber = 5, + kQueueSizeFieldNumber = 6, kMultipathFieldNumber = 2, }; // string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; @@ -335,7 +333,35 @@ class NvmeRemoteController final : std::string* _internal_mutable_name(); public: - // .opi_api.storage.v1.TcpController tcp = 5 [(.google.api.field_behavior) = OPTIONAL]; + // string subnqn = 3 [(.google.api.field_behavior) = OPTIONAL]; + void clear_subnqn(); + const std::string& subnqn() const; + template + void set_subnqn(ArgT0&& arg0, ArgT... args); + std::string* mutable_subnqn(); + PROTOBUF_NODISCARD std::string* release_subnqn(); + void set_allocated_subnqn(std::string* subnqn); + private: + const std::string& _internal_subnqn() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_subnqn(const std::string& value); + std::string* _internal_mutable_subnqn(); + public: + + // string hostnqn = 4 [(.google.api.field_behavior) = OPTIONAL]; + void clear_hostnqn(); + const std::string& hostnqn() const; + template + void set_hostnqn(ArgT0&& arg0, ArgT... args); + std::string* mutable_hostnqn(); + PROTOBUF_NODISCARD std::string* release_hostnqn(); + void set_allocated_hostnqn(std::string* hostnqn); + private: + const std::string& _internal_hostnqn() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_hostnqn(const std::string& value); + std::string* _internal_mutable_hostnqn(); + public: + + // .opi_api.storage.v1.TcpController tcp = 7 [(.google.api.field_behavior) = OPTIONAL]; bool has_tcp() const; private: bool _internal_has_tcp() const; @@ -353,7 +379,7 @@ class NvmeRemoteController final : ::opi_api::storage::v1::TcpController* tcp); ::opi_api::storage::v1::TcpController* unsafe_arena_release_tcp(); - // int64 io_queues_count = 3 [(.google.api.field_behavior) = OPTIONAL]; + // int64 io_queues_count = 5 [(.google.api.field_behavior) = OPTIONAL]; void clear_io_queues_count(); int64_t io_queues_count() const; void set_io_queues_count(int64_t value); @@ -362,7 +388,7 @@ class NvmeRemoteController final : void _internal_set_io_queues_count(int64_t value); public: - // int64 queue_size = 4 [(.google.api.field_behavior) = OPTIONAL]; + // int64 queue_size = 6 [(.google.api.field_behavior) = OPTIONAL]; void clear_queue_size(); int64_t queue_size() const; void set_queue_size(int64_t value); @@ -389,6 +415,8 @@ class NvmeRemoteController final : typedef void DestructorSkippable_; struct Impl_ { ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr subnqn_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr hostnqn_; ::opi_api::storage::v1::TcpController* tcp_; int64_t io_queues_count_; int64_t queue_size_; @@ -618,6 +646,12 @@ class NvmePath final : static const NvmePath& default_instance() { return *internal_default_instance(); } + enum EndpointCase { + kPcie = 4, + kFabrics = 5, + ENDPOINT_NOT_SET = 0, + }; + static inline const NvmePath* internal_default_instance() { return reinterpret_cast( &_NvmePath_default_instance_); @@ -698,9 +732,9 @@ class NvmePath final : enum : int { kNameFieldNumber = 1, kControllerNameRefFieldNumber = 2, - kTraddrFieldNumber = 4, - kFabricsFieldNumber = 5, kTrtypeFieldNumber = 3, + kPcieFieldNumber = 4, + kFabricsFieldNumber = 5, }; // string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; void clear_name(); @@ -730,38 +764,6 @@ class NvmePath final : std::string* _internal_mutable_controller_name_ref(); public: - // string traddr = 4 [(.google.api.field_behavior) = REQUIRED]; - void clear_traddr(); - const std::string& traddr() const; - template - void set_traddr(ArgT0&& arg0, ArgT... args); - std::string* mutable_traddr(); - PROTOBUF_NODISCARD std::string* release_traddr(); - void set_allocated_traddr(std::string* traddr); - private: - const std::string& _internal_traddr() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_traddr(const std::string& value); - std::string* _internal_mutable_traddr(); - public: - - // .opi_api.storage.v1.FabricsPath fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; - bool has_fabrics() const; - private: - bool _internal_has_fabrics() const; - public: - void clear_fabrics(); - const ::opi_api::storage::v1::FabricsPath& fabrics() const; - PROTOBUF_NODISCARD ::opi_api::storage::v1::FabricsPath* release_fabrics(); - ::opi_api::storage::v1::FabricsPath* mutable_fabrics(); - void set_allocated_fabrics(::opi_api::storage::v1::FabricsPath* fabrics); - private: - const ::opi_api::storage::v1::FabricsPath& _internal_fabrics() const; - ::opi_api::storage::v1::FabricsPath* _internal_mutable_fabrics(); - public: - void unsafe_arena_set_allocated_fabrics( - ::opi_api::storage::v1::FabricsPath* fabrics); - ::opi_api::storage::v1::FabricsPath* unsafe_arena_release_fabrics(); - // .opi_api.storage.v1.NvmeTransportType trtype = 3 [(.google.api.field_behavior) = REQUIRED]; void clear_trtype(); ::opi_api::storage::v1::NvmeTransportType trtype() const; @@ -771,238 +773,69 @@ class NvmePath final : void _internal_set_trtype(::opi_api::storage::v1::NvmeTransportType value); public: - // @@protoc_insertion_point(class_scope:opi_api.storage.v1.NvmePath) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr controller_name_ref_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr traddr_; - ::opi_api::storage::v1::FabricsPath* fabrics_; - int trtype_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_backend_5fnvme_2eproto; -}; -// ------------------------------------------------------------------- - -class FabricsPath final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:opi_api.storage.v1.FabricsPath) */ { - public: - inline FabricsPath() : FabricsPath(nullptr) {} - ~FabricsPath() override; - explicit PROTOBUF_CONSTEXPR FabricsPath(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - FabricsPath(const FabricsPath& from); - FabricsPath(FabricsPath&& from) noexcept - : FabricsPath() { - *this = ::std::move(from); - } - - inline FabricsPath& operator=(const FabricsPath& from) { - CopyFrom(from); - return *this; - } - inline FabricsPath& operator=(FabricsPath&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const FabricsPath& default_instance() { - return *internal_default_instance(); - } - static inline const FabricsPath* internal_default_instance() { - return reinterpret_cast( - &_FabricsPath_default_instance_); - } - static constexpr int kIndexInFileMessages = - 3; - - friend void swap(FabricsPath& a, FabricsPath& b) { - a.Swap(&b); - } - inline void Swap(FabricsPath* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(FabricsPath* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - FabricsPath* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const FabricsPath& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const FabricsPath& from) { - FabricsPath::MergeImpl(*this, from); - } + // .opi_api.storage.v1.PciEndpoint pcie = 4 [(.google.api.field_behavior) = OPTIONAL]; + bool has_pcie() const; private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + bool _internal_has_pcie() const; public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(FabricsPath* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "opi_api.storage.v1.FabricsPath"; - } - protected: - explicit FabricsPath(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); + void clear_pcie(); + const ::opi_api::storage::v1::PciEndpoint& pcie() const; + PROTOBUF_NODISCARD ::opi_api::storage::v1::PciEndpoint* release_pcie(); + ::opi_api::storage::v1::PciEndpoint* mutable_pcie(); + void set_allocated_pcie(::opi_api::storage::v1::PciEndpoint* pcie); + private: + const ::opi_api::storage::v1::PciEndpoint& _internal_pcie() const; + ::opi_api::storage::v1::PciEndpoint* _internal_mutable_pcie(); public: + void unsafe_arena_set_allocated_pcie( + ::opi_api::storage::v1::PciEndpoint* pcie); + ::opi_api::storage::v1::PciEndpoint* unsafe_arena_release_pcie(); - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kSubnqnFieldNumber = 2, - kSourceTraddrFieldNumber = 4, - kHostnqnFieldNumber = 6, - kTrsvcidFieldNumber = 1, - kSourceTrsvcidFieldNumber = 5, - kAdrfamFieldNumber = 3, - }; - // string subnqn = 2 [(.google.api.field_behavior) = REQUIRED]; - void clear_subnqn(); - const std::string& subnqn() const; - template - void set_subnqn(ArgT0&& arg0, ArgT... args); - std::string* mutable_subnqn(); - PROTOBUF_NODISCARD std::string* release_subnqn(); - void set_allocated_subnqn(std::string* subnqn); - private: - const std::string& _internal_subnqn() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_subnqn(const std::string& value); - std::string* _internal_mutable_subnqn(); - public: - - // string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; - void clear_source_traddr(); - const std::string& source_traddr() const; - template - void set_source_traddr(ArgT0&& arg0, ArgT... args); - std::string* mutable_source_traddr(); - PROTOBUF_NODISCARD std::string* release_source_traddr(); - void set_allocated_source_traddr(std::string* source_traddr); - private: - const std::string& _internal_source_traddr() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_source_traddr(const std::string& value); - std::string* _internal_mutable_source_traddr(); - public: - - // string hostnqn = 6 [(.google.api.field_behavior) = OPTIONAL]; - void clear_hostnqn(); - const std::string& hostnqn() const; - template - void set_hostnqn(ArgT0&& arg0, ArgT... args); - std::string* mutable_hostnqn(); - PROTOBUF_NODISCARD std::string* release_hostnqn(); - void set_allocated_hostnqn(std::string* hostnqn); - private: - const std::string& _internal_hostnqn() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_hostnqn(const std::string& value); - std::string* _internal_mutable_hostnqn(); - public: - - // int64 trsvcid = 1 [(.google.api.field_behavior) = REQUIRED]; - void clear_trsvcid(); - int64_t trsvcid() const; - void set_trsvcid(int64_t value); - private: - int64_t _internal_trsvcid() const; - void _internal_set_trsvcid(int64_t value); - public: - - // int64 source_trsvcid = 5 [(.google.api.field_behavior) = OPTIONAL]; - void clear_source_trsvcid(); - int64_t source_trsvcid() const; - void set_source_trsvcid(int64_t value); + // .opi_api.storage.v1.FabricsEndpoint fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; + bool has_fabrics() const; private: - int64_t _internal_source_trsvcid() const; - void _internal_set_source_trsvcid(int64_t value); + bool _internal_has_fabrics() const; public: - - // .opi_api.storage.v1.NvmeAddressFamily adrfam = 3 [(.google.api.field_behavior) = REQUIRED]; - void clear_adrfam(); - ::opi_api::storage::v1::NvmeAddressFamily adrfam() const; - void set_adrfam(::opi_api::storage::v1::NvmeAddressFamily value); + void clear_fabrics(); + const ::opi_api::storage::v1::FabricsEndpoint& fabrics() const; + PROTOBUF_NODISCARD ::opi_api::storage::v1::FabricsEndpoint* release_fabrics(); + ::opi_api::storage::v1::FabricsEndpoint* mutable_fabrics(); + void set_allocated_fabrics(::opi_api::storage::v1::FabricsEndpoint* fabrics); private: - ::opi_api::storage::v1::NvmeAddressFamily _internal_adrfam() const; - void _internal_set_adrfam(::opi_api::storage::v1::NvmeAddressFamily value); + const ::opi_api::storage::v1::FabricsEndpoint& _internal_fabrics() const; + ::opi_api::storage::v1::FabricsEndpoint* _internal_mutable_fabrics(); public: + void unsafe_arena_set_allocated_fabrics( + ::opi_api::storage::v1::FabricsEndpoint* fabrics); + ::opi_api::storage::v1::FabricsEndpoint* unsafe_arena_release_fabrics(); - // @@protoc_insertion_point(class_scope:opi_api.storage.v1.FabricsPath) + void clear_endpoint(); + EndpointCase endpoint_case() const; + // @@protoc_insertion_point(class_scope:opi_api.storage.v1.NvmePath) private: class _Internal; + void set_has_pcie(); + void set_has_fabrics(); + + inline bool has_endpoint() const; + inline void clear_has_endpoint(); template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; typedef void InternalArenaConstructable_; typedef void DestructorSkippable_; struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr subnqn_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr source_traddr_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr hostnqn_; - int64_t trsvcid_; - int64_t source_trsvcid_; - int adrfam_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr controller_name_ref_; + int trtype_; + union EndpointUnion { + constexpr EndpointUnion() : _constinit_{} {} + ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized _constinit_; + ::opi_api::storage::v1::PciEndpoint* pcie_; + ::opi_api::storage::v1::FabricsEndpoint* fabrics_; + } endpoint_; mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + uint32_t _oneof_case_[1]; + }; union { Impl_ _impl_; }; friend struct ::TableStruct_backend_5fnvme_2eproto; @@ -1057,7 +890,7 @@ class NvmeRemoteNamespace final : &_NvmeRemoteNamespace_default_instance_); } static constexpr int kIndexInFileMessages = - 4; + 3; friend void swap(NvmeRemoteNamespace& a, NvmeRemoteNamespace& b) { a.Swap(&b); @@ -1284,7 +1117,7 @@ class CreateNvmeRemoteControllerRequest final : &_CreateNvmeRemoteControllerRequest_default_instance_); } static constexpr int kIndexInFileMessages = - 5; + 4; friend void swap(CreateNvmeRemoteControllerRequest& a, CreateNvmeRemoteControllerRequest& b) { a.Swap(&b); @@ -1457,7 +1290,7 @@ class DeleteNvmeRemoteControllerRequest final : &_DeleteNvmeRemoteControllerRequest_default_instance_); } static constexpr int kIndexInFileMessages = - 6; + 5; friend void swap(DeleteNvmeRemoteControllerRequest& a, DeleteNvmeRemoteControllerRequest& b) { a.Swap(&b); @@ -1621,7 +1454,7 @@ class UpdateNvmeRemoteControllerRequest final : &_UpdateNvmeRemoteControllerRequest_default_instance_); } static constexpr int kIndexInFileMessages = - 7; + 6; friend void swap(UpdateNvmeRemoteControllerRequest& a, UpdateNvmeRemoteControllerRequest& b) { a.Swap(&b); @@ -1809,7 +1642,7 @@ class ListNvmeRemoteControllersRequest final : &_ListNvmeRemoteControllersRequest_default_instance_); } static constexpr int kIndexInFileMessages = - 8; + 7; friend void swap(ListNvmeRemoteControllersRequest& a, ListNvmeRemoteControllersRequest& b) { a.Swap(&b); @@ -1989,7 +1822,7 @@ class ListNvmeRemoteControllersResponse final : &_ListNvmeRemoteControllersResponse_default_instance_); } static constexpr int kIndexInFileMessages = - 9; + 8; friend void swap(ListNvmeRemoteControllersResponse& a, ListNvmeRemoteControllersResponse& b) { a.Swap(&b); @@ -2162,7 +1995,7 @@ class GetNvmeRemoteControllerRequest final : &_GetNvmeRemoteControllerRequest_default_instance_); } static constexpr int kIndexInFileMessages = - 10; + 9; friend void swap(GetNvmeRemoteControllerRequest& a, GetNvmeRemoteControllerRequest& b) { a.Swap(&b); @@ -2315,7 +2148,7 @@ class ResetNvmeRemoteControllerRequest final : &_ResetNvmeRemoteControllerRequest_default_instance_); } static constexpr int kIndexInFileMessages = - 11; + 10; friend void swap(ResetNvmeRemoteControllerRequest& a, ResetNvmeRemoteControllerRequest& b) { a.Swap(&b); @@ -2468,7 +2301,7 @@ class StatsNvmeRemoteControllerRequest final : &_StatsNvmeRemoteControllerRequest_default_instance_); } static constexpr int kIndexInFileMessages = - 12; + 11; friend void swap(StatsNvmeRemoteControllerRequest& a, StatsNvmeRemoteControllerRequest& b) { a.Swap(&b); @@ -2621,7 +2454,7 @@ class StatsNvmeRemoteControllerResponse final : &_StatsNvmeRemoteControllerResponse_default_instance_); } static constexpr int kIndexInFileMessages = - 13; + 12; friend void swap(StatsNvmeRemoteControllerResponse& a, StatsNvmeRemoteControllerResponse& b) { a.Swap(&b); @@ -2778,7 +2611,7 @@ class ListNvmeRemoteNamespacesRequest final : &_ListNvmeRemoteNamespacesRequest_default_instance_); } static constexpr int kIndexInFileMessages = - 14; + 13; friend void swap(ListNvmeRemoteNamespacesRequest& a, ListNvmeRemoteNamespacesRequest& b) { a.Swap(&b); @@ -2958,7 +2791,7 @@ class ListNvmeRemoteNamespacesResponse final : &_ListNvmeRemoteNamespacesResponse_default_instance_); } static constexpr int kIndexInFileMessages = - 15; + 14; friend void swap(ListNvmeRemoteNamespacesResponse& a, ListNvmeRemoteNamespacesResponse& b) { a.Swap(&b); @@ -3131,7 +2964,7 @@ class GetNvmeRemoteNamespaceRequest final : &_GetNvmeRemoteNamespaceRequest_default_instance_); } static constexpr int kIndexInFileMessages = - 16; + 15; friend void swap(GetNvmeRemoteNamespaceRequest& a, GetNvmeRemoteNamespaceRequest& b) { a.Swap(&b); @@ -3284,7 +3117,7 @@ class CreateNvmePathRequest final : &_CreateNvmePathRequest_default_instance_); } static constexpr int kIndexInFileMessages = - 17; + 16; friend void swap(CreateNvmePathRequest& a, CreateNvmePathRequest& b) { a.Swap(&b); @@ -3457,7 +3290,7 @@ class DeleteNvmePathRequest final : &_DeleteNvmePathRequest_default_instance_); } static constexpr int kIndexInFileMessages = - 18; + 17; friend void swap(DeleteNvmePathRequest& a, DeleteNvmePathRequest& b) { a.Swap(&b); @@ -3621,7 +3454,7 @@ class UpdateNvmePathRequest final : &_UpdateNvmePathRequest_default_instance_); } static constexpr int kIndexInFileMessages = - 19; + 18; friend void swap(UpdateNvmePathRequest& a, UpdateNvmePathRequest& b) { a.Swap(&b); @@ -3809,7 +3642,7 @@ class ListNvmePathsRequest final : &_ListNvmePathsRequest_default_instance_); } static constexpr int kIndexInFileMessages = - 20; + 19; friend void swap(ListNvmePathsRequest& a, ListNvmePathsRequest& b) { a.Swap(&b); @@ -3989,7 +3822,7 @@ class ListNvmePathsResponse final : &_ListNvmePathsResponse_default_instance_); } static constexpr int kIndexInFileMessages = - 21; + 20; friend void swap(ListNvmePathsResponse& a, ListNvmePathsResponse& b) { a.Swap(&b); @@ -4162,7 +3995,7 @@ class GetNvmePathRequest final : &_GetNvmePathRequest_default_instance_); } static constexpr int kIndexInFileMessages = - 22; + 21; friend void swap(GetNvmePathRequest& a, GetNvmePathRequest& b) { a.Swap(&b); @@ -4315,7 +4148,7 @@ class StatsNvmePathRequest final : &_StatsNvmePathRequest_default_instance_); } static constexpr int kIndexInFileMessages = - 23; + 22; friend void swap(StatsNvmePathRequest& a, StatsNvmePathRequest& b) { a.Swap(&b); @@ -4468,7 +4301,7 @@ class StatsNvmePathResponse final : &_StatsNvmePathResponse_default_instance_); } static constexpr int kIndexInFileMessages = - 24; + 23; friend void swap(StatsNvmePathResponse& a, StatsNvmePathResponse& b) { a.Swap(&b); @@ -4656,7 +4489,107 @@ inline void NvmeRemoteController::set_multipath(::opi_api::storage::v1::NvmeMult // @@protoc_insertion_point(field_set:opi_api.storage.v1.NvmeRemoteController.multipath) } -// int64 io_queues_count = 3 [(.google.api.field_behavior) = OPTIONAL]; +// string subnqn = 3 [(.google.api.field_behavior) = OPTIONAL]; +inline void NvmeRemoteController::clear_subnqn() { + _impl_.subnqn_.ClearToEmpty(); +} +inline const std::string& NvmeRemoteController::subnqn() const { + // @@protoc_insertion_point(field_get:opi_api.storage.v1.NvmeRemoteController.subnqn) + return _internal_subnqn(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void NvmeRemoteController::set_subnqn(ArgT0&& arg0, ArgT... args) { + + _impl_.subnqn_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:opi_api.storage.v1.NvmeRemoteController.subnqn) +} +inline std::string* NvmeRemoteController::mutable_subnqn() { + std::string* _s = _internal_mutable_subnqn(); + // @@protoc_insertion_point(field_mutable:opi_api.storage.v1.NvmeRemoteController.subnqn) + return _s; +} +inline const std::string& NvmeRemoteController::_internal_subnqn() const { + return _impl_.subnqn_.Get(); +} +inline void NvmeRemoteController::_internal_set_subnqn(const std::string& value) { + + _impl_.subnqn_.Set(value, GetArenaForAllocation()); +} +inline std::string* NvmeRemoteController::_internal_mutable_subnqn() { + + return _impl_.subnqn_.Mutable(GetArenaForAllocation()); +} +inline std::string* NvmeRemoteController::release_subnqn() { + // @@protoc_insertion_point(field_release:opi_api.storage.v1.NvmeRemoteController.subnqn) + return _impl_.subnqn_.Release(); +} +inline void NvmeRemoteController::set_allocated_subnqn(std::string* subnqn) { + if (subnqn != nullptr) { + + } else { + + } + _impl_.subnqn_.SetAllocated(subnqn, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.subnqn_.IsDefault()) { + _impl_.subnqn_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:opi_api.storage.v1.NvmeRemoteController.subnqn) +} + +// string hostnqn = 4 [(.google.api.field_behavior) = OPTIONAL]; +inline void NvmeRemoteController::clear_hostnqn() { + _impl_.hostnqn_.ClearToEmpty(); +} +inline const std::string& NvmeRemoteController::hostnqn() const { + // @@protoc_insertion_point(field_get:opi_api.storage.v1.NvmeRemoteController.hostnqn) + return _internal_hostnqn(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void NvmeRemoteController::set_hostnqn(ArgT0&& arg0, ArgT... args) { + + _impl_.hostnqn_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:opi_api.storage.v1.NvmeRemoteController.hostnqn) +} +inline std::string* NvmeRemoteController::mutable_hostnqn() { + std::string* _s = _internal_mutable_hostnqn(); + // @@protoc_insertion_point(field_mutable:opi_api.storage.v1.NvmeRemoteController.hostnqn) + return _s; +} +inline const std::string& NvmeRemoteController::_internal_hostnqn() const { + return _impl_.hostnqn_.Get(); +} +inline void NvmeRemoteController::_internal_set_hostnqn(const std::string& value) { + + _impl_.hostnqn_.Set(value, GetArenaForAllocation()); +} +inline std::string* NvmeRemoteController::_internal_mutable_hostnqn() { + + return _impl_.hostnqn_.Mutable(GetArenaForAllocation()); +} +inline std::string* NvmeRemoteController::release_hostnqn() { + // @@protoc_insertion_point(field_release:opi_api.storage.v1.NvmeRemoteController.hostnqn) + return _impl_.hostnqn_.Release(); +} +inline void NvmeRemoteController::set_allocated_hostnqn(std::string* hostnqn) { + if (hostnqn != nullptr) { + + } else { + + } + _impl_.hostnqn_.SetAllocated(hostnqn, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.hostnqn_.IsDefault()) { + _impl_.hostnqn_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:opi_api.storage.v1.NvmeRemoteController.hostnqn) +} + +// int64 io_queues_count = 5 [(.google.api.field_behavior) = OPTIONAL]; inline void NvmeRemoteController::clear_io_queues_count() { _impl_.io_queues_count_ = int64_t{0}; } @@ -4676,7 +4609,7 @@ inline void NvmeRemoteController::set_io_queues_count(int64_t value) { // @@protoc_insertion_point(field_set:opi_api.storage.v1.NvmeRemoteController.io_queues_count) } -// int64 queue_size = 4 [(.google.api.field_behavior) = OPTIONAL]; +// int64 queue_size = 6 [(.google.api.field_behavior) = OPTIONAL]; inline void NvmeRemoteController::clear_queue_size() { _impl_.queue_size_ = int64_t{0}; } @@ -4696,7 +4629,7 @@ inline void NvmeRemoteController::set_queue_size(int64_t value) { // @@protoc_insertion_point(field_set:opi_api.storage.v1.NvmeRemoteController.queue_size) } -// .opi_api.storage.v1.TcpController tcp = 5 [(.google.api.field_behavior) = OPTIONAL]; +// .opi_api.storage.v1.TcpController tcp = 7 [(.google.api.field_behavior) = OPTIONAL]; inline bool NvmeRemoteController::_internal_has_tcp() const { return this != internal_default_instance() && _impl_.tcp_ != nullptr; } @@ -5004,360 +4937,147 @@ inline void NvmePath::set_trtype(::opi_api::storage::v1::NvmeTransportType value // @@protoc_insertion_point(field_set:opi_api.storage.v1.NvmePath.trtype) } -// string traddr = 4 [(.google.api.field_behavior) = REQUIRED]; -inline void NvmePath::clear_traddr() { - _impl_.traddr_.ClearToEmpty(); -} -inline const std::string& NvmePath::traddr() const { - // @@protoc_insertion_point(field_get:opi_api.storage.v1.NvmePath.traddr) - return _internal_traddr(); +// .opi_api.storage.v1.PciEndpoint pcie = 4 [(.google.api.field_behavior) = OPTIONAL]; +inline bool NvmePath::_internal_has_pcie() const { + return endpoint_case() == kPcie; } -template -inline PROTOBUF_ALWAYS_INLINE -void NvmePath::set_traddr(ArgT0&& arg0, ArgT... args) { - - _impl_.traddr_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:opi_api.storage.v1.NvmePath.traddr) -} -inline std::string* NvmePath::mutable_traddr() { - std::string* _s = _internal_mutable_traddr(); - // @@protoc_insertion_point(field_mutable:opi_api.storage.v1.NvmePath.traddr) - return _s; -} -inline const std::string& NvmePath::_internal_traddr() const { - return _impl_.traddr_.Get(); +inline bool NvmePath::has_pcie() const { + return _internal_has_pcie(); } -inline void NvmePath::_internal_set_traddr(const std::string& value) { - - _impl_.traddr_.Set(value, GetArenaForAllocation()); +inline void NvmePath::set_has_pcie() { + _impl_._oneof_case_[0] = kPcie; } -inline std::string* NvmePath::_internal_mutable_traddr() { - - return _impl_.traddr_.Mutable(GetArenaForAllocation()); -} -inline std::string* NvmePath::release_traddr() { - // @@protoc_insertion_point(field_release:opi_api.storage.v1.NvmePath.traddr) - return _impl_.traddr_.Release(); -} -inline void NvmePath::set_allocated_traddr(std::string* traddr) { - if (traddr != nullptr) { - +inline ::opi_api::storage::v1::PciEndpoint* NvmePath::release_pcie() { + // @@protoc_insertion_point(field_release:opi_api.storage.v1.NvmePath.pcie) + if (_internal_has_pcie()) { + clear_has_endpoint(); + ::opi_api::storage::v1::PciEndpoint* temp = _impl_.endpoint_.pcie_; + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } + _impl_.endpoint_.pcie_ = nullptr; + return temp; } else { - - } - _impl_.traddr_.SetAllocated(traddr, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.traddr_.IsDefault()) { - _impl_.traddr_.Set("", GetArenaForAllocation()); + return nullptr; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:opi_api.storage.v1.NvmePath.traddr) } - -// .opi_api.storage.v1.FabricsPath fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; -inline bool NvmePath::_internal_has_fabrics() const { - return this != internal_default_instance() && _impl_.fabrics_ != nullptr; -} -inline bool NvmePath::has_fabrics() const { - return _internal_has_fabrics(); -} -inline void NvmePath::clear_fabrics() { - if (GetArenaForAllocation() == nullptr && _impl_.fabrics_ != nullptr) { - delete _impl_.fabrics_; - } - _impl_.fabrics_ = nullptr; +inline const ::opi_api::storage::v1::PciEndpoint& NvmePath::_internal_pcie() const { + return _internal_has_pcie() + ? *_impl_.endpoint_.pcie_ + : reinterpret_cast< ::opi_api::storage::v1::PciEndpoint&>(::opi_api::storage::v1::_PciEndpoint_default_instance_); } -inline const ::opi_api::storage::v1::FabricsPath& NvmePath::_internal_fabrics() const { - const ::opi_api::storage::v1::FabricsPath* p = _impl_.fabrics_; - return p != nullptr ? *p : reinterpret_cast( - ::opi_api::storage::v1::_FabricsPath_default_instance_); +inline const ::opi_api::storage::v1::PciEndpoint& NvmePath::pcie() const { + // @@protoc_insertion_point(field_get:opi_api.storage.v1.NvmePath.pcie) + return _internal_pcie(); } -inline const ::opi_api::storage::v1::FabricsPath& NvmePath::fabrics() const { - // @@protoc_insertion_point(field_get:opi_api.storage.v1.NvmePath.fabrics) - return _internal_fabrics(); -} -inline void NvmePath::unsafe_arena_set_allocated_fabrics( - ::opi_api::storage::v1::FabricsPath* fabrics) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.fabrics_); - } - _impl_.fabrics_ = fabrics; - if (fabrics) { - +inline ::opi_api::storage::v1::PciEndpoint* NvmePath::unsafe_arena_release_pcie() { + // @@protoc_insertion_point(field_unsafe_arena_release:opi_api.storage.v1.NvmePath.pcie) + if (_internal_has_pcie()) { + clear_has_endpoint(); + ::opi_api::storage::v1::PciEndpoint* temp = _impl_.endpoint_.pcie_; + _impl_.endpoint_.pcie_ = nullptr; + return temp; } else { - + return nullptr; } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:opi_api.storage.v1.NvmePath.fabrics) } -inline ::opi_api::storage::v1::FabricsPath* NvmePath::release_fabrics() { - - ::opi_api::storage::v1::FabricsPath* temp = _impl_.fabrics_; - _impl_.fabrics_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { delete old; } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); +inline void NvmePath::unsafe_arena_set_allocated_pcie(::opi_api::storage::v1::PciEndpoint* pcie) { + clear_endpoint(); + if (pcie) { + set_has_pcie(); + _impl_.endpoint_.pcie_ = pcie; } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::opi_api::storage::v1::FabricsPath* NvmePath::unsafe_arena_release_fabrics() { - // @@protoc_insertion_point(field_release:opi_api.storage.v1.NvmePath.fabrics) - - ::opi_api::storage::v1::FabricsPath* temp = _impl_.fabrics_; - _impl_.fabrics_ = nullptr; - return temp; + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:opi_api.storage.v1.NvmePath.pcie) } -inline ::opi_api::storage::v1::FabricsPath* NvmePath::_internal_mutable_fabrics() { - - if (_impl_.fabrics_ == nullptr) { - auto* p = CreateMaybeMessage<::opi_api::storage::v1::FabricsPath>(GetArenaForAllocation()); - _impl_.fabrics_ = p; +inline ::opi_api::storage::v1::PciEndpoint* NvmePath::_internal_mutable_pcie() { + if (!_internal_has_pcie()) { + clear_endpoint(); + set_has_pcie(); + _impl_.endpoint_.pcie_ = CreateMaybeMessage< ::opi_api::storage::v1::PciEndpoint >(GetArenaForAllocation()); } - return _impl_.fabrics_; + return _impl_.endpoint_.pcie_; } -inline ::opi_api::storage::v1::FabricsPath* NvmePath::mutable_fabrics() { - ::opi_api::storage::v1::FabricsPath* _msg = _internal_mutable_fabrics(); - // @@protoc_insertion_point(field_mutable:opi_api.storage.v1.NvmePath.fabrics) +inline ::opi_api::storage::v1::PciEndpoint* NvmePath::mutable_pcie() { + ::opi_api::storage::v1::PciEndpoint* _msg = _internal_mutable_pcie(); + // @@protoc_insertion_point(field_mutable:opi_api.storage.v1.NvmePath.pcie) return _msg; } -inline void NvmePath::set_allocated_fabrics(::opi_api::storage::v1::FabricsPath* fabrics) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.fabrics_; - } - if (fabrics) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(fabrics); - if (message_arena != submessage_arena) { - fabrics = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, fabrics, submessage_arena); - } - - } else { - - } - _impl_.fabrics_ = fabrics; - // @@protoc_insertion_point(field_set_allocated:opi_api.storage.v1.NvmePath.fabrics) -} - -// ------------------------------------------------------------------- - -// FabricsPath -// int64 trsvcid = 1 [(.google.api.field_behavior) = REQUIRED]; -inline void FabricsPath::clear_trsvcid() { - _impl_.trsvcid_ = int64_t{0}; -} -inline int64_t FabricsPath::_internal_trsvcid() const { - return _impl_.trsvcid_; -} -inline int64_t FabricsPath::trsvcid() const { - // @@protoc_insertion_point(field_get:opi_api.storage.v1.FabricsPath.trsvcid) - return _internal_trsvcid(); -} -inline void FabricsPath::_internal_set_trsvcid(int64_t value) { - - _impl_.trsvcid_ = value; -} -inline void FabricsPath::set_trsvcid(int64_t value) { - _internal_set_trsvcid(value); - // @@protoc_insertion_point(field_set:opi_api.storage.v1.FabricsPath.trsvcid) -} - -// string subnqn = 2 [(.google.api.field_behavior) = REQUIRED]; -inline void FabricsPath::clear_subnqn() { - _impl_.subnqn_.ClearToEmpty(); -} -inline const std::string& FabricsPath::subnqn() const { - // @@protoc_insertion_point(field_get:opi_api.storage.v1.FabricsPath.subnqn) - return _internal_subnqn(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void FabricsPath::set_subnqn(ArgT0&& arg0, ArgT... args) { - - _impl_.subnqn_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:opi_api.storage.v1.FabricsPath.subnqn) -} -inline std::string* FabricsPath::mutable_subnqn() { - std::string* _s = _internal_mutable_subnqn(); - // @@protoc_insertion_point(field_mutable:opi_api.storage.v1.FabricsPath.subnqn) - return _s; -} -inline const std::string& FabricsPath::_internal_subnqn() const { - return _impl_.subnqn_.Get(); -} -inline void FabricsPath::_internal_set_subnqn(const std::string& value) { - - _impl_.subnqn_.Set(value, GetArenaForAllocation()); +// .opi_api.storage.v1.FabricsEndpoint fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; +inline bool NvmePath::_internal_has_fabrics() const { + return endpoint_case() == kFabrics; } -inline std::string* FabricsPath::_internal_mutable_subnqn() { - - return _impl_.subnqn_.Mutable(GetArenaForAllocation()); +inline bool NvmePath::has_fabrics() const { + return _internal_has_fabrics(); } -inline std::string* FabricsPath::release_subnqn() { - // @@protoc_insertion_point(field_release:opi_api.storage.v1.FabricsPath.subnqn) - return _impl_.subnqn_.Release(); +inline void NvmePath::set_has_fabrics() { + _impl_._oneof_case_[0] = kFabrics; } -inline void FabricsPath::set_allocated_subnqn(std::string* subnqn) { - if (subnqn != nullptr) { - +inline ::opi_api::storage::v1::FabricsEndpoint* NvmePath::release_fabrics() { + // @@protoc_insertion_point(field_release:opi_api.storage.v1.NvmePath.fabrics) + if (_internal_has_fabrics()) { + clear_has_endpoint(); + ::opi_api::storage::v1::FabricsEndpoint* temp = _impl_.endpoint_.fabrics_; + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } + _impl_.endpoint_.fabrics_ = nullptr; + return temp; } else { - - } - _impl_.subnqn_.SetAllocated(subnqn, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.subnqn_.IsDefault()) { - _impl_.subnqn_.Set("", GetArenaForAllocation()); + return nullptr; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:opi_api.storage.v1.FabricsPath.subnqn) } - -// .opi_api.storage.v1.NvmeAddressFamily adrfam = 3 [(.google.api.field_behavior) = REQUIRED]; -inline void FabricsPath::clear_adrfam() { - _impl_.adrfam_ = 0; -} -inline ::opi_api::storage::v1::NvmeAddressFamily FabricsPath::_internal_adrfam() const { - return static_cast< ::opi_api::storage::v1::NvmeAddressFamily >(_impl_.adrfam_); +inline const ::opi_api::storage::v1::FabricsEndpoint& NvmePath::_internal_fabrics() const { + return _internal_has_fabrics() + ? *_impl_.endpoint_.fabrics_ + : reinterpret_cast< ::opi_api::storage::v1::FabricsEndpoint&>(::opi_api::storage::v1::_FabricsEndpoint_default_instance_); } -inline ::opi_api::storage::v1::NvmeAddressFamily FabricsPath::adrfam() const { - // @@protoc_insertion_point(field_get:opi_api.storage.v1.FabricsPath.adrfam) - return _internal_adrfam(); -} -inline void FabricsPath::_internal_set_adrfam(::opi_api::storage::v1::NvmeAddressFamily value) { - - _impl_.adrfam_ = value; -} -inline void FabricsPath::set_adrfam(::opi_api::storage::v1::NvmeAddressFamily value) { - _internal_set_adrfam(value); - // @@protoc_insertion_point(field_set:opi_api.storage.v1.FabricsPath.adrfam) -} - -// string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; -inline void FabricsPath::clear_source_traddr() { - _impl_.source_traddr_.ClearToEmpty(); -} -inline const std::string& FabricsPath::source_traddr() const { - // @@protoc_insertion_point(field_get:opi_api.storage.v1.FabricsPath.source_traddr) - return _internal_source_traddr(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void FabricsPath::set_source_traddr(ArgT0&& arg0, ArgT... args) { - - _impl_.source_traddr_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:opi_api.storage.v1.FabricsPath.source_traddr) -} -inline std::string* FabricsPath::mutable_source_traddr() { - std::string* _s = _internal_mutable_source_traddr(); - // @@protoc_insertion_point(field_mutable:opi_api.storage.v1.FabricsPath.source_traddr) - return _s; -} -inline const std::string& FabricsPath::_internal_source_traddr() const { - return _impl_.source_traddr_.Get(); -} -inline void FabricsPath::_internal_set_source_traddr(const std::string& value) { - - _impl_.source_traddr_.Set(value, GetArenaForAllocation()); -} -inline std::string* FabricsPath::_internal_mutable_source_traddr() { - - return _impl_.source_traddr_.Mutable(GetArenaForAllocation()); -} -inline std::string* FabricsPath::release_source_traddr() { - // @@protoc_insertion_point(field_release:opi_api.storage.v1.FabricsPath.source_traddr) - return _impl_.source_traddr_.Release(); +inline const ::opi_api::storage::v1::FabricsEndpoint& NvmePath::fabrics() const { + // @@protoc_insertion_point(field_get:opi_api.storage.v1.NvmePath.fabrics) + return _internal_fabrics(); } -inline void FabricsPath::set_allocated_source_traddr(std::string* source_traddr) { - if (source_traddr != nullptr) { - +inline ::opi_api::storage::v1::FabricsEndpoint* NvmePath::unsafe_arena_release_fabrics() { + // @@protoc_insertion_point(field_unsafe_arena_release:opi_api.storage.v1.NvmePath.fabrics) + if (_internal_has_fabrics()) { + clear_has_endpoint(); + ::opi_api::storage::v1::FabricsEndpoint* temp = _impl_.endpoint_.fabrics_; + _impl_.endpoint_.fabrics_ = nullptr; + return temp; } else { - - } - _impl_.source_traddr_.SetAllocated(source_traddr, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.source_traddr_.IsDefault()) { - _impl_.source_traddr_.Set("", GetArenaForAllocation()); + return nullptr; } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:opi_api.storage.v1.FabricsPath.source_traddr) -} - -// int64 source_trsvcid = 5 [(.google.api.field_behavior) = OPTIONAL]; -inline void FabricsPath::clear_source_trsvcid() { - _impl_.source_trsvcid_ = int64_t{0}; -} -inline int64_t FabricsPath::_internal_source_trsvcid() const { - return _impl_.source_trsvcid_; } -inline int64_t FabricsPath::source_trsvcid() const { - // @@protoc_insertion_point(field_get:opi_api.storage.v1.FabricsPath.source_trsvcid) - return _internal_source_trsvcid(); +inline void NvmePath::unsafe_arena_set_allocated_fabrics(::opi_api::storage::v1::FabricsEndpoint* fabrics) { + clear_endpoint(); + if (fabrics) { + set_has_fabrics(); + _impl_.endpoint_.fabrics_ = fabrics; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:opi_api.storage.v1.NvmePath.fabrics) } -inline void FabricsPath::_internal_set_source_trsvcid(int64_t value) { - - _impl_.source_trsvcid_ = value; +inline ::opi_api::storage::v1::FabricsEndpoint* NvmePath::_internal_mutable_fabrics() { + if (!_internal_has_fabrics()) { + clear_endpoint(); + set_has_fabrics(); + _impl_.endpoint_.fabrics_ = CreateMaybeMessage< ::opi_api::storage::v1::FabricsEndpoint >(GetArenaForAllocation()); + } + return _impl_.endpoint_.fabrics_; } -inline void FabricsPath::set_source_trsvcid(int64_t value) { - _internal_set_source_trsvcid(value); - // @@protoc_insertion_point(field_set:opi_api.storage.v1.FabricsPath.source_trsvcid) +inline ::opi_api::storage::v1::FabricsEndpoint* NvmePath::mutable_fabrics() { + ::opi_api::storage::v1::FabricsEndpoint* _msg = _internal_mutable_fabrics(); + // @@protoc_insertion_point(field_mutable:opi_api.storage.v1.NvmePath.fabrics) + return _msg; } -// string hostnqn = 6 [(.google.api.field_behavior) = OPTIONAL]; -inline void FabricsPath::clear_hostnqn() { - _impl_.hostnqn_.ClearToEmpty(); -} -inline const std::string& FabricsPath::hostnqn() const { - // @@protoc_insertion_point(field_get:opi_api.storage.v1.FabricsPath.hostnqn) - return _internal_hostnqn(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void FabricsPath::set_hostnqn(ArgT0&& arg0, ArgT... args) { - - _impl_.hostnqn_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:opi_api.storage.v1.FabricsPath.hostnqn) -} -inline std::string* FabricsPath::mutable_hostnqn() { - std::string* _s = _internal_mutable_hostnqn(); - // @@protoc_insertion_point(field_mutable:opi_api.storage.v1.FabricsPath.hostnqn) - return _s; -} -inline const std::string& FabricsPath::_internal_hostnqn() const { - return _impl_.hostnqn_.Get(); -} -inline void FabricsPath::_internal_set_hostnqn(const std::string& value) { - - _impl_.hostnqn_.Set(value, GetArenaForAllocation()); -} -inline std::string* FabricsPath::_internal_mutable_hostnqn() { - - return _impl_.hostnqn_.Mutable(GetArenaForAllocation()); +inline bool NvmePath::has_endpoint() const { + return endpoint_case() != ENDPOINT_NOT_SET; } -inline std::string* FabricsPath::release_hostnqn() { - // @@protoc_insertion_point(field_release:opi_api.storage.v1.FabricsPath.hostnqn) - return _impl_.hostnqn_.Release(); +inline void NvmePath::clear_has_endpoint() { + _impl_._oneof_case_[0] = ENDPOINT_NOT_SET; } -inline void FabricsPath::set_allocated_hostnqn(std::string* hostnqn) { - if (hostnqn != nullptr) { - - } else { - - } - _impl_.hostnqn_.SetAllocated(hostnqn, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.hostnqn_.IsDefault()) { - _impl_.hostnqn_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:opi_api.storage.v1.FabricsPath.hostnqn) +inline NvmePath::EndpointCase NvmePath::endpoint_case() const { + return NvmePath::EndpointCase(_impl_._oneof_case_[0]); } - // ------------------------------------------------------------------- // NvmeRemoteNamespace @@ -7676,8 +7396,6 @@ inline void StatsNvmePathResponse::set_allocated_stats(::opi_api::storage::v1::V // ------------------------------------------------------------------- -// ------------------------------------------------------------------- - // @@protoc_insertion_point(namespace_scope) diff --git a/storage/v1alpha1/gen/cpp/opicommon.pb.cc b/storage/v1alpha1/gen/cpp/opicommon.pb.cc index fda8701e..05fdc7be 100644 --- a/storage/v1alpha1/gen/cpp/opicommon.pb.cc +++ b/storage/v1alpha1/gen/cpp/opicommon.pb.cc @@ -28,6 +28,7 @@ PROTOBUF_CONSTEXPR PciEndpoint::PciEndpoint( /*decltype(_impl_.port_id_)*/nullptr , /*decltype(_impl_.physical_function_)*/nullptr , /*decltype(_impl_.virtual_function_)*/nullptr + , /*decltype(_impl_.domain_id_)*/nullptr , /*decltype(_impl_._cached_size_)*/{}} {} struct PciEndpointDefaultTypeInternal { PROTOBUF_CONSTEXPR PciEndpointDefaultTypeInternal() @@ -42,6 +43,8 @@ PROTOBUF_CONSTEXPR FabricsEndpoint::FabricsEndpoint( ::_pbi::ConstantInitialized): _impl_{ /*decltype(_impl_.traddr_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} , /*decltype(_impl_.trsvcid_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.source_traddr_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.source_trsvcid_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} , /*decltype(_impl_.adrfam_)*/0 , /*decltype(_impl_._cached_size_)*/{}} {} struct FabricsEndpointDefaultTypeInternal { @@ -109,6 +112,7 @@ const uint32_t TableStruct_opicommon_2eproto::offsets[] PROTOBUF_SECTION_VARIABL PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::PciEndpoint, _impl_.port_id_), PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::PciEndpoint, _impl_.physical_function_), PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::PciEndpoint, _impl_.virtual_function_), + PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::PciEndpoint, _impl_.domain_id_), ~0u, // no _has_bits_ PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::FabricsEndpoint, _internal_metadata_), ~0u, // no _extensions_ @@ -118,6 +122,8 @@ const uint32_t TableStruct_opicommon_2eproto::offsets[] PROTOBUF_SECTION_VARIABL PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::FabricsEndpoint, _impl_.traddr_), PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::FabricsEndpoint, _impl_.trsvcid_), PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::FabricsEndpoint, _impl_.adrfam_), + PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::FabricsEndpoint, _impl_.source_traddr_), + PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::FabricsEndpoint, _impl_.source_trsvcid_), ~0u, // no _has_bits_ PROTOBUF_FIELD_OFFSET(::opi_api::storage::v1::VolumeStats, _internal_metadata_), ~0u, // no _extensions_ @@ -148,9 +154,9 @@ const uint32_t TableStruct_opicommon_2eproto::offsets[] PROTOBUF_SECTION_VARIABL }; static const ::_pbi::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { { 0, -1, -1, sizeof(::opi_api::storage::v1::PciEndpoint)}, - { 9, -1, -1, sizeof(::opi_api::storage::v1::FabricsEndpoint)}, - { 18, -1, -1, sizeof(::opi_api::storage::v1::VolumeStats)}, - { 33, -1, -1, sizeof(::opi_api::storage::v1::QosLimit)}, + { 10, -1, -1, sizeof(::opi_api::storage::v1::FabricsEndpoint)}, + { 21, -1, -1, sizeof(::opi_api::storage::v1::VolumeStats)}, + { 36, -1, -1, sizeof(::opi_api::storage::v1::QosLimit)}, }; static const ::_pb::Message* const file_default_instances[] = { @@ -163,45 +169,48 @@ static const ::_pb::Message* const file_default_instances[] = { const char descriptor_table_protodef_opicommon_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = "\n\017opicommon.proto\022\022opi_api.storage.v1\032\037g" "oogle/api/field_behavior.proto\032\036google/p" - "rotobuf/wrappers.proto\"\271\001\n\013PciEndpoint\0221" + "rotobuf/wrappers.proto\"\356\001\n\013PciEndpoint\0221" "\n\007port_id\030\001 \001(\0132\033.google.protobuf.Int32V" "alueB\003\340A\002\022;\n\021physical_function\030\002 \001(\0132\033.g" "oogle.protobuf.Int32ValueB\003\340A\002\022:\n\020virtua" "l_function\030\003 \001(\0132\033.google.protobuf.Int32" - "ValueB\003\340A\002\"x\n\017FabricsEndpoint\022\023\n\006traddr\030" - "\001 \001(\tB\003\340A\002\022\024\n\007trsvcid\030\002 \001(\tB\003\340A\002\022:\n\006adrf" - "am\030\003 \001(\0162%.opi_api.storage.v1.NvmeAddres" - "sFamilyB\003\340A\002\"\252\002\n\013VolumeStats\022\035\n\020read_byt" - "es_count\030\001 \001(\005B\003\340A\003\022\033\n\016read_ops_count\030\002 " - "\001(\005B\003\340A\003\022\036\n\021write_bytes_count\030\003 \001(\005B\003\340A\003" - "\022\034\n\017write_ops_count\030\004 \001(\005B\003\340A\003\022\036\n\021unmap_" - "bytes_count\030\005 \001(\005B\003\340A\003\022\034\n\017unmap_ops_coun" - "t\030\006 \001(\005B\003\340A\003\022\037\n\022read_latency_ticks\030\007 \001(\005" - "B\003\340A\003\022 \n\023write_latency_ticks\030\010 \001(\005B\003\340A\003\022" - " \n\023unmap_latency_ticks\030\t \001(\005B\003\340A\003\"\273\001\n\010Qo" - "sLimit\022\032\n\rrd_iops_kiops\030\001 \001(\003B\003\340A\001\022\032\n\rwr" - "_iops_kiops\030\002 \001(\003B\003\340A\001\022\032\n\rrw_iops_kiops\030" - "\003 \001(\003B\003\340A\001\022\035\n\020rd_bandwidth_mbs\030\004 \001(\003B\003\340A" - "\001\022\035\n\020wr_bandwidth_mbs\030\005 \001(\003B\003\340A\001\022\035\n\020rw_b" - "andwidth_mbs\030\006 \001(\003B\003\340A\001*\367\001\n\016EncryptionTy" - "pe\022\037\n\033ENCRYPTION_TYPE_UNSPECIFIED\020\000\022\037\n\033E" - "NCRYPTION_TYPE_AES_CBC_128\020\001\022\037\n\033ENCRYPTI" - "ON_TYPE_AES_CBC_192\020\002\022\037\n\033ENCRYPTION_TYPE" - "_AES_CBC_256\020\003\022\037\n\033ENCRYPTION_TYPE_AES_XT" - "S_128\020\004\022\037\n\033ENCRYPTION_TYPE_AES_XTS_192\020\005" - "\022\037\n\033ENCRYPTION_TYPE_AES_XTS_256\020\006*\264\001\n\021Nv" - "meTransportType\022#\n\037NVME_TRANSPORT_TYPE_U" - "NSPECIFIED\020\000\022\025\n\021NVME_TRANSPORT_FC\020\001\022\027\n\023N" - "VME_TRANSPORT_PCIE\020\002\022\027\n\023NVME_TRANSPORT_R" - "DMA\020\003\022\026\n\022NVME_TRANSPORT_TCP\020\004\022\031\n\025NVME_TR" - "ANSPORT_CUSTOM\020\005*\250\001\n\021NvmeAddressFamily\022#" - "\n\037NVME_ADDRESS_FAMILY_UNSPECIFIED\020\000\022\024\n\020N" - "VME_ADRFAM_IPV4\020\001\022\024\n\020NVME_ADRFAM_IPV6\020\002\022" - "\022\n\016NVME_ADRFAM_IB\020\003\022\022\n\016NVME_ADRFAM_FC\020\004\022" - "\032\n\026NVME_ADRFAM_INTRA_HOST\020\005B]\n\022opi_api.s" - "torage.v1B\016OpiCommonProtoP\001Z5github.com/" - "opiproject/opi-api/storage/v1alpha1/gen/" - "gob\006proto3" + "ValueB\003\340A\002\0223\n\tdomain_id\030\004 \001(\0132\033.google.p" + "rotobuf.Int32ValueB\003\340A\001\"\261\001\n\017FabricsEndpo" + "int\022\023\n\006traddr\030\001 \001(\tB\003\340A\002\022\024\n\007trsvcid\030\002 \001(" + "\tB\003\340A\002\022:\n\006adrfam\030\003 \001(\0162%.opi_api.storage" + ".v1.NvmeAddressFamilyB\003\340A\002\022\032\n\rsource_tra" + "ddr\030\004 \001(\tB\003\340A\001\022\033\n\016source_trsvcid\030\005 \001(\tB\003" + "\340A\001\"\252\002\n\013VolumeStats\022\035\n\020read_bytes_count\030" + "\001 \001(\005B\003\340A\003\022\033\n\016read_ops_count\030\002 \001(\005B\003\340A\003\022" + "\036\n\021write_bytes_count\030\003 \001(\005B\003\340A\003\022\034\n\017write" + "_ops_count\030\004 \001(\005B\003\340A\003\022\036\n\021unmap_bytes_cou" + "nt\030\005 \001(\005B\003\340A\003\022\034\n\017unmap_ops_count\030\006 \001(\005B\003" + "\340A\003\022\037\n\022read_latency_ticks\030\007 \001(\005B\003\340A\003\022 \n\023" + "write_latency_ticks\030\010 \001(\005B\003\340A\003\022 \n\023unmap_" + "latency_ticks\030\t \001(\005B\003\340A\003\"\273\001\n\010QosLimit\022\032\n" + "\rrd_iops_kiops\030\001 \001(\003B\003\340A\001\022\032\n\rwr_iops_kio" + "ps\030\002 \001(\003B\003\340A\001\022\032\n\rrw_iops_kiops\030\003 \001(\003B\003\340A" + "\001\022\035\n\020rd_bandwidth_mbs\030\004 \001(\003B\003\340A\001\022\035\n\020wr_b" + "andwidth_mbs\030\005 \001(\003B\003\340A\001\022\035\n\020rw_bandwidth_" + "mbs\030\006 \001(\003B\003\340A\001*\367\001\n\016EncryptionType\022\037\n\033ENC" + "RYPTION_TYPE_UNSPECIFIED\020\000\022\037\n\033ENCRYPTION" + "_TYPE_AES_CBC_128\020\001\022\037\n\033ENCRYPTION_TYPE_A" + "ES_CBC_192\020\002\022\037\n\033ENCRYPTION_TYPE_AES_CBC_" + "256\020\003\022\037\n\033ENCRYPTION_TYPE_AES_XTS_128\020\004\022\037" + "\n\033ENCRYPTION_TYPE_AES_XTS_192\020\005\022\037\n\033ENCRY" + "PTION_TYPE_AES_XTS_256\020\006*\264\001\n\021NvmeTranspo" + "rtType\022#\n\037NVME_TRANSPORT_TYPE_UNSPECIFIE" + "D\020\000\022\025\n\021NVME_TRANSPORT_FC\020\001\022\027\n\023NVME_TRANS" + "PORT_PCIE\020\002\022\027\n\023NVME_TRANSPORT_RDMA\020\003\022\026\n\022" + "NVME_TRANSPORT_TCP\020\004\022\031\n\025NVME_TRANSPORT_C" + "USTOM\020\005*\250\001\n\021NvmeAddressFamily\022#\n\037NVME_AD" + "DRESS_FAMILY_UNSPECIFIED\020\000\022\024\n\020NVME_ADRFA" + "M_IPV4\020\001\022\024\n\020NVME_ADRFAM_IPV6\020\002\022\022\n\016NVME_A" + "DRFAM_IB\020\003\022\022\n\016NVME_ADRFAM_FC\020\004\022\032\n\026NVME_A" + "DRFAM_INTRA_HOST\020\005B]\n\022opi_api.storage.v1" + "B\016OpiCommonProtoP\001Z5github.com/opiprojec" + "t/opi-api/storage/v1alpha1/gen/gob\006proto" + "3" ; static const ::_pbi::DescriptorTable* const descriptor_table_opicommon_2eproto_deps[2] = { &::descriptor_table_google_2fapi_2ffield_5fbehavior_2eproto, @@ -209,7 +218,7 @@ static const ::_pbi::DescriptorTable* const descriptor_table_opicommon_2eproto_d }; static ::_pbi::once_flag descriptor_table_opicommon_2eproto_once; const ::_pbi::DescriptorTable descriptor_table_opicommon_2eproto = { - false, false, 1610, descriptor_table_protodef_opicommon_2eproto, + false, false, 1721, descriptor_table_protodef_opicommon_2eproto, "opicommon.proto", &descriptor_table_opicommon_2eproto_once, descriptor_table_opicommon_2eproto_deps, 2, 4, schemas, file_default_instances, TableStruct_opicommon_2eproto::offsets, @@ -288,6 +297,7 @@ class PciEndpoint::_Internal { static const ::PROTOBUF_NAMESPACE_ID::Int32Value& port_id(const PciEndpoint* msg); static const ::PROTOBUF_NAMESPACE_ID::Int32Value& physical_function(const PciEndpoint* msg); static const ::PROTOBUF_NAMESPACE_ID::Int32Value& virtual_function(const PciEndpoint* msg); + static const ::PROTOBUF_NAMESPACE_ID::Int32Value& domain_id(const PciEndpoint* msg); }; const ::PROTOBUF_NAMESPACE_ID::Int32Value& @@ -302,6 +312,10 @@ const ::PROTOBUF_NAMESPACE_ID::Int32Value& PciEndpoint::_Internal::virtual_function(const PciEndpoint* msg) { return *msg->_impl_.virtual_function_; } +const ::PROTOBUF_NAMESPACE_ID::Int32Value& +PciEndpoint::_Internal::domain_id(const PciEndpoint* msg) { + return *msg->_impl_.domain_id_; +} void PciEndpoint::clear_port_id() { if (GetArenaForAllocation() == nullptr && _impl_.port_id_ != nullptr) { delete _impl_.port_id_; @@ -320,6 +334,12 @@ void PciEndpoint::clear_virtual_function() { } _impl_.virtual_function_ = nullptr; } +void PciEndpoint::clear_domain_id() { + if (GetArenaForAllocation() == nullptr && _impl_.domain_id_ != nullptr) { + delete _impl_.domain_id_; + } + _impl_.domain_id_ = nullptr; +} PciEndpoint::PciEndpoint(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned) : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { @@ -333,6 +353,7 @@ PciEndpoint::PciEndpoint(const PciEndpoint& from) decltype(_impl_.port_id_){nullptr} , decltype(_impl_.physical_function_){nullptr} , decltype(_impl_.virtual_function_){nullptr} + , decltype(_impl_.domain_id_){nullptr} , /*decltype(_impl_._cached_size_)*/{}}; _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); @@ -345,6 +366,9 @@ PciEndpoint::PciEndpoint(const PciEndpoint& from) if (from._internal_has_virtual_function()) { _this->_impl_.virtual_function_ = new ::PROTOBUF_NAMESPACE_ID::Int32Value(*from._impl_.virtual_function_); } + if (from._internal_has_domain_id()) { + _this->_impl_.domain_id_ = new ::PROTOBUF_NAMESPACE_ID::Int32Value(*from._impl_.domain_id_); + } // @@protoc_insertion_point(copy_constructor:opi_api.storage.v1.PciEndpoint) } @@ -356,6 +380,7 @@ inline void PciEndpoint::SharedCtor( decltype(_impl_.port_id_){nullptr} , decltype(_impl_.physical_function_){nullptr} , decltype(_impl_.virtual_function_){nullptr} + , decltype(_impl_.domain_id_){nullptr} , /*decltype(_impl_._cached_size_)*/{} }; } @@ -374,6 +399,7 @@ inline void PciEndpoint::SharedDtor() { if (this != internal_default_instance()) delete _impl_.port_id_; if (this != internal_default_instance()) delete _impl_.physical_function_; if (this != internal_default_instance()) delete _impl_.virtual_function_; + if (this != internal_default_instance()) delete _impl_.domain_id_; } void PciEndpoint::SetCachedSize(int size) const { @@ -398,6 +424,10 @@ void PciEndpoint::Clear() { delete _impl_.virtual_function_; } _impl_.virtual_function_ = nullptr; + if (GetArenaForAllocation() == nullptr && _impl_.domain_id_ != nullptr) { + delete _impl_.domain_id_; + } + _impl_.domain_id_ = nullptr; _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } @@ -431,6 +461,14 @@ const char* PciEndpoint::_InternalParse(const char* ptr, ::_pbi::ParseContext* c } else goto handle_unusual; continue; + // .google.protobuf.Int32Value domain_id = 4 [(.google.api.field_behavior) = OPTIONAL]; + case 4: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 34)) { + ptr = ctx->ParseMessage(_internal_mutable_domain_id(), ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; default: goto handle_unusual; } // switch @@ -481,6 +519,13 @@ uint8_t* PciEndpoint::_InternalSerialize( _Internal::virtual_function(this).GetCachedSize(), target, stream); } + // .google.protobuf.Int32Value domain_id = 4 [(.google.api.field_behavior) = OPTIONAL]; + if (this->_internal_has_domain_id()) { + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(4, _Internal::domain_id(this), + _Internal::domain_id(this).GetCachedSize(), target, stream); + } + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); @@ -518,6 +563,13 @@ size_t PciEndpoint::ByteSizeLong() const { *_impl_.virtual_function_); } + // .google.protobuf.Int32Value domain_id = 4 [(.google.api.field_behavior) = OPTIONAL]; + if (this->_internal_has_domain_id()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *_impl_.domain_id_); + } + return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); } @@ -548,6 +600,10 @@ void PciEndpoint::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PR _this->_internal_mutable_virtual_function()->::PROTOBUF_NAMESPACE_ID::Int32Value::MergeFrom( from._internal_virtual_function()); } + if (from._internal_has_domain_id()) { + _this->_internal_mutable_domain_id()->::PROTOBUF_NAMESPACE_ID::Int32Value::MergeFrom( + from._internal_domain_id()); + } _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); } @@ -566,8 +622,8 @@ void PciEndpoint::InternalSwap(PciEndpoint* other) { using std::swap; _internal_metadata_.InternalSwap(&other->_internal_metadata_); ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(PciEndpoint, _impl_.virtual_function_) - + sizeof(PciEndpoint::_impl_.virtual_function_) + PROTOBUF_FIELD_OFFSET(PciEndpoint, _impl_.domain_id_) + + sizeof(PciEndpoint::_impl_.domain_id_) - PROTOBUF_FIELD_OFFSET(PciEndpoint, _impl_.port_id_)>( reinterpret_cast(&_impl_.port_id_), reinterpret_cast(&other->_impl_.port_id_)); @@ -597,6 +653,8 @@ FabricsEndpoint::FabricsEndpoint(const FabricsEndpoint& from) new (&_impl_) Impl_{ decltype(_impl_.traddr_){} , decltype(_impl_.trsvcid_){} + , decltype(_impl_.source_traddr_){} + , decltype(_impl_.source_trsvcid_){} , decltype(_impl_.adrfam_){} , /*decltype(_impl_._cached_size_)*/{}}; @@ -617,6 +675,22 @@ FabricsEndpoint::FabricsEndpoint(const FabricsEndpoint& from) _this->_impl_.trsvcid_.Set(from._internal_trsvcid(), _this->GetArenaForAllocation()); } + _impl_.source_traddr_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.source_traddr_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (!from._internal_source_traddr().empty()) { + _this->_impl_.source_traddr_.Set(from._internal_source_traddr(), + _this->GetArenaForAllocation()); + } + _impl_.source_trsvcid_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.source_trsvcid_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (!from._internal_source_trsvcid().empty()) { + _this->_impl_.source_trsvcid_.Set(from._internal_source_trsvcid(), + _this->GetArenaForAllocation()); + } _this->_impl_.adrfam_ = from._impl_.adrfam_; // @@protoc_insertion_point(copy_constructor:opi_api.storage.v1.FabricsEndpoint) } @@ -628,6 +702,8 @@ inline void FabricsEndpoint::SharedCtor( new (&_impl_) Impl_{ decltype(_impl_.traddr_){} , decltype(_impl_.trsvcid_){} + , decltype(_impl_.source_traddr_){} + , decltype(_impl_.source_trsvcid_){} , decltype(_impl_.adrfam_){0} , /*decltype(_impl_._cached_size_)*/{} }; @@ -639,6 +715,14 @@ inline void FabricsEndpoint::SharedCtor( #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING _impl_.trsvcid_.Set("", GetArenaForAllocation()); #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.source_traddr_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.source_traddr_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.source_trsvcid_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.source_trsvcid_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING } FabricsEndpoint::~FabricsEndpoint() { @@ -654,6 +738,8 @@ inline void FabricsEndpoint::SharedDtor() { GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); _impl_.traddr_.Destroy(); _impl_.trsvcid_.Destroy(); + _impl_.source_traddr_.Destroy(); + _impl_.source_trsvcid_.Destroy(); } void FabricsEndpoint::SetCachedSize(int size) const { @@ -668,6 +754,8 @@ void FabricsEndpoint::Clear() { _impl_.traddr_.ClearToEmpty(); _impl_.trsvcid_.ClearToEmpty(); + _impl_.source_traddr_.ClearToEmpty(); + _impl_.source_trsvcid_.ClearToEmpty(); _impl_.adrfam_ = 0; _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } @@ -707,6 +795,26 @@ const char* FabricsEndpoint::_InternalParse(const char* ptr, ::_pbi::ParseContex } else goto handle_unusual; continue; + // string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; + case 4: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 34)) { + auto str = _internal_mutable_source_traddr(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "opi_api.storage.v1.FabricsEndpoint.source_traddr")); + } else + goto handle_unusual; + continue; + // string source_trsvcid = 5 [(.google.api.field_behavior) = OPTIONAL]; + case 5: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 42)) { + auto str = _internal_mutable_source_trsvcid(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "opi_api.storage.v1.FabricsEndpoint.source_trsvcid")); + } else + goto handle_unusual; + continue; default: goto handle_unusual; } // switch @@ -763,6 +871,26 @@ uint8_t* FabricsEndpoint::_InternalSerialize( 3, this->_internal_adrfam(), target); } + // string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; + if (!this->_internal_source_traddr().empty()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_source_traddr().data(), static_cast(this->_internal_source_traddr().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "opi_api.storage.v1.FabricsEndpoint.source_traddr"); + target = stream->WriteStringMaybeAliased( + 4, this->_internal_source_traddr(), target); + } + + // string source_trsvcid = 5 [(.google.api.field_behavior) = OPTIONAL]; + if (!this->_internal_source_trsvcid().empty()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_source_trsvcid().data(), static_cast(this->_internal_source_trsvcid().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "opi_api.storage.v1.FabricsEndpoint.source_trsvcid"); + target = stream->WriteStringMaybeAliased( + 5, this->_internal_source_trsvcid(), target); + } + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); @@ -793,6 +921,20 @@ size_t FabricsEndpoint::ByteSizeLong() const { this->_internal_trsvcid()); } + // string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; + if (!this->_internal_source_traddr().empty()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_source_traddr()); + } + + // string source_trsvcid = 5 [(.google.api.field_behavior) = OPTIONAL]; + if (!this->_internal_source_trsvcid().empty()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_source_trsvcid()); + } + // .opi_api.storage.v1.NvmeAddressFamily adrfam = 3 [(.google.api.field_behavior) = REQUIRED]; if (this->_internal_adrfam() != 0) { total_size += 1 + @@ -823,6 +965,12 @@ void FabricsEndpoint::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const if (!from._internal_trsvcid().empty()) { _this->_internal_set_trsvcid(from._internal_trsvcid()); } + if (!from._internal_source_traddr().empty()) { + _this->_internal_set_source_traddr(from._internal_source_traddr()); + } + if (!from._internal_source_trsvcid().empty()) { + _this->_internal_set_source_trsvcid(from._internal_source_trsvcid()); + } if (from._internal_adrfam() != 0) { _this->_internal_set_adrfam(from._internal_adrfam()); } @@ -853,6 +1001,14 @@ void FabricsEndpoint::InternalSwap(FabricsEndpoint* other) { &_impl_.trsvcid_, lhs_arena, &other->_impl_.trsvcid_, rhs_arena ); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.source_traddr_, lhs_arena, + &other->_impl_.source_traddr_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.source_trsvcid_, lhs_arena, + &other->_impl_.source_trsvcid_, rhs_arena + ); swap(_impl_.adrfam_, other->_impl_.adrfam_); } diff --git a/storage/v1alpha1/gen/cpp/opicommon.pb.h b/storage/v1alpha1/gen/cpp/opicommon.pb.h index 82bb5152..aecb9781 100644 --- a/storage/v1alpha1/gen/cpp/opicommon.pb.h +++ b/storage/v1alpha1/gen/cpp/opicommon.pb.h @@ -289,6 +289,7 @@ class PciEndpoint final : kPortIdFieldNumber = 1, kPhysicalFunctionFieldNumber = 2, kVirtualFunctionFieldNumber = 3, + kDomainIdFieldNumber = 4, }; // .google.protobuf.Int32Value port_id = 1 [(.google.api.field_behavior) = REQUIRED]; bool has_port_id() const; @@ -344,6 +345,24 @@ class PciEndpoint final : ::PROTOBUF_NAMESPACE_ID::Int32Value* virtual_function); ::PROTOBUF_NAMESPACE_ID::Int32Value* unsafe_arena_release_virtual_function(); + // .google.protobuf.Int32Value domain_id = 4 [(.google.api.field_behavior) = OPTIONAL]; + bool has_domain_id() const; + private: + bool _internal_has_domain_id() const; + public: + void clear_domain_id(); + const ::PROTOBUF_NAMESPACE_ID::Int32Value& domain_id() const; + PROTOBUF_NODISCARD ::PROTOBUF_NAMESPACE_ID::Int32Value* release_domain_id(); + ::PROTOBUF_NAMESPACE_ID::Int32Value* mutable_domain_id(); + void set_allocated_domain_id(::PROTOBUF_NAMESPACE_ID::Int32Value* domain_id); + private: + const ::PROTOBUF_NAMESPACE_ID::Int32Value& _internal_domain_id() const; + ::PROTOBUF_NAMESPACE_ID::Int32Value* _internal_mutable_domain_id(); + public: + void unsafe_arena_set_allocated_domain_id( + ::PROTOBUF_NAMESPACE_ID::Int32Value* domain_id); + ::PROTOBUF_NAMESPACE_ID::Int32Value* unsafe_arena_release_domain_id(); + // @@protoc_insertion_point(class_scope:opi_api.storage.v1.PciEndpoint) private: class _Internal; @@ -355,6 +374,7 @@ class PciEndpoint final : ::PROTOBUF_NAMESPACE_ID::Int32Value* port_id_; ::PROTOBUF_NAMESPACE_ID::Int32Value* physical_function_; ::PROTOBUF_NAMESPACE_ID::Int32Value* virtual_function_; + ::PROTOBUF_NAMESPACE_ID::Int32Value* domain_id_; mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; }; union { Impl_ _impl_; }; @@ -485,6 +505,8 @@ class FabricsEndpoint final : enum : int { kTraddrFieldNumber = 1, kTrsvcidFieldNumber = 2, + kSourceTraddrFieldNumber = 4, + kSourceTrsvcidFieldNumber = 5, kAdrfamFieldNumber = 3, }; // string traddr = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -515,6 +537,34 @@ class FabricsEndpoint final : std::string* _internal_mutable_trsvcid(); public: + // string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; + void clear_source_traddr(); + const std::string& source_traddr() const; + template + void set_source_traddr(ArgT0&& arg0, ArgT... args); + std::string* mutable_source_traddr(); + PROTOBUF_NODISCARD std::string* release_source_traddr(); + void set_allocated_source_traddr(std::string* source_traddr); + private: + const std::string& _internal_source_traddr() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_source_traddr(const std::string& value); + std::string* _internal_mutable_source_traddr(); + public: + + // string source_trsvcid = 5 [(.google.api.field_behavior) = OPTIONAL]; + void clear_source_trsvcid(); + const std::string& source_trsvcid() const; + template + void set_source_trsvcid(ArgT0&& arg0, ArgT... args); + std::string* mutable_source_trsvcid(); + PROTOBUF_NODISCARD std::string* release_source_trsvcid(); + void set_allocated_source_trsvcid(std::string* source_trsvcid); + private: + const std::string& _internal_source_trsvcid() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_source_trsvcid(const std::string& value); + std::string* _internal_mutable_source_trsvcid(); + public: + // .opi_api.storage.v1.NvmeAddressFamily adrfam = 3 [(.google.api.field_behavior) = REQUIRED]; void clear_adrfam(); ::opi_api::storage::v1::NvmeAddressFamily adrfam() const; @@ -534,6 +584,8 @@ class FabricsEndpoint final : struct Impl_ { ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr traddr_; ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr trsvcid_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr source_traddr_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr source_trsvcid_; int adrfam_; mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; }; @@ -1245,6 +1297,91 @@ inline void PciEndpoint::set_allocated_virtual_function(::PROTOBUF_NAMESPACE_ID: // @@protoc_insertion_point(field_set_allocated:opi_api.storage.v1.PciEndpoint.virtual_function) } +// .google.protobuf.Int32Value domain_id = 4 [(.google.api.field_behavior) = OPTIONAL]; +inline bool PciEndpoint::_internal_has_domain_id() const { + return this != internal_default_instance() && _impl_.domain_id_ != nullptr; +} +inline bool PciEndpoint::has_domain_id() const { + return _internal_has_domain_id(); +} +inline const ::PROTOBUF_NAMESPACE_ID::Int32Value& PciEndpoint::_internal_domain_id() const { + const ::PROTOBUF_NAMESPACE_ID::Int32Value* p = _impl_.domain_id_; + return p != nullptr ? *p : reinterpret_cast( + ::PROTOBUF_NAMESPACE_ID::_Int32Value_default_instance_); +} +inline const ::PROTOBUF_NAMESPACE_ID::Int32Value& PciEndpoint::domain_id() const { + // @@protoc_insertion_point(field_get:opi_api.storage.v1.PciEndpoint.domain_id) + return _internal_domain_id(); +} +inline void PciEndpoint::unsafe_arena_set_allocated_domain_id( + ::PROTOBUF_NAMESPACE_ID::Int32Value* domain_id) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.domain_id_); + } + _impl_.domain_id_ = domain_id; + if (domain_id) { + + } else { + + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:opi_api.storage.v1.PciEndpoint.domain_id) +} +inline ::PROTOBUF_NAMESPACE_ID::Int32Value* PciEndpoint::release_domain_id() { + + ::PROTOBUF_NAMESPACE_ID::Int32Value* temp = _impl_.domain_id_; + _impl_.domain_id_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline ::PROTOBUF_NAMESPACE_ID::Int32Value* PciEndpoint::unsafe_arena_release_domain_id() { + // @@protoc_insertion_point(field_release:opi_api.storage.v1.PciEndpoint.domain_id) + + ::PROTOBUF_NAMESPACE_ID::Int32Value* temp = _impl_.domain_id_; + _impl_.domain_id_ = nullptr; + return temp; +} +inline ::PROTOBUF_NAMESPACE_ID::Int32Value* PciEndpoint::_internal_mutable_domain_id() { + + if (_impl_.domain_id_ == nullptr) { + auto* p = CreateMaybeMessage<::PROTOBUF_NAMESPACE_ID::Int32Value>(GetArenaForAllocation()); + _impl_.domain_id_ = p; + } + return _impl_.domain_id_; +} +inline ::PROTOBUF_NAMESPACE_ID::Int32Value* PciEndpoint::mutable_domain_id() { + ::PROTOBUF_NAMESPACE_ID::Int32Value* _msg = _internal_mutable_domain_id(); + // @@protoc_insertion_point(field_mutable:opi_api.storage.v1.PciEndpoint.domain_id) + return _msg; +} +inline void PciEndpoint::set_allocated_domain_id(::PROTOBUF_NAMESPACE_ID::Int32Value* domain_id) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.domain_id_); + } + if (domain_id) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena( + reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(domain_id)); + if (message_arena != submessage_arena) { + domain_id = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, domain_id, submessage_arena); + } + + } else { + + } + _impl_.domain_id_ = domain_id; + // @@protoc_insertion_point(field_set_allocated:opi_api.storage.v1.PciEndpoint.domain_id) +} + // ------------------------------------------------------------------- // FabricsEndpoint @@ -1369,6 +1506,106 @@ inline void FabricsEndpoint::set_adrfam(::opi_api::storage::v1::NvmeAddressFamil // @@protoc_insertion_point(field_set:opi_api.storage.v1.FabricsEndpoint.adrfam) } +// string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; +inline void FabricsEndpoint::clear_source_traddr() { + _impl_.source_traddr_.ClearToEmpty(); +} +inline const std::string& FabricsEndpoint::source_traddr() const { + // @@protoc_insertion_point(field_get:opi_api.storage.v1.FabricsEndpoint.source_traddr) + return _internal_source_traddr(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void FabricsEndpoint::set_source_traddr(ArgT0&& arg0, ArgT... args) { + + _impl_.source_traddr_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:opi_api.storage.v1.FabricsEndpoint.source_traddr) +} +inline std::string* FabricsEndpoint::mutable_source_traddr() { + std::string* _s = _internal_mutable_source_traddr(); + // @@protoc_insertion_point(field_mutable:opi_api.storage.v1.FabricsEndpoint.source_traddr) + return _s; +} +inline const std::string& FabricsEndpoint::_internal_source_traddr() const { + return _impl_.source_traddr_.Get(); +} +inline void FabricsEndpoint::_internal_set_source_traddr(const std::string& value) { + + _impl_.source_traddr_.Set(value, GetArenaForAllocation()); +} +inline std::string* FabricsEndpoint::_internal_mutable_source_traddr() { + + return _impl_.source_traddr_.Mutable(GetArenaForAllocation()); +} +inline std::string* FabricsEndpoint::release_source_traddr() { + // @@protoc_insertion_point(field_release:opi_api.storage.v1.FabricsEndpoint.source_traddr) + return _impl_.source_traddr_.Release(); +} +inline void FabricsEndpoint::set_allocated_source_traddr(std::string* source_traddr) { + if (source_traddr != nullptr) { + + } else { + + } + _impl_.source_traddr_.SetAllocated(source_traddr, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.source_traddr_.IsDefault()) { + _impl_.source_traddr_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:opi_api.storage.v1.FabricsEndpoint.source_traddr) +} + +// string source_trsvcid = 5 [(.google.api.field_behavior) = OPTIONAL]; +inline void FabricsEndpoint::clear_source_trsvcid() { + _impl_.source_trsvcid_.ClearToEmpty(); +} +inline const std::string& FabricsEndpoint::source_trsvcid() const { + // @@protoc_insertion_point(field_get:opi_api.storage.v1.FabricsEndpoint.source_trsvcid) + return _internal_source_trsvcid(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void FabricsEndpoint::set_source_trsvcid(ArgT0&& arg0, ArgT... args) { + + _impl_.source_trsvcid_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:opi_api.storage.v1.FabricsEndpoint.source_trsvcid) +} +inline std::string* FabricsEndpoint::mutable_source_trsvcid() { + std::string* _s = _internal_mutable_source_trsvcid(); + // @@protoc_insertion_point(field_mutable:opi_api.storage.v1.FabricsEndpoint.source_trsvcid) + return _s; +} +inline const std::string& FabricsEndpoint::_internal_source_trsvcid() const { + return _impl_.source_trsvcid_.Get(); +} +inline void FabricsEndpoint::_internal_set_source_trsvcid(const std::string& value) { + + _impl_.source_trsvcid_.Set(value, GetArenaForAllocation()); +} +inline std::string* FabricsEndpoint::_internal_mutable_source_trsvcid() { + + return _impl_.source_trsvcid_.Mutable(GetArenaForAllocation()); +} +inline std::string* FabricsEndpoint::release_source_trsvcid() { + // @@protoc_insertion_point(field_release:opi_api.storage.v1.FabricsEndpoint.source_trsvcid) + return _impl_.source_trsvcid_.Release(); +} +inline void FabricsEndpoint::set_allocated_source_trsvcid(std::string* source_trsvcid) { + if (source_trsvcid != nullptr) { + + } else { + + } + _impl_.source_trsvcid_.SetAllocated(source_trsvcid, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.source_trsvcid_.IsDefault()) { + _impl_.source_trsvcid_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:opi_api.storage.v1.FabricsEndpoint.source_trsvcid) +} + // ------------------------------------------------------------------- // VolumeStats diff --git a/storage/v1alpha1/gen/go/backend_nvme.pb.go b/storage/v1alpha1/gen/go/backend_nvme.pb.go index 4820b393..4a797518 100644 --- a/storage/v1alpha1/gen/go/backend_nvme.pb.go +++ b/storage/v1alpha1/gen/go/backend_nvme.pb.go @@ -98,12 +98,16 @@ type NvmeRemoteController struct { Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // Multipath mode Multipath NvmeMultipath `protobuf:"varint,2,opt,name=multipath,proto3,enum=opi_api.storage.v1.NvmeMultipath" json:"multipath,omitempty"` + // Subsystem NQN + Subnqn string `protobuf:"bytes,3,opt,name=subnqn,proto3" json:"subnqn,omitempty"` + // Host NQN + Hostnqn string `protobuf:"bytes,4,opt,name=hostnqn,proto3" json:"hostnqn,omitempty"` // IO queues count - IoQueuesCount int64 `protobuf:"varint,3,opt,name=io_queues_count,json=ioQueuesCount,proto3" json:"io_queues_count,omitempty"` + IoQueuesCount int64 `protobuf:"varint,5,opt,name=io_queues_count,json=ioQueuesCount,proto3" json:"io_queues_count,omitempty"` // Queue size - QueueSize int64 `protobuf:"varint,4,opt,name=queue_size,json=queueSize,proto3" json:"queue_size,omitempty"` + QueueSize int64 `protobuf:"varint,6,opt,name=queue_size,json=queueSize,proto3" json:"queue_size,omitempty"` // Nvme over TCP specific fields - Tcp *TcpController `protobuf:"bytes,5,opt,name=tcp,proto3" json:"tcp,omitempty"` + Tcp *TcpController `protobuf:"bytes,7,opt,name=tcp,proto3" json:"tcp,omitempty"` } func (x *NvmeRemoteController) Reset() { @@ -152,6 +156,20 @@ func (x *NvmeRemoteController) GetMultipath() NvmeMultipath { return NvmeMultipath_NVME_MULTIPATH_UNSPECIFIED } +func (x *NvmeRemoteController) GetSubnqn() string { + if x != nil { + return x.Subnqn + } + return "" +} + +func (x *NvmeRemoteController) GetHostnqn() string { + if x != nil { + return x.Hostnqn + } + return "" +} + func (x *NvmeRemoteController) GetIoQueuesCount() int64 { if x != nil { return x.IoQueuesCount @@ -262,10 +280,15 @@ type NvmePath struct { ControllerNameRef string `protobuf:"bytes,2,opt,name=controller_name_ref,json=controllerNameRef,proto3" json:"controller_name_ref,omitempty"` // Transport type Trtype NvmeTransportType `protobuf:"varint,3,opt,name=trtype,proto3,enum=opi_api.storage.v1.NvmeTransportType" json:"trtype,omitempty"` - // Destination address (e.g. IP address, BDF for local PCIe) - Traddr string `protobuf:"bytes,4,opt,name=traddr,proto3" json:"traddr,omitempty"` - // Not applicable for local PCIe. Required for Nvme over fabrics transport types - Fabrics *FabricsPath `protobuf:"bytes,5,opt,name=fabrics,proto3" json:"fabrics,omitempty"` + // xPU's PCI/Fabrics endpoint for the controller. + // One of the values is required + // see https://github.com/aip-dev/google.aip.dev/issues/1147 for field_behavior annotations + // + // Types that are assignable to Endpoint: + // + // *NvmePath_Pcie + // *NvmePath_Fabrics + Endpoint isNvmePath_Endpoint `protobuf_oneof:"endpoint"` } func (x *NvmePath) Reset() { @@ -321,113 +344,44 @@ func (x *NvmePath) GetTrtype() NvmeTransportType { return NvmeTransportType_NVME_TRANSPORT_TYPE_UNSPECIFIED } -func (x *NvmePath) GetTraddr() string { - if x != nil { - return x.Traddr - } - return "" -} - -func (x *NvmePath) GetFabrics() *FabricsPath { - if x != nil { - return x.Fabrics +func (m *NvmePath) GetEndpoint() isNvmePath_Endpoint { + if m != nil { + return m.Endpoint } return nil } -// Represents Fabrics transport path parameters -type FabricsPath struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Destination service id (e.g. Port) - Trsvcid int64 `protobuf:"varint,1,opt,name=trsvcid,proto3" json:"trsvcid,omitempty"` - // Subsystem NQN - Subnqn string `protobuf:"bytes,2,opt,name=subnqn,proto3" json:"subnqn,omitempty"` - // Address family - Adrfam NvmeAddressFamily `protobuf:"varint,3,opt,name=adrfam,proto3,enum=opi_api.storage.v1.NvmeAddressFamily" json:"adrfam,omitempty"` - // Source address (e.g. IP of local NIC) - SourceTraddr string `protobuf:"bytes,4,opt,name=source_traddr,json=sourceTraddr,proto3" json:"source_traddr,omitempty"` - // Source port (e.g. Port of local NIC) - SourceTrsvcid int64 `protobuf:"varint,5,opt,name=source_trsvcid,json=sourceTrsvcid,proto3" json:"source_trsvcid,omitempty"` - // Host NQN - Hostnqn string `protobuf:"bytes,6,opt,name=hostnqn,proto3" json:"hostnqn,omitempty"` -} - -func (x *FabricsPath) Reset() { - *x = FabricsPath{} - if protoimpl.UnsafeEnabled { - mi := &file_backend_nvme_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FabricsPath) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FabricsPath) ProtoMessage() {} - -func (x *FabricsPath) ProtoReflect() protoreflect.Message { - mi := &file_backend_nvme_proto_msgTypes[3] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *NvmePath) GetPcie() *PciEndpoint { + if x, ok := x.GetEndpoint().(*NvmePath_Pcie); ok { + return x.Pcie } - return mi.MessageOf(x) -} - -// Deprecated: Use FabricsPath.ProtoReflect.Descriptor instead. -func (*FabricsPath) Descriptor() ([]byte, []int) { - return file_backend_nvme_proto_rawDescGZIP(), []int{3} + return nil } -func (x *FabricsPath) GetTrsvcid() int64 { - if x != nil { - return x.Trsvcid +func (x *NvmePath) GetFabrics() *FabricsEndpoint { + if x, ok := x.GetEndpoint().(*NvmePath_Fabrics); ok { + return x.Fabrics } - return 0 + return nil } -func (x *FabricsPath) GetSubnqn() string { - if x != nil { - return x.Subnqn - } - return "" +type isNvmePath_Endpoint interface { + isNvmePath_Endpoint() } -func (x *FabricsPath) GetAdrfam() NvmeAddressFamily { - if x != nil { - return x.Adrfam - } - return NvmeAddressFamily_NVME_ADDRESS_FAMILY_UNSPECIFIED +type NvmePath_Pcie struct { + // Required for pcie transport type. + Pcie *PciEndpoint `protobuf:"bytes,4,opt,name=pcie,proto3,oneof"` } -func (x *FabricsPath) GetSourceTraddr() string { - if x != nil { - return x.SourceTraddr - } - return "" +type NvmePath_Fabrics struct { + // Required for Nvme over fabrics transport types + Fabrics *FabricsEndpoint `protobuf:"bytes,5,opt,name=fabrics,proto3,oneof"` } -func (x *FabricsPath) GetSourceTrsvcid() int64 { - if x != nil { - return x.SourceTrsvcid - } - return 0 -} +func (*NvmePath_Pcie) isNvmePath_Endpoint() {} -func (x *FabricsPath) GetHostnqn() string { - if x != nil { - return x.Hostnqn - } - return "" -} +func (*NvmePath_Fabrics) isNvmePath_Endpoint() {} // Represent Nvme namespace created on bridge after connection to a target type NvmeRemoteNamespace struct { @@ -455,7 +409,7 @@ type NvmeRemoteNamespace struct { func (x *NvmeRemoteNamespace) Reset() { *x = NvmeRemoteNamespace{} if protoimpl.UnsafeEnabled { - mi := &file_backend_nvme_proto_msgTypes[4] + mi := &file_backend_nvme_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -468,7 +422,7 @@ func (x *NvmeRemoteNamespace) String() string { func (*NvmeRemoteNamespace) ProtoMessage() {} func (x *NvmeRemoteNamespace) ProtoReflect() protoreflect.Message { - mi := &file_backend_nvme_proto_msgTypes[4] + mi := &file_backend_nvme_proto_msgTypes[3] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -481,7 +435,7 @@ func (x *NvmeRemoteNamespace) ProtoReflect() protoreflect.Message { // Deprecated: Use NvmeRemoteNamespace.ProtoReflect.Descriptor instead. func (*NvmeRemoteNamespace) Descriptor() ([]byte, []int) { - return file_backend_nvme_proto_rawDescGZIP(), []int{4} + return file_backend_nvme_proto_rawDescGZIP(), []int{3} } func (x *NvmeRemoteNamespace) GetName() string { @@ -542,7 +496,7 @@ type CreateNvmeRemoteControllerRequest struct { func (x *CreateNvmeRemoteControllerRequest) Reset() { *x = CreateNvmeRemoteControllerRequest{} if protoimpl.UnsafeEnabled { - mi := &file_backend_nvme_proto_msgTypes[5] + mi := &file_backend_nvme_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -555,7 +509,7 @@ func (x *CreateNvmeRemoteControllerRequest) String() string { func (*CreateNvmeRemoteControllerRequest) ProtoMessage() {} func (x *CreateNvmeRemoteControllerRequest) ProtoReflect() protoreflect.Message { - mi := &file_backend_nvme_proto_msgTypes[5] + mi := &file_backend_nvme_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -568,7 +522,7 @@ func (x *CreateNvmeRemoteControllerRequest) ProtoReflect() protoreflect.Message // Deprecated: Use CreateNvmeRemoteControllerRequest.ProtoReflect.Descriptor instead. func (*CreateNvmeRemoteControllerRequest) Descriptor() ([]byte, []int) { - return file_backend_nvme_proto_rawDescGZIP(), []int{5} + return file_backend_nvme_proto_rawDescGZIP(), []int{4} } func (x *CreateNvmeRemoteControllerRequest) GetNvmeRemoteController() *NvmeRemoteController { @@ -601,7 +555,7 @@ type DeleteNvmeRemoteControllerRequest struct { func (x *DeleteNvmeRemoteControllerRequest) Reset() { *x = DeleteNvmeRemoteControllerRequest{} if protoimpl.UnsafeEnabled { - mi := &file_backend_nvme_proto_msgTypes[6] + mi := &file_backend_nvme_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -614,7 +568,7 @@ func (x *DeleteNvmeRemoteControllerRequest) String() string { func (*DeleteNvmeRemoteControllerRequest) ProtoMessage() {} func (x *DeleteNvmeRemoteControllerRequest) ProtoReflect() protoreflect.Message { - mi := &file_backend_nvme_proto_msgTypes[6] + mi := &file_backend_nvme_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -627,7 +581,7 @@ func (x *DeleteNvmeRemoteControllerRequest) ProtoReflect() protoreflect.Message // Deprecated: Use DeleteNvmeRemoteControllerRequest.ProtoReflect.Descriptor instead. func (*DeleteNvmeRemoteControllerRequest) Descriptor() ([]byte, []int) { - return file_backend_nvme_proto_rawDescGZIP(), []int{6} + return file_backend_nvme_proto_rawDescGZIP(), []int{5} } func (x *DeleteNvmeRemoteControllerRequest) GetName() string { @@ -662,7 +616,7 @@ type UpdateNvmeRemoteControllerRequest struct { func (x *UpdateNvmeRemoteControllerRequest) Reset() { *x = UpdateNvmeRemoteControllerRequest{} if protoimpl.UnsafeEnabled { - mi := &file_backend_nvme_proto_msgTypes[7] + mi := &file_backend_nvme_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -675,7 +629,7 @@ func (x *UpdateNvmeRemoteControllerRequest) String() string { func (*UpdateNvmeRemoteControllerRequest) ProtoMessage() {} func (x *UpdateNvmeRemoteControllerRequest) ProtoReflect() protoreflect.Message { - mi := &file_backend_nvme_proto_msgTypes[7] + mi := &file_backend_nvme_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -688,7 +642,7 @@ func (x *UpdateNvmeRemoteControllerRequest) ProtoReflect() protoreflect.Message // Deprecated: Use UpdateNvmeRemoteControllerRequest.ProtoReflect.Descriptor instead. func (*UpdateNvmeRemoteControllerRequest) Descriptor() ([]byte, []int) { - return file_backend_nvme_proto_rawDescGZIP(), []int{7} + return file_backend_nvme_proto_rawDescGZIP(), []int{6} } func (x *UpdateNvmeRemoteControllerRequest) GetNvmeRemoteController() *NvmeRemoteController { @@ -729,7 +683,7 @@ type ListNvmeRemoteControllersRequest struct { func (x *ListNvmeRemoteControllersRequest) Reset() { *x = ListNvmeRemoteControllersRequest{} if protoimpl.UnsafeEnabled { - mi := &file_backend_nvme_proto_msgTypes[8] + mi := &file_backend_nvme_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -742,7 +696,7 @@ func (x *ListNvmeRemoteControllersRequest) String() string { func (*ListNvmeRemoteControllersRequest) ProtoMessage() {} func (x *ListNvmeRemoteControllersRequest) ProtoReflect() protoreflect.Message { - mi := &file_backend_nvme_proto_msgTypes[8] + mi := &file_backend_nvme_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -755,7 +709,7 @@ func (x *ListNvmeRemoteControllersRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ListNvmeRemoteControllersRequest.ProtoReflect.Descriptor instead. func (*ListNvmeRemoteControllersRequest) Descriptor() ([]byte, []int) { - return file_backend_nvme_proto_rawDescGZIP(), []int{8} + return file_backend_nvme_proto_rawDescGZIP(), []int{7} } func (x *ListNvmeRemoteControllersRequest) GetParent() string { @@ -794,7 +748,7 @@ type ListNvmeRemoteControllersResponse struct { func (x *ListNvmeRemoteControllersResponse) Reset() { *x = ListNvmeRemoteControllersResponse{} if protoimpl.UnsafeEnabled { - mi := &file_backend_nvme_proto_msgTypes[9] + mi := &file_backend_nvme_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -807,7 +761,7 @@ func (x *ListNvmeRemoteControllersResponse) String() string { func (*ListNvmeRemoteControllersResponse) ProtoMessage() {} func (x *ListNvmeRemoteControllersResponse) ProtoReflect() protoreflect.Message { - mi := &file_backend_nvme_proto_msgTypes[9] + mi := &file_backend_nvme_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -820,7 +774,7 @@ func (x *ListNvmeRemoteControllersResponse) ProtoReflect() protoreflect.Message // Deprecated: Use ListNvmeRemoteControllersResponse.ProtoReflect.Descriptor instead. func (*ListNvmeRemoteControllersResponse) Descriptor() ([]byte, []int) { - return file_backend_nvme_proto_rawDescGZIP(), []int{9} + return file_backend_nvme_proto_rawDescGZIP(), []int{8} } func (x *ListNvmeRemoteControllersResponse) GetNvmeRemoteControllers() []*NvmeRemoteController { @@ -850,7 +804,7 @@ type GetNvmeRemoteControllerRequest struct { func (x *GetNvmeRemoteControllerRequest) Reset() { *x = GetNvmeRemoteControllerRequest{} if protoimpl.UnsafeEnabled { - mi := &file_backend_nvme_proto_msgTypes[10] + mi := &file_backend_nvme_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -863,7 +817,7 @@ func (x *GetNvmeRemoteControllerRequest) String() string { func (*GetNvmeRemoteControllerRequest) ProtoMessage() {} func (x *GetNvmeRemoteControllerRequest) ProtoReflect() protoreflect.Message { - mi := &file_backend_nvme_proto_msgTypes[10] + mi := &file_backend_nvme_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -876,7 +830,7 @@ func (x *GetNvmeRemoteControllerRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetNvmeRemoteControllerRequest.ProtoReflect.Descriptor instead. func (*GetNvmeRemoteControllerRequest) Descriptor() ([]byte, []int) { - return file_backend_nvme_proto_rawDescGZIP(), []int{10} + return file_backend_nvme_proto_rawDescGZIP(), []int{9} } func (x *GetNvmeRemoteControllerRequest) GetName() string { @@ -899,7 +853,7 @@ type ResetNvmeRemoteControllerRequest struct { func (x *ResetNvmeRemoteControllerRequest) Reset() { *x = ResetNvmeRemoteControllerRequest{} if protoimpl.UnsafeEnabled { - mi := &file_backend_nvme_proto_msgTypes[11] + mi := &file_backend_nvme_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -912,7 +866,7 @@ func (x *ResetNvmeRemoteControllerRequest) String() string { func (*ResetNvmeRemoteControllerRequest) ProtoMessage() {} func (x *ResetNvmeRemoteControllerRequest) ProtoReflect() protoreflect.Message { - mi := &file_backend_nvme_proto_msgTypes[11] + mi := &file_backend_nvme_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -925,7 +879,7 @@ func (x *ResetNvmeRemoteControllerRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ResetNvmeRemoteControllerRequest.ProtoReflect.Descriptor instead. func (*ResetNvmeRemoteControllerRequest) Descriptor() ([]byte, []int) { - return file_backend_nvme_proto_rawDescGZIP(), []int{11} + return file_backend_nvme_proto_rawDescGZIP(), []int{10} } func (x *ResetNvmeRemoteControllerRequest) GetName() string { @@ -948,7 +902,7 @@ type StatsNvmeRemoteControllerRequest struct { func (x *StatsNvmeRemoteControllerRequest) Reset() { *x = StatsNvmeRemoteControllerRequest{} if protoimpl.UnsafeEnabled { - mi := &file_backend_nvme_proto_msgTypes[12] + mi := &file_backend_nvme_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -961,7 +915,7 @@ func (x *StatsNvmeRemoteControllerRequest) String() string { func (*StatsNvmeRemoteControllerRequest) ProtoMessage() {} func (x *StatsNvmeRemoteControllerRequest) ProtoReflect() protoreflect.Message { - mi := &file_backend_nvme_proto_msgTypes[12] + mi := &file_backend_nvme_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -974,7 +928,7 @@ func (x *StatsNvmeRemoteControllerRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use StatsNvmeRemoteControllerRequest.ProtoReflect.Descriptor instead. func (*StatsNvmeRemoteControllerRequest) Descriptor() ([]byte, []int) { - return file_backend_nvme_proto_rawDescGZIP(), []int{12} + return file_backend_nvme_proto_rawDescGZIP(), []int{11} } func (x *StatsNvmeRemoteControllerRequest) GetName() string { @@ -997,7 +951,7 @@ type StatsNvmeRemoteControllerResponse struct { func (x *StatsNvmeRemoteControllerResponse) Reset() { *x = StatsNvmeRemoteControllerResponse{} if protoimpl.UnsafeEnabled { - mi := &file_backend_nvme_proto_msgTypes[13] + mi := &file_backend_nvme_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1010,7 +964,7 @@ func (x *StatsNvmeRemoteControllerResponse) String() string { func (*StatsNvmeRemoteControllerResponse) ProtoMessage() {} func (x *StatsNvmeRemoteControllerResponse) ProtoReflect() protoreflect.Message { - mi := &file_backend_nvme_proto_msgTypes[13] + mi := &file_backend_nvme_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1023,7 +977,7 @@ func (x *StatsNvmeRemoteControllerResponse) ProtoReflect() protoreflect.Message // Deprecated: Use StatsNvmeRemoteControllerResponse.ProtoReflect.Descriptor instead. func (*StatsNvmeRemoteControllerResponse) Descriptor() ([]byte, []int) { - return file_backend_nvme_proto_rawDescGZIP(), []int{13} + return file_backend_nvme_proto_rawDescGZIP(), []int{12} } func (x *StatsNvmeRemoteControllerResponse) GetStats() *VolumeStats { @@ -1051,7 +1005,7 @@ type ListNvmeRemoteNamespacesRequest struct { func (x *ListNvmeRemoteNamespacesRequest) Reset() { *x = ListNvmeRemoteNamespacesRequest{} if protoimpl.UnsafeEnabled { - mi := &file_backend_nvme_proto_msgTypes[14] + mi := &file_backend_nvme_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1064,7 +1018,7 @@ func (x *ListNvmeRemoteNamespacesRequest) String() string { func (*ListNvmeRemoteNamespacesRequest) ProtoMessage() {} func (x *ListNvmeRemoteNamespacesRequest) ProtoReflect() protoreflect.Message { - mi := &file_backend_nvme_proto_msgTypes[14] + mi := &file_backend_nvme_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1077,7 +1031,7 @@ func (x *ListNvmeRemoteNamespacesRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ListNvmeRemoteNamespacesRequest.ProtoReflect.Descriptor instead. func (*ListNvmeRemoteNamespacesRequest) Descriptor() ([]byte, []int) { - return file_backend_nvme_proto_rawDescGZIP(), []int{14} + return file_backend_nvme_proto_rawDescGZIP(), []int{13} } func (x *ListNvmeRemoteNamespacesRequest) GetParent() string { @@ -1116,7 +1070,7 @@ type ListNvmeRemoteNamespacesResponse struct { func (x *ListNvmeRemoteNamespacesResponse) Reset() { *x = ListNvmeRemoteNamespacesResponse{} if protoimpl.UnsafeEnabled { - mi := &file_backend_nvme_proto_msgTypes[15] + mi := &file_backend_nvme_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1129,7 +1083,7 @@ func (x *ListNvmeRemoteNamespacesResponse) String() string { func (*ListNvmeRemoteNamespacesResponse) ProtoMessage() {} func (x *ListNvmeRemoteNamespacesResponse) ProtoReflect() protoreflect.Message { - mi := &file_backend_nvme_proto_msgTypes[15] + mi := &file_backend_nvme_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1142,7 +1096,7 @@ func (x *ListNvmeRemoteNamespacesResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ListNvmeRemoteNamespacesResponse.ProtoReflect.Descriptor instead. func (*ListNvmeRemoteNamespacesResponse) Descriptor() ([]byte, []int) { - return file_backend_nvme_proto_rawDescGZIP(), []int{15} + return file_backend_nvme_proto_rawDescGZIP(), []int{14} } func (x *ListNvmeRemoteNamespacesResponse) GetNvmeRemoteNamespaces() []*NvmeRemoteNamespace { @@ -1172,7 +1126,7 @@ type GetNvmeRemoteNamespaceRequest struct { func (x *GetNvmeRemoteNamespaceRequest) Reset() { *x = GetNvmeRemoteNamespaceRequest{} if protoimpl.UnsafeEnabled { - mi := &file_backend_nvme_proto_msgTypes[16] + mi := &file_backend_nvme_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1185,7 +1139,7 @@ func (x *GetNvmeRemoteNamespaceRequest) String() string { func (*GetNvmeRemoteNamespaceRequest) ProtoMessage() {} func (x *GetNvmeRemoteNamespaceRequest) ProtoReflect() protoreflect.Message { - mi := &file_backend_nvme_proto_msgTypes[16] + mi := &file_backend_nvme_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1198,7 +1152,7 @@ func (x *GetNvmeRemoteNamespaceRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetNvmeRemoteNamespaceRequest.ProtoReflect.Descriptor instead. func (*GetNvmeRemoteNamespaceRequest) Descriptor() ([]byte, []int) { - return file_backend_nvme_proto_rawDescGZIP(), []int{16} + return file_backend_nvme_proto_rawDescGZIP(), []int{15} } func (x *GetNvmeRemoteNamespaceRequest) GetName() string { @@ -1224,7 +1178,7 @@ type CreateNvmePathRequest struct { func (x *CreateNvmePathRequest) Reset() { *x = CreateNvmePathRequest{} if protoimpl.UnsafeEnabled { - mi := &file_backend_nvme_proto_msgTypes[17] + mi := &file_backend_nvme_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1237,7 +1191,7 @@ func (x *CreateNvmePathRequest) String() string { func (*CreateNvmePathRequest) ProtoMessage() {} func (x *CreateNvmePathRequest) ProtoReflect() protoreflect.Message { - mi := &file_backend_nvme_proto_msgTypes[17] + mi := &file_backend_nvme_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1250,7 +1204,7 @@ func (x *CreateNvmePathRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateNvmePathRequest.ProtoReflect.Descriptor instead. func (*CreateNvmePathRequest) Descriptor() ([]byte, []int) { - return file_backend_nvme_proto_rawDescGZIP(), []int{17} + return file_backend_nvme_proto_rawDescGZIP(), []int{16} } func (x *CreateNvmePathRequest) GetNvmePath() *NvmePath { @@ -1283,7 +1237,7 @@ type DeleteNvmePathRequest struct { func (x *DeleteNvmePathRequest) Reset() { *x = DeleteNvmePathRequest{} if protoimpl.UnsafeEnabled { - mi := &file_backend_nvme_proto_msgTypes[18] + mi := &file_backend_nvme_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1296,7 +1250,7 @@ func (x *DeleteNvmePathRequest) String() string { func (*DeleteNvmePathRequest) ProtoMessage() {} func (x *DeleteNvmePathRequest) ProtoReflect() protoreflect.Message { - mi := &file_backend_nvme_proto_msgTypes[18] + mi := &file_backend_nvme_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1309,7 +1263,7 @@ func (x *DeleteNvmePathRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use DeleteNvmePathRequest.ProtoReflect.Descriptor instead. func (*DeleteNvmePathRequest) Descriptor() ([]byte, []int) { - return file_backend_nvme_proto_rawDescGZIP(), []int{18} + return file_backend_nvme_proto_rawDescGZIP(), []int{17} } func (x *DeleteNvmePathRequest) GetName() string { @@ -1344,7 +1298,7 @@ type UpdateNvmePathRequest struct { func (x *UpdateNvmePathRequest) Reset() { *x = UpdateNvmePathRequest{} if protoimpl.UnsafeEnabled { - mi := &file_backend_nvme_proto_msgTypes[19] + mi := &file_backend_nvme_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1357,7 +1311,7 @@ func (x *UpdateNvmePathRequest) String() string { func (*UpdateNvmePathRequest) ProtoMessage() {} func (x *UpdateNvmePathRequest) ProtoReflect() protoreflect.Message { - mi := &file_backend_nvme_proto_msgTypes[19] + mi := &file_backend_nvme_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1370,7 +1324,7 @@ func (x *UpdateNvmePathRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateNvmePathRequest.ProtoReflect.Descriptor instead. func (*UpdateNvmePathRequest) Descriptor() ([]byte, []int) { - return file_backend_nvme_proto_rawDescGZIP(), []int{19} + return file_backend_nvme_proto_rawDescGZIP(), []int{18} } func (x *UpdateNvmePathRequest) GetNvmePath() *NvmePath { @@ -1411,7 +1365,7 @@ type ListNvmePathsRequest struct { func (x *ListNvmePathsRequest) Reset() { *x = ListNvmePathsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_backend_nvme_proto_msgTypes[20] + mi := &file_backend_nvme_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1424,7 +1378,7 @@ func (x *ListNvmePathsRequest) String() string { func (*ListNvmePathsRequest) ProtoMessage() {} func (x *ListNvmePathsRequest) ProtoReflect() protoreflect.Message { - mi := &file_backend_nvme_proto_msgTypes[20] + mi := &file_backend_nvme_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1437,7 +1391,7 @@ func (x *ListNvmePathsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ListNvmePathsRequest.ProtoReflect.Descriptor instead. func (*ListNvmePathsRequest) Descriptor() ([]byte, []int) { - return file_backend_nvme_proto_rawDescGZIP(), []int{20} + return file_backend_nvme_proto_rawDescGZIP(), []int{19} } func (x *ListNvmePathsRequest) GetParent() string { @@ -1476,7 +1430,7 @@ type ListNvmePathsResponse struct { func (x *ListNvmePathsResponse) Reset() { *x = ListNvmePathsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_backend_nvme_proto_msgTypes[21] + mi := &file_backend_nvme_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1489,7 +1443,7 @@ func (x *ListNvmePathsResponse) String() string { func (*ListNvmePathsResponse) ProtoMessage() {} func (x *ListNvmePathsResponse) ProtoReflect() protoreflect.Message { - mi := &file_backend_nvme_proto_msgTypes[21] + mi := &file_backend_nvme_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1502,7 +1456,7 @@ func (x *ListNvmePathsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ListNvmePathsResponse.ProtoReflect.Descriptor instead. func (*ListNvmePathsResponse) Descriptor() ([]byte, []int) { - return file_backend_nvme_proto_rawDescGZIP(), []int{21} + return file_backend_nvme_proto_rawDescGZIP(), []int{20} } func (x *ListNvmePathsResponse) GetNvmePaths() []*NvmePath { @@ -1532,7 +1486,7 @@ type GetNvmePathRequest struct { func (x *GetNvmePathRequest) Reset() { *x = GetNvmePathRequest{} if protoimpl.UnsafeEnabled { - mi := &file_backend_nvme_proto_msgTypes[22] + mi := &file_backend_nvme_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1545,7 +1499,7 @@ func (x *GetNvmePathRequest) String() string { func (*GetNvmePathRequest) ProtoMessage() {} func (x *GetNvmePathRequest) ProtoReflect() protoreflect.Message { - mi := &file_backend_nvme_proto_msgTypes[22] + mi := &file_backend_nvme_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1558,7 +1512,7 @@ func (x *GetNvmePathRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetNvmePathRequest.ProtoReflect.Descriptor instead. func (*GetNvmePathRequest) Descriptor() ([]byte, []int) { - return file_backend_nvme_proto_rawDescGZIP(), []int{22} + return file_backend_nvme_proto_rawDescGZIP(), []int{21} } func (x *GetNvmePathRequest) GetName() string { @@ -1581,7 +1535,7 @@ type StatsNvmePathRequest struct { func (x *StatsNvmePathRequest) Reset() { *x = StatsNvmePathRequest{} if protoimpl.UnsafeEnabled { - mi := &file_backend_nvme_proto_msgTypes[23] + mi := &file_backend_nvme_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1594,7 +1548,7 @@ func (x *StatsNvmePathRequest) String() string { func (*StatsNvmePathRequest) ProtoMessage() {} func (x *StatsNvmePathRequest) ProtoReflect() protoreflect.Message { - mi := &file_backend_nvme_proto_msgTypes[23] + mi := &file_backend_nvme_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1607,7 +1561,7 @@ func (x *StatsNvmePathRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use StatsNvmePathRequest.ProtoReflect.Descriptor instead. func (*StatsNvmePathRequest) Descriptor() ([]byte, []int) { - return file_backend_nvme_proto_rawDescGZIP(), []int{23} + return file_backend_nvme_proto_rawDescGZIP(), []int{22} } func (x *StatsNvmePathRequest) GetName() string { @@ -1630,7 +1584,7 @@ type StatsNvmePathResponse struct { func (x *StatsNvmePathResponse) Reset() { *x = StatsNvmePathResponse{} if protoimpl.UnsafeEnabled { - mi := &file_backend_nvme_proto_msgTypes[24] + mi := &file_backend_nvme_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1643,7 +1597,7 @@ func (x *StatsNvmePathResponse) String() string { func (*StatsNvmePathResponse) ProtoMessage() {} func (x *StatsNvmePathResponse) ProtoReflect() protoreflect.Message { - mi := &file_backend_nvme_proto_msgTypes[24] + mi := &file_backend_nvme_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1656,7 +1610,7 @@ func (x *StatsNvmePathResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use StatsNvmePathResponse.ProtoReflect.Descriptor instead. func (*StatsNvmePathResponse) Descriptor() ([]byte, []int) { - return file_backend_nvme_proto_rawDescGZIP(), []int{24} + return file_backend_nvme_proto_rawDescGZIP(), []int{23} } func (x *StatsNvmePathResponse) GetStats() *VolumeStats { @@ -1684,7 +1638,7 @@ var file_backend_nvme_proto_rawDesc = []byte{ 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x0f, 0x6f, 0x70, 0x69, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x0a, 0x75, 0x75, 0x69, - 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xfb, 0x02, 0x0a, 0x14, 0x4e, 0x76, 0x6d, 0x65, + 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xb7, 0x03, 0x0a, 0x14, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x08, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x44, 0x0a, 0x09, 0x6d, 0x75, 0x6c, @@ -1692,445 +1646,436 @@ var file_backend_nvme_proto_rawDesc = []byte{ 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x76, 0x6d, 0x65, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x74, 0x68, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x74, 0x68, 0x12, - 0x2b, 0x0a, 0x0f, 0x69, 0x6f, 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0d, 0x69, - 0x6f, 0x51, 0x75, 0x65, 0x75, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x22, 0x0a, 0x0a, - 0x71, 0x75, 0x65, 0x75, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, - 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x71, 0x75, 0x65, 0x75, 0x65, 0x53, 0x69, 0x7a, 0x65, - 0x12, 0x38, 0x0a, 0x03, 0x74, 0x63, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, - 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x54, 0x63, 0x70, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, - 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x03, 0x74, 0x63, 0x70, 0x3a, 0x79, 0xea, 0x41, 0x76, 0x0a, - 0x27, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, - 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, - 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x12, 0x1e, 0x6e, 0x76, 0x6d, 0x65, 0x52, 0x65, - 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x73, 0x2f, - 0x7b, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x7d, 0x2a, 0x15, 0x6e, 0x76, 0x6d, 0x65, 0x52, 0x65, - 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x73, 0x32, - 0x14, 0x6e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, - 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x22, 0x5c, 0x0a, 0x0d, 0x54, 0x63, 0x70, 0x43, 0x6f, 0x6e, 0x74, - 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x05, 0x68, 0x64, 0x67, 0x73, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x05, 0x68, 0x64, 0x67, 0x73, - 0x74, 0x12, 0x19, 0x0a, 0x05, 0x64, 0x64, 0x67, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, - 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x05, 0x64, 0x64, 0x67, 0x73, 0x74, 0x12, 0x15, 0x0a, 0x03, - 0x70, 0x73, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x03, - 0x70, 0x73, 0x6b, 0x22, 0xf0, 0x02, 0x0a, 0x08, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, - 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, - 0xe0, 0x41, 0x08, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x5f, 0x0a, 0x13, 0x63, 0x6f, 0x6e, - 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x72, 0x65, 0x66, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2f, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x29, 0x0a, 0x27, - 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, - 0x76, 0x31, 0x2f, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, - 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x11, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, - 0x6c, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x66, 0x12, 0x42, 0x0a, 0x06, 0x74, 0x72, - 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x6f, 0x70, 0x69, - 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, - 0x4e, 0x76, 0x6d, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x54, 0x79, 0x70, - 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x74, 0x72, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1b, - 0x0a, 0x06, 0x74, 0x72, 0x61, 0x64, 0x64, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, - 0xe0, 0x41, 0x02, 0x52, 0x06, 0x74, 0x72, 0x61, 0x64, 0x64, 0x72, 0x12, 0x3e, 0x0a, 0x07, 0x66, - 0x61, 0x62, 0x72, 0x69, 0x63, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6f, - 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x46, 0x61, 0x62, 0x72, 0x69, 0x63, 0x73, 0x50, 0x61, 0x74, 0x68, 0x42, 0x03, 0xe0, - 0x41, 0x01, 0x52, 0x07, 0x66, 0x61, 0x62, 0x72, 0x69, 0x63, 0x73, 0x3a, 0x49, 0xea, 0x41, 0x46, - 0x0a, 0x1b, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, - 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x12, 0x6e, - 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x2f, 0x7b, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, - 0x7d, 0x2a, 0x09, 0x6e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x32, 0x08, 0x6e, 0x76, - 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x22, 0x82, 0x02, 0x0a, 0x0b, 0x46, 0x61, 0x62, 0x72, 0x69, - 0x63, 0x73, 0x50, 0x61, 0x74, 0x68, 0x12, 0x1d, 0x0a, 0x07, 0x74, 0x72, 0x73, 0x76, 0x63, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x74, 0x72, - 0x73, 0x76, 0x63, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x6e, 0x71, 0x6e, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x73, 0x75, 0x62, 0x6e, - 0x71, 0x6e, 0x12, 0x42, 0x0a, 0x06, 0x61, 0x64, 0x72, 0x66, 0x61, 0x6d, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, - 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x76, 0x6d, 0x65, 0x41, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x46, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, - 0x61, 0x64, 0x72, 0x66, 0x61, 0x6d, 0x12, 0x28, 0x0a, 0x0d, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x5f, 0x74, 0x72, 0x61, 0x64, 0x64, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, - 0x41, 0x01, 0x52, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x72, 0x61, 0x64, 0x64, 0x72, - 0x12, 0x2a, 0x0a, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x72, 0x73, 0x76, 0x63, - 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0d, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x72, 0x73, 0x76, 0x63, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x07, - 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x71, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, - 0x41, 0x01, 0x52, 0x07, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x71, 0x6e, 0x22, 0x87, 0x03, 0x0a, 0x13, - 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, - 0x61, 0x63, 0x65, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x03, 0xe0, 0x41, 0x08, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x5f, 0x0a, 0x13, - 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, - 0x72, 0x65, 0x66, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2f, 0xe0, 0x41, 0x03, 0xfa, 0x41, - 0x29, 0x0a, 0x27, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, - 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x11, 0x63, 0x6f, 0x6e, 0x74, - 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x66, 0x12, 0x17, 0x0a, - 0x04, 0x6e, 0x73, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03, - 0x52, 0x04, 0x6e, 0x73, 0x69, 0x64, 0x12, 0x19, 0x0a, 0x05, 0x6e, 0x67, 0x75, 0x69, 0x64, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x6e, 0x67, 0x75, 0x69, - 0x64, 0x12, 0x19, 0x0a, 0x05, 0x65, 0x75, 0x69, 0x36, 0x34, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, - 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x65, 0x75, 0x69, 0x36, 0x34, 0x12, 0x30, 0x0a, 0x04, - 0x75, 0x75, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x6f, 0x70, 0x69, - 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x55, - 0x75, 0x69, 0x64, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x3a, 0x75, - 0xea, 0x41, 0x72, 0x0a, 0x26, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, - 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, - 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x1d, 0x6e, 0x76, 0x6d, - 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, - 0x73, 0x2f, 0x7b, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x7d, 0x2a, 0x14, 0x6e, 0x76, 0x6d, 0x65, - 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, - 0x32, 0x13, 0x6e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, - 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0xc8, 0x01, 0x0a, 0x21, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, - 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x63, 0x0a, 0x16, 0x6e, - 0x76, 0x6d, 0x65, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, - 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6f, 0x70, - 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, - 0x2e, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, - 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x14, 0x6e, 0x76, 0x6d, 0x65, - 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, - 0x12, 0x3e, 0x0a, 0x19, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, - 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x16, 0x6e, 0x76, 0x6d, 0x65, 0x52, 0x65, - 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x49, 0x64, - 0x22, 0x92, 0x01, 0x0a, 0x21, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x76, 0x6d, 0x65, 0x52, - 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x2f, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x29, 0x0a, 0x27, 0x6f, 0x70, - 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, - 0x2f, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, - 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x0d, 0x61, - 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4d, 0x69, - 0x73, 0x73, 0x69, 0x6e, 0x67, 0x22, 0xf4, 0x01, 0x0a, 0x21, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x1b, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x6e, 0x71, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, + 0x03, 0xe0, 0x41, 0x01, 0x52, 0x06, 0x73, 0x75, 0x62, 0x6e, 0x71, 0x6e, 0x12, 0x1d, 0x0a, 0x07, + 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x71, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, + 0x41, 0x01, 0x52, 0x07, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x71, 0x6e, 0x12, 0x2b, 0x0a, 0x0f, 0x69, + 0x6f, 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0d, 0x69, 0x6f, 0x51, 0x75, 0x65, + 0x75, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x71, 0x75, 0x65, 0x75, + 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, + 0x01, 0x52, 0x09, 0x71, 0x75, 0x65, 0x75, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x38, 0x0a, 0x03, + 0x74, 0x63, 0x70, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6f, 0x70, 0x69, 0x5f, + 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, + 0x63, 0x70, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x42, 0x03, 0xe0, 0x41, + 0x01, 0x52, 0x03, 0x74, 0x63, 0x70, 0x3a, 0x79, 0xea, 0x41, 0x76, 0x0a, 0x27, 0x6f, 0x70, 0x69, + 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, - 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x63, 0x0a, 0x16, 0x6e, - 0x76, 0x6d, 0x65, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, - 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6f, 0x70, - 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, - 0x2e, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, - 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x14, 0x6e, 0x76, 0x6d, 0x65, - 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, - 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, - 0x6b, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, - 0x73, 0x6b, 0x12, 0x28, 0x0a, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x6d, 0x69, 0x73, 0x73, - 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, - 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x22, 0xb1, 0x01, 0x0a, - 0x20, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, - 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x47, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x2f, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x29, 0x12, 0x27, 0x6f, 0x70, 0x69, 0x5f, 0x61, - 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, - 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, - 0x65, 0x72, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, - 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, - 0x41, 0x01, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x22, 0x0a, 0x0a, - 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, - 0x22, 0xad, 0x01, 0x0a, 0x21, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, - 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x60, 0x0a, 0x17, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x72, - 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, - 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, - 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x76, 0x6d, + 0x6c, 0x6c, 0x65, 0x72, 0x12, 0x1e, 0x6e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, + 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x76, 0x6f, 0x6c, + 0x75, 0x6d, 0x65, 0x7d, 0x2a, 0x15, 0x6e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, + 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x73, 0x32, 0x14, 0x6e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, - 0x72, 0x52, 0x15, 0x6e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, - 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, - 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, - 0x22, 0x65, 0x0a, 0x1e, 0x47, 0x65, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, - 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x43, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x2f, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x29, 0x0a, 0x27, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, - 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, 0x6d, - 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, - 0x72, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x67, 0x0a, 0x20, 0x52, 0x65, 0x73, 0x65, 0x74, - 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, - 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2f, 0xe0, 0x41, 0x02, 0xfa, 0x41, - 0x29, 0x0a, 0x27, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, - 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x22, 0x67, 0x0a, 0x20, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, - 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x72, 0x22, 0x5c, 0x0a, 0x0d, 0x54, 0x63, 0x70, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, + 0x65, 0x72, 0x12, 0x19, 0x0a, 0x05, 0x68, 0x64, 0x67, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x05, 0x68, 0x64, 0x67, 0x73, 0x74, 0x12, 0x19, 0x0a, + 0x05, 0x64, 0x64, 0x67, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, + 0x01, 0x52, 0x05, 0x64, 0x64, 0x67, 0x73, 0x74, 0x12, 0x15, 0x0a, 0x03, 0x70, 0x73, 0x6b, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x03, 0x70, 0x73, 0x6b, 0x22, + 0xa1, 0x03, 0x0a, 0x08, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x17, 0x0a, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x08, 0x52, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x5f, 0x0a, 0x13, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, + 0x6c, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x72, 0x65, 0x66, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2f, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x29, 0x0a, 0x27, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, - 0x6c, 0x65, 0x72, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x5a, 0x0a, 0x21, 0x53, 0x74, 0x61, - 0x74, 0x73, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, - 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, - 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, - 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x05, - 0x73, 0x74, 0x61, 0x74, 0x73, 0x22, 0xaf, 0x01, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x76, - 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, - 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x06, 0x70, 0x61, 0x72, - 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2e, 0xe0, 0x41, 0x02, 0xfa, 0x41, - 0x28, 0x12, 0x26, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, - 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, - 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, - 0x74, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, - 0x69, 0x7a, 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, - 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x70, 0x61, - 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xa9, 0x01, 0x0a, 0x20, 0x4c, 0x69, 0x73, 0x74, - 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, - 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5d, 0x0a, 0x16, - 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x6f, - 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, - 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x14, 0x6e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, - 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, - 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, - 0x6b, 0x65, 0x6e, 0x22, 0x63, 0x0a, 0x1d, 0x47, 0x65, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, - 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x42, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x2e, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x28, 0x0a, 0x26, 0x6f, 0x70, 0x69, 0x5f, - 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4e, - 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, - 0x63, 0x65, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x7e, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x3e, 0x0a, 0x09, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, - 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, - 0x74, 0x68, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x6e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, - 0x68, 0x12, 0x25, 0x0a, 0x0c, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x6e, 0x76, - 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x49, 0x64, 0x22, 0x7a, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, - 0x74, 0x65, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x37, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x23, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x1d, 0x0a, 0x1b, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, - 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, 0x6d, 0x65, - 0x50, 0x61, 0x74, 0x68, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x0d, 0x61, 0x6c, - 0x6c, 0x6f, 0x77, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4d, 0x69, 0x73, - 0x73, 0x69, 0x6e, 0x67, 0x22, 0xc3, 0x01, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, - 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3e, - 0x0a, 0x09, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1c, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, - 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x42, - 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x6e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x40, - 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42, - 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, - 0x12, 0x28, 0x0a, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, - 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x61, 0x6c, - 0x6c, 0x6f, 0x77, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x22, 0x99, 0x01, 0x0a, 0x14, 0x4c, - 0x69, 0x73, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x23, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x1d, 0x12, 0x1b, 0x6f, 0x70, 0x69, + 0x6c, 0x65, 0x72, 0x52, 0x11, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x4e, + 0x61, 0x6d, 0x65, 0x52, 0x65, 0x66, 0x12, 0x42, 0x0a, 0x06, 0x74, 0x72, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, + 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x76, 0x6d, 0x65, + 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, + 0x41, 0x02, 0x52, 0x06, 0x74, 0x72, 0x74, 0x79, 0x70, 0x65, 0x12, 0x3a, 0x0a, 0x04, 0x70, 0x63, + 0x69, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, + 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x63, + 0x69, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x48, 0x00, + 0x52, 0x04, 0x70, 0x63, 0x69, 0x65, 0x12, 0x44, 0x0a, 0x07, 0x66, 0x61, 0x62, 0x72, 0x69, 0x63, + 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, + 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x61, 0x62, + 0x72, 0x69, 0x63, 0x73, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, + 0x01, 0x48, 0x00, 0x52, 0x07, 0x66, 0x61, 0x62, 0x72, 0x69, 0x63, 0x73, 0x3a, 0x49, 0xea, 0x41, + 0x46, 0x0a, 0x1b, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, + 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x12, + 0x6e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x2f, 0x7b, 0x76, 0x6f, 0x6c, 0x75, 0x6d, + 0x65, 0x7d, 0x2a, 0x09, 0x6e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x32, 0x08, 0x6e, + 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x42, 0x0a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, + 0x69, 0x6e, 0x74, 0x22, 0x87, 0x03, 0x0a, 0x13, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, + 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x17, 0x0a, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x08, 0x52, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x5f, 0x0a, 0x13, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, + 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x72, 0x65, 0x66, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x2f, 0xe0, 0x41, 0x03, 0xfa, 0x41, 0x29, 0x0a, 0x27, 0x6f, 0x70, 0x69, 0x5f, 0x61, + 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, + 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, + 0x65, 0x72, 0x52, 0x11, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x4e, 0x61, + 0x6d, 0x65, 0x52, 0x65, 0x66, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x73, 0x69, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x6e, 0x73, 0x69, 0x64, 0x12, 0x19, + 0x0a, 0x05, 0x6e, 0x67, 0x75, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, + 0x41, 0x03, 0x52, 0x05, 0x6e, 0x67, 0x75, 0x69, 0x64, 0x12, 0x19, 0x0a, 0x05, 0x65, 0x75, 0x69, + 0x36, 0x34, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x65, + 0x75, 0x69, 0x36, 0x34, 0x12, 0x30, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6d, + 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x75, 0x69, 0x64, 0x42, 0x03, 0xe0, 0x41, 0x03, + 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x3a, 0x75, 0xea, 0x41, 0x72, 0x0a, 0x26, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2f, - 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, - 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, - 0x7a, 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x70, 0x61, 0x67, - 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x7c, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x76, - 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x3b, 0x0a, 0x0a, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, - 0x68, 0x52, 0x09, 0x6e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x12, 0x26, 0x0a, 0x0f, - 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, - 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x4d, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x50, - 0x61, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x37, 0x0a, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x23, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x1d, - 0x0a, 0x1b, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, - 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x52, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x22, 0x4f, 0x0a, 0x14, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4e, 0x76, 0x6d, 0x65, - 0x50, 0x61, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x37, 0x0a, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x23, 0xe0, 0x41, 0x02, 0xfa, 0x41, - 0x1d, 0x0a, 0x1b, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, - 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x52, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x4e, 0x0a, 0x15, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4e, 0x76, 0x6d, - 0x65, 0x50, 0x61, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, - 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6f, - 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x05, 0x73, - 0x74, 0x61, 0x74, 0x73, 0x2a, 0x86, 0x01, 0x0a, 0x0d, 0x4e, 0x76, 0x6d, 0x65, 0x4d, 0x75, 0x6c, - 0x74, 0x69, 0x70, 0x61, 0x74, 0x68, 0x12, 0x1e, 0x0a, 0x1a, 0x4e, 0x56, 0x4d, 0x45, 0x5f, 0x4d, - 0x55, 0x4c, 0x54, 0x49, 0x50, 0x41, 0x54, 0x48, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, - 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x4e, 0x56, 0x4d, 0x45, 0x5f, 0x4d, - 0x55, 0x4c, 0x54, 0x49, 0x50, 0x41, 0x54, 0x48, 0x5f, 0x44, 0x49, 0x53, 0x41, 0x42, 0x4c, 0x45, - 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x4e, 0x56, 0x4d, 0x45, 0x5f, 0x4d, 0x55, 0x4c, 0x54, 0x49, - 0x50, 0x41, 0x54, 0x48, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x4f, 0x56, 0x45, 0x52, 0x10, 0x02, 0x12, - 0x1c, 0x0a, 0x18, 0x4e, 0x56, 0x4d, 0x45, 0x5f, 0x4d, 0x55, 0x4c, 0x54, 0x49, 0x50, 0x41, 0x54, - 0x48, 0x5f, 0x4d, 0x55, 0x4c, 0x54, 0x49, 0x50, 0x41, 0x54, 0x48, 0x10, 0x03, 0x32, 0xb2, 0x14, - 0x0a, 0x1b, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, - 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xeb, 0x01, - 0x0a, 0x1a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, - 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x12, 0x35, 0x2e, 0x6f, - 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, + 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x12, 0x1d, 0x6e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, + 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x76, 0x6f, 0x6c, 0x75, 0x6d, + 0x65, 0x7d, 0x2a, 0x14, 0x6e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, + 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x32, 0x13, 0x6e, 0x76, 0x6d, 0x65, 0x52, 0x65, + 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0xc8, 0x01, + 0x0a, 0x21, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, + 0x65, 0x73, 0x74, 0x12, 0x63, 0x0a, 0x16, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x72, 0x65, 0x6d, 0x6f, + 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, - 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x22, 0x6c, 0x82, - 0xd3, 0xe4, 0x93, 0x02, 0x33, 0x22, 0x19, 0x2f, 0x76, 0x31, 0x2f, 0x6e, 0x76, 0x6d, 0x65, 0x52, - 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x73, - 0x3a, 0x16, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, - 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0xda, 0x41, 0x30, 0x6e, 0x76, 0x6d, 0x65, 0x5f, - 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, - 0x72, 0x2c, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, - 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x12, 0x9e, 0x01, 0x0a, 0x1a, - 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x12, 0x35, 0x2e, 0x6f, 0x70, 0x69, - 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, - 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x31, 0x82, 0xd3, 0xe4, 0x93, 0x02, - 0x24, 0x2a, 0x22, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x6e, 0x76, 0x6d, + 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x42, 0x03, 0xe0, + 0x41, 0x02, 0x52, 0x14, 0x6e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, + 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x12, 0x3e, 0x0a, 0x19, 0x6e, 0x76, 0x6d, 0x65, + 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, + 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, + 0x52, 0x16, 0x6e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, + 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x49, 0x64, 0x22, 0x92, 0x01, 0x0a, 0x21, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, + 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, + 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2f, 0xe0, 0x41, + 0x02, 0xfa, 0x41, 0x29, 0x0a, 0x27, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, + 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, + 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x6d, 0x69, 0x73, + 0x73, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, + 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x22, 0xf4, 0x01, + 0x0a, 0x21, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, + 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x63, 0x0a, 0x16, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x72, 0x65, 0x6d, 0x6f, + 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, + 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, + 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x42, 0x03, 0xe0, + 0x41, 0x02, 0x52, 0x14, 0x6e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, + 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, + 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, + 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x28, 0x0a, 0x0d, 0x61, 0x6c, + 0x6c, 0x6f, 0x77, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4d, 0x69, 0x73, + 0x73, 0x69, 0x6e, 0x67, 0x22, 0xb1, 0x01, 0x0a, 0x20, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, - 0x72, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xfd, 0x01, 0x0a, - 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, - 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x12, 0x35, 0x2e, 0x6f, 0x70, + 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x47, 0x0a, 0x06, 0x70, 0x61, 0x72, + 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2f, 0xe0, 0x41, 0x02, 0xfa, 0x41, + 0x29, 0x12, 0x27, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, + 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, + 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, + 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, + 0x53, 0x69, 0x7a, 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, + 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x70, + 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xad, 0x01, 0x0a, 0x21, 0x4c, 0x69, 0x73, + 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, + 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x60, + 0x0a, 0x17, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, + 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x28, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, + 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, + 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x15, 0x6e, 0x76, 0x6d, 0x65, 0x52, + 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x73, + 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, + 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, + 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x65, 0x0a, 0x1e, 0x47, 0x65, 0x74, 0x4e, + 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, + 0x6c, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2f, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x29, + 0x0a, 0x27, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, + 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, + 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, + 0x67, 0x0a, 0x20, 0x52, 0x65, 0x73, 0x65, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, + 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x2f, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x29, 0x0a, 0x27, 0x6f, 0x70, 0x69, 0x5f, 0x61, + 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, + 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, + 0x65, 0x72, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x67, 0x0a, 0x20, 0x53, 0x74, 0x61, 0x74, + 0x73, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, + 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2f, 0xe0, 0x41, 0x02, 0xfa, + 0x41, 0x29, 0x0a, 0x27, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, + 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, + 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x22, 0x5a, 0x0a, 0x21, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, + 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, + 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x6f, 0x6c, 0x75, 0x6d, + 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x22, 0xaf, 0x01, + 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, + 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x46, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x2e, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x28, 0x12, 0x26, 0x6f, 0x70, 0x69, 0x5f, 0x61, + 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, + 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 0x67, + 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, + 0x01, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x70, + 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, + 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, + 0xa9, 0x01, 0x0a, 0x20, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, + 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5d, 0x0a, 0x16, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x72, 0x65, 0x6d, + 0x6f, 0x74, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, + 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, + 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x14, 0x6e, + 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, + 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, + 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x63, 0x0a, 0x1d, 0x47, + 0x65, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, + 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x42, 0x0a, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2e, 0xe0, 0x41, 0x02, 0xfa, + 0x41, 0x28, 0x0a, 0x26, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, + 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, + 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x22, 0x7e, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, + 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3e, 0x0a, 0x09, 0x6e, 0x76, 0x6d, + 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6f, + 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, + 0x31, 0x2e, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, + 0x08, 0x6e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x25, 0x0a, 0x0c, 0x6e, 0x76, 0x6d, + 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, + 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x6e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x49, 0x64, + 0x22, 0x7a, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, + 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x37, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x23, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x1d, 0x0a, + 0x1b, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, + 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x52, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x6d, 0x69, 0x73, 0x73, + 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, + 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x22, 0xc3, 0x01, 0x0a, + 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3e, 0x0a, 0x09, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x70, + 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6f, 0x70, 0x69, 0x5f, + 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4e, + 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x6e, 0x76, + 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, + 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x75, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x28, 0x0a, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, + 0x77, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x42, + 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4d, 0x69, 0x73, 0x73, 0x69, + 0x6e, 0x67, 0x22, 0x99, 0x01, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x50, + 0x61, 0x74, 0x68, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x06, 0x70, + 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x23, 0xe0, 0x41, 0x02, + 0xfa, 0x41, 0x1d, 0x12, 0x1b, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, + 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, + 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, + 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x01, + 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x61, + 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, + 0xe0, 0x41, 0x01, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x7c, + 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x0a, 0x6e, 0x76, 0x6d, 0x65, 0x5f, + 0x70, 0x61, 0x74, 0x68, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, - 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, - 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, - 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, - 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x22, 0x7e, 0x82, 0xd3, - 0xe4, 0x93, 0x02, 0x53, 0x32, 0x39, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x76, 0x6d, 0x65, 0x5f, - 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, - 0x72, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x6e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, - 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, - 0x16, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6e, - 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0xda, 0x41, 0x22, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x72, + 0x2e, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x52, 0x09, 0x6e, 0x76, 0x6d, 0x65, 0x50, + 0x61, 0x74, 0x68, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, + 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, + 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x4d, 0x0a, 0x12, + 0x47, 0x65, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x37, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x23, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x1d, 0x0a, 0x1b, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, + 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, 0x6d, + 0x65, 0x50, 0x61, 0x74, 0x68, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x4f, 0x0a, 0x14, 0x53, + 0x74, 0x61, 0x74, 0x73, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x37, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x23, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x1d, 0x0a, 0x1b, 0x6f, 0x70, 0x69, 0x5f, 0x61, + 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2f, 0x4e, 0x76, + 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x4e, 0x0a, 0x15, + 0x53, 0x74, 0x61, 0x74, 0x73, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, + 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, + 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x2a, 0x86, 0x01, 0x0a, + 0x0d, 0x4e, 0x76, 0x6d, 0x65, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x74, 0x68, 0x12, 0x1e, + 0x0a, 0x1a, 0x4e, 0x56, 0x4d, 0x45, 0x5f, 0x4d, 0x55, 0x4c, 0x54, 0x49, 0x50, 0x41, 0x54, 0x48, + 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1a, + 0x0a, 0x16, 0x4e, 0x56, 0x4d, 0x45, 0x5f, 0x4d, 0x55, 0x4c, 0x54, 0x49, 0x50, 0x41, 0x54, 0x48, + 0x5f, 0x44, 0x49, 0x53, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x4e, 0x56, + 0x4d, 0x45, 0x5f, 0x4d, 0x55, 0x4c, 0x54, 0x49, 0x50, 0x41, 0x54, 0x48, 0x5f, 0x46, 0x41, 0x49, + 0x4c, 0x4f, 0x56, 0x45, 0x52, 0x10, 0x02, 0x12, 0x1c, 0x0a, 0x18, 0x4e, 0x56, 0x4d, 0x45, 0x5f, + 0x4d, 0x55, 0x4c, 0x54, 0x49, 0x50, 0x41, 0x54, 0x48, 0x5f, 0x4d, 0x55, 0x4c, 0x54, 0x49, 0x50, + 0x41, 0x54, 0x48, 0x10, 0x03, 0x32, 0xb2, 0x14, 0x0a, 0x1b, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, + 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x53, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xeb, 0x01, 0x0a, 0x1a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, + 0x6c, 0x6c, 0x65, 0x72, 0x12, 0x35, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, + 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, + 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x6f, 0x70, + 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, + 0x2e, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, + 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x22, 0x6c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x33, 0x22, 0x19, 0x2f, + 0x76, 0x31, 0x2f, 0x6e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, + 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x73, 0x3a, 0x16, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, - 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x12, 0xb2, 0x01, 0x0a, - 0x19, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, - 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x73, 0x12, 0x34, 0x2e, 0x6f, 0x70, 0x69, + 0xda, 0x41, 0x30, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, + 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x2c, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x72, + 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, + 0x5f, 0x69, 0x64, 0x12, 0x9e, 0x01, 0x0a, 0x1a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x76, + 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, + 0x65, 0x72, 0x12, 0x35, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, + 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x76, + 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, + 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, + 0x79, 0x22, 0x31, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x24, 0x2a, 0x22, 0x2f, 0x76, 0x31, 0x2f, 0x7b, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x6e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, + 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xfd, 0x01, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, + 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, + 0x6c, 0x65, 0x72, 0x12, 0x35, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, + 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, + 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, + 0x6c, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, - 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, - 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x35, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, - 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, - 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x28, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x19, 0x12, - 0x17, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x73, 0x75, 0x62, - 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x73, 0x7d, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, - 0x74, 0x12, 0xaa, 0x01, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, - 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x12, 0x32, 0x2e, - 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x28, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, - 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, - 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x22, 0x31, 0x82, 0xd3, 0xe4, - 0x93, 0x02, 0x24, 0x12, 0x22, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x6e, + 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, + 0x6c, 0x6c, 0x65, 0x72, 0x22, 0x7e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x53, 0x32, 0x39, 0x2f, 0x76, + 0x31, 0x2f, 0x7b, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, + 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x6e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, - 0x6c, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xa5, - 0x01, 0x0a, 0x19, 0x52, 0x65, 0x73, 0x65, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, - 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x12, 0x34, 0x2e, 0x6f, - 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x52, 0x65, 0x73, 0x65, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, - 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x3a, 0x82, 0xd3, 0xe4, 0x93, - 0x02, 0x2d, 0x22, 0x28, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x6e, 0x76, + 0x6c, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x16, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x72, 0x65, + 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0xda, + 0x41, 0x22, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, + 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, + 0x6d, 0x61, 0x73, 0x6b, 0x12, 0xb2, 0x01, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x76, 0x6d, + 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, + 0x72, 0x73, 0x12, 0x34, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, + 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x76, 0x6d, 0x65, + 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, + 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, + 0x73, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, + 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x28, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x19, 0x12, 0x17, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, + 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x73, 0x75, 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x73, 0x7d, + 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0xaa, 0x01, 0x0a, 0x17, 0x47, 0x65, + 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, + 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x12, 0x32, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, + 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, - 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x72, 0x65, 0x73, 0x65, 0x74, 0x3a, 0x01, 0x2a, 0xda, - 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xc1, 0x01, 0x0a, 0x19, 0x53, 0x74, 0x61, 0x74, 0x73, + 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x6f, 0x70, 0x69, 0x5f, + 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4e, + 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, + 0x6c, 0x65, 0x72, 0x22, 0x31, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x24, 0x12, 0x22, 0x2f, 0x76, 0x31, + 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x6e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, + 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x7d, 0xda, + 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xa5, 0x01, 0x0a, 0x19, 0x52, 0x65, 0x73, 0x65, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x12, 0x34, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, - 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4e, + 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x65, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, - 0x6c, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x6f, 0x70, 0x69, - 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, - 0x53, 0x74, 0x61, 0x74, 0x73, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, - 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x37, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2a, 0x12, 0x28, 0x2f, 0x76, 0x31, 0x2f, 0x7b, - 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x6e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, - 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x73, 0x74, - 0x61, 0x74, 0x73, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xaf, 0x01, 0x0a, 0x18, 0x4c, - 0x69, 0x73, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, - 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x12, 0x33, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, - 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, - 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, - 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x6f, + 0x6c, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, + 0x74, 0x79, 0x22, 0x3a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2d, 0x22, 0x28, 0x2f, 0x76, 0x31, 0x2f, + 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x6e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, + 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x72, + 0x65, 0x73, 0x65, 0x74, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xc1, + 0x01, 0x0a, 0x19, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, + 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x12, 0x34, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, - 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0x28, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x19, 0x12, 0x17, 0x2f, 0x76, 0x31, 0x2f, - 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x73, 0x75, 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, - 0x6d, 0x73, 0x7d, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0xa6, 0x01, 0x0a, - 0x16, 0x47, 0x65, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, - 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x31, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, - 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, - 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, - 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x6f, 0x70, 0x69, - 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, - 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, - 0x61, 0x63, 0x65, 0x22, 0x30, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x23, 0x12, 0x21, 0x2f, 0x76, 0x31, - 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x6e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, - 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x94, 0x01, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x29, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, - 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, - 0x68, 0x22, 0x39, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1a, 0x22, 0x0d, 0x2f, 0x76, 0x31, 0x2f, 0x6e, - 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x3a, 0x09, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x70, - 0x61, 0x74, 0x68, 0xda, 0x41, 0x16, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x2c, - 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x69, 0x64, 0x12, 0x7a, 0x0a, 0x0e, - 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x29, + 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, + 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, + 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4e, 0x76, 0x6d, + 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, + 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x37, 0x82, 0xd3, 0xe4, 0x93, 0x02, + 0x2a, 0x12, 0x28, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x6e, 0x76, 0x6d, + 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, + 0x72, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x73, 0x74, 0x61, 0x74, 0x73, 0xda, 0x41, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0xaf, 0x01, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, + 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x12, + 0x33, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, + 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, + 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, + 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x76, + 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x28, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x19, 0x12, 0x17, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, + 0x73, 0x75, 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x73, 0x7d, 0xda, 0x41, 0x06, 0x70, 0x61, + 0x72, 0x65, 0x6e, 0x74, 0x12, 0xa6, 0x01, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x4e, 0x76, 0x6d, 0x65, + 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, + 0x31, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, + 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, + 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, + 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, + 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0x30, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x23, 0x12, 0x21, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x6e, + 0x76, 0x6d, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x94, 0x01, + 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, + 0x12, 0x29, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, + 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x76, 0x6d, 0x65, + 0x50, 0x61, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x6f, 0x70, + 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, + 0x2e, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x22, 0x39, 0x82, 0xd3, 0xe4, 0x93, 0x02, + 0x1a, 0x22, 0x0d, 0x2f, 0x76, 0x31, 0x2f, 0x6e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, + 0x3a, 0x09, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0xda, 0x41, 0x16, 0x6e, 0x76, + 0x6d, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x2c, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x70, 0x61, 0x74, + 0x68, 0x5f, 0x69, 0x64, 0x12, 0x7a, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x76, + 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x29, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, + 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, + 0x74, 0x65, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x25, 0x82, 0xd3, 0xe4, 0x93, 0x02, + 0x18, 0x2a, 0x16, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x6e, 0x76, 0x6d, + 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x12, 0xa6, 0x01, 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x76, 0x6d, 0x65, 0x50, + 0x61, 0x74, 0x68, 0x12, 0x29, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, + 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, + 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, - 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, - 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, - 0x79, 0x22, 0x25, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x18, 0x2a, 0x16, 0x2f, 0x76, 0x31, 0x2f, 0x7b, - 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x6e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x2f, 0x2a, - 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xa6, 0x01, 0x0a, 0x0e, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x29, 0x2e, 0x6f, 0x70, + 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x22, 0x4b, 0x82, 0xd3, + 0xe4, 0x93, 0x02, 0x2d, 0x32, 0x20, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x76, 0x6d, 0x65, 0x5f, + 0x70, 0x61, 0x74, 0x68, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x6e, 0x76, 0x6d, 0x65, 0x50, 0x61, + 0x74, 0x68, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x09, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x70, 0x61, 0x74, + 0x68, 0xda, 0x41, 0x15, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x2c, 0x75, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x12, 0x8e, 0x01, 0x0a, 0x0d, 0x4c, 0x69, + 0x73, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x12, 0x28, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, - 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, - 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x76, 0x6d, 0x65, - 0x50, 0x61, 0x74, 0x68, 0x22, 0x4b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2d, 0x32, 0x20, 0x2f, 0x76, - 0x31, 0x2f, 0x7b, 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x2e, 0x6e, 0x61, 0x6d, - 0x65, 0x3d, 0x6e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x09, - 0x6e, 0x76, 0x6d, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0xda, 0x41, 0x15, 0x6e, 0x76, 0x6d, 0x65, - 0x5f, 0x70, 0x61, 0x74, 0x68, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, - 0x6b, 0x12, 0x8e, 0x01, 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, - 0x74, 0x68, 0x73, 0x12, 0x28, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x76, 0x6d, - 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, - 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x28, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x19, - 0x12, 0x17, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x73, 0x75, - 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x73, 0x7d, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, - 0x6e, 0x74, 0x12, 0x7a, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, - 0x68, 0x12, 0x26, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, - 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, - 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x6f, 0x70, 0x69, 0x5f, - 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4e, - 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x22, 0x25, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x18, 0x12, - 0x16, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x6e, 0x76, 0x6d, 0x65, 0x50, - 0x61, 0x74, 0x68, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x91, - 0x01, 0x0a, 0x0d, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, - 0x12, 0x28, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, - 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4e, 0x76, 0x6d, 0x65, 0x50, - 0x61, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x6f, 0x70, 0x69, - 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, - 0x53, 0x74, 0x61, 0x74, 0x73, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1e, 0x12, 0x1c, 0x2f, - 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x6e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, - 0x68, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x73, 0x74, 0x61, 0x74, 0x73, 0xda, 0x41, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x42, 0x5f, 0x0a, 0x12, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x42, 0x10, 0x42, 0x61, 0x63, 0x6b, 0x65, 0x6e, - 0x64, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x35, 0x67, 0x69, - 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6f, 0x70, 0x69, 0x70, 0x72, 0x6f, 0x6a, - 0x65, 0x63, 0x74, 0x2f, 0x6f, 0x70, 0x69, 0x2d, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x74, 0x6f, 0x72, - 0x61, 0x67, 0x65, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x67, 0x65, 0x6e, - 0x2f, 0x67, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, + 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, + 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x28, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x19, 0x12, 0x17, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, + 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x73, 0x75, 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x73, + 0x7d, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x7a, 0x0a, 0x0b, 0x47, 0x65, + 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x26, 0x2e, 0x6f, 0x70, 0x69, 0x5f, + 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, + 0x65, 0x74, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x1c, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, + 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x22, + 0x25, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x18, 0x12, 0x16, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x6e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x2f, 0x2a, 0x7d, 0xda, + 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x91, 0x01, 0x0a, 0x0d, 0x53, 0x74, 0x61, 0x74, 0x73, + 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x28, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, + 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, + 0x61, 0x74, 0x73, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, + 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4e, 0x76, 0x6d, + 0x65, 0x50, 0x61, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2b, 0x82, + 0xd3, 0xe4, 0x93, 0x02, 0x1e, 0x12, 0x1c, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x6e, 0x76, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x73, 0x74, + 0x61, 0x74, 0x73, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x5f, 0x0a, 0x12, 0x6f, 0x70, + 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, + 0x42, 0x10, 0x42, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x4e, 0x76, 0x6d, 0x65, 0x50, 0x72, 0x6f, + 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x35, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, + 0x2f, 0x6f, 0x70, 0x69, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2f, 0x6f, 0x70, 0x69, 0x2d, + 0x61, 0x70, 0x69, 0x2f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2f, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x31, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x67, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x33, } var ( @@ -2146,36 +2091,36 @@ func file_backend_nvme_proto_rawDescGZIP() []byte { } var file_backend_nvme_proto_enumTypes = make([]protoimpl.EnumInfo, 1) -var file_backend_nvme_proto_msgTypes = make([]protoimpl.MessageInfo, 25) +var file_backend_nvme_proto_msgTypes = make([]protoimpl.MessageInfo, 24) var file_backend_nvme_proto_goTypes = []interface{}{ (NvmeMultipath)(0), // 0: opi_api.storage.v1.NvmeMultipath (*NvmeRemoteController)(nil), // 1: opi_api.storage.v1.NvmeRemoteController (*TcpController)(nil), // 2: opi_api.storage.v1.TcpController (*NvmePath)(nil), // 3: opi_api.storage.v1.NvmePath - (*FabricsPath)(nil), // 4: opi_api.storage.v1.FabricsPath - (*NvmeRemoteNamespace)(nil), // 5: opi_api.storage.v1.NvmeRemoteNamespace - (*CreateNvmeRemoteControllerRequest)(nil), // 6: opi_api.storage.v1.CreateNvmeRemoteControllerRequest - (*DeleteNvmeRemoteControllerRequest)(nil), // 7: opi_api.storage.v1.DeleteNvmeRemoteControllerRequest - (*UpdateNvmeRemoteControllerRequest)(nil), // 8: opi_api.storage.v1.UpdateNvmeRemoteControllerRequest - (*ListNvmeRemoteControllersRequest)(nil), // 9: opi_api.storage.v1.ListNvmeRemoteControllersRequest - (*ListNvmeRemoteControllersResponse)(nil), // 10: opi_api.storage.v1.ListNvmeRemoteControllersResponse - (*GetNvmeRemoteControllerRequest)(nil), // 11: opi_api.storage.v1.GetNvmeRemoteControllerRequest - (*ResetNvmeRemoteControllerRequest)(nil), // 12: opi_api.storage.v1.ResetNvmeRemoteControllerRequest - (*StatsNvmeRemoteControllerRequest)(nil), // 13: opi_api.storage.v1.StatsNvmeRemoteControllerRequest - (*StatsNvmeRemoteControllerResponse)(nil), // 14: opi_api.storage.v1.StatsNvmeRemoteControllerResponse - (*ListNvmeRemoteNamespacesRequest)(nil), // 15: opi_api.storage.v1.ListNvmeRemoteNamespacesRequest - (*ListNvmeRemoteNamespacesResponse)(nil), // 16: opi_api.storage.v1.ListNvmeRemoteNamespacesResponse - (*GetNvmeRemoteNamespaceRequest)(nil), // 17: opi_api.storage.v1.GetNvmeRemoteNamespaceRequest - (*CreateNvmePathRequest)(nil), // 18: opi_api.storage.v1.CreateNvmePathRequest - (*DeleteNvmePathRequest)(nil), // 19: opi_api.storage.v1.DeleteNvmePathRequest - (*UpdateNvmePathRequest)(nil), // 20: opi_api.storage.v1.UpdateNvmePathRequest - (*ListNvmePathsRequest)(nil), // 21: opi_api.storage.v1.ListNvmePathsRequest - (*ListNvmePathsResponse)(nil), // 22: opi_api.storage.v1.ListNvmePathsResponse - (*GetNvmePathRequest)(nil), // 23: opi_api.storage.v1.GetNvmePathRequest - (*StatsNvmePathRequest)(nil), // 24: opi_api.storage.v1.StatsNvmePathRequest - (*StatsNvmePathResponse)(nil), // 25: opi_api.storage.v1.StatsNvmePathResponse - (NvmeTransportType)(0), // 26: opi_api.storage.v1.NvmeTransportType - (NvmeAddressFamily)(0), // 27: opi_api.storage.v1.NvmeAddressFamily + (*NvmeRemoteNamespace)(nil), // 4: opi_api.storage.v1.NvmeRemoteNamespace + (*CreateNvmeRemoteControllerRequest)(nil), // 5: opi_api.storage.v1.CreateNvmeRemoteControllerRequest + (*DeleteNvmeRemoteControllerRequest)(nil), // 6: opi_api.storage.v1.DeleteNvmeRemoteControllerRequest + (*UpdateNvmeRemoteControllerRequest)(nil), // 7: opi_api.storage.v1.UpdateNvmeRemoteControllerRequest + (*ListNvmeRemoteControllersRequest)(nil), // 8: opi_api.storage.v1.ListNvmeRemoteControllersRequest + (*ListNvmeRemoteControllersResponse)(nil), // 9: opi_api.storage.v1.ListNvmeRemoteControllersResponse + (*GetNvmeRemoteControllerRequest)(nil), // 10: opi_api.storage.v1.GetNvmeRemoteControllerRequest + (*ResetNvmeRemoteControllerRequest)(nil), // 11: opi_api.storage.v1.ResetNvmeRemoteControllerRequest + (*StatsNvmeRemoteControllerRequest)(nil), // 12: opi_api.storage.v1.StatsNvmeRemoteControllerRequest + (*StatsNvmeRemoteControllerResponse)(nil), // 13: opi_api.storage.v1.StatsNvmeRemoteControllerResponse + (*ListNvmeRemoteNamespacesRequest)(nil), // 14: opi_api.storage.v1.ListNvmeRemoteNamespacesRequest + (*ListNvmeRemoteNamespacesResponse)(nil), // 15: opi_api.storage.v1.ListNvmeRemoteNamespacesResponse + (*GetNvmeRemoteNamespaceRequest)(nil), // 16: opi_api.storage.v1.GetNvmeRemoteNamespaceRequest + (*CreateNvmePathRequest)(nil), // 17: opi_api.storage.v1.CreateNvmePathRequest + (*DeleteNvmePathRequest)(nil), // 18: opi_api.storage.v1.DeleteNvmePathRequest + (*UpdateNvmePathRequest)(nil), // 19: opi_api.storage.v1.UpdateNvmePathRequest + (*ListNvmePathsRequest)(nil), // 20: opi_api.storage.v1.ListNvmePathsRequest + (*ListNvmePathsResponse)(nil), // 21: opi_api.storage.v1.ListNvmePathsResponse + (*GetNvmePathRequest)(nil), // 22: opi_api.storage.v1.GetNvmePathRequest + (*StatsNvmePathRequest)(nil), // 23: opi_api.storage.v1.StatsNvmePathRequest + (*StatsNvmePathResponse)(nil), // 24: opi_api.storage.v1.StatsNvmePathResponse + (NvmeTransportType)(0), // 25: opi_api.storage.v1.NvmeTransportType + (*PciEndpoint)(nil), // 26: opi_api.storage.v1.PciEndpoint + (*FabricsEndpoint)(nil), // 27: opi_api.storage.v1.FabricsEndpoint (*_go.Uuid)(nil), // 28: opi_api.common.v1.Uuid (*fieldmaskpb.FieldMask)(nil), // 29: google.protobuf.FieldMask (*VolumeStats)(nil), // 30: opi_api.storage.v1.VolumeStats @@ -2184,51 +2129,51 @@ var file_backend_nvme_proto_goTypes = []interface{}{ var file_backend_nvme_proto_depIdxs = []int32{ 0, // 0: opi_api.storage.v1.NvmeRemoteController.multipath:type_name -> opi_api.storage.v1.NvmeMultipath 2, // 1: opi_api.storage.v1.NvmeRemoteController.tcp:type_name -> opi_api.storage.v1.TcpController - 26, // 2: opi_api.storage.v1.NvmePath.trtype:type_name -> opi_api.storage.v1.NvmeTransportType - 4, // 3: opi_api.storage.v1.NvmePath.fabrics:type_name -> opi_api.storage.v1.FabricsPath - 27, // 4: opi_api.storage.v1.FabricsPath.adrfam:type_name -> opi_api.storage.v1.NvmeAddressFamily + 25, // 2: opi_api.storage.v1.NvmePath.trtype:type_name -> opi_api.storage.v1.NvmeTransportType + 26, // 3: opi_api.storage.v1.NvmePath.pcie:type_name -> opi_api.storage.v1.PciEndpoint + 27, // 4: opi_api.storage.v1.NvmePath.fabrics:type_name -> opi_api.storage.v1.FabricsEndpoint 28, // 5: opi_api.storage.v1.NvmeRemoteNamespace.uuid:type_name -> opi_api.common.v1.Uuid 1, // 6: opi_api.storage.v1.CreateNvmeRemoteControllerRequest.nvme_remote_controller:type_name -> opi_api.storage.v1.NvmeRemoteController 1, // 7: opi_api.storage.v1.UpdateNvmeRemoteControllerRequest.nvme_remote_controller:type_name -> opi_api.storage.v1.NvmeRemoteController 29, // 8: opi_api.storage.v1.UpdateNvmeRemoteControllerRequest.update_mask:type_name -> google.protobuf.FieldMask 1, // 9: opi_api.storage.v1.ListNvmeRemoteControllersResponse.nvme_remote_controllers:type_name -> opi_api.storage.v1.NvmeRemoteController 30, // 10: opi_api.storage.v1.StatsNvmeRemoteControllerResponse.stats:type_name -> opi_api.storage.v1.VolumeStats - 5, // 11: opi_api.storage.v1.ListNvmeRemoteNamespacesResponse.nvme_remote_namespaces:type_name -> opi_api.storage.v1.NvmeRemoteNamespace + 4, // 11: opi_api.storage.v1.ListNvmeRemoteNamespacesResponse.nvme_remote_namespaces:type_name -> opi_api.storage.v1.NvmeRemoteNamespace 3, // 12: opi_api.storage.v1.CreateNvmePathRequest.nvme_path:type_name -> opi_api.storage.v1.NvmePath 3, // 13: opi_api.storage.v1.UpdateNvmePathRequest.nvme_path:type_name -> opi_api.storage.v1.NvmePath 29, // 14: opi_api.storage.v1.UpdateNvmePathRequest.update_mask:type_name -> google.protobuf.FieldMask 3, // 15: opi_api.storage.v1.ListNvmePathsResponse.nvme_paths:type_name -> opi_api.storage.v1.NvmePath 30, // 16: opi_api.storage.v1.StatsNvmePathResponse.stats:type_name -> opi_api.storage.v1.VolumeStats - 6, // 17: opi_api.storage.v1.NvmeRemoteControllerService.CreateNvmeRemoteController:input_type -> opi_api.storage.v1.CreateNvmeRemoteControllerRequest - 7, // 18: opi_api.storage.v1.NvmeRemoteControllerService.DeleteNvmeRemoteController:input_type -> opi_api.storage.v1.DeleteNvmeRemoteControllerRequest - 8, // 19: opi_api.storage.v1.NvmeRemoteControllerService.UpdateNvmeRemoteController:input_type -> opi_api.storage.v1.UpdateNvmeRemoteControllerRequest - 9, // 20: opi_api.storage.v1.NvmeRemoteControllerService.ListNvmeRemoteControllers:input_type -> opi_api.storage.v1.ListNvmeRemoteControllersRequest - 11, // 21: opi_api.storage.v1.NvmeRemoteControllerService.GetNvmeRemoteController:input_type -> opi_api.storage.v1.GetNvmeRemoteControllerRequest - 12, // 22: opi_api.storage.v1.NvmeRemoteControllerService.ResetNvmeRemoteController:input_type -> opi_api.storage.v1.ResetNvmeRemoteControllerRequest - 13, // 23: opi_api.storage.v1.NvmeRemoteControllerService.StatsNvmeRemoteController:input_type -> opi_api.storage.v1.StatsNvmeRemoteControllerRequest - 15, // 24: opi_api.storage.v1.NvmeRemoteControllerService.ListNvmeRemoteNamespaces:input_type -> opi_api.storage.v1.ListNvmeRemoteNamespacesRequest - 17, // 25: opi_api.storage.v1.NvmeRemoteControllerService.GetNvmeRemoteNamespace:input_type -> opi_api.storage.v1.GetNvmeRemoteNamespaceRequest - 18, // 26: opi_api.storage.v1.NvmeRemoteControllerService.CreateNvmePath:input_type -> opi_api.storage.v1.CreateNvmePathRequest - 19, // 27: opi_api.storage.v1.NvmeRemoteControllerService.DeleteNvmePath:input_type -> opi_api.storage.v1.DeleteNvmePathRequest - 20, // 28: opi_api.storage.v1.NvmeRemoteControllerService.UpdateNvmePath:input_type -> opi_api.storage.v1.UpdateNvmePathRequest - 21, // 29: opi_api.storage.v1.NvmeRemoteControllerService.ListNvmePaths:input_type -> opi_api.storage.v1.ListNvmePathsRequest - 23, // 30: opi_api.storage.v1.NvmeRemoteControllerService.GetNvmePath:input_type -> opi_api.storage.v1.GetNvmePathRequest - 24, // 31: opi_api.storage.v1.NvmeRemoteControllerService.StatsNvmePath:input_type -> opi_api.storage.v1.StatsNvmePathRequest + 5, // 17: opi_api.storage.v1.NvmeRemoteControllerService.CreateNvmeRemoteController:input_type -> opi_api.storage.v1.CreateNvmeRemoteControllerRequest + 6, // 18: opi_api.storage.v1.NvmeRemoteControllerService.DeleteNvmeRemoteController:input_type -> opi_api.storage.v1.DeleteNvmeRemoteControllerRequest + 7, // 19: opi_api.storage.v1.NvmeRemoteControllerService.UpdateNvmeRemoteController:input_type -> opi_api.storage.v1.UpdateNvmeRemoteControllerRequest + 8, // 20: opi_api.storage.v1.NvmeRemoteControllerService.ListNvmeRemoteControllers:input_type -> opi_api.storage.v1.ListNvmeRemoteControllersRequest + 10, // 21: opi_api.storage.v1.NvmeRemoteControllerService.GetNvmeRemoteController:input_type -> opi_api.storage.v1.GetNvmeRemoteControllerRequest + 11, // 22: opi_api.storage.v1.NvmeRemoteControllerService.ResetNvmeRemoteController:input_type -> opi_api.storage.v1.ResetNvmeRemoteControllerRequest + 12, // 23: opi_api.storage.v1.NvmeRemoteControllerService.StatsNvmeRemoteController:input_type -> opi_api.storage.v1.StatsNvmeRemoteControllerRequest + 14, // 24: opi_api.storage.v1.NvmeRemoteControllerService.ListNvmeRemoteNamespaces:input_type -> opi_api.storage.v1.ListNvmeRemoteNamespacesRequest + 16, // 25: opi_api.storage.v1.NvmeRemoteControllerService.GetNvmeRemoteNamespace:input_type -> opi_api.storage.v1.GetNvmeRemoteNamespaceRequest + 17, // 26: opi_api.storage.v1.NvmeRemoteControllerService.CreateNvmePath:input_type -> opi_api.storage.v1.CreateNvmePathRequest + 18, // 27: opi_api.storage.v1.NvmeRemoteControllerService.DeleteNvmePath:input_type -> opi_api.storage.v1.DeleteNvmePathRequest + 19, // 28: opi_api.storage.v1.NvmeRemoteControllerService.UpdateNvmePath:input_type -> opi_api.storage.v1.UpdateNvmePathRequest + 20, // 29: opi_api.storage.v1.NvmeRemoteControllerService.ListNvmePaths:input_type -> opi_api.storage.v1.ListNvmePathsRequest + 22, // 30: opi_api.storage.v1.NvmeRemoteControllerService.GetNvmePath:input_type -> opi_api.storage.v1.GetNvmePathRequest + 23, // 31: opi_api.storage.v1.NvmeRemoteControllerService.StatsNvmePath:input_type -> opi_api.storage.v1.StatsNvmePathRequest 1, // 32: opi_api.storage.v1.NvmeRemoteControllerService.CreateNvmeRemoteController:output_type -> opi_api.storage.v1.NvmeRemoteController 31, // 33: opi_api.storage.v1.NvmeRemoteControllerService.DeleteNvmeRemoteController:output_type -> google.protobuf.Empty 1, // 34: opi_api.storage.v1.NvmeRemoteControllerService.UpdateNvmeRemoteController:output_type -> opi_api.storage.v1.NvmeRemoteController - 10, // 35: opi_api.storage.v1.NvmeRemoteControllerService.ListNvmeRemoteControllers:output_type -> opi_api.storage.v1.ListNvmeRemoteControllersResponse + 9, // 35: opi_api.storage.v1.NvmeRemoteControllerService.ListNvmeRemoteControllers:output_type -> opi_api.storage.v1.ListNvmeRemoteControllersResponse 1, // 36: opi_api.storage.v1.NvmeRemoteControllerService.GetNvmeRemoteController:output_type -> opi_api.storage.v1.NvmeRemoteController 31, // 37: opi_api.storage.v1.NvmeRemoteControllerService.ResetNvmeRemoteController:output_type -> google.protobuf.Empty - 14, // 38: opi_api.storage.v1.NvmeRemoteControllerService.StatsNvmeRemoteController:output_type -> opi_api.storage.v1.StatsNvmeRemoteControllerResponse - 16, // 39: opi_api.storage.v1.NvmeRemoteControllerService.ListNvmeRemoteNamespaces:output_type -> opi_api.storage.v1.ListNvmeRemoteNamespacesResponse - 5, // 40: opi_api.storage.v1.NvmeRemoteControllerService.GetNvmeRemoteNamespace:output_type -> opi_api.storage.v1.NvmeRemoteNamespace + 13, // 38: opi_api.storage.v1.NvmeRemoteControllerService.StatsNvmeRemoteController:output_type -> opi_api.storage.v1.StatsNvmeRemoteControllerResponse + 15, // 39: opi_api.storage.v1.NvmeRemoteControllerService.ListNvmeRemoteNamespaces:output_type -> opi_api.storage.v1.ListNvmeRemoteNamespacesResponse + 4, // 40: opi_api.storage.v1.NvmeRemoteControllerService.GetNvmeRemoteNamespace:output_type -> opi_api.storage.v1.NvmeRemoteNamespace 3, // 41: opi_api.storage.v1.NvmeRemoteControllerService.CreateNvmePath:output_type -> opi_api.storage.v1.NvmePath 31, // 42: opi_api.storage.v1.NvmeRemoteControllerService.DeleteNvmePath:output_type -> google.protobuf.Empty 3, // 43: opi_api.storage.v1.NvmeRemoteControllerService.UpdateNvmePath:output_type -> opi_api.storage.v1.NvmePath - 22, // 44: opi_api.storage.v1.NvmeRemoteControllerService.ListNvmePaths:output_type -> opi_api.storage.v1.ListNvmePathsResponse + 21, // 44: opi_api.storage.v1.NvmeRemoteControllerService.ListNvmePaths:output_type -> opi_api.storage.v1.ListNvmePathsResponse 3, // 45: opi_api.storage.v1.NvmeRemoteControllerService.GetNvmePath:output_type -> opi_api.storage.v1.NvmePath - 25, // 46: opi_api.storage.v1.NvmeRemoteControllerService.StatsNvmePath:output_type -> opi_api.storage.v1.StatsNvmePathResponse + 24, // 46: opi_api.storage.v1.NvmeRemoteControllerService.StatsNvmePath:output_type -> opi_api.storage.v1.StatsNvmePathResponse 32, // [32:47] is the sub-list for method output_type 17, // [17:32] is the sub-list for method input_type 17, // [17:17] is the sub-list for extension type_name @@ -2280,18 +2225,6 @@ func file_backend_nvme_proto_init() { } } file_backend_nvme_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FabricsPath); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_backend_nvme_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NvmeRemoteNamespace); i { case 0: return &v.state @@ -2303,7 +2236,7 @@ func file_backend_nvme_proto_init() { return nil } } - file_backend_nvme_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + file_backend_nvme_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CreateNvmeRemoteControllerRequest); i { case 0: return &v.state @@ -2315,7 +2248,7 @@ func file_backend_nvme_proto_init() { return nil } } - file_backend_nvme_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + file_backend_nvme_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DeleteNvmeRemoteControllerRequest); i { case 0: return &v.state @@ -2327,7 +2260,7 @@ func file_backend_nvme_proto_init() { return nil } } - file_backend_nvme_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + file_backend_nvme_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UpdateNvmeRemoteControllerRequest); i { case 0: return &v.state @@ -2339,7 +2272,7 @@ func file_backend_nvme_proto_init() { return nil } } - file_backend_nvme_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + file_backend_nvme_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ListNvmeRemoteControllersRequest); i { case 0: return &v.state @@ -2351,7 +2284,7 @@ func file_backend_nvme_proto_init() { return nil } } - file_backend_nvme_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + file_backend_nvme_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ListNvmeRemoteControllersResponse); i { case 0: return &v.state @@ -2363,7 +2296,7 @@ func file_backend_nvme_proto_init() { return nil } } - file_backend_nvme_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + file_backend_nvme_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetNvmeRemoteControllerRequest); i { case 0: return &v.state @@ -2375,7 +2308,7 @@ func file_backend_nvme_proto_init() { return nil } } - file_backend_nvme_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + file_backend_nvme_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ResetNvmeRemoteControllerRequest); i { case 0: return &v.state @@ -2387,7 +2320,7 @@ func file_backend_nvme_proto_init() { return nil } } - file_backend_nvme_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + file_backend_nvme_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StatsNvmeRemoteControllerRequest); i { case 0: return &v.state @@ -2399,7 +2332,7 @@ func file_backend_nvme_proto_init() { return nil } } - file_backend_nvme_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + file_backend_nvme_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StatsNvmeRemoteControllerResponse); i { case 0: return &v.state @@ -2411,7 +2344,7 @@ func file_backend_nvme_proto_init() { return nil } } - file_backend_nvme_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + file_backend_nvme_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ListNvmeRemoteNamespacesRequest); i { case 0: return &v.state @@ -2423,7 +2356,7 @@ func file_backend_nvme_proto_init() { return nil } } - file_backend_nvme_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + file_backend_nvme_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ListNvmeRemoteNamespacesResponse); i { case 0: return &v.state @@ -2435,7 +2368,7 @@ func file_backend_nvme_proto_init() { return nil } } - file_backend_nvme_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { + file_backend_nvme_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetNvmeRemoteNamespaceRequest); i { case 0: return &v.state @@ -2447,7 +2380,7 @@ func file_backend_nvme_proto_init() { return nil } } - file_backend_nvme_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { + file_backend_nvme_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CreateNvmePathRequest); i { case 0: return &v.state @@ -2459,7 +2392,7 @@ func file_backend_nvme_proto_init() { return nil } } - file_backend_nvme_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { + file_backend_nvme_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DeleteNvmePathRequest); i { case 0: return &v.state @@ -2471,7 +2404,7 @@ func file_backend_nvme_proto_init() { return nil } } - file_backend_nvme_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { + file_backend_nvme_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UpdateNvmePathRequest); i { case 0: return &v.state @@ -2483,7 +2416,7 @@ func file_backend_nvme_proto_init() { return nil } } - file_backend_nvme_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { + file_backend_nvme_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ListNvmePathsRequest); i { case 0: return &v.state @@ -2495,7 +2428,7 @@ func file_backend_nvme_proto_init() { return nil } } - file_backend_nvme_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { + file_backend_nvme_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ListNvmePathsResponse); i { case 0: return &v.state @@ -2507,7 +2440,7 @@ func file_backend_nvme_proto_init() { return nil } } - file_backend_nvme_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { + file_backend_nvme_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetNvmePathRequest); i { case 0: return &v.state @@ -2519,7 +2452,7 @@ func file_backend_nvme_proto_init() { return nil } } - file_backend_nvme_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { + file_backend_nvme_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StatsNvmePathRequest); i { case 0: return &v.state @@ -2531,7 +2464,7 @@ func file_backend_nvme_proto_init() { return nil } } - file_backend_nvme_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { + file_backend_nvme_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StatsNvmePathResponse); i { case 0: return &v.state @@ -2544,13 +2477,17 @@ func file_backend_nvme_proto_init() { } } } + file_backend_nvme_proto_msgTypes[2].OneofWrappers = []interface{}{ + (*NvmePath_Pcie)(nil), + (*NvmePath_Fabrics)(nil), + } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_backend_nvme_proto_rawDesc, NumEnums: 1, - NumMessages: 25, + NumMessages: 24, NumExtensions: 0, NumServices: 1, }, diff --git a/storage/v1alpha1/gen/go/opicommon.pb.go b/storage/v1alpha1/gen/go/opicommon.pb.go index c9eb632a..5c88a5c6 100644 --- a/storage/v1alpha1/gen/go/opicommon.pb.go +++ b/storage/v1alpha1/gen/go/opicommon.pb.go @@ -239,21 +239,39 @@ type PciEndpoint struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields + // for frontend: // The "port" or "device". In other words, the connector/cable that's // plugged into a particular host. This number may end up matching // the host-assigned "device" value in the bus:device:function identifier, // but it does not strictly have to and that should not be relied upon. + // + // for backend: + // Corresponds to "bus" part of BDF PortId *wrapperspb.Int32Value `protobuf:"bytes,1,opt,name=port_id,json=portId,proto3" json:"port_id,omitempty"` + // for frontend: // Physical function index. This may end up matching the host-assigned // "function" value in the bus:device:function identifier, but it does not // strictly have to and that should not be relied upon. + // + // for backend: + // Corresponds to "device" part of BDF PhysicalFunction *wrapperspb.Int32Value `protobuf:"bytes,2,opt,name=physical_function,json=physicalFunction,proto3" json:"physical_function,omitempty"` + // for frontend: // Virtual function index. 1-based index. // The value 0 is reserved to represent the PCI physical "device". // This may end up matching the host-assigned "function" value in the // bus:device:function identifier, but it does not strictly have to and // that should not be relied upon. + // + // for backend: + // Corresponds to "function" part of BDF VirtualFunction *wrapperspb.Int32Value `protobuf:"bytes,3,opt,name=virtual_function,json=virtualFunction,proto3" json:"virtual_function,omitempty"` + // for frontend: + // Not used + // + // for backend: + // Corresponds to pci domain value + DomainId *wrapperspb.Int32Value `protobuf:"bytes,4,opt,name=domain_id,json=domainId,proto3" json:"domain_id,omitempty"` } func (x *PciEndpoint) Reset() { @@ -309,6 +327,13 @@ func (x *PciEndpoint) GetVirtualFunction() *wrapperspb.Int32Value { return nil } +func (x *PciEndpoint) GetDomainId() *wrapperspb.Int32Value { + if x != nil { + return x.DomainId + } + return nil +} + // Represents Fabrics Endpoint type FabricsEndpoint struct { state protoimpl.MessageState @@ -321,6 +346,12 @@ type FabricsEndpoint struct { Trsvcid string `protobuf:"bytes,2,opt,name=trsvcid,proto3" json:"trsvcid,omitempty"` // address family Adrfam NvmeAddressFamily `protobuf:"varint,3,opt,name=adrfam,proto3,enum=opi_api.storage.v1.NvmeAddressFamily" json:"adrfam,omitempty"` + // source address (e.g. IP of local NIC) + // not used for frontend + SourceTraddr string `protobuf:"bytes,4,opt,name=source_traddr,json=sourceTraddr,proto3" json:"source_traddr,omitempty"` + // source port (e.g. Port of local NIC) + // not used for frontend + SourceTrsvcid string `protobuf:"bytes,5,opt,name=source_trsvcid,json=sourceTrsvcid,proto3" json:"source_trsvcid,omitempty"` } func (x *FabricsEndpoint) Reset() { @@ -376,6 +407,20 @@ func (x *FabricsEndpoint) GetAdrfam() NvmeAddressFamily { return NvmeAddressFamily_NVME_ADDRESS_FAMILY_UNSPECIFIED } +func (x *FabricsEndpoint) GetSourceTraddr() string { + if x != nil { + return x.SourceTraddr + } + return "" +} + +func (x *FabricsEndpoint) GetSourceTrsvcid() string { + if x != nil { + return x.SourceTrsvcid + } + return "" +} + // Represents Volume statistics type VolumeStats struct { state protoimpl.MessageState @@ -600,7 +645,7 @@ var file_opicommon_proto_rawDesc = []byte{ 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xe4, 0x01, 0x0a, 0x0b, 0x50, 0x63, 0x69, 0x45, 0x6e, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xa3, 0x02, 0x0a, 0x0b, 0x50, 0x63, 0x69, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x39, 0x0a, 0x07, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, @@ -614,106 +659,116 @@ var file_opicommon_proto_rawDesc = []byte{ 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0f, 0x76, 0x69, - 0x72, 0x74, 0x75, 0x61, 0x6c, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x91, 0x01, - 0x0a, 0x0f, 0x46, 0x61, 0x62, 0x72, 0x69, 0x63, 0x73, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, - 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x74, 0x72, 0x61, 0x64, 0x64, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x74, 0x72, 0x61, 0x64, 0x64, 0x72, 0x12, 0x1d, - 0x0a, 0x07, 0x74, 0x72, 0x73, 0x76, 0x63, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x74, 0x72, 0x73, 0x76, 0x63, 0x69, 0x64, 0x12, 0x42, 0x0a, - 0x06, 0x61, 0x64, 0x72, 0x66, 0x61, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, - 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x4e, 0x76, 0x6d, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x46, 0x61, - 0x6d, 0x69, 0x6c, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x61, 0x64, 0x72, 0x66, 0x61, - 0x6d, 0x22, 0xc0, 0x03, 0x0a, 0x0b, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x73, 0x12, 0x2d, 0x0a, 0x10, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x5f, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03, - 0x52, 0x0e, 0x72, 0x65, 0x61, 0x64, 0x42, 0x79, 0x74, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x12, 0x29, 0x0a, 0x0e, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6f, 0x70, 0x73, 0x5f, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0c, 0x72, - 0x65, 0x61, 0x64, 0x4f, 0x70, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2f, 0x0a, 0x11, 0x77, - 0x72, 0x69, 0x74, 0x65, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0f, 0x77, 0x72, 0x69, - 0x74, 0x65, 0x42, 0x79, 0x74, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x0f, - 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x6f, 0x70, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0d, 0x77, 0x72, 0x69, 0x74, - 0x65, 0x4f, 0x70, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2f, 0x0a, 0x11, 0x75, 0x6e, 0x6d, - 0x61, 0x70, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0f, 0x75, 0x6e, 0x6d, 0x61, 0x70, - 0x42, 0x79, 0x74, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x0f, 0x75, 0x6e, - 0x6d, 0x61, 0x70, 0x5f, 0x6f, 0x70, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0d, 0x75, 0x6e, 0x6d, 0x61, 0x70, 0x4f, - 0x70, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x31, 0x0a, 0x12, 0x72, 0x65, 0x61, 0x64, 0x5f, - 0x6c, 0x61, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x73, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x10, 0x72, 0x65, 0x61, 0x64, 0x4c, 0x61, - 0x74, 0x65, 0x6e, 0x63, 0x79, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x12, 0x33, 0x0a, 0x13, 0x77, 0x72, - 0x69, 0x74, 0x65, 0x5f, 0x6c, 0x61, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x74, 0x69, 0x63, 0x6b, - 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x11, 0x77, 0x72, - 0x69, 0x74, 0x65, 0x4c, 0x61, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x12, - 0x33, 0x0a, 0x13, 0x75, 0x6e, 0x6d, 0x61, 0x70, 0x5f, 0x6c, 0x61, 0x74, 0x65, 0x6e, 0x63, 0x79, - 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, - 0x03, 0x52, 0x11, 0x75, 0x6e, 0x6d, 0x61, 0x70, 0x4c, 0x61, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x54, - 0x69, 0x63, 0x6b, 0x73, 0x22, 0x92, 0x02, 0x0a, 0x08, 0x51, 0x6f, 0x73, 0x4c, 0x69, 0x6d, 0x69, - 0x74, 0x12, 0x27, 0x0a, 0x0d, 0x72, 0x64, 0x5f, 0x69, 0x6f, 0x70, 0x73, 0x5f, 0x6b, 0x69, 0x6f, - 0x70, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0b, 0x72, - 0x64, 0x49, 0x6f, 0x70, 0x73, 0x4b, 0x69, 0x6f, 0x70, 0x73, 0x12, 0x27, 0x0a, 0x0d, 0x77, 0x72, - 0x5f, 0x69, 0x6f, 0x70, 0x73, 0x5f, 0x6b, 0x69, 0x6f, 0x70, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x03, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0b, 0x77, 0x72, 0x49, 0x6f, 0x70, 0x73, 0x4b, 0x69, - 0x6f, 0x70, 0x73, 0x12, 0x27, 0x0a, 0x0d, 0x72, 0x77, 0x5f, 0x69, 0x6f, 0x70, 0x73, 0x5f, 0x6b, - 0x69, 0x6f, 0x70, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, - 0x0b, 0x72, 0x77, 0x49, 0x6f, 0x70, 0x73, 0x4b, 0x69, 0x6f, 0x70, 0x73, 0x12, 0x2d, 0x0a, 0x10, - 0x72, 0x64, 0x5f, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x5f, 0x6d, 0x62, 0x73, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0e, 0x72, 0x64, 0x42, - 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x4d, 0x62, 0x73, 0x12, 0x2d, 0x0a, 0x10, 0x77, - 0x72, 0x5f, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x5f, 0x6d, 0x62, 0x73, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0e, 0x77, 0x72, 0x42, 0x61, - 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x4d, 0x62, 0x73, 0x12, 0x2d, 0x0a, 0x10, 0x72, 0x77, - 0x5f, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x5f, 0x6d, 0x62, 0x73, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0e, 0x72, 0x77, 0x42, 0x61, 0x6e, - 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x4d, 0x62, 0x73, 0x2a, 0xf7, 0x01, 0x0a, 0x0e, 0x45, 0x6e, - 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x1b, - 0x45, 0x4e, 0x43, 0x52, 0x59, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, - 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1f, 0x0a, - 0x1b, 0x45, 0x4e, 0x43, 0x52, 0x59, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, - 0x5f, 0x41, 0x45, 0x53, 0x5f, 0x43, 0x42, 0x43, 0x5f, 0x31, 0x32, 0x38, 0x10, 0x01, 0x12, 0x1f, - 0x0a, 0x1b, 0x45, 0x4e, 0x43, 0x52, 0x59, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, - 0x45, 0x5f, 0x41, 0x45, 0x53, 0x5f, 0x43, 0x42, 0x43, 0x5f, 0x31, 0x39, 0x32, 0x10, 0x02, 0x12, - 0x1f, 0x0a, 0x1b, 0x45, 0x4e, 0x43, 0x52, 0x59, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, - 0x50, 0x45, 0x5f, 0x41, 0x45, 0x53, 0x5f, 0x43, 0x42, 0x43, 0x5f, 0x32, 0x35, 0x36, 0x10, 0x03, - 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x4e, 0x43, 0x52, 0x59, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, - 0x59, 0x50, 0x45, 0x5f, 0x41, 0x45, 0x53, 0x5f, 0x58, 0x54, 0x53, 0x5f, 0x31, 0x32, 0x38, 0x10, - 0x04, 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x4e, 0x43, 0x52, 0x59, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, - 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x45, 0x53, 0x5f, 0x58, 0x54, 0x53, 0x5f, 0x31, 0x39, 0x32, - 0x10, 0x05, 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x4e, 0x43, 0x52, 0x59, 0x50, 0x54, 0x49, 0x4f, 0x4e, - 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x45, 0x53, 0x5f, 0x58, 0x54, 0x53, 0x5f, 0x32, 0x35, - 0x36, 0x10, 0x06, 0x2a, 0xb4, 0x01, 0x0a, 0x11, 0x4e, 0x76, 0x6d, 0x65, 0x54, 0x72, 0x61, 0x6e, - 0x73, 0x70, 0x6f, 0x72, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x1f, 0x4e, 0x56, 0x4d, - 0x45, 0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, - 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x15, - 0x0a, 0x11, 0x4e, 0x56, 0x4d, 0x45, 0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, - 0x5f, 0x46, 0x43, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x4e, 0x56, 0x4d, 0x45, 0x5f, 0x54, 0x52, - 0x41, 0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x50, 0x43, 0x49, 0x45, 0x10, 0x02, 0x12, 0x17, - 0x0a, 0x13, 0x4e, 0x56, 0x4d, 0x45, 0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, - 0x5f, 0x52, 0x44, 0x4d, 0x41, 0x10, 0x03, 0x12, 0x16, 0x0a, 0x12, 0x4e, 0x56, 0x4d, 0x45, 0x5f, - 0x54, 0x52, 0x41, 0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x54, 0x43, 0x50, 0x10, 0x04, 0x12, - 0x19, 0x0a, 0x15, 0x4e, 0x56, 0x4d, 0x45, 0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x50, 0x4f, 0x52, - 0x54, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x10, 0x05, 0x2a, 0xa8, 0x01, 0x0a, 0x11, 0x4e, - 0x76, 0x6d, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x46, 0x61, 0x6d, 0x69, 0x6c, 0x79, - 0x12, 0x23, 0x0a, 0x1f, 0x4e, 0x56, 0x4d, 0x45, 0x5f, 0x41, 0x44, 0x44, 0x52, 0x45, 0x53, 0x53, - 0x5f, 0x46, 0x41, 0x4d, 0x49, 0x4c, 0x59, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, - 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x4e, 0x56, 0x4d, 0x45, 0x5f, 0x41, 0x44, - 0x52, 0x46, 0x41, 0x4d, 0x5f, 0x49, 0x50, 0x56, 0x34, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x4e, - 0x56, 0x4d, 0x45, 0x5f, 0x41, 0x44, 0x52, 0x46, 0x41, 0x4d, 0x5f, 0x49, 0x50, 0x56, 0x36, 0x10, - 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x4e, 0x56, 0x4d, 0x45, 0x5f, 0x41, 0x44, 0x52, 0x46, 0x41, 0x4d, - 0x5f, 0x49, 0x42, 0x10, 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x4e, 0x56, 0x4d, 0x45, 0x5f, 0x41, 0x44, - 0x52, 0x46, 0x41, 0x4d, 0x5f, 0x46, 0x43, 0x10, 0x04, 0x12, 0x1a, 0x0a, 0x16, 0x4e, 0x56, 0x4d, - 0x45, 0x5f, 0x41, 0x44, 0x52, 0x46, 0x41, 0x4d, 0x5f, 0x49, 0x4e, 0x54, 0x52, 0x41, 0x5f, 0x48, - 0x4f, 0x53, 0x54, 0x10, 0x05, 0x42, 0x5d, 0x0a, 0x12, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, - 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x42, 0x0e, 0x4f, 0x70, 0x69, - 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x35, 0x67, - 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6f, 0x70, 0x69, 0x70, 0x72, 0x6f, - 0x6a, 0x65, 0x63, 0x74, 0x2f, 0x6f, 0x70, 0x69, 0x2d, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x74, 0x6f, - 0x72, 0x61, 0x67, 0x65, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x67, 0x65, - 0x6e, 0x2f, 0x67, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x72, 0x74, 0x75, 0x61, 0x6c, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3d, 0x0a, + 0x09, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x03, 0xe0, + 0x41, 0x01, 0x52, 0x08, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x49, 0x64, 0x22, 0xe7, 0x01, 0x0a, + 0x0f, 0x46, 0x61, 0x62, 0x72, 0x69, 0x63, 0x73, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, + 0x12, 0x1b, 0x0a, 0x06, 0x74, 0x72, 0x61, 0x64, 0x64, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x74, 0x72, 0x61, 0x64, 0x64, 0x72, 0x12, 0x1d, 0x0a, + 0x07, 0x74, 0x72, 0x73, 0x76, 0x63, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, + 0xe0, 0x41, 0x02, 0x52, 0x07, 0x74, 0x72, 0x73, 0x76, 0x63, 0x69, 0x64, 0x12, 0x42, 0x0a, 0x06, + 0x61, 0x64, 0x72, 0x66, 0x61, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x6f, + 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, + 0x31, 0x2e, 0x4e, 0x76, 0x6d, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x46, 0x61, 0x6d, + 0x69, 0x6c, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x61, 0x64, 0x72, 0x66, 0x61, 0x6d, + 0x12, 0x28, 0x0a, 0x0d, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x64, 0x64, + 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x54, 0x72, 0x61, 0x64, 0x64, 0x72, 0x12, 0x2a, 0x0a, 0x0e, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x72, 0x73, 0x76, 0x63, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0d, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, + 0x72, 0x73, 0x76, 0x63, 0x69, 0x64, 0x22, 0xc0, 0x03, 0x0a, 0x0b, 0x56, 0x6f, 0x6c, 0x75, 0x6d, + 0x65, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x2d, 0x0a, 0x10, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x62, + 0x79, 0x74, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0e, 0x72, 0x65, 0x61, 0x64, 0x42, 0x79, 0x74, 0x65, 0x73, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x29, 0x0a, 0x0e, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6f, 0x70, + 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, + 0x41, 0x03, 0x52, 0x0c, 0x72, 0x65, 0x61, 0x64, 0x4f, 0x70, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x2f, 0x0a, 0x11, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x5f, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03, + 0x52, 0x0f, 0x77, 0x72, 0x69, 0x74, 0x65, 0x42, 0x79, 0x74, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x2b, 0x0a, 0x0f, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x6f, 0x70, 0x73, 0x5f, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, + 0x0d, 0x77, 0x72, 0x69, 0x74, 0x65, 0x4f, 0x70, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2f, + 0x0a, 0x11, 0x75, 0x6e, 0x6d, 0x61, 0x70, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x5f, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0f, + 0x75, 0x6e, 0x6d, 0x61, 0x70, 0x42, 0x79, 0x74, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x2b, 0x0a, 0x0f, 0x75, 0x6e, 0x6d, 0x61, 0x70, 0x5f, 0x6f, 0x70, 0x73, 0x5f, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0d, 0x75, + 0x6e, 0x6d, 0x61, 0x70, 0x4f, 0x70, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x31, 0x0a, 0x12, + 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6c, 0x61, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x74, 0x69, 0x63, + 0x6b, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x10, 0x72, + 0x65, 0x61, 0x64, 0x4c, 0x61, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x12, + 0x33, 0x0a, 0x13, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x6c, 0x61, 0x74, 0x65, 0x6e, 0x63, 0x79, + 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, + 0x03, 0x52, 0x11, 0x77, 0x72, 0x69, 0x74, 0x65, 0x4c, 0x61, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x54, + 0x69, 0x63, 0x6b, 0x73, 0x12, 0x33, 0x0a, 0x13, 0x75, 0x6e, 0x6d, 0x61, 0x70, 0x5f, 0x6c, 0x61, + 0x74, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x11, 0x75, 0x6e, 0x6d, 0x61, 0x70, 0x4c, 0x61, 0x74, + 0x65, 0x6e, 0x63, 0x79, 0x54, 0x69, 0x63, 0x6b, 0x73, 0x22, 0x92, 0x02, 0x0a, 0x08, 0x51, 0x6f, + 0x73, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x27, 0x0a, 0x0d, 0x72, 0x64, 0x5f, 0x69, 0x6f, 0x70, + 0x73, 0x5f, 0x6b, 0x69, 0x6f, 0x70, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, + 0x41, 0x01, 0x52, 0x0b, 0x72, 0x64, 0x49, 0x6f, 0x70, 0x73, 0x4b, 0x69, 0x6f, 0x70, 0x73, 0x12, + 0x27, 0x0a, 0x0d, 0x77, 0x72, 0x5f, 0x69, 0x6f, 0x70, 0x73, 0x5f, 0x6b, 0x69, 0x6f, 0x70, 0x73, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0b, 0x77, 0x72, 0x49, + 0x6f, 0x70, 0x73, 0x4b, 0x69, 0x6f, 0x70, 0x73, 0x12, 0x27, 0x0a, 0x0d, 0x72, 0x77, 0x5f, 0x69, + 0x6f, 0x70, 0x73, 0x5f, 0x6b, 0x69, 0x6f, 0x70, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x42, + 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0b, 0x72, 0x77, 0x49, 0x6f, 0x70, 0x73, 0x4b, 0x69, 0x6f, 0x70, + 0x73, 0x12, 0x2d, 0x0a, 0x10, 0x72, 0x64, 0x5f, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, + 0x68, 0x5f, 0x6d, 0x62, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x01, + 0x52, 0x0e, 0x72, 0x64, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x4d, 0x62, 0x73, + 0x12, 0x2d, 0x0a, 0x10, 0x77, 0x72, 0x5f, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, + 0x5f, 0x6d, 0x62, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, + 0x0e, 0x77, 0x72, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x4d, 0x62, 0x73, 0x12, + 0x2d, 0x0a, 0x10, 0x72, 0x77, 0x5f, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x5f, + 0x6d, 0x62, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0e, + 0x72, 0x77, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x4d, 0x62, 0x73, 0x2a, 0xf7, + 0x01, 0x0a, 0x0e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x4e, 0x43, 0x52, 0x59, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, + 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, + 0x10, 0x00, 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x4e, 0x43, 0x52, 0x59, 0x50, 0x54, 0x49, 0x4f, 0x4e, + 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x45, 0x53, 0x5f, 0x43, 0x42, 0x43, 0x5f, 0x31, 0x32, + 0x38, 0x10, 0x01, 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x4e, 0x43, 0x52, 0x59, 0x50, 0x54, 0x49, 0x4f, + 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x45, 0x53, 0x5f, 0x43, 0x42, 0x43, 0x5f, 0x31, + 0x39, 0x32, 0x10, 0x02, 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x4e, 0x43, 0x52, 0x59, 0x50, 0x54, 0x49, + 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x45, 0x53, 0x5f, 0x43, 0x42, 0x43, 0x5f, + 0x32, 0x35, 0x36, 0x10, 0x03, 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x4e, 0x43, 0x52, 0x59, 0x50, 0x54, + 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x45, 0x53, 0x5f, 0x58, 0x54, 0x53, + 0x5f, 0x31, 0x32, 0x38, 0x10, 0x04, 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x4e, 0x43, 0x52, 0x59, 0x50, + 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x45, 0x53, 0x5f, 0x58, 0x54, + 0x53, 0x5f, 0x31, 0x39, 0x32, 0x10, 0x05, 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x4e, 0x43, 0x52, 0x59, + 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x45, 0x53, 0x5f, 0x58, + 0x54, 0x53, 0x5f, 0x32, 0x35, 0x36, 0x10, 0x06, 0x2a, 0xb4, 0x01, 0x0a, 0x11, 0x4e, 0x76, 0x6d, + 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, + 0x0a, 0x1f, 0x4e, 0x56, 0x4d, 0x45, 0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, + 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, + 0x44, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x4e, 0x56, 0x4d, 0x45, 0x5f, 0x54, 0x52, 0x41, 0x4e, + 0x53, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x46, 0x43, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x4e, 0x56, + 0x4d, 0x45, 0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x50, 0x43, 0x49, + 0x45, 0x10, 0x02, 0x12, 0x17, 0x0a, 0x13, 0x4e, 0x56, 0x4d, 0x45, 0x5f, 0x54, 0x52, 0x41, 0x4e, + 0x53, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x52, 0x44, 0x4d, 0x41, 0x10, 0x03, 0x12, 0x16, 0x0a, 0x12, + 0x4e, 0x56, 0x4d, 0x45, 0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x54, + 0x43, 0x50, 0x10, 0x04, 0x12, 0x19, 0x0a, 0x15, 0x4e, 0x56, 0x4d, 0x45, 0x5f, 0x54, 0x52, 0x41, + 0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x10, 0x05, 0x2a, + 0xa8, 0x01, 0x0a, 0x11, 0x4e, 0x76, 0x6d, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x46, + 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x12, 0x23, 0x0a, 0x1f, 0x4e, 0x56, 0x4d, 0x45, 0x5f, 0x41, 0x44, + 0x44, 0x52, 0x45, 0x53, 0x53, 0x5f, 0x46, 0x41, 0x4d, 0x49, 0x4c, 0x59, 0x5f, 0x55, 0x4e, 0x53, + 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x4e, 0x56, + 0x4d, 0x45, 0x5f, 0x41, 0x44, 0x52, 0x46, 0x41, 0x4d, 0x5f, 0x49, 0x50, 0x56, 0x34, 0x10, 0x01, + 0x12, 0x14, 0x0a, 0x10, 0x4e, 0x56, 0x4d, 0x45, 0x5f, 0x41, 0x44, 0x52, 0x46, 0x41, 0x4d, 0x5f, + 0x49, 0x50, 0x56, 0x36, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x4e, 0x56, 0x4d, 0x45, 0x5f, 0x41, + 0x44, 0x52, 0x46, 0x41, 0x4d, 0x5f, 0x49, 0x42, 0x10, 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x4e, 0x56, + 0x4d, 0x45, 0x5f, 0x41, 0x44, 0x52, 0x46, 0x41, 0x4d, 0x5f, 0x46, 0x43, 0x10, 0x04, 0x12, 0x1a, + 0x0a, 0x16, 0x4e, 0x56, 0x4d, 0x45, 0x5f, 0x41, 0x44, 0x52, 0x46, 0x41, 0x4d, 0x5f, 0x49, 0x4e, + 0x54, 0x52, 0x41, 0x5f, 0x48, 0x4f, 0x53, 0x54, 0x10, 0x05, 0x42, 0x5d, 0x0a, 0x12, 0x6f, 0x70, + 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, + 0x42, 0x0e, 0x4f, 0x70, 0x69, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x50, 0x01, 0x5a, 0x35, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6f, + 0x70, 0x69, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2f, 0x6f, 0x70, 0x69, 0x2d, 0x61, 0x70, + 0x69, 0x2f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x31, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x67, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x33, } var ( @@ -744,12 +799,13 @@ var file_opicommon_proto_depIdxs = []int32{ 7, // 0: opi_api.storage.v1.PciEndpoint.port_id:type_name -> google.protobuf.Int32Value 7, // 1: opi_api.storage.v1.PciEndpoint.physical_function:type_name -> google.protobuf.Int32Value 7, // 2: opi_api.storage.v1.PciEndpoint.virtual_function:type_name -> google.protobuf.Int32Value - 2, // 3: opi_api.storage.v1.FabricsEndpoint.adrfam:type_name -> opi_api.storage.v1.NvmeAddressFamily - 4, // [4:4] is the sub-list for method output_type - 4, // [4:4] is the sub-list for method input_type - 4, // [4:4] is the sub-list for extension type_name - 4, // [4:4] is the sub-list for extension extendee - 0, // [0:4] is the sub-list for field type_name + 7, // 3: opi_api.storage.v1.PciEndpoint.domain_id:type_name -> google.protobuf.Int32Value + 2, // 4: opi_api.storage.v1.FabricsEndpoint.adrfam:type_name -> opi_api.storage.v1.NvmeAddressFamily + 5, // [5:5] is the sub-list for method output_type + 5, // [5:5] is the sub-list for method input_type + 5, // [5:5] is the sub-list for extension type_name + 5, // [5:5] is the sub-list for extension extendee + 0, // [0:5] is the sub-list for field type_name } func init() { file_opicommon_proto_init() } diff --git a/storage/v1alpha1/gen/java/opi_api/storage/v1/BackendNvmeProto.java b/storage/v1alpha1/gen/java/opi_api/storage/v1/BackendNvmeProto.java index 77eed200..147b9cf5 100644 --- a/storage/v1alpha1/gen/java/opi_api/storage/v1/BackendNvmeProto.java +++ b/storage/v1alpha1/gen/java/opi_api/storage/v1/BackendNvmeProto.java @@ -29,11 +29,6 @@ public static void registerAllExtensions( static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_opi_api_storage_v1_NvmePath_fieldAccessorTable; - static final com.google.protobuf.Descriptors.Descriptor - internal_static_opi_api_storage_v1_FabricsPath_descriptor; - static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internal_static_opi_api_storage_v1_FabricsPath_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_opi_api_storage_v1_NvmeRemoteNamespace_descriptor; static final @@ -154,169 +149,166 @@ public static void registerAllExtensions( "o\032\034google/api/annotations.proto\032\037google/" + "api/field_behavior.proto\032 google/protobu" + "f/field_mask.proto\032\017opicommon.proto\032\nuui" + - "d.proto\"\313\002\n\024NvmeRemoteController\022\021\n\004name" + + "d.proto\"\366\002\n\024NvmeRemoteController\022\021\n\004name" + "\030\001 \001(\tB\003\340A\010\0229\n\tmultipath\030\002 \001(\0162!.opi_api" + - ".storage.v1.NvmeMultipathB\003\340A\002\022\034\n\017io_que" + - "ues_count\030\003 \001(\003B\003\340A\001\022\027\n\nqueue_size\030\004 \001(\003" + - "B\003\340A\001\0223\n\003tcp\030\005 \001(\0132!.opi_api.storage.v1." + - "TcpControllerB\003\340A\001:y\352Av\n\'opi_api.storage" + - ".v1/NvmeRemoteController\022\036nvmeRemoteCont" + - "rollers/{volume}*\025nvmeRemoteControllers2" + - "\024nvmeRemoteController\"I\n\rTcpController\022\022" + - "\n\005hdgst\030\001 \001(\010B\003\340A\001\022\022\n\005ddgst\030\002 \001(\010B\003\340A\001\022\020" + - "\n\003psk\030\003 \001(\014B\003\340A\001\"\276\002\n\010NvmePath\022\021\n\004name\030\001 " + - "\001(\tB\003\340A\010\022L\n\023controller_name_ref\030\002 \001(\tB/\340" + - "A\002\372A)\n\'opi_api.storage.v1/NvmeRemoteCont" + - "roller\022:\n\006trtype\030\003 \001(\0162%.opi_api.storage" + - ".v1.NvmeTransportTypeB\003\340A\002\022\023\n\006traddr\030\004 \001" + - "(\tB\003\340A\002\0225\n\007fabrics\030\005 \001(\0132\037.opi_api.stora" + - "ge.v1.FabricsPathB\003\340A\001:I\352AF\n\033opi_api.sto" + - "rage.v1/NvmePath\022\022nvmePaths/{volume}*\tnv" + - "mePaths2\010nvmePath\"\303\001\n\013FabricsPath\022\024\n\007trs" + - "vcid\030\001 \001(\003B\003\340A\002\022\023\n\006subnqn\030\002 \001(\tB\003\340A\002\022:\n\006" + - "adrfam\030\003 \001(\0162%.opi_api.storage.v1.NvmeAd" + - "dressFamilyB\003\340A\002\022\032\n\rsource_traddr\030\004 \001(\tB" + - "\003\340A\001\022\033\n\016source_trsvcid\030\005 \001(\003B\003\340A\001\022\024\n\007hos" + - "tnqn\030\006 \001(\tB\003\340A\001\"\324\002\n\023NvmeRemoteNamespace\022" + - "\021\n\004name\030\001 \001(\tB\003\340A\010\022L\n\023controller_name_re" + - "f\030\002 \001(\tB/\340A\003\372A)\n\'opi_api.storage.v1/Nvme" + - "RemoteController\022\021\n\004nsid\030\003 \001(\005B\003\340A\003\022\022\n\005n" + - "guid\030\004 \001(\tB\003\340A\003\022\022\n\005eui64\030\005 \001(\003B\003\340A\003\022*\n\004u" + - "uid\030\006 \001(\0132\027.opi_api.common.v1.UuidB\003\340A\003:" + - "u\352Ar\n&opi_api.storage.v1/NvmeRemoteNames" + - "pace\022\035nvmeRemoteNamespaces/{volume}*\024nvm" + - "eRemoteNamespaces2\023nvmeRemoteNamespace\"\232" + - "\001\n!CreateNvmeRemoteControllerRequest\022M\n\026" + - "nvme_remote_controller\030\001 \001(\0132(.opi_api.s" + - "torage.v1.NvmeRemoteControllerB\003\340A\002\022&\n\031n" + - "vme_remote_controller_id\030\002 \001(\tB\003\340A\001\"~\n!D" + - "eleteNvmeRemoteControllerRequest\022=\n\004name" + - "\030\001 \001(\tB/\340A\002\372A)\n\'opi_api.storage.v1/NvmeR" + - "emoteController\022\032\n\rallow_missing\030\002 \001(\010B\003" + - "\340A\001\"\304\001\n!UpdateNvmeRemoteControllerReques" + - "t\022M\n\026nvme_remote_controller\030\001 \001(\0132(.opi_" + - "api.storage.v1.NvmeRemoteControllerB\003\340A\002" + - "\0224\n\013update_mask\030\002 \001(\0132\032.google.protobuf." + - "FieldMaskB\003\340A\001\022\032\n\rallow_missing\030\003 \001(\010B\003\340" + - "A\001\"\224\001\n ListNvmeRemoteControllersRequest\022" + - "?\n\006parent\030\001 \001(\tB/\340A\002\372A)\022\'opi_api.storage" + - ".v1/NvmeRemoteController\022\026\n\tpage_size\030\002 " + - "\001(\005B\003\340A\001\022\027\n\npage_token\030\003 \001(\tB\003\340A\001\"\207\001\n!Li" + - "stNvmeRemoteControllersResponse\022I\n\027nvme_" + - "remote_controllers\030\001 \003(\0132(.opi_api.stora" + - "ge.v1.NvmeRemoteController\022\027\n\017next_page_" + - "token\030\002 \001(\t\"_\n\036GetNvmeRemoteControllerRe" + - "quest\022=\n\004name\030\001 \001(\tB/\340A\002\372A)\n\'opi_api.sto" + - "rage.v1/NvmeRemoteController\"a\n ResetNvm" + - "eRemoteControllerRequest\022=\n\004name\030\001 \001(\tB/" + - "\340A\002\372A)\n\'opi_api.storage.v1/NvmeRemoteCon" + - "troller\"a\n StatsNvmeRemoteControllerRequ" + - "est\022=\n\004name\030\001 \001(\tB/\340A\002\372A)\n\'opi_api.stora" + - "ge.v1/NvmeRemoteController\"S\n!StatsNvmeR" + - "emoteControllerResponse\022.\n\005stats\030\001 \001(\0132\037" + - ".opi_api.storage.v1.VolumeStats\"\222\001\n\037List" + - "NvmeRemoteNamespacesRequest\022>\n\006parent\030\001 " + - "\001(\tB.\340A\002\372A(\022&opi_api.storage.v1/NvmeRemo" + - "teNamespace\022\026\n\tpage_size\030\002 \001(\005B\003\340A\001\022\027\n\np" + - "age_token\030\003 \001(\tB\003\340A\001\"\204\001\n ListNvmeRemoteN" + - "amespacesResponse\022G\n\026nvme_remote_namespa" + - "ces\030\001 \003(\0132\'.opi_api.storage.v1.NvmeRemot" + - "eNamespace\022\027\n\017next_page_token\030\002 \001(\t\"]\n\035G" + - "etNvmeRemoteNamespaceRequest\022<\n\004name\030\001 \001" + - "(\tB.\340A\002\372A(\n&opi_api.storage.v1/NvmeRemot" + - "eNamespace\"h\n\025CreateNvmePathRequest\0224\n\tn" + - "vme_path\030\001 \001(\0132\034.opi_api.storage.v1.Nvme" + - "PathB\003\340A\002\022\031\n\014nvme_path_id\030\002 \001(\tB\003\340A\001\"f\n\025" + - "DeleteNvmePathRequest\0221\n\004name\030\001 \001(\tB#\340A\002" + - "\372A\035\n\033opi_api.storage.v1/NvmePath\022\032\n\rallo" + - "w_missing\030\002 \001(\010B\003\340A\001\"\237\001\n\025UpdateNvmePathR" + - "equest\0224\n\tnvme_path\030\001 \001(\0132\034.opi_api.stor" + - "age.v1.NvmePathB\003\340A\002\0224\n\013update_mask\030\002 \001(" + - "\0132\032.google.protobuf.FieldMaskB\003\340A\001\022\032\n\ral" + - "low_missing\030\003 \001(\010B\003\340A\001\"|\n\024ListNvmePathsR" + - "equest\0223\n\006parent\030\001 \001(\tB#\340A\002\372A\035\022\033opi_api." + - "storage.v1/NvmePath\022\026\n\tpage_size\030\002 \001(\005B\003" + - "\340A\001\022\027\n\npage_token\030\003 \001(\tB\003\340A\001\"b\n\025ListNvme" + - "PathsResponse\0220\n\nnvme_paths\030\001 \003(\0132\034.opi_" + - "api.storage.v1.NvmePath\022\027\n\017next_page_tok" + - "en\030\002 \001(\t\"G\n\022GetNvmePathRequest\0221\n\004name\030\001" + - " \001(\tB#\340A\002\372A\035\n\033opi_api.storage.v1/NvmePat" + - "h\"I\n\024StatsNvmePathRequest\0221\n\004name\030\001 \001(\tB" + - "#\340A\002\372A\035\n\033opi_api.storage.v1/NvmePath\"G\n\025" + - "StatsNvmePathResponse\022.\n\005stats\030\001 \001(\0132\037.o" + - "pi_api.storage.v1.VolumeStats*\206\001\n\rNvmeMu" + - "ltipath\022\036\n\032NVME_MULTIPATH_UNSPECIFIED\020\000\022" + - "\032\n\026NVME_MULTIPATH_DISABLE\020\001\022\033\n\027NVME_MULT" + - "IPATH_FAILOVER\020\002\022\034\n\030NVME_MULTIPATH_MULTI" + - "PATH\020\0032\262\024\n\033NvmeRemoteControllerService\022\353" + - "\001\n\032CreateNvmeRemoteController\0225.opi_api." + - "storage.v1.CreateNvmeRemoteControllerReq" + - "uest\032(.opi_api.storage.v1.NvmeRemoteCont" + - "roller\"l\202\323\344\223\0023\"\031/v1/nvmeRemoteController" + - "s:\026nvme_remote_controller\332A0nvme_remote_" + - "controller,nvme_remote_controller_id\022\236\001\n" + - "\032DeleteNvmeRemoteController\0225.opi_api.st" + - "orage.v1.DeleteNvmeRemoteControllerReque" + - "st\032\026.google.protobuf.Empty\"1\202\323\344\223\002$*\"/v1/" + - "{name=nvmeRemoteControllers/*}\332A\004name\022\375\001" + - "\n\032UpdateNvmeRemoteController\0225.opi_api.s" + - "torage.v1.UpdateNvmeRemoteControllerRequ" + - "est\032(.opi_api.storage.v1.NvmeRemoteContr" + - "oller\"~\202\323\344\223\002S29/v1/{nvme_remote_controll" + - "er.name=nvmeRemoteControllers/*}:\026nvme_r" + - "emote_controller\332A\"nvme_remote_controlle" + - "r,update_mask\022\262\001\n\031ListNvmeRemoteControll" + - "ers\0224.opi_api.storage.v1.ListNvmeRemoteC" + - "ontrollersRequest\0325.opi_api.storage.v1.L" + - "istNvmeRemoteControllersResponse\"(\202\323\344\223\002\031" + - "\022\027/v1/{parent=subsystems}\332A\006parent\022\252\001\n\027G" + - "etNvmeRemoteController\0222.opi_api.storage" + - ".v1.GetNvmeRemoteControllerRequest\032(.opi" + - "_api.storage.v1.NvmeRemoteController\"1\202\323" + - "\344\223\002$\022\"/v1/{name=nvmeRemoteControllers/*}" + - "\332A\004name\022\245\001\n\031ResetNvmeRemoteController\0224." + - "opi_api.storage.v1.ResetNvmeRemoteContro" + - "llerRequest\032\026.google.protobuf.Empty\":\202\323\344" + - "\223\002-\"(/v1/{name=nvmeRemoteControllers/*}:" + - "reset:\001*\332A\004name\022\301\001\n\031StatsNvmeRemoteContr" + - "oller\0224.opi_api.storage.v1.StatsNvmeRemo" + - "teControllerRequest\0325.opi_api.storage.v1" + - ".StatsNvmeRemoteControllerResponse\"7\202\323\344\223" + - "\002*\022(/v1/{name=nvmeRemoteControllers/*}:s" + - "tats\332A\004name\022\257\001\n\030ListNvmeRemoteNamespaces" + - "\0223.opi_api.storage.v1.ListNvmeRemoteName" + - "spacesRequest\0324.opi_api.storage.v1.ListN" + - "vmeRemoteNamespacesResponse\"(\202\323\344\223\002\031\022\027/v1" + - "/{parent=subsystems}\332A\006parent\022\246\001\n\026GetNvm" + - "eRemoteNamespace\0221.opi_api.storage.v1.Ge" + - "tNvmeRemoteNamespaceRequest\032\'.opi_api.st" + - "orage.v1.NvmeRemoteNamespace\"0\202\323\344\223\002#\022!/v" + - "1/{name=nvmeRemoteNamespaces/*}\332A\004name\022\224" + - "\001\n\016CreateNvmePath\022).opi_api.storage.v1.C" + - "reateNvmePathRequest\032\034.opi_api.storage.v" + - "1.NvmePath\"9\202\323\344\223\002\032\"\r/v1/nvmePaths:\tnvme_" + - "path\332A\026nvme_path,nvme_path_id\022z\n\016DeleteN" + - "vmePath\022).opi_api.storage.v1.DeleteNvmeP" + - "athRequest\032\026.google.protobuf.Empty\"%\202\323\344\223" + - "\002\030*\026/v1/{name=nvmePaths/*}\332A\004name\022\246\001\n\016Up" + - "dateNvmePath\022).opi_api.storage.v1.Update" + - "NvmePathRequest\032\034.opi_api.storage.v1.Nvm" + - "ePath\"K\202\323\344\223\002-2 /v1/{nvme_path.name=nvmeP" + - "aths/*}:\tnvme_path\332A\025nvme_path,update_ma" + - "sk\022\216\001\n\rListNvmePaths\022(.opi_api.storage.v" + - "1.ListNvmePathsRequest\032).opi_api.storage" + - ".v1.ListNvmePathsResponse\"(\202\323\344\223\002\031\022\027/v1/{" + - "parent=subsystems}\332A\006parent\022z\n\013GetNvmePa" + - "th\022&.opi_api.storage.v1.GetNvmePathReque" + - "st\032\034.opi_api.storage.v1.NvmePath\"%\202\323\344\223\002\030" + - "\022\026/v1/{name=nvmePaths/*}\332A\004name\022\221\001\n\rStat" + - "sNvmePath\022(.opi_api.storage.v1.StatsNvme" + - "PathRequest\032).opi_api.storage.v1.StatsNv" + - "mePathResponse\"+\202\323\344\223\002\036\022\034/v1/{name=nvmePa" + - "ths/*}:stats\332A\004nameB_\n\022opi_api.storage.v" + - "1B\020BackendNvmeProtoP\001Z5github.com/opipro" + - "ject/opi-api/storage/v1alpha1/gen/gob\006pr" + - "oto3" + ".storage.v1.NvmeMultipathB\003\340A\002\022\023\n\006subnqn" + + "\030\003 \001(\tB\003\340A\001\022\024\n\007hostnqn\030\004 \001(\tB\003\340A\001\022\034\n\017io_" + + "queues_count\030\005 \001(\003B\003\340A\001\022\027\n\nqueue_size\030\006 " + + "\001(\003B\003\340A\001\0223\n\003tcp\030\007 \001(\0132!.opi_api.storage." + + "v1.TcpControllerB\003\340A\001:y\352Av\n\'opi_api.stor" + + "age.v1/NvmeRemoteController\022\036nvmeRemoteC" + + "ontrollers/{volume}*\025nvmeRemoteControlle" + + "rs2\024nvmeRemoteController\"I\n\rTcpControlle" + + "r\022\022\n\005hdgst\030\001 \001(\010B\003\340A\001\022\022\n\005ddgst\030\002 \001(\010B\003\340A" + + "\001\022\020\n\003psk\030\003 \001(\014B\003\340A\001\"\361\002\n\010NvmePath\022\021\n\004name" + + "\030\001 \001(\tB\003\340A\010\022L\n\023controller_name_ref\030\002 \001(\t" + + "B/\340A\002\372A)\n\'opi_api.storage.v1/NvmeRemoteC" + + "ontroller\022:\n\006trtype\030\003 \001(\0162%.opi_api.stor" + + "age.v1.NvmeTransportTypeB\003\340A\002\0224\n\004pcie\030\004 " + + "\001(\0132\037.opi_api.storage.v1.PciEndpointB\003\340A" + + "\001H\000\022;\n\007fabrics\030\005 \001(\0132#.opi_api.storage.v" + + "1.FabricsEndpointB\003\340A\001H\000:I\352AF\n\033opi_api.s" + + "torage.v1/NvmePath\022\022nvmePaths/{volume}*\t" + + "nvmePaths2\010nvmePathB\n\n\010endpoint\"\324\002\n\023Nvme" + + "RemoteNamespace\022\021\n\004name\030\001 \001(\tB\003\340A\010\022L\n\023co" + + "ntroller_name_ref\030\002 \001(\tB/\340A\003\372A)\n\'opi_api" + + ".storage.v1/NvmeRemoteController\022\021\n\004nsid" + + "\030\003 \001(\005B\003\340A\003\022\022\n\005nguid\030\004 \001(\tB\003\340A\003\022\022\n\005eui64" + + "\030\005 \001(\003B\003\340A\003\022*\n\004uuid\030\006 \001(\0132\027.opi_api.comm" + + "on.v1.UuidB\003\340A\003:u\352Ar\n&opi_api.storage.v1" + + "/NvmeRemoteNamespace\022\035nvmeRemoteNamespac" + + "es/{volume}*\024nvmeRemoteNamespaces2\023nvmeR" + + "emoteNamespace\"\232\001\n!CreateNvmeRemoteContr" + + "ollerRequest\022M\n\026nvme_remote_controller\030\001" + + " \001(\0132(.opi_api.storage.v1.NvmeRemoteCont" + + "rollerB\003\340A\002\022&\n\031nvme_remote_controller_id" + + "\030\002 \001(\tB\003\340A\001\"~\n!DeleteNvmeRemoteControlle" + + "rRequest\022=\n\004name\030\001 \001(\tB/\340A\002\372A)\n\'opi_api." + + "storage.v1/NvmeRemoteController\022\032\n\rallow" + + "_missing\030\002 \001(\010B\003\340A\001\"\304\001\n!UpdateNvmeRemote" + + "ControllerRequest\022M\n\026nvme_remote_control" + + "ler\030\001 \001(\0132(.opi_api.storage.v1.NvmeRemot" + + "eControllerB\003\340A\002\0224\n\013update_mask\030\002 \001(\0132\032." + + "google.protobuf.FieldMaskB\003\340A\001\022\032\n\rallow_" + + "missing\030\003 \001(\010B\003\340A\001\"\224\001\n ListNvmeRemoteCon" + + "trollersRequest\022?\n\006parent\030\001 \001(\tB/\340A\002\372A)\022" + + "\'opi_api.storage.v1/NvmeRemoteController" + + "\022\026\n\tpage_size\030\002 \001(\005B\003\340A\001\022\027\n\npage_token\030\003" + + " \001(\tB\003\340A\001\"\207\001\n!ListNvmeRemoteControllersR" + + "esponse\022I\n\027nvme_remote_controllers\030\001 \003(\013" + + "2(.opi_api.storage.v1.NvmeRemoteControll" + + "er\022\027\n\017next_page_token\030\002 \001(\t\"_\n\036GetNvmeRe" + + "moteControllerRequest\022=\n\004name\030\001 \001(\tB/\340A\002" + + "\372A)\n\'opi_api.storage.v1/NvmeRemoteContro" + + "ller\"a\n ResetNvmeRemoteControllerRequest" + + "\022=\n\004name\030\001 \001(\tB/\340A\002\372A)\n\'opi_api.storage." + + "v1/NvmeRemoteController\"a\n StatsNvmeRemo" + + "teControllerRequest\022=\n\004name\030\001 \001(\tB/\340A\002\372A" + + ")\n\'opi_api.storage.v1/NvmeRemoteControll" + + "er\"S\n!StatsNvmeRemoteControllerResponse\022" + + ".\n\005stats\030\001 \001(\0132\037.opi_api.storage.v1.Volu" + + "meStats\"\222\001\n\037ListNvmeRemoteNamespacesRequ" + + "est\022>\n\006parent\030\001 \001(\tB.\340A\002\372A(\022&opi_api.sto" + + "rage.v1/NvmeRemoteNamespace\022\026\n\tpage_size" + + "\030\002 \001(\005B\003\340A\001\022\027\n\npage_token\030\003 \001(\tB\003\340A\001\"\204\001\n" + + " ListNvmeRemoteNamespacesResponse\022G\n\026nvm" + + "e_remote_namespaces\030\001 \003(\0132\'.opi_api.stor" + + "age.v1.NvmeRemoteNamespace\022\027\n\017next_page_" + + "token\030\002 \001(\t\"]\n\035GetNvmeRemoteNamespaceReq" + + "uest\022<\n\004name\030\001 \001(\tB.\340A\002\372A(\n&opi_api.stor" + + "age.v1/NvmeRemoteNamespace\"h\n\025CreateNvme" + + "PathRequest\0224\n\tnvme_path\030\001 \001(\0132\034.opi_api" + + ".storage.v1.NvmePathB\003\340A\002\022\031\n\014nvme_path_i" + + "d\030\002 \001(\tB\003\340A\001\"f\n\025DeleteNvmePathRequest\0221\n" + + "\004name\030\001 \001(\tB#\340A\002\372A\035\n\033opi_api.storage.v1/" + + "NvmePath\022\032\n\rallow_missing\030\002 \001(\010B\003\340A\001\"\237\001\n" + + "\025UpdateNvmePathRequest\0224\n\tnvme_path\030\001 \001(" + + "\0132\034.opi_api.storage.v1.NvmePathB\003\340A\002\0224\n\013" + + "update_mask\030\002 \001(\0132\032.google.protobuf.Fiel" + + "dMaskB\003\340A\001\022\032\n\rallow_missing\030\003 \001(\010B\003\340A\001\"|" + + "\n\024ListNvmePathsRequest\0223\n\006parent\030\001 \001(\tB#" + + "\340A\002\372A\035\022\033opi_api.storage.v1/NvmePath\022\026\n\tp" + + "age_size\030\002 \001(\005B\003\340A\001\022\027\n\npage_token\030\003 \001(\tB" + + "\003\340A\001\"b\n\025ListNvmePathsResponse\0220\n\nnvme_pa" + + "ths\030\001 \003(\0132\034.opi_api.storage.v1.NvmePath\022" + + "\027\n\017next_page_token\030\002 \001(\t\"G\n\022GetNvmePathR" + + "equest\0221\n\004name\030\001 \001(\tB#\340A\002\372A\035\n\033opi_api.st" + + "orage.v1/NvmePath\"I\n\024StatsNvmePathReques" + + "t\0221\n\004name\030\001 \001(\tB#\340A\002\372A\035\n\033opi_api.storage" + + ".v1/NvmePath\"G\n\025StatsNvmePathResponse\022.\n" + + "\005stats\030\001 \001(\0132\037.opi_api.storage.v1.Volume" + + "Stats*\206\001\n\rNvmeMultipath\022\036\n\032NVME_MULTIPAT" + + "H_UNSPECIFIED\020\000\022\032\n\026NVME_MULTIPATH_DISABL" + + "E\020\001\022\033\n\027NVME_MULTIPATH_FAILOVER\020\002\022\034\n\030NVME" + + "_MULTIPATH_MULTIPATH\020\0032\262\024\n\033NvmeRemoteCon" + + "trollerService\022\353\001\n\032CreateNvmeRemoteContr" + + "oller\0225.opi_api.storage.v1.CreateNvmeRem" + + "oteControllerRequest\032(.opi_api.storage.v" + + "1.NvmeRemoteController\"l\202\323\344\223\0023\"\031/v1/nvme" + + "RemoteControllers:\026nvme_remote_controlle" + + "r\332A0nvme_remote_controller,nvme_remote_c" + + "ontroller_id\022\236\001\n\032DeleteNvmeRemoteControl" + + "ler\0225.opi_api.storage.v1.DeleteNvmeRemot" + + "eControllerRequest\032\026.google.protobuf.Emp" + + "ty\"1\202\323\344\223\002$*\"/v1/{name=nvmeRemoteControll" + + "ers/*}\332A\004name\022\375\001\n\032UpdateNvmeRemoteContro" + + "ller\0225.opi_api.storage.v1.UpdateNvmeRemo" + + "teControllerRequest\032(.opi_api.storage.v1" + + ".NvmeRemoteController\"~\202\323\344\223\002S29/v1/{nvme" + + "_remote_controller.name=nvmeRemoteContro" + + "llers/*}:\026nvme_remote_controller\332A\"nvme_" + + "remote_controller,update_mask\022\262\001\n\031ListNv" + + "meRemoteControllers\0224.opi_api.storage.v1" + + ".ListNvmeRemoteControllersRequest\0325.opi_" + + "api.storage.v1.ListNvmeRemoteControllers" + + "Response\"(\202\323\344\223\002\031\022\027/v1/{parent=subsystems" + + "}\332A\006parent\022\252\001\n\027GetNvmeRemoteController\0222" + + ".opi_api.storage.v1.GetNvmeRemoteControl" + + "lerRequest\032(.opi_api.storage.v1.NvmeRemo" + + "teController\"1\202\323\344\223\002$\022\"/v1/{name=nvmeRemo" + + "teControllers/*}\332A\004name\022\245\001\n\031ResetNvmeRem" + + "oteController\0224.opi_api.storage.v1.Reset" + + "NvmeRemoteControllerRequest\032\026.google.pro" + + "tobuf.Empty\":\202\323\344\223\002-\"(/v1/{name=nvmeRemot" + + "eControllers/*}:reset:\001*\332A\004name\022\301\001\n\031Stat" + + "sNvmeRemoteController\0224.opi_api.storage." + + "v1.StatsNvmeRemoteControllerRequest\0325.op" + + "i_api.storage.v1.StatsNvmeRemoteControll" + + "erResponse\"7\202\323\344\223\002*\022(/v1/{name=nvmeRemote" + + "Controllers/*}:stats\332A\004name\022\257\001\n\030ListNvme" + + "RemoteNamespaces\0223.opi_api.storage.v1.Li" + + "stNvmeRemoteNamespacesRequest\0324.opi_api." + + "storage.v1.ListNvmeRemoteNamespacesRespo" + + "nse\"(\202\323\344\223\002\031\022\027/v1/{parent=subsystems}\332A\006p" + + "arent\022\246\001\n\026GetNvmeRemoteNamespace\0221.opi_a" + + "pi.storage.v1.GetNvmeRemoteNamespaceRequ" + + "est\032\'.opi_api.storage.v1.NvmeRemoteNames" + + "pace\"0\202\323\344\223\002#\022!/v1/{name=nvmeRemoteNamesp" + + "aces/*}\332A\004name\022\224\001\n\016CreateNvmePath\022).opi_" + + "api.storage.v1.CreateNvmePathRequest\032\034.o" + + "pi_api.storage.v1.NvmePath\"9\202\323\344\223\002\032\"\r/v1/" + + "nvmePaths:\tnvme_path\332A\026nvme_path,nvme_pa" + + "th_id\022z\n\016DeleteNvmePath\022).opi_api.storag" + + "e.v1.DeleteNvmePathRequest\032\026.google.prot" + + "obuf.Empty\"%\202\323\344\223\002\030*\026/v1/{name=nvmePaths/" + + "*}\332A\004name\022\246\001\n\016UpdateNvmePath\022).opi_api.s" + + "torage.v1.UpdateNvmePathRequest\032\034.opi_ap" + + "i.storage.v1.NvmePath\"K\202\323\344\223\002-2 /v1/{nvme" + + "_path.name=nvmePaths/*}:\tnvme_path\332A\025nvm" + + "e_path,update_mask\022\216\001\n\rListNvmePaths\022(.o" + + "pi_api.storage.v1.ListNvmePathsRequest\032)" + + ".opi_api.storage.v1.ListNvmePathsRespons" + + "e\"(\202\323\344\223\002\031\022\027/v1/{parent=subsystems}\332A\006par" + + "ent\022z\n\013GetNvmePath\022&.opi_api.storage.v1." + + "GetNvmePathRequest\032\034.opi_api.storage.v1." + + "NvmePath\"%\202\323\344\223\002\030\022\026/v1/{name=nvmePaths/*}" + + "\332A\004name\022\221\001\n\rStatsNvmePath\022(.opi_api.stor" + + "age.v1.StatsNvmePathRequest\032).opi_api.st" + + "orage.v1.StatsNvmePathResponse\"+\202\323\344\223\002\036\022\034" + + "/v1/{name=nvmePaths/*}:stats\332A\004nameB_\n\022o" + + "pi_api.storage.v1B\020BackendNvmeProtoP\001Z5g" + + "ithub.com/opiproject/opi-api/storage/v1a" + + "lpha1/gen/gob\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, @@ -335,7 +327,7 @@ public static void registerAllExtensions( internal_static_opi_api_storage_v1_NvmeRemoteController_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_opi_api_storage_v1_NvmeRemoteController_descriptor, - new java.lang.String[] { "Name", "Multipath", "IoQueuesCount", "QueueSize", "Tcp", }); + new java.lang.String[] { "Name", "Multipath", "Subnqn", "Hostnqn", "IoQueuesCount", "QueueSize", "Tcp", }); internal_static_opi_api_storage_v1_TcpController_descriptor = getDescriptor().getMessageTypes().get(1); internal_static_opi_api_storage_v1_TcpController_fieldAccessorTable = new @@ -347,135 +339,129 @@ public static void registerAllExtensions( internal_static_opi_api_storage_v1_NvmePath_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_opi_api_storage_v1_NvmePath_descriptor, - new java.lang.String[] { "Name", "ControllerNameRef", "Trtype", "Traddr", "Fabrics", }); - internal_static_opi_api_storage_v1_FabricsPath_descriptor = - getDescriptor().getMessageTypes().get(3); - internal_static_opi_api_storage_v1_FabricsPath_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( - internal_static_opi_api_storage_v1_FabricsPath_descriptor, - new java.lang.String[] { "Trsvcid", "Subnqn", "Adrfam", "SourceTraddr", "SourceTrsvcid", "Hostnqn", }); + new java.lang.String[] { "Name", "ControllerNameRef", "Trtype", "Pcie", "Fabrics", "Endpoint", }); internal_static_opi_api_storage_v1_NvmeRemoteNamespace_descriptor = - getDescriptor().getMessageTypes().get(4); + getDescriptor().getMessageTypes().get(3); internal_static_opi_api_storage_v1_NvmeRemoteNamespace_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_opi_api_storage_v1_NvmeRemoteNamespace_descriptor, new java.lang.String[] { "Name", "ControllerNameRef", "Nsid", "Nguid", "Eui64", "Uuid", }); internal_static_opi_api_storage_v1_CreateNvmeRemoteControllerRequest_descriptor = - getDescriptor().getMessageTypes().get(5); + getDescriptor().getMessageTypes().get(4); internal_static_opi_api_storage_v1_CreateNvmeRemoteControllerRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_opi_api_storage_v1_CreateNvmeRemoteControllerRequest_descriptor, new java.lang.String[] { "NvmeRemoteController", "NvmeRemoteControllerId", }); internal_static_opi_api_storage_v1_DeleteNvmeRemoteControllerRequest_descriptor = - getDescriptor().getMessageTypes().get(6); + getDescriptor().getMessageTypes().get(5); internal_static_opi_api_storage_v1_DeleteNvmeRemoteControllerRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_opi_api_storage_v1_DeleteNvmeRemoteControllerRequest_descriptor, new java.lang.String[] { "Name", "AllowMissing", }); internal_static_opi_api_storage_v1_UpdateNvmeRemoteControllerRequest_descriptor = - getDescriptor().getMessageTypes().get(7); + getDescriptor().getMessageTypes().get(6); internal_static_opi_api_storage_v1_UpdateNvmeRemoteControllerRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_opi_api_storage_v1_UpdateNvmeRemoteControllerRequest_descriptor, new java.lang.String[] { "NvmeRemoteController", "UpdateMask", "AllowMissing", }); internal_static_opi_api_storage_v1_ListNvmeRemoteControllersRequest_descriptor = - getDescriptor().getMessageTypes().get(8); + getDescriptor().getMessageTypes().get(7); internal_static_opi_api_storage_v1_ListNvmeRemoteControllersRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_opi_api_storage_v1_ListNvmeRemoteControllersRequest_descriptor, new java.lang.String[] { "Parent", "PageSize", "PageToken", }); internal_static_opi_api_storage_v1_ListNvmeRemoteControllersResponse_descriptor = - getDescriptor().getMessageTypes().get(9); + getDescriptor().getMessageTypes().get(8); internal_static_opi_api_storage_v1_ListNvmeRemoteControllersResponse_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_opi_api_storage_v1_ListNvmeRemoteControllersResponse_descriptor, new java.lang.String[] { "NvmeRemoteControllers", "NextPageToken", }); internal_static_opi_api_storage_v1_GetNvmeRemoteControllerRequest_descriptor = - getDescriptor().getMessageTypes().get(10); + getDescriptor().getMessageTypes().get(9); internal_static_opi_api_storage_v1_GetNvmeRemoteControllerRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_opi_api_storage_v1_GetNvmeRemoteControllerRequest_descriptor, new java.lang.String[] { "Name", }); internal_static_opi_api_storage_v1_ResetNvmeRemoteControllerRequest_descriptor = - getDescriptor().getMessageTypes().get(11); + getDescriptor().getMessageTypes().get(10); internal_static_opi_api_storage_v1_ResetNvmeRemoteControllerRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_opi_api_storage_v1_ResetNvmeRemoteControllerRequest_descriptor, new java.lang.String[] { "Name", }); internal_static_opi_api_storage_v1_StatsNvmeRemoteControllerRequest_descriptor = - getDescriptor().getMessageTypes().get(12); + getDescriptor().getMessageTypes().get(11); internal_static_opi_api_storage_v1_StatsNvmeRemoteControllerRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_opi_api_storage_v1_StatsNvmeRemoteControllerRequest_descriptor, new java.lang.String[] { "Name", }); internal_static_opi_api_storage_v1_StatsNvmeRemoteControllerResponse_descriptor = - getDescriptor().getMessageTypes().get(13); + getDescriptor().getMessageTypes().get(12); internal_static_opi_api_storage_v1_StatsNvmeRemoteControllerResponse_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_opi_api_storage_v1_StatsNvmeRemoteControllerResponse_descriptor, new java.lang.String[] { "Stats", }); internal_static_opi_api_storage_v1_ListNvmeRemoteNamespacesRequest_descriptor = - getDescriptor().getMessageTypes().get(14); + getDescriptor().getMessageTypes().get(13); internal_static_opi_api_storage_v1_ListNvmeRemoteNamespacesRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_opi_api_storage_v1_ListNvmeRemoteNamespacesRequest_descriptor, new java.lang.String[] { "Parent", "PageSize", "PageToken", }); internal_static_opi_api_storage_v1_ListNvmeRemoteNamespacesResponse_descriptor = - getDescriptor().getMessageTypes().get(15); + getDescriptor().getMessageTypes().get(14); internal_static_opi_api_storage_v1_ListNvmeRemoteNamespacesResponse_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_opi_api_storage_v1_ListNvmeRemoteNamespacesResponse_descriptor, new java.lang.String[] { "NvmeRemoteNamespaces", "NextPageToken", }); internal_static_opi_api_storage_v1_GetNvmeRemoteNamespaceRequest_descriptor = - getDescriptor().getMessageTypes().get(16); + getDescriptor().getMessageTypes().get(15); internal_static_opi_api_storage_v1_GetNvmeRemoteNamespaceRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_opi_api_storage_v1_GetNvmeRemoteNamespaceRequest_descriptor, new java.lang.String[] { "Name", }); internal_static_opi_api_storage_v1_CreateNvmePathRequest_descriptor = - getDescriptor().getMessageTypes().get(17); + getDescriptor().getMessageTypes().get(16); internal_static_opi_api_storage_v1_CreateNvmePathRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_opi_api_storage_v1_CreateNvmePathRequest_descriptor, new java.lang.String[] { "NvmePath", "NvmePathId", }); internal_static_opi_api_storage_v1_DeleteNvmePathRequest_descriptor = - getDescriptor().getMessageTypes().get(18); + getDescriptor().getMessageTypes().get(17); internal_static_opi_api_storage_v1_DeleteNvmePathRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_opi_api_storage_v1_DeleteNvmePathRequest_descriptor, new java.lang.String[] { "Name", "AllowMissing", }); internal_static_opi_api_storage_v1_UpdateNvmePathRequest_descriptor = - getDescriptor().getMessageTypes().get(19); + getDescriptor().getMessageTypes().get(18); internal_static_opi_api_storage_v1_UpdateNvmePathRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_opi_api_storage_v1_UpdateNvmePathRequest_descriptor, new java.lang.String[] { "NvmePath", "UpdateMask", "AllowMissing", }); internal_static_opi_api_storage_v1_ListNvmePathsRequest_descriptor = - getDescriptor().getMessageTypes().get(20); + getDescriptor().getMessageTypes().get(19); internal_static_opi_api_storage_v1_ListNvmePathsRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_opi_api_storage_v1_ListNvmePathsRequest_descriptor, new java.lang.String[] { "Parent", "PageSize", "PageToken", }); internal_static_opi_api_storage_v1_ListNvmePathsResponse_descriptor = - getDescriptor().getMessageTypes().get(21); + getDescriptor().getMessageTypes().get(20); internal_static_opi_api_storage_v1_ListNvmePathsResponse_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_opi_api_storage_v1_ListNvmePathsResponse_descriptor, new java.lang.String[] { "NvmePaths", "NextPageToken", }); internal_static_opi_api_storage_v1_GetNvmePathRequest_descriptor = - getDescriptor().getMessageTypes().get(22); + getDescriptor().getMessageTypes().get(21); internal_static_opi_api_storage_v1_GetNvmePathRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_opi_api_storage_v1_GetNvmePathRequest_descriptor, new java.lang.String[] { "Name", }); internal_static_opi_api_storage_v1_StatsNvmePathRequest_descriptor = - getDescriptor().getMessageTypes().get(23); + getDescriptor().getMessageTypes().get(22); internal_static_opi_api_storage_v1_StatsNvmePathRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_opi_api_storage_v1_StatsNvmePathRequest_descriptor, new java.lang.String[] { "Name", }); internal_static_opi_api_storage_v1_StatsNvmePathResponse_descriptor = - getDescriptor().getMessageTypes().get(24); + getDescriptor().getMessageTypes().get(23); internal_static_opi_api_storage_v1_StatsNvmePathResponse_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_opi_api_storage_v1_StatsNvmePathResponse_descriptor, diff --git a/storage/v1alpha1/gen/java/opi_api/storage/v1/FabricsEndpoint.java b/storage/v1alpha1/gen/java/opi_api/storage/v1/FabricsEndpoint.java index f87ce517..f0da2bb0 100644 --- a/storage/v1alpha1/gen/java/opi_api/storage/v1/FabricsEndpoint.java +++ b/storage/v1alpha1/gen/java/opi_api/storage/v1/FabricsEndpoint.java @@ -23,6 +23,8 @@ private FabricsEndpoint() { traddr_ = ""; trsvcid_ = ""; adrfam_ = 0; + sourceTraddr_ = ""; + sourceTrsvcid_ = ""; } @java.lang.Override @@ -73,6 +75,18 @@ private FabricsEndpoint( adrfam_ = rawValue; break; } + case 34: { + java.lang.String s = input.readStringRequireUtf8(); + + sourceTraddr_ = s; + break; + } + case 42: { + java.lang.String s = input.readStringRequireUtf8(); + + sourceTrsvcid_ = s; + break; + } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { @@ -226,6 +240,102 @@ public java.lang.String getTrsvcid() { return result == null ? opi_api.storage.v1.NvmeAddressFamily.UNRECOGNIZED : result; } + public static final int SOURCE_TRADDR_FIELD_NUMBER = 4; + private volatile java.lang.Object sourceTraddr_; + /** + *
+   * source address (e.g. IP of local NIC)
+   * not used for frontend
+   * 
+ * + * string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return The sourceTraddr. + */ + @java.lang.Override + public java.lang.String getSourceTraddr() { + java.lang.Object ref = sourceTraddr_; + 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(); + sourceTraddr_ = s; + return s; + } + } + /** + *
+   * source address (e.g. IP of local NIC)
+   * not used for frontend
+   * 
+ * + * string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return The bytes for sourceTraddr. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getSourceTraddrBytes() { + java.lang.Object ref = sourceTraddr_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + sourceTraddr_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SOURCE_TRSVCID_FIELD_NUMBER = 5; + private volatile java.lang.Object sourceTrsvcid_; + /** + *
+   * source port (e.g. Port of local NIC)
+   * not used for frontend
+   * 
+ * + * string source_trsvcid = 5 [(.google.api.field_behavior) = OPTIONAL]; + * @return The sourceTrsvcid. + */ + @java.lang.Override + public java.lang.String getSourceTrsvcid() { + java.lang.Object ref = sourceTrsvcid_; + 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(); + sourceTrsvcid_ = s; + return s; + } + } + /** + *
+   * source port (e.g. Port of local NIC)
+   * not used for frontend
+   * 
+ * + * string source_trsvcid = 5 [(.google.api.field_behavior) = OPTIONAL]; + * @return The bytes for sourceTrsvcid. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getSourceTrsvcidBytes() { + java.lang.Object ref = sourceTrsvcid_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + sourceTrsvcid_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -249,6 +359,12 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (adrfam_ != opi_api.storage.v1.NvmeAddressFamily.NVME_ADDRESS_FAMILY_UNSPECIFIED.getNumber()) { output.writeEnum(3, adrfam_); } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sourceTraddr_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 4, sourceTraddr_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sourceTrsvcid_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 5, sourceTrsvcid_); + } unknownFields.writeTo(output); } @@ -268,6 +384,12 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeEnumSize(3, adrfam_); } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sourceTraddr_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, sourceTraddr_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sourceTrsvcid_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, sourceTrsvcid_); + } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; @@ -288,6 +410,10 @@ public boolean equals(final java.lang.Object obj) { if (!getTrsvcid() .equals(other.getTrsvcid())) return false; if (adrfam_ != other.adrfam_) return false; + if (!getSourceTraddr() + .equals(other.getSourceTraddr())) return false; + if (!getSourceTrsvcid() + .equals(other.getSourceTrsvcid())) return false; if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -305,6 +431,10 @@ public int hashCode() { hash = (53 * hash) + getTrsvcid().hashCode(); hash = (37 * hash) + ADRFAM_FIELD_NUMBER; hash = (53 * hash) + adrfam_; + hash = (37 * hash) + SOURCE_TRADDR_FIELD_NUMBER; + hash = (53 * hash) + getSourceTraddr().hashCode(); + hash = (37 * hash) + SOURCE_TRSVCID_FIELD_NUMBER; + hash = (53 * hash) + getSourceTrsvcid().hashCode(); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; @@ -448,6 +578,10 @@ public Builder clear() { adrfam_ = 0; + sourceTraddr_ = ""; + + sourceTrsvcid_ = ""; + return this; } @@ -477,6 +611,8 @@ public opi_api.storage.v1.FabricsEndpoint buildPartial() { result.traddr_ = traddr_; result.trsvcid_ = trsvcid_; result.adrfam_ = adrfam_; + result.sourceTraddr_ = sourceTraddr_; + result.sourceTrsvcid_ = sourceTrsvcid_; onBuilt(); return result; } @@ -536,6 +672,14 @@ public Builder mergeFrom(opi_api.storage.v1.FabricsEndpoint other) { if (other.adrfam_ != 0) { setAdrfamValue(other.getAdrfamValue()); } + if (!other.getSourceTraddr().isEmpty()) { + sourceTraddr_ = other.sourceTraddr_; + onChanged(); + } + if (!other.getSourceTrsvcid().isEmpty()) { + sourceTrsvcid_ = other.sourceTrsvcid_; + onChanged(); + } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; @@ -830,6 +974,208 @@ public Builder clearAdrfam() { onChanged(); return this; } + + private java.lang.Object sourceTraddr_ = ""; + /** + *
+     * source address (e.g. IP of local NIC)
+     * not used for frontend
+     * 
+ * + * string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return The sourceTraddr. + */ + public java.lang.String getSourceTraddr() { + java.lang.Object ref = sourceTraddr_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sourceTraddr_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + *
+     * source address (e.g. IP of local NIC)
+     * not used for frontend
+     * 
+ * + * string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return The bytes for sourceTraddr. + */ + public com.google.protobuf.ByteString + getSourceTraddrBytes() { + java.lang.Object ref = sourceTraddr_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + sourceTraddr_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + *
+     * source address (e.g. IP of local NIC)
+     * not used for frontend
+     * 
+ * + * string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @param value The sourceTraddr to set. + * @return This builder for chaining. + */ + public Builder setSourceTraddr( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + sourceTraddr_ = value; + onChanged(); + return this; + } + /** + *
+     * source address (e.g. IP of local NIC)
+     * not used for frontend
+     * 
+ * + * string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return This builder for chaining. + */ + public Builder clearSourceTraddr() { + + sourceTraddr_ = getDefaultInstance().getSourceTraddr(); + onChanged(); + return this; + } + /** + *
+     * source address (e.g. IP of local NIC)
+     * not used for frontend
+     * 
+ * + * string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @param value The bytes for sourceTraddr to set. + * @return This builder for chaining. + */ + public Builder setSourceTraddrBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + sourceTraddr_ = value; + onChanged(); + return this; + } + + private java.lang.Object sourceTrsvcid_ = ""; + /** + *
+     * source port (e.g. Port of local NIC)
+     * not used for frontend
+     * 
+ * + * string source_trsvcid = 5 [(.google.api.field_behavior) = OPTIONAL]; + * @return The sourceTrsvcid. + */ + public java.lang.String getSourceTrsvcid() { + java.lang.Object ref = sourceTrsvcid_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + sourceTrsvcid_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + *
+     * source port (e.g. Port of local NIC)
+     * not used for frontend
+     * 
+ * + * string source_trsvcid = 5 [(.google.api.field_behavior) = OPTIONAL]; + * @return The bytes for sourceTrsvcid. + */ + public com.google.protobuf.ByteString + getSourceTrsvcidBytes() { + java.lang.Object ref = sourceTrsvcid_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + sourceTrsvcid_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + *
+     * source port (e.g. Port of local NIC)
+     * not used for frontend
+     * 
+ * + * string source_trsvcid = 5 [(.google.api.field_behavior) = OPTIONAL]; + * @param value The sourceTrsvcid to set. + * @return This builder for chaining. + */ + public Builder setSourceTrsvcid( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + sourceTrsvcid_ = value; + onChanged(); + return this; + } + /** + *
+     * source port (e.g. Port of local NIC)
+     * not used for frontend
+     * 
+ * + * string source_trsvcid = 5 [(.google.api.field_behavior) = OPTIONAL]; + * @return This builder for chaining. + */ + public Builder clearSourceTrsvcid() { + + sourceTrsvcid_ = getDefaultInstance().getSourceTrsvcid(); + onChanged(); + return this; + } + /** + *
+     * source port (e.g. Port of local NIC)
+     * not used for frontend
+     * 
+ * + * string source_trsvcid = 5 [(.google.api.field_behavior) = OPTIONAL]; + * @param value The bytes for sourceTrsvcid to set. + * @return This builder for chaining. + */ + public Builder setSourceTrsvcidBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + sourceTrsvcid_ = value; + onChanged(); + return this; + } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { diff --git a/storage/v1alpha1/gen/java/opi_api/storage/v1/FabricsEndpointOrBuilder.java b/storage/v1alpha1/gen/java/opi_api/storage/v1/FabricsEndpointOrBuilder.java index 76c19ae0..d19a3354 100644 --- a/storage/v1alpha1/gen/java/opi_api/storage/v1/FabricsEndpointOrBuilder.java +++ b/storage/v1alpha1/gen/java/opi_api/storage/v1/FabricsEndpointOrBuilder.java @@ -65,4 +65,48 @@ public interface FabricsEndpointOrBuilder extends * @return The adrfam. */ opi_api.storage.v1.NvmeAddressFamily getAdrfam(); + + /** + *
+   * source address (e.g. IP of local NIC)
+   * not used for frontend
+   * 
+ * + * string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return The sourceTraddr. + */ + java.lang.String getSourceTraddr(); + /** + *
+   * source address (e.g. IP of local NIC)
+   * not used for frontend
+   * 
+ * + * string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return The bytes for sourceTraddr. + */ + com.google.protobuf.ByteString + getSourceTraddrBytes(); + + /** + *
+   * source port (e.g. Port of local NIC)
+   * not used for frontend
+   * 
+ * + * string source_trsvcid = 5 [(.google.api.field_behavior) = OPTIONAL]; + * @return The sourceTrsvcid. + */ + java.lang.String getSourceTrsvcid(); + /** + *
+   * source port (e.g. Port of local NIC)
+   * not used for frontend
+   * 
+ * + * string source_trsvcid = 5 [(.google.api.field_behavior) = OPTIONAL]; + * @return The bytes for sourceTrsvcid. + */ + com.google.protobuf.ByteString + getSourceTrsvcidBytes(); } diff --git a/storage/v1alpha1/gen/java/opi_api/storage/v1/FabricsPath.java b/storage/v1alpha1/gen/java/opi_api/storage/v1/FabricsPath.java deleted file mode 100644 index 885c581b..00000000 --- a/storage/v1alpha1/gen/java/opi_api/storage/v1/FabricsPath.java +++ /dev/null @@ -1,1213 +0,0 @@ -// Generated by the protocol buffer compiler. DO NOT EDIT! -// source: backend_nvme.proto - -package opi_api.storage.v1; - -/** - *
- * Represents Fabrics transport path parameters
- * 
- * - * Protobuf type {@code opi_api.storage.v1.FabricsPath} - */ -public final class FabricsPath extends - com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:opi_api.storage.v1.FabricsPath) - FabricsPathOrBuilder { -private static final long serialVersionUID = 0L; - // Use FabricsPath.newBuilder() to construct. - private FabricsPath(com.google.protobuf.GeneratedMessageV3.Builder builder) { - super(builder); - } - private FabricsPath() { - subnqn_ = ""; - adrfam_ = 0; - sourceTraddr_ = ""; - hostnqn_ = ""; - } - - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new FabricsPath(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } - private FabricsPath( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - this(); - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); - } - com.google.protobuf.UnknownFieldSet.Builder unknownFields = - com.google.protobuf.UnknownFieldSet.newBuilder(); - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 8: { - - trsvcid_ = input.readInt64(); - break; - } - case 18: { - java.lang.String s = input.readStringRequireUtf8(); - - subnqn_ = s; - break; - } - case 24: { - int rawValue = input.readEnum(); - - adrfam_ = rawValue; - break; - } - case 34: { - java.lang.String s = input.readStringRequireUtf8(); - - sourceTraddr_ = s; - break; - } - case 40: { - - sourceTrsvcid_ = input.readInt64(); - break; - } - case 50: { - java.lang.String s = input.readStringRequireUtf8(); - - hostnqn_ = s; - break; - } - default: { - if (!parseUnknownField( - input, unknownFields, extensionRegistry, tag)) { - done = true; - } - break; - } - } - } - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.setUnfinishedMessage(this); - } catch (com.google.protobuf.UninitializedMessageException e) { - throw e.asInvalidProtocolBufferException().setUnfinishedMessage(this); - } catch (java.io.IOException e) { - throw new com.google.protobuf.InvalidProtocolBufferException( - e).setUnfinishedMessage(this); - } finally { - this.unknownFields = unknownFields.build(); - makeExtensionsImmutable(); - } - } - public static final com.google.protobuf.Descriptors.Descriptor - getDescriptor() { - return opi_api.storage.v1.BackendNvmeProto.internal_static_opi_api_storage_v1_FabricsPath_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return opi_api.storage.v1.BackendNvmeProto.internal_static_opi_api_storage_v1_FabricsPath_fieldAccessorTable - .ensureFieldAccessorsInitialized( - opi_api.storage.v1.FabricsPath.class, opi_api.storage.v1.FabricsPath.Builder.class); - } - - public static final int TRSVCID_FIELD_NUMBER = 1; - private long trsvcid_; - /** - *
-   * Destination service id (e.g. Port)
-   * 
- * - * int64 trsvcid = 1 [(.google.api.field_behavior) = REQUIRED]; - * @return The trsvcid. - */ - @java.lang.Override - public long getTrsvcid() { - return trsvcid_; - } - - public static final int SUBNQN_FIELD_NUMBER = 2; - private volatile java.lang.Object subnqn_; - /** - *
-   * Subsystem NQN
-   * 
- * - * string subnqn = 2 [(.google.api.field_behavior) = REQUIRED]; - * @return The subnqn. - */ - @java.lang.Override - public java.lang.String getSubnqn() { - java.lang.Object ref = subnqn_; - 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(); - subnqn_ = s; - return s; - } - } - /** - *
-   * Subsystem NQN
-   * 
- * - * string subnqn = 2 [(.google.api.field_behavior) = REQUIRED]; - * @return The bytes for subnqn. - */ - @java.lang.Override - public com.google.protobuf.ByteString - getSubnqnBytes() { - java.lang.Object ref = subnqn_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - subnqn_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - - public static final int ADRFAM_FIELD_NUMBER = 3; - private int adrfam_; - /** - *
-   * Address family
-   * 
- * - * .opi_api.storage.v1.NvmeAddressFamily adrfam = 3 [(.google.api.field_behavior) = REQUIRED]; - * @return The enum numeric value on the wire for adrfam. - */ - @java.lang.Override public int getAdrfamValue() { - return adrfam_; - } - /** - *
-   * Address family
-   * 
- * - * .opi_api.storage.v1.NvmeAddressFamily adrfam = 3 [(.google.api.field_behavior) = REQUIRED]; - * @return The adrfam. - */ - @java.lang.Override public opi_api.storage.v1.NvmeAddressFamily getAdrfam() { - @SuppressWarnings("deprecation") - opi_api.storage.v1.NvmeAddressFamily result = opi_api.storage.v1.NvmeAddressFamily.valueOf(adrfam_); - return result == null ? opi_api.storage.v1.NvmeAddressFamily.UNRECOGNIZED : result; - } - - public static final int SOURCE_TRADDR_FIELD_NUMBER = 4; - private volatile java.lang.Object sourceTraddr_; - /** - *
-   * Source address (e.g. IP of local NIC)
-   * 
- * - * string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; - * @return The sourceTraddr. - */ - @java.lang.Override - public java.lang.String getSourceTraddr() { - java.lang.Object ref = sourceTraddr_; - 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(); - sourceTraddr_ = s; - return s; - } - } - /** - *
-   * Source address (e.g. IP of local NIC)
-   * 
- * - * string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; - * @return The bytes for sourceTraddr. - */ - @java.lang.Override - public com.google.protobuf.ByteString - getSourceTraddrBytes() { - java.lang.Object ref = sourceTraddr_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - sourceTraddr_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - - public static final int SOURCE_TRSVCID_FIELD_NUMBER = 5; - private long sourceTrsvcid_; - /** - *
-   * Source port (e.g. Port of local NIC)
-   * 
- * - * int64 source_trsvcid = 5 [(.google.api.field_behavior) = OPTIONAL]; - * @return The sourceTrsvcid. - */ - @java.lang.Override - public long getSourceTrsvcid() { - return sourceTrsvcid_; - } - - public static final int HOSTNQN_FIELD_NUMBER = 6; - private volatile java.lang.Object hostnqn_; - /** - *
-   * Host NQN
-   * 
- * - * string hostnqn = 6 [(.google.api.field_behavior) = OPTIONAL]; - * @return The hostnqn. - */ - @java.lang.Override - public java.lang.String getHostnqn() { - java.lang.Object ref = hostnqn_; - 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(); - hostnqn_ = s; - return s; - } - } - /** - *
-   * Host NQN
-   * 
- * - * string hostnqn = 6 [(.google.api.field_behavior) = OPTIONAL]; - * @return The bytes for hostnqn. - */ - @java.lang.Override - public com.google.protobuf.ByteString - getHostnqnBytes() { - java.lang.Object ref = hostnqn_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - hostnqn_ = 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 (trsvcid_ != 0L) { - output.writeInt64(1, trsvcid_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(subnqn_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, subnqn_); - } - if (adrfam_ != opi_api.storage.v1.NvmeAddressFamily.NVME_ADDRESS_FAMILY_UNSPECIFIED.getNumber()) { - output.writeEnum(3, adrfam_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sourceTraddr_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 4, sourceTraddr_); - } - if (sourceTrsvcid_ != 0L) { - output.writeInt64(5, sourceTrsvcid_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(hostnqn_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 6, hostnqn_); - } - unknownFields.writeTo(output); - } - - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; - - size = 0; - if (trsvcid_ != 0L) { - size += com.google.protobuf.CodedOutputStream - .computeInt64Size(1, trsvcid_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(subnqn_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, subnqn_); - } - if (adrfam_ != opi_api.storage.v1.NvmeAddressFamily.NVME_ADDRESS_FAMILY_UNSPECIFIED.getNumber()) { - size += com.google.protobuf.CodedOutputStream - .computeEnumSize(3, adrfam_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(sourceTraddr_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, sourceTraddr_); - } - if (sourceTrsvcid_ != 0L) { - size += com.google.protobuf.CodedOutputStream - .computeInt64Size(5, sourceTrsvcid_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(hostnqn_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, hostnqn_); - } - size += unknownFields.getSerializedSize(); - memoizedSize = size; - return size; - } - - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; - } - if (!(obj instanceof opi_api.storage.v1.FabricsPath)) { - return super.equals(obj); - } - opi_api.storage.v1.FabricsPath other = (opi_api.storage.v1.FabricsPath) obj; - - if (getTrsvcid() - != other.getTrsvcid()) return false; - if (!getSubnqn() - .equals(other.getSubnqn())) return false; - if (adrfam_ != other.adrfam_) return false; - if (!getSourceTraddr() - .equals(other.getSourceTraddr())) return false; - if (getSourceTrsvcid() - != other.getSourceTrsvcid()) return false; - if (!getHostnqn() - .equals(other.getHostnqn())) return false; - if (!unknownFields.equals(other.unknownFields)) 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) + TRSVCID_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashLong( - getTrsvcid()); - hash = (37 * hash) + SUBNQN_FIELD_NUMBER; - hash = (53 * hash) + getSubnqn().hashCode(); - hash = (37 * hash) + ADRFAM_FIELD_NUMBER; - hash = (53 * hash) + adrfam_; - hash = (37 * hash) + SOURCE_TRADDR_FIELD_NUMBER; - hash = (53 * hash) + getSourceTraddr().hashCode(); - hash = (37 * hash) + SOURCE_TRSVCID_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashLong( - getSourceTrsvcid()); - hash = (37 * hash) + HOSTNQN_FIELD_NUMBER; - hash = (53 * hash) + getHostnqn().hashCode(); - hash = (29 * hash) + unknownFields.hashCode(); - memoizedHashCode = hash; - return hash; - } - - public static opi_api.storage.v1.FabricsPath parseFrom( - java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static opi_api.storage.v1.FabricsPath parseFrom( - java.nio.ByteBuffer data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static opi_api.storage.v1.FabricsPath parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static opi_api.storage.v1.FabricsPath parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static opi_api.storage.v1.FabricsPath parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - public static opi_api.storage.v1.FabricsPath parseFrom( - byte[] data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - public static opi_api.storage.v1.FabricsPath parseFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseWithIOException(PARSER, input); - } - public static opi_api.storage.v1.FabricsPath 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 opi_api.storage.v1.FabricsPath parseDelimitedFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseDelimitedWithIOException(PARSER, input); - } - public static opi_api.storage.v1.FabricsPath 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 opi_api.storage.v1.FabricsPath parseFrom( - com.google.protobuf.CodedInputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 - .parseWithIOException(PARSER, input); - } - public static opi_api.storage.v1.FabricsPath 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(opi_api.storage.v1.FabricsPath 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; - } - /** - *
-   * Represents Fabrics transport path parameters
-   * 
- * - * Protobuf type {@code opi_api.storage.v1.FabricsPath} - */ - public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements - // @@protoc_insertion_point(builder_implements:opi_api.storage.v1.FabricsPath) - opi_api.storage.v1.FabricsPathOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor - getDescriptor() { - return opi_api.storage.v1.BackendNvmeProto.internal_static_opi_api_storage_v1_FabricsPath_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return opi_api.storage.v1.BackendNvmeProto.internal_static_opi_api_storage_v1_FabricsPath_fieldAccessorTable - .ensureFieldAccessorsInitialized( - opi_api.storage.v1.FabricsPath.class, opi_api.storage.v1.FabricsPath.Builder.class); - } - - // Construct using opi_api.storage.v1.FabricsPath.newBuilder() - private Builder() { - maybeForceBuilderInitialization(); - } - - private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - super(parent); - maybeForceBuilderInitialization(); - } - private void maybeForceBuilderInitialization() { - if (com.google.protobuf.GeneratedMessageV3 - .alwaysUseFieldBuilders) { - } - } - @java.lang.Override - public Builder clear() { - super.clear(); - trsvcid_ = 0L; - - subnqn_ = ""; - - adrfam_ = 0; - - sourceTraddr_ = ""; - - sourceTrsvcid_ = 0L; - - hostnqn_ = ""; - - return this; - } - - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor - getDescriptorForType() { - return opi_api.storage.v1.BackendNvmeProto.internal_static_opi_api_storage_v1_FabricsPath_descriptor; - } - - @java.lang.Override - public opi_api.storage.v1.FabricsPath getDefaultInstanceForType() { - return opi_api.storage.v1.FabricsPath.getDefaultInstance(); - } - - @java.lang.Override - public opi_api.storage.v1.FabricsPath build() { - opi_api.storage.v1.FabricsPath result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; - } - - @java.lang.Override - public opi_api.storage.v1.FabricsPath buildPartial() { - opi_api.storage.v1.FabricsPath result = new opi_api.storage.v1.FabricsPath(this); - result.trsvcid_ = trsvcid_; - result.subnqn_ = subnqn_; - result.adrfam_ = adrfam_; - result.sourceTraddr_ = sourceTraddr_; - result.sourceTrsvcid_ = sourceTrsvcid_; - result.hostnqn_ = hostnqn_; - 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 opi_api.storage.v1.FabricsPath) { - return mergeFrom((opi_api.storage.v1.FabricsPath)other); - } else { - super.mergeFrom(other); - return this; - } - } - - public Builder mergeFrom(opi_api.storage.v1.FabricsPath other) { - if (other == opi_api.storage.v1.FabricsPath.getDefaultInstance()) return this; - if (other.getTrsvcid() != 0L) { - setTrsvcid(other.getTrsvcid()); - } - if (!other.getSubnqn().isEmpty()) { - subnqn_ = other.subnqn_; - onChanged(); - } - if (other.adrfam_ != 0) { - setAdrfamValue(other.getAdrfamValue()); - } - if (!other.getSourceTraddr().isEmpty()) { - sourceTraddr_ = other.sourceTraddr_; - onChanged(); - } - if (other.getSourceTrsvcid() != 0L) { - setSourceTrsvcid(other.getSourceTrsvcid()); - } - if (!other.getHostnqn().isEmpty()) { - hostnqn_ = other.hostnqn_; - onChanged(); - } - this.mergeUnknownFields(other.unknownFields); - 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 { - opi_api.storage.v1.FabricsPath parsedMessage = null; - try { - parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - parsedMessage = (opi_api.storage.v1.FabricsPath) e.getUnfinishedMessage(); - throw e.unwrapIOException(); - } finally { - if (parsedMessage != null) { - mergeFrom(parsedMessage); - } - } - return this; - } - - private long trsvcid_ ; - /** - *
-     * Destination service id (e.g. Port)
-     * 
- * - * int64 trsvcid = 1 [(.google.api.field_behavior) = REQUIRED]; - * @return The trsvcid. - */ - @java.lang.Override - public long getTrsvcid() { - return trsvcid_; - } - /** - *
-     * Destination service id (e.g. Port)
-     * 
- * - * int64 trsvcid = 1 [(.google.api.field_behavior) = REQUIRED]; - * @param value The trsvcid to set. - * @return This builder for chaining. - */ - public Builder setTrsvcid(long value) { - - trsvcid_ = value; - onChanged(); - return this; - } - /** - *
-     * Destination service id (e.g. Port)
-     * 
- * - * int64 trsvcid = 1 [(.google.api.field_behavior) = REQUIRED]; - * @return This builder for chaining. - */ - public Builder clearTrsvcid() { - - trsvcid_ = 0L; - onChanged(); - return this; - } - - private java.lang.Object subnqn_ = ""; - /** - *
-     * Subsystem NQN
-     * 
- * - * string subnqn = 2 [(.google.api.field_behavior) = REQUIRED]; - * @return The subnqn. - */ - public java.lang.String getSubnqn() { - java.lang.Object ref = subnqn_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - subnqn_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - /** - *
-     * Subsystem NQN
-     * 
- * - * string subnqn = 2 [(.google.api.field_behavior) = REQUIRED]; - * @return The bytes for subnqn. - */ - public com.google.protobuf.ByteString - getSubnqnBytes() { - java.lang.Object ref = subnqn_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - subnqn_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - /** - *
-     * Subsystem NQN
-     * 
- * - * string subnqn = 2 [(.google.api.field_behavior) = REQUIRED]; - * @param value The subnqn to set. - * @return This builder for chaining. - */ - public Builder setSubnqn( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - subnqn_ = value; - onChanged(); - return this; - } - /** - *
-     * Subsystem NQN
-     * 
- * - * string subnqn = 2 [(.google.api.field_behavior) = REQUIRED]; - * @return This builder for chaining. - */ - public Builder clearSubnqn() { - - subnqn_ = getDefaultInstance().getSubnqn(); - onChanged(); - return this; - } - /** - *
-     * Subsystem NQN
-     * 
- * - * string subnqn = 2 [(.google.api.field_behavior) = REQUIRED]; - * @param value The bytes for subnqn to set. - * @return This builder for chaining. - */ - public Builder setSubnqnBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - subnqn_ = value; - onChanged(); - return this; - } - - private int adrfam_ = 0; - /** - *
-     * Address family
-     * 
- * - * .opi_api.storage.v1.NvmeAddressFamily adrfam = 3 [(.google.api.field_behavior) = REQUIRED]; - * @return The enum numeric value on the wire for adrfam. - */ - @java.lang.Override public int getAdrfamValue() { - return adrfam_; - } - /** - *
-     * Address family
-     * 
- * - * .opi_api.storage.v1.NvmeAddressFamily adrfam = 3 [(.google.api.field_behavior) = REQUIRED]; - * @param value The enum numeric value on the wire for adrfam to set. - * @return This builder for chaining. - */ - public Builder setAdrfamValue(int value) { - - adrfam_ = value; - onChanged(); - return this; - } - /** - *
-     * Address family
-     * 
- * - * .opi_api.storage.v1.NvmeAddressFamily adrfam = 3 [(.google.api.field_behavior) = REQUIRED]; - * @return The adrfam. - */ - @java.lang.Override - public opi_api.storage.v1.NvmeAddressFamily getAdrfam() { - @SuppressWarnings("deprecation") - opi_api.storage.v1.NvmeAddressFamily result = opi_api.storage.v1.NvmeAddressFamily.valueOf(adrfam_); - return result == null ? opi_api.storage.v1.NvmeAddressFamily.UNRECOGNIZED : result; - } - /** - *
-     * Address family
-     * 
- * - * .opi_api.storage.v1.NvmeAddressFamily adrfam = 3 [(.google.api.field_behavior) = REQUIRED]; - * @param value The adrfam to set. - * @return This builder for chaining. - */ - public Builder setAdrfam(opi_api.storage.v1.NvmeAddressFamily value) { - if (value == null) { - throw new NullPointerException(); - } - - adrfam_ = value.getNumber(); - onChanged(); - return this; - } - /** - *
-     * Address family
-     * 
- * - * .opi_api.storage.v1.NvmeAddressFamily adrfam = 3 [(.google.api.field_behavior) = REQUIRED]; - * @return This builder for chaining. - */ - public Builder clearAdrfam() { - - adrfam_ = 0; - onChanged(); - return this; - } - - private java.lang.Object sourceTraddr_ = ""; - /** - *
-     * Source address (e.g. IP of local NIC)
-     * 
- * - * string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; - * @return The sourceTraddr. - */ - public java.lang.String getSourceTraddr() { - java.lang.Object ref = sourceTraddr_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - sourceTraddr_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - /** - *
-     * Source address (e.g. IP of local NIC)
-     * 
- * - * string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; - * @return The bytes for sourceTraddr. - */ - public com.google.protobuf.ByteString - getSourceTraddrBytes() { - java.lang.Object ref = sourceTraddr_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - sourceTraddr_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - /** - *
-     * Source address (e.g. IP of local NIC)
-     * 
- * - * string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; - * @param value The sourceTraddr to set. - * @return This builder for chaining. - */ - public Builder setSourceTraddr( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - sourceTraddr_ = value; - onChanged(); - return this; - } - /** - *
-     * Source address (e.g. IP of local NIC)
-     * 
- * - * string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; - * @return This builder for chaining. - */ - public Builder clearSourceTraddr() { - - sourceTraddr_ = getDefaultInstance().getSourceTraddr(); - onChanged(); - return this; - } - /** - *
-     * Source address (e.g. IP of local NIC)
-     * 
- * - * string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; - * @param value The bytes for sourceTraddr to set. - * @return This builder for chaining. - */ - public Builder setSourceTraddrBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - sourceTraddr_ = value; - onChanged(); - return this; - } - - private long sourceTrsvcid_ ; - /** - *
-     * Source port (e.g. Port of local NIC)
-     * 
- * - * int64 source_trsvcid = 5 [(.google.api.field_behavior) = OPTIONAL]; - * @return The sourceTrsvcid. - */ - @java.lang.Override - public long getSourceTrsvcid() { - return sourceTrsvcid_; - } - /** - *
-     * Source port (e.g. Port of local NIC)
-     * 
- * - * int64 source_trsvcid = 5 [(.google.api.field_behavior) = OPTIONAL]; - * @param value The sourceTrsvcid to set. - * @return This builder for chaining. - */ - public Builder setSourceTrsvcid(long value) { - - sourceTrsvcid_ = value; - onChanged(); - return this; - } - /** - *
-     * Source port (e.g. Port of local NIC)
-     * 
- * - * int64 source_trsvcid = 5 [(.google.api.field_behavior) = OPTIONAL]; - * @return This builder for chaining. - */ - public Builder clearSourceTrsvcid() { - - sourceTrsvcid_ = 0L; - onChanged(); - return this; - } - - private java.lang.Object hostnqn_ = ""; - /** - *
-     * Host NQN
-     * 
- * - * string hostnqn = 6 [(.google.api.field_behavior) = OPTIONAL]; - * @return The hostnqn. - */ - public java.lang.String getHostnqn() { - java.lang.Object ref = hostnqn_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - hostnqn_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - /** - *
-     * Host NQN
-     * 
- * - * string hostnqn = 6 [(.google.api.field_behavior) = OPTIONAL]; - * @return The bytes for hostnqn. - */ - public com.google.protobuf.ByteString - getHostnqnBytes() { - java.lang.Object ref = hostnqn_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - hostnqn_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - /** - *
-     * Host NQN
-     * 
- * - * string hostnqn = 6 [(.google.api.field_behavior) = OPTIONAL]; - * @param value The hostnqn to set. - * @return This builder for chaining. - */ - public Builder setHostnqn( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - hostnqn_ = value; - onChanged(); - return this; - } - /** - *
-     * Host NQN
-     * 
- * - * string hostnqn = 6 [(.google.api.field_behavior) = OPTIONAL]; - * @return This builder for chaining. - */ - public Builder clearHostnqn() { - - hostnqn_ = getDefaultInstance().getHostnqn(); - onChanged(); - return this; - } - /** - *
-     * Host NQN
-     * 
- * - * string hostnqn = 6 [(.google.api.field_behavior) = OPTIONAL]; - * @param value The bytes for hostnqn to set. - * @return This builder for chaining. - */ - public Builder setHostnqnBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - hostnqn_ = value; - 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:opi_api.storage.v1.FabricsPath) - } - - // @@protoc_insertion_point(class_scope:opi_api.storage.v1.FabricsPath) - private static final opi_api.storage.v1.FabricsPath DEFAULT_INSTANCE; - static { - DEFAULT_INSTANCE = new opi_api.storage.v1.FabricsPath(); - } - - public static opi_api.storage.v1.FabricsPath getDefaultInstance() { - return DEFAULT_INSTANCE; - } - - private static final com.google.protobuf.Parser - PARSER = new com.google.protobuf.AbstractParser() { - @java.lang.Override - public FabricsPath parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return new FabricsPath(input, extensionRegistry); - } - }; - - public static com.google.protobuf.Parser parser() { - return PARSER; - } - - @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; - } - - @java.lang.Override - public opi_api.storage.v1.FabricsPath getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - -} - diff --git a/storage/v1alpha1/gen/java/opi_api/storage/v1/FabricsPathOrBuilder.java b/storage/v1alpha1/gen/java/opi_api/storage/v1/FabricsPathOrBuilder.java deleted file mode 100644 index b5c0de0f..00000000 --- a/storage/v1alpha1/gen/java/opi_api/storage/v1/FabricsPathOrBuilder.java +++ /dev/null @@ -1,108 +0,0 @@ -// Generated by the protocol buffer compiler. DO NOT EDIT! -// source: backend_nvme.proto - -package opi_api.storage.v1; - -public interface FabricsPathOrBuilder extends - // @@protoc_insertion_point(interface_extends:opi_api.storage.v1.FabricsPath) - com.google.protobuf.MessageOrBuilder { - - /** - *
-   * Destination service id (e.g. Port)
-   * 
- * - * int64 trsvcid = 1 [(.google.api.field_behavior) = REQUIRED]; - * @return The trsvcid. - */ - long getTrsvcid(); - - /** - *
-   * Subsystem NQN
-   * 
- * - * string subnqn = 2 [(.google.api.field_behavior) = REQUIRED]; - * @return The subnqn. - */ - java.lang.String getSubnqn(); - /** - *
-   * Subsystem NQN
-   * 
- * - * string subnqn = 2 [(.google.api.field_behavior) = REQUIRED]; - * @return The bytes for subnqn. - */ - com.google.protobuf.ByteString - getSubnqnBytes(); - - /** - *
-   * Address family
-   * 
- * - * .opi_api.storage.v1.NvmeAddressFamily adrfam = 3 [(.google.api.field_behavior) = REQUIRED]; - * @return The enum numeric value on the wire for adrfam. - */ - int getAdrfamValue(); - /** - *
-   * Address family
-   * 
- * - * .opi_api.storage.v1.NvmeAddressFamily adrfam = 3 [(.google.api.field_behavior) = REQUIRED]; - * @return The adrfam. - */ - opi_api.storage.v1.NvmeAddressFamily getAdrfam(); - - /** - *
-   * Source address (e.g. IP of local NIC)
-   * 
- * - * string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; - * @return The sourceTraddr. - */ - java.lang.String getSourceTraddr(); - /** - *
-   * Source address (e.g. IP of local NIC)
-   * 
- * - * string source_traddr = 4 [(.google.api.field_behavior) = OPTIONAL]; - * @return The bytes for sourceTraddr. - */ - com.google.protobuf.ByteString - getSourceTraddrBytes(); - - /** - *
-   * Source port (e.g. Port of local NIC)
-   * 
- * - * int64 source_trsvcid = 5 [(.google.api.field_behavior) = OPTIONAL]; - * @return The sourceTrsvcid. - */ - long getSourceTrsvcid(); - - /** - *
-   * Host NQN
-   * 
- * - * string hostnqn = 6 [(.google.api.field_behavior) = OPTIONAL]; - * @return The hostnqn. - */ - java.lang.String getHostnqn(); - /** - *
-   * Host NQN
-   * 
- * - * string hostnqn = 6 [(.google.api.field_behavior) = OPTIONAL]; - * @return The bytes for hostnqn. - */ - com.google.protobuf.ByteString - getHostnqnBytes(); -} diff --git a/storage/v1alpha1/gen/java/opi_api/storage/v1/NvmePath.java b/storage/v1alpha1/gen/java/opi_api/storage/v1/NvmePath.java index 75872507..383469ad 100644 --- a/storage/v1alpha1/gen/java/opi_api/storage/v1/NvmePath.java +++ b/storage/v1alpha1/gen/java/opi_api/storage/v1/NvmePath.java @@ -23,7 +23,6 @@ private NvmePath() { name_ = ""; controllerNameRef_ = ""; trtype_ = 0; - traddr_ = ""; } @java.lang.Override @@ -75,22 +74,31 @@ private NvmePath( break; } case 34: { - java.lang.String s = input.readStringRequireUtf8(); - - traddr_ = s; + opi_api.storage.v1.PciEndpoint.Builder subBuilder = null; + if (endpointCase_ == 4) { + subBuilder = ((opi_api.storage.v1.PciEndpoint) endpoint_).toBuilder(); + } + endpoint_ = + input.readMessage(opi_api.storage.v1.PciEndpoint.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom((opi_api.storage.v1.PciEndpoint) endpoint_); + endpoint_ = subBuilder.buildPartial(); + } + endpointCase_ = 4; break; } case 42: { - opi_api.storage.v1.FabricsPath.Builder subBuilder = null; - if (fabrics_ != null) { - subBuilder = fabrics_.toBuilder(); + opi_api.storage.v1.FabricsEndpoint.Builder subBuilder = null; + if (endpointCase_ == 5) { + subBuilder = ((opi_api.storage.v1.FabricsEndpoint) endpoint_).toBuilder(); } - fabrics_ = input.readMessage(opi_api.storage.v1.FabricsPath.parser(), extensionRegistry); + endpoint_ = + input.readMessage(opi_api.storage.v1.FabricsEndpoint.parser(), extensionRegistry); if (subBuilder != null) { - subBuilder.mergeFrom(fabrics_); - fabrics_ = subBuilder.buildPartial(); + subBuilder.mergeFrom((opi_api.storage.v1.FabricsEndpoint) endpoint_); + endpoint_ = subBuilder.buildPartial(); } - + endpointCase_ = 5; break; } default: { @@ -127,6 +135,47 @@ private NvmePath( opi_api.storage.v1.NvmePath.class, opi_api.storage.v1.NvmePath.Builder.class); } + private int endpointCase_ = 0; + private java.lang.Object endpoint_; + public enum EndpointCase + implements com.google.protobuf.Internal.EnumLite, + com.google.protobuf.AbstractMessage.InternalOneOfEnum { + PCIE(4), + FABRICS(5), + ENDPOINT_NOT_SET(0); + private final int value; + private EndpointCase(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 EndpointCase valueOf(int value) { + return forNumber(value); + } + + public static EndpointCase forNumber(int value) { + switch (value) { + case 4: return PCIE; + case 5: return FABRICS; + case 0: return ENDPOINT_NOT_SET; + default: return null; + } + } + public int getNumber() { + return this.value; + } + }; + + public EndpointCase + getEndpointCase() { + return EndpointCase.forNumber( + endpointCase_); + } + public static final int NAME_FIELD_NUMBER = 1; private volatile java.lang.Object name_; /** @@ -250,88 +299,90 @@ public java.lang.String getControllerNameRef() { return result == null ? opi_api.storage.v1.NvmeTransportType.UNRECOGNIZED : result; } - public static final int TRADDR_FIELD_NUMBER = 4; - private volatile java.lang.Object traddr_; + public static final int PCIE_FIELD_NUMBER = 4; /** *
-   * Destination address (e.g. IP address, BDF for local PCIe)
+   * Required for pcie transport type.
    * 
* - * string traddr = 4 [(.google.api.field_behavior) = REQUIRED]; - * @return The traddr. + * .opi_api.storage.v1.PciEndpoint pcie = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return Whether the pcie field is set. */ @java.lang.Override - public java.lang.String getTraddr() { - java.lang.Object ref = traddr_; - 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(); - traddr_ = s; - return s; + public boolean hasPcie() { + return endpointCase_ == 4; + } + /** + *
+   * Required for pcie transport type.
+   * 
+ * + * .opi_api.storage.v1.PciEndpoint pcie = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return The pcie. + */ + @java.lang.Override + public opi_api.storage.v1.PciEndpoint getPcie() { + if (endpointCase_ == 4) { + return (opi_api.storage.v1.PciEndpoint) endpoint_; } + return opi_api.storage.v1.PciEndpoint.getDefaultInstance(); } /** *
-   * Destination address (e.g. IP address, BDF for local PCIe)
+   * Required for pcie transport type.
    * 
* - * string traddr = 4 [(.google.api.field_behavior) = REQUIRED]; - * @return The bytes for traddr. + * .opi_api.storage.v1.PciEndpoint pcie = 4 [(.google.api.field_behavior) = OPTIONAL]; */ @java.lang.Override - public com.google.protobuf.ByteString - getTraddrBytes() { - java.lang.Object ref = traddr_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - traddr_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + public opi_api.storage.v1.PciEndpointOrBuilder getPcieOrBuilder() { + if (endpointCase_ == 4) { + return (opi_api.storage.v1.PciEndpoint) endpoint_; } + return opi_api.storage.v1.PciEndpoint.getDefaultInstance(); } public static final int FABRICS_FIELD_NUMBER = 5; - private opi_api.storage.v1.FabricsPath fabrics_; /** *
-   * Not applicable for local PCIe. Required for Nvme over fabrics transport types
+   * Required for Nvme over fabrics transport types
    * 
* - * .opi_api.storage.v1.FabricsPath fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.FabricsEndpoint fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; * @return Whether the fabrics field is set. */ @java.lang.Override public boolean hasFabrics() { - return fabrics_ != null; + return endpointCase_ == 5; } /** *
-   * Not applicable for local PCIe. Required for Nvme over fabrics transport types
+   * Required for Nvme over fabrics transport types
    * 
* - * .opi_api.storage.v1.FabricsPath fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.FabricsEndpoint fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; * @return The fabrics. */ @java.lang.Override - public opi_api.storage.v1.FabricsPath getFabrics() { - return fabrics_ == null ? opi_api.storage.v1.FabricsPath.getDefaultInstance() : fabrics_; + public opi_api.storage.v1.FabricsEndpoint getFabrics() { + if (endpointCase_ == 5) { + return (opi_api.storage.v1.FabricsEndpoint) endpoint_; + } + return opi_api.storage.v1.FabricsEndpoint.getDefaultInstance(); } /** *
-   * Not applicable for local PCIe. Required for Nvme over fabrics transport types
+   * Required for Nvme over fabrics transport types
    * 
* - * .opi_api.storage.v1.FabricsPath fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.FabricsEndpoint fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; */ @java.lang.Override - public opi_api.storage.v1.FabricsPathOrBuilder getFabricsOrBuilder() { - return getFabrics(); + public opi_api.storage.v1.FabricsEndpointOrBuilder getFabricsOrBuilder() { + if (endpointCase_ == 5) { + return (opi_api.storage.v1.FabricsEndpoint) endpoint_; + } + return opi_api.storage.v1.FabricsEndpoint.getDefaultInstance(); } private byte memoizedIsInitialized = -1; @@ -357,11 +408,11 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (trtype_ != opi_api.storage.v1.NvmeTransportType.NVME_TRANSPORT_TYPE_UNSPECIFIED.getNumber()) { output.writeEnum(3, trtype_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(traddr_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 4, traddr_); + if (endpointCase_ == 4) { + output.writeMessage(4, (opi_api.storage.v1.PciEndpoint) endpoint_); } - if (fabrics_ != null) { - output.writeMessage(5, getFabrics()); + if (endpointCase_ == 5) { + output.writeMessage(5, (opi_api.storage.v1.FabricsEndpoint) endpoint_); } unknownFields.writeTo(output); } @@ -382,12 +433,13 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeEnumSize(3, trtype_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(traddr_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, traddr_); + if (endpointCase_ == 4) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(4, (opi_api.storage.v1.PciEndpoint) endpoint_); } - if (fabrics_ != null) { + if (endpointCase_ == 5) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(5, getFabrics()); + .computeMessageSize(5, (opi_api.storage.v1.FabricsEndpoint) endpoint_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -409,12 +461,18 @@ public boolean equals(final java.lang.Object obj) { if (!getControllerNameRef() .equals(other.getControllerNameRef())) return false; if (trtype_ != other.trtype_) return false; - if (!getTraddr() - .equals(other.getTraddr())) return false; - if (hasFabrics() != other.hasFabrics()) return false; - if (hasFabrics()) { - if (!getFabrics() - .equals(other.getFabrics())) return false; + if (!getEndpointCase().equals(other.getEndpointCase())) return false; + switch (endpointCase_) { + case 4: + if (!getPcie() + .equals(other.getPcie())) return false; + break; + case 5: + if (!getFabrics() + .equals(other.getFabrics())) return false; + break; + case 0: + default: } if (!unknownFields.equals(other.unknownFields)) return false; return true; @@ -433,11 +491,17 @@ public int hashCode() { hash = (53 * hash) + getControllerNameRef().hashCode(); hash = (37 * hash) + TRTYPE_FIELD_NUMBER; hash = (53 * hash) + trtype_; - hash = (37 * hash) + TRADDR_FIELD_NUMBER; - hash = (53 * hash) + getTraddr().hashCode(); - if (hasFabrics()) { - hash = (37 * hash) + FABRICS_FIELD_NUMBER; - hash = (53 * hash) + getFabrics().hashCode(); + switch (endpointCase_) { + case 4: + hash = (37 * hash) + PCIE_FIELD_NUMBER; + hash = (53 * hash) + getPcie().hashCode(); + break; + case 5: + hash = (37 * hash) + FABRICS_FIELD_NUMBER; + hash = (53 * hash) + getFabrics().hashCode(); + break; + case 0: + default: } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; @@ -582,14 +646,8 @@ public Builder clear() { trtype_ = 0; - traddr_ = ""; - - if (fabricsBuilder_ == null) { - fabrics_ = null; - } else { - fabrics_ = null; - fabricsBuilder_ = null; - } + endpointCase_ = 0; + endpoint_ = null; return this; } @@ -619,12 +677,21 @@ public opi_api.storage.v1.NvmePath buildPartial() { result.name_ = name_; result.controllerNameRef_ = controllerNameRef_; result.trtype_ = trtype_; - result.traddr_ = traddr_; - if (fabricsBuilder_ == null) { - result.fabrics_ = fabrics_; - } else { - result.fabrics_ = fabricsBuilder_.build(); + if (endpointCase_ == 4) { + if (pcieBuilder_ == null) { + result.endpoint_ = endpoint_; + } else { + result.endpoint_ = pcieBuilder_.build(); + } + } + if (endpointCase_ == 5) { + if (fabricsBuilder_ == null) { + result.endpoint_ = endpoint_; + } else { + result.endpoint_ = fabricsBuilder_.build(); + } } + result.endpointCase_ = endpointCase_; onBuilt(); return result; } @@ -684,12 +751,18 @@ public Builder mergeFrom(opi_api.storage.v1.NvmePath other) { if (other.trtype_ != 0) { setTrtypeValue(other.getTrtypeValue()); } - if (!other.getTraddr().isEmpty()) { - traddr_ = other.traddr_; - onChanged(); - } - if (other.hasFabrics()) { - mergeFabrics(other.getFabrics()); + switch (other.getEndpointCase()) { + case PCIE: { + mergePcie(other.getPcie()); + break; + } + case FABRICS: { + mergeFabrics(other.getFabrics()); + break; + } + case ENDPOINT_NOT_SET: { + break; + } } this.mergeUnknownFields(other.unknownFields); onChanged(); @@ -719,6 +792,21 @@ public Builder mergeFrom( } return this; } + private int endpointCase_ = 0; + private java.lang.Object endpoint_; + public EndpointCase + getEndpointCase() { + return EndpointCase.forNumber( + endpointCase_); + } + + public Builder clearEndpoint() { + endpointCase_ = 0; + endpoint_ = null; + onChanged(); + return this; + } + private java.lang.Object name_ = ""; /** @@ -996,254 +1084,359 @@ public Builder clearTrtype() { return this; } - private java.lang.Object traddr_ = ""; + private com.google.protobuf.SingleFieldBuilderV3< + opi_api.storage.v1.PciEndpoint, opi_api.storage.v1.PciEndpoint.Builder, opi_api.storage.v1.PciEndpointOrBuilder> pcieBuilder_; /** *
-     * Destination address (e.g. IP address, BDF for local PCIe)
+     * Required for pcie transport type.
      * 
* - * string traddr = 4 [(.google.api.field_behavior) = REQUIRED]; - * @return The traddr. + * .opi_api.storage.v1.PciEndpoint pcie = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return Whether the pcie field is set. */ - public java.lang.String getTraddr() { - java.lang.Object ref = traddr_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = - (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - traddr_ = s; - return s; + @java.lang.Override + public boolean hasPcie() { + return endpointCase_ == 4; + } + /** + *
+     * Required for pcie transport type.
+     * 
+ * + * .opi_api.storage.v1.PciEndpoint pcie = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return The pcie. + */ + @java.lang.Override + public opi_api.storage.v1.PciEndpoint getPcie() { + if (pcieBuilder_ == null) { + if (endpointCase_ == 4) { + return (opi_api.storage.v1.PciEndpoint) endpoint_; + } + return opi_api.storage.v1.PciEndpoint.getDefaultInstance(); } else { - return (java.lang.String) ref; + if (endpointCase_ == 4) { + return pcieBuilder_.getMessage(); + } + return opi_api.storage.v1.PciEndpoint.getDefaultInstance(); } } /** *
-     * Destination address (e.g. IP address, BDF for local PCIe)
+     * Required for pcie transport type.
      * 
* - * string traddr = 4 [(.google.api.field_behavior) = REQUIRED]; - * @return The bytes for traddr. + * .opi_api.storage.v1.PciEndpoint pcie = 4 [(.google.api.field_behavior) = OPTIONAL]; */ - public com.google.protobuf.ByteString - getTraddrBytes() { - java.lang.Object ref = traddr_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8( - (java.lang.String) ref); - traddr_ = b; - return b; + public Builder setPcie(opi_api.storage.v1.PciEndpoint value) { + if (pcieBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + endpoint_ = value; + onChanged(); } else { - return (com.google.protobuf.ByteString) ref; + pcieBuilder_.setMessage(value); } + endpointCase_ = 4; + return this; } /** *
-     * Destination address (e.g. IP address, BDF for local PCIe)
+     * Required for pcie transport type.
      * 
* - * string traddr = 4 [(.google.api.field_behavior) = REQUIRED]; - * @param value The traddr to set. - * @return This builder for chaining. + * .opi_api.storage.v1.PciEndpoint pcie = 4 [(.google.api.field_behavior) = OPTIONAL]; */ - public Builder setTraddr( - java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - traddr_ = value; - onChanged(); + public Builder setPcie( + opi_api.storage.v1.PciEndpoint.Builder builderForValue) { + if (pcieBuilder_ == null) { + endpoint_ = builderForValue.build(); + onChanged(); + } else { + pcieBuilder_.setMessage(builderForValue.build()); + } + endpointCase_ = 4; return this; } /** *
-     * Destination address (e.g. IP address, BDF for local PCIe)
+     * Required for pcie transport type.
      * 
* - * string traddr = 4 [(.google.api.field_behavior) = REQUIRED]; - * @return This builder for chaining. + * .opi_api.storage.v1.PciEndpoint pcie = 4 [(.google.api.field_behavior) = OPTIONAL]; */ - public Builder clearTraddr() { - - traddr_ = getDefaultInstance().getTraddr(); - onChanged(); + public Builder mergePcie(opi_api.storage.v1.PciEndpoint value) { + if (pcieBuilder_ == null) { + if (endpointCase_ == 4 && + endpoint_ != opi_api.storage.v1.PciEndpoint.getDefaultInstance()) { + endpoint_ = opi_api.storage.v1.PciEndpoint.newBuilder((opi_api.storage.v1.PciEndpoint) endpoint_) + .mergeFrom(value).buildPartial(); + } else { + endpoint_ = value; + } + onChanged(); + } else { + if (endpointCase_ == 4) { + pcieBuilder_.mergeFrom(value); + } else { + pcieBuilder_.setMessage(value); + } + } + endpointCase_ = 4; return this; } /** *
-     * Destination address (e.g. IP address, BDF for local PCIe)
+     * Required for pcie transport type.
      * 
* - * string traddr = 4 [(.google.api.field_behavior) = REQUIRED]; - * @param value The bytes for traddr to set. - * @return This builder for chaining. + * .opi_api.storage.v1.PciEndpoint pcie = 4 [(.google.api.field_behavior) = OPTIONAL]; */ - public Builder setTraddrBytes( - com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - traddr_ = value; - onChanged(); + public Builder clearPcie() { + if (pcieBuilder_ == null) { + if (endpointCase_ == 4) { + endpointCase_ = 0; + endpoint_ = null; + onChanged(); + } + } else { + if (endpointCase_ == 4) { + endpointCase_ = 0; + endpoint_ = null; + } + pcieBuilder_.clear(); + } return this; } + /** + *
+     * Required for pcie transport type.
+     * 
+ * + * .opi_api.storage.v1.PciEndpoint pcie = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + public opi_api.storage.v1.PciEndpoint.Builder getPcieBuilder() { + return getPcieFieldBuilder().getBuilder(); + } + /** + *
+     * Required for pcie transport type.
+     * 
+ * + * .opi_api.storage.v1.PciEndpoint pcie = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public opi_api.storage.v1.PciEndpointOrBuilder getPcieOrBuilder() { + if ((endpointCase_ == 4) && (pcieBuilder_ != null)) { + return pcieBuilder_.getMessageOrBuilder(); + } else { + if (endpointCase_ == 4) { + return (opi_api.storage.v1.PciEndpoint) endpoint_; + } + return opi_api.storage.v1.PciEndpoint.getDefaultInstance(); + } + } + /** + *
+     * Required for pcie transport type.
+     * 
+ * + * .opi_api.storage.v1.PciEndpoint pcie = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + private com.google.protobuf.SingleFieldBuilderV3< + opi_api.storage.v1.PciEndpoint, opi_api.storage.v1.PciEndpoint.Builder, opi_api.storage.v1.PciEndpointOrBuilder> + getPcieFieldBuilder() { + if (pcieBuilder_ == null) { + if (!(endpointCase_ == 4)) { + endpoint_ = opi_api.storage.v1.PciEndpoint.getDefaultInstance(); + } + pcieBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + opi_api.storage.v1.PciEndpoint, opi_api.storage.v1.PciEndpoint.Builder, opi_api.storage.v1.PciEndpointOrBuilder>( + (opi_api.storage.v1.PciEndpoint) endpoint_, + getParentForChildren(), + isClean()); + endpoint_ = null; + } + endpointCase_ = 4; + onChanged();; + return pcieBuilder_; + } - private opi_api.storage.v1.FabricsPath fabrics_; private com.google.protobuf.SingleFieldBuilderV3< - opi_api.storage.v1.FabricsPath, opi_api.storage.v1.FabricsPath.Builder, opi_api.storage.v1.FabricsPathOrBuilder> fabricsBuilder_; + opi_api.storage.v1.FabricsEndpoint, opi_api.storage.v1.FabricsEndpoint.Builder, opi_api.storage.v1.FabricsEndpointOrBuilder> fabricsBuilder_; /** *
-     * Not applicable for local PCIe. Required for Nvme over fabrics transport types
+     * Required for Nvme over fabrics transport types
      * 
* - * .opi_api.storage.v1.FabricsPath fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.FabricsEndpoint fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; * @return Whether the fabrics field is set. */ + @java.lang.Override public boolean hasFabrics() { - return fabricsBuilder_ != null || fabrics_ != null; + return endpointCase_ == 5; } /** *
-     * Not applicable for local PCIe. Required for Nvme over fabrics transport types
+     * Required for Nvme over fabrics transport types
      * 
* - * .opi_api.storage.v1.FabricsPath fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.FabricsEndpoint fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; * @return The fabrics. */ - public opi_api.storage.v1.FabricsPath getFabrics() { + @java.lang.Override + public opi_api.storage.v1.FabricsEndpoint getFabrics() { if (fabricsBuilder_ == null) { - return fabrics_ == null ? opi_api.storage.v1.FabricsPath.getDefaultInstance() : fabrics_; + if (endpointCase_ == 5) { + return (opi_api.storage.v1.FabricsEndpoint) endpoint_; + } + return opi_api.storage.v1.FabricsEndpoint.getDefaultInstance(); } else { - return fabricsBuilder_.getMessage(); + if (endpointCase_ == 5) { + return fabricsBuilder_.getMessage(); + } + return opi_api.storage.v1.FabricsEndpoint.getDefaultInstance(); } } /** *
-     * Not applicable for local PCIe. Required for Nvme over fabrics transport types
+     * Required for Nvme over fabrics transport types
      * 
* - * .opi_api.storage.v1.FabricsPath fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.FabricsEndpoint fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; */ - public Builder setFabrics(opi_api.storage.v1.FabricsPath value) { + public Builder setFabrics(opi_api.storage.v1.FabricsEndpoint value) { if (fabricsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - fabrics_ = value; + endpoint_ = value; onChanged(); } else { fabricsBuilder_.setMessage(value); } - + endpointCase_ = 5; return this; } /** *
-     * Not applicable for local PCIe. Required for Nvme over fabrics transport types
+     * Required for Nvme over fabrics transport types
      * 
* - * .opi_api.storage.v1.FabricsPath fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.FabricsEndpoint fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; */ public Builder setFabrics( - opi_api.storage.v1.FabricsPath.Builder builderForValue) { + opi_api.storage.v1.FabricsEndpoint.Builder builderForValue) { if (fabricsBuilder_ == null) { - fabrics_ = builderForValue.build(); + endpoint_ = builderForValue.build(); onChanged(); } else { fabricsBuilder_.setMessage(builderForValue.build()); } - + endpointCase_ = 5; return this; } /** *
-     * Not applicable for local PCIe. Required for Nvme over fabrics transport types
+     * Required for Nvme over fabrics transport types
      * 
* - * .opi_api.storage.v1.FabricsPath fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.FabricsEndpoint fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; */ - public Builder mergeFabrics(opi_api.storage.v1.FabricsPath value) { + public Builder mergeFabrics(opi_api.storage.v1.FabricsEndpoint value) { if (fabricsBuilder_ == null) { - if (fabrics_ != null) { - fabrics_ = - opi_api.storage.v1.FabricsPath.newBuilder(fabrics_).mergeFrom(value).buildPartial(); + if (endpointCase_ == 5 && + endpoint_ != opi_api.storage.v1.FabricsEndpoint.getDefaultInstance()) { + endpoint_ = opi_api.storage.v1.FabricsEndpoint.newBuilder((opi_api.storage.v1.FabricsEndpoint) endpoint_) + .mergeFrom(value).buildPartial(); } else { - fabrics_ = value; + endpoint_ = value; } onChanged(); } else { - fabricsBuilder_.mergeFrom(value); + if (endpointCase_ == 5) { + fabricsBuilder_.mergeFrom(value); + } else { + fabricsBuilder_.setMessage(value); + } } - + endpointCase_ = 5; return this; } /** *
-     * Not applicable for local PCIe. Required for Nvme over fabrics transport types
+     * Required for Nvme over fabrics transport types
      * 
* - * .opi_api.storage.v1.FabricsPath fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.FabricsEndpoint fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; */ public Builder clearFabrics() { if (fabricsBuilder_ == null) { - fabrics_ = null; - onChanged(); + if (endpointCase_ == 5) { + endpointCase_ = 0; + endpoint_ = null; + onChanged(); + } } else { - fabrics_ = null; - fabricsBuilder_ = null; + if (endpointCase_ == 5) { + endpointCase_ = 0; + endpoint_ = null; + } + fabricsBuilder_.clear(); } - return this; } /** *
-     * Not applicable for local PCIe. Required for Nvme over fabrics transport types
+     * Required for Nvme over fabrics transport types
      * 
* - * .opi_api.storage.v1.FabricsPath fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.FabricsEndpoint fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; */ - public opi_api.storage.v1.FabricsPath.Builder getFabricsBuilder() { - - onChanged(); + public opi_api.storage.v1.FabricsEndpoint.Builder getFabricsBuilder() { return getFabricsFieldBuilder().getBuilder(); } /** *
-     * Not applicable for local PCIe. Required for Nvme over fabrics transport types
+     * Required for Nvme over fabrics transport types
      * 
* - * .opi_api.storage.v1.FabricsPath fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.FabricsEndpoint fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; */ - public opi_api.storage.v1.FabricsPathOrBuilder getFabricsOrBuilder() { - if (fabricsBuilder_ != null) { + @java.lang.Override + public opi_api.storage.v1.FabricsEndpointOrBuilder getFabricsOrBuilder() { + if ((endpointCase_ == 5) && (fabricsBuilder_ != null)) { return fabricsBuilder_.getMessageOrBuilder(); } else { - return fabrics_ == null ? - opi_api.storage.v1.FabricsPath.getDefaultInstance() : fabrics_; + if (endpointCase_ == 5) { + return (opi_api.storage.v1.FabricsEndpoint) endpoint_; + } + return opi_api.storage.v1.FabricsEndpoint.getDefaultInstance(); } } /** *
-     * Not applicable for local PCIe. Required for Nvme over fabrics transport types
+     * Required for Nvme over fabrics transport types
      * 
* - * .opi_api.storage.v1.FabricsPath fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.FabricsEndpoint fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; */ private com.google.protobuf.SingleFieldBuilderV3< - opi_api.storage.v1.FabricsPath, opi_api.storage.v1.FabricsPath.Builder, opi_api.storage.v1.FabricsPathOrBuilder> + opi_api.storage.v1.FabricsEndpoint, opi_api.storage.v1.FabricsEndpoint.Builder, opi_api.storage.v1.FabricsEndpointOrBuilder> getFabricsFieldBuilder() { if (fabricsBuilder_ == null) { + if (!(endpointCase_ == 5)) { + endpoint_ = opi_api.storage.v1.FabricsEndpoint.getDefaultInstance(); + } fabricsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< - opi_api.storage.v1.FabricsPath, opi_api.storage.v1.FabricsPath.Builder, opi_api.storage.v1.FabricsPathOrBuilder>( - getFabrics(), + opi_api.storage.v1.FabricsEndpoint, opi_api.storage.v1.FabricsEndpoint.Builder, opi_api.storage.v1.FabricsEndpointOrBuilder>( + (opi_api.storage.v1.FabricsEndpoint) endpoint_, getParentForChildren(), isClean()); - fabrics_ = null; + endpoint_ = null; } + endpointCase_ = 5; + onChanged();; return fabricsBuilder_; } @java.lang.Override diff --git a/storage/v1alpha1/gen/java/opi_api/storage/v1/NvmePathOrBuilder.java b/storage/v1alpha1/gen/java/opi_api/storage/v1/NvmePathOrBuilder.java index 08d5b62a..d2f350ff 100644 --- a/storage/v1alpha1/gen/java/opi_api/storage/v1/NvmePathOrBuilder.java +++ b/storage/v1alpha1/gen/java/opi_api/storage/v1/NvmePathOrBuilder.java @@ -72,48 +72,57 @@ public interface NvmePathOrBuilder extends /** *
-   * Destination address (e.g. IP address, BDF for local PCIe)
+   * Required for pcie transport type.
    * 
* - * string traddr = 4 [(.google.api.field_behavior) = REQUIRED]; - * @return The traddr. + * .opi_api.storage.v1.PciEndpoint pcie = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return Whether the pcie field is set. */ - java.lang.String getTraddr(); + boolean hasPcie(); /** *
-   * Destination address (e.g. IP address, BDF for local PCIe)
+   * Required for pcie transport type.
    * 
* - * string traddr = 4 [(.google.api.field_behavior) = REQUIRED]; - * @return The bytes for traddr. + * .opi_api.storage.v1.PciEndpoint pcie = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return The pcie. */ - com.google.protobuf.ByteString - getTraddrBytes(); + opi_api.storage.v1.PciEndpoint getPcie(); + /** + *
+   * Required for pcie transport type.
+   * 
+ * + * .opi_api.storage.v1.PciEndpoint pcie = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + opi_api.storage.v1.PciEndpointOrBuilder getPcieOrBuilder(); /** *
-   * Not applicable for local PCIe. Required for Nvme over fabrics transport types
+   * Required for Nvme over fabrics transport types
    * 
* - * .opi_api.storage.v1.FabricsPath fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.FabricsEndpoint fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; * @return Whether the fabrics field is set. */ boolean hasFabrics(); /** *
-   * Not applicable for local PCIe. Required for Nvme over fabrics transport types
+   * Required for Nvme over fabrics transport types
    * 
* - * .opi_api.storage.v1.FabricsPath fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.FabricsEndpoint fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; * @return The fabrics. */ - opi_api.storage.v1.FabricsPath getFabrics(); + opi_api.storage.v1.FabricsEndpoint getFabrics(); /** *
-   * Not applicable for local PCIe. Required for Nvme over fabrics transport types
+   * Required for Nvme over fabrics transport types
    * 
* - * .opi_api.storage.v1.FabricsPath fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.FabricsEndpoint fabrics = 5 [(.google.api.field_behavior) = OPTIONAL]; */ - opi_api.storage.v1.FabricsPathOrBuilder getFabricsOrBuilder(); + opi_api.storage.v1.FabricsEndpointOrBuilder getFabricsOrBuilder(); + + public opi_api.storage.v1.NvmePath.EndpointCase getEndpointCase(); } diff --git a/storage/v1alpha1/gen/java/opi_api/storage/v1/NvmeRemoteController.java b/storage/v1alpha1/gen/java/opi_api/storage/v1/NvmeRemoteController.java index fbe79882..33f7f18f 100644 --- a/storage/v1alpha1/gen/java/opi_api/storage/v1/NvmeRemoteController.java +++ b/storage/v1alpha1/gen/java/opi_api/storage/v1/NvmeRemoteController.java @@ -22,6 +22,8 @@ private NvmeRemoteController(com.google.protobuf.GeneratedMessageV3.Builder b private NvmeRemoteController() { name_ = ""; multipath_ = 0; + subnqn_ = ""; + hostnqn_ = ""; } @java.lang.Override @@ -66,17 +68,29 @@ private NvmeRemoteController( multipath_ = rawValue; break; } - case 24: { + case 26: { + java.lang.String s = input.readStringRequireUtf8(); + + subnqn_ = s; + break; + } + case 34: { + java.lang.String s = input.readStringRequireUtf8(); + + hostnqn_ = s; + break; + } + case 40: { ioQueuesCount_ = input.readInt64(); break; } - case 32: { + case 48: { queueSize_ = input.readInt64(); break; } - case 42: { + case 58: { opi_api.storage.v1.TcpController.Builder subBuilder = null; if (tcp_ != null) { subBuilder = tcp_.toBuilder(); @@ -200,14 +214,106 @@ public java.lang.String getName() { return result == null ? opi_api.storage.v1.NvmeMultipath.UNRECOGNIZED : result; } - public static final int IO_QUEUES_COUNT_FIELD_NUMBER = 3; + public static final int SUBNQN_FIELD_NUMBER = 3; + private volatile java.lang.Object subnqn_; + /** + *
+   * Subsystem NQN
+   * 
+ * + * string subnqn = 3 [(.google.api.field_behavior) = OPTIONAL]; + * @return The subnqn. + */ + @java.lang.Override + public java.lang.String getSubnqn() { + java.lang.Object ref = subnqn_; + 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(); + subnqn_ = s; + return s; + } + } + /** + *
+   * Subsystem NQN
+   * 
+ * + * string subnqn = 3 [(.google.api.field_behavior) = OPTIONAL]; + * @return The bytes for subnqn. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getSubnqnBytes() { + java.lang.Object ref = subnqn_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + subnqn_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int HOSTNQN_FIELD_NUMBER = 4; + private volatile java.lang.Object hostnqn_; + /** + *
+   * Host NQN
+   * 
+ * + * string hostnqn = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return The hostnqn. + */ + @java.lang.Override + public java.lang.String getHostnqn() { + java.lang.Object ref = hostnqn_; + 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(); + hostnqn_ = s; + return s; + } + } + /** + *
+   * Host NQN
+   * 
+ * + * string hostnqn = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return The bytes for hostnqn. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getHostnqnBytes() { + java.lang.Object ref = hostnqn_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + hostnqn_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int IO_QUEUES_COUNT_FIELD_NUMBER = 5; private long ioQueuesCount_; /** *
    * IO queues count
    * 
* - * int64 io_queues_count = 3 [(.google.api.field_behavior) = OPTIONAL]; + * int64 io_queues_count = 5 [(.google.api.field_behavior) = OPTIONAL]; * @return The ioQueuesCount. */ @java.lang.Override @@ -215,14 +321,14 @@ public long getIoQueuesCount() { return ioQueuesCount_; } - public static final int QUEUE_SIZE_FIELD_NUMBER = 4; + public static final int QUEUE_SIZE_FIELD_NUMBER = 6; private long queueSize_; /** *
    * Queue size
    * 
* - * int64 queue_size = 4 [(.google.api.field_behavior) = OPTIONAL]; + * int64 queue_size = 6 [(.google.api.field_behavior) = OPTIONAL]; * @return The queueSize. */ @java.lang.Override @@ -230,14 +336,14 @@ public long getQueueSize() { return queueSize_; } - public static final int TCP_FIELD_NUMBER = 5; + public static final int TCP_FIELD_NUMBER = 7; private opi_api.storage.v1.TcpController tcp_; /** *
    * Nvme over TCP specific fields
    * 
* - * .opi_api.storage.v1.TcpController tcp = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.TcpController tcp = 7 [(.google.api.field_behavior) = OPTIONAL]; * @return Whether the tcp field is set. */ @java.lang.Override @@ -249,7 +355,7 @@ public boolean hasTcp() { * Nvme over TCP specific fields * * - * .opi_api.storage.v1.TcpController tcp = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.TcpController tcp = 7 [(.google.api.field_behavior) = OPTIONAL]; * @return The tcp. */ @java.lang.Override @@ -261,7 +367,7 @@ public opi_api.storage.v1.TcpController getTcp() { * Nvme over TCP specific fields * * - * .opi_api.storage.v1.TcpController tcp = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.TcpController tcp = 7 [(.google.api.field_behavior) = OPTIONAL]; */ @java.lang.Override public opi_api.storage.v1.TcpControllerOrBuilder getTcpOrBuilder() { @@ -288,14 +394,20 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (multipath_ != opi_api.storage.v1.NvmeMultipath.NVME_MULTIPATH_UNSPECIFIED.getNumber()) { output.writeEnum(2, multipath_); } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(subnqn_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, subnqn_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(hostnqn_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 4, hostnqn_); + } if (ioQueuesCount_ != 0L) { - output.writeInt64(3, ioQueuesCount_); + output.writeInt64(5, ioQueuesCount_); } if (queueSize_ != 0L) { - output.writeInt64(4, queueSize_); + output.writeInt64(6, queueSize_); } if (tcp_ != null) { - output.writeMessage(5, getTcp()); + output.writeMessage(7, getTcp()); } unknownFields.writeTo(output); } @@ -313,17 +425,23 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeEnumSize(2, multipath_); } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(subnqn_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, subnqn_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(hostnqn_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, hostnqn_); + } if (ioQueuesCount_ != 0L) { size += com.google.protobuf.CodedOutputStream - .computeInt64Size(3, ioQueuesCount_); + .computeInt64Size(5, ioQueuesCount_); } if (queueSize_ != 0L) { size += com.google.protobuf.CodedOutputStream - .computeInt64Size(4, queueSize_); + .computeInt64Size(6, queueSize_); } if (tcp_ != null) { size += com.google.protobuf.CodedOutputStream - .computeMessageSize(5, getTcp()); + .computeMessageSize(7, getTcp()); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -343,6 +461,10 @@ public boolean equals(final java.lang.Object obj) { if (!getName() .equals(other.getName())) return false; if (multipath_ != other.multipath_) return false; + if (!getSubnqn() + .equals(other.getSubnqn())) return false; + if (!getHostnqn() + .equals(other.getHostnqn())) return false; if (getIoQueuesCount() != other.getIoQueuesCount()) return false; if (getQueueSize() @@ -367,6 +489,10 @@ public int hashCode() { hash = (53 * hash) + getName().hashCode(); hash = (37 * hash) + MULTIPATH_FIELD_NUMBER; hash = (53 * hash) + multipath_; + hash = (37 * hash) + SUBNQN_FIELD_NUMBER; + hash = (53 * hash) + getSubnqn().hashCode(); + hash = (37 * hash) + HOSTNQN_FIELD_NUMBER; + hash = (53 * hash) + getHostnqn().hashCode(); hash = (37 * hash) + IO_QUEUES_COUNT_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashLong( getIoQueuesCount()); @@ -518,6 +644,10 @@ public Builder clear() { multipath_ = 0; + subnqn_ = ""; + + hostnqn_ = ""; + ioQueuesCount_ = 0L; queueSize_ = 0L; @@ -556,6 +686,8 @@ public opi_api.storage.v1.NvmeRemoteController buildPartial() { opi_api.storage.v1.NvmeRemoteController result = new opi_api.storage.v1.NvmeRemoteController(this); result.name_ = name_; result.multipath_ = multipath_; + result.subnqn_ = subnqn_; + result.hostnqn_ = hostnqn_; result.ioQueuesCount_ = ioQueuesCount_; result.queueSize_ = queueSize_; if (tcpBuilder_ == null) { @@ -618,6 +750,14 @@ public Builder mergeFrom(opi_api.storage.v1.NvmeRemoteController other) { if (other.multipath_ != 0) { setMultipathValue(other.getMultipathValue()); } + if (!other.getSubnqn().isEmpty()) { + subnqn_ = other.subnqn_; + onChanged(); + } + if (!other.getHostnqn().isEmpty()) { + hostnqn_ = other.hostnqn_; + onChanged(); + } if (other.getIoQueuesCount() != 0L) { setIoQueuesCount(other.getIoQueuesCount()); } @@ -836,13 +976,205 @@ public Builder clearMultipath() { return this; } + private java.lang.Object subnqn_ = ""; + /** + *
+     * Subsystem NQN
+     * 
+ * + * string subnqn = 3 [(.google.api.field_behavior) = OPTIONAL]; + * @return The subnqn. + */ + public java.lang.String getSubnqn() { + java.lang.Object ref = subnqn_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + subnqn_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + *
+     * Subsystem NQN
+     * 
+ * + * string subnqn = 3 [(.google.api.field_behavior) = OPTIONAL]; + * @return The bytes for subnqn. + */ + public com.google.protobuf.ByteString + getSubnqnBytes() { + java.lang.Object ref = subnqn_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + subnqn_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + *
+     * Subsystem NQN
+     * 
+ * + * string subnqn = 3 [(.google.api.field_behavior) = OPTIONAL]; + * @param value The subnqn to set. + * @return This builder for chaining. + */ + public Builder setSubnqn( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + subnqn_ = value; + onChanged(); + return this; + } + /** + *
+     * Subsystem NQN
+     * 
+ * + * string subnqn = 3 [(.google.api.field_behavior) = OPTIONAL]; + * @return This builder for chaining. + */ + public Builder clearSubnqn() { + + subnqn_ = getDefaultInstance().getSubnqn(); + onChanged(); + return this; + } + /** + *
+     * Subsystem NQN
+     * 
+ * + * string subnqn = 3 [(.google.api.field_behavior) = OPTIONAL]; + * @param value The bytes for subnqn to set. + * @return This builder for chaining. + */ + public Builder setSubnqnBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + subnqn_ = value; + onChanged(); + return this; + } + + private java.lang.Object hostnqn_ = ""; + /** + *
+     * Host NQN
+     * 
+ * + * string hostnqn = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return The hostnqn. + */ + public java.lang.String getHostnqn() { + java.lang.Object ref = hostnqn_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + hostnqn_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + *
+     * Host NQN
+     * 
+ * + * string hostnqn = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return The bytes for hostnqn. + */ + public com.google.protobuf.ByteString + getHostnqnBytes() { + java.lang.Object ref = hostnqn_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + hostnqn_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + *
+     * Host NQN
+     * 
+ * + * string hostnqn = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @param value The hostnqn to set. + * @return This builder for chaining. + */ + public Builder setHostnqn( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + hostnqn_ = value; + onChanged(); + return this; + } + /** + *
+     * Host NQN
+     * 
+ * + * string hostnqn = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return This builder for chaining. + */ + public Builder clearHostnqn() { + + hostnqn_ = getDefaultInstance().getHostnqn(); + onChanged(); + return this; + } + /** + *
+     * Host NQN
+     * 
+ * + * string hostnqn = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @param value The bytes for hostnqn to set. + * @return This builder for chaining. + */ + public Builder setHostnqnBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + hostnqn_ = value; + onChanged(); + return this; + } + private long ioQueuesCount_ ; /** *
      * IO queues count
      * 
* - * int64 io_queues_count = 3 [(.google.api.field_behavior) = OPTIONAL]; + * int64 io_queues_count = 5 [(.google.api.field_behavior) = OPTIONAL]; * @return The ioQueuesCount. */ @java.lang.Override @@ -854,7 +1186,7 @@ public long getIoQueuesCount() { * IO queues count * * - * int64 io_queues_count = 3 [(.google.api.field_behavior) = OPTIONAL]; + * int64 io_queues_count = 5 [(.google.api.field_behavior) = OPTIONAL]; * @param value The ioQueuesCount to set. * @return This builder for chaining. */ @@ -869,7 +1201,7 @@ public Builder setIoQueuesCount(long value) { * IO queues count * * - * int64 io_queues_count = 3 [(.google.api.field_behavior) = OPTIONAL]; + * int64 io_queues_count = 5 [(.google.api.field_behavior) = OPTIONAL]; * @return This builder for chaining. */ public Builder clearIoQueuesCount() { @@ -885,7 +1217,7 @@ public Builder clearIoQueuesCount() { * Queue size * * - * int64 queue_size = 4 [(.google.api.field_behavior) = OPTIONAL]; + * int64 queue_size = 6 [(.google.api.field_behavior) = OPTIONAL]; * @return The queueSize. */ @java.lang.Override @@ -897,7 +1229,7 @@ public long getQueueSize() { * Queue size * * - * int64 queue_size = 4 [(.google.api.field_behavior) = OPTIONAL]; + * int64 queue_size = 6 [(.google.api.field_behavior) = OPTIONAL]; * @param value The queueSize to set. * @return This builder for chaining. */ @@ -912,7 +1244,7 @@ public Builder setQueueSize(long value) { * Queue size * * - * int64 queue_size = 4 [(.google.api.field_behavior) = OPTIONAL]; + * int64 queue_size = 6 [(.google.api.field_behavior) = OPTIONAL]; * @return This builder for chaining. */ public Builder clearQueueSize() { @@ -930,7 +1262,7 @@ public Builder clearQueueSize() { * Nvme over TCP specific fields * * - * .opi_api.storage.v1.TcpController tcp = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.TcpController tcp = 7 [(.google.api.field_behavior) = OPTIONAL]; * @return Whether the tcp field is set. */ public boolean hasTcp() { @@ -941,7 +1273,7 @@ public boolean hasTcp() { * Nvme over TCP specific fields * * - * .opi_api.storage.v1.TcpController tcp = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.TcpController tcp = 7 [(.google.api.field_behavior) = OPTIONAL]; * @return The tcp. */ public opi_api.storage.v1.TcpController getTcp() { @@ -956,7 +1288,7 @@ public opi_api.storage.v1.TcpController getTcp() { * Nvme over TCP specific fields * * - * .opi_api.storage.v1.TcpController tcp = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.TcpController tcp = 7 [(.google.api.field_behavior) = OPTIONAL]; */ public Builder setTcp(opi_api.storage.v1.TcpController value) { if (tcpBuilder_ == null) { @@ -976,7 +1308,7 @@ public Builder setTcp(opi_api.storage.v1.TcpController value) { * Nvme over TCP specific fields * * - * .opi_api.storage.v1.TcpController tcp = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.TcpController tcp = 7 [(.google.api.field_behavior) = OPTIONAL]; */ public Builder setTcp( opi_api.storage.v1.TcpController.Builder builderForValue) { @@ -994,7 +1326,7 @@ public Builder setTcp( * Nvme over TCP specific fields * * - * .opi_api.storage.v1.TcpController tcp = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.TcpController tcp = 7 [(.google.api.field_behavior) = OPTIONAL]; */ public Builder mergeTcp(opi_api.storage.v1.TcpController value) { if (tcpBuilder_ == null) { @@ -1016,7 +1348,7 @@ public Builder mergeTcp(opi_api.storage.v1.TcpController value) { * Nvme over TCP specific fields * * - * .opi_api.storage.v1.TcpController tcp = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.TcpController tcp = 7 [(.google.api.field_behavior) = OPTIONAL]; */ public Builder clearTcp() { if (tcpBuilder_ == null) { @@ -1034,7 +1366,7 @@ public Builder clearTcp() { * Nvme over TCP specific fields * * - * .opi_api.storage.v1.TcpController tcp = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.TcpController tcp = 7 [(.google.api.field_behavior) = OPTIONAL]; */ public opi_api.storage.v1.TcpController.Builder getTcpBuilder() { @@ -1046,7 +1378,7 @@ public opi_api.storage.v1.TcpController.Builder getTcpBuilder() { * Nvme over TCP specific fields * * - * .opi_api.storage.v1.TcpController tcp = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.TcpController tcp = 7 [(.google.api.field_behavior) = OPTIONAL]; */ public opi_api.storage.v1.TcpControllerOrBuilder getTcpOrBuilder() { if (tcpBuilder_ != null) { @@ -1061,7 +1393,7 @@ public opi_api.storage.v1.TcpControllerOrBuilder getTcpOrBuilder() { * Nvme over TCP specific fields * * - * .opi_api.storage.v1.TcpController tcp = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.TcpController tcp = 7 [(.google.api.field_behavior) = OPTIONAL]; */ private com.google.protobuf.SingleFieldBuilderV3< opi_api.storage.v1.TcpController, opi_api.storage.v1.TcpController.Builder, opi_api.storage.v1.TcpControllerOrBuilder> diff --git a/storage/v1alpha1/gen/java/opi_api/storage/v1/NvmeRemoteControllerOrBuilder.java b/storage/v1alpha1/gen/java/opi_api/storage/v1/NvmeRemoteControllerOrBuilder.java index 6aadc965..d6dddade 100644 --- a/storage/v1alpha1/gen/java/opi_api/storage/v1/NvmeRemoteControllerOrBuilder.java +++ b/storage/v1alpha1/gen/java/opi_api/storage/v1/NvmeRemoteControllerOrBuilder.java @@ -50,12 +50,52 @@ public interface NvmeRemoteControllerOrBuilder extends */ opi_api.storage.v1.NvmeMultipath getMultipath(); + /** + *
+   * Subsystem NQN
+   * 
+ * + * string subnqn = 3 [(.google.api.field_behavior) = OPTIONAL]; + * @return The subnqn. + */ + java.lang.String getSubnqn(); + /** + *
+   * Subsystem NQN
+   * 
+ * + * string subnqn = 3 [(.google.api.field_behavior) = OPTIONAL]; + * @return The bytes for subnqn. + */ + com.google.protobuf.ByteString + getSubnqnBytes(); + + /** + *
+   * Host NQN
+   * 
+ * + * string hostnqn = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return The hostnqn. + */ + java.lang.String getHostnqn(); + /** + *
+   * Host NQN
+   * 
+ * + * string hostnqn = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return The bytes for hostnqn. + */ + com.google.protobuf.ByteString + getHostnqnBytes(); + /** *
    * IO queues count
    * 
* - * int64 io_queues_count = 3 [(.google.api.field_behavior) = OPTIONAL]; + * int64 io_queues_count = 5 [(.google.api.field_behavior) = OPTIONAL]; * @return The ioQueuesCount. */ long getIoQueuesCount(); @@ -65,7 +105,7 @@ public interface NvmeRemoteControllerOrBuilder extends * Queue size * * - * int64 queue_size = 4 [(.google.api.field_behavior) = OPTIONAL]; + * int64 queue_size = 6 [(.google.api.field_behavior) = OPTIONAL]; * @return The queueSize. */ long getQueueSize(); @@ -75,7 +115,7 @@ public interface NvmeRemoteControllerOrBuilder extends * Nvme over TCP specific fields * * - * .opi_api.storage.v1.TcpController tcp = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.TcpController tcp = 7 [(.google.api.field_behavior) = OPTIONAL]; * @return Whether the tcp field is set. */ boolean hasTcp(); @@ -84,7 +124,7 @@ public interface NvmeRemoteControllerOrBuilder extends * Nvme over TCP specific fields * * - * .opi_api.storage.v1.TcpController tcp = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.TcpController tcp = 7 [(.google.api.field_behavior) = OPTIONAL]; * @return The tcp. */ opi_api.storage.v1.TcpController getTcp(); @@ -93,7 +133,7 @@ public interface NvmeRemoteControllerOrBuilder extends * Nvme over TCP specific fields * * - * .opi_api.storage.v1.TcpController tcp = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .opi_api.storage.v1.TcpController tcp = 7 [(.google.api.field_behavior) = OPTIONAL]; */ opi_api.storage.v1.TcpControllerOrBuilder getTcpOrBuilder(); } diff --git a/storage/v1alpha1/gen/java/opi_api/storage/v1/OpiCommonProto.java b/storage/v1alpha1/gen/java/opi_api/storage/v1/OpiCommonProto.java index f8b8c89f..221a5448 100644 --- a/storage/v1alpha1/gen/java/opi_api/storage/v1/OpiCommonProto.java +++ b/storage/v1alpha1/gen/java/opi_api/storage/v1/OpiCommonProto.java @@ -45,45 +45,48 @@ public static void registerAllExtensions( java.lang.String[] descriptorData = { "\n\017opicommon.proto\022\022opi_api.storage.v1\032\037g" + "oogle/api/field_behavior.proto\032\036google/p" + - "rotobuf/wrappers.proto\"\271\001\n\013PciEndpoint\0221" + + "rotobuf/wrappers.proto\"\356\001\n\013PciEndpoint\0221" + "\n\007port_id\030\001 \001(\0132\033.google.protobuf.Int32V" + "alueB\003\340A\002\022;\n\021physical_function\030\002 \001(\0132\033.g" + "oogle.protobuf.Int32ValueB\003\340A\002\022:\n\020virtua" + "l_function\030\003 \001(\0132\033.google.protobuf.Int32" + - "ValueB\003\340A\002\"x\n\017FabricsEndpoint\022\023\n\006traddr\030" + - "\001 \001(\tB\003\340A\002\022\024\n\007trsvcid\030\002 \001(\tB\003\340A\002\022:\n\006adrf" + - "am\030\003 \001(\0162%.opi_api.storage.v1.NvmeAddres" + - "sFamilyB\003\340A\002\"\252\002\n\013VolumeStats\022\035\n\020read_byt" + - "es_count\030\001 \001(\005B\003\340A\003\022\033\n\016read_ops_count\030\002 " + - "\001(\005B\003\340A\003\022\036\n\021write_bytes_count\030\003 \001(\005B\003\340A\003" + - "\022\034\n\017write_ops_count\030\004 \001(\005B\003\340A\003\022\036\n\021unmap_" + - "bytes_count\030\005 \001(\005B\003\340A\003\022\034\n\017unmap_ops_coun" + - "t\030\006 \001(\005B\003\340A\003\022\037\n\022read_latency_ticks\030\007 \001(\005" + - "B\003\340A\003\022 \n\023write_latency_ticks\030\010 \001(\005B\003\340A\003\022" + - " \n\023unmap_latency_ticks\030\t \001(\005B\003\340A\003\"\273\001\n\010Qo" + - "sLimit\022\032\n\rrd_iops_kiops\030\001 \001(\003B\003\340A\001\022\032\n\rwr" + - "_iops_kiops\030\002 \001(\003B\003\340A\001\022\032\n\rrw_iops_kiops\030" + - "\003 \001(\003B\003\340A\001\022\035\n\020rd_bandwidth_mbs\030\004 \001(\003B\003\340A" + - "\001\022\035\n\020wr_bandwidth_mbs\030\005 \001(\003B\003\340A\001\022\035\n\020rw_b" + - "andwidth_mbs\030\006 \001(\003B\003\340A\001*\367\001\n\016EncryptionTy" + - "pe\022\037\n\033ENCRYPTION_TYPE_UNSPECIFIED\020\000\022\037\n\033E" + - "NCRYPTION_TYPE_AES_CBC_128\020\001\022\037\n\033ENCRYPTI" + - "ON_TYPE_AES_CBC_192\020\002\022\037\n\033ENCRYPTION_TYPE" + - "_AES_CBC_256\020\003\022\037\n\033ENCRYPTION_TYPE_AES_XT" + - "S_128\020\004\022\037\n\033ENCRYPTION_TYPE_AES_XTS_192\020\005" + - "\022\037\n\033ENCRYPTION_TYPE_AES_XTS_256\020\006*\264\001\n\021Nv" + - "meTransportType\022#\n\037NVME_TRANSPORT_TYPE_U" + - "NSPECIFIED\020\000\022\025\n\021NVME_TRANSPORT_FC\020\001\022\027\n\023N" + - "VME_TRANSPORT_PCIE\020\002\022\027\n\023NVME_TRANSPORT_R" + - "DMA\020\003\022\026\n\022NVME_TRANSPORT_TCP\020\004\022\031\n\025NVME_TR" + - "ANSPORT_CUSTOM\020\005*\250\001\n\021NvmeAddressFamily\022#" + - "\n\037NVME_ADDRESS_FAMILY_UNSPECIFIED\020\000\022\024\n\020N" + - "VME_ADRFAM_IPV4\020\001\022\024\n\020NVME_ADRFAM_IPV6\020\002\022" + - "\022\n\016NVME_ADRFAM_IB\020\003\022\022\n\016NVME_ADRFAM_FC\020\004\022" + - "\032\n\026NVME_ADRFAM_INTRA_HOST\020\005B]\n\022opi_api.s" + - "torage.v1B\016OpiCommonProtoP\001Z5github.com/" + - "opiproject/opi-api/storage/v1alpha1/gen/" + - "gob\006proto3" + "ValueB\003\340A\002\0223\n\tdomain_id\030\004 \001(\0132\033.google.p" + + "rotobuf.Int32ValueB\003\340A\001\"\261\001\n\017FabricsEndpo" + + "int\022\023\n\006traddr\030\001 \001(\tB\003\340A\002\022\024\n\007trsvcid\030\002 \001(" + + "\tB\003\340A\002\022:\n\006adrfam\030\003 \001(\0162%.opi_api.storage" + + ".v1.NvmeAddressFamilyB\003\340A\002\022\032\n\rsource_tra" + + "ddr\030\004 \001(\tB\003\340A\001\022\033\n\016source_trsvcid\030\005 \001(\tB\003" + + "\340A\001\"\252\002\n\013VolumeStats\022\035\n\020read_bytes_count\030" + + "\001 \001(\005B\003\340A\003\022\033\n\016read_ops_count\030\002 \001(\005B\003\340A\003\022" + + "\036\n\021write_bytes_count\030\003 \001(\005B\003\340A\003\022\034\n\017write" + + "_ops_count\030\004 \001(\005B\003\340A\003\022\036\n\021unmap_bytes_cou" + + "nt\030\005 \001(\005B\003\340A\003\022\034\n\017unmap_ops_count\030\006 \001(\005B\003" + + "\340A\003\022\037\n\022read_latency_ticks\030\007 \001(\005B\003\340A\003\022 \n\023" + + "write_latency_ticks\030\010 \001(\005B\003\340A\003\022 \n\023unmap_" + + "latency_ticks\030\t \001(\005B\003\340A\003\"\273\001\n\010QosLimit\022\032\n" + + "\rrd_iops_kiops\030\001 \001(\003B\003\340A\001\022\032\n\rwr_iops_kio" + + "ps\030\002 \001(\003B\003\340A\001\022\032\n\rrw_iops_kiops\030\003 \001(\003B\003\340A" + + "\001\022\035\n\020rd_bandwidth_mbs\030\004 \001(\003B\003\340A\001\022\035\n\020wr_b" + + "andwidth_mbs\030\005 \001(\003B\003\340A\001\022\035\n\020rw_bandwidth_" + + "mbs\030\006 \001(\003B\003\340A\001*\367\001\n\016EncryptionType\022\037\n\033ENC" + + "RYPTION_TYPE_UNSPECIFIED\020\000\022\037\n\033ENCRYPTION" + + "_TYPE_AES_CBC_128\020\001\022\037\n\033ENCRYPTION_TYPE_A" + + "ES_CBC_192\020\002\022\037\n\033ENCRYPTION_TYPE_AES_CBC_" + + "256\020\003\022\037\n\033ENCRYPTION_TYPE_AES_XTS_128\020\004\022\037" + + "\n\033ENCRYPTION_TYPE_AES_XTS_192\020\005\022\037\n\033ENCRY" + + "PTION_TYPE_AES_XTS_256\020\006*\264\001\n\021NvmeTranspo" + + "rtType\022#\n\037NVME_TRANSPORT_TYPE_UNSPECIFIE" + + "D\020\000\022\025\n\021NVME_TRANSPORT_FC\020\001\022\027\n\023NVME_TRANS" + + "PORT_PCIE\020\002\022\027\n\023NVME_TRANSPORT_RDMA\020\003\022\026\n\022" + + "NVME_TRANSPORT_TCP\020\004\022\031\n\025NVME_TRANSPORT_C" + + "USTOM\020\005*\250\001\n\021NvmeAddressFamily\022#\n\037NVME_AD" + + "DRESS_FAMILY_UNSPECIFIED\020\000\022\024\n\020NVME_ADRFA" + + "M_IPV4\020\001\022\024\n\020NVME_ADRFAM_IPV6\020\002\022\022\n\016NVME_A" + + "DRFAM_IB\020\003\022\022\n\016NVME_ADRFAM_FC\020\004\022\032\n\026NVME_A" + + "DRFAM_INTRA_HOST\020\005B]\n\022opi_api.storage.v1" + + "B\016OpiCommonProtoP\001Z5github.com/opiprojec" + + "t/opi-api/storage/v1alpha1/gen/gob\006proto" + + "3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, @@ -96,13 +99,13 @@ public static void registerAllExtensions( internal_static_opi_api_storage_v1_PciEndpoint_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_opi_api_storage_v1_PciEndpoint_descriptor, - new java.lang.String[] { "PortId", "PhysicalFunction", "VirtualFunction", }); + new java.lang.String[] { "PortId", "PhysicalFunction", "VirtualFunction", "DomainId", }); internal_static_opi_api_storage_v1_FabricsEndpoint_descriptor = getDescriptor().getMessageTypes().get(1); internal_static_opi_api_storage_v1_FabricsEndpoint_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_opi_api_storage_v1_FabricsEndpoint_descriptor, - new java.lang.String[] { "Traddr", "Trsvcid", "Adrfam", }); + new java.lang.String[] { "Traddr", "Trsvcid", "Adrfam", "SourceTraddr", "SourceTrsvcid", }); internal_static_opi_api_storage_v1_VolumeStats_descriptor = getDescriptor().getMessageTypes().get(2); internal_static_opi_api_storage_v1_VolumeStats_fieldAccessorTable = new diff --git a/storage/v1alpha1/gen/java/opi_api/storage/v1/PciEndpoint.java b/storage/v1alpha1/gen/java/opi_api/storage/v1/PciEndpoint.java index e9c3022f..e849cdd4 100644 --- a/storage/v1alpha1/gen/java/opi_api/storage/v1/PciEndpoint.java +++ b/storage/v1alpha1/gen/java/opi_api/storage/v1/PciEndpoint.java @@ -98,6 +98,19 @@ private PciEndpoint( break; } + case 34: { + com.google.protobuf.Int32Value.Builder subBuilder = null; + if (domainId_ != null) { + subBuilder = domainId_.toBuilder(); + } + domainId_ = input.readMessage(com.google.protobuf.Int32Value.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(domainId_); + domainId_ = subBuilder.buildPartial(); + } + + break; + } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { @@ -136,10 +149,13 @@ private PciEndpoint( private com.google.protobuf.Int32Value portId_; /** *
+   * for frontend:
    * The "port" or "device". In other words, the connector/cable that's
    * plugged into a particular host. This number may end up matching
    * the host-assigned "device" value in the bus:device:function identifier,
    * but it does not strictly have to and that should not be relied upon.
+   * for backend:
+   * Corresponds to "bus" part of BDF
    * 
* * .google.protobuf.Int32Value port_id = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -151,10 +167,13 @@ public boolean hasPortId() { } /** *
+   * for frontend:
    * The "port" or "device". In other words, the connector/cable that's
    * plugged into a particular host. This number may end up matching
    * the host-assigned "device" value in the bus:device:function identifier,
    * but it does not strictly have to and that should not be relied upon.
+   * for backend:
+   * Corresponds to "bus" part of BDF
    * 
* * .google.protobuf.Int32Value port_id = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -166,10 +185,13 @@ public com.google.protobuf.Int32Value getPortId() { } /** *
+   * for frontend:
    * The "port" or "device". In other words, the connector/cable that's
    * plugged into a particular host. This number may end up matching
    * the host-assigned "device" value in the bus:device:function identifier,
    * but it does not strictly have to and that should not be relied upon.
+   * for backend:
+   * Corresponds to "bus" part of BDF
    * 
* * .google.protobuf.Int32Value port_id = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -183,9 +205,12 @@ public com.google.protobuf.Int32ValueOrBuilder getPortIdOrBuilder() { private com.google.protobuf.Int32Value physicalFunction_; /** *
+   * for frontend:
    * Physical function index. This may end up matching the host-assigned
    * "function" value in the bus:device:function identifier, but it does not
    * strictly have to and that should not be relied upon.
+   * for backend:
+   * Corresponds to "device" part of BDF
    * 
* * .google.protobuf.Int32Value physical_function = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -197,9 +222,12 @@ public boolean hasPhysicalFunction() { } /** *
+   * for frontend:
    * Physical function index. This may end up matching the host-assigned
    * "function" value in the bus:device:function identifier, but it does not
    * strictly have to and that should not be relied upon.
+   * for backend:
+   * Corresponds to "device" part of BDF
    * 
* * .google.protobuf.Int32Value physical_function = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -211,9 +239,12 @@ public com.google.protobuf.Int32Value getPhysicalFunction() { } /** *
+   * for frontend:
    * Physical function index. This may end up matching the host-assigned
    * "function" value in the bus:device:function identifier, but it does not
    * strictly have to and that should not be relied upon.
+   * for backend:
+   * Corresponds to "device" part of BDF
    * 
* * .google.protobuf.Int32Value physical_function = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -227,11 +258,14 @@ public com.google.protobuf.Int32ValueOrBuilder getPhysicalFunctionOrBuilder() { private com.google.protobuf.Int32Value virtualFunction_; /** *
+   * for frontend:
    * Virtual function index. 1-based index.
    * The value 0 is reserved to represent the PCI physical "device".
    * This may end up matching the host-assigned "function" value in the
    * bus:device:function identifier, but it does not strictly have to and
    * that should not be relied upon.
+   * for backend:
+   * Corresponds to "function" part of BDF
    * 
* * .google.protobuf.Int32Value virtual_function = 3 [(.google.api.field_behavior) = REQUIRED]; @@ -243,11 +277,14 @@ public boolean hasVirtualFunction() { } /** *
+   * for frontend:
    * Virtual function index. 1-based index.
    * The value 0 is reserved to represent the PCI physical "device".
    * This may end up matching the host-assigned "function" value in the
    * bus:device:function identifier, but it does not strictly have to and
    * that should not be relied upon.
+   * for backend:
+   * Corresponds to "function" part of BDF
    * 
* * .google.protobuf.Int32Value virtual_function = 3 [(.google.api.field_behavior) = REQUIRED]; @@ -259,11 +296,14 @@ public com.google.protobuf.Int32Value getVirtualFunction() { } /** *
+   * for frontend:
    * Virtual function index. 1-based index.
    * The value 0 is reserved to represent the PCI physical "device".
    * This may end up matching the host-assigned "function" value in the
    * bus:device:function identifier, but it does not strictly have to and
    * that should not be relied upon.
+   * for backend:
+   * Corresponds to "function" part of BDF
    * 
* * .google.protobuf.Int32Value virtual_function = 3 [(.google.api.field_behavior) = REQUIRED]; @@ -273,6 +313,53 @@ public com.google.protobuf.Int32ValueOrBuilder getVirtualFunctionOrBuilder() { return getVirtualFunction(); } + public static final int DOMAIN_ID_FIELD_NUMBER = 4; + private com.google.protobuf.Int32Value domainId_; + /** + *
+   * for frontend:
+   * Not used
+   * for backend:
+   * Corresponds to pci domain value
+   * 
+ * + * .google.protobuf.Int32Value domain_id = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return Whether the domainId field is set. + */ + @java.lang.Override + public boolean hasDomainId() { + return domainId_ != null; + } + /** + *
+   * for frontend:
+   * Not used
+   * for backend:
+   * Corresponds to pci domain value
+   * 
+ * + * .google.protobuf.Int32Value domain_id = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return The domainId. + */ + @java.lang.Override + public com.google.protobuf.Int32Value getDomainId() { + return domainId_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : domainId_; + } + /** + *
+   * for frontend:
+   * Not used
+   * for backend:
+   * Corresponds to pci domain value
+   * 
+ * + * .google.protobuf.Int32Value domain_id = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + @java.lang.Override + public com.google.protobuf.Int32ValueOrBuilder getDomainIdOrBuilder() { + return getDomainId(); + } + private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -296,6 +383,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (virtualFunction_ != null) { output.writeMessage(3, getVirtualFunction()); } + if (domainId_ != null) { + output.writeMessage(4, getDomainId()); + } unknownFields.writeTo(output); } @@ -317,6 +407,10 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeMessageSize(3, getVirtualFunction()); } + if (domainId_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(4, getDomainId()); + } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; @@ -347,6 +441,11 @@ public boolean equals(final java.lang.Object obj) { if (!getVirtualFunction() .equals(other.getVirtualFunction())) return false; } + if (hasDomainId() != other.hasDomainId()) return false; + if (hasDomainId()) { + if (!getDomainId() + .equals(other.getDomainId())) return false; + } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -370,6 +469,10 @@ public int hashCode() { hash = (37 * hash) + VIRTUAL_FUNCTION_FIELD_NUMBER; hash = (53 * hash) + getVirtualFunction().hashCode(); } + if (hasDomainId()) { + hash = (37 * hash) + DOMAIN_ID_FIELD_NUMBER; + hash = (53 * hash) + getDomainId().hashCode(); + } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; @@ -532,6 +635,12 @@ public Builder clear() { virtualFunction_ = null; virtualFunctionBuilder_ = null; } + if (domainIdBuilder_ == null) { + domainId_ = null; + } else { + domainId_ = null; + domainIdBuilder_ = null; + } return this; } @@ -573,6 +682,11 @@ public opi_api.storage.v1.PciEndpoint buildPartial() { } else { result.virtualFunction_ = virtualFunctionBuilder_.build(); } + if (domainIdBuilder_ == null) { + result.domainId_ = domainId_; + } else { + result.domainId_ = domainIdBuilder_.build(); + } onBuilt(); return result; } @@ -630,6 +744,9 @@ public Builder mergeFrom(opi_api.storage.v1.PciEndpoint other) { if (other.hasVirtualFunction()) { mergeVirtualFunction(other.getVirtualFunction()); } + if (other.hasDomainId()) { + mergeDomainId(other.getDomainId()); + } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; @@ -664,10 +781,13 @@ public Builder mergeFrom( com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> portIdBuilder_; /** *
+     * for frontend:
      * The "port" or "device". In other words, the connector/cable that's
      * plugged into a particular host. This number may end up matching
      * the host-assigned "device" value in the bus:device:function identifier,
      * but it does not strictly have to and that should not be relied upon.
+     * for backend:
+     * Corresponds to "bus" part of BDF
      * 
* * .google.protobuf.Int32Value port_id = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -678,10 +798,13 @@ public boolean hasPortId() { } /** *
+     * for frontend:
      * The "port" or "device". In other words, the connector/cable that's
      * plugged into a particular host. This number may end up matching
      * the host-assigned "device" value in the bus:device:function identifier,
      * but it does not strictly have to and that should not be relied upon.
+     * for backend:
+     * Corresponds to "bus" part of BDF
      * 
* * .google.protobuf.Int32Value port_id = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -696,10 +819,13 @@ public com.google.protobuf.Int32Value getPortId() { } /** *
+     * for frontend:
      * The "port" or "device". In other words, the connector/cable that's
      * plugged into a particular host. This number may end up matching
      * the host-assigned "device" value in the bus:device:function identifier,
      * but it does not strictly have to and that should not be relied upon.
+     * for backend:
+     * Corresponds to "bus" part of BDF
      * 
* * .google.protobuf.Int32Value port_id = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -719,10 +845,13 @@ public Builder setPortId(com.google.protobuf.Int32Value value) { } /** *
+     * for frontend:
      * The "port" or "device". In other words, the connector/cable that's
      * plugged into a particular host. This number may end up matching
      * the host-assigned "device" value in the bus:device:function identifier,
      * but it does not strictly have to and that should not be relied upon.
+     * for backend:
+     * Corresponds to "bus" part of BDF
      * 
* * .google.protobuf.Int32Value port_id = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -740,10 +869,13 @@ public Builder setPortId( } /** *
+     * for frontend:
      * The "port" or "device". In other words, the connector/cable that's
      * plugged into a particular host. This number may end up matching
      * the host-assigned "device" value in the bus:device:function identifier,
      * but it does not strictly have to and that should not be relied upon.
+     * for backend:
+     * Corresponds to "bus" part of BDF
      * 
* * .google.protobuf.Int32Value port_id = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -765,10 +897,13 @@ public Builder mergePortId(com.google.protobuf.Int32Value value) { } /** *
+     * for frontend:
      * The "port" or "device". In other words, the connector/cable that's
      * plugged into a particular host. This number may end up matching
      * the host-assigned "device" value in the bus:device:function identifier,
      * but it does not strictly have to and that should not be relied upon.
+     * for backend:
+     * Corresponds to "bus" part of BDF
      * 
* * .google.protobuf.Int32Value port_id = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -786,10 +921,13 @@ public Builder clearPortId() { } /** *
+     * for frontend:
      * The "port" or "device". In other words, the connector/cable that's
      * plugged into a particular host. This number may end up matching
      * the host-assigned "device" value in the bus:device:function identifier,
      * but it does not strictly have to and that should not be relied upon.
+     * for backend:
+     * Corresponds to "bus" part of BDF
      * 
* * .google.protobuf.Int32Value port_id = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -801,10 +939,13 @@ public com.google.protobuf.Int32Value.Builder getPortIdBuilder() { } /** *
+     * for frontend:
      * The "port" or "device". In other words, the connector/cable that's
      * plugged into a particular host. This number may end up matching
      * the host-assigned "device" value in the bus:device:function identifier,
      * but it does not strictly have to and that should not be relied upon.
+     * for backend:
+     * Corresponds to "bus" part of BDF
      * 
* * .google.protobuf.Int32Value port_id = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -819,10 +960,13 @@ public com.google.protobuf.Int32ValueOrBuilder getPortIdOrBuilder() { } /** *
+     * for frontend:
      * The "port" or "device". In other words, the connector/cable that's
      * plugged into a particular host. This number may end up matching
      * the host-assigned "device" value in the bus:device:function identifier,
      * but it does not strictly have to and that should not be relied upon.
+     * for backend:
+     * Corresponds to "bus" part of BDF
      * 
* * .google.protobuf.Int32Value port_id = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -846,9 +990,12 @@ public com.google.protobuf.Int32ValueOrBuilder getPortIdOrBuilder() { com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> physicalFunctionBuilder_; /** *
+     * for frontend:
      * Physical function index. This may end up matching the host-assigned
      * "function" value in the bus:device:function identifier, but it does not
      * strictly have to and that should not be relied upon.
+     * for backend:
+     * Corresponds to "device" part of BDF
      * 
* * .google.protobuf.Int32Value physical_function = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -859,9 +1006,12 @@ public boolean hasPhysicalFunction() { } /** *
+     * for frontend:
      * Physical function index. This may end up matching the host-assigned
      * "function" value in the bus:device:function identifier, but it does not
      * strictly have to and that should not be relied upon.
+     * for backend:
+     * Corresponds to "device" part of BDF
      * 
* * .google.protobuf.Int32Value physical_function = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -876,9 +1026,12 @@ public com.google.protobuf.Int32Value getPhysicalFunction() { } /** *
+     * for frontend:
      * Physical function index. This may end up matching the host-assigned
      * "function" value in the bus:device:function identifier, but it does not
      * strictly have to and that should not be relied upon.
+     * for backend:
+     * Corresponds to "device" part of BDF
      * 
* * .google.protobuf.Int32Value physical_function = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -898,9 +1051,12 @@ public Builder setPhysicalFunction(com.google.protobuf.Int32Value value) { } /** *
+     * for frontend:
      * Physical function index. This may end up matching the host-assigned
      * "function" value in the bus:device:function identifier, but it does not
      * strictly have to and that should not be relied upon.
+     * for backend:
+     * Corresponds to "device" part of BDF
      * 
* * .google.protobuf.Int32Value physical_function = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -918,9 +1074,12 @@ public Builder setPhysicalFunction( } /** *
+     * for frontend:
      * Physical function index. This may end up matching the host-assigned
      * "function" value in the bus:device:function identifier, but it does not
      * strictly have to and that should not be relied upon.
+     * for backend:
+     * Corresponds to "device" part of BDF
      * 
* * .google.protobuf.Int32Value physical_function = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -942,9 +1101,12 @@ public Builder mergePhysicalFunction(com.google.protobuf.Int32Value value) { } /** *
+     * for frontend:
      * Physical function index. This may end up matching the host-assigned
      * "function" value in the bus:device:function identifier, but it does not
      * strictly have to and that should not be relied upon.
+     * for backend:
+     * Corresponds to "device" part of BDF
      * 
* * .google.protobuf.Int32Value physical_function = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -962,9 +1124,12 @@ public Builder clearPhysicalFunction() { } /** *
+     * for frontend:
      * Physical function index. This may end up matching the host-assigned
      * "function" value in the bus:device:function identifier, but it does not
      * strictly have to and that should not be relied upon.
+     * for backend:
+     * Corresponds to "device" part of BDF
      * 
* * .google.protobuf.Int32Value physical_function = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -976,9 +1141,12 @@ public com.google.protobuf.Int32Value.Builder getPhysicalFunctionBuilder() { } /** *
+     * for frontend:
      * Physical function index. This may end up matching the host-assigned
      * "function" value in the bus:device:function identifier, but it does not
      * strictly have to and that should not be relied upon.
+     * for backend:
+     * Corresponds to "device" part of BDF
      * 
* * .google.protobuf.Int32Value physical_function = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -993,9 +1161,12 @@ public com.google.protobuf.Int32ValueOrBuilder getPhysicalFunctionOrBuilder() { } /** *
+     * for frontend:
      * Physical function index. This may end up matching the host-assigned
      * "function" value in the bus:device:function identifier, but it does not
      * strictly have to and that should not be relied upon.
+     * for backend:
+     * Corresponds to "device" part of BDF
      * 
* * .google.protobuf.Int32Value physical_function = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -1019,11 +1190,14 @@ public com.google.protobuf.Int32ValueOrBuilder getPhysicalFunctionOrBuilder() { com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> virtualFunctionBuilder_; /** *
+     * for frontend:
      * Virtual function index. 1-based index.
      * The value 0 is reserved to represent the PCI physical "device".
      * This may end up matching the host-assigned "function" value in the
      * bus:device:function identifier, but it does not strictly have to and
      * that should not be relied upon.
+     * for backend:
+     * Corresponds to "function" part of BDF
      * 
* * .google.protobuf.Int32Value virtual_function = 3 [(.google.api.field_behavior) = REQUIRED]; @@ -1034,11 +1208,14 @@ public boolean hasVirtualFunction() { } /** *
+     * for frontend:
      * Virtual function index. 1-based index.
      * The value 0 is reserved to represent the PCI physical "device".
      * This may end up matching the host-assigned "function" value in the
      * bus:device:function identifier, but it does not strictly have to and
      * that should not be relied upon.
+     * for backend:
+     * Corresponds to "function" part of BDF
      * 
* * .google.protobuf.Int32Value virtual_function = 3 [(.google.api.field_behavior) = REQUIRED]; @@ -1053,11 +1230,14 @@ public com.google.protobuf.Int32Value getVirtualFunction() { } /** *
+     * for frontend:
      * Virtual function index. 1-based index.
      * The value 0 is reserved to represent the PCI physical "device".
      * This may end up matching the host-assigned "function" value in the
      * bus:device:function identifier, but it does not strictly have to and
      * that should not be relied upon.
+     * for backend:
+     * Corresponds to "function" part of BDF
      * 
* * .google.protobuf.Int32Value virtual_function = 3 [(.google.api.field_behavior) = REQUIRED]; @@ -1077,11 +1257,14 @@ public Builder setVirtualFunction(com.google.protobuf.Int32Value value) { } /** *
+     * for frontend:
      * Virtual function index. 1-based index.
      * The value 0 is reserved to represent the PCI physical "device".
      * This may end up matching the host-assigned "function" value in the
      * bus:device:function identifier, but it does not strictly have to and
      * that should not be relied upon.
+     * for backend:
+     * Corresponds to "function" part of BDF
      * 
* * .google.protobuf.Int32Value virtual_function = 3 [(.google.api.field_behavior) = REQUIRED]; @@ -1099,11 +1282,14 @@ public Builder setVirtualFunction( } /** *
+     * for frontend:
      * Virtual function index. 1-based index.
      * The value 0 is reserved to represent the PCI physical "device".
      * This may end up matching the host-assigned "function" value in the
      * bus:device:function identifier, but it does not strictly have to and
      * that should not be relied upon.
+     * for backend:
+     * Corresponds to "function" part of BDF
      * 
* * .google.protobuf.Int32Value virtual_function = 3 [(.google.api.field_behavior) = REQUIRED]; @@ -1125,11 +1311,14 @@ public Builder mergeVirtualFunction(com.google.protobuf.Int32Value value) { } /** *
+     * for frontend:
      * Virtual function index. 1-based index.
      * The value 0 is reserved to represent the PCI physical "device".
      * This may end up matching the host-assigned "function" value in the
      * bus:device:function identifier, but it does not strictly have to and
      * that should not be relied upon.
+     * for backend:
+     * Corresponds to "function" part of BDF
      * 
* * .google.protobuf.Int32Value virtual_function = 3 [(.google.api.field_behavior) = REQUIRED]; @@ -1147,11 +1336,14 @@ public Builder clearVirtualFunction() { } /** *
+     * for frontend:
      * Virtual function index. 1-based index.
      * The value 0 is reserved to represent the PCI physical "device".
      * This may end up matching the host-assigned "function" value in the
      * bus:device:function identifier, but it does not strictly have to and
      * that should not be relied upon.
+     * for backend:
+     * Corresponds to "function" part of BDF
      * 
* * .google.protobuf.Int32Value virtual_function = 3 [(.google.api.field_behavior) = REQUIRED]; @@ -1163,11 +1355,14 @@ public com.google.protobuf.Int32Value.Builder getVirtualFunctionBuilder() { } /** *
+     * for frontend:
      * Virtual function index. 1-based index.
      * The value 0 is reserved to represent the PCI physical "device".
      * This may end up matching the host-assigned "function" value in the
      * bus:device:function identifier, but it does not strictly have to and
      * that should not be relied upon.
+     * for backend:
+     * Corresponds to "function" part of BDF
      * 
* * .google.protobuf.Int32Value virtual_function = 3 [(.google.api.field_behavior) = REQUIRED]; @@ -1182,11 +1377,14 @@ public com.google.protobuf.Int32ValueOrBuilder getVirtualFunctionOrBuilder() { } /** *
+     * for frontend:
      * Virtual function index. 1-based index.
      * The value 0 is reserved to represent the PCI physical "device".
      * This may end up matching the host-assigned "function" value in the
      * bus:device:function identifier, but it does not strictly have to and
      * that should not be relied upon.
+     * for backend:
+     * Corresponds to "function" part of BDF
      * 
* * .google.protobuf.Int32Value virtual_function = 3 [(.google.api.field_behavior) = REQUIRED]; @@ -1204,6 +1402,188 @@ public com.google.protobuf.Int32ValueOrBuilder getVirtualFunctionOrBuilder() { } return virtualFunctionBuilder_; } + + private com.google.protobuf.Int32Value domainId_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> domainIdBuilder_; + /** + *
+     * for frontend:
+     * Not used
+     * for backend:
+     * Corresponds to pci domain value
+     * 
+ * + * .google.protobuf.Int32Value domain_id = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return Whether the domainId field is set. + */ + public boolean hasDomainId() { + return domainIdBuilder_ != null || domainId_ != null; + } + /** + *
+     * for frontend:
+     * Not used
+     * for backend:
+     * Corresponds to pci domain value
+     * 
+ * + * .google.protobuf.Int32Value domain_id = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return The domainId. + */ + public com.google.protobuf.Int32Value getDomainId() { + if (domainIdBuilder_ == null) { + return domainId_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : domainId_; + } else { + return domainIdBuilder_.getMessage(); + } + } + /** + *
+     * for frontend:
+     * Not used
+     * for backend:
+     * Corresponds to pci domain value
+     * 
+ * + * .google.protobuf.Int32Value domain_id = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + public Builder setDomainId(com.google.protobuf.Int32Value value) { + if (domainIdBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + domainId_ = value; + onChanged(); + } else { + domainIdBuilder_.setMessage(value); + } + + return this; + } + /** + *
+     * for frontend:
+     * Not used
+     * for backend:
+     * Corresponds to pci domain value
+     * 
+ * + * .google.protobuf.Int32Value domain_id = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + public Builder setDomainId( + com.google.protobuf.Int32Value.Builder builderForValue) { + if (domainIdBuilder_ == null) { + domainId_ = builderForValue.build(); + onChanged(); + } else { + domainIdBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + *
+     * for frontend:
+     * Not used
+     * for backend:
+     * Corresponds to pci domain value
+     * 
+ * + * .google.protobuf.Int32Value domain_id = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + public Builder mergeDomainId(com.google.protobuf.Int32Value value) { + if (domainIdBuilder_ == null) { + if (domainId_ != null) { + domainId_ = + com.google.protobuf.Int32Value.newBuilder(domainId_).mergeFrom(value).buildPartial(); + } else { + domainId_ = value; + } + onChanged(); + } else { + domainIdBuilder_.mergeFrom(value); + } + + return this; + } + /** + *
+     * for frontend:
+     * Not used
+     * for backend:
+     * Corresponds to pci domain value
+     * 
+ * + * .google.protobuf.Int32Value domain_id = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + public Builder clearDomainId() { + if (domainIdBuilder_ == null) { + domainId_ = null; + onChanged(); + } else { + domainId_ = null; + domainIdBuilder_ = null; + } + + return this; + } + /** + *
+     * for frontend:
+     * Not used
+     * for backend:
+     * Corresponds to pci domain value
+     * 
+ * + * .google.protobuf.Int32Value domain_id = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + public com.google.protobuf.Int32Value.Builder getDomainIdBuilder() { + + onChanged(); + return getDomainIdFieldBuilder().getBuilder(); + } + /** + *
+     * for frontend:
+     * Not used
+     * for backend:
+     * Corresponds to pci domain value
+     * 
+ * + * .google.protobuf.Int32Value domain_id = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + public com.google.protobuf.Int32ValueOrBuilder getDomainIdOrBuilder() { + if (domainIdBuilder_ != null) { + return domainIdBuilder_.getMessageOrBuilder(); + } else { + return domainId_ == null ? + com.google.protobuf.Int32Value.getDefaultInstance() : domainId_; + } + } + /** + *
+     * for frontend:
+     * Not used
+     * for backend:
+     * Corresponds to pci domain value
+     * 
+ * + * .google.protobuf.Int32Value domain_id = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> + getDomainIdFieldBuilder() { + if (domainIdBuilder_ == null) { + domainIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder>( + getDomainId(), + getParentForChildren(), + isClean()); + domainId_ = null; + } + return domainIdBuilder_; + } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { diff --git a/storage/v1alpha1/gen/java/opi_api/storage/v1/PciEndpointOrBuilder.java b/storage/v1alpha1/gen/java/opi_api/storage/v1/PciEndpointOrBuilder.java index b58f2c25..3625bbbb 100644 --- a/storage/v1alpha1/gen/java/opi_api/storage/v1/PciEndpointOrBuilder.java +++ b/storage/v1alpha1/gen/java/opi_api/storage/v1/PciEndpointOrBuilder.java @@ -9,10 +9,13 @@ public interface PciEndpointOrBuilder extends /** *
+   * for frontend:
    * The "port" or "device". In other words, the connector/cable that's
    * plugged into a particular host. This number may end up matching
    * the host-assigned "device" value in the bus:device:function identifier,
    * but it does not strictly have to and that should not be relied upon.
+   * for backend:
+   * Corresponds to "bus" part of BDF
    * 
* * .google.protobuf.Int32Value port_id = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -21,10 +24,13 @@ public interface PciEndpointOrBuilder extends boolean hasPortId(); /** *
+   * for frontend:
    * The "port" or "device". In other words, the connector/cable that's
    * plugged into a particular host. This number may end up matching
    * the host-assigned "device" value in the bus:device:function identifier,
    * but it does not strictly have to and that should not be relied upon.
+   * for backend:
+   * Corresponds to "bus" part of BDF
    * 
* * .google.protobuf.Int32Value port_id = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -33,10 +39,13 @@ public interface PciEndpointOrBuilder extends com.google.protobuf.Int32Value getPortId(); /** *
+   * for frontend:
    * The "port" or "device". In other words, the connector/cable that's
    * plugged into a particular host. This number may end up matching
    * the host-assigned "device" value in the bus:device:function identifier,
    * but it does not strictly have to and that should not be relied upon.
+   * for backend:
+   * Corresponds to "bus" part of BDF
    * 
* * .google.protobuf.Int32Value port_id = 1 [(.google.api.field_behavior) = REQUIRED]; @@ -45,9 +54,12 @@ public interface PciEndpointOrBuilder extends /** *
+   * for frontend:
    * Physical function index. This may end up matching the host-assigned
    * "function" value in the bus:device:function identifier, but it does not
    * strictly have to and that should not be relied upon.
+   * for backend:
+   * Corresponds to "device" part of BDF
    * 
* * .google.protobuf.Int32Value physical_function = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -56,9 +68,12 @@ public interface PciEndpointOrBuilder extends boolean hasPhysicalFunction(); /** *
+   * for frontend:
    * Physical function index. This may end up matching the host-assigned
    * "function" value in the bus:device:function identifier, but it does not
    * strictly have to and that should not be relied upon.
+   * for backend:
+   * Corresponds to "device" part of BDF
    * 
* * .google.protobuf.Int32Value physical_function = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -67,9 +82,12 @@ public interface PciEndpointOrBuilder extends com.google.protobuf.Int32Value getPhysicalFunction(); /** *
+   * for frontend:
    * Physical function index. This may end up matching the host-assigned
    * "function" value in the bus:device:function identifier, but it does not
    * strictly have to and that should not be relied upon.
+   * for backend:
+   * Corresponds to "device" part of BDF
    * 
* * .google.protobuf.Int32Value physical_function = 2 [(.google.api.field_behavior) = REQUIRED]; @@ -78,11 +96,14 @@ public interface PciEndpointOrBuilder extends /** *
+   * for frontend:
    * Virtual function index. 1-based index.
    * The value 0 is reserved to represent the PCI physical "device".
    * This may end up matching the host-assigned "function" value in the
    * bus:device:function identifier, but it does not strictly have to and
    * that should not be relied upon.
+   * for backend:
+   * Corresponds to "function" part of BDF
    * 
* * .google.protobuf.Int32Value virtual_function = 3 [(.google.api.field_behavior) = REQUIRED]; @@ -91,11 +112,14 @@ public interface PciEndpointOrBuilder extends boolean hasVirtualFunction(); /** *
+   * for frontend:
    * Virtual function index. 1-based index.
    * The value 0 is reserved to represent the PCI physical "device".
    * This may end up matching the host-assigned "function" value in the
    * bus:device:function identifier, but it does not strictly have to and
    * that should not be relied upon.
+   * for backend:
+   * Corresponds to "function" part of BDF
    * 
* * .google.protobuf.Int32Value virtual_function = 3 [(.google.api.field_behavior) = REQUIRED]; @@ -104,14 +128,53 @@ public interface PciEndpointOrBuilder extends com.google.protobuf.Int32Value getVirtualFunction(); /** *
+   * for frontend:
    * Virtual function index. 1-based index.
    * The value 0 is reserved to represent the PCI physical "device".
    * This may end up matching the host-assigned "function" value in the
    * bus:device:function identifier, but it does not strictly have to and
    * that should not be relied upon.
+   * for backend:
+   * Corresponds to "function" part of BDF
    * 
* * .google.protobuf.Int32Value virtual_function = 3 [(.google.api.field_behavior) = REQUIRED]; */ com.google.protobuf.Int32ValueOrBuilder getVirtualFunctionOrBuilder(); + + /** + *
+   * for frontend:
+   * Not used
+   * for backend:
+   * Corresponds to pci domain value
+   * 
+ * + * .google.protobuf.Int32Value domain_id = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return Whether the domainId field is set. + */ + boolean hasDomainId(); + /** + *
+   * for frontend:
+   * Not used
+   * for backend:
+   * Corresponds to pci domain value
+   * 
+ * + * .google.protobuf.Int32Value domain_id = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return The domainId. + */ + com.google.protobuf.Int32Value getDomainId(); + /** + *
+   * for frontend:
+   * Not used
+   * for backend:
+   * Corresponds to pci domain value
+   * 
+ * + * .google.protobuf.Int32Value domain_id = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + com.google.protobuf.Int32ValueOrBuilder getDomainIdOrBuilder(); } diff --git a/storage/v1alpha1/gen/python/backend_nvme_pb2.py b/storage/v1alpha1/gen/python/backend_nvme_pb2.py index 6315c5ea..100f9865 100644 --- a/storage/v1alpha1/gen/python/backend_nvme_pb2.py +++ b/storage/v1alpha1/gen/python/backend_nvme_pb2.py @@ -21,7 +21,7 @@ import uuid_pb2 as uuid__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x12\x62\x61\x63kend_nvme.proto\x12\x12opi_api.storage.v1\x1a\x17google/api/client.proto\x1a\x19google/api/resource.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1cgoogle/api/annotations.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a google/protobuf/field_mask.proto\x1a\x0fopicommon.proto\x1a\nuuid.proto\"\xcb\x02\n\x14NvmeRemoteController\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x08\x12\x39\n\tmultipath\x18\x02 \x01(\x0e\x32!.opi_api.storage.v1.NvmeMultipathB\x03\xe0\x41\x02\x12\x1c\n\x0fio_queues_count\x18\x03 \x01(\x03\x42\x03\xe0\x41\x01\x12\x17\n\nqueue_size\x18\x04 \x01(\x03\x42\x03\xe0\x41\x01\x12\x33\n\x03tcp\x18\x05 \x01(\x0b\x32!.opi_api.storage.v1.TcpControllerB\x03\xe0\x41\x01:y\xea\x41v\n\'opi_api.storage.v1/NvmeRemoteController\x12\x1envmeRemoteControllers/{volume}*\x15nvmeRemoteControllers2\x14nvmeRemoteController\"I\n\rTcpController\x12\x12\n\x05hdgst\x18\x01 \x01(\x08\x42\x03\xe0\x41\x01\x12\x12\n\x05\x64\x64gst\x18\x02 \x01(\x08\x42\x03\xe0\x41\x01\x12\x10\n\x03psk\x18\x03 \x01(\x0c\x42\x03\xe0\x41\x01\"\xbe\x02\n\x08NvmePath\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x08\x12L\n\x13\x63ontroller_name_ref\x18\x02 \x01(\tB/\xe0\x41\x02\xfa\x41)\n\'opi_api.storage.v1/NvmeRemoteController\x12:\n\x06trtype\x18\x03 \x01(\x0e\x32%.opi_api.storage.v1.NvmeTransportTypeB\x03\xe0\x41\x02\x12\x13\n\x06traddr\x18\x04 \x01(\tB\x03\xe0\x41\x02\x12\x35\n\x07\x66\x61\x62rics\x18\x05 \x01(\x0b\x32\x1f.opi_api.storage.v1.FabricsPathB\x03\xe0\x41\x01:I\xea\x41\x46\n\x1bopi_api.storage.v1/NvmePath\x12\x12nvmePaths/{volume}*\tnvmePaths2\x08nvmePath\"\xc3\x01\n\x0b\x46\x61\x62ricsPath\x12\x14\n\x07trsvcid\x18\x01 \x01(\x03\x42\x03\xe0\x41\x02\x12\x13\n\x06subnqn\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12:\n\x06\x61\x64rfam\x18\x03 \x01(\x0e\x32%.opi_api.storage.v1.NvmeAddressFamilyB\x03\xe0\x41\x02\x12\x1a\n\rsource_traddr\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x1b\n\x0esource_trsvcid\x18\x05 \x01(\x03\x42\x03\xe0\x41\x01\x12\x14\n\x07hostnqn\x18\x06 \x01(\tB\x03\xe0\x41\x01\"\xd4\x02\n\x13NvmeRemoteNamespace\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x08\x12L\n\x13\x63ontroller_name_ref\x18\x02 \x01(\tB/\xe0\x41\x03\xfa\x41)\n\'opi_api.storage.v1/NvmeRemoteController\x12\x11\n\x04nsid\x18\x03 \x01(\x05\x42\x03\xe0\x41\x03\x12\x12\n\x05nguid\x18\x04 \x01(\tB\x03\xe0\x41\x03\x12\x12\n\x05\x65ui64\x18\x05 \x01(\x03\x42\x03\xe0\x41\x03\x12*\n\x04uuid\x18\x06 \x01(\x0b\x32\x17.opi_api.common.v1.UuidB\x03\xe0\x41\x03:u\xea\x41r\n&opi_api.storage.v1/NvmeRemoteNamespace\x12\x1dnvmeRemoteNamespaces/{volume}*\x14nvmeRemoteNamespaces2\x13nvmeRemoteNamespace\"\x9a\x01\n!CreateNvmeRemoteControllerRequest\x12M\n\x16nvme_remote_controller\x18\x01 \x01(\x0b\x32(.opi_api.storage.v1.NvmeRemoteControllerB\x03\xe0\x41\x02\x12&\n\x19nvme_remote_controller_id\x18\x02 \x01(\tB\x03\xe0\x41\x01\"~\n!DeleteNvmeRemoteControllerRequest\x12=\n\x04name\x18\x01 \x01(\tB/\xe0\x41\x02\xfa\x41)\n\'opi_api.storage.v1/NvmeRemoteController\x12\x1a\n\rallow_missing\x18\x02 \x01(\x08\x42\x03\xe0\x41\x01\"\xc4\x01\n!UpdateNvmeRemoteControllerRequest\x12M\n\x16nvme_remote_controller\x18\x01 \x01(\x0b\x32(.opi_api.storage.v1.NvmeRemoteControllerB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x01\x12\x1a\n\rallow_missing\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01\"\x94\x01\n ListNvmeRemoteControllersRequest\x12?\n\x06parent\x18\x01 \x01(\tB/\xe0\x41\x02\xfa\x41)\x12\'opi_api.storage.v1/NvmeRemoteController\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\"\x87\x01\n!ListNvmeRemoteControllersResponse\x12I\n\x17nvme_remote_controllers\x18\x01 \x03(\x0b\x32(.opi_api.storage.v1.NvmeRemoteController\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"_\n\x1eGetNvmeRemoteControllerRequest\x12=\n\x04name\x18\x01 \x01(\tB/\xe0\x41\x02\xfa\x41)\n\'opi_api.storage.v1/NvmeRemoteController\"a\n ResetNvmeRemoteControllerRequest\x12=\n\x04name\x18\x01 \x01(\tB/\xe0\x41\x02\xfa\x41)\n\'opi_api.storage.v1/NvmeRemoteController\"a\n StatsNvmeRemoteControllerRequest\x12=\n\x04name\x18\x01 \x01(\tB/\xe0\x41\x02\xfa\x41)\n\'opi_api.storage.v1/NvmeRemoteController\"S\n!StatsNvmeRemoteControllerResponse\x12.\n\x05stats\x18\x01 \x01(\x0b\x32\x1f.opi_api.storage.v1.VolumeStats\"\x92\x01\n\x1fListNvmeRemoteNamespacesRequest\x12>\n\x06parent\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\x12&opi_api.storage.v1/NvmeRemoteNamespace\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\"\x84\x01\n ListNvmeRemoteNamespacesResponse\x12G\n\x16nvme_remote_namespaces\x18\x01 \x03(\x0b\x32\'.opi_api.storage.v1.NvmeRemoteNamespace\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"]\n\x1dGetNvmeRemoteNamespaceRequest\x12<\n\x04name\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&opi_api.storage.v1/NvmeRemoteNamespace\"h\n\x15\x43reateNvmePathRequest\x12\x34\n\tnvme_path\x18\x01 \x01(\x0b\x32\x1c.opi_api.storage.v1.NvmePathB\x03\xe0\x41\x02\x12\x19\n\x0cnvme_path_id\x18\x02 \x01(\tB\x03\xe0\x41\x01\"f\n\x15\x44\x65leteNvmePathRequest\x12\x31\n\x04name\x18\x01 \x01(\tB#\xe0\x41\x02\xfa\x41\x1d\n\x1bopi_api.storage.v1/NvmePath\x12\x1a\n\rallow_missing\x18\x02 \x01(\x08\x42\x03\xe0\x41\x01\"\x9f\x01\n\x15UpdateNvmePathRequest\x12\x34\n\tnvme_path\x18\x01 \x01(\x0b\x32\x1c.opi_api.storage.v1.NvmePathB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x01\x12\x1a\n\rallow_missing\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01\"|\n\x14ListNvmePathsRequest\x12\x33\n\x06parent\x18\x01 \x01(\tB#\xe0\x41\x02\xfa\x41\x1d\x12\x1bopi_api.storage.v1/NvmePath\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\"b\n\x15ListNvmePathsResponse\x12\x30\n\nnvme_paths\x18\x01 \x03(\x0b\x32\x1c.opi_api.storage.v1.NvmePath\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"G\n\x12GetNvmePathRequest\x12\x31\n\x04name\x18\x01 \x01(\tB#\xe0\x41\x02\xfa\x41\x1d\n\x1bopi_api.storage.v1/NvmePath\"I\n\x14StatsNvmePathRequest\x12\x31\n\x04name\x18\x01 \x01(\tB#\xe0\x41\x02\xfa\x41\x1d\n\x1bopi_api.storage.v1/NvmePath\"G\n\x15StatsNvmePathResponse\x12.\n\x05stats\x18\x01 \x01(\x0b\x32\x1f.opi_api.storage.v1.VolumeStats*\x86\x01\n\rNvmeMultipath\x12\x1e\n\x1aNVME_MULTIPATH_UNSPECIFIED\x10\x00\x12\x1a\n\x16NVME_MULTIPATH_DISABLE\x10\x01\x12\x1b\n\x17NVME_MULTIPATH_FAILOVER\x10\x02\x12\x1c\n\x18NVME_MULTIPATH_MULTIPATH\x10\x03\x32\xb2\x14\n\x1bNvmeRemoteControllerService\x12\xeb\x01\n\x1a\x43reateNvmeRemoteController\x12\x35.opi_api.storage.v1.CreateNvmeRemoteControllerRequest\x1a(.opi_api.storage.v1.NvmeRemoteController\"l\x82\xd3\xe4\x93\x02\x33\"\x19/v1/nvmeRemoteControllers:\x16nvme_remote_controller\xda\x41\x30nvme_remote_controller,nvme_remote_controller_id\x12\x9e\x01\n\x1a\x44\x65leteNvmeRemoteController\x12\x35.opi_api.storage.v1.DeleteNvmeRemoteControllerRequest\x1a\x16.google.protobuf.Empty\"1\x82\xd3\xe4\x93\x02$*\"/v1/{name=nvmeRemoteControllers/*}\xda\x41\x04name\x12\xfd\x01\n\x1aUpdateNvmeRemoteController\x12\x35.opi_api.storage.v1.UpdateNvmeRemoteControllerRequest\x1a(.opi_api.storage.v1.NvmeRemoteController\"~\x82\xd3\xe4\x93\x02S29/v1/{nvme_remote_controller.name=nvmeRemoteControllers/*}:\x16nvme_remote_controller\xda\x41\"nvme_remote_controller,update_mask\x12\xb2\x01\n\x19ListNvmeRemoteControllers\x12\x34.opi_api.storage.v1.ListNvmeRemoteControllersRequest\x1a\x35.opi_api.storage.v1.ListNvmeRemoteControllersResponse\"(\x82\xd3\xe4\x93\x02\x19\x12\x17/v1/{parent=subsystems}\xda\x41\x06parent\x12\xaa\x01\n\x17GetNvmeRemoteController\x12\x32.opi_api.storage.v1.GetNvmeRemoteControllerRequest\x1a(.opi_api.storage.v1.NvmeRemoteController\"1\x82\xd3\xe4\x93\x02$\x12\"/v1/{name=nvmeRemoteControllers/*}\xda\x41\x04name\x12\xa5\x01\n\x19ResetNvmeRemoteController\x12\x34.opi_api.storage.v1.ResetNvmeRemoteControllerRequest\x1a\x16.google.protobuf.Empty\":\x82\xd3\xe4\x93\x02-\"(/v1/{name=nvmeRemoteControllers/*}:reset:\x01*\xda\x41\x04name\x12\xc1\x01\n\x19StatsNvmeRemoteController\x12\x34.opi_api.storage.v1.StatsNvmeRemoteControllerRequest\x1a\x35.opi_api.storage.v1.StatsNvmeRemoteControllerResponse\"7\x82\xd3\xe4\x93\x02*\x12(/v1/{name=nvmeRemoteControllers/*}:stats\xda\x41\x04name\x12\xaf\x01\n\x18ListNvmeRemoteNamespaces\x12\x33.opi_api.storage.v1.ListNvmeRemoteNamespacesRequest\x1a\x34.opi_api.storage.v1.ListNvmeRemoteNamespacesResponse\"(\x82\xd3\xe4\x93\x02\x19\x12\x17/v1/{parent=subsystems}\xda\x41\x06parent\x12\xa6\x01\n\x16GetNvmeRemoteNamespace\x12\x31.opi_api.storage.v1.GetNvmeRemoteNamespaceRequest\x1a\'.opi_api.storage.v1.NvmeRemoteNamespace\"0\x82\xd3\xe4\x93\x02#\x12!/v1/{name=nvmeRemoteNamespaces/*}\xda\x41\x04name\x12\x94\x01\n\x0e\x43reateNvmePath\x12).opi_api.storage.v1.CreateNvmePathRequest\x1a\x1c.opi_api.storage.v1.NvmePath\"9\x82\xd3\xe4\x93\x02\x1a\"\r/v1/nvmePaths:\tnvme_path\xda\x41\x16nvme_path,nvme_path_id\x12z\n\x0e\x44\x65leteNvmePath\x12).opi_api.storage.v1.DeleteNvmePathRequest\x1a\x16.google.protobuf.Empty\"%\x82\xd3\xe4\x93\x02\x18*\x16/v1/{name=nvmePaths/*}\xda\x41\x04name\x12\xa6\x01\n\x0eUpdateNvmePath\x12).opi_api.storage.v1.UpdateNvmePathRequest\x1a\x1c.opi_api.storage.v1.NvmePath\"K\x82\xd3\xe4\x93\x02-2 /v1/{nvme_path.name=nvmePaths/*}:\tnvme_path\xda\x41\x15nvme_path,update_mask\x12\x8e\x01\n\rListNvmePaths\x12(.opi_api.storage.v1.ListNvmePathsRequest\x1a).opi_api.storage.v1.ListNvmePathsResponse\"(\x82\xd3\xe4\x93\x02\x19\x12\x17/v1/{parent=subsystems}\xda\x41\x06parent\x12z\n\x0bGetNvmePath\x12&.opi_api.storage.v1.GetNvmePathRequest\x1a\x1c.opi_api.storage.v1.NvmePath\"%\x82\xd3\xe4\x93\x02\x18\x12\x16/v1/{name=nvmePaths/*}\xda\x41\x04name\x12\x91\x01\n\rStatsNvmePath\x12(.opi_api.storage.v1.StatsNvmePathRequest\x1a).opi_api.storage.v1.StatsNvmePathResponse\"+\x82\xd3\xe4\x93\x02\x1e\x12\x1c/v1/{name=nvmePaths/*}:stats\xda\x41\x04nameB_\n\x12opi_api.storage.v1B\x10\x42\x61\x63kendNvmeProtoP\x01Z5github.com/opiproject/opi-api/storage/v1alpha1/gen/gob\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x12\x62\x61\x63kend_nvme.proto\x12\x12opi_api.storage.v1\x1a\x17google/api/client.proto\x1a\x19google/api/resource.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1cgoogle/api/annotations.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a google/protobuf/field_mask.proto\x1a\x0fopicommon.proto\x1a\nuuid.proto\"\xf6\x02\n\x14NvmeRemoteController\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x08\x12\x39\n\tmultipath\x18\x02 \x01(\x0e\x32!.opi_api.storage.v1.NvmeMultipathB\x03\xe0\x41\x02\x12\x13\n\x06subnqn\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x14\n\x07hostnqn\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x1c\n\x0fio_queues_count\x18\x05 \x01(\x03\x42\x03\xe0\x41\x01\x12\x17\n\nqueue_size\x18\x06 \x01(\x03\x42\x03\xe0\x41\x01\x12\x33\n\x03tcp\x18\x07 \x01(\x0b\x32!.opi_api.storage.v1.TcpControllerB\x03\xe0\x41\x01:y\xea\x41v\n\'opi_api.storage.v1/NvmeRemoteController\x12\x1envmeRemoteControllers/{volume}*\x15nvmeRemoteControllers2\x14nvmeRemoteController\"I\n\rTcpController\x12\x12\n\x05hdgst\x18\x01 \x01(\x08\x42\x03\xe0\x41\x01\x12\x12\n\x05\x64\x64gst\x18\x02 \x01(\x08\x42\x03\xe0\x41\x01\x12\x10\n\x03psk\x18\x03 \x01(\x0c\x42\x03\xe0\x41\x01\"\xf1\x02\n\x08NvmePath\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x08\x12L\n\x13\x63ontroller_name_ref\x18\x02 \x01(\tB/\xe0\x41\x02\xfa\x41)\n\'opi_api.storage.v1/NvmeRemoteController\x12:\n\x06trtype\x18\x03 \x01(\x0e\x32%.opi_api.storage.v1.NvmeTransportTypeB\x03\xe0\x41\x02\x12\x34\n\x04pcie\x18\x04 \x01(\x0b\x32\x1f.opi_api.storage.v1.PciEndpointB\x03\xe0\x41\x01H\x00\x12;\n\x07\x66\x61\x62rics\x18\x05 \x01(\x0b\x32#.opi_api.storage.v1.FabricsEndpointB\x03\xe0\x41\x01H\x00:I\xea\x41\x46\n\x1bopi_api.storage.v1/NvmePath\x12\x12nvmePaths/{volume}*\tnvmePaths2\x08nvmePathB\n\n\x08\x65ndpoint\"\xd4\x02\n\x13NvmeRemoteNamespace\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x08\x12L\n\x13\x63ontroller_name_ref\x18\x02 \x01(\tB/\xe0\x41\x03\xfa\x41)\n\'opi_api.storage.v1/NvmeRemoteController\x12\x11\n\x04nsid\x18\x03 \x01(\x05\x42\x03\xe0\x41\x03\x12\x12\n\x05nguid\x18\x04 \x01(\tB\x03\xe0\x41\x03\x12\x12\n\x05\x65ui64\x18\x05 \x01(\x03\x42\x03\xe0\x41\x03\x12*\n\x04uuid\x18\x06 \x01(\x0b\x32\x17.opi_api.common.v1.UuidB\x03\xe0\x41\x03:u\xea\x41r\n&opi_api.storage.v1/NvmeRemoteNamespace\x12\x1dnvmeRemoteNamespaces/{volume}*\x14nvmeRemoteNamespaces2\x13nvmeRemoteNamespace\"\x9a\x01\n!CreateNvmeRemoteControllerRequest\x12M\n\x16nvme_remote_controller\x18\x01 \x01(\x0b\x32(.opi_api.storage.v1.NvmeRemoteControllerB\x03\xe0\x41\x02\x12&\n\x19nvme_remote_controller_id\x18\x02 \x01(\tB\x03\xe0\x41\x01\"~\n!DeleteNvmeRemoteControllerRequest\x12=\n\x04name\x18\x01 \x01(\tB/\xe0\x41\x02\xfa\x41)\n\'opi_api.storage.v1/NvmeRemoteController\x12\x1a\n\rallow_missing\x18\x02 \x01(\x08\x42\x03\xe0\x41\x01\"\xc4\x01\n!UpdateNvmeRemoteControllerRequest\x12M\n\x16nvme_remote_controller\x18\x01 \x01(\x0b\x32(.opi_api.storage.v1.NvmeRemoteControllerB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x01\x12\x1a\n\rallow_missing\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01\"\x94\x01\n ListNvmeRemoteControllersRequest\x12?\n\x06parent\x18\x01 \x01(\tB/\xe0\x41\x02\xfa\x41)\x12\'opi_api.storage.v1/NvmeRemoteController\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\"\x87\x01\n!ListNvmeRemoteControllersResponse\x12I\n\x17nvme_remote_controllers\x18\x01 \x03(\x0b\x32(.opi_api.storage.v1.NvmeRemoteController\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"_\n\x1eGetNvmeRemoteControllerRequest\x12=\n\x04name\x18\x01 \x01(\tB/\xe0\x41\x02\xfa\x41)\n\'opi_api.storage.v1/NvmeRemoteController\"a\n ResetNvmeRemoteControllerRequest\x12=\n\x04name\x18\x01 \x01(\tB/\xe0\x41\x02\xfa\x41)\n\'opi_api.storage.v1/NvmeRemoteController\"a\n StatsNvmeRemoteControllerRequest\x12=\n\x04name\x18\x01 \x01(\tB/\xe0\x41\x02\xfa\x41)\n\'opi_api.storage.v1/NvmeRemoteController\"S\n!StatsNvmeRemoteControllerResponse\x12.\n\x05stats\x18\x01 \x01(\x0b\x32\x1f.opi_api.storage.v1.VolumeStats\"\x92\x01\n\x1fListNvmeRemoteNamespacesRequest\x12>\n\x06parent\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\x12&opi_api.storage.v1/NvmeRemoteNamespace\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\"\x84\x01\n ListNvmeRemoteNamespacesResponse\x12G\n\x16nvme_remote_namespaces\x18\x01 \x03(\x0b\x32\'.opi_api.storage.v1.NvmeRemoteNamespace\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"]\n\x1dGetNvmeRemoteNamespaceRequest\x12<\n\x04name\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&opi_api.storage.v1/NvmeRemoteNamespace\"h\n\x15\x43reateNvmePathRequest\x12\x34\n\tnvme_path\x18\x01 \x01(\x0b\x32\x1c.opi_api.storage.v1.NvmePathB\x03\xe0\x41\x02\x12\x19\n\x0cnvme_path_id\x18\x02 \x01(\tB\x03\xe0\x41\x01\"f\n\x15\x44\x65leteNvmePathRequest\x12\x31\n\x04name\x18\x01 \x01(\tB#\xe0\x41\x02\xfa\x41\x1d\n\x1bopi_api.storage.v1/NvmePath\x12\x1a\n\rallow_missing\x18\x02 \x01(\x08\x42\x03\xe0\x41\x01\"\x9f\x01\n\x15UpdateNvmePathRequest\x12\x34\n\tnvme_path\x18\x01 \x01(\x0b\x32\x1c.opi_api.storage.v1.NvmePathB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x01\x12\x1a\n\rallow_missing\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01\"|\n\x14ListNvmePathsRequest\x12\x33\n\x06parent\x18\x01 \x01(\tB#\xe0\x41\x02\xfa\x41\x1d\x12\x1bopi_api.storage.v1/NvmePath\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\"b\n\x15ListNvmePathsResponse\x12\x30\n\nnvme_paths\x18\x01 \x03(\x0b\x32\x1c.opi_api.storage.v1.NvmePath\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"G\n\x12GetNvmePathRequest\x12\x31\n\x04name\x18\x01 \x01(\tB#\xe0\x41\x02\xfa\x41\x1d\n\x1bopi_api.storage.v1/NvmePath\"I\n\x14StatsNvmePathRequest\x12\x31\n\x04name\x18\x01 \x01(\tB#\xe0\x41\x02\xfa\x41\x1d\n\x1bopi_api.storage.v1/NvmePath\"G\n\x15StatsNvmePathResponse\x12.\n\x05stats\x18\x01 \x01(\x0b\x32\x1f.opi_api.storage.v1.VolumeStats*\x86\x01\n\rNvmeMultipath\x12\x1e\n\x1aNVME_MULTIPATH_UNSPECIFIED\x10\x00\x12\x1a\n\x16NVME_MULTIPATH_DISABLE\x10\x01\x12\x1b\n\x17NVME_MULTIPATH_FAILOVER\x10\x02\x12\x1c\n\x18NVME_MULTIPATH_MULTIPATH\x10\x03\x32\xb2\x14\n\x1bNvmeRemoteControllerService\x12\xeb\x01\n\x1a\x43reateNvmeRemoteController\x12\x35.opi_api.storage.v1.CreateNvmeRemoteControllerRequest\x1a(.opi_api.storage.v1.NvmeRemoteController\"l\x82\xd3\xe4\x93\x02\x33\"\x19/v1/nvmeRemoteControllers:\x16nvme_remote_controller\xda\x41\x30nvme_remote_controller,nvme_remote_controller_id\x12\x9e\x01\n\x1a\x44\x65leteNvmeRemoteController\x12\x35.opi_api.storage.v1.DeleteNvmeRemoteControllerRequest\x1a\x16.google.protobuf.Empty\"1\x82\xd3\xe4\x93\x02$*\"/v1/{name=nvmeRemoteControllers/*}\xda\x41\x04name\x12\xfd\x01\n\x1aUpdateNvmeRemoteController\x12\x35.opi_api.storage.v1.UpdateNvmeRemoteControllerRequest\x1a(.opi_api.storage.v1.NvmeRemoteController\"~\x82\xd3\xe4\x93\x02S29/v1/{nvme_remote_controller.name=nvmeRemoteControllers/*}:\x16nvme_remote_controller\xda\x41\"nvme_remote_controller,update_mask\x12\xb2\x01\n\x19ListNvmeRemoteControllers\x12\x34.opi_api.storage.v1.ListNvmeRemoteControllersRequest\x1a\x35.opi_api.storage.v1.ListNvmeRemoteControllersResponse\"(\x82\xd3\xe4\x93\x02\x19\x12\x17/v1/{parent=subsystems}\xda\x41\x06parent\x12\xaa\x01\n\x17GetNvmeRemoteController\x12\x32.opi_api.storage.v1.GetNvmeRemoteControllerRequest\x1a(.opi_api.storage.v1.NvmeRemoteController\"1\x82\xd3\xe4\x93\x02$\x12\"/v1/{name=nvmeRemoteControllers/*}\xda\x41\x04name\x12\xa5\x01\n\x19ResetNvmeRemoteController\x12\x34.opi_api.storage.v1.ResetNvmeRemoteControllerRequest\x1a\x16.google.protobuf.Empty\":\x82\xd3\xe4\x93\x02-\"(/v1/{name=nvmeRemoteControllers/*}:reset:\x01*\xda\x41\x04name\x12\xc1\x01\n\x19StatsNvmeRemoteController\x12\x34.opi_api.storage.v1.StatsNvmeRemoteControllerRequest\x1a\x35.opi_api.storage.v1.StatsNvmeRemoteControllerResponse\"7\x82\xd3\xe4\x93\x02*\x12(/v1/{name=nvmeRemoteControllers/*}:stats\xda\x41\x04name\x12\xaf\x01\n\x18ListNvmeRemoteNamespaces\x12\x33.opi_api.storage.v1.ListNvmeRemoteNamespacesRequest\x1a\x34.opi_api.storage.v1.ListNvmeRemoteNamespacesResponse\"(\x82\xd3\xe4\x93\x02\x19\x12\x17/v1/{parent=subsystems}\xda\x41\x06parent\x12\xa6\x01\n\x16GetNvmeRemoteNamespace\x12\x31.opi_api.storage.v1.GetNvmeRemoteNamespaceRequest\x1a\'.opi_api.storage.v1.NvmeRemoteNamespace\"0\x82\xd3\xe4\x93\x02#\x12!/v1/{name=nvmeRemoteNamespaces/*}\xda\x41\x04name\x12\x94\x01\n\x0e\x43reateNvmePath\x12).opi_api.storage.v1.CreateNvmePathRequest\x1a\x1c.opi_api.storage.v1.NvmePath\"9\x82\xd3\xe4\x93\x02\x1a\"\r/v1/nvmePaths:\tnvme_path\xda\x41\x16nvme_path,nvme_path_id\x12z\n\x0e\x44\x65leteNvmePath\x12).opi_api.storage.v1.DeleteNvmePathRequest\x1a\x16.google.protobuf.Empty\"%\x82\xd3\xe4\x93\x02\x18*\x16/v1/{name=nvmePaths/*}\xda\x41\x04name\x12\xa6\x01\n\x0eUpdateNvmePath\x12).opi_api.storage.v1.UpdateNvmePathRequest\x1a\x1c.opi_api.storage.v1.NvmePath\"K\x82\xd3\xe4\x93\x02-2 /v1/{nvme_path.name=nvmePaths/*}:\tnvme_path\xda\x41\x15nvme_path,update_mask\x12\x8e\x01\n\rListNvmePaths\x12(.opi_api.storage.v1.ListNvmePathsRequest\x1a).opi_api.storage.v1.ListNvmePathsResponse\"(\x82\xd3\xe4\x93\x02\x19\x12\x17/v1/{parent=subsystems}\xda\x41\x06parent\x12z\n\x0bGetNvmePath\x12&.opi_api.storage.v1.GetNvmePathRequest\x1a\x1c.opi_api.storage.v1.NvmePath\"%\x82\xd3\xe4\x93\x02\x18\x12\x16/v1/{name=nvmePaths/*}\xda\x41\x04name\x12\x91\x01\n\rStatsNvmePath\x12(.opi_api.storage.v1.StatsNvmePathRequest\x1a).opi_api.storage.v1.StatsNvmePathResponse\"+\x82\xd3\xe4\x93\x02\x1e\x12\x1c/v1/{name=nvmePaths/*}:stats\xda\x41\x04nameB_\n\x12opi_api.storage.v1B\x10\x42\x61\x63kendNvmeProtoP\x01Z5github.com/opiproject/opi-api/storage/v1alpha1/gen/gob\x06proto3') _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals()) _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'backend_nvme_pb2', globals()) @@ -33,6 +33,10 @@ _NVMEREMOTECONTROLLER.fields_by_name['name']._serialized_options = b'\340A\010' _NVMEREMOTECONTROLLER.fields_by_name['multipath']._options = None _NVMEREMOTECONTROLLER.fields_by_name['multipath']._serialized_options = b'\340A\002' + _NVMEREMOTECONTROLLER.fields_by_name['subnqn']._options = None + _NVMEREMOTECONTROLLER.fields_by_name['subnqn']._serialized_options = b'\340A\001' + _NVMEREMOTECONTROLLER.fields_by_name['hostnqn']._options = None + _NVMEREMOTECONTROLLER.fields_by_name['hostnqn']._serialized_options = b'\340A\001' _NVMEREMOTECONTROLLER.fields_by_name['io_queues_count']._options = None _NVMEREMOTECONTROLLER.fields_by_name['io_queues_count']._serialized_options = b'\340A\001' _NVMEREMOTECONTROLLER.fields_by_name['queue_size']._options = None @@ -53,24 +57,12 @@ _NVMEPATH.fields_by_name['controller_name_ref']._serialized_options = b'\340A\002\372A)\n\'opi_api.storage.v1/NvmeRemoteController' _NVMEPATH.fields_by_name['trtype']._options = None _NVMEPATH.fields_by_name['trtype']._serialized_options = b'\340A\002' - _NVMEPATH.fields_by_name['traddr']._options = None - _NVMEPATH.fields_by_name['traddr']._serialized_options = b'\340A\002' + _NVMEPATH.fields_by_name['pcie']._options = None + _NVMEPATH.fields_by_name['pcie']._serialized_options = b'\340A\001' _NVMEPATH.fields_by_name['fabrics']._options = None _NVMEPATH.fields_by_name['fabrics']._serialized_options = b'\340A\001' _NVMEPATH._options = None _NVMEPATH._serialized_options = b'\352AF\n\033opi_api.storage.v1/NvmePath\022\022nvmePaths/{volume}*\tnvmePaths2\010nvmePath' - _FABRICSPATH.fields_by_name['trsvcid']._options = None - _FABRICSPATH.fields_by_name['trsvcid']._serialized_options = b'\340A\002' - _FABRICSPATH.fields_by_name['subnqn']._options = None - _FABRICSPATH.fields_by_name['subnqn']._serialized_options = b'\340A\002' - _FABRICSPATH.fields_by_name['adrfam']._options = None - _FABRICSPATH.fields_by_name['adrfam']._serialized_options = b'\340A\002' - _FABRICSPATH.fields_by_name['source_traddr']._options = None - _FABRICSPATH.fields_by_name['source_traddr']._serialized_options = b'\340A\001' - _FABRICSPATH.fields_by_name['source_trsvcid']._options = None - _FABRICSPATH.fields_by_name['source_trsvcid']._serialized_options = b'\340A\001' - _FABRICSPATH.fields_by_name['hostnqn']._options = None - _FABRICSPATH.fields_by_name['hostnqn']._serialized_options = b'\340A\001' _NVMEREMOTENAMESPACE.fields_by_name['name']._options = None _NVMEREMOTENAMESPACE.fields_by_name['name']._serialized_options = b'\340A\010' _NVMEREMOTENAMESPACE.fields_by_name['controller_name_ref']._options = None @@ -173,58 +165,56 @@ _NVMEREMOTECONTROLLERSERVICE.methods_by_name['GetNvmePath']._serialized_options = b'\202\323\344\223\002\030\022\026/v1/{name=nvmePaths/*}\332A\004name' _NVMEREMOTECONTROLLERSERVICE.methods_by_name['StatsNvmePath']._options = None _NVMEREMOTECONTROLLERSERVICE.methods_by_name['StatsNvmePath']._serialized_options = b'\202\323\344\223\002\036\022\034/v1/{name=nvmePaths/*}:stats\332A\004name' - _NVMEMULTIPATH._serialized_start=3872 - _NVMEMULTIPATH._serialized_end=4006 + _NVMEMULTIPATH._serialized_start=3768 + _NVMEMULTIPATH._serialized_end=3902 _NVMEREMOTECONTROLLER._serialized_start=250 - _NVMEREMOTECONTROLLER._serialized_end=581 - _TCPCONTROLLER._serialized_start=583 - _TCPCONTROLLER._serialized_end=656 - _NVMEPATH._serialized_start=659 - _NVMEPATH._serialized_end=977 - _FABRICSPATH._serialized_start=980 - _FABRICSPATH._serialized_end=1175 - _NVMEREMOTENAMESPACE._serialized_start=1178 - _NVMEREMOTENAMESPACE._serialized_end=1518 - _CREATENVMEREMOTECONTROLLERREQUEST._serialized_start=1521 - _CREATENVMEREMOTECONTROLLERREQUEST._serialized_end=1675 - _DELETENVMEREMOTECONTROLLERREQUEST._serialized_start=1677 - _DELETENVMEREMOTECONTROLLERREQUEST._serialized_end=1803 - _UPDATENVMEREMOTECONTROLLERREQUEST._serialized_start=1806 - _UPDATENVMEREMOTECONTROLLERREQUEST._serialized_end=2002 - _LISTNVMEREMOTECONTROLLERSREQUEST._serialized_start=2005 - _LISTNVMEREMOTECONTROLLERSREQUEST._serialized_end=2153 - _LISTNVMEREMOTECONTROLLERSRESPONSE._serialized_start=2156 - _LISTNVMEREMOTECONTROLLERSRESPONSE._serialized_end=2291 - _GETNVMEREMOTECONTROLLERREQUEST._serialized_start=2293 - _GETNVMEREMOTECONTROLLERREQUEST._serialized_end=2388 - _RESETNVMEREMOTECONTROLLERREQUEST._serialized_start=2390 - _RESETNVMEREMOTECONTROLLERREQUEST._serialized_end=2487 - _STATSNVMEREMOTECONTROLLERREQUEST._serialized_start=2489 - _STATSNVMEREMOTECONTROLLERREQUEST._serialized_end=2586 - _STATSNVMEREMOTECONTROLLERRESPONSE._serialized_start=2588 - _STATSNVMEREMOTECONTROLLERRESPONSE._serialized_end=2671 - _LISTNVMEREMOTENAMESPACESREQUEST._serialized_start=2674 - _LISTNVMEREMOTENAMESPACESREQUEST._serialized_end=2820 - _LISTNVMEREMOTENAMESPACESRESPONSE._serialized_start=2823 - _LISTNVMEREMOTENAMESPACESRESPONSE._serialized_end=2955 - _GETNVMEREMOTENAMESPACEREQUEST._serialized_start=2957 - _GETNVMEREMOTENAMESPACEREQUEST._serialized_end=3050 - _CREATENVMEPATHREQUEST._serialized_start=3052 - _CREATENVMEPATHREQUEST._serialized_end=3156 - _DELETENVMEPATHREQUEST._serialized_start=3158 - _DELETENVMEPATHREQUEST._serialized_end=3260 - _UPDATENVMEPATHREQUEST._serialized_start=3263 - _UPDATENVMEPATHREQUEST._serialized_end=3422 - _LISTNVMEPATHSREQUEST._serialized_start=3424 - _LISTNVMEPATHSREQUEST._serialized_end=3548 - _LISTNVMEPATHSRESPONSE._serialized_start=3550 - _LISTNVMEPATHSRESPONSE._serialized_end=3648 - _GETNVMEPATHREQUEST._serialized_start=3650 - _GETNVMEPATHREQUEST._serialized_end=3721 - _STATSNVMEPATHREQUEST._serialized_start=3723 - _STATSNVMEPATHREQUEST._serialized_end=3796 - _STATSNVMEPATHRESPONSE._serialized_start=3798 - _STATSNVMEPATHRESPONSE._serialized_end=3869 - _NVMEREMOTECONTROLLERSERVICE._serialized_start=4009 - _NVMEREMOTECONTROLLERSERVICE._serialized_end=6619 + _NVMEREMOTECONTROLLER._serialized_end=624 + _TCPCONTROLLER._serialized_start=626 + _TCPCONTROLLER._serialized_end=699 + _NVMEPATH._serialized_start=702 + _NVMEPATH._serialized_end=1071 + _NVMEREMOTENAMESPACE._serialized_start=1074 + _NVMEREMOTENAMESPACE._serialized_end=1414 + _CREATENVMEREMOTECONTROLLERREQUEST._serialized_start=1417 + _CREATENVMEREMOTECONTROLLERREQUEST._serialized_end=1571 + _DELETENVMEREMOTECONTROLLERREQUEST._serialized_start=1573 + _DELETENVMEREMOTECONTROLLERREQUEST._serialized_end=1699 + _UPDATENVMEREMOTECONTROLLERREQUEST._serialized_start=1702 + _UPDATENVMEREMOTECONTROLLERREQUEST._serialized_end=1898 + _LISTNVMEREMOTECONTROLLERSREQUEST._serialized_start=1901 + _LISTNVMEREMOTECONTROLLERSREQUEST._serialized_end=2049 + _LISTNVMEREMOTECONTROLLERSRESPONSE._serialized_start=2052 + _LISTNVMEREMOTECONTROLLERSRESPONSE._serialized_end=2187 + _GETNVMEREMOTECONTROLLERREQUEST._serialized_start=2189 + _GETNVMEREMOTECONTROLLERREQUEST._serialized_end=2284 + _RESETNVMEREMOTECONTROLLERREQUEST._serialized_start=2286 + _RESETNVMEREMOTECONTROLLERREQUEST._serialized_end=2383 + _STATSNVMEREMOTECONTROLLERREQUEST._serialized_start=2385 + _STATSNVMEREMOTECONTROLLERREQUEST._serialized_end=2482 + _STATSNVMEREMOTECONTROLLERRESPONSE._serialized_start=2484 + _STATSNVMEREMOTECONTROLLERRESPONSE._serialized_end=2567 + _LISTNVMEREMOTENAMESPACESREQUEST._serialized_start=2570 + _LISTNVMEREMOTENAMESPACESREQUEST._serialized_end=2716 + _LISTNVMEREMOTENAMESPACESRESPONSE._serialized_start=2719 + _LISTNVMEREMOTENAMESPACESRESPONSE._serialized_end=2851 + _GETNVMEREMOTENAMESPACEREQUEST._serialized_start=2853 + _GETNVMEREMOTENAMESPACEREQUEST._serialized_end=2946 + _CREATENVMEPATHREQUEST._serialized_start=2948 + _CREATENVMEPATHREQUEST._serialized_end=3052 + _DELETENVMEPATHREQUEST._serialized_start=3054 + _DELETENVMEPATHREQUEST._serialized_end=3156 + _UPDATENVMEPATHREQUEST._serialized_start=3159 + _UPDATENVMEPATHREQUEST._serialized_end=3318 + _LISTNVMEPATHSREQUEST._serialized_start=3320 + _LISTNVMEPATHSREQUEST._serialized_end=3444 + _LISTNVMEPATHSRESPONSE._serialized_start=3446 + _LISTNVMEPATHSRESPONSE._serialized_end=3544 + _GETNVMEPATHREQUEST._serialized_start=3546 + _GETNVMEPATHREQUEST._serialized_end=3617 + _STATSNVMEPATHREQUEST._serialized_start=3619 + _STATSNVMEPATHREQUEST._serialized_end=3692 + _STATSNVMEPATHRESPONSE._serialized_start=3694 + _STATSNVMEPATHRESPONSE._serialized_end=3765 + _NVMEREMOTECONTROLLERSERVICE._serialized_start=3905 + _NVMEREMOTECONTROLLERSERVICE._serialized_end=6515 # @@protoc_insertion_point(module_scope) diff --git a/storage/v1alpha1/gen/python/opicommon_pb2.py b/storage/v1alpha1/gen/python/opicommon_pb2.py index 035daac4..6dd90b3f 100644 --- a/storage/v1alpha1/gen/python/opicommon_pb2.py +++ b/storage/v1alpha1/gen/python/opicommon_pb2.py @@ -15,7 +15,7 @@ from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0fopicommon.proto\x12\x12opi_api.storage.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\xb9\x01\n\x0bPciEndpoint\x12\x31\n\x07port_id\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int32ValueB\x03\xe0\x41\x02\x12;\n\x11physical_function\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int32ValueB\x03\xe0\x41\x02\x12:\n\x10virtual_function\x18\x03 \x01(\x0b\x32\x1b.google.protobuf.Int32ValueB\x03\xe0\x41\x02\"x\n\x0f\x46\x61\x62ricsEndpoint\x12\x13\n\x06traddr\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x07trsvcid\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12:\n\x06\x61\x64rfam\x18\x03 \x01(\x0e\x32%.opi_api.storage.v1.NvmeAddressFamilyB\x03\xe0\x41\x02\"\xaa\x02\n\x0bVolumeStats\x12\x1d\n\x10read_bytes_count\x18\x01 \x01(\x05\x42\x03\xe0\x41\x03\x12\x1b\n\x0eread_ops_count\x18\x02 \x01(\x05\x42\x03\xe0\x41\x03\x12\x1e\n\x11write_bytes_count\x18\x03 \x01(\x05\x42\x03\xe0\x41\x03\x12\x1c\n\x0fwrite_ops_count\x18\x04 \x01(\x05\x42\x03\xe0\x41\x03\x12\x1e\n\x11unmap_bytes_count\x18\x05 \x01(\x05\x42\x03\xe0\x41\x03\x12\x1c\n\x0funmap_ops_count\x18\x06 \x01(\x05\x42\x03\xe0\x41\x03\x12\x1f\n\x12read_latency_ticks\x18\x07 \x01(\x05\x42\x03\xe0\x41\x03\x12 \n\x13write_latency_ticks\x18\x08 \x01(\x05\x42\x03\xe0\x41\x03\x12 \n\x13unmap_latency_ticks\x18\t \x01(\x05\x42\x03\xe0\x41\x03\"\xbb\x01\n\x08QosLimit\x12\x1a\n\rrd_iops_kiops\x18\x01 \x01(\x03\x42\x03\xe0\x41\x01\x12\x1a\n\rwr_iops_kiops\x18\x02 \x01(\x03\x42\x03\xe0\x41\x01\x12\x1a\n\rrw_iops_kiops\x18\x03 \x01(\x03\x42\x03\xe0\x41\x01\x12\x1d\n\x10rd_bandwidth_mbs\x18\x04 \x01(\x03\x42\x03\xe0\x41\x01\x12\x1d\n\x10wr_bandwidth_mbs\x18\x05 \x01(\x03\x42\x03\xe0\x41\x01\x12\x1d\n\x10rw_bandwidth_mbs\x18\x06 \x01(\x03\x42\x03\xe0\x41\x01*\xf7\x01\n\x0e\x45ncryptionType\x12\x1f\n\x1b\x45NCRYPTION_TYPE_UNSPECIFIED\x10\x00\x12\x1f\n\x1b\x45NCRYPTION_TYPE_AES_CBC_128\x10\x01\x12\x1f\n\x1b\x45NCRYPTION_TYPE_AES_CBC_192\x10\x02\x12\x1f\n\x1b\x45NCRYPTION_TYPE_AES_CBC_256\x10\x03\x12\x1f\n\x1b\x45NCRYPTION_TYPE_AES_XTS_128\x10\x04\x12\x1f\n\x1b\x45NCRYPTION_TYPE_AES_XTS_192\x10\x05\x12\x1f\n\x1b\x45NCRYPTION_TYPE_AES_XTS_256\x10\x06*\xb4\x01\n\x11NvmeTransportType\x12#\n\x1fNVME_TRANSPORT_TYPE_UNSPECIFIED\x10\x00\x12\x15\n\x11NVME_TRANSPORT_FC\x10\x01\x12\x17\n\x13NVME_TRANSPORT_PCIE\x10\x02\x12\x17\n\x13NVME_TRANSPORT_RDMA\x10\x03\x12\x16\n\x12NVME_TRANSPORT_TCP\x10\x04\x12\x19\n\x15NVME_TRANSPORT_CUSTOM\x10\x05*\xa8\x01\n\x11NvmeAddressFamily\x12#\n\x1fNVME_ADDRESS_FAMILY_UNSPECIFIED\x10\x00\x12\x14\n\x10NVME_ADRFAM_IPV4\x10\x01\x12\x14\n\x10NVME_ADRFAM_IPV6\x10\x02\x12\x12\n\x0eNVME_ADRFAM_IB\x10\x03\x12\x12\n\x0eNVME_ADRFAM_FC\x10\x04\x12\x1a\n\x16NVME_ADRFAM_INTRA_HOST\x10\x05\x42]\n\x12opi_api.storage.v1B\x0eOpiCommonProtoP\x01Z5github.com/opiproject/opi-api/storage/v1alpha1/gen/gob\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0fopicommon.proto\x12\x12opi_api.storage.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\xee\x01\n\x0bPciEndpoint\x12\x31\n\x07port_id\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int32ValueB\x03\xe0\x41\x02\x12;\n\x11physical_function\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int32ValueB\x03\xe0\x41\x02\x12:\n\x10virtual_function\x18\x03 \x01(\x0b\x32\x1b.google.protobuf.Int32ValueB\x03\xe0\x41\x02\x12\x33\n\tdomain_id\x18\x04 \x01(\x0b\x32\x1b.google.protobuf.Int32ValueB\x03\xe0\x41\x01\"\xb1\x01\n\x0f\x46\x61\x62ricsEndpoint\x12\x13\n\x06traddr\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x07trsvcid\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12:\n\x06\x61\x64rfam\x18\x03 \x01(\x0e\x32%.opi_api.storage.v1.NvmeAddressFamilyB\x03\xe0\x41\x02\x12\x1a\n\rsource_traddr\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x1b\n\x0esource_trsvcid\x18\x05 \x01(\tB\x03\xe0\x41\x01\"\xaa\x02\n\x0bVolumeStats\x12\x1d\n\x10read_bytes_count\x18\x01 \x01(\x05\x42\x03\xe0\x41\x03\x12\x1b\n\x0eread_ops_count\x18\x02 \x01(\x05\x42\x03\xe0\x41\x03\x12\x1e\n\x11write_bytes_count\x18\x03 \x01(\x05\x42\x03\xe0\x41\x03\x12\x1c\n\x0fwrite_ops_count\x18\x04 \x01(\x05\x42\x03\xe0\x41\x03\x12\x1e\n\x11unmap_bytes_count\x18\x05 \x01(\x05\x42\x03\xe0\x41\x03\x12\x1c\n\x0funmap_ops_count\x18\x06 \x01(\x05\x42\x03\xe0\x41\x03\x12\x1f\n\x12read_latency_ticks\x18\x07 \x01(\x05\x42\x03\xe0\x41\x03\x12 \n\x13write_latency_ticks\x18\x08 \x01(\x05\x42\x03\xe0\x41\x03\x12 \n\x13unmap_latency_ticks\x18\t \x01(\x05\x42\x03\xe0\x41\x03\"\xbb\x01\n\x08QosLimit\x12\x1a\n\rrd_iops_kiops\x18\x01 \x01(\x03\x42\x03\xe0\x41\x01\x12\x1a\n\rwr_iops_kiops\x18\x02 \x01(\x03\x42\x03\xe0\x41\x01\x12\x1a\n\rrw_iops_kiops\x18\x03 \x01(\x03\x42\x03\xe0\x41\x01\x12\x1d\n\x10rd_bandwidth_mbs\x18\x04 \x01(\x03\x42\x03\xe0\x41\x01\x12\x1d\n\x10wr_bandwidth_mbs\x18\x05 \x01(\x03\x42\x03\xe0\x41\x01\x12\x1d\n\x10rw_bandwidth_mbs\x18\x06 \x01(\x03\x42\x03\xe0\x41\x01*\xf7\x01\n\x0e\x45ncryptionType\x12\x1f\n\x1b\x45NCRYPTION_TYPE_UNSPECIFIED\x10\x00\x12\x1f\n\x1b\x45NCRYPTION_TYPE_AES_CBC_128\x10\x01\x12\x1f\n\x1b\x45NCRYPTION_TYPE_AES_CBC_192\x10\x02\x12\x1f\n\x1b\x45NCRYPTION_TYPE_AES_CBC_256\x10\x03\x12\x1f\n\x1b\x45NCRYPTION_TYPE_AES_XTS_128\x10\x04\x12\x1f\n\x1b\x45NCRYPTION_TYPE_AES_XTS_192\x10\x05\x12\x1f\n\x1b\x45NCRYPTION_TYPE_AES_XTS_256\x10\x06*\xb4\x01\n\x11NvmeTransportType\x12#\n\x1fNVME_TRANSPORT_TYPE_UNSPECIFIED\x10\x00\x12\x15\n\x11NVME_TRANSPORT_FC\x10\x01\x12\x17\n\x13NVME_TRANSPORT_PCIE\x10\x02\x12\x17\n\x13NVME_TRANSPORT_RDMA\x10\x03\x12\x16\n\x12NVME_TRANSPORT_TCP\x10\x04\x12\x19\n\x15NVME_TRANSPORT_CUSTOM\x10\x05*\xa8\x01\n\x11NvmeAddressFamily\x12#\n\x1fNVME_ADDRESS_FAMILY_UNSPECIFIED\x10\x00\x12\x14\n\x10NVME_ADRFAM_IPV4\x10\x01\x12\x14\n\x10NVME_ADRFAM_IPV6\x10\x02\x12\x12\n\x0eNVME_ADRFAM_IB\x10\x03\x12\x12\n\x0eNVME_ADRFAM_FC\x10\x04\x12\x1a\n\x16NVME_ADRFAM_INTRA_HOST\x10\x05\x42]\n\x12opi_api.storage.v1B\x0eOpiCommonProtoP\x01Z5github.com/opiproject/opi-api/storage/v1alpha1/gen/gob\x06proto3') _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals()) _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'opicommon_pb2', globals()) @@ -29,12 +29,18 @@ _PCIENDPOINT.fields_by_name['physical_function']._serialized_options = b'\340A\002' _PCIENDPOINT.fields_by_name['virtual_function']._options = None _PCIENDPOINT.fields_by_name['virtual_function']._serialized_options = b'\340A\002' + _PCIENDPOINT.fields_by_name['domain_id']._options = None + _PCIENDPOINT.fields_by_name['domain_id']._serialized_options = b'\340A\001' _FABRICSENDPOINT.fields_by_name['traddr']._options = None _FABRICSENDPOINT.fields_by_name['traddr']._serialized_options = b'\340A\002' _FABRICSENDPOINT.fields_by_name['trsvcid']._options = None _FABRICSENDPOINT.fields_by_name['trsvcid']._serialized_options = b'\340A\002' _FABRICSENDPOINT.fields_by_name['adrfam']._options = None _FABRICSENDPOINT.fields_by_name['adrfam']._serialized_options = b'\340A\002' + _FABRICSENDPOINT.fields_by_name['source_traddr']._options = None + _FABRICSENDPOINT.fields_by_name['source_traddr']._serialized_options = b'\340A\001' + _FABRICSENDPOINT.fields_by_name['source_trsvcid']._options = None + _FABRICSENDPOINT.fields_by_name['source_trsvcid']._serialized_options = b'\340A\001' _VOLUMESTATS.fields_by_name['read_bytes_count']._options = None _VOLUMESTATS.fields_by_name['read_bytes_count']._serialized_options = b'\340A\003' _VOLUMESTATS.fields_by_name['read_ops_count']._options = None @@ -65,18 +71,18 @@ _QOSLIMIT.fields_by_name['wr_bandwidth_mbs']._serialized_options = b'\340A\001' _QOSLIMIT.fields_by_name['rw_bandwidth_mbs']._options = None _QOSLIMIT.fields_by_name['rw_bandwidth_mbs']._serialized_options = b'\340A\001' - _ENCRYPTIONTYPE._serialized_start=906 - _ENCRYPTIONTYPE._serialized_end=1153 - _NVMETRANSPORTTYPE._serialized_start=1156 - _NVMETRANSPORTTYPE._serialized_end=1336 - _NVMEADDRESSFAMILY._serialized_start=1339 - _NVMEADDRESSFAMILY._serialized_end=1507 + _ENCRYPTIONTYPE._serialized_start=1017 + _ENCRYPTIONTYPE._serialized_end=1264 + _NVMETRANSPORTTYPE._serialized_start=1267 + _NVMETRANSPORTTYPE._serialized_end=1447 + _NVMEADDRESSFAMILY._serialized_start=1450 + _NVMEADDRESSFAMILY._serialized_end=1618 _PCIENDPOINT._serialized_start=105 - _PCIENDPOINT._serialized_end=290 - _FABRICSENDPOINT._serialized_start=292 - _FABRICSENDPOINT._serialized_end=412 - _VOLUMESTATS._serialized_start=415 - _VOLUMESTATS._serialized_end=713 - _QOSLIMIT._serialized_start=716 - _QOSLIMIT._serialized_end=903 + _PCIENDPOINT._serialized_end=343 + _FABRICSENDPOINT._serialized_start=346 + _FABRICSENDPOINT._serialized_end=523 + _VOLUMESTATS._serialized_start=526 + _VOLUMESTATS._serialized_end=824 + _QOSLIMIT._serialized_start=827 + _QOSLIMIT._serialized_end=1014 # @@protoc_insertion_point(module_scope) diff --git a/storage/v1alpha1/opicommon.proto b/storage/v1alpha1/opicommon.proto index 62b0d236..e1bbd9c0 100755 --- a/storage/v1alpha1/opicommon.proto +++ b/storage/v1alpha1/opicommon.proto @@ -24,23 +24,42 @@ import "google/protobuf/wrappers.proto"; // we'll use the term "port" which also commonly used with PCI switches and avoids // confusion with storage "devices". message PciEndpoint { + // for frontend: // The "port" or "device". In other words, the connector/cable that's // plugged into a particular host. This number may end up matching // the host-assigned "device" value in the bus:device:function identifier, // but it does not strictly have to and that should not be relied upon. + // + // for backend: + // Corresponds to "bus" part of BDF google.protobuf.Int32Value port_id = 1 [(google.api.field_behavior) = REQUIRED]; + // for frontend: // Physical function index. This may end up matching the host-assigned // "function" value in the bus:device:function identifier, but it does not // strictly have to and that should not be relied upon. + // + // for backend: + // Corresponds to "device" part of BDF google.protobuf.Int32Value physical_function = 2 [(google.api.field_behavior) = REQUIRED]; + // for frontend: // Virtual function index. 1-based index. // The value 0 is reserved to represent the PCI physical "device". // This may end up matching the host-assigned "function" value in the // bus:device:function identifier, but it does not strictly have to and // that should not be relied upon. + // + // for backend: + // Corresponds to "function" part of BDF google.protobuf.Int32Value virtual_function = 3 [(google.api.field_behavior) = REQUIRED]; + + // for frontend: + // Not used + // + // for backend: + // Corresponds to pci domain value + google.protobuf.Int32Value domain_id = 4 [(google.api.field_behavior) = OPTIONAL]; } // Represents Fabrics Endpoint @@ -53,6 +72,14 @@ message FabricsEndpoint { // address family NvmeAddressFamily adrfam = 3 [(google.api.field_behavior) = REQUIRED]; + + // source address (e.g. IP of local NIC) + // not used for frontend + string source_traddr = 4 [(google.api.field_behavior) = OPTIONAL]; + + // source port (e.g. Port of local NIC) + // not used for frontend + string source_trsvcid = 5 [(google.api.field_behavior) = OPTIONAL]; } // Represents Volume statistics