From 3d11ac3316a661b45a6fec4019430d2b7ec89172 Mon Sep 17 00:00:00 2001 From: Joseph Doherty Date: Sun, 26 Apr 2026 22:29:27 -0400 Subject: [PATCH] Add bulk MXAccess subscription commands --- .../MxGatewayClientSessionTests.cs | 38 + .../MxGateway.Client/MxGatewaySession.cs | 189 + .../internal/generated/mxaccess_gateway.pb.go | 1220 ++- clients/go/mxgateway/client_session_test.go | 43 + clients/go/mxgateway/session.go | 158 + clients/go/mxgateway/types.go | 80 +- .../mxgateway/client/MxGatewaySession.java | 102 + .../client/MxGatewayClientSessionTests.java | 39 + .../mxaccess_gateway/v1/MxaccessGateway.java | 8861 ++++++++++++++++- .../descriptors/mxaccessgw-client-v1.protoset | Bin 52832 -> 57296 bytes .../generated/mxaccess_gateway_pb2.py | 260 +- clients/python/src/mxgateway/session.py | 164 +- clients/python/tests/test_client_session.py | 35 + clients/rust/src/session.rs | 175 +- clients/rust/tests/client_behavior.rs | 48 +- docs/Contracts.md | 13 + docs/client-libraries-design.md | 20 + docs/clients-dotnet-csharp-design.md | 6 + docs/clients-golang-design.md | 6 + docs/clients-java-design.md | 6 + docs/clients-python-design.md | 6 + docs/clients-rust-design.md | 6 + .../Generated/MxaccessGateway.cs | 3103 +++++- .../Protos/mxaccess_gateway.proto | 60 + .../Grpc/MxAccessGatewayService.cs | 1 + .../Grpc/MxAccessGrpcRequestValidator.cs | 6 + .../Sessions/GatewaySession.cs | 143 + .../Gateway/Sessions/SessionManagerTests.cs | 54 + .../MxAccess/MxAccessCommandExecutorTests.cs | 110 + .../MxAccess/MxAccessCommandExecutor.cs | 120 + .../MxAccess/MxAccessSession.cs | 243 + 31 files changed, 14346 insertions(+), 969 deletions(-) diff --git a/clients/dotnet/MxGateway.Client.Tests/MxGatewayClientSessionTests.cs b/clients/dotnet/MxGateway.Client.Tests/MxGatewayClientSessionTests.cs index 2cb36d3..720cd12 100644 --- a/clients/dotnet/MxGateway.Client.Tests/MxGatewayClientSessionTests.cs +++ b/clients/dotnet/MxGateway.Client.Tests/MxGatewayClientSessionTests.cs @@ -137,6 +137,44 @@ public sealed class MxGatewayClientSessionTests Assert.Equal(56, request.Command.Write2.UserId); } + [Fact] + public async Task SubscribeBulkAsync_BuildsOneBulkCommandAndReturnsPerItemResults() + { + FakeGatewayTransport transport = CreateTransport(); + transport.AddInvokeReply(new MxCommandReply + { + SessionId = "session-fixture", + Kind = MxCommandKind.SubscribeBulk, + ProtocolStatus = new ProtocolStatus { Code = ProtocolStatusCode.Ok }, + SubscribeBulk = new BulkSubscribeReply + { + Results = + { + new SubscribeResult + { + ServerHandle = 12, + TagAddress = "Area001.Pump001.Speed", + ItemHandle = 34, + WasSuccessful = true, + }, + }, + }, + }); + await using MxGatewayClient client = CreateClient(transport); + MxGatewaySession session = await client.OpenSessionAsync(); + + IReadOnlyList results = await session.SubscribeBulkAsync( + 12, + ["Area001.Pump001.Speed"]); + + SubscribeResult result = Assert.Single(results); + Assert.Equal(34, result.ItemHandle); + MxCommandRequest request = Assert.Single(transport.InvokeCalls).Request; + Assert.Equal(MxCommandKind.SubscribeBulk, request.Command.Kind); + Assert.Equal(12, request.Command.SubscribeBulk.ServerHandle); + Assert.Equal(["Area001.Pump001.Speed"], request.Command.SubscribeBulk.TagAddresses); + } + [Fact] public async Task StreamEventsAsync_YieldsEventsInGatewayOrder() { diff --git a/clients/dotnet/MxGateway.Client/MxGatewaySession.cs b/clients/dotnet/MxGateway.Client/MxGatewaySession.cs index 6dcaa38..4730c50 100644 --- a/clients/dotnet/MxGateway.Client/MxGatewaySession.cs +++ b/clients/dotnet/MxGateway.Client/MxGatewaySession.cs @@ -175,6 +175,194 @@ public sealed class MxGatewaySession : IAsyncDisposable cancellationToken); } + public async Task UnAdviseAsync( + int serverHandle, + int itemHandle, + CancellationToken cancellationToken = default) + { + MxCommandReply reply = await UnAdviseRawAsync(serverHandle, itemHandle, cancellationToken) + .ConfigureAwait(false); + reply.EnsureProtocolSuccess().EnsureMxAccessSuccess(); + } + + public Task UnAdviseRawAsync( + int serverHandle, + int itemHandle, + CancellationToken cancellationToken = default) + { + return InvokeCommandAsync( + new MxCommand + { + Kind = MxCommandKind.UnAdvise, + UnAdvise = new UnAdviseCommand + { + ServerHandle = serverHandle, + ItemHandle = itemHandle, + }, + }, + cancellationToken); + } + + public async Task RemoveItemAsync( + int serverHandle, + int itemHandle, + CancellationToken cancellationToken = default) + { + MxCommandReply reply = await RemoveItemRawAsync(serverHandle, itemHandle, cancellationToken) + .ConfigureAwait(false); + reply.EnsureProtocolSuccess().EnsureMxAccessSuccess(); + } + + public Task RemoveItemRawAsync( + int serverHandle, + int itemHandle, + CancellationToken cancellationToken = default) + { + return InvokeCommandAsync( + new MxCommand + { + Kind = MxCommandKind.RemoveItem, + RemoveItem = new RemoveItemCommand + { + ServerHandle = serverHandle, + ItemHandle = itemHandle, + }, + }, + cancellationToken); + } + + public async Task> AddItemBulkAsync( + int serverHandle, + IReadOnlyList tagAddresses, + CancellationToken cancellationToken = default) + { + ArgumentNullException.ThrowIfNull(tagAddresses); + + AddItemBulkCommand command = new() { ServerHandle = serverHandle }; + command.TagAddresses.Add(tagAddresses); + + MxCommandReply reply = await InvokeCommandAsync( + new MxCommand + { + Kind = MxCommandKind.AddItemBulk, + AddItemBulk = command, + }, + cancellationToken) + .ConfigureAwait(false); + reply.EnsureProtocolSuccess().EnsureMxAccessSuccess(); + return reply.AddItemBulk?.Results.ToArray() ?? []; + } + + public async Task> AdviseItemBulkAsync( + int serverHandle, + IReadOnlyList itemHandles, + CancellationToken cancellationToken = default) + { + ArgumentNullException.ThrowIfNull(itemHandles); + + AdviseItemBulkCommand command = new() { ServerHandle = serverHandle }; + command.ItemHandles.Add(itemHandles); + + MxCommandReply reply = await InvokeCommandAsync( + new MxCommand + { + Kind = MxCommandKind.AdviseItemBulk, + AdviseItemBulk = command, + }, + cancellationToken) + .ConfigureAwait(false); + reply.EnsureProtocolSuccess().EnsureMxAccessSuccess(); + return reply.AdviseItemBulk?.Results.ToArray() ?? []; + } + + public async Task> RemoveItemBulkAsync( + int serverHandle, + IReadOnlyList itemHandles, + CancellationToken cancellationToken = default) + { + ArgumentNullException.ThrowIfNull(itemHandles); + + RemoveItemBulkCommand command = new() { ServerHandle = serverHandle }; + command.ItemHandles.Add(itemHandles); + + MxCommandReply reply = await InvokeCommandAsync( + new MxCommand + { + Kind = MxCommandKind.RemoveItemBulk, + RemoveItemBulk = command, + }, + cancellationToken) + .ConfigureAwait(false); + reply.EnsureProtocolSuccess().EnsureMxAccessSuccess(); + return reply.RemoveItemBulk?.Results.ToArray() ?? []; + } + + public async Task> UnAdviseItemBulkAsync( + int serverHandle, + IReadOnlyList itemHandles, + CancellationToken cancellationToken = default) + { + ArgumentNullException.ThrowIfNull(itemHandles); + + UnAdviseItemBulkCommand command = new() { ServerHandle = serverHandle }; + command.ItemHandles.Add(itemHandles); + + MxCommandReply reply = await InvokeCommandAsync( + new MxCommand + { + Kind = MxCommandKind.UnAdviseItemBulk, + UnAdviseItemBulk = command, + }, + cancellationToken) + .ConfigureAwait(false); + reply.EnsureProtocolSuccess().EnsureMxAccessSuccess(); + return reply.UnAdviseItemBulk?.Results.ToArray() ?? []; + } + + public async Task> SubscribeBulkAsync( + int serverHandle, + IReadOnlyList tagAddresses, + CancellationToken cancellationToken = default) + { + ArgumentNullException.ThrowIfNull(tagAddresses); + + SubscribeBulkCommand command = new() { ServerHandle = serverHandle }; + command.TagAddresses.Add(tagAddresses); + + MxCommandReply reply = await InvokeCommandAsync( + new MxCommand + { + Kind = MxCommandKind.SubscribeBulk, + SubscribeBulk = command, + }, + cancellationToken) + .ConfigureAwait(false); + reply.EnsureProtocolSuccess().EnsureMxAccessSuccess(); + return reply.SubscribeBulk?.Results.ToArray() ?? []; + } + + public async Task> UnsubscribeBulkAsync( + int serverHandle, + IReadOnlyList itemHandles, + CancellationToken cancellationToken = default) + { + ArgumentNullException.ThrowIfNull(itemHandles); + + UnsubscribeBulkCommand command = new() { ServerHandle = serverHandle }; + command.ItemHandles.Add(itemHandles); + + MxCommandReply reply = await InvokeCommandAsync( + new MxCommand + { + Kind = MxCommandKind.UnsubscribeBulk, + UnsubscribeBulk = command, + }, + cancellationToken) + .ConfigureAwait(false); + reply.EnsureProtocolSuccess().EnsureMxAccessSuccess(); + return reply.UnsubscribeBulk?.Results.ToArray() ?? []; + } + public async Task WriteAsync( int serverHandle, int itemHandle, @@ -297,4 +485,5 @@ public sealed class MxGatewaySession : IAsyncDisposable }, cancellationToken); } + } diff --git a/clients/go/internal/generated/mxaccess_gateway.pb.go b/clients/go/internal/generated/mxaccess_gateway.pb.go index f6ee661..0bae296 100644 --- a/clients/go/internal/generated/mxaccess_gateway.pb.go +++ b/clients/go/internal/generated/mxaccess_gateway.pb.go @@ -45,6 +45,12 @@ const ( MxCommandKind_MX_COMMAND_KIND_WRITE_SECURED2 MxCommandKind = 16 MxCommandKind_MX_COMMAND_KIND_AUTHENTICATE_USER MxCommandKind = 17 MxCommandKind_MX_COMMAND_KIND_ARCHESTRA_USER_TO_ID MxCommandKind = 18 + MxCommandKind_MX_COMMAND_KIND_ADD_ITEM_BULK MxCommandKind = 19 + MxCommandKind_MX_COMMAND_KIND_ADVISE_ITEM_BULK MxCommandKind = 20 + MxCommandKind_MX_COMMAND_KIND_REMOVE_ITEM_BULK MxCommandKind = 21 + MxCommandKind_MX_COMMAND_KIND_UN_ADVISE_ITEM_BULK MxCommandKind = 22 + MxCommandKind_MX_COMMAND_KIND_SUBSCRIBE_BULK MxCommandKind = 23 + MxCommandKind_MX_COMMAND_KIND_UNSUBSCRIBE_BULK MxCommandKind = 24 MxCommandKind_MX_COMMAND_KIND_PING MxCommandKind = 100 MxCommandKind_MX_COMMAND_KIND_GET_SESSION_STATE MxCommandKind = 101 MxCommandKind_MX_COMMAND_KIND_GET_WORKER_INFO MxCommandKind = 102 @@ -74,6 +80,12 @@ var ( 16: "MX_COMMAND_KIND_WRITE_SECURED2", 17: "MX_COMMAND_KIND_AUTHENTICATE_USER", 18: "MX_COMMAND_KIND_ARCHESTRA_USER_TO_ID", + 19: "MX_COMMAND_KIND_ADD_ITEM_BULK", + 20: "MX_COMMAND_KIND_ADVISE_ITEM_BULK", + 21: "MX_COMMAND_KIND_REMOVE_ITEM_BULK", + 22: "MX_COMMAND_KIND_UN_ADVISE_ITEM_BULK", + 23: "MX_COMMAND_KIND_SUBSCRIBE_BULK", + 24: "MX_COMMAND_KIND_UNSUBSCRIBE_BULK", 100: "MX_COMMAND_KIND_PING", 101: "MX_COMMAND_KIND_GET_SESSION_STATE", 102: "MX_COMMAND_KIND_GET_WORKER_INFO", @@ -100,6 +112,12 @@ var ( "MX_COMMAND_KIND_WRITE_SECURED2": 16, "MX_COMMAND_KIND_AUTHENTICATE_USER": 17, "MX_COMMAND_KIND_ARCHESTRA_USER_TO_ID": 18, + "MX_COMMAND_KIND_ADD_ITEM_BULK": 19, + "MX_COMMAND_KIND_ADVISE_ITEM_BULK": 20, + "MX_COMMAND_KIND_REMOVE_ITEM_BULK": 21, + "MX_COMMAND_KIND_UN_ADVISE_ITEM_BULK": 22, + "MX_COMMAND_KIND_SUBSCRIBE_BULK": 23, + "MX_COMMAND_KIND_UNSUBSCRIBE_BULK": 24, "MX_COMMAND_KIND_PING": 100, "MX_COMMAND_KIND_GET_SESSION_STATE": 101, "MX_COMMAND_KIND_GET_WORKER_INFO": 102, @@ -985,6 +1003,12 @@ type MxCommand struct { // *MxCommand_WriteSecured2 // *MxCommand_AuthenticateUser // *MxCommand_ArchestraUserToId + // *MxCommand_AddItemBulk + // *MxCommand_AdviseItemBulk + // *MxCommand_RemoveItemBulk + // *MxCommand_UnAdviseItemBulk + // *MxCommand_SubscribeBulk + // *MxCommand_UnsubscribeBulk // *MxCommand_Ping // *MxCommand_GetSessionState // *MxCommand_GetWorkerInfo @@ -1201,6 +1225,60 @@ func (x *MxCommand) GetArchestraUserToId() *ArchestrAUserToIdCommand { return nil } +func (x *MxCommand) GetAddItemBulk() *AddItemBulkCommand { + if x != nil { + if x, ok := x.Payload.(*MxCommand_AddItemBulk); ok { + return x.AddItemBulk + } + } + return nil +} + +func (x *MxCommand) GetAdviseItemBulk() *AdviseItemBulkCommand { + if x != nil { + if x, ok := x.Payload.(*MxCommand_AdviseItemBulk); ok { + return x.AdviseItemBulk + } + } + return nil +} + +func (x *MxCommand) GetRemoveItemBulk() *RemoveItemBulkCommand { + if x != nil { + if x, ok := x.Payload.(*MxCommand_RemoveItemBulk); ok { + return x.RemoveItemBulk + } + } + return nil +} + +func (x *MxCommand) GetUnAdviseItemBulk() *UnAdviseItemBulkCommand { + if x != nil { + if x, ok := x.Payload.(*MxCommand_UnAdviseItemBulk); ok { + return x.UnAdviseItemBulk + } + } + return nil +} + +func (x *MxCommand) GetSubscribeBulk() *SubscribeBulkCommand { + if x != nil { + if x, ok := x.Payload.(*MxCommand_SubscribeBulk); ok { + return x.SubscribeBulk + } + } + return nil +} + +func (x *MxCommand) GetUnsubscribeBulk() *UnsubscribeBulkCommand { + if x != nil { + if x, ok := x.Payload.(*MxCommand_UnsubscribeBulk); ok { + return x.UnsubscribeBulk + } + } + return nil +} + func (x *MxCommand) GetPing() *PingCommand { if x != nil { if x, ok := x.Payload.(*MxCommand_Ping); ok { @@ -1322,6 +1400,30 @@ type MxCommand_ArchestraUserToId struct { ArchestraUserToId *ArchestrAUserToIdCommand `protobuf:"bytes,27,opt,name=archestra_user_to_id,json=archestraUserToId,proto3,oneof"` } +type MxCommand_AddItemBulk struct { + AddItemBulk *AddItemBulkCommand `protobuf:"bytes,28,opt,name=add_item_bulk,json=addItemBulk,proto3,oneof"` +} + +type MxCommand_AdviseItemBulk struct { + AdviseItemBulk *AdviseItemBulkCommand `protobuf:"bytes,29,opt,name=advise_item_bulk,json=adviseItemBulk,proto3,oneof"` +} + +type MxCommand_RemoveItemBulk struct { + RemoveItemBulk *RemoveItemBulkCommand `protobuf:"bytes,30,opt,name=remove_item_bulk,json=removeItemBulk,proto3,oneof"` +} + +type MxCommand_UnAdviseItemBulk struct { + UnAdviseItemBulk *UnAdviseItemBulkCommand `protobuf:"bytes,31,opt,name=un_advise_item_bulk,json=unAdviseItemBulk,proto3,oneof"` +} + +type MxCommand_SubscribeBulk struct { + SubscribeBulk *SubscribeBulkCommand `protobuf:"bytes,32,opt,name=subscribe_bulk,json=subscribeBulk,proto3,oneof"` +} + +type MxCommand_UnsubscribeBulk struct { + UnsubscribeBulk *UnsubscribeBulkCommand `protobuf:"bytes,33,opt,name=unsubscribe_bulk,json=unsubscribeBulk,proto3,oneof"` +} + type MxCommand_Ping struct { Ping *PingCommand `protobuf:"bytes,100,opt,name=ping,proto3,oneof"` } @@ -1378,6 +1480,18 @@ func (*MxCommand_AuthenticateUser) isMxCommand_Payload() {} func (*MxCommand_ArchestraUserToId) isMxCommand_Payload() {} +func (*MxCommand_AddItemBulk) isMxCommand_Payload() {} + +func (*MxCommand_AdviseItemBulk) isMxCommand_Payload() {} + +func (*MxCommand_RemoveItemBulk) isMxCommand_Payload() {} + +func (*MxCommand_UnAdviseItemBulk) isMxCommand_Payload() {} + +func (*MxCommand_SubscribeBulk) isMxCommand_Payload() {} + +func (*MxCommand_UnsubscribeBulk) isMxCommand_Payload() {} + func (*MxCommand_Ping) isMxCommand_Payload() {} func (*MxCommand_GetSessionState) isMxCommand_Payload() {} @@ -2434,6 +2548,318 @@ func (x *ArchestrAUserToIdCommand) GetUserIdGuid() string { return "" } +type AddItemBulkCommand struct { + state protoimpl.MessageState `protogen:"open.v1"` + ServerHandle int32 `protobuf:"varint,1,opt,name=server_handle,json=serverHandle,proto3" json:"server_handle,omitempty"` + TagAddresses []string `protobuf:"bytes,2,rep,name=tag_addresses,json=tagAddresses,proto3" json:"tag_addresses,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *AddItemBulkCommand) Reset() { + *x = AddItemBulkCommand{} + mi := &file_mxaccess_gateway_proto_msgTypes[25] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *AddItemBulkCommand) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AddItemBulkCommand) ProtoMessage() {} + +func (x *AddItemBulkCommand) ProtoReflect() protoreflect.Message { + mi := &file_mxaccess_gateway_proto_msgTypes[25] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AddItemBulkCommand.ProtoReflect.Descriptor instead. +func (*AddItemBulkCommand) Descriptor() ([]byte, []int) { + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{25} +} + +func (x *AddItemBulkCommand) GetServerHandle() int32 { + if x != nil { + return x.ServerHandle + } + return 0 +} + +func (x *AddItemBulkCommand) GetTagAddresses() []string { + if x != nil { + return x.TagAddresses + } + return nil +} + +type AdviseItemBulkCommand struct { + state protoimpl.MessageState `protogen:"open.v1"` + ServerHandle int32 `protobuf:"varint,1,opt,name=server_handle,json=serverHandle,proto3" json:"server_handle,omitempty"` + ItemHandles []int32 `protobuf:"varint,2,rep,packed,name=item_handles,json=itemHandles,proto3" json:"item_handles,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *AdviseItemBulkCommand) Reset() { + *x = AdviseItemBulkCommand{} + mi := &file_mxaccess_gateway_proto_msgTypes[26] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *AdviseItemBulkCommand) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AdviseItemBulkCommand) ProtoMessage() {} + +func (x *AdviseItemBulkCommand) ProtoReflect() protoreflect.Message { + mi := &file_mxaccess_gateway_proto_msgTypes[26] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AdviseItemBulkCommand.ProtoReflect.Descriptor instead. +func (*AdviseItemBulkCommand) Descriptor() ([]byte, []int) { + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{26} +} + +func (x *AdviseItemBulkCommand) GetServerHandle() int32 { + if x != nil { + return x.ServerHandle + } + return 0 +} + +func (x *AdviseItemBulkCommand) GetItemHandles() []int32 { + if x != nil { + return x.ItemHandles + } + return nil +} + +type RemoveItemBulkCommand struct { + state protoimpl.MessageState `protogen:"open.v1"` + ServerHandle int32 `protobuf:"varint,1,opt,name=server_handle,json=serverHandle,proto3" json:"server_handle,omitempty"` + ItemHandles []int32 `protobuf:"varint,2,rep,packed,name=item_handles,json=itemHandles,proto3" json:"item_handles,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *RemoveItemBulkCommand) Reset() { + *x = RemoveItemBulkCommand{} + mi := &file_mxaccess_gateway_proto_msgTypes[27] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *RemoveItemBulkCommand) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*RemoveItemBulkCommand) ProtoMessage() {} + +func (x *RemoveItemBulkCommand) ProtoReflect() protoreflect.Message { + mi := &file_mxaccess_gateway_proto_msgTypes[27] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use RemoveItemBulkCommand.ProtoReflect.Descriptor instead. +func (*RemoveItemBulkCommand) Descriptor() ([]byte, []int) { + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{27} +} + +func (x *RemoveItemBulkCommand) GetServerHandle() int32 { + if x != nil { + return x.ServerHandle + } + return 0 +} + +func (x *RemoveItemBulkCommand) GetItemHandles() []int32 { + if x != nil { + return x.ItemHandles + } + return nil +} + +type UnAdviseItemBulkCommand struct { + state protoimpl.MessageState `protogen:"open.v1"` + ServerHandle int32 `protobuf:"varint,1,opt,name=server_handle,json=serverHandle,proto3" json:"server_handle,omitempty"` + ItemHandles []int32 `protobuf:"varint,2,rep,packed,name=item_handles,json=itemHandles,proto3" json:"item_handles,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *UnAdviseItemBulkCommand) Reset() { + *x = UnAdviseItemBulkCommand{} + mi := &file_mxaccess_gateway_proto_msgTypes[28] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *UnAdviseItemBulkCommand) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UnAdviseItemBulkCommand) ProtoMessage() {} + +func (x *UnAdviseItemBulkCommand) ProtoReflect() protoreflect.Message { + mi := &file_mxaccess_gateway_proto_msgTypes[28] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UnAdviseItemBulkCommand.ProtoReflect.Descriptor instead. +func (*UnAdviseItemBulkCommand) Descriptor() ([]byte, []int) { + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{28} +} + +func (x *UnAdviseItemBulkCommand) GetServerHandle() int32 { + if x != nil { + return x.ServerHandle + } + return 0 +} + +func (x *UnAdviseItemBulkCommand) GetItemHandles() []int32 { + if x != nil { + return x.ItemHandles + } + return nil +} + +type SubscribeBulkCommand struct { + state protoimpl.MessageState `protogen:"open.v1"` + ServerHandle int32 `protobuf:"varint,1,opt,name=server_handle,json=serverHandle,proto3" json:"server_handle,omitempty"` + TagAddresses []string `protobuf:"bytes,2,rep,name=tag_addresses,json=tagAddresses,proto3" json:"tag_addresses,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *SubscribeBulkCommand) Reset() { + *x = SubscribeBulkCommand{} + mi := &file_mxaccess_gateway_proto_msgTypes[29] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *SubscribeBulkCommand) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SubscribeBulkCommand) ProtoMessage() {} + +func (x *SubscribeBulkCommand) ProtoReflect() protoreflect.Message { + mi := &file_mxaccess_gateway_proto_msgTypes[29] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SubscribeBulkCommand.ProtoReflect.Descriptor instead. +func (*SubscribeBulkCommand) Descriptor() ([]byte, []int) { + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{29} +} + +func (x *SubscribeBulkCommand) GetServerHandle() int32 { + if x != nil { + return x.ServerHandle + } + return 0 +} + +func (x *SubscribeBulkCommand) GetTagAddresses() []string { + if x != nil { + return x.TagAddresses + } + return nil +} + +type UnsubscribeBulkCommand struct { + state protoimpl.MessageState `protogen:"open.v1"` + ServerHandle int32 `protobuf:"varint,1,opt,name=server_handle,json=serverHandle,proto3" json:"server_handle,omitempty"` + ItemHandles []int32 `protobuf:"varint,2,rep,packed,name=item_handles,json=itemHandles,proto3" json:"item_handles,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *UnsubscribeBulkCommand) Reset() { + *x = UnsubscribeBulkCommand{} + mi := &file_mxaccess_gateway_proto_msgTypes[30] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *UnsubscribeBulkCommand) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UnsubscribeBulkCommand) ProtoMessage() {} + +func (x *UnsubscribeBulkCommand) ProtoReflect() protoreflect.Message { + mi := &file_mxaccess_gateway_proto_msgTypes[30] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UnsubscribeBulkCommand.ProtoReflect.Descriptor instead. +func (*UnsubscribeBulkCommand) Descriptor() ([]byte, []int) { + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{30} +} + +func (x *UnsubscribeBulkCommand) GetServerHandle() int32 { + if x != nil { + return x.ServerHandle + } + return 0 +} + +func (x *UnsubscribeBulkCommand) GetItemHandles() []int32 { + if x != nil { + return x.ItemHandles + } + return nil +} + type PingCommand struct { state protoimpl.MessageState `protogen:"open.v1"` Message string `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"` @@ -2443,7 +2869,7 @@ type PingCommand struct { func (x *PingCommand) Reset() { *x = PingCommand{} - mi := &file_mxaccess_gateway_proto_msgTypes[25] + mi := &file_mxaccess_gateway_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2455,7 +2881,7 @@ func (x *PingCommand) String() string { func (*PingCommand) ProtoMessage() {} func (x *PingCommand) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[25] + mi := &file_mxaccess_gateway_proto_msgTypes[31] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2468,7 +2894,7 @@ func (x *PingCommand) ProtoReflect() protoreflect.Message { // Deprecated: Use PingCommand.ProtoReflect.Descriptor instead. func (*PingCommand) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{25} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{31} } func (x *PingCommand) GetMessage() string { @@ -2486,7 +2912,7 @@ type GetSessionStateCommand struct { func (x *GetSessionStateCommand) Reset() { *x = GetSessionStateCommand{} - mi := &file_mxaccess_gateway_proto_msgTypes[26] + mi := &file_mxaccess_gateway_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2498,7 +2924,7 @@ func (x *GetSessionStateCommand) String() string { func (*GetSessionStateCommand) ProtoMessage() {} func (x *GetSessionStateCommand) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[26] + mi := &file_mxaccess_gateway_proto_msgTypes[32] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2511,7 +2937,7 @@ func (x *GetSessionStateCommand) ProtoReflect() protoreflect.Message { // Deprecated: Use GetSessionStateCommand.ProtoReflect.Descriptor instead. func (*GetSessionStateCommand) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{26} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{32} } type GetWorkerInfoCommand struct { @@ -2522,7 +2948,7 @@ type GetWorkerInfoCommand struct { func (x *GetWorkerInfoCommand) Reset() { *x = GetWorkerInfoCommand{} - mi := &file_mxaccess_gateway_proto_msgTypes[27] + mi := &file_mxaccess_gateway_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2534,7 +2960,7 @@ func (x *GetWorkerInfoCommand) String() string { func (*GetWorkerInfoCommand) ProtoMessage() {} func (x *GetWorkerInfoCommand) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[27] + mi := &file_mxaccess_gateway_proto_msgTypes[33] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2547,7 +2973,7 @@ func (x *GetWorkerInfoCommand) ProtoReflect() protoreflect.Message { // Deprecated: Use GetWorkerInfoCommand.ProtoReflect.Descriptor instead. func (*GetWorkerInfoCommand) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{27} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{33} } type DrainEventsCommand struct { @@ -2559,7 +2985,7 @@ type DrainEventsCommand struct { func (x *DrainEventsCommand) Reset() { *x = DrainEventsCommand{} - mi := &file_mxaccess_gateway_proto_msgTypes[28] + mi := &file_mxaccess_gateway_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2571,7 +2997,7 @@ func (x *DrainEventsCommand) String() string { func (*DrainEventsCommand) ProtoMessage() {} func (x *DrainEventsCommand) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[28] + mi := &file_mxaccess_gateway_proto_msgTypes[34] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2584,7 +3010,7 @@ func (x *DrainEventsCommand) ProtoReflect() protoreflect.Message { // Deprecated: Use DrainEventsCommand.ProtoReflect.Descriptor instead. func (*DrainEventsCommand) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{28} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{34} } func (x *DrainEventsCommand) GetMaxEvents() uint32 { @@ -2603,7 +3029,7 @@ type ShutdownWorkerCommand struct { func (x *ShutdownWorkerCommand) Reset() { *x = ShutdownWorkerCommand{} - mi := &file_mxaccess_gateway_proto_msgTypes[29] + mi := &file_mxaccess_gateway_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2615,7 +3041,7 @@ func (x *ShutdownWorkerCommand) String() string { func (*ShutdownWorkerCommand) ProtoMessage() {} func (x *ShutdownWorkerCommand) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[29] + mi := &file_mxaccess_gateway_proto_msgTypes[35] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2628,7 +3054,7 @@ func (x *ShutdownWorkerCommand) ProtoReflect() protoreflect.Message { // Deprecated: Use ShutdownWorkerCommand.ProtoReflect.Descriptor instead. func (*ShutdownWorkerCommand) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{29} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{35} } func (x *ShutdownWorkerCommand) GetGracePeriod() *durationpb.Duration { @@ -2661,6 +3087,12 @@ type MxCommandReply struct { // *MxCommandReply_Activate // *MxCommandReply_AuthenticateUser // *MxCommandReply_ArchestraUserToId + // *MxCommandReply_AddItemBulk + // *MxCommandReply_AdviseItemBulk + // *MxCommandReply_RemoveItemBulk + // *MxCommandReply_UnAdviseItemBulk + // *MxCommandReply_SubscribeBulk + // *MxCommandReply_UnsubscribeBulk // *MxCommandReply_SessionState // *MxCommandReply_WorkerInfo // *MxCommandReply_DrainEvents @@ -2671,7 +3103,7 @@ type MxCommandReply struct { func (x *MxCommandReply) Reset() { *x = MxCommandReply{} - mi := &file_mxaccess_gateway_proto_msgTypes[30] + mi := &file_mxaccess_gateway_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2683,7 +3115,7 @@ func (x *MxCommandReply) String() string { func (*MxCommandReply) ProtoMessage() {} func (x *MxCommandReply) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[30] + mi := &file_mxaccess_gateway_proto_msgTypes[36] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2696,7 +3128,7 @@ func (x *MxCommandReply) ProtoReflect() protoreflect.Message { // Deprecated: Use MxCommandReply.ProtoReflect.Descriptor instead. func (*MxCommandReply) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{30} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{36} } func (x *MxCommandReply) GetSessionId() string { @@ -2834,6 +3266,60 @@ func (x *MxCommandReply) GetArchestraUserToId() *ArchestrAUserToIdReply { return nil } +func (x *MxCommandReply) GetAddItemBulk() *BulkSubscribeReply { + if x != nil { + if x, ok := x.Payload.(*MxCommandReply_AddItemBulk); ok { + return x.AddItemBulk + } + } + return nil +} + +func (x *MxCommandReply) GetAdviseItemBulk() *BulkSubscribeReply { + if x != nil { + if x, ok := x.Payload.(*MxCommandReply_AdviseItemBulk); ok { + return x.AdviseItemBulk + } + } + return nil +} + +func (x *MxCommandReply) GetRemoveItemBulk() *BulkSubscribeReply { + if x != nil { + if x, ok := x.Payload.(*MxCommandReply_RemoveItemBulk); ok { + return x.RemoveItemBulk + } + } + return nil +} + +func (x *MxCommandReply) GetUnAdviseItemBulk() *BulkSubscribeReply { + if x != nil { + if x, ok := x.Payload.(*MxCommandReply_UnAdviseItemBulk); ok { + return x.UnAdviseItemBulk + } + } + return nil +} + +func (x *MxCommandReply) GetSubscribeBulk() *BulkSubscribeReply { + if x != nil { + if x, ok := x.Payload.(*MxCommandReply_SubscribeBulk); ok { + return x.SubscribeBulk + } + } + return nil +} + +func (x *MxCommandReply) GetUnsubscribeBulk() *BulkSubscribeReply { + if x != nil { + if x, ok := x.Payload.(*MxCommandReply_UnsubscribeBulk); ok { + return x.UnsubscribeBulk + } + } + return nil +} + func (x *MxCommandReply) GetSessionState() *SessionStateReply { if x != nil { if x, ok := x.Payload.(*MxCommandReply_SessionState); ok { @@ -2897,6 +3383,30 @@ type MxCommandReply_ArchestraUserToId struct { ArchestraUserToId *ArchestrAUserToIdReply `protobuf:"bytes,27,opt,name=archestra_user_to_id,json=archestraUserToId,proto3,oneof"` } +type MxCommandReply_AddItemBulk struct { + AddItemBulk *BulkSubscribeReply `protobuf:"bytes,28,opt,name=add_item_bulk,json=addItemBulk,proto3,oneof"` +} + +type MxCommandReply_AdviseItemBulk struct { + AdviseItemBulk *BulkSubscribeReply `protobuf:"bytes,29,opt,name=advise_item_bulk,json=adviseItemBulk,proto3,oneof"` +} + +type MxCommandReply_RemoveItemBulk struct { + RemoveItemBulk *BulkSubscribeReply `protobuf:"bytes,30,opt,name=remove_item_bulk,json=removeItemBulk,proto3,oneof"` +} + +type MxCommandReply_UnAdviseItemBulk struct { + UnAdviseItemBulk *BulkSubscribeReply `protobuf:"bytes,31,opt,name=un_advise_item_bulk,json=unAdviseItemBulk,proto3,oneof"` +} + +type MxCommandReply_SubscribeBulk struct { + SubscribeBulk *BulkSubscribeReply `protobuf:"bytes,32,opt,name=subscribe_bulk,json=subscribeBulk,proto3,oneof"` +} + +type MxCommandReply_UnsubscribeBulk struct { + UnsubscribeBulk *BulkSubscribeReply `protobuf:"bytes,33,opt,name=unsubscribe_bulk,json=unsubscribeBulk,proto3,oneof"` +} + type MxCommandReply_SessionState struct { SessionState *SessionStateReply `protobuf:"bytes,100,opt,name=session_state,json=sessionState,proto3,oneof"` } @@ -2925,6 +3435,18 @@ func (*MxCommandReply_AuthenticateUser) isMxCommandReply_Payload() {} func (*MxCommandReply_ArchestraUserToId) isMxCommandReply_Payload() {} +func (*MxCommandReply_AddItemBulk) isMxCommandReply_Payload() {} + +func (*MxCommandReply_AdviseItemBulk) isMxCommandReply_Payload() {} + +func (*MxCommandReply_RemoveItemBulk) isMxCommandReply_Payload() {} + +func (*MxCommandReply_UnAdviseItemBulk) isMxCommandReply_Payload() {} + +func (*MxCommandReply_SubscribeBulk) isMxCommandReply_Payload() {} + +func (*MxCommandReply_UnsubscribeBulk) isMxCommandReply_Payload() {} + func (*MxCommandReply_SessionState) isMxCommandReply_Payload() {} func (*MxCommandReply_WorkerInfo) isMxCommandReply_Payload() {} @@ -2940,7 +3462,7 @@ type RegisterReply struct { func (x *RegisterReply) Reset() { *x = RegisterReply{} - mi := &file_mxaccess_gateway_proto_msgTypes[31] + mi := &file_mxaccess_gateway_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2952,7 +3474,7 @@ func (x *RegisterReply) String() string { func (*RegisterReply) ProtoMessage() {} func (x *RegisterReply) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[31] + mi := &file_mxaccess_gateway_proto_msgTypes[37] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2965,7 +3487,7 @@ func (x *RegisterReply) ProtoReflect() protoreflect.Message { // Deprecated: Use RegisterReply.ProtoReflect.Descriptor instead. func (*RegisterReply) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{31} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{37} } func (x *RegisterReply) GetServerHandle() int32 { @@ -2984,7 +3506,7 @@ type AddItemReply struct { func (x *AddItemReply) Reset() { *x = AddItemReply{} - mi := &file_mxaccess_gateway_proto_msgTypes[32] + mi := &file_mxaccess_gateway_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2996,7 +3518,7 @@ func (x *AddItemReply) String() string { func (*AddItemReply) ProtoMessage() {} func (x *AddItemReply) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[32] + mi := &file_mxaccess_gateway_proto_msgTypes[38] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3009,7 +3531,7 @@ func (x *AddItemReply) ProtoReflect() protoreflect.Message { // Deprecated: Use AddItemReply.ProtoReflect.Descriptor instead. func (*AddItemReply) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{32} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{38} } func (x *AddItemReply) GetItemHandle() int32 { @@ -3028,7 +3550,7 @@ type AddItem2Reply struct { func (x *AddItem2Reply) Reset() { *x = AddItem2Reply{} - mi := &file_mxaccess_gateway_proto_msgTypes[33] + mi := &file_mxaccess_gateway_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3040,7 +3562,7 @@ func (x *AddItem2Reply) String() string { func (*AddItem2Reply) ProtoMessage() {} func (x *AddItem2Reply) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[33] + mi := &file_mxaccess_gateway_proto_msgTypes[39] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3053,7 +3575,7 @@ func (x *AddItem2Reply) ProtoReflect() protoreflect.Message { // Deprecated: Use AddItem2Reply.ProtoReflect.Descriptor instead. func (*AddItem2Reply) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{33} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{39} } func (x *AddItem2Reply) GetItemHandle() int32 { @@ -3072,7 +3594,7 @@ type AddBufferedItemReply struct { func (x *AddBufferedItemReply) Reset() { *x = AddBufferedItemReply{} - mi := &file_mxaccess_gateway_proto_msgTypes[34] + mi := &file_mxaccess_gateway_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3084,7 +3606,7 @@ func (x *AddBufferedItemReply) String() string { func (*AddBufferedItemReply) ProtoMessage() {} func (x *AddBufferedItemReply) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[34] + mi := &file_mxaccess_gateway_proto_msgTypes[40] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3097,7 +3619,7 @@ func (x *AddBufferedItemReply) ProtoReflect() protoreflect.Message { // Deprecated: Use AddBufferedItemReply.ProtoReflect.Descriptor instead. func (*AddBufferedItemReply) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{34} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{40} } func (x *AddBufferedItemReply) GetItemHandle() int32 { @@ -3116,7 +3638,7 @@ type SuspendReply struct { func (x *SuspendReply) Reset() { *x = SuspendReply{} - mi := &file_mxaccess_gateway_proto_msgTypes[35] + mi := &file_mxaccess_gateway_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3128,7 +3650,7 @@ func (x *SuspendReply) String() string { func (*SuspendReply) ProtoMessage() {} func (x *SuspendReply) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[35] + mi := &file_mxaccess_gateway_proto_msgTypes[41] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3141,7 +3663,7 @@ func (x *SuspendReply) ProtoReflect() protoreflect.Message { // Deprecated: Use SuspendReply.ProtoReflect.Descriptor instead. func (*SuspendReply) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{35} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{41} } func (x *SuspendReply) GetStatus() *MxStatusProxy { @@ -3160,7 +3682,7 @@ type ActivateReply struct { func (x *ActivateReply) Reset() { *x = ActivateReply{} - mi := &file_mxaccess_gateway_proto_msgTypes[36] + mi := &file_mxaccess_gateway_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3172,7 +3694,7 @@ func (x *ActivateReply) String() string { func (*ActivateReply) ProtoMessage() {} func (x *ActivateReply) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[36] + mi := &file_mxaccess_gateway_proto_msgTypes[42] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3185,7 +3707,7 @@ func (x *ActivateReply) ProtoReflect() protoreflect.Message { // Deprecated: Use ActivateReply.ProtoReflect.Descriptor instead. func (*ActivateReply) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{36} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{42} } func (x *ActivateReply) GetStatus() *MxStatusProxy { @@ -3204,7 +3726,7 @@ type AuthenticateUserReply struct { func (x *AuthenticateUserReply) Reset() { *x = AuthenticateUserReply{} - mi := &file_mxaccess_gateway_proto_msgTypes[37] + mi := &file_mxaccess_gateway_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3216,7 +3738,7 @@ func (x *AuthenticateUserReply) String() string { func (*AuthenticateUserReply) ProtoMessage() {} func (x *AuthenticateUserReply) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[37] + mi := &file_mxaccess_gateway_proto_msgTypes[43] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3229,7 +3751,7 @@ func (x *AuthenticateUserReply) ProtoReflect() protoreflect.Message { // Deprecated: Use AuthenticateUserReply.ProtoReflect.Descriptor instead. func (*AuthenticateUserReply) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{37} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{43} } func (x *AuthenticateUserReply) GetUserId() int32 { @@ -3248,7 +3770,7 @@ type ArchestrAUserToIdReply struct { func (x *ArchestrAUserToIdReply) Reset() { *x = ArchestrAUserToIdReply{} - mi := &file_mxaccess_gateway_proto_msgTypes[38] + mi := &file_mxaccess_gateway_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3260,7 +3782,7 @@ func (x *ArchestrAUserToIdReply) String() string { func (*ArchestrAUserToIdReply) ProtoMessage() {} func (x *ArchestrAUserToIdReply) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[38] + mi := &file_mxaccess_gateway_proto_msgTypes[44] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3273,7 +3795,7 @@ func (x *ArchestrAUserToIdReply) ProtoReflect() protoreflect.Message { // Deprecated: Use ArchestrAUserToIdReply.ProtoReflect.Descriptor instead. func (*ArchestrAUserToIdReply) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{38} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{44} } func (x *ArchestrAUserToIdReply) GetUserId() int32 { @@ -3283,6 +3805,126 @@ func (x *ArchestrAUserToIdReply) GetUserId() int32 { return 0 } +type SubscribeResult struct { + state protoimpl.MessageState `protogen:"open.v1"` + ServerHandle int32 `protobuf:"varint,1,opt,name=server_handle,json=serverHandle,proto3" json:"server_handle,omitempty"` + TagAddress string `protobuf:"bytes,2,opt,name=tag_address,json=tagAddress,proto3" json:"tag_address,omitempty"` + ItemHandle int32 `protobuf:"varint,3,opt,name=item_handle,json=itemHandle,proto3" json:"item_handle,omitempty"` + WasSuccessful bool `protobuf:"varint,4,opt,name=was_successful,json=wasSuccessful,proto3" json:"was_successful,omitempty"` + ErrorMessage string `protobuf:"bytes,5,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *SubscribeResult) Reset() { + *x = SubscribeResult{} + mi := &file_mxaccess_gateway_proto_msgTypes[45] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *SubscribeResult) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SubscribeResult) ProtoMessage() {} + +func (x *SubscribeResult) ProtoReflect() protoreflect.Message { + mi := &file_mxaccess_gateway_proto_msgTypes[45] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SubscribeResult.ProtoReflect.Descriptor instead. +func (*SubscribeResult) Descriptor() ([]byte, []int) { + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{45} +} + +func (x *SubscribeResult) GetServerHandle() int32 { + if x != nil { + return x.ServerHandle + } + return 0 +} + +func (x *SubscribeResult) GetTagAddress() string { + if x != nil { + return x.TagAddress + } + return "" +} + +func (x *SubscribeResult) GetItemHandle() int32 { + if x != nil { + return x.ItemHandle + } + return 0 +} + +func (x *SubscribeResult) GetWasSuccessful() bool { + if x != nil { + return x.WasSuccessful + } + return false +} + +func (x *SubscribeResult) GetErrorMessage() string { + if x != nil { + return x.ErrorMessage + } + return "" +} + +type BulkSubscribeReply struct { + state protoimpl.MessageState `protogen:"open.v1"` + Results []*SubscribeResult `protobuf:"bytes,1,rep,name=results,proto3" json:"results,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *BulkSubscribeReply) Reset() { + *x = BulkSubscribeReply{} + mi := &file_mxaccess_gateway_proto_msgTypes[46] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *BulkSubscribeReply) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*BulkSubscribeReply) ProtoMessage() {} + +func (x *BulkSubscribeReply) ProtoReflect() protoreflect.Message { + mi := &file_mxaccess_gateway_proto_msgTypes[46] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use BulkSubscribeReply.ProtoReflect.Descriptor instead. +func (*BulkSubscribeReply) Descriptor() ([]byte, []int) { + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{46} +} + +func (x *BulkSubscribeReply) GetResults() []*SubscribeResult { + if x != nil { + return x.Results + } + return nil +} + type SessionStateReply struct { state protoimpl.MessageState `protogen:"open.v1"` State SessionState `protobuf:"varint,1,opt,name=state,proto3,enum=mxaccess_gateway.v1.SessionState" json:"state,omitempty"` @@ -3292,7 +3934,7 @@ type SessionStateReply struct { func (x *SessionStateReply) Reset() { *x = SessionStateReply{} - mi := &file_mxaccess_gateway_proto_msgTypes[39] + mi := &file_mxaccess_gateway_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3304,7 +3946,7 @@ func (x *SessionStateReply) String() string { func (*SessionStateReply) ProtoMessage() {} func (x *SessionStateReply) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[39] + mi := &file_mxaccess_gateway_proto_msgTypes[47] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3317,7 +3959,7 @@ func (x *SessionStateReply) ProtoReflect() protoreflect.Message { // Deprecated: Use SessionStateReply.ProtoReflect.Descriptor instead. func (*SessionStateReply) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{39} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{47} } func (x *SessionStateReply) GetState() SessionState { @@ -3339,7 +3981,7 @@ type WorkerInfoReply struct { func (x *WorkerInfoReply) Reset() { *x = WorkerInfoReply{} - mi := &file_mxaccess_gateway_proto_msgTypes[40] + mi := &file_mxaccess_gateway_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3351,7 +3993,7 @@ func (x *WorkerInfoReply) String() string { func (*WorkerInfoReply) ProtoMessage() {} func (x *WorkerInfoReply) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[40] + mi := &file_mxaccess_gateway_proto_msgTypes[48] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3364,7 +4006,7 @@ func (x *WorkerInfoReply) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkerInfoReply.ProtoReflect.Descriptor instead. func (*WorkerInfoReply) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{40} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{48} } func (x *WorkerInfoReply) GetWorkerProcessId() int32 { @@ -3404,7 +4046,7 @@ type DrainEventsReply struct { func (x *DrainEventsReply) Reset() { *x = DrainEventsReply{} - mi := &file_mxaccess_gateway_proto_msgTypes[41] + mi := &file_mxaccess_gateway_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3416,7 +4058,7 @@ func (x *DrainEventsReply) String() string { func (*DrainEventsReply) ProtoMessage() {} func (x *DrainEventsReply) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[41] + mi := &file_mxaccess_gateway_proto_msgTypes[49] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3429,7 +4071,7 @@ func (x *DrainEventsReply) ProtoReflect() protoreflect.Message { // Deprecated: Use DrainEventsReply.ProtoReflect.Descriptor instead. func (*DrainEventsReply) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{41} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{49} } func (x *DrainEventsReply) GetEvents() []*MxEvent { @@ -3467,7 +4109,7 @@ type MxEvent struct { func (x *MxEvent) Reset() { *x = MxEvent{} - mi := &file_mxaccess_gateway_proto_msgTypes[42] + mi := &file_mxaccess_gateway_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3479,7 +4121,7 @@ func (x *MxEvent) String() string { func (*MxEvent) ProtoMessage() {} func (x *MxEvent) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[42] + mi := &file_mxaccess_gateway_proto_msgTypes[50] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3492,7 +4134,7 @@ func (x *MxEvent) ProtoReflect() protoreflect.Message { // Deprecated: Use MxEvent.ProtoReflect.Descriptor instead. func (*MxEvent) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{42} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{50} } func (x *MxEvent) GetFamily() MxEventFamily { @@ -3665,7 +4307,7 @@ type OnDataChangeEvent struct { func (x *OnDataChangeEvent) Reset() { *x = OnDataChangeEvent{} - mi := &file_mxaccess_gateway_proto_msgTypes[43] + mi := &file_mxaccess_gateway_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3677,7 +4319,7 @@ func (x *OnDataChangeEvent) String() string { func (*OnDataChangeEvent) ProtoMessage() {} func (x *OnDataChangeEvent) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[43] + mi := &file_mxaccess_gateway_proto_msgTypes[51] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3690,7 +4332,7 @@ func (x *OnDataChangeEvent) ProtoReflect() protoreflect.Message { // Deprecated: Use OnDataChangeEvent.ProtoReflect.Descriptor instead. func (*OnDataChangeEvent) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{43} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{51} } type OnWriteCompleteEvent struct { @@ -3701,7 +4343,7 @@ type OnWriteCompleteEvent struct { func (x *OnWriteCompleteEvent) Reset() { *x = OnWriteCompleteEvent{} - mi := &file_mxaccess_gateway_proto_msgTypes[44] + mi := &file_mxaccess_gateway_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3713,7 +4355,7 @@ func (x *OnWriteCompleteEvent) String() string { func (*OnWriteCompleteEvent) ProtoMessage() {} func (x *OnWriteCompleteEvent) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[44] + mi := &file_mxaccess_gateway_proto_msgTypes[52] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3726,7 +4368,7 @@ func (x *OnWriteCompleteEvent) ProtoReflect() protoreflect.Message { // Deprecated: Use OnWriteCompleteEvent.ProtoReflect.Descriptor instead. func (*OnWriteCompleteEvent) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{44} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{52} } type OperationCompleteEvent struct { @@ -3737,7 +4379,7 @@ type OperationCompleteEvent struct { func (x *OperationCompleteEvent) Reset() { *x = OperationCompleteEvent{} - mi := &file_mxaccess_gateway_proto_msgTypes[45] + mi := &file_mxaccess_gateway_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3749,7 +4391,7 @@ func (x *OperationCompleteEvent) String() string { func (*OperationCompleteEvent) ProtoMessage() {} func (x *OperationCompleteEvent) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[45] + mi := &file_mxaccess_gateway_proto_msgTypes[53] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3762,7 +4404,7 @@ func (x *OperationCompleteEvent) ProtoReflect() protoreflect.Message { // Deprecated: Use OperationCompleteEvent.ProtoReflect.Descriptor instead. func (*OperationCompleteEvent) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{45} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{53} } type OnBufferedDataChangeEvent struct { @@ -3777,7 +4419,7 @@ type OnBufferedDataChangeEvent struct { func (x *OnBufferedDataChangeEvent) Reset() { *x = OnBufferedDataChangeEvent{} - mi := &file_mxaccess_gateway_proto_msgTypes[46] + mi := &file_mxaccess_gateway_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3789,7 +4431,7 @@ func (x *OnBufferedDataChangeEvent) String() string { func (*OnBufferedDataChangeEvent) ProtoMessage() {} func (x *OnBufferedDataChangeEvent) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[46] + mi := &file_mxaccess_gateway_proto_msgTypes[54] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3802,7 +4444,7 @@ func (x *OnBufferedDataChangeEvent) ProtoReflect() protoreflect.Message { // Deprecated: Use OnBufferedDataChangeEvent.ProtoReflect.Descriptor instead. func (*OnBufferedDataChangeEvent) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{46} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{54} } func (x *OnBufferedDataChangeEvent) GetDataType() MxDataType { @@ -3848,7 +4490,7 @@ type MxStatusProxy struct { func (x *MxStatusProxy) Reset() { *x = MxStatusProxy{} - mi := &file_mxaccess_gateway_proto_msgTypes[47] + mi := &file_mxaccess_gateway_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3860,7 +4502,7 @@ func (x *MxStatusProxy) String() string { func (*MxStatusProxy) ProtoMessage() {} func (x *MxStatusProxy) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[47] + mi := &file_mxaccess_gateway_proto_msgTypes[55] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3873,7 +4515,7 @@ func (x *MxStatusProxy) ProtoReflect() protoreflect.Message { // Deprecated: Use MxStatusProxy.ProtoReflect.Descriptor instead. func (*MxStatusProxy) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{47} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{55} } func (x *MxStatusProxy) GetSuccess() int32 { @@ -3950,7 +4592,7 @@ type MxValue struct { func (x *MxValue) Reset() { *x = MxValue{} - mi := &file_mxaccess_gateway_proto_msgTypes[48] + mi := &file_mxaccess_gateway_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3962,7 +4604,7 @@ func (x *MxValue) String() string { func (*MxValue) ProtoMessage() {} func (x *MxValue) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[48] + mi := &file_mxaccess_gateway_proto_msgTypes[56] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3975,7 +4617,7 @@ func (x *MxValue) ProtoReflect() protoreflect.Message { // Deprecated: Use MxValue.ProtoReflect.Descriptor instead. func (*MxValue) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{48} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{56} } func (x *MxValue) GetDataType() MxDataType { @@ -4183,7 +4825,7 @@ type MxArray struct { func (x *MxArray) Reset() { *x = MxArray{} - mi := &file_mxaccess_gateway_proto_msgTypes[49] + mi := &file_mxaccess_gateway_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4195,7 +4837,7 @@ func (x *MxArray) String() string { func (*MxArray) ProtoMessage() {} func (x *MxArray) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[49] + mi := &file_mxaccess_gateway_proto_msgTypes[57] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4208,7 +4850,7 @@ func (x *MxArray) ProtoReflect() protoreflect.Message { // Deprecated: Use MxArray.ProtoReflect.Descriptor instead. func (*MxArray) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{49} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{57} } func (x *MxArray) GetElementDataType() MxDataType { @@ -4386,7 +5028,7 @@ type BoolArray struct { func (x *BoolArray) Reset() { *x = BoolArray{} - mi := &file_mxaccess_gateway_proto_msgTypes[50] + mi := &file_mxaccess_gateway_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4398,7 +5040,7 @@ func (x *BoolArray) String() string { func (*BoolArray) ProtoMessage() {} func (x *BoolArray) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[50] + mi := &file_mxaccess_gateway_proto_msgTypes[58] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4411,7 +5053,7 @@ func (x *BoolArray) ProtoReflect() protoreflect.Message { // Deprecated: Use BoolArray.ProtoReflect.Descriptor instead. func (*BoolArray) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{50} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{58} } func (x *BoolArray) GetValues() []bool { @@ -4430,7 +5072,7 @@ type Int32Array struct { func (x *Int32Array) Reset() { *x = Int32Array{} - mi := &file_mxaccess_gateway_proto_msgTypes[51] + mi := &file_mxaccess_gateway_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4442,7 +5084,7 @@ func (x *Int32Array) String() string { func (*Int32Array) ProtoMessage() {} func (x *Int32Array) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[51] + mi := &file_mxaccess_gateway_proto_msgTypes[59] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4455,7 +5097,7 @@ func (x *Int32Array) ProtoReflect() protoreflect.Message { // Deprecated: Use Int32Array.ProtoReflect.Descriptor instead. func (*Int32Array) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{51} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{59} } func (x *Int32Array) GetValues() []int32 { @@ -4474,7 +5116,7 @@ type Int64Array struct { func (x *Int64Array) Reset() { *x = Int64Array{} - mi := &file_mxaccess_gateway_proto_msgTypes[52] + mi := &file_mxaccess_gateway_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4486,7 +5128,7 @@ func (x *Int64Array) String() string { func (*Int64Array) ProtoMessage() {} func (x *Int64Array) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[52] + mi := &file_mxaccess_gateway_proto_msgTypes[60] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4499,7 +5141,7 @@ func (x *Int64Array) ProtoReflect() protoreflect.Message { // Deprecated: Use Int64Array.ProtoReflect.Descriptor instead. func (*Int64Array) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{52} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{60} } func (x *Int64Array) GetValues() []int64 { @@ -4518,7 +5160,7 @@ type FloatArray struct { func (x *FloatArray) Reset() { *x = FloatArray{} - mi := &file_mxaccess_gateway_proto_msgTypes[53] + mi := &file_mxaccess_gateway_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4530,7 +5172,7 @@ func (x *FloatArray) String() string { func (*FloatArray) ProtoMessage() {} func (x *FloatArray) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[53] + mi := &file_mxaccess_gateway_proto_msgTypes[61] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4543,7 +5185,7 @@ func (x *FloatArray) ProtoReflect() protoreflect.Message { // Deprecated: Use FloatArray.ProtoReflect.Descriptor instead. func (*FloatArray) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{53} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{61} } func (x *FloatArray) GetValues() []float32 { @@ -4562,7 +5204,7 @@ type DoubleArray struct { func (x *DoubleArray) Reset() { *x = DoubleArray{} - mi := &file_mxaccess_gateway_proto_msgTypes[54] + mi := &file_mxaccess_gateway_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4574,7 +5216,7 @@ func (x *DoubleArray) String() string { func (*DoubleArray) ProtoMessage() {} func (x *DoubleArray) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[54] + mi := &file_mxaccess_gateway_proto_msgTypes[62] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4587,7 +5229,7 @@ func (x *DoubleArray) ProtoReflect() protoreflect.Message { // Deprecated: Use DoubleArray.ProtoReflect.Descriptor instead. func (*DoubleArray) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{54} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{62} } func (x *DoubleArray) GetValues() []float64 { @@ -4606,7 +5248,7 @@ type StringArray struct { func (x *StringArray) Reset() { *x = StringArray{} - mi := &file_mxaccess_gateway_proto_msgTypes[55] + mi := &file_mxaccess_gateway_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4618,7 +5260,7 @@ func (x *StringArray) String() string { func (*StringArray) ProtoMessage() {} func (x *StringArray) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[55] + mi := &file_mxaccess_gateway_proto_msgTypes[63] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4631,7 +5273,7 @@ func (x *StringArray) ProtoReflect() protoreflect.Message { // Deprecated: Use StringArray.ProtoReflect.Descriptor instead. func (*StringArray) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{55} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{63} } func (x *StringArray) GetValues() []string { @@ -4650,7 +5292,7 @@ type TimestampArray struct { func (x *TimestampArray) Reset() { *x = TimestampArray{} - mi := &file_mxaccess_gateway_proto_msgTypes[56] + mi := &file_mxaccess_gateway_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4662,7 +5304,7 @@ func (x *TimestampArray) String() string { func (*TimestampArray) ProtoMessage() {} func (x *TimestampArray) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[56] + mi := &file_mxaccess_gateway_proto_msgTypes[64] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4675,7 +5317,7 @@ func (x *TimestampArray) ProtoReflect() protoreflect.Message { // Deprecated: Use TimestampArray.ProtoReflect.Descriptor instead. func (*TimestampArray) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{56} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{64} } func (x *TimestampArray) GetValues() []*timestamppb.Timestamp { @@ -4694,7 +5336,7 @@ type RawArray struct { func (x *RawArray) Reset() { *x = RawArray{} - mi := &file_mxaccess_gateway_proto_msgTypes[57] + mi := &file_mxaccess_gateway_proto_msgTypes[65] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4706,7 +5348,7 @@ func (x *RawArray) String() string { func (*RawArray) ProtoMessage() {} func (x *RawArray) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[57] + mi := &file_mxaccess_gateway_proto_msgTypes[65] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4719,7 +5361,7 @@ func (x *RawArray) ProtoReflect() protoreflect.Message { // Deprecated: Use RawArray.ProtoReflect.Descriptor instead. func (*RawArray) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{57} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{65} } func (x *RawArray) GetValues() [][]byte { @@ -4739,7 +5381,7 @@ type ProtocolStatus struct { func (x *ProtocolStatus) Reset() { *x = ProtocolStatus{} - mi := &file_mxaccess_gateway_proto_msgTypes[58] + mi := &file_mxaccess_gateway_proto_msgTypes[66] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4751,7 +5393,7 @@ func (x *ProtocolStatus) String() string { func (*ProtocolStatus) ProtoMessage() {} func (x *ProtocolStatus) ProtoReflect() protoreflect.Message { - mi := &file_mxaccess_gateway_proto_msgTypes[58] + mi := &file_mxaccess_gateway_proto_msgTypes[66] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4764,7 +5406,7 @@ func (x *ProtocolStatus) ProtoReflect() protoreflect.Message { // Deprecated: Use ProtocolStatus.ProtoReflect.Descriptor instead. func (*ProtocolStatus) Descriptor() ([]byte, []int) { - return file_mxaccess_gateway_proto_rawDescGZIP(), []int{58} + return file_mxaccess_gateway_proto_rawDescGZIP(), []int{66} } func (x *ProtocolStatus) GetCode() ProtocolStatusCode { @@ -4819,7 +5461,7 @@ const file_mxaccess_gateway_proto_rawDesc = "" + "\n" + "session_id\x18\x01 \x01(\tR\tsessionId\x122\n" + "\x15client_correlation_id\x18\x02 \x01(\tR\x13clientCorrelationId\x128\n" + - "\acommand\x18\x03 \x01(\v2\x1e.mxaccess_gateway.v1.MxCommandR\acommand\"\xd5\x0e\n" + + "\acommand\x18\x03 \x01(\v2\x1e.mxaccess_gateway.v1.MxCommandR\acommand\"\xe1\x12\n" + "\tMxCommand\x126\n" + "\x04kind\x18\x01 \x01(\x0e2\".mxaccess_gateway.v1.MxCommandKindR\x04kind\x12B\n" + "\bregister\x18\n" + @@ -4843,7 +5485,13 @@ const file_mxaccess_gateway_proto_rawDesc = "" + "\rwrite_secured\x18\x18 \x01(\v2(.mxaccess_gateway.v1.WriteSecuredCommandH\x00R\fwriteSecured\x12R\n" + "\x0ewrite_secured2\x18\x19 \x01(\v2).mxaccess_gateway.v1.WriteSecured2CommandH\x00R\rwriteSecured2\x12[\n" + "\x11authenticate_user\x18\x1a \x01(\v2,.mxaccess_gateway.v1.AuthenticateUserCommandH\x00R\x10authenticateUser\x12`\n" + - "\x14archestra_user_to_id\x18\x1b \x01(\v2-.mxaccess_gateway.v1.ArchestrAUserToIdCommandH\x00R\x11archestraUserToId\x126\n" + + "\x14archestra_user_to_id\x18\x1b \x01(\v2-.mxaccess_gateway.v1.ArchestrAUserToIdCommandH\x00R\x11archestraUserToId\x12M\n" + + "\radd_item_bulk\x18\x1c \x01(\v2'.mxaccess_gateway.v1.AddItemBulkCommandH\x00R\vaddItemBulk\x12V\n" + + "\x10advise_item_bulk\x18\x1d \x01(\v2*.mxaccess_gateway.v1.AdviseItemBulkCommandH\x00R\x0eadviseItemBulk\x12V\n" + + "\x10remove_item_bulk\x18\x1e \x01(\v2*.mxaccess_gateway.v1.RemoveItemBulkCommandH\x00R\x0eremoveItemBulk\x12]\n" + + "\x13un_advise_item_bulk\x18\x1f \x01(\v2,.mxaccess_gateway.v1.UnAdviseItemBulkCommandH\x00R\x10unAdviseItemBulk\x12R\n" + + "\x0esubscribe_bulk\x18 \x01(\v2).mxaccess_gateway.v1.SubscribeBulkCommandH\x00R\rsubscribeBulk\x12X\n" + + "\x10unsubscribe_bulk\x18! \x01(\v2+.mxaccess_gateway.v1.UnsubscribeBulkCommandH\x00R\x0funsubscribeBulk\x126\n" + "\x04ping\x18d \x01(\v2 .mxaccess_gateway.v1.PingCommandH\x00R\x04ping\x12Y\n" + "\x11get_session_state\x18e \x01(\v2+.mxaccess_gateway.v1.GetSessionStateCommandH\x00R\x0fgetSessionState\x12S\n" + "\x0fget_worker_info\x18f \x01(\v2).mxaccess_gateway.v1.GetWorkerInfoCommandH\x00R\rgetWorkerInfo\x12L\n" + @@ -4929,7 +5577,25 @@ const file_mxaccess_gateway_proto_rawDesc = "" + "\x18ArchestrAUserToIdCommand\x12#\n" + "\rserver_handle\x18\x01 \x01(\x05R\fserverHandle\x12 \n" + "\fuser_id_guid\x18\x02 \x01(\tR\n" + - "userIdGuid\"'\n" + + "userIdGuid\"^\n" + + "\x12AddItemBulkCommand\x12#\n" + + "\rserver_handle\x18\x01 \x01(\x05R\fserverHandle\x12#\n" + + "\rtag_addresses\x18\x02 \x03(\tR\ftagAddresses\"_\n" + + "\x15AdviseItemBulkCommand\x12#\n" + + "\rserver_handle\x18\x01 \x01(\x05R\fserverHandle\x12!\n" + + "\fitem_handles\x18\x02 \x03(\x05R\vitemHandles\"_\n" + + "\x15RemoveItemBulkCommand\x12#\n" + + "\rserver_handle\x18\x01 \x01(\x05R\fserverHandle\x12!\n" + + "\fitem_handles\x18\x02 \x03(\x05R\vitemHandles\"a\n" + + "\x17UnAdviseItemBulkCommand\x12#\n" + + "\rserver_handle\x18\x01 \x01(\x05R\fserverHandle\x12!\n" + + "\fitem_handles\x18\x02 \x03(\x05R\vitemHandles\"`\n" + + "\x14SubscribeBulkCommand\x12#\n" + + "\rserver_handle\x18\x01 \x01(\x05R\fserverHandle\x12#\n" + + "\rtag_addresses\x18\x02 \x03(\tR\ftagAddresses\"`\n" + + "\x16UnsubscribeBulkCommand\x12#\n" + + "\rserver_handle\x18\x01 \x01(\x05R\fserverHandle\x12!\n" + + "\fitem_handles\x18\x02 \x03(\x05R\vitemHandles\"'\n" + "\vPingCommand\x12\x18\n" + "\amessage\x18\x01 \x01(\tR\amessage\"\x18\n" + "\x16GetSessionStateCommand\"\x16\n" + @@ -4938,8 +5604,7 @@ const file_mxaccess_gateway_proto_rawDesc = "" + "\n" + "max_events\x18\x01 \x01(\rR\tmaxEvents\"U\n" + "\x15ShutdownWorkerCommand\x12<\n" + - "\fgrace_period\x18\x01 \x01(\v2\x19.google.protobuf.DurationR\vgracePeriod\"\x80\n" + - "\n" + + "\fgrace_period\x18\x01 \x01(\v2\x19.google.protobuf.DurationR\vgracePeriod\"\xfb\r\n" + "\x0eMxCommandReply\x12\x1d\n" + "\n" + "session_id\x18\x01 \x01(\tR\tsessionId\x12%\n" + @@ -4958,6 +5623,12 @@ const file_mxaccess_gateway_proto_rawDesc = "" + "\bactivate\x18\x19 \x01(\v2\".mxaccess_gateway.v1.ActivateReplyH\x00R\bactivate\x12Y\n" + "\x11authenticate_user\x18\x1a \x01(\v2*.mxaccess_gateway.v1.AuthenticateUserReplyH\x00R\x10authenticateUser\x12^\n" + "\x14archestra_user_to_id\x18\x1b \x01(\v2+.mxaccess_gateway.v1.ArchestrAUserToIdReplyH\x00R\x11archestraUserToId\x12M\n" + + "\radd_item_bulk\x18\x1c \x01(\v2'.mxaccess_gateway.v1.BulkSubscribeReplyH\x00R\vaddItemBulk\x12S\n" + + "\x10advise_item_bulk\x18\x1d \x01(\v2'.mxaccess_gateway.v1.BulkSubscribeReplyH\x00R\x0eadviseItemBulk\x12S\n" + + "\x10remove_item_bulk\x18\x1e \x01(\v2'.mxaccess_gateway.v1.BulkSubscribeReplyH\x00R\x0eremoveItemBulk\x12X\n" + + "\x13un_advise_item_bulk\x18\x1f \x01(\v2'.mxaccess_gateway.v1.BulkSubscribeReplyH\x00R\x10unAdviseItemBulk\x12P\n" + + "\x0esubscribe_bulk\x18 \x01(\v2'.mxaccess_gateway.v1.BulkSubscribeReplyH\x00R\rsubscribeBulk\x12T\n" + + "\x10unsubscribe_bulk\x18! \x01(\v2'.mxaccess_gateway.v1.BulkSubscribeReplyH\x00R\x0funsubscribeBulk\x12M\n" + "\rsession_state\x18d \x01(\v2&.mxaccess_gateway.v1.SessionStateReplyH\x00R\fsessionState\x12G\n" + "\vworker_info\x18e \x01(\v2$.mxaccess_gateway.v1.WorkerInfoReplyH\x00R\n" + "workerInfo\x12J\n" + @@ -4983,7 +5654,17 @@ const file_mxaccess_gateway_proto_rawDesc = "" + "\x15AuthenticateUserReply\x12\x17\n" + "\auser_id\x18\x01 \x01(\x05R\x06userId\"1\n" + "\x16ArchestrAUserToIdReply\x12\x17\n" + - "\auser_id\x18\x01 \x01(\x05R\x06userId\"L\n" + + "\auser_id\x18\x01 \x01(\x05R\x06userId\"\xc4\x01\n" + + "\x0fSubscribeResult\x12#\n" + + "\rserver_handle\x18\x01 \x01(\x05R\fserverHandle\x12\x1f\n" + + "\vtag_address\x18\x02 \x01(\tR\n" + + "tagAddress\x12\x1f\n" + + "\vitem_handle\x18\x03 \x01(\x05R\n" + + "itemHandle\x12%\n" + + "\x0ewas_successful\x18\x04 \x01(\bR\rwasSuccessful\x12#\n" + + "\rerror_message\x18\x05 \x01(\tR\ferrorMessage\"T\n" + + "\x12BulkSubscribeReply\x12>\n" + + "\aresults\x18\x01 \x03(\v2$.mxaccess_gateway.v1.SubscribeResultR\aresults\"L\n" + "\x11SessionStateReply\x127\n" + "\x05state\x18\x01 \x01(\x0e2!.mxaccess_gateway.v1.SessionStateR\x05state\"\xb4\x01\n" + "\x0fWorkerInfoReply\x12*\n" + @@ -5098,7 +5779,7 @@ const file_mxaccess_gateway_proto_rawDesc = "" + "\x06values\x18\x01 \x03(\fR\x06values\"g\n" + "\x0eProtocolStatus\x12;\n" + "\x04code\x18\x01 \x01(\x0e2'.mxaccess_gateway.v1.ProtocolStatusCodeR\x04code\x12\x18\n" + - "\amessage\x18\x02 \x01(\tR\amessage*\xbf\x06\n" + + "\amessage\x18\x02 \x01(\tR\amessage*\xa1\b\n" + "\rMxCommandKind\x12\x1f\n" + "\x1bMX_COMMAND_KIND_UNSPECIFIED\x10\x00\x12\x1c\n" + "\x18MX_COMMAND_KIND_REGISTER\x10\x01\x12\x1e\n" + @@ -5119,7 +5800,13 @@ const file_mxaccess_gateway_proto_rawDesc = "" + "\x1dMX_COMMAND_KIND_WRITE_SECURED\x10\x0f\x12\"\n" + "\x1eMX_COMMAND_KIND_WRITE_SECURED2\x10\x10\x12%\n" + "!MX_COMMAND_KIND_AUTHENTICATE_USER\x10\x11\x12(\n" + - "$MX_COMMAND_KIND_ARCHESTRA_USER_TO_ID\x10\x12\x12\x18\n" + + "$MX_COMMAND_KIND_ARCHESTRA_USER_TO_ID\x10\x12\x12!\n" + + "\x1dMX_COMMAND_KIND_ADD_ITEM_BULK\x10\x13\x12$\n" + + " MX_COMMAND_KIND_ADVISE_ITEM_BULK\x10\x14\x12$\n" + + " MX_COMMAND_KIND_REMOVE_ITEM_BULK\x10\x15\x12'\n" + + "#MX_COMMAND_KIND_UN_ADVISE_ITEM_BULK\x10\x16\x12\"\n" + + "\x1eMX_COMMAND_KIND_SUBSCRIBE_BULK\x10\x17\x12$\n" + + " MX_COMMAND_KIND_UNSUBSCRIBE_BULK\x10\x18\x12\x18\n" + "\x14MX_COMMAND_KIND_PING\x10d\x12%\n" + "!MX_COMMAND_KIND_GET_SESSION_STATE\x10e\x12#\n" + "\x1fMX_COMMAND_KIND_GET_WORKER_INFO\x10f\x12 \n" + @@ -5217,7 +5904,7 @@ func file_mxaccess_gateway_proto_rawDescGZIP() []byte { } var file_mxaccess_gateway_proto_enumTypes = make([]protoimpl.EnumInfo, 7) -var file_mxaccess_gateway_proto_msgTypes = make([]protoimpl.MessageInfo, 59) +var file_mxaccess_gateway_proto_msgTypes = make([]protoimpl.MessageInfo, 67) var file_mxaccess_gateway_proto_goTypes = []any{ (MxCommandKind)(0), // 0: mxaccess_gateway.v1.MxCommandKind (MxEventFamily)(0), // 1: mxaccess_gateway.v1.MxEventFamily @@ -5251,142 +5938,163 @@ var file_mxaccess_gateway_proto_goTypes = []any{ (*WriteSecured2Command)(nil), // 29: mxaccess_gateway.v1.WriteSecured2Command (*AuthenticateUserCommand)(nil), // 30: mxaccess_gateway.v1.AuthenticateUserCommand (*ArchestrAUserToIdCommand)(nil), // 31: mxaccess_gateway.v1.ArchestrAUserToIdCommand - (*PingCommand)(nil), // 32: mxaccess_gateway.v1.PingCommand - (*GetSessionStateCommand)(nil), // 33: mxaccess_gateway.v1.GetSessionStateCommand - (*GetWorkerInfoCommand)(nil), // 34: mxaccess_gateway.v1.GetWorkerInfoCommand - (*DrainEventsCommand)(nil), // 35: mxaccess_gateway.v1.DrainEventsCommand - (*ShutdownWorkerCommand)(nil), // 36: mxaccess_gateway.v1.ShutdownWorkerCommand - (*MxCommandReply)(nil), // 37: mxaccess_gateway.v1.MxCommandReply - (*RegisterReply)(nil), // 38: mxaccess_gateway.v1.RegisterReply - (*AddItemReply)(nil), // 39: mxaccess_gateway.v1.AddItemReply - (*AddItem2Reply)(nil), // 40: mxaccess_gateway.v1.AddItem2Reply - (*AddBufferedItemReply)(nil), // 41: mxaccess_gateway.v1.AddBufferedItemReply - (*SuspendReply)(nil), // 42: mxaccess_gateway.v1.SuspendReply - (*ActivateReply)(nil), // 43: mxaccess_gateway.v1.ActivateReply - (*AuthenticateUserReply)(nil), // 44: mxaccess_gateway.v1.AuthenticateUserReply - (*ArchestrAUserToIdReply)(nil), // 45: mxaccess_gateway.v1.ArchestrAUserToIdReply - (*SessionStateReply)(nil), // 46: mxaccess_gateway.v1.SessionStateReply - (*WorkerInfoReply)(nil), // 47: mxaccess_gateway.v1.WorkerInfoReply - (*DrainEventsReply)(nil), // 48: mxaccess_gateway.v1.DrainEventsReply - (*MxEvent)(nil), // 49: mxaccess_gateway.v1.MxEvent - (*OnDataChangeEvent)(nil), // 50: mxaccess_gateway.v1.OnDataChangeEvent - (*OnWriteCompleteEvent)(nil), // 51: mxaccess_gateway.v1.OnWriteCompleteEvent - (*OperationCompleteEvent)(nil), // 52: mxaccess_gateway.v1.OperationCompleteEvent - (*OnBufferedDataChangeEvent)(nil), // 53: mxaccess_gateway.v1.OnBufferedDataChangeEvent - (*MxStatusProxy)(nil), // 54: mxaccess_gateway.v1.MxStatusProxy - (*MxValue)(nil), // 55: mxaccess_gateway.v1.MxValue - (*MxArray)(nil), // 56: mxaccess_gateway.v1.MxArray - (*BoolArray)(nil), // 57: mxaccess_gateway.v1.BoolArray - (*Int32Array)(nil), // 58: mxaccess_gateway.v1.Int32Array - (*Int64Array)(nil), // 59: mxaccess_gateway.v1.Int64Array - (*FloatArray)(nil), // 60: mxaccess_gateway.v1.FloatArray - (*DoubleArray)(nil), // 61: mxaccess_gateway.v1.DoubleArray - (*StringArray)(nil), // 62: mxaccess_gateway.v1.StringArray - (*TimestampArray)(nil), // 63: mxaccess_gateway.v1.TimestampArray - (*RawArray)(nil), // 64: mxaccess_gateway.v1.RawArray - (*ProtocolStatus)(nil), // 65: mxaccess_gateway.v1.ProtocolStatus - (*durationpb.Duration)(nil), // 66: google.protobuf.Duration - (*timestamppb.Timestamp)(nil), // 67: google.protobuf.Timestamp + (*AddItemBulkCommand)(nil), // 32: mxaccess_gateway.v1.AddItemBulkCommand + (*AdviseItemBulkCommand)(nil), // 33: mxaccess_gateway.v1.AdviseItemBulkCommand + (*RemoveItemBulkCommand)(nil), // 34: mxaccess_gateway.v1.RemoveItemBulkCommand + (*UnAdviseItemBulkCommand)(nil), // 35: mxaccess_gateway.v1.UnAdviseItemBulkCommand + (*SubscribeBulkCommand)(nil), // 36: mxaccess_gateway.v1.SubscribeBulkCommand + (*UnsubscribeBulkCommand)(nil), // 37: mxaccess_gateway.v1.UnsubscribeBulkCommand + (*PingCommand)(nil), // 38: mxaccess_gateway.v1.PingCommand + (*GetSessionStateCommand)(nil), // 39: mxaccess_gateway.v1.GetSessionStateCommand + (*GetWorkerInfoCommand)(nil), // 40: mxaccess_gateway.v1.GetWorkerInfoCommand + (*DrainEventsCommand)(nil), // 41: mxaccess_gateway.v1.DrainEventsCommand + (*ShutdownWorkerCommand)(nil), // 42: mxaccess_gateway.v1.ShutdownWorkerCommand + (*MxCommandReply)(nil), // 43: mxaccess_gateway.v1.MxCommandReply + (*RegisterReply)(nil), // 44: mxaccess_gateway.v1.RegisterReply + (*AddItemReply)(nil), // 45: mxaccess_gateway.v1.AddItemReply + (*AddItem2Reply)(nil), // 46: mxaccess_gateway.v1.AddItem2Reply + (*AddBufferedItemReply)(nil), // 47: mxaccess_gateway.v1.AddBufferedItemReply + (*SuspendReply)(nil), // 48: mxaccess_gateway.v1.SuspendReply + (*ActivateReply)(nil), // 49: mxaccess_gateway.v1.ActivateReply + (*AuthenticateUserReply)(nil), // 50: mxaccess_gateway.v1.AuthenticateUserReply + (*ArchestrAUserToIdReply)(nil), // 51: mxaccess_gateway.v1.ArchestrAUserToIdReply + (*SubscribeResult)(nil), // 52: mxaccess_gateway.v1.SubscribeResult + (*BulkSubscribeReply)(nil), // 53: mxaccess_gateway.v1.BulkSubscribeReply + (*SessionStateReply)(nil), // 54: mxaccess_gateway.v1.SessionStateReply + (*WorkerInfoReply)(nil), // 55: mxaccess_gateway.v1.WorkerInfoReply + (*DrainEventsReply)(nil), // 56: mxaccess_gateway.v1.DrainEventsReply + (*MxEvent)(nil), // 57: mxaccess_gateway.v1.MxEvent + (*OnDataChangeEvent)(nil), // 58: mxaccess_gateway.v1.OnDataChangeEvent + (*OnWriteCompleteEvent)(nil), // 59: mxaccess_gateway.v1.OnWriteCompleteEvent + (*OperationCompleteEvent)(nil), // 60: mxaccess_gateway.v1.OperationCompleteEvent + (*OnBufferedDataChangeEvent)(nil), // 61: mxaccess_gateway.v1.OnBufferedDataChangeEvent + (*MxStatusProxy)(nil), // 62: mxaccess_gateway.v1.MxStatusProxy + (*MxValue)(nil), // 63: mxaccess_gateway.v1.MxValue + (*MxArray)(nil), // 64: mxaccess_gateway.v1.MxArray + (*BoolArray)(nil), // 65: mxaccess_gateway.v1.BoolArray + (*Int32Array)(nil), // 66: mxaccess_gateway.v1.Int32Array + (*Int64Array)(nil), // 67: mxaccess_gateway.v1.Int64Array + (*FloatArray)(nil), // 68: mxaccess_gateway.v1.FloatArray + (*DoubleArray)(nil), // 69: mxaccess_gateway.v1.DoubleArray + (*StringArray)(nil), // 70: mxaccess_gateway.v1.StringArray + (*TimestampArray)(nil), // 71: mxaccess_gateway.v1.TimestampArray + (*RawArray)(nil), // 72: mxaccess_gateway.v1.RawArray + (*ProtocolStatus)(nil), // 73: mxaccess_gateway.v1.ProtocolStatus + (*durationpb.Duration)(nil), // 74: google.protobuf.Duration + (*timestamppb.Timestamp)(nil), // 75: google.protobuf.Timestamp } var file_mxaccess_gateway_proto_depIdxs = []int32{ - 66, // 0: mxaccess_gateway.v1.OpenSessionRequest.command_timeout:type_name -> google.protobuf.Duration - 66, // 1: mxaccess_gateway.v1.OpenSessionReply.default_command_timeout:type_name -> google.protobuf.Duration - 65, // 2: mxaccess_gateway.v1.OpenSessionReply.protocol_status:type_name -> mxaccess_gateway.v1.ProtocolStatus - 6, // 3: mxaccess_gateway.v1.CloseSessionReply.final_state:type_name -> mxaccess_gateway.v1.SessionState - 65, // 4: mxaccess_gateway.v1.CloseSessionReply.protocol_status:type_name -> mxaccess_gateway.v1.ProtocolStatus - 13, // 5: mxaccess_gateway.v1.MxCommandRequest.command:type_name -> mxaccess_gateway.v1.MxCommand - 0, // 6: mxaccess_gateway.v1.MxCommand.kind:type_name -> mxaccess_gateway.v1.MxCommandKind - 14, // 7: mxaccess_gateway.v1.MxCommand.register:type_name -> mxaccess_gateway.v1.RegisterCommand - 15, // 8: mxaccess_gateway.v1.MxCommand.unregister:type_name -> mxaccess_gateway.v1.UnregisterCommand - 16, // 9: mxaccess_gateway.v1.MxCommand.add_item:type_name -> mxaccess_gateway.v1.AddItemCommand - 17, // 10: mxaccess_gateway.v1.MxCommand.add_item2:type_name -> mxaccess_gateway.v1.AddItem2Command - 18, // 11: mxaccess_gateway.v1.MxCommand.remove_item:type_name -> mxaccess_gateway.v1.RemoveItemCommand - 19, // 12: mxaccess_gateway.v1.MxCommand.advise:type_name -> mxaccess_gateway.v1.AdviseCommand - 20, // 13: mxaccess_gateway.v1.MxCommand.un_advise:type_name -> mxaccess_gateway.v1.UnAdviseCommand - 21, // 14: mxaccess_gateway.v1.MxCommand.advise_supervisory:type_name -> mxaccess_gateway.v1.AdviseSupervisoryCommand - 22, // 15: mxaccess_gateway.v1.MxCommand.add_buffered_item:type_name -> mxaccess_gateway.v1.AddBufferedItemCommand - 23, // 16: mxaccess_gateway.v1.MxCommand.set_buffered_update_interval:type_name -> mxaccess_gateway.v1.SetBufferedUpdateIntervalCommand - 24, // 17: mxaccess_gateway.v1.MxCommand.suspend:type_name -> mxaccess_gateway.v1.SuspendCommand - 25, // 18: mxaccess_gateway.v1.MxCommand.activate:type_name -> mxaccess_gateway.v1.ActivateCommand - 26, // 19: mxaccess_gateway.v1.MxCommand.write:type_name -> mxaccess_gateway.v1.WriteCommand - 27, // 20: mxaccess_gateway.v1.MxCommand.write2:type_name -> mxaccess_gateway.v1.Write2Command - 28, // 21: mxaccess_gateway.v1.MxCommand.write_secured:type_name -> mxaccess_gateway.v1.WriteSecuredCommand - 29, // 22: mxaccess_gateway.v1.MxCommand.write_secured2:type_name -> mxaccess_gateway.v1.WriteSecured2Command - 30, // 23: mxaccess_gateway.v1.MxCommand.authenticate_user:type_name -> mxaccess_gateway.v1.AuthenticateUserCommand - 31, // 24: mxaccess_gateway.v1.MxCommand.archestra_user_to_id:type_name -> mxaccess_gateway.v1.ArchestrAUserToIdCommand - 32, // 25: mxaccess_gateway.v1.MxCommand.ping:type_name -> mxaccess_gateway.v1.PingCommand - 33, // 26: mxaccess_gateway.v1.MxCommand.get_session_state:type_name -> mxaccess_gateway.v1.GetSessionStateCommand - 34, // 27: mxaccess_gateway.v1.MxCommand.get_worker_info:type_name -> mxaccess_gateway.v1.GetWorkerInfoCommand - 35, // 28: mxaccess_gateway.v1.MxCommand.drain_events:type_name -> mxaccess_gateway.v1.DrainEventsCommand - 36, // 29: mxaccess_gateway.v1.MxCommand.shutdown_worker:type_name -> mxaccess_gateway.v1.ShutdownWorkerCommand - 55, // 30: mxaccess_gateway.v1.WriteCommand.value:type_name -> mxaccess_gateway.v1.MxValue - 55, // 31: mxaccess_gateway.v1.Write2Command.value:type_name -> mxaccess_gateway.v1.MxValue - 55, // 32: mxaccess_gateway.v1.Write2Command.timestamp_value:type_name -> mxaccess_gateway.v1.MxValue - 55, // 33: mxaccess_gateway.v1.WriteSecuredCommand.value:type_name -> mxaccess_gateway.v1.MxValue - 55, // 34: mxaccess_gateway.v1.WriteSecured2Command.value:type_name -> mxaccess_gateway.v1.MxValue - 55, // 35: mxaccess_gateway.v1.WriteSecured2Command.timestamp_value:type_name -> mxaccess_gateway.v1.MxValue - 66, // 36: mxaccess_gateway.v1.ShutdownWorkerCommand.grace_period:type_name -> google.protobuf.Duration - 0, // 37: mxaccess_gateway.v1.MxCommandReply.kind:type_name -> mxaccess_gateway.v1.MxCommandKind - 65, // 38: mxaccess_gateway.v1.MxCommandReply.protocol_status:type_name -> mxaccess_gateway.v1.ProtocolStatus - 55, // 39: mxaccess_gateway.v1.MxCommandReply.return_value:type_name -> mxaccess_gateway.v1.MxValue - 54, // 40: mxaccess_gateway.v1.MxCommandReply.statuses:type_name -> mxaccess_gateway.v1.MxStatusProxy - 38, // 41: mxaccess_gateway.v1.MxCommandReply.register:type_name -> mxaccess_gateway.v1.RegisterReply - 39, // 42: mxaccess_gateway.v1.MxCommandReply.add_item:type_name -> mxaccess_gateway.v1.AddItemReply - 40, // 43: mxaccess_gateway.v1.MxCommandReply.add_item2:type_name -> mxaccess_gateway.v1.AddItem2Reply - 41, // 44: mxaccess_gateway.v1.MxCommandReply.add_buffered_item:type_name -> mxaccess_gateway.v1.AddBufferedItemReply - 42, // 45: mxaccess_gateway.v1.MxCommandReply.suspend:type_name -> mxaccess_gateway.v1.SuspendReply - 43, // 46: mxaccess_gateway.v1.MxCommandReply.activate:type_name -> mxaccess_gateway.v1.ActivateReply - 44, // 47: mxaccess_gateway.v1.MxCommandReply.authenticate_user:type_name -> mxaccess_gateway.v1.AuthenticateUserReply - 45, // 48: mxaccess_gateway.v1.MxCommandReply.archestra_user_to_id:type_name -> mxaccess_gateway.v1.ArchestrAUserToIdReply - 46, // 49: mxaccess_gateway.v1.MxCommandReply.session_state:type_name -> mxaccess_gateway.v1.SessionStateReply - 47, // 50: mxaccess_gateway.v1.MxCommandReply.worker_info:type_name -> mxaccess_gateway.v1.WorkerInfoReply - 48, // 51: mxaccess_gateway.v1.MxCommandReply.drain_events:type_name -> mxaccess_gateway.v1.DrainEventsReply - 54, // 52: mxaccess_gateway.v1.SuspendReply.status:type_name -> mxaccess_gateway.v1.MxStatusProxy - 54, // 53: mxaccess_gateway.v1.ActivateReply.status:type_name -> mxaccess_gateway.v1.MxStatusProxy - 6, // 54: mxaccess_gateway.v1.SessionStateReply.state:type_name -> mxaccess_gateway.v1.SessionState - 49, // 55: mxaccess_gateway.v1.DrainEventsReply.events:type_name -> mxaccess_gateway.v1.MxEvent - 1, // 56: mxaccess_gateway.v1.MxEvent.family:type_name -> mxaccess_gateway.v1.MxEventFamily - 55, // 57: mxaccess_gateway.v1.MxEvent.value:type_name -> mxaccess_gateway.v1.MxValue - 67, // 58: mxaccess_gateway.v1.MxEvent.source_timestamp:type_name -> google.protobuf.Timestamp - 54, // 59: mxaccess_gateway.v1.MxEvent.statuses:type_name -> mxaccess_gateway.v1.MxStatusProxy - 67, // 60: mxaccess_gateway.v1.MxEvent.worker_timestamp:type_name -> google.protobuf.Timestamp - 67, // 61: mxaccess_gateway.v1.MxEvent.gateway_receive_timestamp:type_name -> google.protobuf.Timestamp - 50, // 62: mxaccess_gateway.v1.MxEvent.on_data_change:type_name -> mxaccess_gateway.v1.OnDataChangeEvent - 51, // 63: mxaccess_gateway.v1.MxEvent.on_write_complete:type_name -> mxaccess_gateway.v1.OnWriteCompleteEvent - 52, // 64: mxaccess_gateway.v1.MxEvent.operation_complete:type_name -> mxaccess_gateway.v1.OperationCompleteEvent - 53, // 65: mxaccess_gateway.v1.MxEvent.on_buffered_data_change:type_name -> mxaccess_gateway.v1.OnBufferedDataChangeEvent - 4, // 66: mxaccess_gateway.v1.OnBufferedDataChangeEvent.data_type:type_name -> mxaccess_gateway.v1.MxDataType - 56, // 67: mxaccess_gateway.v1.OnBufferedDataChangeEvent.quality_values:type_name -> mxaccess_gateway.v1.MxArray - 56, // 68: mxaccess_gateway.v1.OnBufferedDataChangeEvent.timestamp_values:type_name -> mxaccess_gateway.v1.MxArray - 2, // 69: mxaccess_gateway.v1.MxStatusProxy.category:type_name -> mxaccess_gateway.v1.MxStatusCategory - 3, // 70: mxaccess_gateway.v1.MxStatusProxy.detected_by:type_name -> mxaccess_gateway.v1.MxStatusSource - 4, // 71: mxaccess_gateway.v1.MxValue.data_type:type_name -> mxaccess_gateway.v1.MxDataType - 67, // 72: mxaccess_gateway.v1.MxValue.timestamp_value:type_name -> google.protobuf.Timestamp - 56, // 73: mxaccess_gateway.v1.MxValue.array_value:type_name -> mxaccess_gateway.v1.MxArray - 4, // 74: mxaccess_gateway.v1.MxArray.element_data_type:type_name -> mxaccess_gateway.v1.MxDataType - 57, // 75: mxaccess_gateway.v1.MxArray.bool_values:type_name -> mxaccess_gateway.v1.BoolArray - 58, // 76: mxaccess_gateway.v1.MxArray.int32_values:type_name -> mxaccess_gateway.v1.Int32Array - 59, // 77: mxaccess_gateway.v1.MxArray.int64_values:type_name -> mxaccess_gateway.v1.Int64Array - 60, // 78: mxaccess_gateway.v1.MxArray.float_values:type_name -> mxaccess_gateway.v1.FloatArray - 61, // 79: mxaccess_gateway.v1.MxArray.double_values:type_name -> mxaccess_gateway.v1.DoubleArray - 62, // 80: mxaccess_gateway.v1.MxArray.string_values:type_name -> mxaccess_gateway.v1.StringArray - 63, // 81: mxaccess_gateway.v1.MxArray.timestamp_values:type_name -> mxaccess_gateway.v1.TimestampArray - 64, // 82: mxaccess_gateway.v1.MxArray.raw_values:type_name -> mxaccess_gateway.v1.RawArray - 67, // 83: mxaccess_gateway.v1.TimestampArray.values:type_name -> google.protobuf.Timestamp - 5, // 84: mxaccess_gateway.v1.ProtocolStatus.code:type_name -> mxaccess_gateway.v1.ProtocolStatusCode - 7, // 85: mxaccess_gateway.v1.MxAccessGateway.OpenSession:input_type -> mxaccess_gateway.v1.OpenSessionRequest - 9, // 86: mxaccess_gateway.v1.MxAccessGateway.CloseSession:input_type -> mxaccess_gateway.v1.CloseSessionRequest - 12, // 87: mxaccess_gateway.v1.MxAccessGateway.Invoke:input_type -> mxaccess_gateway.v1.MxCommandRequest - 11, // 88: mxaccess_gateway.v1.MxAccessGateway.StreamEvents:input_type -> mxaccess_gateway.v1.StreamEventsRequest - 8, // 89: mxaccess_gateway.v1.MxAccessGateway.OpenSession:output_type -> mxaccess_gateway.v1.OpenSessionReply - 10, // 90: mxaccess_gateway.v1.MxAccessGateway.CloseSession:output_type -> mxaccess_gateway.v1.CloseSessionReply - 37, // 91: mxaccess_gateway.v1.MxAccessGateway.Invoke:output_type -> mxaccess_gateway.v1.MxCommandReply - 49, // 92: mxaccess_gateway.v1.MxAccessGateway.StreamEvents:output_type -> mxaccess_gateway.v1.MxEvent - 89, // [89:93] is the sub-list for method output_type - 85, // [85:89] is the sub-list for method input_type - 85, // [85:85] is the sub-list for extension type_name - 85, // [85:85] is the sub-list for extension extendee - 0, // [0:85] is the sub-list for field type_name + 74, // 0: mxaccess_gateway.v1.OpenSessionRequest.command_timeout:type_name -> google.protobuf.Duration + 74, // 1: mxaccess_gateway.v1.OpenSessionReply.default_command_timeout:type_name -> google.protobuf.Duration + 73, // 2: mxaccess_gateway.v1.OpenSessionReply.protocol_status:type_name -> mxaccess_gateway.v1.ProtocolStatus + 6, // 3: mxaccess_gateway.v1.CloseSessionReply.final_state:type_name -> mxaccess_gateway.v1.SessionState + 73, // 4: mxaccess_gateway.v1.CloseSessionReply.protocol_status:type_name -> mxaccess_gateway.v1.ProtocolStatus + 13, // 5: mxaccess_gateway.v1.MxCommandRequest.command:type_name -> mxaccess_gateway.v1.MxCommand + 0, // 6: mxaccess_gateway.v1.MxCommand.kind:type_name -> mxaccess_gateway.v1.MxCommandKind + 14, // 7: mxaccess_gateway.v1.MxCommand.register:type_name -> mxaccess_gateway.v1.RegisterCommand + 15, // 8: mxaccess_gateway.v1.MxCommand.unregister:type_name -> mxaccess_gateway.v1.UnregisterCommand + 16, // 9: mxaccess_gateway.v1.MxCommand.add_item:type_name -> mxaccess_gateway.v1.AddItemCommand + 17, // 10: mxaccess_gateway.v1.MxCommand.add_item2:type_name -> mxaccess_gateway.v1.AddItem2Command + 18, // 11: mxaccess_gateway.v1.MxCommand.remove_item:type_name -> mxaccess_gateway.v1.RemoveItemCommand + 19, // 12: mxaccess_gateway.v1.MxCommand.advise:type_name -> mxaccess_gateway.v1.AdviseCommand + 20, // 13: mxaccess_gateway.v1.MxCommand.un_advise:type_name -> mxaccess_gateway.v1.UnAdviseCommand + 21, // 14: mxaccess_gateway.v1.MxCommand.advise_supervisory:type_name -> mxaccess_gateway.v1.AdviseSupervisoryCommand + 22, // 15: mxaccess_gateway.v1.MxCommand.add_buffered_item:type_name -> mxaccess_gateway.v1.AddBufferedItemCommand + 23, // 16: mxaccess_gateway.v1.MxCommand.set_buffered_update_interval:type_name -> mxaccess_gateway.v1.SetBufferedUpdateIntervalCommand + 24, // 17: mxaccess_gateway.v1.MxCommand.suspend:type_name -> mxaccess_gateway.v1.SuspendCommand + 25, // 18: mxaccess_gateway.v1.MxCommand.activate:type_name -> mxaccess_gateway.v1.ActivateCommand + 26, // 19: mxaccess_gateway.v1.MxCommand.write:type_name -> mxaccess_gateway.v1.WriteCommand + 27, // 20: mxaccess_gateway.v1.MxCommand.write2:type_name -> mxaccess_gateway.v1.Write2Command + 28, // 21: mxaccess_gateway.v1.MxCommand.write_secured:type_name -> mxaccess_gateway.v1.WriteSecuredCommand + 29, // 22: mxaccess_gateway.v1.MxCommand.write_secured2:type_name -> mxaccess_gateway.v1.WriteSecured2Command + 30, // 23: mxaccess_gateway.v1.MxCommand.authenticate_user:type_name -> mxaccess_gateway.v1.AuthenticateUserCommand + 31, // 24: mxaccess_gateway.v1.MxCommand.archestra_user_to_id:type_name -> mxaccess_gateway.v1.ArchestrAUserToIdCommand + 32, // 25: mxaccess_gateway.v1.MxCommand.add_item_bulk:type_name -> mxaccess_gateway.v1.AddItemBulkCommand + 33, // 26: mxaccess_gateway.v1.MxCommand.advise_item_bulk:type_name -> mxaccess_gateway.v1.AdviseItemBulkCommand + 34, // 27: mxaccess_gateway.v1.MxCommand.remove_item_bulk:type_name -> mxaccess_gateway.v1.RemoveItemBulkCommand + 35, // 28: mxaccess_gateway.v1.MxCommand.un_advise_item_bulk:type_name -> mxaccess_gateway.v1.UnAdviseItemBulkCommand + 36, // 29: mxaccess_gateway.v1.MxCommand.subscribe_bulk:type_name -> mxaccess_gateway.v1.SubscribeBulkCommand + 37, // 30: mxaccess_gateway.v1.MxCommand.unsubscribe_bulk:type_name -> mxaccess_gateway.v1.UnsubscribeBulkCommand + 38, // 31: mxaccess_gateway.v1.MxCommand.ping:type_name -> mxaccess_gateway.v1.PingCommand + 39, // 32: mxaccess_gateway.v1.MxCommand.get_session_state:type_name -> mxaccess_gateway.v1.GetSessionStateCommand + 40, // 33: mxaccess_gateway.v1.MxCommand.get_worker_info:type_name -> mxaccess_gateway.v1.GetWorkerInfoCommand + 41, // 34: mxaccess_gateway.v1.MxCommand.drain_events:type_name -> mxaccess_gateway.v1.DrainEventsCommand + 42, // 35: mxaccess_gateway.v1.MxCommand.shutdown_worker:type_name -> mxaccess_gateway.v1.ShutdownWorkerCommand + 63, // 36: mxaccess_gateway.v1.WriteCommand.value:type_name -> mxaccess_gateway.v1.MxValue + 63, // 37: mxaccess_gateway.v1.Write2Command.value:type_name -> mxaccess_gateway.v1.MxValue + 63, // 38: mxaccess_gateway.v1.Write2Command.timestamp_value:type_name -> mxaccess_gateway.v1.MxValue + 63, // 39: mxaccess_gateway.v1.WriteSecuredCommand.value:type_name -> mxaccess_gateway.v1.MxValue + 63, // 40: mxaccess_gateway.v1.WriteSecured2Command.value:type_name -> mxaccess_gateway.v1.MxValue + 63, // 41: mxaccess_gateway.v1.WriteSecured2Command.timestamp_value:type_name -> mxaccess_gateway.v1.MxValue + 74, // 42: mxaccess_gateway.v1.ShutdownWorkerCommand.grace_period:type_name -> google.protobuf.Duration + 0, // 43: mxaccess_gateway.v1.MxCommandReply.kind:type_name -> mxaccess_gateway.v1.MxCommandKind + 73, // 44: mxaccess_gateway.v1.MxCommandReply.protocol_status:type_name -> mxaccess_gateway.v1.ProtocolStatus + 63, // 45: mxaccess_gateway.v1.MxCommandReply.return_value:type_name -> mxaccess_gateway.v1.MxValue + 62, // 46: mxaccess_gateway.v1.MxCommandReply.statuses:type_name -> mxaccess_gateway.v1.MxStatusProxy + 44, // 47: mxaccess_gateway.v1.MxCommandReply.register:type_name -> mxaccess_gateway.v1.RegisterReply + 45, // 48: mxaccess_gateway.v1.MxCommandReply.add_item:type_name -> mxaccess_gateway.v1.AddItemReply + 46, // 49: mxaccess_gateway.v1.MxCommandReply.add_item2:type_name -> mxaccess_gateway.v1.AddItem2Reply + 47, // 50: mxaccess_gateway.v1.MxCommandReply.add_buffered_item:type_name -> mxaccess_gateway.v1.AddBufferedItemReply + 48, // 51: mxaccess_gateway.v1.MxCommandReply.suspend:type_name -> mxaccess_gateway.v1.SuspendReply + 49, // 52: mxaccess_gateway.v1.MxCommandReply.activate:type_name -> mxaccess_gateway.v1.ActivateReply + 50, // 53: mxaccess_gateway.v1.MxCommandReply.authenticate_user:type_name -> mxaccess_gateway.v1.AuthenticateUserReply + 51, // 54: mxaccess_gateway.v1.MxCommandReply.archestra_user_to_id:type_name -> mxaccess_gateway.v1.ArchestrAUserToIdReply + 53, // 55: mxaccess_gateway.v1.MxCommandReply.add_item_bulk:type_name -> mxaccess_gateway.v1.BulkSubscribeReply + 53, // 56: mxaccess_gateway.v1.MxCommandReply.advise_item_bulk:type_name -> mxaccess_gateway.v1.BulkSubscribeReply + 53, // 57: mxaccess_gateway.v1.MxCommandReply.remove_item_bulk:type_name -> mxaccess_gateway.v1.BulkSubscribeReply + 53, // 58: mxaccess_gateway.v1.MxCommandReply.un_advise_item_bulk:type_name -> mxaccess_gateway.v1.BulkSubscribeReply + 53, // 59: mxaccess_gateway.v1.MxCommandReply.subscribe_bulk:type_name -> mxaccess_gateway.v1.BulkSubscribeReply + 53, // 60: mxaccess_gateway.v1.MxCommandReply.unsubscribe_bulk:type_name -> mxaccess_gateway.v1.BulkSubscribeReply + 54, // 61: mxaccess_gateway.v1.MxCommandReply.session_state:type_name -> mxaccess_gateway.v1.SessionStateReply + 55, // 62: mxaccess_gateway.v1.MxCommandReply.worker_info:type_name -> mxaccess_gateway.v1.WorkerInfoReply + 56, // 63: mxaccess_gateway.v1.MxCommandReply.drain_events:type_name -> mxaccess_gateway.v1.DrainEventsReply + 62, // 64: mxaccess_gateway.v1.SuspendReply.status:type_name -> mxaccess_gateway.v1.MxStatusProxy + 62, // 65: mxaccess_gateway.v1.ActivateReply.status:type_name -> mxaccess_gateway.v1.MxStatusProxy + 52, // 66: mxaccess_gateway.v1.BulkSubscribeReply.results:type_name -> mxaccess_gateway.v1.SubscribeResult + 6, // 67: mxaccess_gateway.v1.SessionStateReply.state:type_name -> mxaccess_gateway.v1.SessionState + 57, // 68: mxaccess_gateway.v1.DrainEventsReply.events:type_name -> mxaccess_gateway.v1.MxEvent + 1, // 69: mxaccess_gateway.v1.MxEvent.family:type_name -> mxaccess_gateway.v1.MxEventFamily + 63, // 70: mxaccess_gateway.v1.MxEvent.value:type_name -> mxaccess_gateway.v1.MxValue + 75, // 71: mxaccess_gateway.v1.MxEvent.source_timestamp:type_name -> google.protobuf.Timestamp + 62, // 72: mxaccess_gateway.v1.MxEvent.statuses:type_name -> mxaccess_gateway.v1.MxStatusProxy + 75, // 73: mxaccess_gateway.v1.MxEvent.worker_timestamp:type_name -> google.protobuf.Timestamp + 75, // 74: mxaccess_gateway.v1.MxEvent.gateway_receive_timestamp:type_name -> google.protobuf.Timestamp + 58, // 75: mxaccess_gateway.v1.MxEvent.on_data_change:type_name -> mxaccess_gateway.v1.OnDataChangeEvent + 59, // 76: mxaccess_gateway.v1.MxEvent.on_write_complete:type_name -> mxaccess_gateway.v1.OnWriteCompleteEvent + 60, // 77: mxaccess_gateway.v1.MxEvent.operation_complete:type_name -> mxaccess_gateway.v1.OperationCompleteEvent + 61, // 78: mxaccess_gateway.v1.MxEvent.on_buffered_data_change:type_name -> mxaccess_gateway.v1.OnBufferedDataChangeEvent + 4, // 79: mxaccess_gateway.v1.OnBufferedDataChangeEvent.data_type:type_name -> mxaccess_gateway.v1.MxDataType + 64, // 80: mxaccess_gateway.v1.OnBufferedDataChangeEvent.quality_values:type_name -> mxaccess_gateway.v1.MxArray + 64, // 81: mxaccess_gateway.v1.OnBufferedDataChangeEvent.timestamp_values:type_name -> mxaccess_gateway.v1.MxArray + 2, // 82: mxaccess_gateway.v1.MxStatusProxy.category:type_name -> mxaccess_gateway.v1.MxStatusCategory + 3, // 83: mxaccess_gateway.v1.MxStatusProxy.detected_by:type_name -> mxaccess_gateway.v1.MxStatusSource + 4, // 84: mxaccess_gateway.v1.MxValue.data_type:type_name -> mxaccess_gateway.v1.MxDataType + 75, // 85: mxaccess_gateway.v1.MxValue.timestamp_value:type_name -> google.protobuf.Timestamp + 64, // 86: mxaccess_gateway.v1.MxValue.array_value:type_name -> mxaccess_gateway.v1.MxArray + 4, // 87: mxaccess_gateway.v1.MxArray.element_data_type:type_name -> mxaccess_gateway.v1.MxDataType + 65, // 88: mxaccess_gateway.v1.MxArray.bool_values:type_name -> mxaccess_gateway.v1.BoolArray + 66, // 89: mxaccess_gateway.v1.MxArray.int32_values:type_name -> mxaccess_gateway.v1.Int32Array + 67, // 90: mxaccess_gateway.v1.MxArray.int64_values:type_name -> mxaccess_gateway.v1.Int64Array + 68, // 91: mxaccess_gateway.v1.MxArray.float_values:type_name -> mxaccess_gateway.v1.FloatArray + 69, // 92: mxaccess_gateway.v1.MxArray.double_values:type_name -> mxaccess_gateway.v1.DoubleArray + 70, // 93: mxaccess_gateway.v1.MxArray.string_values:type_name -> mxaccess_gateway.v1.StringArray + 71, // 94: mxaccess_gateway.v1.MxArray.timestamp_values:type_name -> mxaccess_gateway.v1.TimestampArray + 72, // 95: mxaccess_gateway.v1.MxArray.raw_values:type_name -> mxaccess_gateway.v1.RawArray + 75, // 96: mxaccess_gateway.v1.TimestampArray.values:type_name -> google.protobuf.Timestamp + 5, // 97: mxaccess_gateway.v1.ProtocolStatus.code:type_name -> mxaccess_gateway.v1.ProtocolStatusCode + 7, // 98: mxaccess_gateway.v1.MxAccessGateway.OpenSession:input_type -> mxaccess_gateway.v1.OpenSessionRequest + 9, // 99: mxaccess_gateway.v1.MxAccessGateway.CloseSession:input_type -> mxaccess_gateway.v1.CloseSessionRequest + 12, // 100: mxaccess_gateway.v1.MxAccessGateway.Invoke:input_type -> mxaccess_gateway.v1.MxCommandRequest + 11, // 101: mxaccess_gateway.v1.MxAccessGateway.StreamEvents:input_type -> mxaccess_gateway.v1.StreamEventsRequest + 8, // 102: mxaccess_gateway.v1.MxAccessGateway.OpenSession:output_type -> mxaccess_gateway.v1.OpenSessionReply + 10, // 103: mxaccess_gateway.v1.MxAccessGateway.CloseSession:output_type -> mxaccess_gateway.v1.CloseSessionReply + 43, // 104: mxaccess_gateway.v1.MxAccessGateway.Invoke:output_type -> mxaccess_gateway.v1.MxCommandReply + 57, // 105: mxaccess_gateway.v1.MxAccessGateway.StreamEvents:output_type -> mxaccess_gateway.v1.MxEvent + 102, // [102:106] is the sub-list for method output_type + 98, // [98:102] is the sub-list for method input_type + 98, // [98:98] is the sub-list for extension type_name + 98, // [98:98] is the sub-list for extension extendee + 0, // [0:98] is the sub-list for field type_name } func init() { file_mxaccess_gateway_proto_init() } @@ -5413,13 +6121,19 @@ func file_mxaccess_gateway_proto_init() { (*MxCommand_WriteSecured2)(nil), (*MxCommand_AuthenticateUser)(nil), (*MxCommand_ArchestraUserToId)(nil), + (*MxCommand_AddItemBulk)(nil), + (*MxCommand_AdviseItemBulk)(nil), + (*MxCommand_RemoveItemBulk)(nil), + (*MxCommand_UnAdviseItemBulk)(nil), + (*MxCommand_SubscribeBulk)(nil), + (*MxCommand_UnsubscribeBulk)(nil), (*MxCommand_Ping)(nil), (*MxCommand_GetSessionState)(nil), (*MxCommand_GetWorkerInfo)(nil), (*MxCommand_DrainEvents)(nil), (*MxCommand_ShutdownWorker)(nil), } - file_mxaccess_gateway_proto_msgTypes[30].OneofWrappers = []any{ + file_mxaccess_gateway_proto_msgTypes[36].OneofWrappers = []any{ (*MxCommandReply_Register)(nil), (*MxCommandReply_AddItem)(nil), (*MxCommandReply_AddItem2)(nil), @@ -5428,17 +6142,23 @@ func file_mxaccess_gateway_proto_init() { (*MxCommandReply_Activate)(nil), (*MxCommandReply_AuthenticateUser)(nil), (*MxCommandReply_ArchestraUserToId)(nil), + (*MxCommandReply_AddItemBulk)(nil), + (*MxCommandReply_AdviseItemBulk)(nil), + (*MxCommandReply_RemoveItemBulk)(nil), + (*MxCommandReply_UnAdviseItemBulk)(nil), + (*MxCommandReply_SubscribeBulk)(nil), + (*MxCommandReply_UnsubscribeBulk)(nil), (*MxCommandReply_SessionState)(nil), (*MxCommandReply_WorkerInfo)(nil), (*MxCommandReply_DrainEvents)(nil), } - file_mxaccess_gateway_proto_msgTypes[42].OneofWrappers = []any{ + file_mxaccess_gateway_proto_msgTypes[50].OneofWrappers = []any{ (*MxEvent_OnDataChange)(nil), (*MxEvent_OnWriteComplete)(nil), (*MxEvent_OperationComplete)(nil), (*MxEvent_OnBufferedDataChange)(nil), } - file_mxaccess_gateway_proto_msgTypes[48].OneofWrappers = []any{ + file_mxaccess_gateway_proto_msgTypes[56].OneofWrappers = []any{ (*MxValue_BoolValue)(nil), (*MxValue_Int32Value)(nil), (*MxValue_Int64Value)(nil), @@ -5449,7 +6169,7 @@ func file_mxaccess_gateway_proto_init() { (*MxValue_ArrayValue)(nil), (*MxValue_RawValue)(nil), } - file_mxaccess_gateway_proto_msgTypes[49].OneofWrappers = []any{ + file_mxaccess_gateway_proto_msgTypes[57].OneofWrappers = []any{ (*MxArray_BoolValues)(nil), (*MxArray_Int32Values)(nil), (*MxArray_Int64Values)(nil), @@ -5465,7 +6185,7 @@ func file_mxaccess_gateway_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: unsafe.Slice(unsafe.StringData(file_mxaccess_gateway_proto_rawDesc), len(file_mxaccess_gateway_proto_rawDesc)), NumEnums: 7, - NumMessages: 59, + NumMessages: 67, NumExtensions: 0, NumServices: 1, }, diff --git a/clients/go/mxgateway/client_session_test.go b/clients/go/mxgateway/client_session_test.go index 991b438..48f5290 100644 --- a/clients/go/mxgateway/client_session_test.go +++ b/clients/go/mxgateway/client_session_test.go @@ -117,6 +117,49 @@ func TestSessionHelpersBuildCommandsAndExposeRawReply(t *testing.T) { } } +func TestSubscribeBulkBuildsOneBulkCommandAndReturnsResults(t *testing.T) { + fake := &fakeGatewayServer{ + invokeReply: &pb.MxCommandReply{ + SessionId: "session-1", + Kind: pb.MxCommandKind_MX_COMMAND_KIND_SUBSCRIBE_BULK, + ProtocolStatus: &pb.ProtocolStatus{ + Code: pb.ProtocolStatusCode_PROTOCOL_STATUS_CODE_OK, + }, + Payload: &pb.MxCommandReply_SubscribeBulk{ + SubscribeBulk: &pb.BulkSubscribeReply{ + Results: []*pb.SubscribeResult{ + { + ServerHandle: 12, + TagAddress: "Area001.Pump001.Speed", + ItemHandle: 34, + WasSuccessful: true, + }, + }, + }, + }, + }, + } + client, cleanup := newBufconnClient(t, fake) + defer cleanup() + session := NewSessionForID(client, "session-1") + + results, err := session.SubscribeBulk(context.Background(), 12, []string{"Area001.Pump001.Speed"}) + if err != nil { + t.Fatalf("SubscribeBulk() error = %v", err) + } + + if len(results) != 1 || results[0].GetItemHandle() != 34 { + t.Fatalf("results = %#v, want item handle 34", results) + } + req := fake.invokeRequest + if req.GetCommand().GetKind() != pb.MxCommandKind_MX_COMMAND_KIND_SUBSCRIBE_BULK { + t.Fatalf("command kind = %s", req.GetCommand().GetKind()) + } + if got := req.GetCommand().GetSubscribeBulk().GetTagAddresses(); len(got) != 1 || got[0] != "Area001.Pump001.Speed" { + t.Fatalf("tag addresses = %#v", got) + } +} + func TestInvokeReturnsTypedMxAccessErrorWithRawReply(t *testing.T) { hresult := int32(-2147467259) fake := &fakeGatewayServer{ diff --git a/clients/go/mxgateway/session.go b/clients/go/mxgateway/session.go index 0a7412e..e5bf815 100644 --- a/clients/go/mxgateway/session.go +++ b/clients/go/mxgateway/session.go @@ -104,6 +104,25 @@ func (s *Session) Unregister(ctx context.Context, serverHandle int32) error { return err } +// RemoveItem invokes MXAccess RemoveItem. +func (s *Session) RemoveItem(ctx context.Context, serverHandle, itemHandle int32) error { + _, err := s.RemoveItemRaw(ctx, serverHandle, itemHandle) + return err +} + +// RemoveItemRaw invokes MXAccess RemoveItem and returns the raw reply. +func (s *Session) RemoveItemRaw(ctx context.Context, serverHandle, itemHandle int32) (*MxCommandReply, error) { + return s.invokeCommand(ctx, &pb.MxCommand{ + Kind: pb.MxCommandKind_MX_COMMAND_KIND_REMOVE_ITEM, + Payload: &pb.MxCommand_RemoveItem{ + RemoveItem: &pb.RemoveItemCommand{ + ServerHandle: serverHandle, + ItemHandle: itemHandle, + }, + }, + }) +} + // AddItem invokes MXAccess AddItem and returns the item handle. func (s *Session) AddItem(ctx context.Context, serverHandle int32, itemDefinition string) (int32, error) { reply, err := s.AddItemRaw(ctx, serverHandle, itemDefinition) @@ -182,6 +201,145 @@ func (s *Session) AdviseRaw(ctx context.Context, serverHandle, itemHandle int32) }) } +// UnAdvise invokes MXAccess UnAdvise. +func (s *Session) UnAdvise(ctx context.Context, serverHandle, itemHandle int32) error { + _, err := s.UnAdviseRaw(ctx, serverHandle, itemHandle) + return err +} + +// UnAdviseRaw invokes MXAccess UnAdvise and returns the raw reply. +func (s *Session) UnAdviseRaw(ctx context.Context, serverHandle, itemHandle int32) (*MxCommandReply, error) { + return s.invokeCommand(ctx, &pb.MxCommand{ + Kind: pb.MxCommandKind_MX_COMMAND_KIND_UN_ADVISE, + Payload: &pb.MxCommand_UnAdvise{ + UnAdvise: &pb.UnAdviseCommand{ + ServerHandle: serverHandle, + ItemHandle: itemHandle, + }, + }, + }) +} + +// AddItemBulk invokes MXAccess AddItem for each tag inside one gateway command. +func (s *Session) AddItemBulk(ctx context.Context, serverHandle int32, tagAddresses []string) ([]*SubscribeResult, error) { + if tagAddresses == nil { + return nil, errors.New("mxgateway: tag addresses are required") + } + reply, err := s.invokeCommand(ctx, &pb.MxCommand{ + Kind: pb.MxCommandKind_MX_COMMAND_KIND_ADD_ITEM_BULK, + Payload: &pb.MxCommand_AddItemBulk{ + AddItemBulk: &pb.AddItemBulkCommand{ + ServerHandle: serverHandle, + TagAddresses: tagAddresses, + }, + }, + }) + if err != nil { + return nil, err + } + return reply.GetAddItemBulk().GetResults(), nil +} + +// AdviseItemBulk invokes MXAccess Advise for each item handle inside one gateway command. +func (s *Session) AdviseItemBulk(ctx context.Context, serverHandle int32, itemHandles []int32) ([]*SubscribeResult, error) { + if itemHandles == nil { + return nil, errors.New("mxgateway: item handles are required") + } + reply, err := s.invokeCommand(ctx, &pb.MxCommand{ + Kind: pb.MxCommandKind_MX_COMMAND_KIND_ADVISE_ITEM_BULK, + Payload: &pb.MxCommand_AdviseItemBulk{ + AdviseItemBulk: &pb.AdviseItemBulkCommand{ + ServerHandle: serverHandle, + ItemHandles: itemHandles, + }, + }, + }) + if err != nil { + return nil, err + } + return reply.GetAdviseItemBulk().GetResults(), nil +} + +// RemoveItemBulk invokes MXAccess RemoveItem for each item handle inside one gateway command. +func (s *Session) RemoveItemBulk(ctx context.Context, serverHandle int32, itemHandles []int32) ([]*SubscribeResult, error) { + if itemHandles == nil { + return nil, errors.New("mxgateway: item handles are required") + } + reply, err := s.invokeCommand(ctx, &pb.MxCommand{ + Kind: pb.MxCommandKind_MX_COMMAND_KIND_REMOVE_ITEM_BULK, + Payload: &pb.MxCommand_RemoveItemBulk{ + RemoveItemBulk: &pb.RemoveItemBulkCommand{ + ServerHandle: serverHandle, + ItemHandles: itemHandles, + }, + }, + }) + if err != nil { + return nil, err + } + return reply.GetRemoveItemBulk().GetResults(), nil +} + +// UnAdviseItemBulk invokes MXAccess UnAdvise for each item handle inside one gateway command. +func (s *Session) UnAdviseItemBulk(ctx context.Context, serverHandle int32, itemHandles []int32) ([]*SubscribeResult, error) { + if itemHandles == nil { + return nil, errors.New("mxgateway: item handles are required") + } + reply, err := s.invokeCommand(ctx, &pb.MxCommand{ + Kind: pb.MxCommandKind_MX_COMMAND_KIND_UN_ADVISE_ITEM_BULK, + Payload: &pb.MxCommand_UnAdviseItemBulk{ + UnAdviseItemBulk: &pb.UnAdviseItemBulkCommand{ + ServerHandle: serverHandle, + ItemHandles: itemHandles, + }, + }, + }) + if err != nil { + return nil, err + } + return reply.GetUnAdviseItemBulk().GetResults(), nil +} + +// SubscribeBulk invokes AddItem and Advise for each tag inside one gateway command. +func (s *Session) SubscribeBulk(ctx context.Context, serverHandle int32, tagAddresses []string) ([]*SubscribeResult, error) { + if tagAddresses == nil { + return nil, errors.New("mxgateway: tag addresses are required") + } + reply, err := s.invokeCommand(ctx, &pb.MxCommand{ + Kind: pb.MxCommandKind_MX_COMMAND_KIND_SUBSCRIBE_BULK, + Payload: &pb.MxCommand_SubscribeBulk{ + SubscribeBulk: &pb.SubscribeBulkCommand{ + ServerHandle: serverHandle, + TagAddresses: tagAddresses, + }, + }, + }) + if err != nil { + return nil, err + } + return reply.GetSubscribeBulk().GetResults(), nil +} + +// UnsubscribeBulk invokes UnAdvise and RemoveItem for each item handle inside one gateway command. +func (s *Session) UnsubscribeBulk(ctx context.Context, serverHandle int32, itemHandles []int32) ([]*SubscribeResult, error) { + if itemHandles == nil { + return nil, errors.New("mxgateway: item handles are required") + } + reply, err := s.invokeCommand(ctx, &pb.MxCommand{ + Kind: pb.MxCommandKind_MX_COMMAND_KIND_UNSUBSCRIBE_BULK, + Payload: &pb.MxCommand_UnsubscribeBulk{ + UnsubscribeBulk: &pb.UnsubscribeBulkCommand{ + ServerHandle: serverHandle, + ItemHandles: itemHandles, + }, + }, + }) + if err != nil { + return nil, err + } + return reply.GetUnsubscribeBulk().GetResults(), nil +} + // Write invokes MXAccess Write. func (s *Session) Write(ctx context.Context, serverHandle, itemHandle int32, value *MxValue, userID int32) error { _, err := s.WriteRaw(ctx, serverHandle, itemHandle, value, userID) diff --git a/clients/go/mxgateway/types.go b/clients/go/mxgateway/types.go index 637b16c..399fe08 100644 --- a/clients/go/mxgateway/types.go +++ b/clients/go/mxgateway/types.go @@ -12,30 +12,40 @@ type RawEventStream = pb.MxAccessGateway_StreamEventsClient // Generated protobuf aliases keep raw contract access available from the public // mxgateway package while generated code remains under internal/generated. type ( - OpenSessionRequest = pb.OpenSessionRequest - OpenSessionReply = pb.OpenSessionReply - CloseSessionRequest = pb.CloseSessionRequest - CloseSessionReply = pb.CloseSessionReply - StreamEventsRequest = pb.StreamEventsRequest - MxCommandRequest = pb.MxCommandRequest - MxCommandReply = pb.MxCommandReply - MxCommand = pb.MxCommand - MxEvent = pb.MxEvent - MxValue = pb.MxValue - Value = pb.MxValue - MxArray = pb.MxArray - MxStatusProxy = pb.MxStatusProxy - ProtocolStatus = pb.ProtocolStatus - RegisterCommand = pb.RegisterCommand - UnregisterCommand = pb.UnregisterCommand - AddItemCommand = pb.AddItemCommand - AddItem2Command = pb.AddItem2Command - AdviseCommand = pb.AdviseCommand - WriteCommand = pb.WriteCommand - Write2Command = pb.Write2Command - RegisterReply = pb.RegisterReply - AddItemReply = pb.AddItemReply - AddItem2Reply = pb.AddItem2Reply + OpenSessionRequest = pb.OpenSessionRequest + OpenSessionReply = pb.OpenSessionReply + CloseSessionRequest = pb.CloseSessionRequest + CloseSessionReply = pb.CloseSessionReply + StreamEventsRequest = pb.StreamEventsRequest + MxCommandRequest = pb.MxCommandRequest + MxCommandReply = pb.MxCommandReply + MxCommand = pb.MxCommand + MxEvent = pb.MxEvent + MxValue = pb.MxValue + Value = pb.MxValue + MxArray = pb.MxArray + MxStatusProxy = pb.MxStatusProxy + ProtocolStatus = pb.ProtocolStatus + RegisterCommand = pb.RegisterCommand + UnregisterCommand = pb.UnregisterCommand + AddItemCommand = pb.AddItemCommand + AddItem2Command = pb.AddItem2Command + RemoveItemCommand = pb.RemoveItemCommand + AdviseCommand = pb.AdviseCommand + UnAdviseCommand = pb.UnAdviseCommand + AddItemBulkCommand = pb.AddItemBulkCommand + AdviseItemBulkCommand = pb.AdviseItemBulkCommand + RemoveItemBulkCommand = pb.RemoveItemBulkCommand + UnAdviseItemBulkCommand = pb.UnAdviseItemBulkCommand + SubscribeBulkCommand = pb.SubscribeBulkCommand + UnsubscribeBulkCommand = pb.UnsubscribeBulkCommand + WriteCommand = pb.WriteCommand + Write2Command = pb.Write2Command + RegisterReply = pb.RegisterReply + AddItemReply = pb.AddItemReply + AddItem2Reply = pb.AddItem2Reply + SubscribeResult = pb.SubscribeResult + BulkSubscribeReply = pb.BulkSubscribeReply ) type ( @@ -49,13 +59,21 @@ type ( ) const ( - CommandKindRegister = pb.MxCommandKind_MX_COMMAND_KIND_REGISTER - CommandKindUnregister = pb.MxCommandKind_MX_COMMAND_KIND_UNREGISTER - CommandKindAddItem = pb.MxCommandKind_MX_COMMAND_KIND_ADD_ITEM - CommandKindAddItem2 = pb.MxCommandKind_MX_COMMAND_KIND_ADD_ITEM2 - CommandKindAdvise = pb.MxCommandKind_MX_COMMAND_KIND_ADVISE - CommandKindWrite = pb.MxCommandKind_MX_COMMAND_KIND_WRITE - CommandKindWrite2 = pb.MxCommandKind_MX_COMMAND_KIND_WRITE2 + CommandKindRegister = pb.MxCommandKind_MX_COMMAND_KIND_REGISTER + CommandKindUnregister = pb.MxCommandKind_MX_COMMAND_KIND_UNREGISTER + CommandKindAddItem = pb.MxCommandKind_MX_COMMAND_KIND_ADD_ITEM + CommandKindAddItem2 = pb.MxCommandKind_MX_COMMAND_KIND_ADD_ITEM2 + CommandKindRemoveItem = pb.MxCommandKind_MX_COMMAND_KIND_REMOVE_ITEM + CommandKindAdvise = pb.MxCommandKind_MX_COMMAND_KIND_ADVISE + CommandKindUnAdvise = pb.MxCommandKind_MX_COMMAND_KIND_UN_ADVISE + CommandKindAddItemBulk = pb.MxCommandKind_MX_COMMAND_KIND_ADD_ITEM_BULK + CommandKindAdviseItemBulk = pb.MxCommandKind_MX_COMMAND_KIND_ADVISE_ITEM_BULK + CommandKindRemoveItemBulk = pb.MxCommandKind_MX_COMMAND_KIND_REMOVE_ITEM_BULK + CommandKindUnAdviseItemBulk = pb.MxCommandKind_MX_COMMAND_KIND_UN_ADVISE_ITEM_BULK + CommandKindSubscribeBulk = pb.MxCommandKind_MX_COMMAND_KIND_SUBSCRIBE_BULK + CommandKindUnsubscribeBulk = pb.MxCommandKind_MX_COMMAND_KIND_UNSUBSCRIBE_BULK + CommandKindWrite = pb.MxCommandKind_MX_COMMAND_KIND_WRITE + CommandKindWrite2 = pb.MxCommandKind_MX_COMMAND_KIND_WRITE2 DataTypeUnknown = pb.MxDataType_MX_DATA_TYPE_UNKNOWN DataTypeBoolean = pb.MxDataType_MX_DATA_TYPE_BOOLEAN diff --git a/clients/java/mxgateway-client/src/main/java/com/dohertylan/mxgateway/client/MxGatewaySession.java b/clients/java/mxgateway-client/src/main/java/com/dohertylan/mxgateway/client/MxGatewaySession.java index 7ed9bd8..d2f697b 100644 --- a/clients/java/mxgateway-client/src/main/java/com/dohertylan/mxgateway/client/MxGatewaySession.java +++ b/clients/java/mxgateway-client/src/main/java/com/dohertylan/mxgateway/client/MxGatewaySession.java @@ -2,9 +2,12 @@ package com.dohertylan.mxgateway.client; import java.security.SecureRandom; import java.util.HexFormat; +import java.util.List; import java.util.Objects; import mxaccess_gateway.v1.MxaccessGateway.AddItem2Command; +import mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand; import mxaccess_gateway.v1.MxaccessGateway.AddItemCommand; +import mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand; import mxaccess_gateway.v1.MxaccessGateway.AdviseCommand; import mxaccess_gateway.v1.MxaccessGateway.CloseSessionReply; import mxaccess_gateway.v1.MxaccessGateway.CloseSessionRequest; @@ -15,7 +18,14 @@ import mxaccess_gateway.v1.MxaccessGateway.MxCommandRequest; import mxaccess_gateway.v1.MxaccessGateway.MxValue; import mxaccess_gateway.v1.MxaccessGateway.OpenSessionReply; import mxaccess_gateway.v1.MxaccessGateway.RegisterCommand; +import mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand; +import mxaccess_gateway.v1.MxaccessGateway.RemoveItemCommand; import mxaccess_gateway.v1.MxaccessGateway.StreamEventsRequest; +import mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand; +import mxaccess_gateway.v1.MxaccessGateway.SubscribeResult; +import mxaccess_gateway.v1.MxaccessGateway.UnAdviseCommand; +import mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand; +import mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand; import mxaccess_gateway.v1.MxaccessGateway.UnregisterCommand; import mxaccess_gateway.v1.MxaccessGateway.Write2Command; import mxaccess_gateway.v1.MxaccessGateway.WriteCommand; @@ -117,6 +127,19 @@ public final class MxGatewaySession implements AutoCloseable { .build()); } + public void removeItem(int serverHandle, int itemHandle) { + removeItemRaw(serverHandle, itemHandle); + } + + public MxCommandReply removeItemRaw(int serverHandle, int itemHandle) { + return invokeCommand(MxCommand.newBuilder() + .setKind(MxCommandKind.MX_COMMAND_KIND_REMOVE_ITEM) + .setRemoveItem(RemoveItemCommand.newBuilder() + .setServerHandle(serverHandle) + .setItemHandle(itemHandle)) + .build()); + } + public void advise(int serverHandle, int itemHandle) { adviseRaw(serverHandle, itemHandle); } @@ -130,6 +153,85 @@ public final class MxGatewaySession implements AutoCloseable { .build()); } + public void unAdvise(int serverHandle, int itemHandle) { + unAdviseRaw(serverHandle, itemHandle); + } + + public MxCommandReply unAdviseRaw(int serverHandle, int itemHandle) { + return invokeCommand(MxCommand.newBuilder() + .setKind(MxCommandKind.MX_COMMAND_KIND_UN_ADVISE) + .setUnAdvise(UnAdviseCommand.newBuilder() + .setServerHandle(serverHandle) + .setItemHandle(itemHandle)) + .build()); + } + + public List addItemBulk(int serverHandle, List tagAddresses) { + Objects.requireNonNull(tagAddresses, "tagAddresses"); + MxCommandReply reply = invokeCommand(MxCommand.newBuilder() + .setKind(MxCommandKind.MX_COMMAND_KIND_ADD_ITEM_BULK) + .setAddItemBulk(AddItemBulkCommand.newBuilder() + .setServerHandle(serverHandle) + .addAllTagAddresses(tagAddresses)) + .build()); + return reply.getAddItemBulk().getResultsList(); + } + + public List adviseItemBulk(int serverHandle, List itemHandles) { + Objects.requireNonNull(itemHandles, "itemHandles"); + MxCommandReply reply = invokeCommand(MxCommand.newBuilder() + .setKind(MxCommandKind.MX_COMMAND_KIND_ADVISE_ITEM_BULK) + .setAdviseItemBulk(AdviseItemBulkCommand.newBuilder() + .setServerHandle(serverHandle) + .addAllItemHandles(itemHandles)) + .build()); + return reply.getAdviseItemBulk().getResultsList(); + } + + public List removeItemBulk(int serverHandle, List itemHandles) { + Objects.requireNonNull(itemHandles, "itemHandles"); + MxCommandReply reply = invokeCommand(MxCommand.newBuilder() + .setKind(MxCommandKind.MX_COMMAND_KIND_REMOVE_ITEM_BULK) + .setRemoveItemBulk(RemoveItemBulkCommand.newBuilder() + .setServerHandle(serverHandle) + .addAllItemHandles(itemHandles)) + .build()); + return reply.getRemoveItemBulk().getResultsList(); + } + + public List unAdviseItemBulk(int serverHandle, List itemHandles) { + Objects.requireNonNull(itemHandles, "itemHandles"); + MxCommandReply reply = invokeCommand(MxCommand.newBuilder() + .setKind(MxCommandKind.MX_COMMAND_KIND_UN_ADVISE_ITEM_BULK) + .setUnAdviseItemBulk(UnAdviseItemBulkCommand.newBuilder() + .setServerHandle(serverHandle) + .addAllItemHandles(itemHandles)) + .build()); + return reply.getUnAdviseItemBulk().getResultsList(); + } + + public List subscribeBulk(int serverHandle, List tagAddresses) { + Objects.requireNonNull(tagAddresses, "tagAddresses"); + MxCommandReply reply = invokeCommand(MxCommand.newBuilder() + .setKind(MxCommandKind.MX_COMMAND_KIND_SUBSCRIBE_BULK) + .setSubscribeBulk(SubscribeBulkCommand.newBuilder() + .setServerHandle(serverHandle) + .addAllTagAddresses(tagAddresses)) + .build()); + return reply.getSubscribeBulk().getResultsList(); + } + + public List unsubscribeBulk(int serverHandle, List itemHandles) { + Objects.requireNonNull(itemHandles, "itemHandles"); + MxCommandReply reply = invokeCommand(MxCommand.newBuilder() + .setKind(MxCommandKind.MX_COMMAND_KIND_UNSUBSCRIBE_BULK) + .setUnsubscribeBulk(UnsubscribeBulkCommand.newBuilder() + .setServerHandle(serverHandle) + .addAllItemHandles(itemHandles)) + .build()); + return reply.getUnsubscribeBulk().getResultsList(); + } + public void write(int serverHandle, int itemHandle, MxValue value, int userId) { writeRaw(serverHandle, itemHandle, value, userId); } diff --git a/clients/java/mxgateway-client/src/test/java/com/dohertylan/mxgateway/client/MxGatewayClientSessionTests.java b/clients/java/mxgateway-client/src/test/java/com/dohertylan/mxgateway/client/MxGatewayClientSessionTests.java index 3d4fd09..219fbca 100644 --- a/clients/java/mxgateway-client/src/test/java/com/dohertylan/mxgateway/client/MxGatewayClientSessionTests.java +++ b/clients/java/mxgateway-client/src/test/java/com/dohertylan/mxgateway/client/MxGatewayClientSessionTests.java @@ -17,12 +17,14 @@ import io.grpc.inprocess.InProcessServerBuilder; import io.grpc.stub.ServerCallStreamObserver; import io.grpc.stub.StreamObserver; import java.time.Duration; +import java.util.List; import java.util.UUID; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicReference; import mxaccess_gateway.v1.MxAccessGatewayGrpc; import mxaccess_gateway.v1.MxaccessGateway.AddItemReply; +import mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply; import mxaccess_gateway.v1.MxaccessGateway.CloseSessionReply; import mxaccess_gateway.v1.MxaccessGateway.CloseSessionRequest; import mxaccess_gateway.v1.MxaccessGateway.MxCommandKind; @@ -36,6 +38,7 @@ import mxaccess_gateway.v1.MxaccessGateway.ProtocolStatusCode; import mxaccess_gateway.v1.MxaccessGateway.RegisterReply; import mxaccess_gateway.v1.MxaccessGateway.SessionState; import mxaccess_gateway.v1.MxaccessGateway.StreamEventsRequest; +import mxaccess_gateway.v1.MxaccessGateway.SubscribeResult; import org.junit.jupiter.api.Test; final class MxGatewayClientSessionTests { @@ -112,6 +115,42 @@ final class MxGatewayClientSessionTests { } } + @Test + void subscribeBulkBuildsOneBulkCommandAndReturnsResults() throws Exception { + AtomicReference commandRequest = new AtomicReference<>(); + TestGatewayService service = new TestGatewayService() { + @Override + public void invoke(MxCommandRequest request, StreamObserver responseObserver) { + commandRequest.set(request); + responseObserver.onNext(MxCommandReply.newBuilder() + .setSessionId(request.getSessionId()) + .setKind(request.getCommand().getKind()) + .setProtocolStatus(ok()) + .setSubscribeBulk(BulkSubscribeReply.newBuilder() + .addResults(SubscribeResult.newBuilder() + .setServerHandle(12) + .setTagAddress("Area001.Pump001.Speed") + .setItemHandle(34) + .setWasSuccessful(true))) + .build()); + responseObserver.onCompleted(); + } + }; + + try (InProcessGateway gateway = InProcessGateway.start(service, new AtomicReference<>()); + MxGatewayClient client = gateway.client("", Duration.ofSeconds(5))) { + MxGatewaySession session = MxGatewaySession.forSessionId(client, "existing-session"); + + List results = session.subscribeBulk(12, List.of("Area001.Pump001.Speed")); + + assertEquals(34, results.get(0).getItemHandle()); + assertEquals(MxCommandKind.MX_COMMAND_KIND_SUBSCRIBE_BULK, commandRequest.get().getCommand().getKind()); + assertEquals( + List.of("Area001.Pump001.Speed"), + commandRequest.get().getCommand().getSubscribeBulk().getTagAddressesList()); + } + } + @Test void streamCancellationCancelsServerCall() throws Exception { CountDownLatch cancelled = new CountDownLatch(1); diff --git a/clients/java/src/main/generated/main/java/mxaccess_gateway/v1/MxaccessGateway.java b/clients/java/src/main/generated/main/java/mxaccess_gateway/v1/MxaccessGateway.java index 6a6d939..a41df8c 100644 --- a/clients/java/src/main/generated/main/java/mxaccess_gateway/v1/MxaccessGateway.java +++ b/clients/java/src/main/generated/main/java/mxaccess_gateway/v1/MxaccessGateway.java @@ -107,6 +107,30 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { * MX_COMMAND_KIND_ARCHESTRA_USER_TO_ID = 18; */ MX_COMMAND_KIND_ARCHESTRA_USER_TO_ID(18), + /** + * MX_COMMAND_KIND_ADD_ITEM_BULK = 19; + */ + MX_COMMAND_KIND_ADD_ITEM_BULK(19), + /** + * MX_COMMAND_KIND_ADVISE_ITEM_BULK = 20; + */ + MX_COMMAND_KIND_ADVISE_ITEM_BULK(20), + /** + * MX_COMMAND_KIND_REMOVE_ITEM_BULK = 21; + */ + MX_COMMAND_KIND_REMOVE_ITEM_BULK(21), + /** + * MX_COMMAND_KIND_UN_ADVISE_ITEM_BULK = 22; + */ + MX_COMMAND_KIND_UN_ADVISE_ITEM_BULK(22), + /** + * MX_COMMAND_KIND_SUBSCRIBE_BULK = 23; + */ + MX_COMMAND_KIND_SUBSCRIBE_BULK(23), + /** + * MX_COMMAND_KIND_UNSUBSCRIBE_BULK = 24; + */ + MX_COMMAND_KIND_UNSUBSCRIBE_BULK(24), /** * MX_COMMAND_KIND_PING = 100; */ @@ -215,6 +239,30 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { * MX_COMMAND_KIND_ARCHESTRA_USER_TO_ID = 18; */ public static final int MX_COMMAND_KIND_ARCHESTRA_USER_TO_ID_VALUE = 18; + /** + * MX_COMMAND_KIND_ADD_ITEM_BULK = 19; + */ + public static final int MX_COMMAND_KIND_ADD_ITEM_BULK_VALUE = 19; + /** + * MX_COMMAND_KIND_ADVISE_ITEM_BULK = 20; + */ + public static final int MX_COMMAND_KIND_ADVISE_ITEM_BULK_VALUE = 20; + /** + * MX_COMMAND_KIND_REMOVE_ITEM_BULK = 21; + */ + public static final int MX_COMMAND_KIND_REMOVE_ITEM_BULK_VALUE = 21; + /** + * MX_COMMAND_KIND_UN_ADVISE_ITEM_BULK = 22; + */ + public static final int MX_COMMAND_KIND_UN_ADVISE_ITEM_BULK_VALUE = 22; + /** + * MX_COMMAND_KIND_SUBSCRIBE_BULK = 23; + */ + public static final int MX_COMMAND_KIND_SUBSCRIBE_BULK_VALUE = 23; + /** + * MX_COMMAND_KIND_UNSUBSCRIBE_BULK = 24; + */ + public static final int MX_COMMAND_KIND_UNSUBSCRIBE_BULK_VALUE = 24; /** * MX_COMMAND_KIND_PING = 100; */ @@ -280,6 +328,12 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { case 16: return MX_COMMAND_KIND_WRITE_SECURED2; case 17: return MX_COMMAND_KIND_AUTHENTICATE_USER; case 18: return MX_COMMAND_KIND_ARCHESTRA_USER_TO_ID; + case 19: return MX_COMMAND_KIND_ADD_ITEM_BULK; + case 20: return MX_COMMAND_KIND_ADVISE_ITEM_BULK; + case 21: return MX_COMMAND_KIND_REMOVE_ITEM_BULK; + case 22: return MX_COMMAND_KIND_UN_ADVISE_ITEM_BULK; + case 23: return MX_COMMAND_KIND_SUBSCRIBE_BULK; + case 24: return MX_COMMAND_KIND_UNSUBSCRIBE_BULK; case 100: return MX_COMMAND_KIND_PING; case 101: return MX_COMMAND_KIND_GET_SESSION_STATE; case 102: return MX_COMMAND_KIND_GET_WORKER_INFO; @@ -7264,6 +7318,96 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { */ mxaccess_gateway.v1.MxaccessGateway.ArchestrAUserToIdCommandOrBuilder getArchestraUserToIdOrBuilder(); + /** + * .mxaccess_gateway.v1.AddItemBulkCommand add_item_bulk = 28; + * @return Whether the addItemBulk field is set. + */ + boolean hasAddItemBulk(); + /** + * .mxaccess_gateway.v1.AddItemBulkCommand add_item_bulk = 28; + * @return The addItemBulk. + */ + mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand getAddItemBulk(); + /** + * .mxaccess_gateway.v1.AddItemBulkCommand add_item_bulk = 28; + */ + mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommandOrBuilder getAddItemBulkOrBuilder(); + + /** + * .mxaccess_gateway.v1.AdviseItemBulkCommand advise_item_bulk = 29; + * @return Whether the adviseItemBulk field is set. + */ + boolean hasAdviseItemBulk(); + /** + * .mxaccess_gateway.v1.AdviseItemBulkCommand advise_item_bulk = 29; + * @return The adviseItemBulk. + */ + mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand getAdviseItemBulk(); + /** + * .mxaccess_gateway.v1.AdviseItemBulkCommand advise_item_bulk = 29; + */ + mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommandOrBuilder getAdviseItemBulkOrBuilder(); + + /** + * .mxaccess_gateway.v1.RemoveItemBulkCommand remove_item_bulk = 30; + * @return Whether the removeItemBulk field is set. + */ + boolean hasRemoveItemBulk(); + /** + * .mxaccess_gateway.v1.RemoveItemBulkCommand remove_item_bulk = 30; + * @return The removeItemBulk. + */ + mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand getRemoveItemBulk(); + /** + * .mxaccess_gateway.v1.RemoveItemBulkCommand remove_item_bulk = 30; + */ + mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommandOrBuilder getRemoveItemBulkOrBuilder(); + + /** + * .mxaccess_gateway.v1.UnAdviseItemBulkCommand un_advise_item_bulk = 31; + * @return Whether the unAdviseItemBulk field is set. + */ + boolean hasUnAdviseItemBulk(); + /** + * .mxaccess_gateway.v1.UnAdviseItemBulkCommand un_advise_item_bulk = 31; + * @return The unAdviseItemBulk. + */ + mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand getUnAdviseItemBulk(); + /** + * .mxaccess_gateway.v1.UnAdviseItemBulkCommand un_advise_item_bulk = 31; + */ + mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommandOrBuilder getUnAdviseItemBulkOrBuilder(); + + /** + * .mxaccess_gateway.v1.SubscribeBulkCommand subscribe_bulk = 32; + * @return Whether the subscribeBulk field is set. + */ + boolean hasSubscribeBulk(); + /** + * .mxaccess_gateway.v1.SubscribeBulkCommand subscribe_bulk = 32; + * @return The subscribeBulk. + */ + mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand getSubscribeBulk(); + /** + * .mxaccess_gateway.v1.SubscribeBulkCommand subscribe_bulk = 32; + */ + mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommandOrBuilder getSubscribeBulkOrBuilder(); + + /** + * .mxaccess_gateway.v1.UnsubscribeBulkCommand unsubscribe_bulk = 33; + * @return Whether the unsubscribeBulk field is set. + */ + boolean hasUnsubscribeBulk(); + /** + * .mxaccess_gateway.v1.UnsubscribeBulkCommand unsubscribe_bulk = 33; + * @return The unsubscribeBulk. + */ + mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand getUnsubscribeBulk(); + /** + * .mxaccess_gateway.v1.UnsubscribeBulkCommand unsubscribe_bulk = 33; + */ + mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommandOrBuilder getUnsubscribeBulkOrBuilder(); + /** * .mxaccess_gateway.v1.PingCommand ping = 100; * @return Whether the ping field is set. @@ -7403,6 +7547,12 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { WRITE_SECURED2(25), AUTHENTICATE_USER(26), ARCHESTRA_USER_TO_ID(27), + ADD_ITEM_BULK(28), + ADVISE_ITEM_BULK(29), + REMOVE_ITEM_BULK(30), + UN_ADVISE_ITEM_BULK(31), + SUBSCRIBE_BULK(32), + UNSUBSCRIBE_BULK(33), PING(100), GET_SESSION_STATE(101), GET_WORKER_INFO(102), @@ -7443,6 +7593,12 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { case 25: return WRITE_SECURED2; case 26: return AUTHENTICATE_USER; case 27: return ARCHESTRA_USER_TO_ID; + case 28: return ADD_ITEM_BULK; + case 29: return ADVISE_ITEM_BULK; + case 30: return REMOVE_ITEM_BULK; + case 31: return UN_ADVISE_ITEM_BULK; + case 32: return SUBSCRIBE_BULK; + case 33: return UNSUBSCRIBE_BULK; case 100: return PING; case 101: return GET_SESSION_STATE; case 102: return GET_WORKER_INFO; @@ -8039,6 +8195,192 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { return mxaccess_gateway.v1.MxaccessGateway.ArchestrAUserToIdCommand.getDefaultInstance(); } + public static final int ADD_ITEM_BULK_FIELD_NUMBER = 28; + /** + * .mxaccess_gateway.v1.AddItemBulkCommand add_item_bulk = 28; + * @return Whether the addItemBulk field is set. + */ + @java.lang.Override + public boolean hasAddItemBulk() { + return payloadCase_ == 28; + } + /** + * .mxaccess_gateway.v1.AddItemBulkCommand add_item_bulk = 28; + * @return The addItemBulk. + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand getAddItemBulk() { + if (payloadCase_ == 28) { + return (mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand.getDefaultInstance(); + } + /** + * .mxaccess_gateway.v1.AddItemBulkCommand add_item_bulk = 28; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommandOrBuilder getAddItemBulkOrBuilder() { + if (payloadCase_ == 28) { + return (mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand.getDefaultInstance(); + } + + public static final int ADVISE_ITEM_BULK_FIELD_NUMBER = 29; + /** + * .mxaccess_gateway.v1.AdviseItemBulkCommand advise_item_bulk = 29; + * @return Whether the adviseItemBulk field is set. + */ + @java.lang.Override + public boolean hasAdviseItemBulk() { + return payloadCase_ == 29; + } + /** + * .mxaccess_gateway.v1.AdviseItemBulkCommand advise_item_bulk = 29; + * @return The adviseItemBulk. + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand getAdviseItemBulk() { + if (payloadCase_ == 29) { + return (mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand.getDefaultInstance(); + } + /** + * .mxaccess_gateway.v1.AdviseItemBulkCommand advise_item_bulk = 29; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommandOrBuilder getAdviseItemBulkOrBuilder() { + if (payloadCase_ == 29) { + return (mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand.getDefaultInstance(); + } + + public static final int REMOVE_ITEM_BULK_FIELD_NUMBER = 30; + /** + * .mxaccess_gateway.v1.RemoveItemBulkCommand remove_item_bulk = 30; + * @return Whether the removeItemBulk field is set. + */ + @java.lang.Override + public boolean hasRemoveItemBulk() { + return payloadCase_ == 30; + } + /** + * .mxaccess_gateway.v1.RemoveItemBulkCommand remove_item_bulk = 30; + * @return The removeItemBulk. + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand getRemoveItemBulk() { + if (payloadCase_ == 30) { + return (mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand.getDefaultInstance(); + } + /** + * .mxaccess_gateway.v1.RemoveItemBulkCommand remove_item_bulk = 30; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommandOrBuilder getRemoveItemBulkOrBuilder() { + if (payloadCase_ == 30) { + return (mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand.getDefaultInstance(); + } + + public static final int UN_ADVISE_ITEM_BULK_FIELD_NUMBER = 31; + /** + * .mxaccess_gateway.v1.UnAdviseItemBulkCommand un_advise_item_bulk = 31; + * @return Whether the unAdviseItemBulk field is set. + */ + @java.lang.Override + public boolean hasUnAdviseItemBulk() { + return payloadCase_ == 31; + } + /** + * .mxaccess_gateway.v1.UnAdviseItemBulkCommand un_advise_item_bulk = 31; + * @return The unAdviseItemBulk. + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand getUnAdviseItemBulk() { + if (payloadCase_ == 31) { + return (mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand.getDefaultInstance(); + } + /** + * .mxaccess_gateway.v1.UnAdviseItemBulkCommand un_advise_item_bulk = 31; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommandOrBuilder getUnAdviseItemBulkOrBuilder() { + if (payloadCase_ == 31) { + return (mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand.getDefaultInstance(); + } + + public static final int SUBSCRIBE_BULK_FIELD_NUMBER = 32; + /** + * .mxaccess_gateway.v1.SubscribeBulkCommand subscribe_bulk = 32; + * @return Whether the subscribeBulk field is set. + */ + @java.lang.Override + public boolean hasSubscribeBulk() { + return payloadCase_ == 32; + } + /** + * .mxaccess_gateway.v1.SubscribeBulkCommand subscribe_bulk = 32; + * @return The subscribeBulk. + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand getSubscribeBulk() { + if (payloadCase_ == 32) { + return (mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand.getDefaultInstance(); + } + /** + * .mxaccess_gateway.v1.SubscribeBulkCommand subscribe_bulk = 32; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommandOrBuilder getSubscribeBulkOrBuilder() { + if (payloadCase_ == 32) { + return (mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand.getDefaultInstance(); + } + + public static final int UNSUBSCRIBE_BULK_FIELD_NUMBER = 33; + /** + * .mxaccess_gateway.v1.UnsubscribeBulkCommand unsubscribe_bulk = 33; + * @return Whether the unsubscribeBulk field is set. + */ + @java.lang.Override + public boolean hasUnsubscribeBulk() { + return payloadCase_ == 33; + } + /** + * .mxaccess_gateway.v1.UnsubscribeBulkCommand unsubscribe_bulk = 33; + * @return The unsubscribeBulk. + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand getUnsubscribeBulk() { + if (payloadCase_ == 33) { + return (mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand.getDefaultInstance(); + } + /** + * .mxaccess_gateway.v1.UnsubscribeBulkCommand unsubscribe_bulk = 33; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommandOrBuilder getUnsubscribeBulkOrBuilder() { + if (payloadCase_ == 33) { + return (mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand.getDefaultInstance(); + } + public static final int PING_FIELD_NUMBER = 100; /** * .mxaccess_gateway.v1.PingCommand ping = 100; @@ -8265,6 +8607,24 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { if (payloadCase_ == 27) { output.writeMessage(27, (mxaccess_gateway.v1.MxaccessGateway.ArchestrAUserToIdCommand) payload_); } + if (payloadCase_ == 28) { + output.writeMessage(28, (mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand) payload_); + } + if (payloadCase_ == 29) { + output.writeMessage(29, (mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand) payload_); + } + if (payloadCase_ == 30) { + output.writeMessage(30, (mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand) payload_); + } + if (payloadCase_ == 31) { + output.writeMessage(31, (mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand) payload_); + } + if (payloadCase_ == 32) { + output.writeMessage(32, (mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand) payload_); + } + if (payloadCase_ == 33) { + output.writeMessage(33, (mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand) payload_); + } if (payloadCase_ == 100) { output.writeMessage(100, (mxaccess_gateway.v1.MxaccessGateway.PingCommand) payload_); } @@ -8365,6 +8725,30 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { size += com.google.protobuf.CodedOutputStream .computeMessageSize(27, (mxaccess_gateway.v1.MxaccessGateway.ArchestrAUserToIdCommand) payload_); } + if (payloadCase_ == 28) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(28, (mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand) payload_); + } + if (payloadCase_ == 29) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(29, (mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand) payload_); + } + if (payloadCase_ == 30) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(30, (mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand) payload_); + } + if (payloadCase_ == 31) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(31, (mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand) payload_); + } + if (payloadCase_ == 32) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(32, (mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand) payload_); + } + if (payloadCase_ == 33) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(33, (mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand) payload_); + } if (payloadCase_ == 100) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(100, (mxaccess_gateway.v1.MxaccessGateway.PingCommand) payload_); @@ -8475,6 +8859,30 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { if (!getArchestraUserToId() .equals(other.getArchestraUserToId())) return false; break; + case 28: + if (!getAddItemBulk() + .equals(other.getAddItemBulk())) return false; + break; + case 29: + if (!getAdviseItemBulk() + .equals(other.getAdviseItemBulk())) return false; + break; + case 30: + if (!getRemoveItemBulk() + .equals(other.getRemoveItemBulk())) return false; + break; + case 31: + if (!getUnAdviseItemBulk() + .equals(other.getUnAdviseItemBulk())) return false; + break; + case 32: + if (!getSubscribeBulk() + .equals(other.getSubscribeBulk())) return false; + break; + case 33: + if (!getUnsubscribeBulk() + .equals(other.getUnsubscribeBulk())) return false; + break; case 100: if (!getPing() .equals(other.getPing())) return false; @@ -8584,6 +8992,30 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { hash = (37 * hash) + ARCHESTRA_USER_TO_ID_FIELD_NUMBER; hash = (53 * hash) + getArchestraUserToId().hashCode(); break; + case 28: + hash = (37 * hash) + ADD_ITEM_BULK_FIELD_NUMBER; + hash = (53 * hash) + getAddItemBulk().hashCode(); + break; + case 29: + hash = (37 * hash) + ADVISE_ITEM_BULK_FIELD_NUMBER; + hash = (53 * hash) + getAdviseItemBulk().hashCode(); + break; + case 30: + hash = (37 * hash) + REMOVE_ITEM_BULK_FIELD_NUMBER; + hash = (53 * hash) + getRemoveItemBulk().hashCode(); + break; + case 31: + hash = (37 * hash) + UN_ADVISE_ITEM_BULK_FIELD_NUMBER; + hash = (53 * hash) + getUnAdviseItemBulk().hashCode(); + break; + case 32: + hash = (37 * hash) + SUBSCRIBE_BULK_FIELD_NUMBER; + hash = (53 * hash) + getSubscribeBulk().hashCode(); + break; + case 33: + hash = (37 * hash) + UNSUBSCRIBE_BULK_FIELD_NUMBER; + hash = (53 * hash) + getUnsubscribeBulk().hashCode(); + break; case 100: hash = (37 * hash) + PING_FIELD_NUMBER; hash = (53 * hash) + getPing().hashCode(); @@ -8793,6 +9225,24 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { if (archestraUserToIdBuilder_ != null) { archestraUserToIdBuilder_.clear(); } + if (addItemBulkBuilder_ != null) { + addItemBulkBuilder_.clear(); + } + if (adviseItemBulkBuilder_ != null) { + adviseItemBulkBuilder_.clear(); + } + if (removeItemBulkBuilder_ != null) { + removeItemBulkBuilder_.clear(); + } + if (unAdviseItemBulkBuilder_ != null) { + unAdviseItemBulkBuilder_.clear(); + } + if (subscribeBulkBuilder_ != null) { + subscribeBulkBuilder_.clear(); + } + if (unsubscribeBulkBuilder_ != null) { + unsubscribeBulkBuilder_.clear(); + } if (pingBuilder_ != null) { pingBuilder_.clear(); } @@ -8924,6 +9374,30 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { archestraUserToIdBuilder_ != null) { result.payload_ = archestraUserToIdBuilder_.build(); } + if (payloadCase_ == 28 && + addItemBulkBuilder_ != null) { + result.payload_ = addItemBulkBuilder_.build(); + } + if (payloadCase_ == 29 && + adviseItemBulkBuilder_ != null) { + result.payload_ = adviseItemBulkBuilder_.build(); + } + if (payloadCase_ == 30 && + removeItemBulkBuilder_ != null) { + result.payload_ = removeItemBulkBuilder_.build(); + } + if (payloadCase_ == 31 && + unAdviseItemBulkBuilder_ != null) { + result.payload_ = unAdviseItemBulkBuilder_.build(); + } + if (payloadCase_ == 32 && + subscribeBulkBuilder_ != null) { + result.payload_ = subscribeBulkBuilder_.build(); + } + if (payloadCase_ == 33 && + unsubscribeBulkBuilder_ != null) { + result.payload_ = unsubscribeBulkBuilder_.build(); + } if (payloadCase_ == 100 && pingBuilder_ != null) { result.payload_ = pingBuilder_.build(); @@ -9034,6 +9508,30 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { mergeArchestraUserToId(other.getArchestraUserToId()); break; } + case ADD_ITEM_BULK: { + mergeAddItemBulk(other.getAddItemBulk()); + break; + } + case ADVISE_ITEM_BULK: { + mergeAdviseItemBulk(other.getAdviseItemBulk()); + break; + } + case REMOVE_ITEM_BULK: { + mergeRemoveItemBulk(other.getRemoveItemBulk()); + break; + } + case UN_ADVISE_ITEM_BULK: { + mergeUnAdviseItemBulk(other.getUnAdviseItemBulk()); + break; + } + case SUBSCRIBE_BULK: { + mergeSubscribeBulk(other.getSubscribeBulk()); + break; + } + case UNSUBSCRIBE_BULK: { + mergeUnsubscribeBulk(other.getUnsubscribeBulk()); + break; + } case PING: { mergePing(other.getPing()); break; @@ -9215,6 +9713,48 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { payloadCase_ = 27; break; } // case 218 + case 226: { + input.readMessage( + internalGetAddItemBulkFieldBuilder().getBuilder(), + extensionRegistry); + payloadCase_ = 28; + break; + } // case 226 + case 234: { + input.readMessage( + internalGetAdviseItemBulkFieldBuilder().getBuilder(), + extensionRegistry); + payloadCase_ = 29; + break; + } // case 234 + case 242: { + input.readMessage( + internalGetRemoveItemBulkFieldBuilder().getBuilder(), + extensionRegistry); + payloadCase_ = 30; + break; + } // case 242 + case 250: { + input.readMessage( + internalGetUnAdviseItemBulkFieldBuilder().getBuilder(), + extensionRegistry); + payloadCase_ = 31; + break; + } // case 250 + case 258: { + input.readMessage( + internalGetSubscribeBulkFieldBuilder().getBuilder(), + extensionRegistry); + payloadCase_ = 32; + break; + } // case 258 + case 266: { + input.readMessage( + internalGetUnsubscribeBulkFieldBuilder().getBuilder(), + extensionRegistry); + payloadCase_ = 33; + break; + } // case 266 case 802: { input.readMessage( internalGetPingFieldBuilder().getBuilder(), @@ -11889,6 +12429,858 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { return archestraUserToIdBuilder_; } + private com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand, mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand.Builder, mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommandOrBuilder> addItemBulkBuilder_; + /** + * .mxaccess_gateway.v1.AddItemBulkCommand add_item_bulk = 28; + * @return Whether the addItemBulk field is set. + */ + @java.lang.Override + public boolean hasAddItemBulk() { + return payloadCase_ == 28; + } + /** + * .mxaccess_gateway.v1.AddItemBulkCommand add_item_bulk = 28; + * @return The addItemBulk. + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand getAddItemBulk() { + if (addItemBulkBuilder_ == null) { + if (payloadCase_ == 28) { + return (mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand.getDefaultInstance(); + } else { + if (payloadCase_ == 28) { + return addItemBulkBuilder_.getMessage(); + } + return mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand.getDefaultInstance(); + } + } + /** + * .mxaccess_gateway.v1.AddItemBulkCommand add_item_bulk = 28; + */ + public Builder setAddItemBulk(mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand value) { + if (addItemBulkBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + payload_ = value; + onChanged(); + } else { + addItemBulkBuilder_.setMessage(value); + } + payloadCase_ = 28; + return this; + } + /** + * .mxaccess_gateway.v1.AddItemBulkCommand add_item_bulk = 28; + */ + public Builder setAddItemBulk( + mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand.Builder builderForValue) { + if (addItemBulkBuilder_ == null) { + payload_ = builderForValue.build(); + onChanged(); + } else { + addItemBulkBuilder_.setMessage(builderForValue.build()); + } + payloadCase_ = 28; + return this; + } + /** + * .mxaccess_gateway.v1.AddItemBulkCommand add_item_bulk = 28; + */ + public Builder mergeAddItemBulk(mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand value) { + if (addItemBulkBuilder_ == null) { + if (payloadCase_ == 28 && + payload_ != mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand.getDefaultInstance()) { + payload_ = mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand.newBuilder((mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand) payload_) + .mergeFrom(value).buildPartial(); + } else { + payload_ = value; + } + onChanged(); + } else { + if (payloadCase_ == 28) { + addItemBulkBuilder_.mergeFrom(value); + } else { + addItemBulkBuilder_.setMessage(value); + } + } + payloadCase_ = 28; + return this; + } + /** + * .mxaccess_gateway.v1.AddItemBulkCommand add_item_bulk = 28; + */ + public Builder clearAddItemBulk() { + if (addItemBulkBuilder_ == null) { + if (payloadCase_ == 28) { + payloadCase_ = 0; + payload_ = null; + onChanged(); + } + } else { + if (payloadCase_ == 28) { + payloadCase_ = 0; + payload_ = null; + } + addItemBulkBuilder_.clear(); + } + return this; + } + /** + * .mxaccess_gateway.v1.AddItemBulkCommand add_item_bulk = 28; + */ + public mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand.Builder getAddItemBulkBuilder() { + return internalGetAddItemBulkFieldBuilder().getBuilder(); + } + /** + * .mxaccess_gateway.v1.AddItemBulkCommand add_item_bulk = 28; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommandOrBuilder getAddItemBulkOrBuilder() { + if ((payloadCase_ == 28) && (addItemBulkBuilder_ != null)) { + return addItemBulkBuilder_.getMessageOrBuilder(); + } else { + if (payloadCase_ == 28) { + return (mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand.getDefaultInstance(); + } + } + /** + * .mxaccess_gateway.v1.AddItemBulkCommand add_item_bulk = 28; + */ + private com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand, mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand.Builder, mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommandOrBuilder> + internalGetAddItemBulkFieldBuilder() { + if (addItemBulkBuilder_ == null) { + if (!(payloadCase_ == 28)) { + payload_ = mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand.getDefaultInstance(); + } + addItemBulkBuilder_ = new com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand, mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand.Builder, mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommandOrBuilder>( + (mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand) payload_, + getParentForChildren(), + isClean()); + payload_ = null; + } + payloadCase_ = 28; + onChanged(); + return addItemBulkBuilder_; + } + + private com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand, mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand.Builder, mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommandOrBuilder> adviseItemBulkBuilder_; + /** + * .mxaccess_gateway.v1.AdviseItemBulkCommand advise_item_bulk = 29; + * @return Whether the adviseItemBulk field is set. + */ + @java.lang.Override + public boolean hasAdviseItemBulk() { + return payloadCase_ == 29; + } + /** + * .mxaccess_gateway.v1.AdviseItemBulkCommand advise_item_bulk = 29; + * @return The adviseItemBulk. + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand getAdviseItemBulk() { + if (adviseItemBulkBuilder_ == null) { + if (payloadCase_ == 29) { + return (mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand.getDefaultInstance(); + } else { + if (payloadCase_ == 29) { + return adviseItemBulkBuilder_.getMessage(); + } + return mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand.getDefaultInstance(); + } + } + /** + * .mxaccess_gateway.v1.AdviseItemBulkCommand advise_item_bulk = 29; + */ + public Builder setAdviseItemBulk(mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand value) { + if (adviseItemBulkBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + payload_ = value; + onChanged(); + } else { + adviseItemBulkBuilder_.setMessage(value); + } + payloadCase_ = 29; + return this; + } + /** + * .mxaccess_gateway.v1.AdviseItemBulkCommand advise_item_bulk = 29; + */ + public Builder setAdviseItemBulk( + mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand.Builder builderForValue) { + if (adviseItemBulkBuilder_ == null) { + payload_ = builderForValue.build(); + onChanged(); + } else { + adviseItemBulkBuilder_.setMessage(builderForValue.build()); + } + payloadCase_ = 29; + return this; + } + /** + * .mxaccess_gateway.v1.AdviseItemBulkCommand advise_item_bulk = 29; + */ + public Builder mergeAdviseItemBulk(mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand value) { + if (adviseItemBulkBuilder_ == null) { + if (payloadCase_ == 29 && + payload_ != mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand.getDefaultInstance()) { + payload_ = mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand.newBuilder((mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand) payload_) + .mergeFrom(value).buildPartial(); + } else { + payload_ = value; + } + onChanged(); + } else { + if (payloadCase_ == 29) { + adviseItemBulkBuilder_.mergeFrom(value); + } else { + adviseItemBulkBuilder_.setMessage(value); + } + } + payloadCase_ = 29; + return this; + } + /** + * .mxaccess_gateway.v1.AdviseItemBulkCommand advise_item_bulk = 29; + */ + public Builder clearAdviseItemBulk() { + if (adviseItemBulkBuilder_ == null) { + if (payloadCase_ == 29) { + payloadCase_ = 0; + payload_ = null; + onChanged(); + } + } else { + if (payloadCase_ == 29) { + payloadCase_ = 0; + payload_ = null; + } + adviseItemBulkBuilder_.clear(); + } + return this; + } + /** + * .mxaccess_gateway.v1.AdviseItemBulkCommand advise_item_bulk = 29; + */ + public mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand.Builder getAdviseItemBulkBuilder() { + return internalGetAdviseItemBulkFieldBuilder().getBuilder(); + } + /** + * .mxaccess_gateway.v1.AdviseItemBulkCommand advise_item_bulk = 29; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommandOrBuilder getAdviseItemBulkOrBuilder() { + if ((payloadCase_ == 29) && (adviseItemBulkBuilder_ != null)) { + return adviseItemBulkBuilder_.getMessageOrBuilder(); + } else { + if (payloadCase_ == 29) { + return (mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand.getDefaultInstance(); + } + } + /** + * .mxaccess_gateway.v1.AdviseItemBulkCommand advise_item_bulk = 29; + */ + private com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand, mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand.Builder, mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommandOrBuilder> + internalGetAdviseItemBulkFieldBuilder() { + if (adviseItemBulkBuilder_ == null) { + if (!(payloadCase_ == 29)) { + payload_ = mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand.getDefaultInstance(); + } + adviseItemBulkBuilder_ = new com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand, mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand.Builder, mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommandOrBuilder>( + (mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand) payload_, + getParentForChildren(), + isClean()); + payload_ = null; + } + payloadCase_ = 29; + onChanged(); + return adviseItemBulkBuilder_; + } + + private com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand, mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand.Builder, mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommandOrBuilder> removeItemBulkBuilder_; + /** + * .mxaccess_gateway.v1.RemoveItemBulkCommand remove_item_bulk = 30; + * @return Whether the removeItemBulk field is set. + */ + @java.lang.Override + public boolean hasRemoveItemBulk() { + return payloadCase_ == 30; + } + /** + * .mxaccess_gateway.v1.RemoveItemBulkCommand remove_item_bulk = 30; + * @return The removeItemBulk. + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand getRemoveItemBulk() { + if (removeItemBulkBuilder_ == null) { + if (payloadCase_ == 30) { + return (mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand.getDefaultInstance(); + } else { + if (payloadCase_ == 30) { + return removeItemBulkBuilder_.getMessage(); + } + return mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand.getDefaultInstance(); + } + } + /** + * .mxaccess_gateway.v1.RemoveItemBulkCommand remove_item_bulk = 30; + */ + public Builder setRemoveItemBulk(mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand value) { + if (removeItemBulkBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + payload_ = value; + onChanged(); + } else { + removeItemBulkBuilder_.setMessage(value); + } + payloadCase_ = 30; + return this; + } + /** + * .mxaccess_gateway.v1.RemoveItemBulkCommand remove_item_bulk = 30; + */ + public Builder setRemoveItemBulk( + mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand.Builder builderForValue) { + if (removeItemBulkBuilder_ == null) { + payload_ = builderForValue.build(); + onChanged(); + } else { + removeItemBulkBuilder_.setMessage(builderForValue.build()); + } + payloadCase_ = 30; + return this; + } + /** + * .mxaccess_gateway.v1.RemoveItemBulkCommand remove_item_bulk = 30; + */ + public Builder mergeRemoveItemBulk(mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand value) { + if (removeItemBulkBuilder_ == null) { + if (payloadCase_ == 30 && + payload_ != mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand.getDefaultInstance()) { + payload_ = mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand.newBuilder((mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand) payload_) + .mergeFrom(value).buildPartial(); + } else { + payload_ = value; + } + onChanged(); + } else { + if (payloadCase_ == 30) { + removeItemBulkBuilder_.mergeFrom(value); + } else { + removeItemBulkBuilder_.setMessage(value); + } + } + payloadCase_ = 30; + return this; + } + /** + * .mxaccess_gateway.v1.RemoveItemBulkCommand remove_item_bulk = 30; + */ + public Builder clearRemoveItemBulk() { + if (removeItemBulkBuilder_ == null) { + if (payloadCase_ == 30) { + payloadCase_ = 0; + payload_ = null; + onChanged(); + } + } else { + if (payloadCase_ == 30) { + payloadCase_ = 0; + payload_ = null; + } + removeItemBulkBuilder_.clear(); + } + return this; + } + /** + * .mxaccess_gateway.v1.RemoveItemBulkCommand remove_item_bulk = 30; + */ + public mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand.Builder getRemoveItemBulkBuilder() { + return internalGetRemoveItemBulkFieldBuilder().getBuilder(); + } + /** + * .mxaccess_gateway.v1.RemoveItemBulkCommand remove_item_bulk = 30; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommandOrBuilder getRemoveItemBulkOrBuilder() { + if ((payloadCase_ == 30) && (removeItemBulkBuilder_ != null)) { + return removeItemBulkBuilder_.getMessageOrBuilder(); + } else { + if (payloadCase_ == 30) { + return (mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand.getDefaultInstance(); + } + } + /** + * .mxaccess_gateway.v1.RemoveItemBulkCommand remove_item_bulk = 30; + */ + private com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand, mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand.Builder, mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommandOrBuilder> + internalGetRemoveItemBulkFieldBuilder() { + if (removeItemBulkBuilder_ == null) { + if (!(payloadCase_ == 30)) { + payload_ = mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand.getDefaultInstance(); + } + removeItemBulkBuilder_ = new com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand, mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand.Builder, mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommandOrBuilder>( + (mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand) payload_, + getParentForChildren(), + isClean()); + payload_ = null; + } + payloadCase_ = 30; + onChanged(); + return removeItemBulkBuilder_; + } + + private com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand, mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand.Builder, mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommandOrBuilder> unAdviseItemBulkBuilder_; + /** + * .mxaccess_gateway.v1.UnAdviseItemBulkCommand un_advise_item_bulk = 31; + * @return Whether the unAdviseItemBulk field is set. + */ + @java.lang.Override + public boolean hasUnAdviseItemBulk() { + return payloadCase_ == 31; + } + /** + * .mxaccess_gateway.v1.UnAdviseItemBulkCommand un_advise_item_bulk = 31; + * @return The unAdviseItemBulk. + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand getUnAdviseItemBulk() { + if (unAdviseItemBulkBuilder_ == null) { + if (payloadCase_ == 31) { + return (mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand.getDefaultInstance(); + } else { + if (payloadCase_ == 31) { + return unAdviseItemBulkBuilder_.getMessage(); + } + return mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand.getDefaultInstance(); + } + } + /** + * .mxaccess_gateway.v1.UnAdviseItemBulkCommand un_advise_item_bulk = 31; + */ + public Builder setUnAdviseItemBulk(mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand value) { + if (unAdviseItemBulkBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + payload_ = value; + onChanged(); + } else { + unAdviseItemBulkBuilder_.setMessage(value); + } + payloadCase_ = 31; + return this; + } + /** + * .mxaccess_gateway.v1.UnAdviseItemBulkCommand un_advise_item_bulk = 31; + */ + public Builder setUnAdviseItemBulk( + mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand.Builder builderForValue) { + if (unAdviseItemBulkBuilder_ == null) { + payload_ = builderForValue.build(); + onChanged(); + } else { + unAdviseItemBulkBuilder_.setMessage(builderForValue.build()); + } + payloadCase_ = 31; + return this; + } + /** + * .mxaccess_gateway.v1.UnAdviseItemBulkCommand un_advise_item_bulk = 31; + */ + public Builder mergeUnAdviseItemBulk(mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand value) { + if (unAdviseItemBulkBuilder_ == null) { + if (payloadCase_ == 31 && + payload_ != mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand.getDefaultInstance()) { + payload_ = mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand.newBuilder((mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand) payload_) + .mergeFrom(value).buildPartial(); + } else { + payload_ = value; + } + onChanged(); + } else { + if (payloadCase_ == 31) { + unAdviseItemBulkBuilder_.mergeFrom(value); + } else { + unAdviseItemBulkBuilder_.setMessage(value); + } + } + payloadCase_ = 31; + return this; + } + /** + * .mxaccess_gateway.v1.UnAdviseItemBulkCommand un_advise_item_bulk = 31; + */ + public Builder clearUnAdviseItemBulk() { + if (unAdviseItemBulkBuilder_ == null) { + if (payloadCase_ == 31) { + payloadCase_ = 0; + payload_ = null; + onChanged(); + } + } else { + if (payloadCase_ == 31) { + payloadCase_ = 0; + payload_ = null; + } + unAdviseItemBulkBuilder_.clear(); + } + return this; + } + /** + * .mxaccess_gateway.v1.UnAdviseItemBulkCommand un_advise_item_bulk = 31; + */ + public mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand.Builder getUnAdviseItemBulkBuilder() { + return internalGetUnAdviseItemBulkFieldBuilder().getBuilder(); + } + /** + * .mxaccess_gateway.v1.UnAdviseItemBulkCommand un_advise_item_bulk = 31; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommandOrBuilder getUnAdviseItemBulkOrBuilder() { + if ((payloadCase_ == 31) && (unAdviseItemBulkBuilder_ != null)) { + return unAdviseItemBulkBuilder_.getMessageOrBuilder(); + } else { + if (payloadCase_ == 31) { + return (mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand.getDefaultInstance(); + } + } + /** + * .mxaccess_gateway.v1.UnAdviseItemBulkCommand un_advise_item_bulk = 31; + */ + private com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand, mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand.Builder, mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommandOrBuilder> + internalGetUnAdviseItemBulkFieldBuilder() { + if (unAdviseItemBulkBuilder_ == null) { + if (!(payloadCase_ == 31)) { + payload_ = mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand.getDefaultInstance(); + } + unAdviseItemBulkBuilder_ = new com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand, mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand.Builder, mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommandOrBuilder>( + (mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand) payload_, + getParentForChildren(), + isClean()); + payload_ = null; + } + payloadCase_ = 31; + onChanged(); + return unAdviseItemBulkBuilder_; + } + + private com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand, mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand.Builder, mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommandOrBuilder> subscribeBulkBuilder_; + /** + * .mxaccess_gateway.v1.SubscribeBulkCommand subscribe_bulk = 32; + * @return Whether the subscribeBulk field is set. + */ + @java.lang.Override + public boolean hasSubscribeBulk() { + return payloadCase_ == 32; + } + /** + * .mxaccess_gateway.v1.SubscribeBulkCommand subscribe_bulk = 32; + * @return The subscribeBulk. + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand getSubscribeBulk() { + if (subscribeBulkBuilder_ == null) { + if (payloadCase_ == 32) { + return (mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand.getDefaultInstance(); + } else { + if (payloadCase_ == 32) { + return subscribeBulkBuilder_.getMessage(); + } + return mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand.getDefaultInstance(); + } + } + /** + * .mxaccess_gateway.v1.SubscribeBulkCommand subscribe_bulk = 32; + */ + public Builder setSubscribeBulk(mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand value) { + if (subscribeBulkBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + payload_ = value; + onChanged(); + } else { + subscribeBulkBuilder_.setMessage(value); + } + payloadCase_ = 32; + return this; + } + /** + * .mxaccess_gateway.v1.SubscribeBulkCommand subscribe_bulk = 32; + */ + public Builder setSubscribeBulk( + mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand.Builder builderForValue) { + if (subscribeBulkBuilder_ == null) { + payload_ = builderForValue.build(); + onChanged(); + } else { + subscribeBulkBuilder_.setMessage(builderForValue.build()); + } + payloadCase_ = 32; + return this; + } + /** + * .mxaccess_gateway.v1.SubscribeBulkCommand subscribe_bulk = 32; + */ + public Builder mergeSubscribeBulk(mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand value) { + if (subscribeBulkBuilder_ == null) { + if (payloadCase_ == 32 && + payload_ != mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand.getDefaultInstance()) { + payload_ = mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand.newBuilder((mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand) payload_) + .mergeFrom(value).buildPartial(); + } else { + payload_ = value; + } + onChanged(); + } else { + if (payloadCase_ == 32) { + subscribeBulkBuilder_.mergeFrom(value); + } else { + subscribeBulkBuilder_.setMessage(value); + } + } + payloadCase_ = 32; + return this; + } + /** + * .mxaccess_gateway.v1.SubscribeBulkCommand subscribe_bulk = 32; + */ + public Builder clearSubscribeBulk() { + if (subscribeBulkBuilder_ == null) { + if (payloadCase_ == 32) { + payloadCase_ = 0; + payload_ = null; + onChanged(); + } + } else { + if (payloadCase_ == 32) { + payloadCase_ = 0; + payload_ = null; + } + subscribeBulkBuilder_.clear(); + } + return this; + } + /** + * .mxaccess_gateway.v1.SubscribeBulkCommand subscribe_bulk = 32; + */ + public mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand.Builder getSubscribeBulkBuilder() { + return internalGetSubscribeBulkFieldBuilder().getBuilder(); + } + /** + * .mxaccess_gateway.v1.SubscribeBulkCommand subscribe_bulk = 32; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommandOrBuilder getSubscribeBulkOrBuilder() { + if ((payloadCase_ == 32) && (subscribeBulkBuilder_ != null)) { + return subscribeBulkBuilder_.getMessageOrBuilder(); + } else { + if (payloadCase_ == 32) { + return (mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand.getDefaultInstance(); + } + } + /** + * .mxaccess_gateway.v1.SubscribeBulkCommand subscribe_bulk = 32; + */ + private com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand, mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand.Builder, mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommandOrBuilder> + internalGetSubscribeBulkFieldBuilder() { + if (subscribeBulkBuilder_ == null) { + if (!(payloadCase_ == 32)) { + payload_ = mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand.getDefaultInstance(); + } + subscribeBulkBuilder_ = new com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand, mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand.Builder, mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommandOrBuilder>( + (mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand) payload_, + getParentForChildren(), + isClean()); + payload_ = null; + } + payloadCase_ = 32; + onChanged(); + return subscribeBulkBuilder_; + } + + private com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand, mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand.Builder, mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommandOrBuilder> unsubscribeBulkBuilder_; + /** + * .mxaccess_gateway.v1.UnsubscribeBulkCommand unsubscribe_bulk = 33; + * @return Whether the unsubscribeBulk field is set. + */ + @java.lang.Override + public boolean hasUnsubscribeBulk() { + return payloadCase_ == 33; + } + /** + * .mxaccess_gateway.v1.UnsubscribeBulkCommand unsubscribe_bulk = 33; + * @return The unsubscribeBulk. + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand getUnsubscribeBulk() { + if (unsubscribeBulkBuilder_ == null) { + if (payloadCase_ == 33) { + return (mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand.getDefaultInstance(); + } else { + if (payloadCase_ == 33) { + return unsubscribeBulkBuilder_.getMessage(); + } + return mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand.getDefaultInstance(); + } + } + /** + * .mxaccess_gateway.v1.UnsubscribeBulkCommand unsubscribe_bulk = 33; + */ + public Builder setUnsubscribeBulk(mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand value) { + if (unsubscribeBulkBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + payload_ = value; + onChanged(); + } else { + unsubscribeBulkBuilder_.setMessage(value); + } + payloadCase_ = 33; + return this; + } + /** + * .mxaccess_gateway.v1.UnsubscribeBulkCommand unsubscribe_bulk = 33; + */ + public Builder setUnsubscribeBulk( + mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand.Builder builderForValue) { + if (unsubscribeBulkBuilder_ == null) { + payload_ = builderForValue.build(); + onChanged(); + } else { + unsubscribeBulkBuilder_.setMessage(builderForValue.build()); + } + payloadCase_ = 33; + return this; + } + /** + * .mxaccess_gateway.v1.UnsubscribeBulkCommand unsubscribe_bulk = 33; + */ + public Builder mergeUnsubscribeBulk(mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand value) { + if (unsubscribeBulkBuilder_ == null) { + if (payloadCase_ == 33 && + payload_ != mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand.getDefaultInstance()) { + payload_ = mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand.newBuilder((mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand) payload_) + .mergeFrom(value).buildPartial(); + } else { + payload_ = value; + } + onChanged(); + } else { + if (payloadCase_ == 33) { + unsubscribeBulkBuilder_.mergeFrom(value); + } else { + unsubscribeBulkBuilder_.setMessage(value); + } + } + payloadCase_ = 33; + return this; + } + /** + * .mxaccess_gateway.v1.UnsubscribeBulkCommand unsubscribe_bulk = 33; + */ + public Builder clearUnsubscribeBulk() { + if (unsubscribeBulkBuilder_ == null) { + if (payloadCase_ == 33) { + payloadCase_ = 0; + payload_ = null; + onChanged(); + } + } else { + if (payloadCase_ == 33) { + payloadCase_ = 0; + payload_ = null; + } + unsubscribeBulkBuilder_.clear(); + } + return this; + } + /** + * .mxaccess_gateway.v1.UnsubscribeBulkCommand unsubscribe_bulk = 33; + */ + public mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand.Builder getUnsubscribeBulkBuilder() { + return internalGetUnsubscribeBulkFieldBuilder().getBuilder(); + } + /** + * .mxaccess_gateway.v1.UnsubscribeBulkCommand unsubscribe_bulk = 33; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommandOrBuilder getUnsubscribeBulkOrBuilder() { + if ((payloadCase_ == 33) && (unsubscribeBulkBuilder_ != null)) { + return unsubscribeBulkBuilder_.getMessageOrBuilder(); + } else { + if (payloadCase_ == 33) { + return (mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand.getDefaultInstance(); + } + } + /** + * .mxaccess_gateway.v1.UnsubscribeBulkCommand unsubscribe_bulk = 33; + */ + private com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand, mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand.Builder, mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommandOrBuilder> + internalGetUnsubscribeBulkFieldBuilder() { + if (unsubscribeBulkBuilder_ == null) { + if (!(payloadCase_ == 33)) { + payload_ = mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand.getDefaultInstance(); + } + unsubscribeBulkBuilder_ = new com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand, mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand.Builder, mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommandOrBuilder>( + (mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand) payload_, + getParentForChildren(), + isClean()); + payload_ = null; + } + payloadCase_ = 33; + onChanged(); + return unsubscribeBulkBuilder_; + } + private com.google.protobuf.SingleFieldBuilder< mxaccess_gateway.v1.MxaccessGateway.PingCommand, mxaccess_gateway.v1.MxaccessGateway.PingCommand.Builder, mxaccess_gateway.v1.MxaccessGateway.PingCommandOrBuilder> pingBuilder_; /** @@ -24373,6 +25765,3806 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { } + public interface AddItemBulkCommandOrBuilder extends + // @@protoc_insertion_point(interface_extends:mxaccess_gateway.v1.AddItemBulkCommand) + com.google.protobuf.MessageOrBuilder { + + /** + * int32 server_handle = 1; + * @return The serverHandle. + */ + int getServerHandle(); + + /** + * repeated string tag_addresses = 2; + * @return A list containing the tagAddresses. + */ + java.util.List + getTagAddressesList(); + /** + * repeated string tag_addresses = 2; + * @return The count of tagAddresses. + */ + int getTagAddressesCount(); + /** + * repeated string tag_addresses = 2; + * @param index The index of the element to return. + * @return The tagAddresses at the given index. + */ + java.lang.String getTagAddresses(int index); + /** + * repeated string tag_addresses = 2; + * @param index The index of the value to return. + * @return The bytes of the tagAddresses at the given index. + */ + com.google.protobuf.ByteString + getTagAddressesBytes(int index); + } + /** + * Protobuf type {@code mxaccess_gateway.v1.AddItemBulkCommand} + */ + public static final class AddItemBulkCommand extends + com.google.protobuf.GeneratedMessage implements + // @@protoc_insertion_point(message_implements:mxaccess_gateway.v1.AddItemBulkCommand) + AddItemBulkCommandOrBuilder { + private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 1, + /* suffix= */ "", + "AddItemBulkCommand"); + } + // Use AddItemBulkCommand.newBuilder() to construct. + private AddItemBulkCommand(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + private AddItemBulkCommand() { + tagAddresses_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_AddItemBulkCommand_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_AddItemBulkCommand_fieldAccessorTable + .ensureFieldAccessorsInitialized( + mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand.class, mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand.Builder.class); + } + + public static final int SERVER_HANDLE_FIELD_NUMBER = 1; + private int serverHandle_ = 0; + /** + * int32 server_handle = 1; + * @return The serverHandle. + */ + @java.lang.Override + public int getServerHandle() { + return serverHandle_; + } + + public static final int TAG_ADDRESSES_FIELD_NUMBER = 2; + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList tagAddresses_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** + * repeated string tag_addresses = 2; + * @return A list containing the tagAddresses. + */ + public com.google.protobuf.ProtocolStringList + getTagAddressesList() { + return tagAddresses_; + } + /** + * repeated string tag_addresses = 2; + * @return The count of tagAddresses. + */ + public int getTagAddressesCount() { + return tagAddresses_.size(); + } + /** + * repeated string tag_addresses = 2; + * @param index The index of the element to return. + * @return The tagAddresses at the given index. + */ + public java.lang.String getTagAddresses(int index) { + return tagAddresses_.get(index); + } + /** + * repeated string tag_addresses = 2; + * @param index The index of the value to return. + * @return The bytes of the tagAddresses at the given index. + */ + public com.google.protobuf.ByteString + getTagAddressesBytes(int index) { + return tagAddresses_.getByteString(index); + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (serverHandle_ != 0) { + output.writeInt32(1, serverHandle_); + } + for (int i = 0; i < tagAddresses_.size(); i++) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, tagAddresses_.getRaw(i)); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (serverHandle_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeInt32Size(1, serverHandle_); + } + { + int dataSize = 0; + for (int i = 0; i < tagAddresses_.size(); i++) { + dataSize += computeStringSizeNoTag(tagAddresses_.getRaw(i)); + } + size += dataSize; + size += 1 * getTagAddressesList().size(); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand)) { + return super.equals(obj); + } + mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand other = (mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand) obj; + + if (getServerHandle() + != other.getServerHandle()) return false; + if (!getTagAddressesList() + .equals(other.getTagAddressesList())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + SERVER_HANDLE_FIELD_NUMBER; + hash = (53 * hash) + getServerHandle(); + if (getTagAddressesCount() > 0) { + hash = (37 * hash) + TAG_ADDRESSES_FIELD_NUMBER; + hash = (53 * hash) + getTagAddressesList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input); + } + + public static mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand 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.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code mxaccess_gateway.v1.AddItemBulkCommand} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessage.Builder implements + // @@protoc_insertion_point(builder_implements:mxaccess_gateway.v1.AddItemBulkCommand) + mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommandOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_AddItemBulkCommand_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_AddItemBulkCommand_fieldAccessorTable + .ensureFieldAccessorsInitialized( + mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand.class, mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand.Builder.class); + } + + // Construct using mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + serverHandle_ = 0; + tagAddresses_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_AddItemBulkCommand_descriptor; + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand getDefaultInstanceForType() { + return mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand.getDefaultInstance(); + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand build() { + mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand buildPartial() { + mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand result = new mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.serverHandle_ = serverHandle_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + tagAddresses_.makeImmutable(); + result.tagAddresses_ = tagAddresses_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand) { + return mergeFrom((mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand other) { + if (other == mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand.getDefaultInstance()) return this; + if (other.getServerHandle() != 0) { + setServerHandle(other.getServerHandle()); + } + if (!other.tagAddresses_.isEmpty()) { + if (tagAddresses_.isEmpty()) { + tagAddresses_ = other.tagAddresses_; + bitField0_ |= 0x00000002; + } else { + ensureTagAddressesIsMutable(); + tagAddresses_.addAll(other.tagAddresses_); + } + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: { + serverHandle_ = input.readInt32(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 18: { + java.lang.String s = input.readStringRequireUtf8(); + ensureTagAddressesIsMutable(); + tagAddresses_.add(s); + break; + } // case 18 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private int serverHandle_ ; + /** + * int32 server_handle = 1; + * @return The serverHandle. + */ + @java.lang.Override + public int getServerHandle() { + return serverHandle_; + } + /** + * int32 server_handle = 1; + * @param value The serverHandle to set. + * @return This builder for chaining. + */ + public Builder setServerHandle(int value) { + + serverHandle_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * int32 server_handle = 1; + * @return This builder for chaining. + */ + public Builder clearServerHandle() { + bitField0_ = (bitField0_ & ~0x00000001); + serverHandle_ = 0; + onChanged(); + return this; + } + + private com.google.protobuf.LazyStringArrayList tagAddresses_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + private void ensureTagAddressesIsMutable() { + if (!tagAddresses_.isModifiable()) { + tagAddresses_ = new com.google.protobuf.LazyStringArrayList(tagAddresses_); + } + bitField0_ |= 0x00000002; + } + /** + * repeated string tag_addresses = 2; + * @return A list containing the tagAddresses. + */ + public com.google.protobuf.ProtocolStringList + getTagAddressesList() { + tagAddresses_.makeImmutable(); + return tagAddresses_; + } + /** + * repeated string tag_addresses = 2; + * @return The count of tagAddresses. + */ + public int getTagAddressesCount() { + return tagAddresses_.size(); + } + /** + * repeated string tag_addresses = 2; + * @param index The index of the element to return. + * @return The tagAddresses at the given index. + */ + public java.lang.String getTagAddresses(int index) { + return tagAddresses_.get(index); + } + /** + * repeated string tag_addresses = 2; + * @param index The index of the value to return. + * @return The bytes of the tagAddresses at the given index. + */ + public com.google.protobuf.ByteString + getTagAddressesBytes(int index) { + return tagAddresses_.getByteString(index); + } + /** + * repeated string tag_addresses = 2; + * @param index The index to set the value at. + * @param value The tagAddresses to set. + * @return This builder for chaining. + */ + public Builder setTagAddresses( + int index, java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureTagAddressesIsMutable(); + tagAddresses_.set(index, value); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * repeated string tag_addresses = 2; + * @param value The tagAddresses to add. + * @return This builder for chaining. + */ + public Builder addTagAddresses( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureTagAddressesIsMutable(); + tagAddresses_.add(value); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * repeated string tag_addresses = 2; + * @param values The tagAddresses to add. + * @return This builder for chaining. + */ + public Builder addAllTagAddresses( + java.lang.Iterable values) { + ensureTagAddressesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, tagAddresses_); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * repeated string tag_addresses = 2; + * @return This builder for chaining. + */ + public Builder clearTagAddresses() { + tagAddresses_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002);; + onChanged(); + return this; + } + /** + * repeated string tag_addresses = 2; + * @param value The bytes of the tagAddresses to add. + * @return This builder for chaining. + */ + public Builder addTagAddressesBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + ensureTagAddressesIsMutable(); + tagAddresses_.add(value); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:mxaccess_gateway.v1.AddItemBulkCommand) + } + + // @@protoc_insertion_point(class_scope:mxaccess_gateway.v1.AddItemBulkCommand) + private static final mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand(); + } + + public static mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public AddItemBulkCommand parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.AddItemBulkCommand getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface AdviseItemBulkCommandOrBuilder extends + // @@protoc_insertion_point(interface_extends:mxaccess_gateway.v1.AdviseItemBulkCommand) + com.google.protobuf.MessageOrBuilder { + + /** + * int32 server_handle = 1; + * @return The serverHandle. + */ + int getServerHandle(); + + /** + * repeated int32 item_handles = 2; + * @return A list containing the itemHandles. + */ + java.util.List getItemHandlesList(); + /** + * repeated int32 item_handles = 2; + * @return The count of itemHandles. + */ + int getItemHandlesCount(); + /** + * repeated int32 item_handles = 2; + * @param index The index of the element to return. + * @return The itemHandles at the given index. + */ + int getItemHandles(int index); + } + /** + * Protobuf type {@code mxaccess_gateway.v1.AdviseItemBulkCommand} + */ + public static final class AdviseItemBulkCommand extends + com.google.protobuf.GeneratedMessage implements + // @@protoc_insertion_point(message_implements:mxaccess_gateway.v1.AdviseItemBulkCommand) + AdviseItemBulkCommandOrBuilder { + private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 1, + /* suffix= */ "", + "AdviseItemBulkCommand"); + } + // Use AdviseItemBulkCommand.newBuilder() to construct. + private AdviseItemBulkCommand(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + private AdviseItemBulkCommand() { + itemHandles_ = emptyIntList(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_AdviseItemBulkCommand_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_AdviseItemBulkCommand_fieldAccessorTable + .ensureFieldAccessorsInitialized( + mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand.class, mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand.Builder.class); + } + + public static final int SERVER_HANDLE_FIELD_NUMBER = 1; + private int serverHandle_ = 0; + /** + * int32 server_handle = 1; + * @return The serverHandle. + */ + @java.lang.Override + public int getServerHandle() { + return serverHandle_; + } + + public static final int ITEM_HANDLES_FIELD_NUMBER = 2; + @SuppressWarnings("serial") + private com.google.protobuf.Internal.IntList itemHandles_ = + emptyIntList(); + /** + * repeated int32 item_handles = 2; + * @return A list containing the itemHandles. + */ + @java.lang.Override + public java.util.List + getItemHandlesList() { + return itemHandles_; + } + /** + * repeated int32 item_handles = 2; + * @return The count of itemHandles. + */ + public int getItemHandlesCount() { + return itemHandles_.size(); + } + /** + * repeated int32 item_handles = 2; + * @param index The index of the element to return. + * @return The itemHandles at the given index. + */ + public int getItemHandles(int index) { + return itemHandles_.getInt(index); + } + private int itemHandlesMemoizedSerializedSize = -1; + + 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 { + getSerializedSize(); + if (serverHandle_ != 0) { + output.writeInt32(1, serverHandle_); + } + if (getItemHandlesList().size() > 0) { + output.writeUInt32NoTag(18); + output.writeUInt32NoTag(itemHandlesMemoizedSerializedSize); + } + for (int i = 0; i < itemHandles_.size(); i++) { + output.writeInt32NoTag(itemHandles_.getInt(i)); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (serverHandle_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeInt32Size(1, serverHandle_); + } + { + int dataSize = 0; + for (int i = 0; i < itemHandles_.size(); i++) { + dataSize += com.google.protobuf.CodedOutputStream + .computeInt32SizeNoTag(itemHandles_.getInt(i)); + } + size += dataSize; + if (!getItemHandlesList().isEmpty()) { + size += 1; + size += com.google.protobuf.CodedOutputStream + .computeInt32SizeNoTag(dataSize); + } + itemHandlesMemoizedSerializedSize = dataSize; + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand)) { + return super.equals(obj); + } + mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand other = (mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand) obj; + + if (getServerHandle() + != other.getServerHandle()) return false; + if (!getItemHandlesList() + .equals(other.getItemHandlesList())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + SERVER_HANDLE_FIELD_NUMBER; + hash = (53 * hash) + getServerHandle(); + if (getItemHandlesCount() > 0) { + hash = (37 * hash) + ITEM_HANDLES_FIELD_NUMBER; + hash = (53 * hash) + getItemHandlesList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input); + } + + public static mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand 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.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code mxaccess_gateway.v1.AdviseItemBulkCommand} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessage.Builder implements + // @@protoc_insertion_point(builder_implements:mxaccess_gateway.v1.AdviseItemBulkCommand) + mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommandOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_AdviseItemBulkCommand_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_AdviseItemBulkCommand_fieldAccessorTable + .ensureFieldAccessorsInitialized( + mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand.class, mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand.Builder.class); + } + + // Construct using mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + serverHandle_ = 0; + itemHandles_ = emptyIntList(); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_AdviseItemBulkCommand_descriptor; + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand getDefaultInstanceForType() { + return mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand.getDefaultInstance(); + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand build() { + mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand buildPartial() { + mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand result = new mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.serverHandle_ = serverHandle_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + itemHandles_.makeImmutable(); + result.itemHandles_ = itemHandles_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand) { + return mergeFrom((mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand other) { + if (other == mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand.getDefaultInstance()) return this; + if (other.getServerHandle() != 0) { + setServerHandle(other.getServerHandle()); + } + if (!other.itemHandles_.isEmpty()) { + if (itemHandles_.isEmpty()) { + itemHandles_ = other.itemHandles_; + itemHandles_.makeImmutable(); + bitField0_ |= 0x00000002; + } else { + ensureItemHandlesIsMutable(); + itemHandles_.addAll(other.itemHandles_); + } + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: { + serverHandle_ = input.readInt32(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 16: { + int v = input.readInt32(); + ensureItemHandlesIsMutable(); + itemHandles_.addInt(v); + break; + } // case 16 + case 18: { + int length = input.readRawVarint32(); + int limit = input.pushLimit(length); + ensureItemHandlesIsMutable(); + while (input.getBytesUntilLimit() > 0) { + itemHandles_.addInt(input.readInt32()); + } + input.popLimit(limit); + break; + } // case 18 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private int serverHandle_ ; + /** + * int32 server_handle = 1; + * @return The serverHandle. + */ + @java.lang.Override + public int getServerHandle() { + return serverHandle_; + } + /** + * int32 server_handle = 1; + * @param value The serverHandle to set. + * @return This builder for chaining. + */ + public Builder setServerHandle(int value) { + + serverHandle_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * int32 server_handle = 1; + * @return This builder for chaining. + */ + public Builder clearServerHandle() { + bitField0_ = (bitField0_ & ~0x00000001); + serverHandle_ = 0; + onChanged(); + return this; + } + + private com.google.protobuf.Internal.IntList itemHandles_ = emptyIntList(); + private void ensureItemHandlesIsMutable() { + if (!itemHandles_.isModifiable()) { + itemHandles_ = makeMutableCopy(itemHandles_); + } + bitField0_ |= 0x00000002; + } + /** + * repeated int32 item_handles = 2; + * @return A list containing the itemHandles. + */ + public java.util.List + getItemHandlesList() { + itemHandles_.makeImmutable(); + return itemHandles_; + } + /** + * repeated int32 item_handles = 2; + * @return The count of itemHandles. + */ + public int getItemHandlesCount() { + return itemHandles_.size(); + } + /** + * repeated int32 item_handles = 2; + * @param index The index of the element to return. + * @return The itemHandles at the given index. + */ + public int getItemHandles(int index) { + return itemHandles_.getInt(index); + } + /** + * repeated int32 item_handles = 2; + * @param index The index to set the value at. + * @param value The itemHandles to set. + * @return This builder for chaining. + */ + public Builder setItemHandles( + int index, int value) { + + ensureItemHandlesIsMutable(); + itemHandles_.setInt(index, value); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * repeated int32 item_handles = 2; + * @param value The itemHandles to add. + * @return This builder for chaining. + */ + public Builder addItemHandles(int value) { + + ensureItemHandlesIsMutable(); + itemHandles_.addInt(value); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * repeated int32 item_handles = 2; + * @param values The itemHandles to add. + * @return This builder for chaining. + */ + public Builder addAllItemHandles( + java.lang.Iterable values) { + ensureItemHandlesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, itemHandles_); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * repeated int32 item_handles = 2; + * @return This builder for chaining. + */ + public Builder clearItemHandles() { + itemHandles_ = emptyIntList(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:mxaccess_gateway.v1.AdviseItemBulkCommand) + } + + // @@protoc_insertion_point(class_scope:mxaccess_gateway.v1.AdviseItemBulkCommand) + private static final mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand(); + } + + public static mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public AdviseItemBulkCommand parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.AdviseItemBulkCommand getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface RemoveItemBulkCommandOrBuilder extends + // @@protoc_insertion_point(interface_extends:mxaccess_gateway.v1.RemoveItemBulkCommand) + com.google.protobuf.MessageOrBuilder { + + /** + * int32 server_handle = 1; + * @return The serverHandle. + */ + int getServerHandle(); + + /** + * repeated int32 item_handles = 2; + * @return A list containing the itemHandles. + */ + java.util.List getItemHandlesList(); + /** + * repeated int32 item_handles = 2; + * @return The count of itemHandles. + */ + int getItemHandlesCount(); + /** + * repeated int32 item_handles = 2; + * @param index The index of the element to return. + * @return The itemHandles at the given index. + */ + int getItemHandles(int index); + } + /** + * Protobuf type {@code mxaccess_gateway.v1.RemoveItemBulkCommand} + */ + public static final class RemoveItemBulkCommand extends + com.google.protobuf.GeneratedMessage implements + // @@protoc_insertion_point(message_implements:mxaccess_gateway.v1.RemoveItemBulkCommand) + RemoveItemBulkCommandOrBuilder { + private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 1, + /* suffix= */ "", + "RemoveItemBulkCommand"); + } + // Use RemoveItemBulkCommand.newBuilder() to construct. + private RemoveItemBulkCommand(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + private RemoveItemBulkCommand() { + itemHandles_ = emptyIntList(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_RemoveItemBulkCommand_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_RemoveItemBulkCommand_fieldAccessorTable + .ensureFieldAccessorsInitialized( + mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand.class, mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand.Builder.class); + } + + public static final int SERVER_HANDLE_FIELD_NUMBER = 1; + private int serverHandle_ = 0; + /** + * int32 server_handle = 1; + * @return The serverHandle. + */ + @java.lang.Override + public int getServerHandle() { + return serverHandle_; + } + + public static final int ITEM_HANDLES_FIELD_NUMBER = 2; + @SuppressWarnings("serial") + private com.google.protobuf.Internal.IntList itemHandles_ = + emptyIntList(); + /** + * repeated int32 item_handles = 2; + * @return A list containing the itemHandles. + */ + @java.lang.Override + public java.util.List + getItemHandlesList() { + return itemHandles_; + } + /** + * repeated int32 item_handles = 2; + * @return The count of itemHandles. + */ + public int getItemHandlesCount() { + return itemHandles_.size(); + } + /** + * repeated int32 item_handles = 2; + * @param index The index of the element to return. + * @return The itemHandles at the given index. + */ + public int getItemHandles(int index) { + return itemHandles_.getInt(index); + } + private int itemHandlesMemoizedSerializedSize = -1; + + 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 { + getSerializedSize(); + if (serverHandle_ != 0) { + output.writeInt32(1, serverHandle_); + } + if (getItemHandlesList().size() > 0) { + output.writeUInt32NoTag(18); + output.writeUInt32NoTag(itemHandlesMemoizedSerializedSize); + } + for (int i = 0; i < itemHandles_.size(); i++) { + output.writeInt32NoTag(itemHandles_.getInt(i)); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (serverHandle_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeInt32Size(1, serverHandle_); + } + { + int dataSize = 0; + for (int i = 0; i < itemHandles_.size(); i++) { + dataSize += com.google.protobuf.CodedOutputStream + .computeInt32SizeNoTag(itemHandles_.getInt(i)); + } + size += dataSize; + if (!getItemHandlesList().isEmpty()) { + size += 1; + size += com.google.protobuf.CodedOutputStream + .computeInt32SizeNoTag(dataSize); + } + itemHandlesMemoizedSerializedSize = dataSize; + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand)) { + return super.equals(obj); + } + mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand other = (mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand) obj; + + if (getServerHandle() + != other.getServerHandle()) return false; + if (!getItemHandlesList() + .equals(other.getItemHandlesList())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + SERVER_HANDLE_FIELD_NUMBER; + hash = (53 * hash) + getServerHandle(); + if (getItemHandlesCount() > 0) { + hash = (37 * hash) + ITEM_HANDLES_FIELD_NUMBER; + hash = (53 * hash) + getItemHandlesList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input); + } + + public static mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand 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.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code mxaccess_gateway.v1.RemoveItemBulkCommand} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessage.Builder implements + // @@protoc_insertion_point(builder_implements:mxaccess_gateway.v1.RemoveItemBulkCommand) + mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommandOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_RemoveItemBulkCommand_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_RemoveItemBulkCommand_fieldAccessorTable + .ensureFieldAccessorsInitialized( + mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand.class, mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand.Builder.class); + } + + // Construct using mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + serverHandle_ = 0; + itemHandles_ = emptyIntList(); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_RemoveItemBulkCommand_descriptor; + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand getDefaultInstanceForType() { + return mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand.getDefaultInstance(); + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand build() { + mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand buildPartial() { + mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand result = new mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.serverHandle_ = serverHandle_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + itemHandles_.makeImmutable(); + result.itemHandles_ = itemHandles_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand) { + return mergeFrom((mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand other) { + if (other == mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand.getDefaultInstance()) return this; + if (other.getServerHandle() != 0) { + setServerHandle(other.getServerHandle()); + } + if (!other.itemHandles_.isEmpty()) { + if (itemHandles_.isEmpty()) { + itemHandles_ = other.itemHandles_; + itemHandles_.makeImmutable(); + bitField0_ |= 0x00000002; + } else { + ensureItemHandlesIsMutable(); + itemHandles_.addAll(other.itemHandles_); + } + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: { + serverHandle_ = input.readInt32(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 16: { + int v = input.readInt32(); + ensureItemHandlesIsMutable(); + itemHandles_.addInt(v); + break; + } // case 16 + case 18: { + int length = input.readRawVarint32(); + int limit = input.pushLimit(length); + ensureItemHandlesIsMutable(); + while (input.getBytesUntilLimit() > 0) { + itemHandles_.addInt(input.readInt32()); + } + input.popLimit(limit); + break; + } // case 18 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private int serverHandle_ ; + /** + * int32 server_handle = 1; + * @return The serverHandle. + */ + @java.lang.Override + public int getServerHandle() { + return serverHandle_; + } + /** + * int32 server_handle = 1; + * @param value The serverHandle to set. + * @return This builder for chaining. + */ + public Builder setServerHandle(int value) { + + serverHandle_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * int32 server_handle = 1; + * @return This builder for chaining. + */ + public Builder clearServerHandle() { + bitField0_ = (bitField0_ & ~0x00000001); + serverHandle_ = 0; + onChanged(); + return this; + } + + private com.google.protobuf.Internal.IntList itemHandles_ = emptyIntList(); + private void ensureItemHandlesIsMutable() { + if (!itemHandles_.isModifiable()) { + itemHandles_ = makeMutableCopy(itemHandles_); + } + bitField0_ |= 0x00000002; + } + /** + * repeated int32 item_handles = 2; + * @return A list containing the itemHandles. + */ + public java.util.List + getItemHandlesList() { + itemHandles_.makeImmutable(); + return itemHandles_; + } + /** + * repeated int32 item_handles = 2; + * @return The count of itemHandles. + */ + public int getItemHandlesCount() { + return itemHandles_.size(); + } + /** + * repeated int32 item_handles = 2; + * @param index The index of the element to return. + * @return The itemHandles at the given index. + */ + public int getItemHandles(int index) { + return itemHandles_.getInt(index); + } + /** + * repeated int32 item_handles = 2; + * @param index The index to set the value at. + * @param value The itemHandles to set. + * @return This builder for chaining. + */ + public Builder setItemHandles( + int index, int value) { + + ensureItemHandlesIsMutable(); + itemHandles_.setInt(index, value); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * repeated int32 item_handles = 2; + * @param value The itemHandles to add. + * @return This builder for chaining. + */ + public Builder addItemHandles(int value) { + + ensureItemHandlesIsMutable(); + itemHandles_.addInt(value); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * repeated int32 item_handles = 2; + * @param values The itemHandles to add. + * @return This builder for chaining. + */ + public Builder addAllItemHandles( + java.lang.Iterable values) { + ensureItemHandlesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, itemHandles_); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * repeated int32 item_handles = 2; + * @return This builder for chaining. + */ + public Builder clearItemHandles() { + itemHandles_ = emptyIntList(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:mxaccess_gateway.v1.RemoveItemBulkCommand) + } + + // @@protoc_insertion_point(class_scope:mxaccess_gateway.v1.RemoveItemBulkCommand) + private static final mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand(); + } + + public static mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public RemoveItemBulkCommand parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.RemoveItemBulkCommand getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface UnAdviseItemBulkCommandOrBuilder extends + // @@protoc_insertion_point(interface_extends:mxaccess_gateway.v1.UnAdviseItemBulkCommand) + com.google.protobuf.MessageOrBuilder { + + /** + * int32 server_handle = 1; + * @return The serverHandle. + */ + int getServerHandle(); + + /** + * repeated int32 item_handles = 2; + * @return A list containing the itemHandles. + */ + java.util.List getItemHandlesList(); + /** + * repeated int32 item_handles = 2; + * @return The count of itemHandles. + */ + int getItemHandlesCount(); + /** + * repeated int32 item_handles = 2; + * @param index The index of the element to return. + * @return The itemHandles at the given index. + */ + int getItemHandles(int index); + } + /** + * Protobuf type {@code mxaccess_gateway.v1.UnAdviseItemBulkCommand} + */ + public static final class UnAdviseItemBulkCommand extends + com.google.protobuf.GeneratedMessage implements + // @@protoc_insertion_point(message_implements:mxaccess_gateway.v1.UnAdviseItemBulkCommand) + UnAdviseItemBulkCommandOrBuilder { + private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 1, + /* suffix= */ "", + "UnAdviseItemBulkCommand"); + } + // Use UnAdviseItemBulkCommand.newBuilder() to construct. + private UnAdviseItemBulkCommand(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + private UnAdviseItemBulkCommand() { + itemHandles_ = emptyIntList(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_UnAdviseItemBulkCommand_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_UnAdviseItemBulkCommand_fieldAccessorTable + .ensureFieldAccessorsInitialized( + mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand.class, mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand.Builder.class); + } + + public static final int SERVER_HANDLE_FIELD_NUMBER = 1; + private int serverHandle_ = 0; + /** + * int32 server_handle = 1; + * @return The serverHandle. + */ + @java.lang.Override + public int getServerHandle() { + return serverHandle_; + } + + public static final int ITEM_HANDLES_FIELD_NUMBER = 2; + @SuppressWarnings("serial") + private com.google.protobuf.Internal.IntList itemHandles_ = + emptyIntList(); + /** + * repeated int32 item_handles = 2; + * @return A list containing the itemHandles. + */ + @java.lang.Override + public java.util.List + getItemHandlesList() { + return itemHandles_; + } + /** + * repeated int32 item_handles = 2; + * @return The count of itemHandles. + */ + public int getItemHandlesCount() { + return itemHandles_.size(); + } + /** + * repeated int32 item_handles = 2; + * @param index The index of the element to return. + * @return The itemHandles at the given index. + */ + public int getItemHandles(int index) { + return itemHandles_.getInt(index); + } + private int itemHandlesMemoizedSerializedSize = -1; + + 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 { + getSerializedSize(); + if (serverHandle_ != 0) { + output.writeInt32(1, serverHandle_); + } + if (getItemHandlesList().size() > 0) { + output.writeUInt32NoTag(18); + output.writeUInt32NoTag(itemHandlesMemoizedSerializedSize); + } + for (int i = 0; i < itemHandles_.size(); i++) { + output.writeInt32NoTag(itemHandles_.getInt(i)); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (serverHandle_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeInt32Size(1, serverHandle_); + } + { + int dataSize = 0; + for (int i = 0; i < itemHandles_.size(); i++) { + dataSize += com.google.protobuf.CodedOutputStream + .computeInt32SizeNoTag(itemHandles_.getInt(i)); + } + size += dataSize; + if (!getItemHandlesList().isEmpty()) { + size += 1; + size += com.google.protobuf.CodedOutputStream + .computeInt32SizeNoTag(dataSize); + } + itemHandlesMemoizedSerializedSize = dataSize; + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand)) { + return super.equals(obj); + } + mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand other = (mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand) obj; + + if (getServerHandle() + != other.getServerHandle()) return false; + if (!getItemHandlesList() + .equals(other.getItemHandlesList())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + SERVER_HANDLE_FIELD_NUMBER; + hash = (53 * hash) + getServerHandle(); + if (getItemHandlesCount() > 0) { + hash = (37 * hash) + ITEM_HANDLES_FIELD_NUMBER; + hash = (53 * hash) + getItemHandlesList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input); + } + + public static mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand 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.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code mxaccess_gateway.v1.UnAdviseItemBulkCommand} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessage.Builder implements + // @@protoc_insertion_point(builder_implements:mxaccess_gateway.v1.UnAdviseItemBulkCommand) + mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommandOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_UnAdviseItemBulkCommand_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_UnAdviseItemBulkCommand_fieldAccessorTable + .ensureFieldAccessorsInitialized( + mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand.class, mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand.Builder.class); + } + + // Construct using mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + serverHandle_ = 0; + itemHandles_ = emptyIntList(); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_UnAdviseItemBulkCommand_descriptor; + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand getDefaultInstanceForType() { + return mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand.getDefaultInstance(); + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand build() { + mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand buildPartial() { + mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand result = new mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.serverHandle_ = serverHandle_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + itemHandles_.makeImmutable(); + result.itemHandles_ = itemHandles_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand) { + return mergeFrom((mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand other) { + if (other == mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand.getDefaultInstance()) return this; + if (other.getServerHandle() != 0) { + setServerHandle(other.getServerHandle()); + } + if (!other.itemHandles_.isEmpty()) { + if (itemHandles_.isEmpty()) { + itemHandles_ = other.itemHandles_; + itemHandles_.makeImmutable(); + bitField0_ |= 0x00000002; + } else { + ensureItemHandlesIsMutable(); + itemHandles_.addAll(other.itemHandles_); + } + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: { + serverHandle_ = input.readInt32(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 16: { + int v = input.readInt32(); + ensureItemHandlesIsMutable(); + itemHandles_.addInt(v); + break; + } // case 16 + case 18: { + int length = input.readRawVarint32(); + int limit = input.pushLimit(length); + ensureItemHandlesIsMutable(); + while (input.getBytesUntilLimit() > 0) { + itemHandles_.addInt(input.readInt32()); + } + input.popLimit(limit); + break; + } // case 18 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private int serverHandle_ ; + /** + * int32 server_handle = 1; + * @return The serverHandle. + */ + @java.lang.Override + public int getServerHandle() { + return serverHandle_; + } + /** + * int32 server_handle = 1; + * @param value The serverHandle to set. + * @return This builder for chaining. + */ + public Builder setServerHandle(int value) { + + serverHandle_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * int32 server_handle = 1; + * @return This builder for chaining. + */ + public Builder clearServerHandle() { + bitField0_ = (bitField0_ & ~0x00000001); + serverHandle_ = 0; + onChanged(); + return this; + } + + private com.google.protobuf.Internal.IntList itemHandles_ = emptyIntList(); + private void ensureItemHandlesIsMutable() { + if (!itemHandles_.isModifiable()) { + itemHandles_ = makeMutableCopy(itemHandles_); + } + bitField0_ |= 0x00000002; + } + /** + * repeated int32 item_handles = 2; + * @return A list containing the itemHandles. + */ + public java.util.List + getItemHandlesList() { + itemHandles_.makeImmutable(); + return itemHandles_; + } + /** + * repeated int32 item_handles = 2; + * @return The count of itemHandles. + */ + public int getItemHandlesCount() { + return itemHandles_.size(); + } + /** + * repeated int32 item_handles = 2; + * @param index The index of the element to return. + * @return The itemHandles at the given index. + */ + public int getItemHandles(int index) { + return itemHandles_.getInt(index); + } + /** + * repeated int32 item_handles = 2; + * @param index The index to set the value at. + * @param value The itemHandles to set. + * @return This builder for chaining. + */ + public Builder setItemHandles( + int index, int value) { + + ensureItemHandlesIsMutable(); + itemHandles_.setInt(index, value); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * repeated int32 item_handles = 2; + * @param value The itemHandles to add. + * @return This builder for chaining. + */ + public Builder addItemHandles(int value) { + + ensureItemHandlesIsMutable(); + itemHandles_.addInt(value); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * repeated int32 item_handles = 2; + * @param values The itemHandles to add. + * @return This builder for chaining. + */ + public Builder addAllItemHandles( + java.lang.Iterable values) { + ensureItemHandlesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, itemHandles_); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * repeated int32 item_handles = 2; + * @return This builder for chaining. + */ + public Builder clearItemHandles() { + itemHandles_ = emptyIntList(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:mxaccess_gateway.v1.UnAdviseItemBulkCommand) + } + + // @@protoc_insertion_point(class_scope:mxaccess_gateway.v1.UnAdviseItemBulkCommand) + private static final mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand(); + } + + public static mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public UnAdviseItemBulkCommand parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.UnAdviseItemBulkCommand getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface SubscribeBulkCommandOrBuilder extends + // @@protoc_insertion_point(interface_extends:mxaccess_gateway.v1.SubscribeBulkCommand) + com.google.protobuf.MessageOrBuilder { + + /** + * int32 server_handle = 1; + * @return The serverHandle. + */ + int getServerHandle(); + + /** + * repeated string tag_addresses = 2; + * @return A list containing the tagAddresses. + */ + java.util.List + getTagAddressesList(); + /** + * repeated string tag_addresses = 2; + * @return The count of tagAddresses. + */ + int getTagAddressesCount(); + /** + * repeated string tag_addresses = 2; + * @param index The index of the element to return. + * @return The tagAddresses at the given index. + */ + java.lang.String getTagAddresses(int index); + /** + * repeated string tag_addresses = 2; + * @param index The index of the value to return. + * @return The bytes of the tagAddresses at the given index. + */ + com.google.protobuf.ByteString + getTagAddressesBytes(int index); + } + /** + * Protobuf type {@code mxaccess_gateway.v1.SubscribeBulkCommand} + */ + public static final class SubscribeBulkCommand extends + com.google.protobuf.GeneratedMessage implements + // @@protoc_insertion_point(message_implements:mxaccess_gateway.v1.SubscribeBulkCommand) + SubscribeBulkCommandOrBuilder { + private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 1, + /* suffix= */ "", + "SubscribeBulkCommand"); + } + // Use SubscribeBulkCommand.newBuilder() to construct. + private SubscribeBulkCommand(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + private SubscribeBulkCommand() { + tagAddresses_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_SubscribeBulkCommand_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_SubscribeBulkCommand_fieldAccessorTable + .ensureFieldAccessorsInitialized( + mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand.class, mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand.Builder.class); + } + + public static final int SERVER_HANDLE_FIELD_NUMBER = 1; + private int serverHandle_ = 0; + /** + * int32 server_handle = 1; + * @return The serverHandle. + */ + @java.lang.Override + public int getServerHandle() { + return serverHandle_; + } + + public static final int TAG_ADDRESSES_FIELD_NUMBER = 2; + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList tagAddresses_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + /** + * repeated string tag_addresses = 2; + * @return A list containing the tagAddresses. + */ + public com.google.protobuf.ProtocolStringList + getTagAddressesList() { + return tagAddresses_; + } + /** + * repeated string tag_addresses = 2; + * @return The count of tagAddresses. + */ + public int getTagAddressesCount() { + return tagAddresses_.size(); + } + /** + * repeated string tag_addresses = 2; + * @param index The index of the element to return. + * @return The tagAddresses at the given index. + */ + public java.lang.String getTagAddresses(int index) { + return tagAddresses_.get(index); + } + /** + * repeated string tag_addresses = 2; + * @param index The index of the value to return. + * @return The bytes of the tagAddresses at the given index. + */ + public com.google.protobuf.ByteString + getTagAddressesBytes(int index) { + return tagAddresses_.getByteString(index); + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (serverHandle_ != 0) { + output.writeInt32(1, serverHandle_); + } + for (int i = 0; i < tagAddresses_.size(); i++) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, tagAddresses_.getRaw(i)); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (serverHandle_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeInt32Size(1, serverHandle_); + } + { + int dataSize = 0; + for (int i = 0; i < tagAddresses_.size(); i++) { + dataSize += computeStringSizeNoTag(tagAddresses_.getRaw(i)); + } + size += dataSize; + size += 1 * getTagAddressesList().size(); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand)) { + return super.equals(obj); + } + mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand other = (mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand) obj; + + if (getServerHandle() + != other.getServerHandle()) return false; + if (!getTagAddressesList() + .equals(other.getTagAddressesList())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + SERVER_HANDLE_FIELD_NUMBER; + hash = (53 * hash) + getServerHandle(); + if (getTagAddressesCount() > 0) { + hash = (37 * hash) + TAG_ADDRESSES_FIELD_NUMBER; + hash = (53 * hash) + getTagAddressesList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input); + } + + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand 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.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code mxaccess_gateway.v1.SubscribeBulkCommand} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessage.Builder implements + // @@protoc_insertion_point(builder_implements:mxaccess_gateway.v1.SubscribeBulkCommand) + mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommandOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_SubscribeBulkCommand_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_SubscribeBulkCommand_fieldAccessorTable + .ensureFieldAccessorsInitialized( + mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand.class, mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand.Builder.class); + } + + // Construct using mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + serverHandle_ = 0; + tagAddresses_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_SubscribeBulkCommand_descriptor; + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand getDefaultInstanceForType() { + return mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand.getDefaultInstance(); + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand build() { + mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand buildPartial() { + mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand result = new mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.serverHandle_ = serverHandle_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + tagAddresses_.makeImmutable(); + result.tagAddresses_ = tagAddresses_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand) { + return mergeFrom((mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand other) { + if (other == mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand.getDefaultInstance()) return this; + if (other.getServerHandle() != 0) { + setServerHandle(other.getServerHandle()); + } + if (!other.tagAddresses_.isEmpty()) { + if (tagAddresses_.isEmpty()) { + tagAddresses_ = other.tagAddresses_; + bitField0_ |= 0x00000002; + } else { + ensureTagAddressesIsMutable(); + tagAddresses_.addAll(other.tagAddresses_); + } + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: { + serverHandle_ = input.readInt32(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 18: { + java.lang.String s = input.readStringRequireUtf8(); + ensureTagAddressesIsMutable(); + tagAddresses_.add(s); + break; + } // case 18 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private int serverHandle_ ; + /** + * int32 server_handle = 1; + * @return The serverHandle. + */ + @java.lang.Override + public int getServerHandle() { + return serverHandle_; + } + /** + * int32 server_handle = 1; + * @param value The serverHandle to set. + * @return This builder for chaining. + */ + public Builder setServerHandle(int value) { + + serverHandle_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * int32 server_handle = 1; + * @return This builder for chaining. + */ + public Builder clearServerHandle() { + bitField0_ = (bitField0_ & ~0x00000001); + serverHandle_ = 0; + onChanged(); + return this; + } + + private com.google.protobuf.LazyStringArrayList tagAddresses_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + private void ensureTagAddressesIsMutable() { + if (!tagAddresses_.isModifiable()) { + tagAddresses_ = new com.google.protobuf.LazyStringArrayList(tagAddresses_); + } + bitField0_ |= 0x00000002; + } + /** + * repeated string tag_addresses = 2; + * @return A list containing the tagAddresses. + */ + public com.google.protobuf.ProtocolStringList + getTagAddressesList() { + tagAddresses_.makeImmutable(); + return tagAddresses_; + } + /** + * repeated string tag_addresses = 2; + * @return The count of tagAddresses. + */ + public int getTagAddressesCount() { + return tagAddresses_.size(); + } + /** + * repeated string tag_addresses = 2; + * @param index The index of the element to return. + * @return The tagAddresses at the given index. + */ + public java.lang.String getTagAddresses(int index) { + return tagAddresses_.get(index); + } + /** + * repeated string tag_addresses = 2; + * @param index The index of the value to return. + * @return The bytes of the tagAddresses at the given index. + */ + public com.google.protobuf.ByteString + getTagAddressesBytes(int index) { + return tagAddresses_.getByteString(index); + } + /** + * repeated string tag_addresses = 2; + * @param index The index to set the value at. + * @param value The tagAddresses to set. + * @return This builder for chaining. + */ + public Builder setTagAddresses( + int index, java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureTagAddressesIsMutable(); + tagAddresses_.set(index, value); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * repeated string tag_addresses = 2; + * @param value The tagAddresses to add. + * @return This builder for chaining. + */ + public Builder addTagAddresses( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + ensureTagAddressesIsMutable(); + tagAddresses_.add(value); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * repeated string tag_addresses = 2; + * @param values The tagAddresses to add. + * @return This builder for chaining. + */ + public Builder addAllTagAddresses( + java.lang.Iterable values) { + ensureTagAddressesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, tagAddresses_); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * repeated string tag_addresses = 2; + * @return This builder for chaining. + */ + public Builder clearTagAddresses() { + tagAddresses_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002);; + onChanged(); + return this; + } + /** + * repeated string tag_addresses = 2; + * @param value The bytes of the tagAddresses to add. + * @return This builder for chaining. + */ + public Builder addTagAddressesBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + ensureTagAddressesIsMutable(); + tagAddresses_.add(value); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:mxaccess_gateway.v1.SubscribeBulkCommand) + } + + // @@protoc_insertion_point(class_scope:mxaccess_gateway.v1.SubscribeBulkCommand) + private static final mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand(); + } + + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public SubscribeBulkCommand parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.SubscribeBulkCommand getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface UnsubscribeBulkCommandOrBuilder extends + // @@protoc_insertion_point(interface_extends:mxaccess_gateway.v1.UnsubscribeBulkCommand) + com.google.protobuf.MessageOrBuilder { + + /** + * int32 server_handle = 1; + * @return The serverHandle. + */ + int getServerHandle(); + + /** + * repeated int32 item_handles = 2; + * @return A list containing the itemHandles. + */ + java.util.List getItemHandlesList(); + /** + * repeated int32 item_handles = 2; + * @return The count of itemHandles. + */ + int getItemHandlesCount(); + /** + * repeated int32 item_handles = 2; + * @param index The index of the element to return. + * @return The itemHandles at the given index. + */ + int getItemHandles(int index); + } + /** + * Protobuf type {@code mxaccess_gateway.v1.UnsubscribeBulkCommand} + */ + public static final class UnsubscribeBulkCommand extends + com.google.protobuf.GeneratedMessage implements + // @@protoc_insertion_point(message_implements:mxaccess_gateway.v1.UnsubscribeBulkCommand) + UnsubscribeBulkCommandOrBuilder { + private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 1, + /* suffix= */ "", + "UnsubscribeBulkCommand"); + } + // Use UnsubscribeBulkCommand.newBuilder() to construct. + private UnsubscribeBulkCommand(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + private UnsubscribeBulkCommand() { + itemHandles_ = emptyIntList(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_UnsubscribeBulkCommand_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_UnsubscribeBulkCommand_fieldAccessorTable + .ensureFieldAccessorsInitialized( + mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand.class, mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand.Builder.class); + } + + public static final int SERVER_HANDLE_FIELD_NUMBER = 1; + private int serverHandle_ = 0; + /** + * int32 server_handle = 1; + * @return The serverHandle. + */ + @java.lang.Override + public int getServerHandle() { + return serverHandle_; + } + + public static final int ITEM_HANDLES_FIELD_NUMBER = 2; + @SuppressWarnings("serial") + private com.google.protobuf.Internal.IntList itemHandles_ = + emptyIntList(); + /** + * repeated int32 item_handles = 2; + * @return A list containing the itemHandles. + */ + @java.lang.Override + public java.util.List + getItemHandlesList() { + return itemHandles_; + } + /** + * repeated int32 item_handles = 2; + * @return The count of itemHandles. + */ + public int getItemHandlesCount() { + return itemHandles_.size(); + } + /** + * repeated int32 item_handles = 2; + * @param index The index of the element to return. + * @return The itemHandles at the given index. + */ + public int getItemHandles(int index) { + return itemHandles_.getInt(index); + } + private int itemHandlesMemoizedSerializedSize = -1; + + 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 { + getSerializedSize(); + if (serverHandle_ != 0) { + output.writeInt32(1, serverHandle_); + } + if (getItemHandlesList().size() > 0) { + output.writeUInt32NoTag(18); + output.writeUInt32NoTag(itemHandlesMemoizedSerializedSize); + } + for (int i = 0; i < itemHandles_.size(); i++) { + output.writeInt32NoTag(itemHandles_.getInt(i)); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (serverHandle_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeInt32Size(1, serverHandle_); + } + { + int dataSize = 0; + for (int i = 0; i < itemHandles_.size(); i++) { + dataSize += com.google.protobuf.CodedOutputStream + .computeInt32SizeNoTag(itemHandles_.getInt(i)); + } + size += dataSize; + if (!getItemHandlesList().isEmpty()) { + size += 1; + size += com.google.protobuf.CodedOutputStream + .computeInt32SizeNoTag(dataSize); + } + itemHandlesMemoizedSerializedSize = dataSize; + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand)) { + return super.equals(obj); + } + mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand other = (mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand) obj; + + if (getServerHandle() + != other.getServerHandle()) return false; + if (!getItemHandlesList() + .equals(other.getItemHandlesList())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + SERVER_HANDLE_FIELD_NUMBER; + hash = (53 * hash) + getServerHandle(); + if (getItemHandlesCount() > 0) { + hash = (37 * hash) + ITEM_HANDLES_FIELD_NUMBER; + hash = (53 * hash) + getItemHandlesList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input); + } + + public static mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand 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.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code mxaccess_gateway.v1.UnsubscribeBulkCommand} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessage.Builder implements + // @@protoc_insertion_point(builder_implements:mxaccess_gateway.v1.UnsubscribeBulkCommand) + mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommandOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_UnsubscribeBulkCommand_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_UnsubscribeBulkCommand_fieldAccessorTable + .ensureFieldAccessorsInitialized( + mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand.class, mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand.Builder.class); + } + + // Construct using mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + serverHandle_ = 0; + itemHandles_ = emptyIntList(); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_UnsubscribeBulkCommand_descriptor; + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand getDefaultInstanceForType() { + return mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand.getDefaultInstance(); + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand build() { + mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand buildPartial() { + mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand result = new mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.serverHandle_ = serverHandle_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + itemHandles_.makeImmutable(); + result.itemHandles_ = itemHandles_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand) { + return mergeFrom((mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand other) { + if (other == mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand.getDefaultInstance()) return this; + if (other.getServerHandle() != 0) { + setServerHandle(other.getServerHandle()); + } + if (!other.itemHandles_.isEmpty()) { + if (itemHandles_.isEmpty()) { + itemHandles_ = other.itemHandles_; + itemHandles_.makeImmutable(); + bitField0_ |= 0x00000002; + } else { + ensureItemHandlesIsMutable(); + itemHandles_.addAll(other.itemHandles_); + } + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: { + serverHandle_ = input.readInt32(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 16: { + int v = input.readInt32(); + ensureItemHandlesIsMutable(); + itemHandles_.addInt(v); + break; + } // case 16 + case 18: { + int length = input.readRawVarint32(); + int limit = input.pushLimit(length); + ensureItemHandlesIsMutable(); + while (input.getBytesUntilLimit() > 0) { + itemHandles_.addInt(input.readInt32()); + } + input.popLimit(limit); + break; + } // case 18 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private int serverHandle_ ; + /** + * int32 server_handle = 1; + * @return The serverHandle. + */ + @java.lang.Override + public int getServerHandle() { + return serverHandle_; + } + /** + * int32 server_handle = 1; + * @param value The serverHandle to set. + * @return This builder for chaining. + */ + public Builder setServerHandle(int value) { + + serverHandle_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * int32 server_handle = 1; + * @return This builder for chaining. + */ + public Builder clearServerHandle() { + bitField0_ = (bitField0_ & ~0x00000001); + serverHandle_ = 0; + onChanged(); + return this; + } + + private com.google.protobuf.Internal.IntList itemHandles_ = emptyIntList(); + private void ensureItemHandlesIsMutable() { + if (!itemHandles_.isModifiable()) { + itemHandles_ = makeMutableCopy(itemHandles_); + } + bitField0_ |= 0x00000002; + } + /** + * repeated int32 item_handles = 2; + * @return A list containing the itemHandles. + */ + public java.util.List + getItemHandlesList() { + itemHandles_.makeImmutable(); + return itemHandles_; + } + /** + * repeated int32 item_handles = 2; + * @return The count of itemHandles. + */ + public int getItemHandlesCount() { + return itemHandles_.size(); + } + /** + * repeated int32 item_handles = 2; + * @param index The index of the element to return. + * @return The itemHandles at the given index. + */ + public int getItemHandles(int index) { + return itemHandles_.getInt(index); + } + /** + * repeated int32 item_handles = 2; + * @param index The index to set the value at. + * @param value The itemHandles to set. + * @return This builder for chaining. + */ + public Builder setItemHandles( + int index, int value) { + + ensureItemHandlesIsMutable(); + itemHandles_.setInt(index, value); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * repeated int32 item_handles = 2; + * @param value The itemHandles to add. + * @return This builder for chaining. + */ + public Builder addItemHandles(int value) { + + ensureItemHandlesIsMutable(); + itemHandles_.addInt(value); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * repeated int32 item_handles = 2; + * @param values The itemHandles to add. + * @return This builder for chaining. + */ + public Builder addAllItemHandles( + java.lang.Iterable values) { + ensureItemHandlesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, itemHandles_); + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * repeated int32 item_handles = 2; + * @return This builder for chaining. + */ + public Builder clearItemHandles() { + itemHandles_ = emptyIntList(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:mxaccess_gateway.v1.UnsubscribeBulkCommand) + } + + // @@protoc_insertion_point(class_scope:mxaccess_gateway.v1.UnsubscribeBulkCommand) + private static final mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand(); + } + + public static mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public UnsubscribeBulkCommand parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.UnsubscribeBulkCommand getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + public interface PingCommandOrBuilder extends // @@protoc_insertion_point(interface_extends:mxaccess_gateway.v1.PingCommand) com.google.protobuf.MessageOrBuilder { @@ -26845,6 +32037,96 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { */ mxaccess_gateway.v1.MxaccessGateway.ArchestrAUserToIdReplyOrBuilder getArchestraUserToIdOrBuilder(); + /** + * .mxaccess_gateway.v1.BulkSubscribeReply add_item_bulk = 28; + * @return Whether the addItemBulk field is set. + */ + boolean hasAddItemBulk(); + /** + * .mxaccess_gateway.v1.BulkSubscribeReply add_item_bulk = 28; + * @return The addItemBulk. + */ + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply getAddItemBulk(); + /** + * .mxaccess_gateway.v1.BulkSubscribeReply add_item_bulk = 28; + */ + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder getAddItemBulkOrBuilder(); + + /** + * .mxaccess_gateway.v1.BulkSubscribeReply advise_item_bulk = 29; + * @return Whether the adviseItemBulk field is set. + */ + boolean hasAdviseItemBulk(); + /** + * .mxaccess_gateway.v1.BulkSubscribeReply advise_item_bulk = 29; + * @return The adviseItemBulk. + */ + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply getAdviseItemBulk(); + /** + * .mxaccess_gateway.v1.BulkSubscribeReply advise_item_bulk = 29; + */ + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder getAdviseItemBulkOrBuilder(); + + /** + * .mxaccess_gateway.v1.BulkSubscribeReply remove_item_bulk = 30; + * @return Whether the removeItemBulk field is set. + */ + boolean hasRemoveItemBulk(); + /** + * .mxaccess_gateway.v1.BulkSubscribeReply remove_item_bulk = 30; + * @return The removeItemBulk. + */ + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply getRemoveItemBulk(); + /** + * .mxaccess_gateway.v1.BulkSubscribeReply remove_item_bulk = 30; + */ + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder getRemoveItemBulkOrBuilder(); + + /** + * .mxaccess_gateway.v1.BulkSubscribeReply un_advise_item_bulk = 31; + * @return Whether the unAdviseItemBulk field is set. + */ + boolean hasUnAdviseItemBulk(); + /** + * .mxaccess_gateway.v1.BulkSubscribeReply un_advise_item_bulk = 31; + * @return The unAdviseItemBulk. + */ + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply getUnAdviseItemBulk(); + /** + * .mxaccess_gateway.v1.BulkSubscribeReply un_advise_item_bulk = 31; + */ + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder getUnAdviseItemBulkOrBuilder(); + + /** + * .mxaccess_gateway.v1.BulkSubscribeReply subscribe_bulk = 32; + * @return Whether the subscribeBulk field is set. + */ + boolean hasSubscribeBulk(); + /** + * .mxaccess_gateway.v1.BulkSubscribeReply subscribe_bulk = 32; + * @return The subscribeBulk. + */ + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply getSubscribeBulk(); + /** + * .mxaccess_gateway.v1.BulkSubscribeReply subscribe_bulk = 32; + */ + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder getSubscribeBulkOrBuilder(); + + /** + * .mxaccess_gateway.v1.BulkSubscribeReply unsubscribe_bulk = 33; + * @return Whether the unsubscribeBulk field is set. + */ + boolean hasUnsubscribeBulk(); + /** + * .mxaccess_gateway.v1.BulkSubscribeReply unsubscribe_bulk = 33; + * @return The unsubscribeBulk. + */ + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply getUnsubscribeBulk(); + /** + * .mxaccess_gateway.v1.BulkSubscribeReply unsubscribe_bulk = 33; + */ + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder getUnsubscribeBulkOrBuilder(); + /** * .mxaccess_gateway.v1.SessionStateReply session_state = 100; * @return Whether the sessionState field is set. @@ -26949,6 +32231,12 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { ACTIVATE(25), AUTHENTICATE_USER(26), ARCHESTRA_USER_TO_ID(27), + ADD_ITEM_BULK(28), + ADVISE_ITEM_BULK(29), + REMOVE_ITEM_BULK(30), + UN_ADVISE_ITEM_BULK(31), + SUBSCRIBE_BULK(32), + UNSUBSCRIBE_BULK(33), SESSION_STATE(100), WORKER_INFO(101), DRAIN_EVENTS(102), @@ -26977,6 +32265,12 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { case 25: return ACTIVATE; case 26: return AUTHENTICATE_USER; case 27: return ARCHESTRA_USER_TO_ID; + case 28: return ADD_ITEM_BULK; + case 29: return ADVISE_ITEM_BULK; + case 30: return REMOVE_ITEM_BULK; + case 31: return UN_ADVISE_ITEM_BULK; + case 32: return SUBSCRIBE_BULK; + case 33: return UNSUBSCRIBE_BULK; case 100: return SESSION_STATE; case 101: return WORKER_INFO; case 102: return DRAIN_EVENTS; @@ -27502,6 +32796,192 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { return mxaccess_gateway.v1.MxaccessGateway.ArchestrAUserToIdReply.getDefaultInstance(); } + public static final int ADD_ITEM_BULK_FIELD_NUMBER = 28; + /** + * .mxaccess_gateway.v1.BulkSubscribeReply add_item_bulk = 28; + * @return Whether the addItemBulk field is set. + */ + @java.lang.Override + public boolean hasAddItemBulk() { + return payloadCase_ == 28; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply add_item_bulk = 28; + * @return The addItemBulk. + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply getAddItemBulk() { + if (payloadCase_ == 28) { + return (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply add_item_bulk = 28; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder getAddItemBulkOrBuilder() { + if (payloadCase_ == 28) { + return (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + + public static final int ADVISE_ITEM_BULK_FIELD_NUMBER = 29; + /** + * .mxaccess_gateway.v1.BulkSubscribeReply advise_item_bulk = 29; + * @return Whether the adviseItemBulk field is set. + */ + @java.lang.Override + public boolean hasAdviseItemBulk() { + return payloadCase_ == 29; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply advise_item_bulk = 29; + * @return The adviseItemBulk. + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply getAdviseItemBulk() { + if (payloadCase_ == 29) { + return (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply advise_item_bulk = 29; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder getAdviseItemBulkOrBuilder() { + if (payloadCase_ == 29) { + return (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + + public static final int REMOVE_ITEM_BULK_FIELD_NUMBER = 30; + /** + * .mxaccess_gateway.v1.BulkSubscribeReply remove_item_bulk = 30; + * @return Whether the removeItemBulk field is set. + */ + @java.lang.Override + public boolean hasRemoveItemBulk() { + return payloadCase_ == 30; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply remove_item_bulk = 30; + * @return The removeItemBulk. + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply getRemoveItemBulk() { + if (payloadCase_ == 30) { + return (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply remove_item_bulk = 30; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder getRemoveItemBulkOrBuilder() { + if (payloadCase_ == 30) { + return (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + + public static final int UN_ADVISE_ITEM_BULK_FIELD_NUMBER = 31; + /** + * .mxaccess_gateway.v1.BulkSubscribeReply un_advise_item_bulk = 31; + * @return Whether the unAdviseItemBulk field is set. + */ + @java.lang.Override + public boolean hasUnAdviseItemBulk() { + return payloadCase_ == 31; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply un_advise_item_bulk = 31; + * @return The unAdviseItemBulk. + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply getUnAdviseItemBulk() { + if (payloadCase_ == 31) { + return (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply un_advise_item_bulk = 31; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder getUnAdviseItemBulkOrBuilder() { + if (payloadCase_ == 31) { + return (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + + public static final int SUBSCRIBE_BULK_FIELD_NUMBER = 32; + /** + * .mxaccess_gateway.v1.BulkSubscribeReply subscribe_bulk = 32; + * @return Whether the subscribeBulk field is set. + */ + @java.lang.Override + public boolean hasSubscribeBulk() { + return payloadCase_ == 32; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply subscribe_bulk = 32; + * @return The subscribeBulk. + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply getSubscribeBulk() { + if (payloadCase_ == 32) { + return (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply subscribe_bulk = 32; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder getSubscribeBulkOrBuilder() { + if (payloadCase_ == 32) { + return (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + + public static final int UNSUBSCRIBE_BULK_FIELD_NUMBER = 33; + /** + * .mxaccess_gateway.v1.BulkSubscribeReply unsubscribe_bulk = 33; + * @return Whether the unsubscribeBulk field is set. + */ + @java.lang.Override + public boolean hasUnsubscribeBulk() { + return payloadCase_ == 33; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply unsubscribe_bulk = 33; + * @return The unsubscribeBulk. + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply getUnsubscribeBulk() { + if (payloadCase_ == 33) { + return (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply unsubscribe_bulk = 33; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder getUnsubscribeBulkOrBuilder() { + if (payloadCase_ == 33) { + return (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + public static final int SESSION_STATE_FIELD_NUMBER = 100; /** * .mxaccess_gateway.v1.SessionStateReply session_state = 100; @@ -27657,6 +33137,24 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { if (payloadCase_ == 27) { output.writeMessage(27, (mxaccess_gateway.v1.MxaccessGateway.ArchestrAUserToIdReply) payload_); } + if (payloadCase_ == 28) { + output.writeMessage(28, (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_); + } + if (payloadCase_ == 29) { + output.writeMessage(29, (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_); + } + if (payloadCase_ == 30) { + output.writeMessage(30, (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_); + } + if (payloadCase_ == 31) { + output.writeMessage(31, (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_); + } + if (payloadCase_ == 32) { + output.writeMessage(32, (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_); + } + if (payloadCase_ == 33) { + output.writeMessage(33, (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_); + } if (payloadCase_ == 100) { output.writeMessage(100, (mxaccess_gateway.v1.MxaccessGateway.SessionStateReply) payload_); } @@ -27736,6 +33234,30 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { size += com.google.protobuf.CodedOutputStream .computeMessageSize(27, (mxaccess_gateway.v1.MxaccessGateway.ArchestrAUserToIdReply) payload_); } + if (payloadCase_ == 28) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(28, (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_); + } + if (payloadCase_ == 29) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(29, (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_); + } + if (payloadCase_ == 30) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(30, (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_); + } + if (payloadCase_ == 31) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(31, (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_); + } + if (payloadCase_ == 32) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(32, (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_); + } + if (payloadCase_ == 33) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(33, (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_); + } if (payloadCase_ == 100) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(100, (mxaccess_gateway.v1.MxaccessGateway.SessionStateReply) payload_); @@ -27821,6 +33343,30 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { if (!getArchestraUserToId() .equals(other.getArchestraUserToId())) return false; break; + case 28: + if (!getAddItemBulk() + .equals(other.getAddItemBulk())) return false; + break; + case 29: + if (!getAdviseItemBulk() + .equals(other.getAdviseItemBulk())) return false; + break; + case 30: + if (!getRemoveItemBulk() + .equals(other.getRemoveItemBulk())) return false; + break; + case 31: + if (!getUnAdviseItemBulk() + .equals(other.getUnAdviseItemBulk())) return false; + break; + case 32: + if (!getSubscribeBulk() + .equals(other.getSubscribeBulk())) return false; + break; + case 33: + if (!getUnsubscribeBulk() + .equals(other.getUnsubscribeBulk())) return false; + break; case 100: if (!getSessionState() .equals(other.getSessionState())) return false; @@ -27904,6 +33450,30 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { hash = (37 * hash) + ARCHESTRA_USER_TO_ID_FIELD_NUMBER; hash = (53 * hash) + getArchestraUserToId().hashCode(); break; + case 28: + hash = (37 * hash) + ADD_ITEM_BULK_FIELD_NUMBER; + hash = (53 * hash) + getAddItemBulk().hashCode(); + break; + case 29: + hash = (37 * hash) + ADVISE_ITEM_BULK_FIELD_NUMBER; + hash = (53 * hash) + getAdviseItemBulk().hashCode(); + break; + case 30: + hash = (37 * hash) + REMOVE_ITEM_BULK_FIELD_NUMBER; + hash = (53 * hash) + getRemoveItemBulk().hashCode(); + break; + case 31: + hash = (37 * hash) + UN_ADVISE_ITEM_BULK_FIELD_NUMBER; + hash = (53 * hash) + getUnAdviseItemBulk().hashCode(); + break; + case 32: + hash = (37 * hash) + SUBSCRIBE_BULK_FIELD_NUMBER; + hash = (53 * hash) + getSubscribeBulk().hashCode(); + break; + case 33: + hash = (37 * hash) + UNSUBSCRIBE_BULK_FIELD_NUMBER; + hash = (53 * hash) + getUnsubscribeBulk().hashCode(); + break; case 100: hash = (37 * hash) + SESSION_STATE_FIELD_NUMBER; hash = (53 * hash) + getSessionState().hashCode(); @@ -28104,6 +33674,24 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { if (archestraUserToIdBuilder_ != null) { archestraUserToIdBuilder_.clear(); } + if (addItemBulkBuilder_ != null) { + addItemBulkBuilder_.clear(); + } + if (adviseItemBulkBuilder_ != null) { + adviseItemBulkBuilder_.clear(); + } + if (removeItemBulkBuilder_ != null) { + removeItemBulkBuilder_.clear(); + } + if (unAdviseItemBulkBuilder_ != null) { + unAdviseItemBulkBuilder_.clear(); + } + if (subscribeBulkBuilder_ != null) { + subscribeBulkBuilder_.clear(); + } + if (unsubscribeBulkBuilder_ != null) { + unsubscribeBulkBuilder_.clear(); + } if (sessionStateBuilder_ != null) { sessionStateBuilder_.clear(); } @@ -28229,6 +33817,30 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { archestraUserToIdBuilder_ != null) { result.payload_ = archestraUserToIdBuilder_.build(); } + if (payloadCase_ == 28 && + addItemBulkBuilder_ != null) { + result.payload_ = addItemBulkBuilder_.build(); + } + if (payloadCase_ == 29 && + adviseItemBulkBuilder_ != null) { + result.payload_ = adviseItemBulkBuilder_.build(); + } + if (payloadCase_ == 30 && + removeItemBulkBuilder_ != null) { + result.payload_ = removeItemBulkBuilder_.build(); + } + if (payloadCase_ == 31 && + unAdviseItemBulkBuilder_ != null) { + result.payload_ = unAdviseItemBulkBuilder_.build(); + } + if (payloadCase_ == 32 && + subscribeBulkBuilder_ != null) { + result.payload_ = subscribeBulkBuilder_.build(); + } + if (payloadCase_ == 33 && + unsubscribeBulkBuilder_ != null) { + result.payload_ = unsubscribeBulkBuilder_.build(); + } if (payloadCase_ == 100 && sessionStateBuilder_ != null) { result.payload_ = sessionStateBuilder_.build(); @@ -28341,6 +33953,30 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { mergeArchestraUserToId(other.getArchestraUserToId()); break; } + case ADD_ITEM_BULK: { + mergeAddItemBulk(other.getAddItemBulk()); + break; + } + case ADVISE_ITEM_BULK: { + mergeAdviseItemBulk(other.getAdviseItemBulk()); + break; + } + case REMOVE_ITEM_BULK: { + mergeRemoveItemBulk(other.getRemoveItemBulk()); + break; + } + case UN_ADVISE_ITEM_BULK: { + mergeUnAdviseItemBulk(other.getUnAdviseItemBulk()); + break; + } + case SUBSCRIBE_BULK: { + mergeSubscribeBulk(other.getSubscribeBulk()); + break; + } + case UNSUBSCRIBE_BULK: { + mergeUnsubscribeBulk(other.getUnsubscribeBulk()); + break; + } case SESSION_STATE: { mergeSessionState(other.getSessionState()); break; @@ -28491,6 +34127,48 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { payloadCase_ = 27; break; } // case 218 + case 226: { + input.readMessage( + internalGetAddItemBulkFieldBuilder().getBuilder(), + extensionRegistry); + payloadCase_ = 28; + break; + } // case 226 + case 234: { + input.readMessage( + internalGetAdviseItemBulkFieldBuilder().getBuilder(), + extensionRegistry); + payloadCase_ = 29; + break; + } // case 234 + case 242: { + input.readMessage( + internalGetRemoveItemBulkFieldBuilder().getBuilder(), + extensionRegistry); + payloadCase_ = 30; + break; + } // case 242 + case 250: { + input.readMessage( + internalGetUnAdviseItemBulkFieldBuilder().getBuilder(), + extensionRegistry); + payloadCase_ = 31; + break; + } // case 250 + case 258: { + input.readMessage( + internalGetSubscribeBulkFieldBuilder().getBuilder(), + extensionRegistry); + payloadCase_ = 32; + break; + } // case 258 + case 266: { + input.readMessage( + internalGetUnsubscribeBulkFieldBuilder().getBuilder(), + extensionRegistry); + payloadCase_ = 33; + break; + } // case 266 case 802: { input.readMessage( internalGetSessionStateFieldBuilder().getBuilder(), @@ -30493,6 +36171,858 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { return archestraUserToIdBuilder_; } + private com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder> addItemBulkBuilder_; + /** + * .mxaccess_gateway.v1.BulkSubscribeReply add_item_bulk = 28; + * @return Whether the addItemBulk field is set. + */ + @java.lang.Override + public boolean hasAddItemBulk() { + return payloadCase_ == 28; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply add_item_bulk = 28; + * @return The addItemBulk. + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply getAddItemBulk() { + if (addItemBulkBuilder_ == null) { + if (payloadCase_ == 28) { + return (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } else { + if (payloadCase_ == 28) { + return addItemBulkBuilder_.getMessage(); + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply add_item_bulk = 28; + */ + public Builder setAddItemBulk(mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply value) { + if (addItemBulkBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + payload_ = value; + onChanged(); + } else { + addItemBulkBuilder_.setMessage(value); + } + payloadCase_ = 28; + return this; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply add_item_bulk = 28; + */ + public Builder setAddItemBulk( + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder builderForValue) { + if (addItemBulkBuilder_ == null) { + payload_ = builderForValue.build(); + onChanged(); + } else { + addItemBulkBuilder_.setMessage(builderForValue.build()); + } + payloadCase_ = 28; + return this; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply add_item_bulk = 28; + */ + public Builder mergeAddItemBulk(mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply value) { + if (addItemBulkBuilder_ == null) { + if (payloadCase_ == 28 && + payload_ != mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance()) { + payload_ = mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.newBuilder((mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_) + .mergeFrom(value).buildPartial(); + } else { + payload_ = value; + } + onChanged(); + } else { + if (payloadCase_ == 28) { + addItemBulkBuilder_.mergeFrom(value); + } else { + addItemBulkBuilder_.setMessage(value); + } + } + payloadCase_ = 28; + return this; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply add_item_bulk = 28; + */ + public Builder clearAddItemBulk() { + if (addItemBulkBuilder_ == null) { + if (payloadCase_ == 28) { + payloadCase_ = 0; + payload_ = null; + onChanged(); + } + } else { + if (payloadCase_ == 28) { + payloadCase_ = 0; + payload_ = null; + } + addItemBulkBuilder_.clear(); + } + return this; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply add_item_bulk = 28; + */ + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder getAddItemBulkBuilder() { + return internalGetAddItemBulkFieldBuilder().getBuilder(); + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply add_item_bulk = 28; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder getAddItemBulkOrBuilder() { + if ((payloadCase_ == 28) && (addItemBulkBuilder_ != null)) { + return addItemBulkBuilder_.getMessageOrBuilder(); + } else { + if (payloadCase_ == 28) { + return (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply add_item_bulk = 28; + */ + private com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder> + internalGetAddItemBulkFieldBuilder() { + if (addItemBulkBuilder_ == null) { + if (!(payloadCase_ == 28)) { + payload_ = mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + addItemBulkBuilder_ = new com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder>( + (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_, + getParentForChildren(), + isClean()); + payload_ = null; + } + payloadCase_ = 28; + onChanged(); + return addItemBulkBuilder_; + } + + private com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder> adviseItemBulkBuilder_; + /** + * .mxaccess_gateway.v1.BulkSubscribeReply advise_item_bulk = 29; + * @return Whether the adviseItemBulk field is set. + */ + @java.lang.Override + public boolean hasAdviseItemBulk() { + return payloadCase_ == 29; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply advise_item_bulk = 29; + * @return The adviseItemBulk. + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply getAdviseItemBulk() { + if (adviseItemBulkBuilder_ == null) { + if (payloadCase_ == 29) { + return (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } else { + if (payloadCase_ == 29) { + return adviseItemBulkBuilder_.getMessage(); + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply advise_item_bulk = 29; + */ + public Builder setAdviseItemBulk(mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply value) { + if (adviseItemBulkBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + payload_ = value; + onChanged(); + } else { + adviseItemBulkBuilder_.setMessage(value); + } + payloadCase_ = 29; + return this; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply advise_item_bulk = 29; + */ + public Builder setAdviseItemBulk( + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder builderForValue) { + if (adviseItemBulkBuilder_ == null) { + payload_ = builderForValue.build(); + onChanged(); + } else { + adviseItemBulkBuilder_.setMessage(builderForValue.build()); + } + payloadCase_ = 29; + return this; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply advise_item_bulk = 29; + */ + public Builder mergeAdviseItemBulk(mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply value) { + if (adviseItemBulkBuilder_ == null) { + if (payloadCase_ == 29 && + payload_ != mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance()) { + payload_ = mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.newBuilder((mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_) + .mergeFrom(value).buildPartial(); + } else { + payload_ = value; + } + onChanged(); + } else { + if (payloadCase_ == 29) { + adviseItemBulkBuilder_.mergeFrom(value); + } else { + adviseItemBulkBuilder_.setMessage(value); + } + } + payloadCase_ = 29; + return this; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply advise_item_bulk = 29; + */ + public Builder clearAdviseItemBulk() { + if (adviseItemBulkBuilder_ == null) { + if (payloadCase_ == 29) { + payloadCase_ = 0; + payload_ = null; + onChanged(); + } + } else { + if (payloadCase_ == 29) { + payloadCase_ = 0; + payload_ = null; + } + adviseItemBulkBuilder_.clear(); + } + return this; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply advise_item_bulk = 29; + */ + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder getAdviseItemBulkBuilder() { + return internalGetAdviseItemBulkFieldBuilder().getBuilder(); + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply advise_item_bulk = 29; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder getAdviseItemBulkOrBuilder() { + if ((payloadCase_ == 29) && (adviseItemBulkBuilder_ != null)) { + return adviseItemBulkBuilder_.getMessageOrBuilder(); + } else { + if (payloadCase_ == 29) { + return (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply advise_item_bulk = 29; + */ + private com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder> + internalGetAdviseItemBulkFieldBuilder() { + if (adviseItemBulkBuilder_ == null) { + if (!(payloadCase_ == 29)) { + payload_ = mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + adviseItemBulkBuilder_ = new com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder>( + (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_, + getParentForChildren(), + isClean()); + payload_ = null; + } + payloadCase_ = 29; + onChanged(); + return adviseItemBulkBuilder_; + } + + private com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder> removeItemBulkBuilder_; + /** + * .mxaccess_gateway.v1.BulkSubscribeReply remove_item_bulk = 30; + * @return Whether the removeItemBulk field is set. + */ + @java.lang.Override + public boolean hasRemoveItemBulk() { + return payloadCase_ == 30; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply remove_item_bulk = 30; + * @return The removeItemBulk. + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply getRemoveItemBulk() { + if (removeItemBulkBuilder_ == null) { + if (payloadCase_ == 30) { + return (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } else { + if (payloadCase_ == 30) { + return removeItemBulkBuilder_.getMessage(); + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply remove_item_bulk = 30; + */ + public Builder setRemoveItemBulk(mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply value) { + if (removeItemBulkBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + payload_ = value; + onChanged(); + } else { + removeItemBulkBuilder_.setMessage(value); + } + payloadCase_ = 30; + return this; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply remove_item_bulk = 30; + */ + public Builder setRemoveItemBulk( + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder builderForValue) { + if (removeItemBulkBuilder_ == null) { + payload_ = builderForValue.build(); + onChanged(); + } else { + removeItemBulkBuilder_.setMessage(builderForValue.build()); + } + payloadCase_ = 30; + return this; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply remove_item_bulk = 30; + */ + public Builder mergeRemoveItemBulk(mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply value) { + if (removeItemBulkBuilder_ == null) { + if (payloadCase_ == 30 && + payload_ != mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance()) { + payload_ = mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.newBuilder((mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_) + .mergeFrom(value).buildPartial(); + } else { + payload_ = value; + } + onChanged(); + } else { + if (payloadCase_ == 30) { + removeItemBulkBuilder_.mergeFrom(value); + } else { + removeItemBulkBuilder_.setMessage(value); + } + } + payloadCase_ = 30; + return this; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply remove_item_bulk = 30; + */ + public Builder clearRemoveItemBulk() { + if (removeItemBulkBuilder_ == null) { + if (payloadCase_ == 30) { + payloadCase_ = 0; + payload_ = null; + onChanged(); + } + } else { + if (payloadCase_ == 30) { + payloadCase_ = 0; + payload_ = null; + } + removeItemBulkBuilder_.clear(); + } + return this; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply remove_item_bulk = 30; + */ + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder getRemoveItemBulkBuilder() { + return internalGetRemoveItemBulkFieldBuilder().getBuilder(); + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply remove_item_bulk = 30; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder getRemoveItemBulkOrBuilder() { + if ((payloadCase_ == 30) && (removeItemBulkBuilder_ != null)) { + return removeItemBulkBuilder_.getMessageOrBuilder(); + } else { + if (payloadCase_ == 30) { + return (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply remove_item_bulk = 30; + */ + private com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder> + internalGetRemoveItemBulkFieldBuilder() { + if (removeItemBulkBuilder_ == null) { + if (!(payloadCase_ == 30)) { + payload_ = mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + removeItemBulkBuilder_ = new com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder>( + (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_, + getParentForChildren(), + isClean()); + payload_ = null; + } + payloadCase_ = 30; + onChanged(); + return removeItemBulkBuilder_; + } + + private com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder> unAdviseItemBulkBuilder_; + /** + * .mxaccess_gateway.v1.BulkSubscribeReply un_advise_item_bulk = 31; + * @return Whether the unAdviseItemBulk field is set. + */ + @java.lang.Override + public boolean hasUnAdviseItemBulk() { + return payloadCase_ == 31; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply un_advise_item_bulk = 31; + * @return The unAdviseItemBulk. + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply getUnAdviseItemBulk() { + if (unAdviseItemBulkBuilder_ == null) { + if (payloadCase_ == 31) { + return (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } else { + if (payloadCase_ == 31) { + return unAdviseItemBulkBuilder_.getMessage(); + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply un_advise_item_bulk = 31; + */ + public Builder setUnAdviseItemBulk(mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply value) { + if (unAdviseItemBulkBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + payload_ = value; + onChanged(); + } else { + unAdviseItemBulkBuilder_.setMessage(value); + } + payloadCase_ = 31; + return this; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply un_advise_item_bulk = 31; + */ + public Builder setUnAdviseItemBulk( + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder builderForValue) { + if (unAdviseItemBulkBuilder_ == null) { + payload_ = builderForValue.build(); + onChanged(); + } else { + unAdviseItemBulkBuilder_.setMessage(builderForValue.build()); + } + payloadCase_ = 31; + return this; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply un_advise_item_bulk = 31; + */ + public Builder mergeUnAdviseItemBulk(mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply value) { + if (unAdviseItemBulkBuilder_ == null) { + if (payloadCase_ == 31 && + payload_ != mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance()) { + payload_ = mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.newBuilder((mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_) + .mergeFrom(value).buildPartial(); + } else { + payload_ = value; + } + onChanged(); + } else { + if (payloadCase_ == 31) { + unAdviseItemBulkBuilder_.mergeFrom(value); + } else { + unAdviseItemBulkBuilder_.setMessage(value); + } + } + payloadCase_ = 31; + return this; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply un_advise_item_bulk = 31; + */ + public Builder clearUnAdviseItemBulk() { + if (unAdviseItemBulkBuilder_ == null) { + if (payloadCase_ == 31) { + payloadCase_ = 0; + payload_ = null; + onChanged(); + } + } else { + if (payloadCase_ == 31) { + payloadCase_ = 0; + payload_ = null; + } + unAdviseItemBulkBuilder_.clear(); + } + return this; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply un_advise_item_bulk = 31; + */ + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder getUnAdviseItemBulkBuilder() { + return internalGetUnAdviseItemBulkFieldBuilder().getBuilder(); + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply un_advise_item_bulk = 31; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder getUnAdviseItemBulkOrBuilder() { + if ((payloadCase_ == 31) && (unAdviseItemBulkBuilder_ != null)) { + return unAdviseItemBulkBuilder_.getMessageOrBuilder(); + } else { + if (payloadCase_ == 31) { + return (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply un_advise_item_bulk = 31; + */ + private com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder> + internalGetUnAdviseItemBulkFieldBuilder() { + if (unAdviseItemBulkBuilder_ == null) { + if (!(payloadCase_ == 31)) { + payload_ = mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + unAdviseItemBulkBuilder_ = new com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder>( + (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_, + getParentForChildren(), + isClean()); + payload_ = null; + } + payloadCase_ = 31; + onChanged(); + return unAdviseItemBulkBuilder_; + } + + private com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder> subscribeBulkBuilder_; + /** + * .mxaccess_gateway.v1.BulkSubscribeReply subscribe_bulk = 32; + * @return Whether the subscribeBulk field is set. + */ + @java.lang.Override + public boolean hasSubscribeBulk() { + return payloadCase_ == 32; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply subscribe_bulk = 32; + * @return The subscribeBulk. + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply getSubscribeBulk() { + if (subscribeBulkBuilder_ == null) { + if (payloadCase_ == 32) { + return (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } else { + if (payloadCase_ == 32) { + return subscribeBulkBuilder_.getMessage(); + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply subscribe_bulk = 32; + */ + public Builder setSubscribeBulk(mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply value) { + if (subscribeBulkBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + payload_ = value; + onChanged(); + } else { + subscribeBulkBuilder_.setMessage(value); + } + payloadCase_ = 32; + return this; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply subscribe_bulk = 32; + */ + public Builder setSubscribeBulk( + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder builderForValue) { + if (subscribeBulkBuilder_ == null) { + payload_ = builderForValue.build(); + onChanged(); + } else { + subscribeBulkBuilder_.setMessage(builderForValue.build()); + } + payloadCase_ = 32; + return this; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply subscribe_bulk = 32; + */ + public Builder mergeSubscribeBulk(mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply value) { + if (subscribeBulkBuilder_ == null) { + if (payloadCase_ == 32 && + payload_ != mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance()) { + payload_ = mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.newBuilder((mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_) + .mergeFrom(value).buildPartial(); + } else { + payload_ = value; + } + onChanged(); + } else { + if (payloadCase_ == 32) { + subscribeBulkBuilder_.mergeFrom(value); + } else { + subscribeBulkBuilder_.setMessage(value); + } + } + payloadCase_ = 32; + return this; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply subscribe_bulk = 32; + */ + public Builder clearSubscribeBulk() { + if (subscribeBulkBuilder_ == null) { + if (payloadCase_ == 32) { + payloadCase_ = 0; + payload_ = null; + onChanged(); + } + } else { + if (payloadCase_ == 32) { + payloadCase_ = 0; + payload_ = null; + } + subscribeBulkBuilder_.clear(); + } + return this; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply subscribe_bulk = 32; + */ + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder getSubscribeBulkBuilder() { + return internalGetSubscribeBulkFieldBuilder().getBuilder(); + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply subscribe_bulk = 32; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder getSubscribeBulkOrBuilder() { + if ((payloadCase_ == 32) && (subscribeBulkBuilder_ != null)) { + return subscribeBulkBuilder_.getMessageOrBuilder(); + } else { + if (payloadCase_ == 32) { + return (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply subscribe_bulk = 32; + */ + private com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder> + internalGetSubscribeBulkFieldBuilder() { + if (subscribeBulkBuilder_ == null) { + if (!(payloadCase_ == 32)) { + payload_ = mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + subscribeBulkBuilder_ = new com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder>( + (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_, + getParentForChildren(), + isClean()); + payload_ = null; + } + payloadCase_ = 32; + onChanged(); + return subscribeBulkBuilder_; + } + + private com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder> unsubscribeBulkBuilder_; + /** + * .mxaccess_gateway.v1.BulkSubscribeReply unsubscribe_bulk = 33; + * @return Whether the unsubscribeBulk field is set. + */ + @java.lang.Override + public boolean hasUnsubscribeBulk() { + return payloadCase_ == 33; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply unsubscribe_bulk = 33; + * @return The unsubscribeBulk. + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply getUnsubscribeBulk() { + if (unsubscribeBulkBuilder_ == null) { + if (payloadCase_ == 33) { + return (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } else { + if (payloadCase_ == 33) { + return unsubscribeBulkBuilder_.getMessage(); + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply unsubscribe_bulk = 33; + */ + public Builder setUnsubscribeBulk(mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply value) { + if (unsubscribeBulkBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + payload_ = value; + onChanged(); + } else { + unsubscribeBulkBuilder_.setMessage(value); + } + payloadCase_ = 33; + return this; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply unsubscribe_bulk = 33; + */ + public Builder setUnsubscribeBulk( + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder builderForValue) { + if (unsubscribeBulkBuilder_ == null) { + payload_ = builderForValue.build(); + onChanged(); + } else { + unsubscribeBulkBuilder_.setMessage(builderForValue.build()); + } + payloadCase_ = 33; + return this; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply unsubscribe_bulk = 33; + */ + public Builder mergeUnsubscribeBulk(mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply value) { + if (unsubscribeBulkBuilder_ == null) { + if (payloadCase_ == 33 && + payload_ != mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance()) { + payload_ = mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.newBuilder((mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_) + .mergeFrom(value).buildPartial(); + } else { + payload_ = value; + } + onChanged(); + } else { + if (payloadCase_ == 33) { + unsubscribeBulkBuilder_.mergeFrom(value); + } else { + unsubscribeBulkBuilder_.setMessage(value); + } + } + payloadCase_ = 33; + return this; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply unsubscribe_bulk = 33; + */ + public Builder clearUnsubscribeBulk() { + if (unsubscribeBulkBuilder_ == null) { + if (payloadCase_ == 33) { + payloadCase_ = 0; + payload_ = null; + onChanged(); + } + } else { + if (payloadCase_ == 33) { + payloadCase_ = 0; + payload_ = null; + } + unsubscribeBulkBuilder_.clear(); + } + return this; + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply unsubscribe_bulk = 33; + */ + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder getUnsubscribeBulkBuilder() { + return internalGetUnsubscribeBulkFieldBuilder().getBuilder(); + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply unsubscribe_bulk = 33; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder getUnsubscribeBulkOrBuilder() { + if ((payloadCase_ == 33) && (unsubscribeBulkBuilder_ != null)) { + return unsubscribeBulkBuilder_.getMessageOrBuilder(); + } else { + if (payloadCase_ == 33) { + return (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_; + } + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + } + /** + * .mxaccess_gateway.v1.BulkSubscribeReply unsubscribe_bulk = 33; + */ + private com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder> + internalGetUnsubscribeBulkFieldBuilder() { + if (unsubscribeBulkBuilder_ == null) { + if (!(payloadCase_ == 33)) { + payload_ = mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + unsubscribeBulkBuilder_ = new com.google.protobuf.SingleFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder>( + (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) payload_, + getParentForChildren(), + isClean()); + payload_ = null; + } + payloadCase_ = 33; + onChanged(); + return unsubscribeBulkBuilder_; + } + private com.google.protobuf.SingleFieldBuilder< mxaccess_gateway.v1.MxaccessGateway.SessionStateReply, mxaccess_gateway.v1.MxaccessGateway.SessionStateReply.Builder, mxaccess_gateway.v1.MxaccessGateway.SessionStateReplyOrBuilder> sessionStateBuilder_; /** @@ -34714,6 +41244,1621 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { } + public interface SubscribeResultOrBuilder extends + // @@protoc_insertion_point(interface_extends:mxaccess_gateway.v1.SubscribeResult) + com.google.protobuf.MessageOrBuilder { + + /** + * int32 server_handle = 1; + * @return The serverHandle. + */ + int getServerHandle(); + + /** + * string tag_address = 2; + * @return The tagAddress. + */ + java.lang.String getTagAddress(); + /** + * string tag_address = 2; + * @return The bytes for tagAddress. + */ + com.google.protobuf.ByteString + getTagAddressBytes(); + + /** + * int32 item_handle = 3; + * @return The itemHandle. + */ + int getItemHandle(); + + /** + * bool was_successful = 4; + * @return The wasSuccessful. + */ + boolean getWasSuccessful(); + + /** + * string error_message = 5; + * @return The errorMessage. + */ + java.lang.String getErrorMessage(); + /** + * string error_message = 5; + * @return The bytes for errorMessage. + */ + com.google.protobuf.ByteString + getErrorMessageBytes(); + } + /** + * Protobuf type {@code mxaccess_gateway.v1.SubscribeResult} + */ + public static final class SubscribeResult extends + com.google.protobuf.GeneratedMessage implements + // @@protoc_insertion_point(message_implements:mxaccess_gateway.v1.SubscribeResult) + SubscribeResultOrBuilder { + private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 1, + /* suffix= */ "", + "SubscribeResult"); + } + // Use SubscribeResult.newBuilder() to construct. + private SubscribeResult(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + private SubscribeResult() { + tagAddress_ = ""; + errorMessage_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_SubscribeResult_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_SubscribeResult_fieldAccessorTable + .ensureFieldAccessorsInitialized( + mxaccess_gateway.v1.MxaccessGateway.SubscribeResult.class, mxaccess_gateway.v1.MxaccessGateway.SubscribeResult.Builder.class); + } + + public static final int SERVER_HANDLE_FIELD_NUMBER = 1; + private int serverHandle_ = 0; + /** + * int32 server_handle = 1; + * @return The serverHandle. + */ + @java.lang.Override + public int getServerHandle() { + return serverHandle_; + } + + public static final int TAG_ADDRESS_FIELD_NUMBER = 2; + @SuppressWarnings("serial") + private volatile java.lang.Object tagAddress_ = ""; + /** + * string tag_address = 2; + * @return The tagAddress. + */ + @java.lang.Override + public java.lang.String getTagAddress() { + java.lang.Object ref = tagAddress_; + 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(); + tagAddress_ = s; + return s; + } + } + /** + * string tag_address = 2; + * @return The bytes for tagAddress. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getTagAddressBytes() { + java.lang.Object ref = tagAddress_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + tagAddress_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int ITEM_HANDLE_FIELD_NUMBER = 3; + private int itemHandle_ = 0; + /** + * int32 item_handle = 3; + * @return The itemHandle. + */ + @java.lang.Override + public int getItemHandle() { + return itemHandle_; + } + + public static final int WAS_SUCCESSFUL_FIELD_NUMBER = 4; + private boolean wasSuccessful_ = false; + /** + * bool was_successful = 4; + * @return The wasSuccessful. + */ + @java.lang.Override + public boolean getWasSuccessful() { + return wasSuccessful_; + } + + public static final int ERROR_MESSAGE_FIELD_NUMBER = 5; + @SuppressWarnings("serial") + private volatile java.lang.Object errorMessage_ = ""; + /** + * string error_message = 5; + * @return The errorMessage. + */ + @java.lang.Override + public java.lang.String getErrorMessage() { + java.lang.Object ref = errorMessage_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + errorMessage_ = s; + return s; + } + } + /** + * string error_message = 5; + * @return The bytes for errorMessage. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getErrorMessageBytes() { + java.lang.Object ref = errorMessage_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + errorMessage_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + 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 (serverHandle_ != 0) { + output.writeInt32(1, serverHandle_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(tagAddress_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, tagAddress_); + } + if (itemHandle_ != 0) { + output.writeInt32(3, itemHandle_); + } + if (wasSuccessful_ != false) { + output.writeBool(4, wasSuccessful_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(errorMessage_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 5, errorMessage_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (serverHandle_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeInt32Size(1, serverHandle_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(tagAddress_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, tagAddress_); + } + if (itemHandle_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeInt32Size(3, itemHandle_); + } + if (wasSuccessful_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(4, wasSuccessful_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(errorMessage_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(5, errorMessage_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof mxaccess_gateway.v1.MxaccessGateway.SubscribeResult)) { + return super.equals(obj); + } + mxaccess_gateway.v1.MxaccessGateway.SubscribeResult other = (mxaccess_gateway.v1.MxaccessGateway.SubscribeResult) obj; + + if (getServerHandle() + != other.getServerHandle()) return false; + if (!getTagAddress() + .equals(other.getTagAddress())) return false; + if (getItemHandle() + != other.getItemHandle()) return false; + if (getWasSuccessful() + != other.getWasSuccessful()) return false; + if (!getErrorMessage() + .equals(other.getErrorMessage())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + SERVER_HANDLE_FIELD_NUMBER; + hash = (53 * hash) + getServerHandle(); + hash = (37 * hash) + TAG_ADDRESS_FIELD_NUMBER; + hash = (53 * hash) + getTagAddress().hashCode(); + hash = (37 * hash) + ITEM_HANDLE_FIELD_NUMBER; + hash = (53 * hash) + getItemHandle(); + hash = (37 * hash) + WAS_SUCCESSFUL_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getWasSuccessful()); + hash = (37 * hash) + ERROR_MESSAGE_FIELD_NUMBER; + hash = (53 * hash) + getErrorMessage().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeResult parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeResult parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeResult parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeResult parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeResult parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeResult parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeResult parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeResult parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeResult parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input); + } + + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeResult parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeResult parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeResult parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(mxaccess_gateway.v1.MxaccessGateway.SubscribeResult 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.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code mxaccess_gateway.v1.SubscribeResult} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessage.Builder implements + // @@protoc_insertion_point(builder_implements:mxaccess_gateway.v1.SubscribeResult) + mxaccess_gateway.v1.MxaccessGateway.SubscribeResultOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_SubscribeResult_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_SubscribeResult_fieldAccessorTable + .ensureFieldAccessorsInitialized( + mxaccess_gateway.v1.MxaccessGateway.SubscribeResult.class, mxaccess_gateway.v1.MxaccessGateway.SubscribeResult.Builder.class); + } + + // Construct using mxaccess_gateway.v1.MxaccessGateway.SubscribeResult.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + serverHandle_ = 0; + tagAddress_ = ""; + itemHandle_ = 0; + wasSuccessful_ = false; + errorMessage_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_SubscribeResult_descriptor; + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.SubscribeResult getDefaultInstanceForType() { + return mxaccess_gateway.v1.MxaccessGateway.SubscribeResult.getDefaultInstance(); + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.SubscribeResult build() { + mxaccess_gateway.v1.MxaccessGateway.SubscribeResult result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.SubscribeResult buildPartial() { + mxaccess_gateway.v1.MxaccessGateway.SubscribeResult result = new mxaccess_gateway.v1.MxaccessGateway.SubscribeResult(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(mxaccess_gateway.v1.MxaccessGateway.SubscribeResult result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.serverHandle_ = serverHandle_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.tagAddress_ = tagAddress_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.itemHandle_ = itemHandle_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.wasSuccessful_ = wasSuccessful_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.errorMessage_ = errorMessage_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof mxaccess_gateway.v1.MxaccessGateway.SubscribeResult) { + return mergeFrom((mxaccess_gateway.v1.MxaccessGateway.SubscribeResult)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(mxaccess_gateway.v1.MxaccessGateway.SubscribeResult other) { + if (other == mxaccess_gateway.v1.MxaccessGateway.SubscribeResult.getDefaultInstance()) return this; + if (other.getServerHandle() != 0) { + setServerHandle(other.getServerHandle()); + } + if (!other.getTagAddress().isEmpty()) { + tagAddress_ = other.tagAddress_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (other.getItemHandle() != 0) { + setItemHandle(other.getItemHandle()); + } + if (other.getWasSuccessful() != false) { + setWasSuccessful(other.getWasSuccessful()); + } + if (!other.getErrorMessage().isEmpty()) { + errorMessage_ = other.errorMessage_; + bitField0_ |= 0x00000010; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: { + serverHandle_ = input.readInt32(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 18: { + tagAddress_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 24: { + itemHandle_ = input.readInt32(); + bitField0_ |= 0x00000004; + break; + } // case 24 + case 32: { + wasSuccessful_ = input.readBool(); + bitField0_ |= 0x00000008; + break; + } // case 32 + case 42: { + errorMessage_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000010; + break; + } // case 42 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private int serverHandle_ ; + /** + * int32 server_handle = 1; + * @return The serverHandle. + */ + @java.lang.Override + public int getServerHandle() { + return serverHandle_; + } + /** + * int32 server_handle = 1; + * @param value The serverHandle to set. + * @return This builder for chaining. + */ + public Builder setServerHandle(int value) { + + serverHandle_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + * int32 server_handle = 1; + * @return This builder for chaining. + */ + public Builder clearServerHandle() { + bitField0_ = (bitField0_ & ~0x00000001); + serverHandle_ = 0; + onChanged(); + return this; + } + + private java.lang.Object tagAddress_ = ""; + /** + * string tag_address = 2; + * @return The tagAddress. + */ + public java.lang.String getTagAddress() { + java.lang.Object ref = tagAddress_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + tagAddress_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string tag_address = 2; + * @return The bytes for tagAddress. + */ + public com.google.protobuf.ByteString + getTagAddressBytes() { + java.lang.Object ref = tagAddress_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + tagAddress_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string tag_address = 2; + * @param value The tagAddress to set. + * @return This builder for chaining. + */ + public Builder setTagAddress( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + tagAddress_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * string tag_address = 2; + * @return This builder for chaining. + */ + public Builder clearTagAddress() { + tagAddress_ = getDefaultInstance().getTagAddress(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + /** + * string tag_address = 2; + * @param value The bytes for tagAddress to set. + * @return This builder for chaining. + */ + public Builder setTagAddressBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + tagAddress_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private int itemHandle_ ; + /** + * int32 item_handle = 3; + * @return The itemHandle. + */ + @java.lang.Override + public int getItemHandle() { + return itemHandle_; + } + /** + * int32 item_handle = 3; + * @param value The itemHandle to set. + * @return This builder for chaining. + */ + public Builder setItemHandle(int value) { + + itemHandle_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + * int32 item_handle = 3; + * @return This builder for chaining. + */ + public Builder clearItemHandle() { + bitField0_ = (bitField0_ & ~0x00000004); + itemHandle_ = 0; + onChanged(); + return this; + } + + private boolean wasSuccessful_ ; + /** + * bool was_successful = 4; + * @return The wasSuccessful. + */ + @java.lang.Override + public boolean getWasSuccessful() { + return wasSuccessful_; + } + /** + * bool was_successful = 4; + * @param value The wasSuccessful to set. + * @return This builder for chaining. + */ + public Builder setWasSuccessful(boolean value) { + + wasSuccessful_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + * bool was_successful = 4; + * @return This builder for chaining. + */ + public Builder clearWasSuccessful() { + bitField0_ = (bitField0_ & ~0x00000008); + wasSuccessful_ = false; + onChanged(); + return this; + } + + private java.lang.Object errorMessage_ = ""; + /** + * string error_message = 5; + * @return The errorMessage. + */ + public java.lang.String getErrorMessage() { + java.lang.Object ref = errorMessage_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + errorMessage_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string error_message = 5; + * @return The bytes for errorMessage. + */ + public com.google.protobuf.ByteString + getErrorMessageBytes() { + java.lang.Object ref = errorMessage_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + errorMessage_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string error_message = 5; + * @param value The errorMessage to set. + * @return This builder for chaining. + */ + public Builder setErrorMessage( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + errorMessage_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + * string error_message = 5; + * @return This builder for chaining. + */ + public Builder clearErrorMessage() { + errorMessage_ = getDefaultInstance().getErrorMessage(); + bitField0_ = (bitField0_ & ~0x00000010); + onChanged(); + return this; + } + /** + * string error_message = 5; + * @param value The bytes for errorMessage to set. + * @return This builder for chaining. + */ + public Builder setErrorMessageBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + errorMessage_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:mxaccess_gateway.v1.SubscribeResult) + } + + // @@protoc_insertion_point(class_scope:mxaccess_gateway.v1.SubscribeResult) + private static final mxaccess_gateway.v1.MxaccessGateway.SubscribeResult DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new mxaccess_gateway.v1.MxaccessGateway.SubscribeResult(); + } + + public static mxaccess_gateway.v1.MxaccessGateway.SubscribeResult getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public SubscribeResult parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.SubscribeResult getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface BulkSubscribeReplyOrBuilder extends + // @@protoc_insertion_point(interface_extends:mxaccess_gateway.v1.BulkSubscribeReply) + com.google.protobuf.MessageOrBuilder { + + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + java.util.List + getResultsList(); + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + mxaccess_gateway.v1.MxaccessGateway.SubscribeResult getResults(int index); + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + int getResultsCount(); + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + java.util.List + getResultsOrBuilderList(); + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + mxaccess_gateway.v1.MxaccessGateway.SubscribeResultOrBuilder getResultsOrBuilder( + int index); + } + /** + * Protobuf type {@code mxaccess_gateway.v1.BulkSubscribeReply} + */ + public static final class BulkSubscribeReply extends + com.google.protobuf.GeneratedMessage implements + // @@protoc_insertion_point(message_implements:mxaccess_gateway.v1.BulkSubscribeReply) + BulkSubscribeReplyOrBuilder { + private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 1, + /* suffix= */ "", + "BulkSubscribeReply"); + } + // Use BulkSubscribeReply.newBuilder() to construct. + private BulkSubscribeReply(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + private BulkSubscribeReply() { + results_ = java.util.Collections.emptyList(); + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_BulkSubscribeReply_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_BulkSubscribeReply_fieldAccessorTable + .ensureFieldAccessorsInitialized( + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.class, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder.class); + } + + public static final int RESULTS_FIELD_NUMBER = 1; + @SuppressWarnings("serial") + private java.util.List results_; + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + @java.lang.Override + public java.util.List getResultsList() { + return results_; + } + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + @java.lang.Override + public java.util.List + getResultsOrBuilderList() { + return results_; + } + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + @java.lang.Override + public int getResultsCount() { + return results_.size(); + } + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.SubscribeResult getResults(int index) { + return results_.get(index); + } + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.SubscribeResultOrBuilder getResultsOrBuilder( + int index) { + return results_.get(index); + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + for (int i = 0; i < results_.size(); i++) { + output.writeMessage(1, results_.get(i)); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + for (int i = 0; i < results_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, results_.get(i)); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply)) { + return super.equals(obj); + } + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply other = (mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) obj; + + if (!getResultsList() + .equals(other.getResultsList())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (getResultsCount() > 0) { + hash = (37 * hash) + RESULTS_FIELD_NUMBER; + hash = (53 * hash) + getResultsList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input); + } + + public static mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply 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.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code mxaccess_gateway.v1.BulkSubscribeReply} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessage.Builder implements + // @@protoc_insertion_point(builder_implements:mxaccess_gateway.v1.BulkSubscribeReply) + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReplyOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_BulkSubscribeReply_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_BulkSubscribeReply_fieldAccessorTable + .ensureFieldAccessorsInitialized( + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.class, mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.Builder.class); + } + + // Construct using mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + if (resultsBuilder_ == null) { + results_ = java.util.Collections.emptyList(); + } else { + results_ = null; + resultsBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000001); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return mxaccess_gateway.v1.MxaccessGateway.internal_static_mxaccess_gateway_v1_BulkSubscribeReply_descriptor; + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply getDefaultInstanceForType() { + return mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance(); + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply build() { + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply buildPartial() { + mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply result = new mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply result) { + if (resultsBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + results_ = java.util.Collections.unmodifiableList(results_); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.results_ = results_; + } else { + result.results_ = resultsBuilder_.build(); + } + } + + private void buildPartial0(mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply result) { + int from_bitField0_ = bitField0_; + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply) { + return mergeFrom((mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply other) { + if (other == mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply.getDefaultInstance()) return this; + if (resultsBuilder_ == null) { + if (!other.results_.isEmpty()) { + if (results_.isEmpty()) { + results_ = other.results_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureResultsIsMutable(); + results_.addAll(other.results_); + } + onChanged(); + } + } else { + if (!other.results_.isEmpty()) { + if (resultsBuilder_.isEmpty()) { + resultsBuilder_.dispose(); + resultsBuilder_ = null; + results_ = other.results_; + bitField0_ = (bitField0_ & ~0x00000001); + resultsBuilder_ = + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? + internalGetResultsFieldBuilder() : null; + } else { + resultsBuilder_.addAllMessages(other.results_); + } + } + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + mxaccess_gateway.v1.MxaccessGateway.SubscribeResult m = + input.readMessage( + mxaccess_gateway.v1.MxaccessGateway.SubscribeResult.parser(), + extensionRegistry); + if (resultsBuilder_ == null) { + ensureResultsIsMutable(); + results_.add(m); + } else { + resultsBuilder_.addMessage(m); + } + break; + } // case 10 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private java.util.List results_ = + java.util.Collections.emptyList(); + private void ensureResultsIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + results_ = new java.util.ArrayList(results_); + bitField0_ |= 0x00000001; + } + } + + private com.google.protobuf.RepeatedFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.SubscribeResult, mxaccess_gateway.v1.MxaccessGateway.SubscribeResult.Builder, mxaccess_gateway.v1.MxaccessGateway.SubscribeResultOrBuilder> resultsBuilder_; + + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + public java.util.List getResultsList() { + if (resultsBuilder_ == null) { + return java.util.Collections.unmodifiableList(results_); + } else { + return resultsBuilder_.getMessageList(); + } + } + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + public int getResultsCount() { + if (resultsBuilder_ == null) { + return results_.size(); + } else { + return resultsBuilder_.getCount(); + } + } + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + public mxaccess_gateway.v1.MxaccessGateway.SubscribeResult getResults(int index) { + if (resultsBuilder_ == null) { + return results_.get(index); + } else { + return resultsBuilder_.getMessage(index); + } + } + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + public Builder setResults( + int index, mxaccess_gateway.v1.MxaccessGateway.SubscribeResult value) { + if (resultsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureResultsIsMutable(); + results_.set(index, value); + onChanged(); + } else { + resultsBuilder_.setMessage(index, value); + } + return this; + } + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + public Builder setResults( + int index, mxaccess_gateway.v1.MxaccessGateway.SubscribeResult.Builder builderForValue) { + if (resultsBuilder_ == null) { + ensureResultsIsMutable(); + results_.set(index, builderForValue.build()); + onChanged(); + } else { + resultsBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + public Builder addResults(mxaccess_gateway.v1.MxaccessGateway.SubscribeResult value) { + if (resultsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureResultsIsMutable(); + results_.add(value); + onChanged(); + } else { + resultsBuilder_.addMessage(value); + } + return this; + } + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + public Builder addResults( + int index, mxaccess_gateway.v1.MxaccessGateway.SubscribeResult value) { + if (resultsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureResultsIsMutable(); + results_.add(index, value); + onChanged(); + } else { + resultsBuilder_.addMessage(index, value); + } + return this; + } + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + public Builder addResults( + mxaccess_gateway.v1.MxaccessGateway.SubscribeResult.Builder builderForValue) { + if (resultsBuilder_ == null) { + ensureResultsIsMutable(); + results_.add(builderForValue.build()); + onChanged(); + } else { + resultsBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + public Builder addResults( + int index, mxaccess_gateway.v1.MxaccessGateway.SubscribeResult.Builder builderForValue) { + if (resultsBuilder_ == null) { + ensureResultsIsMutable(); + results_.add(index, builderForValue.build()); + onChanged(); + } else { + resultsBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + public Builder addAllResults( + java.lang.Iterable values) { + if (resultsBuilder_ == null) { + ensureResultsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, results_); + onChanged(); + } else { + resultsBuilder_.addAllMessages(values); + } + return this; + } + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + public Builder clearResults() { + if (resultsBuilder_ == null) { + results_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + resultsBuilder_.clear(); + } + return this; + } + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + public Builder removeResults(int index) { + if (resultsBuilder_ == null) { + ensureResultsIsMutable(); + results_.remove(index); + onChanged(); + } else { + resultsBuilder_.remove(index); + } + return this; + } + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + public mxaccess_gateway.v1.MxaccessGateway.SubscribeResult.Builder getResultsBuilder( + int index) { + return internalGetResultsFieldBuilder().getBuilder(index); + } + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + public mxaccess_gateway.v1.MxaccessGateway.SubscribeResultOrBuilder getResultsOrBuilder( + int index) { + if (resultsBuilder_ == null) { + return results_.get(index); } else { + return resultsBuilder_.getMessageOrBuilder(index); + } + } + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + public java.util.List + getResultsOrBuilderList() { + if (resultsBuilder_ != null) { + return resultsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(results_); + } + } + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + public mxaccess_gateway.v1.MxaccessGateway.SubscribeResult.Builder addResultsBuilder() { + return internalGetResultsFieldBuilder().addBuilder( + mxaccess_gateway.v1.MxaccessGateway.SubscribeResult.getDefaultInstance()); + } + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + public mxaccess_gateway.v1.MxaccessGateway.SubscribeResult.Builder addResultsBuilder( + int index) { + return internalGetResultsFieldBuilder().addBuilder( + index, mxaccess_gateway.v1.MxaccessGateway.SubscribeResult.getDefaultInstance()); + } + /** + * repeated .mxaccess_gateway.v1.SubscribeResult results = 1; + */ + public java.util.List + getResultsBuilderList() { + return internalGetResultsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.SubscribeResult, mxaccess_gateway.v1.MxaccessGateway.SubscribeResult.Builder, mxaccess_gateway.v1.MxaccessGateway.SubscribeResultOrBuilder> + internalGetResultsFieldBuilder() { + if (resultsBuilder_ == null) { + resultsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< + mxaccess_gateway.v1.MxaccessGateway.SubscribeResult, mxaccess_gateway.v1.MxaccessGateway.SubscribeResult.Builder, mxaccess_gateway.v1.MxaccessGateway.SubscribeResultOrBuilder>( + results_, + ((bitField0_ & 0x00000001) != 0), + getParentForChildren(), + isClean()); + results_ = null; + } + return resultsBuilder_; + } + + // @@protoc_insertion_point(builder_scope:mxaccess_gateway.v1.BulkSubscribeReply) + } + + // @@protoc_insertion_point(class_scope:mxaccess_gateway.v1.BulkSubscribeReply) + private static final mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply(); + } + + public static mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public BulkSubscribeReply parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public mxaccess_gateway.v1.MxaccessGateway.BulkSubscribeReply getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + public interface SessionStateReplyOrBuilder extends // @@protoc_insertion_point(interface_extends:mxaccess_gateway.v1.SessionStateReply) com.google.protobuf.MessageOrBuilder { @@ -53608,6 +61753,36 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { private static final com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_mxaccess_gateway_v1_ArchestrAUserToIdCommand_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_mxaccess_gateway_v1_AddItemBulkCommand_descriptor; + private static final + com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_mxaccess_gateway_v1_AddItemBulkCommand_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_mxaccess_gateway_v1_AdviseItemBulkCommand_descriptor; + private static final + com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_mxaccess_gateway_v1_AdviseItemBulkCommand_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_mxaccess_gateway_v1_RemoveItemBulkCommand_descriptor; + private static final + com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_mxaccess_gateway_v1_RemoveItemBulkCommand_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_mxaccess_gateway_v1_UnAdviseItemBulkCommand_descriptor; + private static final + com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_mxaccess_gateway_v1_UnAdviseItemBulkCommand_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_mxaccess_gateway_v1_SubscribeBulkCommand_descriptor; + private static final + com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_mxaccess_gateway_v1_SubscribeBulkCommand_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_mxaccess_gateway_v1_UnsubscribeBulkCommand_descriptor; + private static final + com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_mxaccess_gateway_v1_UnsubscribeBulkCommand_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_mxaccess_gateway_v1_PingCommand_descriptor; private static final @@ -53678,6 +61853,16 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { private static final com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_mxaccess_gateway_v1_ArchestrAUserToIdReply_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_mxaccess_gateway_v1_SubscribeResult_descriptor; + private static final + com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_mxaccess_gateway_v1_SubscribeResult_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_mxaccess_gateway_v1_BulkSubscribeReply_descriptor; + private static final + com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_mxaccess_gateway_v1_BulkSubscribeReply_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_mxaccess_gateway_v1_SessionStateReply_descriptor; private static final @@ -53812,7 +61997,7 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { "\004\"v\n\020MxCommandRequest\022\022\n\nsession_id\030\001 \001(" + "\t\022\035\n\025client_correlation_id\030\002 \001(\t\022/\n\007comm" + "and\030\003 \001(\0132\036.mxaccess_gateway.v1.MxComman" + - "d\"\242\014\n\tMxCommand\0220\n\004kind\030\001 \001(\0162\".mxaccess" + + "d\"\317\017\n\tMxCommand\0220\n\004kind\030\001 \001(\0162\".mxaccess" + "_gateway.v1.MxCommandKind\0228\n\010register\030\n " + "\001(\0132$.mxaccess_gateway.v1.RegisterComman" + "dH\000\022<\n\nunregister\030\013 \001(\0132&.mxaccess_gatew" + @@ -53842,263 +62027,305 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { "I\n\021authenticate_user\030\032 \001(\0132,.mxaccess_ga" + "teway.v1.AuthenticateUserCommandH\000\022M\n\024ar" + "chestra_user_to_id\030\033 \001(\0132-.mxaccess_gate" + - "way.v1.ArchestrAUserToIdCommandH\000\0220\n\004pin" + - "g\030d \001(\0132 .mxaccess_gateway.v1.PingComman" + - "dH\000\022H\n\021get_session_state\030e \001(\0132+.mxacces" + - "s_gateway.v1.GetSessionStateCommandH\000\022D\n" + - "\017get_worker_info\030f \001(\0132).mxaccess_gatewa" + - "y.v1.GetWorkerInfoCommandH\000\022?\n\014drain_eve" + - "nts\030g \001(\0132\'.mxaccess_gateway.v1.DrainEve" + - "ntsCommandH\000\022E\n\017shutdown_worker\030h \001(\0132*." + - "mxaccess_gateway.v1.ShutdownWorkerComman" + - "dH\000B\t\n\007payload\"&\n\017RegisterCommand\022\023\n\013cli" + - "ent_name\030\001 \001(\t\"*\n\021UnregisterCommand\022\025\n\rs" + - "erver_handle\030\001 \001(\005\"@\n\016AddItemCommand\022\025\n\r" + - "server_handle\030\001 \001(\005\022\027\n\017item_definition\030\002" + - " \001(\t\"W\n\017AddItem2Command\022\025\n\rserver_handle" + - "\030\001 \001(\005\022\027\n\017item_definition\030\002 \001(\t\022\024\n\014item_" + - "context\030\003 \001(\t\"?\n\021RemoveItemCommand\022\025\n\rse" + - "rver_handle\030\001 \001(\005\022\023\n\013item_handle\030\002 \001(\005\";" + - "\n\rAdviseCommand\022\025\n\rserver_handle\030\001 \001(\005\022\023" + - "\n\013item_handle\030\002 \001(\005\"=\n\017UnAdviseCommand\022\025" + - "\n\rserver_handle\030\001 \001(\005\022\023\n\013item_handle\030\002 \001" + - "(\005\"F\n\030AdviseSupervisoryCommand\022\025\n\rserver" + - "_handle\030\001 \001(\005\022\023\n\013item_handle\030\002 \001(\005\"^\n\026Ad" + - "dBufferedItemCommand\022\025\n\rserver_handle\030\001 " + - "\001(\005\022\027\n\017item_definition\030\002 \001(\t\022\024\n\014item_con" + - "text\030\003 \001(\t\"_\n SetBufferedUpdateIntervalC" + - "ommand\022\025\n\rserver_handle\030\001 \001(\005\022$\n\034update_" + - "interval_milliseconds\030\002 \001(\005\"<\n\016SuspendCo" + - "mmand\022\025\n\rserver_handle\030\001 \001(\005\022\023\n\013item_han" + - "dle\030\002 \001(\005\"=\n\017ActivateCommand\022\025\n\rserver_h" + - "andle\030\001 \001(\005\022\023\n\013item_handle\030\002 \001(\005\"x\n\014Writ" + - "eCommand\022\025\n\rserver_handle\030\001 \001(\005\022\023\n\013item_" + - "handle\030\002 \001(\005\022+\n\005value\030\003 \001(\0132\034.mxaccess_g" + - "ateway.v1.MxValue\022\017\n\007user_id\030\004 \001(\005\"\260\001\n\rW" + - "rite2Command\022\025\n\rserver_handle\030\001 \001(\005\022\023\n\013i" + - "tem_handle\030\002 \001(\005\022+\n\005value\030\003 \001(\0132\034.mxacce" + - "ss_gateway.v1.MxValue\0225\n\017timestamp_value" + - "\030\004 \001(\0132\034.mxaccess_gateway.v1.MxValue\022\017\n\007" + - "user_id\030\005 \001(\005\"\241\001\n\023WriteSecuredCommand\022\025\n" + + "way.v1.ArchestrAUserToIdCommandH\000\022@\n\radd" + + "_item_bulk\030\034 \001(\0132\'.mxaccess_gateway.v1.A" + + "ddItemBulkCommandH\000\022F\n\020advise_item_bulk\030" + + "\035 \001(\0132*.mxaccess_gateway.v1.AdviseItemBu" + + "lkCommandH\000\022F\n\020remove_item_bulk\030\036 \001(\0132*." + + "mxaccess_gateway.v1.RemoveItemBulkComman" + + "dH\000\022K\n\023un_advise_item_bulk\030\037 \001(\0132,.mxacc" + + "ess_gateway.v1.UnAdviseItemBulkCommandH\000" + + "\022C\n\016subscribe_bulk\030 \001(\0132).mxaccess_gate" + + "way.v1.SubscribeBulkCommandH\000\022G\n\020unsubsc" + + "ribe_bulk\030! \001(\0132+.mxaccess_gateway.v1.Un" + + "subscribeBulkCommandH\000\0220\n\004ping\030d \001(\0132 .m" + + "xaccess_gateway.v1.PingCommandH\000\022H\n\021get_" + + "session_state\030e \001(\0132+.mxaccess_gateway.v" + + "1.GetSessionStateCommandH\000\022D\n\017get_worker" + + "_info\030f \001(\0132).mxaccess_gateway.v1.GetWor" + + "kerInfoCommandH\000\022?\n\014drain_events\030g \001(\0132\'" + + ".mxaccess_gateway.v1.DrainEventsCommandH" + + "\000\022E\n\017shutdown_worker\030h \001(\0132*.mxaccess_ga" + + "teway.v1.ShutdownWorkerCommandH\000B\t\n\007payl" + + "oad\"&\n\017RegisterCommand\022\023\n\013client_name\030\001 " + + "\001(\t\"*\n\021UnregisterCommand\022\025\n\rserver_handl" + + "e\030\001 \001(\005\"@\n\016AddItemCommand\022\025\n\rserver_hand" + + "le\030\001 \001(\005\022\027\n\017item_definition\030\002 \001(\t\"W\n\017Add" + + "Item2Command\022\025\n\rserver_handle\030\001 \001(\005\022\027\n\017i" + + "tem_definition\030\002 \001(\t\022\024\n\014item_context\030\003 \001" + + "(\t\"?\n\021RemoveItemCommand\022\025\n\rserver_handle" + + "\030\001 \001(\005\022\023\n\013item_handle\030\002 \001(\005\";\n\rAdviseCom" + + "mand\022\025\n\rserver_handle\030\001 \001(\005\022\023\n\013item_hand" + + "le\030\002 \001(\005\"=\n\017UnAdviseCommand\022\025\n\rserver_ha" + + "ndle\030\001 \001(\005\022\023\n\013item_handle\030\002 \001(\005\"F\n\030Advis" + + "eSupervisoryCommand\022\025\n\rserver_handle\030\001 \001" + + "(\005\022\023\n\013item_handle\030\002 \001(\005\"^\n\026AddBufferedIt" + + "emCommand\022\025\n\rserver_handle\030\001 \001(\005\022\027\n\017item" + + "_definition\030\002 \001(\t\022\024\n\014item_context\030\003 \001(\t\"" + + "_\n SetBufferedUpdateIntervalCommand\022\025\n\rs" + + "erver_handle\030\001 \001(\005\022$\n\034update_interval_mi" + + "lliseconds\030\002 \001(\005\"<\n\016SuspendCommand\022\025\n\rse" + + "rver_handle\030\001 \001(\005\022\023\n\013item_handle\030\002 \001(\005\"=" + + "\n\017ActivateCommand\022\025\n\rserver_handle\030\001 \001(\005" + + "\022\023\n\013item_handle\030\002 \001(\005\"x\n\014WriteCommand\022\025\n" + "\rserver_handle\030\001 \001(\005\022\023\n\013item_handle\030\002 \001(" + - "\005\022\027\n\017current_user_id\030\003 \001(\005\022\030\n\020verifier_u" + - "ser_id\030\004 \001(\005\022+\n\005value\030\005 \001(\0132\034.mxaccess_g" + - "ateway.v1.MxValue\"\331\001\n\024WriteSecured2Comma" + - "nd\022\025\n\rserver_handle\030\001 \001(\005\022\023\n\013item_handle" + - "\030\002 \001(\005\022\027\n\017current_user_id\030\003 \001(\005\022\030\n\020verif" + - "ier_user_id\030\004 \001(\005\022+\n\005value\030\005 \001(\0132\034.mxacc" + - "ess_gateway.v1.MxValue\0225\n\017timestamp_valu" + - "e\030\006 \001(\0132\034.mxaccess_gateway.v1.MxValue\"c\n" + - "\027AuthenticateUserCommand\022\025\n\rserver_handl" + - "e\030\001 \001(\005\022\023\n\013verify_user\030\002 \001(\t\022\034\n\024verify_u" + - "ser_password\030\003 \001(\t\"G\n\030ArchestrAUserToIdC" + - "ommand\022\025\n\rserver_handle\030\001 \001(\005\022\024\n\014user_id" + - "_guid\030\002 \001(\t\"\036\n\013PingCommand\022\017\n\007message\030\001 " + - "\001(\t\"\030\n\026GetSessionStateCommand\"\026\n\024GetWork" + - "erInfoCommand\"(\n\022DrainEventsCommand\022\022\n\nm" + - "ax_events\030\001 \001(\r\"H\n\025ShutdownWorkerCommand" + - "\022/\n\014grace_period\030\001 \001(\0132\031.google.protobuf" + - ".Duration\"\220\010\n\016MxCommandReply\022\022\n\nsession_" + - "id\030\001 \001(\t\022\026\n\016correlation_id\030\002 \001(\t\0220\n\004kind" + - "\030\003 \001(\0162\".mxaccess_gateway.v1.MxCommandKi" + - "nd\022<\n\017protocol_status\030\004 \001(\0132#.mxaccess_g" + - "ateway.v1.ProtocolStatus\022\024\n\007hresult\030\005 \001(" + - "\005H\001\210\001\001\0222\n\014return_value\030\006 \001(\0132\034.mxaccess_" + - "gateway.v1.MxValue\0224\n\010statuses\030\007 \003(\0132\".m" + - "xaccess_gateway.v1.MxStatusProxy\022\032\n\022diag" + - "nostic_message\030\010 \001(\t\0226\n\010register\030\024 \001(\0132\"" + - ".mxaccess_gateway.v1.RegisterReplyH\000\0225\n\010" + - "add_item\030\025 \001(\0132!.mxaccess_gateway.v1.Add" + - "ItemReplyH\000\0227\n\tadd_item2\030\026 \001(\0132\".mxacces" + - "s_gateway.v1.AddItem2ReplyH\000\022F\n\021add_buff" + - "ered_item\030\027 \001(\0132).mxaccess_gateway.v1.Ad" + - "dBufferedItemReplyH\000\0224\n\007suspend\030\030 \001(\0132!." + - "mxaccess_gateway.v1.SuspendReplyH\000\0226\n\010ac" + - "tivate\030\031 \001(\0132\".mxaccess_gateway.v1.Activ" + - "ateReplyH\000\022G\n\021authenticate_user\030\032 \001(\0132*." + - "mxaccess_gateway.v1.AuthenticateUserRepl" + - "yH\000\022K\n\024archestra_user_to_id\030\033 \001(\0132+.mxac" + - "cess_gateway.v1.ArchestrAUserToIdReplyH\000" + - "\022?\n\rsession_state\030d \001(\0132&.mxaccess_gatew" + - "ay.v1.SessionStateReplyH\000\022;\n\013worker_info" + - "\030e \001(\0132$.mxaccess_gateway.v1.WorkerInfoR" + - "eplyH\000\022=\n\014drain_events\030f \001(\0132%.mxaccess_" + - "gateway.v1.DrainEventsReplyH\000B\t\n\007payload" + - "B\n\n\010_hresult\"&\n\rRegisterReply\022\025\n\rserver_" + - "handle\030\001 \001(\005\"#\n\014AddItemReply\022\023\n\013item_han" + - "dle\030\001 \001(\005\"$\n\rAddItem2Reply\022\023\n\013item_handl" + - "e\030\001 \001(\005\"+\n\024AddBufferedItemReply\022\023\n\013item_" + - "handle\030\001 \001(\005\"B\n\014SuspendReply\0222\n\006status\030\001" + - " \001(\0132\".mxaccess_gateway.v1.MxStatusProxy" + - "\"C\n\rActivateReply\0222\n\006status\030\001 \001(\0132\".mxac" + - "cess_gateway.v1.MxStatusProxy\"(\n\025Authent" + - "icateUserReply\022\017\n\007user_id\030\001 \001(\005\")\n\026Arche" + - "strAUserToIdReply\022\017\n\007user_id\030\001 \001(\005\"E\n\021Se" + - "ssionStateReply\0220\n\005state\030\001 \001(\0162!.mxacces" + - "s_gateway.v1.SessionState\"u\n\017WorkerInfoR" + - "eply\022\031\n\021worker_process_id\030\001 \001(\005\022\026\n\016worke" + - "r_version\030\002 \001(\t\022\027\n\017mxaccess_progid\030\003 \001(\t" + - "\022\026\n\016mxaccess_clsid\030\004 \001(\t\"@\n\020DrainEventsR" + - "eply\022,\n\006events\030\001 \003(\0132\034.mxaccess_gateway." + - "v1.MxEvent\"\233\006\n\007MxEvent\0222\n\006family\030\001 \001(\0162\"" + - ".mxaccess_gateway.v1.MxEventFamily\022\022\n\nse" + - "ssion_id\030\002 \001(\t\022\025\n\rserver_handle\030\003 \001(\005\022\023\n" + - "\013item_handle\030\004 \001(\005\022+\n\005value\030\005 \001(\0132\034.mxac" + - "cess_gateway.v1.MxValue\022\017\n\007quality\030\006 \001(\005" + - "\0224\n\020source_timestamp\030\007 \001(\0132\032.google.prot" + - "obuf.Timestamp\0224\n\010statuses\030\010 \003(\0132\".mxacc" + - "ess_gateway.v1.MxStatusProxy\022\027\n\017worker_s" + - "equence\030\t \001(\004\0224\n\020worker_timestamp\030\n \001(\0132" + - "\032.google.protobuf.Timestamp\022=\n\031gateway_r" + - "eceive_timestamp\030\013 \001(\0132\032.google.protobuf" + - ".Timestamp\022\024\n\007hresult\030\014 \001(\005H\001\210\001\001\022\022\n\nraw_" + - "status\030\r \001(\t\022@\n\016on_data_change\030\024 \001(\0132&.m" + - "xaccess_gateway.v1.OnDataChangeEventH\000\022F" + - "\n\021on_write_complete\030\025 \001(\0132).mxaccess_gat" + - "eway.v1.OnWriteCompleteEventH\000\022I\n\022operat" + - "ion_complete\030\026 \001(\0132+.mxaccess_gateway.v1" + - ".OperationCompleteEventH\000\022Q\n\027on_buffered" + - "_data_change\030\027 \001(\0132..mxaccess_gateway.v1" + - ".OnBufferedDataChangeEventH\000B\006\n\004bodyB\n\n\010" + - "_hresult\"\023\n\021OnDataChangeEvent\"\026\n\024OnWrite" + - "CompleteEvent\"\030\n\026OperationCompleteEvent\"" + - "\324\001\n\031OnBufferedDataChangeEvent\0222\n\tdata_ty" + - "pe\030\001 \001(\0162\037.mxaccess_gateway.v1.MxDataTyp" + - "e\0224\n\016quality_values\030\002 \001(\0132\034.mxaccess_gat" + - "eway.v1.MxArray\0226\n\020timestamp_values\030\003 \001(" + - "\0132\034.mxaccess_gateway.v1.MxArray\022\025\n\rraw_d" + - "ata_type\030\004 \001(\005\"\353\001\n\rMxStatusProxy\022\017\n\007succ" + - "ess\030\001 \001(\005\0227\n\010category\030\002 \001(\0162%.mxaccess_g" + - "ateway.v1.MxStatusCategory\0228\n\013detected_b" + - "y\030\003 \001(\0162#.mxaccess_gateway.v1.MxStatusSo" + - "urce\022\016\n\006detail\030\004 \001(\005\022\024\n\014raw_category\030\005 \001" + - "(\005\022\027\n\017raw_detected_by\030\006 \001(\005\022\027\n\017diagnosti" + - "c_text\030\007 \001(\t\"\247\003\n\007MxValue\0222\n\tdata_type\030\001 " + - "\001(\0162\037.mxaccess_gateway.v1.MxDataType\022\024\n\014" + - "variant_type\030\002 \001(\t\022\017\n\007is_null\030\003 \001(\010\022\026\n\016r" + - "aw_diagnostic\030\004 \001(\t\022\025\n\rraw_data_type\030\005 \001" + - "(\005\022\024\n\nbool_value\030\n \001(\010H\000\022\025\n\013int32_value\030" + - "\013 \001(\005H\000\022\025\n\013int64_value\030\014 \001(\003H\000\022\025\n\013float_" + - "value\030\r \001(\002H\000\022\026\n\014double_value\030\016 \001(\001H\000\022\026\n" + - "\014string_value\030\017 \001(\tH\000\0225\n\017timestamp_value" + - "\030\020 \001(\0132\032.google.protobuf.TimestampH\000\0223\n\013" + - "array_value\030\021 \001(\0132\034.mxaccess_gateway.v1." + - "MxArrayH\000\022\023\n\traw_value\030\022 \001(\014H\000B\006\n\004kind\"\376" + - "\004\n\007MxArray\022:\n\021element_data_type\030\001 \001(\0162\037." + - "mxaccess_gateway.v1.MxDataType\022\024\n\014varian" + - "t_type\030\002 \001(\t\022\022\n\ndimensions\030\003 \003(\r\022\026\n\016raw_" + - "diagnostic\030\004 \001(\t\022\035\n\025raw_element_data_typ" + - "e\030\005 \001(\005\0225\n\013bool_values\030\n \001(\0132\036.mxaccess_" + - "gateway.v1.BoolArrayH\000\0227\n\014int32_values\030\013" + - " \001(\0132\037.mxaccess_gateway.v1.Int32ArrayH\000\022" + - "7\n\014int64_values\030\014 \001(\0132\037.mxaccess_gateway" + - ".v1.Int64ArrayH\000\0227\n\014float_values\030\r \001(\0132\037" + - ".mxaccess_gateway.v1.FloatArrayH\000\0229\n\rdou" + - "ble_values\030\016 \001(\0132 .mxaccess_gateway.v1.D" + - "oubleArrayH\000\0229\n\rstring_values\030\017 \001(\0132 .mx" + - "access_gateway.v1.StringArrayH\000\022?\n\020times" + - "tamp_values\030\020 \001(\0132#.mxaccess_gateway.v1." + - "TimestampArrayH\000\0223\n\nraw_values\030\021 \001(\0132\035.m" + - "xaccess_gateway.v1.RawArrayH\000B\010\n\006values\"" + - "\033\n\tBoolArray\022\016\n\006values\030\001 \003(\010\"\034\n\nInt32Arr" + - "ay\022\016\n\006values\030\001 \003(\005\"\034\n\nInt64Array\022\016\n\006valu" + - "es\030\001 \003(\003\"\034\n\nFloatArray\022\016\n\006values\030\001 \003(\002\"\035" + - "\n\013DoubleArray\022\016\n\006values\030\001 \003(\001\"\035\n\013StringA" + - "rray\022\016\n\006values\030\001 \003(\t\"<\n\016TimestampArray\022*" + - "\n\006values\030\001 \003(\0132\032.google.protobuf.Timesta" + - "mp\"\032\n\010RawArray\022\016\n\006values\030\001 \003(\014\"X\n\016Protoc" + - "olStatus\0225\n\004code\030\001 \001(\0162\'.mxaccess_gatewa" + - "y.v1.ProtocolStatusCode\022\017\n\007message\030\002 \001(\t" + - "*\277\006\n\rMxCommandKind\022\037\n\033MX_COMMAND_KIND_UN" + - "SPECIFIED\020\000\022\034\n\030MX_COMMAND_KIND_REGISTER\020" + - "\001\022\036\n\032MX_COMMAND_KIND_UNREGISTER\020\002\022\034\n\030MX_" + - "COMMAND_KIND_ADD_ITEM\020\003\022\035\n\031MX_COMMAND_KI" + - "ND_ADD_ITEM2\020\004\022\037\n\033MX_COMMAND_KIND_REMOVE" + - "_ITEM\020\005\022\032\n\026MX_COMMAND_KIND_ADVISE\020\006\022\035\n\031M" + - "X_COMMAND_KIND_UN_ADVISE\020\007\022&\n\"MX_COMMAND" + - "_KIND_ADVISE_SUPERVISORY\020\010\022%\n!MX_COMMAND" + - "_KIND_ADD_BUFFERED_ITEM\020\t\0220\n,MX_COMMAND_" + - "KIND_SET_BUFFERED_UPDATE_INTERVAL\020\n\022\033\n\027M" + - "X_COMMAND_KIND_SUSPEND\020\013\022\034\n\030MX_COMMAND_K" + - "IND_ACTIVATE\020\014\022\031\n\025MX_COMMAND_KIND_WRITE\020" + - "\r\022\032\n\026MX_COMMAND_KIND_WRITE2\020\016\022!\n\035MX_COMM" + - "AND_KIND_WRITE_SECURED\020\017\022\"\n\036MX_COMMAND_K" + - "IND_WRITE_SECURED2\020\020\022%\n!MX_COMMAND_KIND_" + - "AUTHENTICATE_USER\020\021\022(\n$MX_COMMAND_KIND_A" + - "RCHESTRA_USER_TO_ID\020\022\022\030\n\024MX_COMMAND_KIND" + - "_PING\020d\022%\n!MX_COMMAND_KIND_GET_SESSION_S" + - "TATE\020e\022#\n\037MX_COMMAND_KIND_GET_WORKER_INF" + - "O\020f\022 \n\034MX_COMMAND_KIND_DRAIN_EVENTS\020g\022#\n" + - "\037MX_COMMAND_KIND_SHUTDOWN_WORKER\020h*\320\001\n\rM" + - "xEventFamily\022\037\n\033MX_EVENT_FAMILY_UNSPECIF" + - "IED\020\000\022\"\n\036MX_EVENT_FAMILY_ON_DATA_CHANGE\020" + - "\001\022%\n!MX_EVENT_FAMILY_ON_WRITE_COMPLETE\020\002" + - "\022&\n\"MX_EVENT_FAMILY_OPERATION_COMPLETE\020\003" + - "\022+\n\'MX_EVENT_FAMILY_ON_BUFFERED_DATA_CHA" + - "NGE\020\004*\245\003\n\020MxStatusCategory\022\"\n\036MX_STATUS_" + - "CATEGORY_UNSPECIFIED\020\000\022\036\n\032MX_STATUS_CATE" + - "GORY_UNKNOWN\020\001\022\031\n\025MX_STATUS_CATEGORY_OK\020" + - "\002\022\036\n\032MX_STATUS_CATEGORY_PENDING\020\003\022\036\n\032MX_" + - "STATUS_CATEGORY_WARNING\020\004\022*\n&MX_STATUS_C" + - "ATEGORY_COMMUNICATION_ERROR\020\005\022*\n&MX_STAT" + - "US_CATEGORY_CONFIGURATION_ERROR\020\006\022(\n$MX_" + - "STATUS_CATEGORY_OPERATIONAL_ERROR\020\007\022%\n!M" + - "X_STATUS_CATEGORY_SECURITY_ERROR\020\010\022%\n!MX" + - "_STATUS_CATEGORY_SOFTWARE_ERROR\020\t\022\"\n\036MX_" + - "STATUS_CATEGORY_OTHER_ERROR\020\n*\312\002\n\016MxStat" + - "usSource\022 \n\034MX_STATUS_SOURCE_UNSPECIFIED" + - "\020\000\022\034\n\030MX_STATUS_SOURCE_UNKNOWN\020\001\022#\n\037MX_S" + - "TATUS_SOURCE_REQUESTING_LMX\020\002\022#\n\037MX_STAT" + - "US_SOURCE_RESPONDING_LMX\020\003\022#\n\037MX_STATUS_" + - "SOURCE_REQUESTING_NMX\020\004\022#\n\037MX_STATUS_SOU" + - "RCE_RESPONDING_NMX\020\005\0221\n-MX_STATUS_SOURCE" + - "_REQUESTING_AUTOMATION_OBJECT\020\006\0221\n-MX_ST" + - "ATUS_SOURCE_RESPONDING_AUTOMATION_OBJECT" + - "\020\007*\335\004\n\nMxDataType\022\034\n\030MX_DATA_TYPE_UNSPEC" + - "IFIED\020\000\022\030\n\024MX_DATA_TYPE_UNKNOWN\020\001\022\030\n\024MX_" + - "DATA_TYPE_NO_DATA\020\002\022\030\n\024MX_DATA_TYPE_BOOL" + - "EAN\020\003\022\030\n\024MX_DATA_TYPE_INTEGER\020\004\022\026\n\022MX_DA" + - "TA_TYPE_FLOAT\020\005\022\027\n\023MX_DATA_TYPE_DOUBLE\020\006" + - "\022\027\n\023MX_DATA_TYPE_STRING\020\007\022\025\n\021MX_DATA_TYP" + - "E_TIME\020\010\022\035\n\031MX_DATA_TYPE_ELAPSED_TIME\020\t\022" + - "\037\n\033MX_DATA_TYPE_REFERENCE_TYPE\020\n\022\034\n\030MX_D" + - "ATA_TYPE_STATUS_TYPE\020\013\022\025\n\021MX_DATA_TYPE_E" + - "NUM\020\014\022-\n)MX_DATA_TYPE_SECURITY_CLASSIFIC" + - "ATION_ENUM\020\r\022\"\n\036MX_DATA_TYPE_DATA_QUALIT" + - "Y_TYPE\020\016\022\037\n\033MX_DATA_TYPE_QUALIFIED_ENUM\020" + - "\017\022!\n\035MX_DATA_TYPE_QUALIFIED_STRUCT\020\020\022)\n%" + - "MX_DATA_TYPE_INTERNATIONALIZED_STRING\020\021\022" + - "\033\n\027MX_DATA_TYPE_BIG_STRING\020\022\022\024\n\020MX_DATA_" + - "TYPE_END\020\023*\243\003\n\022ProtocolStatusCode\022$\n PRO" + - "TOCOL_STATUS_CODE_UNSPECIFIED\020\000\022\033\n\027PROTO" + - "COL_STATUS_CODE_OK\020\001\022(\n$PROTOCOL_STATUS_" + - "CODE_INVALID_REQUEST\020\002\022*\n&PROTOCOL_STATU" + - "S_CODE_SESSION_NOT_FOUND\020\003\022*\n&PROTOCOL_S" + - "TATUS_CODE_SESSION_NOT_READY\020\004\022+\n\'PROTOC" + - "OL_STATUS_CODE_WORKER_UNAVAILABLE\020\005\022 \n\034P" + - "ROTOCOL_STATUS_CODE_TIMEOUT\020\006\022!\n\035PROTOCO" + - "L_STATUS_CODE_CANCELED\020\007\022+\n\'PROTOCOL_STA" + - "TUS_CODE_PROTOCOL_VIOLATION\020\010\022)\n%PROTOCO" + - "L_STATUS_CODE_MXACCESS_FAILURE\020\t*\277\002\n\014Ses" + - "sionState\022\035\n\031SESSION_STATE_UNSPECIFIED\020\000" + - "\022\032\n\026SESSION_STATE_CREATING\020\001\022!\n\035SESSION_" + - "STATE_STARTING_WORKER\020\002\022\"\n\036SESSION_STATE" + - "_WAITING_FOR_PIPE\020\003\022\035\n\031SESSION_STATE_HAN" + - "DSHAKING\020\004\022%\n!SESSION_STATE_INITIALIZING" + - "_WORKER\020\005\022\027\n\023SESSION_STATE_READY\020\006\022\031\n\025SE" + - "SSION_STATE_CLOSING\020\007\022\030\n\024SESSION_STATE_C" + - "LOSED\020\010\022\031\n\025SESSION_STATE_FAULTED\020\t2\202\003\n\017M" + - "xAccessGateway\022]\n\013OpenSession\022\'.mxaccess" + - "_gateway.v1.OpenSessionRequest\032%.mxacces" + - "s_gateway.v1.OpenSessionReply\022`\n\014CloseSe" + - "ssion\022(.mxaccess_gateway.v1.CloseSession" + - "Request\032&.mxaccess_gateway.v1.CloseSessi" + - "onReply\022T\n\006Invoke\022%.mxaccess_gateway.v1." + - "MxCommandRequest\032#.mxaccess_gateway.v1.M" + - "xCommandReply\022X\n\014StreamEvents\022(.mxaccess" + - "_gateway.v1.StreamEventsRequest\032\034.mxacce" + - "ss_gateway.v1.MxEvent0\001B\034\252\002\031MxGateway.Co" + - "ntracts.Protob\006proto3" + "\005\022+\n\005value\030\003 \001(\0132\034.mxaccess_gateway.v1.M" + + "xValue\022\017\n\007user_id\030\004 \001(\005\"\260\001\n\rWrite2Comman" + + "d\022\025\n\rserver_handle\030\001 \001(\005\022\023\n\013item_handle\030" + + "\002 \001(\005\022+\n\005value\030\003 \001(\0132\034.mxaccess_gateway." + + "v1.MxValue\0225\n\017timestamp_value\030\004 \001(\0132\034.mx" + + "access_gateway.v1.MxValue\022\017\n\007user_id\030\005 \001" + + "(\005\"\241\001\n\023WriteSecuredCommand\022\025\n\rserver_han" + + "dle\030\001 \001(\005\022\023\n\013item_handle\030\002 \001(\005\022\027\n\017curren" + + "t_user_id\030\003 \001(\005\022\030\n\020verifier_user_id\030\004 \001(" + + "\005\022+\n\005value\030\005 \001(\0132\034.mxaccess_gateway.v1.M" + + "xValue\"\331\001\n\024WriteSecured2Command\022\025\n\rserve" + + "r_handle\030\001 \001(\005\022\023\n\013item_handle\030\002 \001(\005\022\027\n\017c" + + "urrent_user_id\030\003 \001(\005\022\030\n\020verifier_user_id" + + "\030\004 \001(\005\022+\n\005value\030\005 \001(\0132\034.mxaccess_gateway" + + ".v1.MxValue\0225\n\017timestamp_value\030\006 \001(\0132\034.m" + + "xaccess_gateway.v1.MxValue\"c\n\027Authentica" + + "teUserCommand\022\025\n\rserver_handle\030\001 \001(\005\022\023\n\013" + + "verify_user\030\002 \001(\t\022\034\n\024verify_user_passwor" + + "d\030\003 \001(\t\"G\n\030ArchestrAUserToIdCommand\022\025\n\rs" + + "erver_handle\030\001 \001(\005\022\024\n\014user_id_guid\030\002 \001(\t" + + "\"B\n\022AddItemBulkCommand\022\025\n\rserver_handle\030" + + "\001 \001(\005\022\025\n\rtag_addresses\030\002 \003(\t\"D\n\025AdviseIt" + + "emBulkCommand\022\025\n\rserver_handle\030\001 \001(\005\022\024\n\014" + + "item_handles\030\002 \003(\005\"D\n\025RemoveItemBulkComm" + + "and\022\025\n\rserver_handle\030\001 \001(\005\022\024\n\014item_handl" + + "es\030\002 \003(\005\"F\n\027UnAdviseItemBulkCommand\022\025\n\rs" + + "erver_handle\030\001 \001(\005\022\024\n\014item_handles\030\002 \003(\005" + + "\"D\n\024SubscribeBulkCommand\022\025\n\rserver_handl" + + "e\030\001 \001(\005\022\025\n\rtag_addresses\030\002 \003(\t\"E\n\026Unsubs" + + "cribeBulkCommand\022\025\n\rserver_handle\030\001 \001(\005\022" + + "\024\n\014item_handles\030\002 \003(\005\"\036\n\013PingCommand\022\017\n\007" + + "message\030\001 \001(\t\"\030\n\026GetSessionStateCommand\"" + + "\026\n\024GetWorkerInfoCommand\"(\n\022DrainEventsCo" + + "mmand\022\022\n\nmax_events\030\001 \001(\r\"H\n\025ShutdownWor" + + "kerCommand\022/\n\014grace_period\030\001 \001(\0132\031.googl" + + "e.protobuf.Duration\"\254\013\n\016MxCommandReply\022\022" + + "\n\nsession_id\030\001 \001(\t\022\026\n\016correlation_id\030\002 \001" + + "(\t\0220\n\004kind\030\003 \001(\0162\".mxaccess_gateway.v1.M" + + "xCommandKind\022<\n\017protocol_status\030\004 \001(\0132#." + + "mxaccess_gateway.v1.ProtocolStatus\022\024\n\007hr" + + "esult\030\005 \001(\005H\001\210\001\001\0222\n\014return_value\030\006 \001(\0132\034" + + ".mxaccess_gateway.v1.MxValue\0224\n\010statuses" + + "\030\007 \003(\0132\".mxaccess_gateway.v1.MxStatusPro" + + "xy\022\032\n\022diagnostic_message\030\010 \001(\t\0226\n\010regist" + + "er\030\024 \001(\0132\".mxaccess_gateway.v1.RegisterR" + + "eplyH\000\0225\n\010add_item\030\025 \001(\0132!.mxaccess_gate" + + "way.v1.AddItemReplyH\000\0227\n\tadd_item2\030\026 \001(\013" + + "2\".mxaccess_gateway.v1.AddItem2ReplyH\000\022F" + + "\n\021add_buffered_item\030\027 \001(\0132).mxaccess_gat" + + "eway.v1.AddBufferedItemReplyH\000\0224\n\007suspen" + + "d\030\030 \001(\0132!.mxaccess_gateway.v1.SuspendRep" + + "lyH\000\0226\n\010activate\030\031 \001(\0132\".mxaccess_gatewa" + + "y.v1.ActivateReplyH\000\022G\n\021authenticate_use" + + "r\030\032 \001(\0132*.mxaccess_gateway.v1.Authentica" + + "teUserReplyH\000\022K\n\024archestra_user_to_id\030\033 " + + "\001(\0132+.mxaccess_gateway.v1.ArchestrAUserT" + + "oIdReplyH\000\022@\n\radd_item_bulk\030\034 \001(\0132\'.mxac" + + "cess_gateway.v1.BulkSubscribeReplyH\000\022C\n\020" + + "advise_item_bulk\030\035 \001(\0132\'.mxaccess_gatewa" + + "y.v1.BulkSubscribeReplyH\000\022C\n\020remove_item" + + "_bulk\030\036 \001(\0132\'.mxaccess_gateway.v1.BulkSu" + + "bscribeReplyH\000\022F\n\023un_advise_item_bulk\030\037 " + + "\001(\0132\'.mxaccess_gateway.v1.BulkSubscribeR" + + "eplyH\000\022A\n\016subscribe_bulk\030 \001(\0132\'.mxacces" + + "s_gateway.v1.BulkSubscribeReplyH\000\022C\n\020uns" + + "ubscribe_bulk\030! \001(\0132\'.mxaccess_gateway.v" + + "1.BulkSubscribeReplyH\000\022?\n\rsession_state\030" + + "d \001(\0132&.mxaccess_gateway.v1.SessionState" + + "ReplyH\000\022;\n\013worker_info\030e \001(\0132$.mxaccess_" + + "gateway.v1.WorkerInfoReplyH\000\022=\n\014drain_ev" + + "ents\030f \001(\0132%.mxaccess_gateway.v1.DrainEv" + + "entsReplyH\000B\t\n\007payloadB\n\n\010_hresult\"&\n\rRe" + + "gisterReply\022\025\n\rserver_handle\030\001 \001(\005\"#\n\014Ad" + + "dItemReply\022\023\n\013item_handle\030\001 \001(\005\"$\n\rAddIt" + + "em2Reply\022\023\n\013item_handle\030\001 \001(\005\"+\n\024AddBuff" + + "eredItemReply\022\023\n\013item_handle\030\001 \001(\005\"B\n\014Su" + + "spendReply\0222\n\006status\030\001 \001(\0132\".mxaccess_ga" + + "teway.v1.MxStatusProxy\"C\n\rActivateReply\022" + + "2\n\006status\030\001 \001(\0132\".mxaccess_gateway.v1.Mx" + + "StatusProxy\"(\n\025AuthenticateUserReply\022\017\n\007" + + "user_id\030\001 \001(\005\")\n\026ArchestrAUserToIdReply\022" + + "\017\n\007user_id\030\001 \001(\005\"\201\001\n\017SubscribeResult\022\025\n\r" + + "server_handle\030\001 \001(\005\022\023\n\013tag_address\030\002 \001(\t" + + "\022\023\n\013item_handle\030\003 \001(\005\022\026\n\016was_successful\030" + + "\004 \001(\010\022\025\n\rerror_message\030\005 \001(\t\"K\n\022BulkSubs" + + "cribeReply\0225\n\007results\030\001 \003(\0132$.mxaccess_g" + + "ateway.v1.SubscribeResult\"E\n\021SessionStat" + + "eReply\0220\n\005state\030\001 \001(\0162!.mxaccess_gateway" + + ".v1.SessionState\"u\n\017WorkerInfoReply\022\031\n\021w" + + "orker_process_id\030\001 \001(\005\022\026\n\016worker_version" + + "\030\002 \001(\t\022\027\n\017mxaccess_progid\030\003 \001(\t\022\026\n\016mxacc" + + "ess_clsid\030\004 \001(\t\"@\n\020DrainEventsReply\022,\n\006e" + + "vents\030\001 \003(\0132\034.mxaccess_gateway.v1.MxEven" + + "t\"\233\006\n\007MxEvent\0222\n\006family\030\001 \001(\0162\".mxaccess" + + "_gateway.v1.MxEventFamily\022\022\n\nsession_id\030" + + "\002 \001(\t\022\025\n\rserver_handle\030\003 \001(\005\022\023\n\013item_han" + + "dle\030\004 \001(\005\022+\n\005value\030\005 \001(\0132\034.mxaccess_gate" + + "way.v1.MxValue\022\017\n\007quality\030\006 \001(\005\0224\n\020sourc" + + "e_timestamp\030\007 \001(\0132\032.google.protobuf.Time" + + "stamp\0224\n\010statuses\030\010 \003(\0132\".mxaccess_gatew" + + "ay.v1.MxStatusProxy\022\027\n\017worker_sequence\030\t" + + " \001(\004\0224\n\020worker_timestamp\030\n \001(\0132\032.google." + + "protobuf.Timestamp\022=\n\031gateway_receive_ti" + + "mestamp\030\013 \001(\0132\032.google.protobuf.Timestam" + + "p\022\024\n\007hresult\030\014 \001(\005H\001\210\001\001\022\022\n\nraw_status\030\r " + + "\001(\t\022@\n\016on_data_change\030\024 \001(\0132&.mxaccess_g" + + "ateway.v1.OnDataChangeEventH\000\022F\n\021on_writ" + + "e_complete\030\025 \001(\0132).mxaccess_gateway.v1.O" + + "nWriteCompleteEventH\000\022I\n\022operation_compl" + + "ete\030\026 \001(\0132+.mxaccess_gateway.v1.Operatio" + + "nCompleteEventH\000\022Q\n\027on_buffered_data_cha" + + "nge\030\027 \001(\0132..mxaccess_gateway.v1.OnBuffer" + + "edDataChangeEventH\000B\006\n\004bodyB\n\n\010_hresult\"" + + "\023\n\021OnDataChangeEvent\"\026\n\024OnWriteCompleteE" + + "vent\"\030\n\026OperationCompleteEvent\"\324\001\n\031OnBuf" + + "feredDataChangeEvent\0222\n\tdata_type\030\001 \001(\0162" + + "\037.mxaccess_gateway.v1.MxDataType\0224\n\016qual" + + "ity_values\030\002 \001(\0132\034.mxaccess_gateway.v1.M" + + "xArray\0226\n\020timestamp_values\030\003 \001(\0132\034.mxacc" + + "ess_gateway.v1.MxArray\022\025\n\rraw_data_type\030" + + "\004 \001(\005\"\353\001\n\rMxStatusProxy\022\017\n\007success\030\001 \001(\005" + + "\0227\n\010category\030\002 \001(\0162%.mxaccess_gateway.v1" + + ".MxStatusCategory\0228\n\013detected_by\030\003 \001(\0162#" + + ".mxaccess_gateway.v1.MxStatusSource\022\016\n\006d" + + "etail\030\004 \001(\005\022\024\n\014raw_category\030\005 \001(\005\022\027\n\017raw" + + "_detected_by\030\006 \001(\005\022\027\n\017diagnostic_text\030\007 " + + "\001(\t\"\247\003\n\007MxValue\0222\n\tdata_type\030\001 \001(\0162\037.mxa" + + "ccess_gateway.v1.MxDataType\022\024\n\014variant_t" + + "ype\030\002 \001(\t\022\017\n\007is_null\030\003 \001(\010\022\026\n\016raw_diagno" + + "stic\030\004 \001(\t\022\025\n\rraw_data_type\030\005 \001(\005\022\024\n\nboo" + + "l_value\030\n \001(\010H\000\022\025\n\013int32_value\030\013 \001(\005H\000\022\025" + + "\n\013int64_value\030\014 \001(\003H\000\022\025\n\013float_value\030\r \001" + + "(\002H\000\022\026\n\014double_value\030\016 \001(\001H\000\022\026\n\014string_v" + + "alue\030\017 \001(\tH\000\0225\n\017timestamp_value\030\020 \001(\0132\032." + + "google.protobuf.TimestampH\000\0223\n\013array_val" + + "ue\030\021 \001(\0132\034.mxaccess_gateway.v1.MxArrayH\000" + + "\022\023\n\traw_value\030\022 \001(\014H\000B\006\n\004kind\"\376\004\n\007MxArra" + + "y\022:\n\021element_data_type\030\001 \001(\0162\037.mxaccess_" + + "gateway.v1.MxDataType\022\024\n\014variant_type\030\002 " + + "\001(\t\022\022\n\ndimensions\030\003 \003(\r\022\026\n\016raw_diagnosti" + + "c\030\004 \001(\t\022\035\n\025raw_element_data_type\030\005 \001(\005\0225" + + "\n\013bool_values\030\n \001(\0132\036.mxaccess_gateway.v" + + "1.BoolArrayH\000\0227\n\014int32_values\030\013 \001(\0132\037.mx" + + "access_gateway.v1.Int32ArrayH\000\0227\n\014int64_" + + "values\030\014 \001(\0132\037.mxaccess_gateway.v1.Int64" + + "ArrayH\000\0227\n\014float_values\030\r \001(\0132\037.mxaccess" + + "_gateway.v1.FloatArrayH\000\0229\n\rdouble_value" + + "s\030\016 \001(\0132 .mxaccess_gateway.v1.DoubleArra" + + "yH\000\0229\n\rstring_values\030\017 \001(\0132 .mxaccess_ga" + + "teway.v1.StringArrayH\000\022?\n\020timestamp_valu" + + "es\030\020 \001(\0132#.mxaccess_gateway.v1.Timestamp" + + "ArrayH\000\0223\n\nraw_values\030\021 \001(\0132\035.mxaccess_g" + + "ateway.v1.RawArrayH\000B\010\n\006values\"\033\n\tBoolAr" + + "ray\022\016\n\006values\030\001 \003(\010\"\034\n\nInt32Array\022\016\n\006val" + + "ues\030\001 \003(\005\"\034\n\nInt64Array\022\016\n\006values\030\001 \003(\003\"" + + "\034\n\nFloatArray\022\016\n\006values\030\001 \003(\002\"\035\n\013DoubleA" + + "rray\022\016\n\006values\030\001 \003(\001\"\035\n\013StringArray\022\016\n\006v" + + "alues\030\001 \003(\t\"<\n\016TimestampArray\022*\n\006values\030" + + "\001 \003(\0132\032.google.protobuf.Timestamp\"\032\n\010Raw" + + "Array\022\016\n\006values\030\001 \003(\014\"X\n\016ProtocolStatus\022" + + "5\n\004code\030\001 \001(\0162\'.mxaccess_gateway.v1.Prot" + + "ocolStatusCode\022\017\n\007message\030\002 \001(\t*\241\010\n\rMxCo" + + "mmandKind\022\037\n\033MX_COMMAND_KIND_UNSPECIFIED" + + "\020\000\022\034\n\030MX_COMMAND_KIND_REGISTER\020\001\022\036\n\032MX_C" + + "OMMAND_KIND_UNREGISTER\020\002\022\034\n\030MX_COMMAND_K" + + "IND_ADD_ITEM\020\003\022\035\n\031MX_COMMAND_KIND_ADD_IT" + + "EM2\020\004\022\037\n\033MX_COMMAND_KIND_REMOVE_ITEM\020\005\022\032" + + "\n\026MX_COMMAND_KIND_ADVISE\020\006\022\035\n\031MX_COMMAND" + + "_KIND_UN_ADVISE\020\007\022&\n\"MX_COMMAND_KIND_ADV" + + "ISE_SUPERVISORY\020\010\022%\n!MX_COMMAND_KIND_ADD" + + "_BUFFERED_ITEM\020\t\0220\n,MX_COMMAND_KIND_SET_" + + "BUFFERED_UPDATE_INTERVAL\020\n\022\033\n\027MX_COMMAND" + + "_KIND_SUSPEND\020\013\022\034\n\030MX_COMMAND_KIND_ACTIV" + + "ATE\020\014\022\031\n\025MX_COMMAND_KIND_WRITE\020\r\022\032\n\026MX_C" + + "OMMAND_KIND_WRITE2\020\016\022!\n\035MX_COMMAND_KIND_" + + "WRITE_SECURED\020\017\022\"\n\036MX_COMMAND_KIND_WRITE" + + "_SECURED2\020\020\022%\n!MX_COMMAND_KIND_AUTHENTIC" + + "ATE_USER\020\021\022(\n$MX_COMMAND_KIND_ARCHESTRA_" + + "USER_TO_ID\020\022\022!\n\035MX_COMMAND_KIND_ADD_ITEM" + + "_BULK\020\023\022$\n MX_COMMAND_KIND_ADVISE_ITEM_B" + + "ULK\020\024\022$\n MX_COMMAND_KIND_REMOVE_ITEM_BUL" + + "K\020\025\022\'\n#MX_COMMAND_KIND_UN_ADVISE_ITEM_BU" + + "LK\020\026\022\"\n\036MX_COMMAND_KIND_SUBSCRIBE_BULK\020\027" + + "\022$\n MX_COMMAND_KIND_UNSUBSCRIBE_BULK\020\030\022\030" + + "\n\024MX_COMMAND_KIND_PING\020d\022%\n!MX_COMMAND_K" + + "IND_GET_SESSION_STATE\020e\022#\n\037MX_COMMAND_KI" + + "ND_GET_WORKER_INFO\020f\022 \n\034MX_COMMAND_KIND_" + + "DRAIN_EVENTS\020g\022#\n\037MX_COMMAND_KIND_SHUTDO" + + "WN_WORKER\020h*\320\001\n\rMxEventFamily\022\037\n\033MX_EVEN" + + "T_FAMILY_UNSPECIFIED\020\000\022\"\n\036MX_EVENT_FAMIL" + + "Y_ON_DATA_CHANGE\020\001\022%\n!MX_EVENT_FAMILY_ON" + + "_WRITE_COMPLETE\020\002\022&\n\"MX_EVENT_FAMILY_OPE" + + "RATION_COMPLETE\020\003\022+\n\'MX_EVENT_FAMILY_ON_" + + "BUFFERED_DATA_CHANGE\020\004*\245\003\n\020MxStatusCateg" + + "ory\022\"\n\036MX_STATUS_CATEGORY_UNSPECIFIED\020\000\022" + + "\036\n\032MX_STATUS_CATEGORY_UNKNOWN\020\001\022\031\n\025MX_ST" + + "ATUS_CATEGORY_OK\020\002\022\036\n\032MX_STATUS_CATEGORY" + + "_PENDING\020\003\022\036\n\032MX_STATUS_CATEGORY_WARNING" + + "\020\004\022*\n&MX_STATUS_CATEGORY_COMMUNICATION_E" + + "RROR\020\005\022*\n&MX_STATUS_CATEGORY_CONFIGURATI" + + "ON_ERROR\020\006\022(\n$MX_STATUS_CATEGORY_OPERATI" + + "ONAL_ERROR\020\007\022%\n!MX_STATUS_CATEGORY_SECUR" + + "ITY_ERROR\020\010\022%\n!MX_STATUS_CATEGORY_SOFTWA" + + "RE_ERROR\020\t\022\"\n\036MX_STATUS_CATEGORY_OTHER_E" + + "RROR\020\n*\312\002\n\016MxStatusSource\022 \n\034MX_STATUS_S" + + "OURCE_UNSPECIFIED\020\000\022\034\n\030MX_STATUS_SOURCE_" + + "UNKNOWN\020\001\022#\n\037MX_STATUS_SOURCE_REQUESTING" + + "_LMX\020\002\022#\n\037MX_STATUS_SOURCE_RESPONDING_LM" + + "X\020\003\022#\n\037MX_STATUS_SOURCE_REQUESTING_NMX\020\004" + + "\022#\n\037MX_STATUS_SOURCE_RESPONDING_NMX\020\005\0221\n" + + "-MX_STATUS_SOURCE_REQUESTING_AUTOMATION_" + + "OBJECT\020\006\0221\n-MX_STATUS_SOURCE_RESPONDING_" + + "AUTOMATION_OBJECT\020\007*\335\004\n\nMxDataType\022\034\n\030MX" + + "_DATA_TYPE_UNSPECIFIED\020\000\022\030\n\024MX_DATA_TYPE" + + "_UNKNOWN\020\001\022\030\n\024MX_DATA_TYPE_NO_DATA\020\002\022\030\n\024" + + "MX_DATA_TYPE_BOOLEAN\020\003\022\030\n\024MX_DATA_TYPE_I" + + "NTEGER\020\004\022\026\n\022MX_DATA_TYPE_FLOAT\020\005\022\027\n\023MX_D" + + "ATA_TYPE_DOUBLE\020\006\022\027\n\023MX_DATA_TYPE_STRING" + + "\020\007\022\025\n\021MX_DATA_TYPE_TIME\020\010\022\035\n\031MX_DATA_TYP" + + "E_ELAPSED_TIME\020\t\022\037\n\033MX_DATA_TYPE_REFEREN" + + "CE_TYPE\020\n\022\034\n\030MX_DATA_TYPE_STATUS_TYPE\020\013\022" + + "\025\n\021MX_DATA_TYPE_ENUM\020\014\022-\n)MX_DATA_TYPE_S" + + "ECURITY_CLASSIFICATION_ENUM\020\r\022\"\n\036MX_DATA" + + "_TYPE_DATA_QUALITY_TYPE\020\016\022\037\n\033MX_DATA_TYP" + + "E_QUALIFIED_ENUM\020\017\022!\n\035MX_DATA_TYPE_QUALI" + + "FIED_STRUCT\020\020\022)\n%MX_DATA_TYPE_INTERNATIO" + + "NALIZED_STRING\020\021\022\033\n\027MX_DATA_TYPE_BIG_STR" + + "ING\020\022\022\024\n\020MX_DATA_TYPE_END\020\023*\243\003\n\022Protocol" + + "StatusCode\022$\n PROTOCOL_STATUS_CODE_UNSPE" + + "CIFIED\020\000\022\033\n\027PROTOCOL_STATUS_CODE_OK\020\001\022(\n" + + "$PROTOCOL_STATUS_CODE_INVALID_REQUEST\020\002\022" + + "*\n&PROTOCOL_STATUS_CODE_SESSION_NOT_FOUN" + + "D\020\003\022*\n&PROTOCOL_STATUS_CODE_SESSION_NOT_" + + "READY\020\004\022+\n\'PROTOCOL_STATUS_CODE_WORKER_U" + + "NAVAILABLE\020\005\022 \n\034PROTOCOL_STATUS_CODE_TIM" + + "EOUT\020\006\022!\n\035PROTOCOL_STATUS_CODE_CANCELED\020" + + "\007\022+\n\'PROTOCOL_STATUS_CODE_PROTOCOL_VIOLA" + + "TION\020\010\022)\n%PROTOCOL_STATUS_CODE_MXACCESS_" + + "FAILURE\020\t*\277\002\n\014SessionState\022\035\n\031SESSION_ST" + + "ATE_UNSPECIFIED\020\000\022\032\n\026SESSION_STATE_CREAT" + + "ING\020\001\022!\n\035SESSION_STATE_STARTING_WORKER\020\002" + + "\022\"\n\036SESSION_STATE_WAITING_FOR_PIPE\020\003\022\035\n\031" + + "SESSION_STATE_HANDSHAKING\020\004\022%\n!SESSION_S" + + "TATE_INITIALIZING_WORKER\020\005\022\027\n\023SESSION_ST" + + "ATE_READY\020\006\022\031\n\025SESSION_STATE_CLOSING\020\007\022\030" + + "\n\024SESSION_STATE_CLOSED\020\010\022\031\n\025SESSION_STAT" + + "E_FAULTED\020\t2\202\003\n\017MxAccessGateway\022]\n\013OpenS" + + "ession\022\'.mxaccess_gateway.v1.OpenSession" + + "Request\032%.mxaccess_gateway.v1.OpenSessio" + + "nReply\022`\n\014CloseSession\022(.mxaccess_gatewa" + + "y.v1.CloseSessionRequest\032&.mxaccess_gate" + + "way.v1.CloseSessionReply\022T\n\006Invoke\022%.mxa" + + "ccess_gateway.v1.MxCommandRequest\032#.mxac" + + "cess_gateway.v1.MxCommandReply\022X\n\014Stream" + + "Events\022(.mxaccess_gateway.v1.StreamEvent" + + "sRequest\032\034.mxaccess_gateway.v1.MxEvent0\001" + + "B\034\252\002\031MxGateway.Contracts.Protob\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, @@ -54147,7 +62374,7 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { internal_static_mxaccess_gateway_v1_MxCommand_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_MxCommand_descriptor, - new java.lang.String[] { "Kind", "Register", "Unregister", "AddItem", "AddItem2", "RemoveItem", "Advise", "UnAdvise", "AdviseSupervisory", "AddBufferedItem", "SetBufferedUpdateInterval", "Suspend", "Activate", "Write", "Write2", "WriteSecured", "WriteSecured2", "AuthenticateUser", "ArchestraUserToId", "Ping", "GetSessionState", "GetWorkerInfo", "DrainEvents", "ShutdownWorker", "Payload", }); + new java.lang.String[] { "Kind", "Register", "Unregister", "AddItem", "AddItem2", "RemoveItem", "Advise", "UnAdvise", "AdviseSupervisory", "AddBufferedItem", "SetBufferedUpdateInterval", "Suspend", "Activate", "Write", "Write2", "WriteSecured", "WriteSecured2", "AuthenticateUser", "ArchestraUserToId", "AddItemBulk", "AdviseItemBulk", "RemoveItemBulk", "UnAdviseItemBulk", "SubscribeBulk", "UnsubscribeBulk", "Ping", "GetSessionState", "GetWorkerInfo", "DrainEvents", "ShutdownWorker", "Payload", }); internal_static_mxaccess_gateway_v1_RegisterCommand_descriptor = getDescriptor().getMessageType(7); internal_static_mxaccess_gateway_v1_RegisterCommand_fieldAccessorTable = new @@ -54256,206 +62483,254 @@ public final class MxaccessGateway extends com.google.protobuf.GeneratedFile { com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_ArchestrAUserToIdCommand_descriptor, new java.lang.String[] { "ServerHandle", "UserIdGuid", }); - internal_static_mxaccess_gateway_v1_PingCommand_descriptor = + internal_static_mxaccess_gateway_v1_AddItemBulkCommand_descriptor = getDescriptor().getMessageType(25); + internal_static_mxaccess_gateway_v1_AddItemBulkCommand_fieldAccessorTable = new + com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_mxaccess_gateway_v1_AddItemBulkCommand_descriptor, + new java.lang.String[] { "ServerHandle", "TagAddresses", }); + internal_static_mxaccess_gateway_v1_AdviseItemBulkCommand_descriptor = + getDescriptor().getMessageType(26); + internal_static_mxaccess_gateway_v1_AdviseItemBulkCommand_fieldAccessorTable = new + com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_mxaccess_gateway_v1_AdviseItemBulkCommand_descriptor, + new java.lang.String[] { "ServerHandle", "ItemHandles", }); + internal_static_mxaccess_gateway_v1_RemoveItemBulkCommand_descriptor = + getDescriptor().getMessageType(27); + internal_static_mxaccess_gateway_v1_RemoveItemBulkCommand_fieldAccessorTable = new + com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_mxaccess_gateway_v1_RemoveItemBulkCommand_descriptor, + new java.lang.String[] { "ServerHandle", "ItemHandles", }); + internal_static_mxaccess_gateway_v1_UnAdviseItemBulkCommand_descriptor = + getDescriptor().getMessageType(28); + internal_static_mxaccess_gateway_v1_UnAdviseItemBulkCommand_fieldAccessorTable = new + com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_mxaccess_gateway_v1_UnAdviseItemBulkCommand_descriptor, + new java.lang.String[] { "ServerHandle", "ItemHandles", }); + internal_static_mxaccess_gateway_v1_SubscribeBulkCommand_descriptor = + getDescriptor().getMessageType(29); + internal_static_mxaccess_gateway_v1_SubscribeBulkCommand_fieldAccessorTable = new + com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_mxaccess_gateway_v1_SubscribeBulkCommand_descriptor, + new java.lang.String[] { "ServerHandle", "TagAddresses", }); + internal_static_mxaccess_gateway_v1_UnsubscribeBulkCommand_descriptor = + getDescriptor().getMessageType(30); + internal_static_mxaccess_gateway_v1_UnsubscribeBulkCommand_fieldAccessorTable = new + com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_mxaccess_gateway_v1_UnsubscribeBulkCommand_descriptor, + new java.lang.String[] { "ServerHandle", "ItemHandles", }); + internal_static_mxaccess_gateway_v1_PingCommand_descriptor = + getDescriptor().getMessageType(31); internal_static_mxaccess_gateway_v1_PingCommand_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_PingCommand_descriptor, new java.lang.String[] { "Message", }); internal_static_mxaccess_gateway_v1_GetSessionStateCommand_descriptor = - getDescriptor().getMessageType(26); + getDescriptor().getMessageType(32); internal_static_mxaccess_gateway_v1_GetSessionStateCommand_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_GetSessionStateCommand_descriptor, new java.lang.String[] { }); internal_static_mxaccess_gateway_v1_GetWorkerInfoCommand_descriptor = - getDescriptor().getMessageType(27); + getDescriptor().getMessageType(33); internal_static_mxaccess_gateway_v1_GetWorkerInfoCommand_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_GetWorkerInfoCommand_descriptor, new java.lang.String[] { }); internal_static_mxaccess_gateway_v1_DrainEventsCommand_descriptor = - getDescriptor().getMessageType(28); + getDescriptor().getMessageType(34); internal_static_mxaccess_gateway_v1_DrainEventsCommand_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_DrainEventsCommand_descriptor, new java.lang.String[] { "MaxEvents", }); internal_static_mxaccess_gateway_v1_ShutdownWorkerCommand_descriptor = - getDescriptor().getMessageType(29); + getDescriptor().getMessageType(35); internal_static_mxaccess_gateway_v1_ShutdownWorkerCommand_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_ShutdownWorkerCommand_descriptor, new java.lang.String[] { "GracePeriod", }); internal_static_mxaccess_gateway_v1_MxCommandReply_descriptor = - getDescriptor().getMessageType(30); + getDescriptor().getMessageType(36); internal_static_mxaccess_gateway_v1_MxCommandReply_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_MxCommandReply_descriptor, - new java.lang.String[] { "SessionId", "CorrelationId", "Kind", "ProtocolStatus", "Hresult", "ReturnValue", "Statuses", "DiagnosticMessage", "Register", "AddItem", "AddItem2", "AddBufferedItem", "Suspend", "Activate", "AuthenticateUser", "ArchestraUserToId", "SessionState", "WorkerInfo", "DrainEvents", "Payload", }); + new java.lang.String[] { "SessionId", "CorrelationId", "Kind", "ProtocolStatus", "Hresult", "ReturnValue", "Statuses", "DiagnosticMessage", "Register", "AddItem", "AddItem2", "AddBufferedItem", "Suspend", "Activate", "AuthenticateUser", "ArchestraUserToId", "AddItemBulk", "AdviseItemBulk", "RemoveItemBulk", "UnAdviseItemBulk", "SubscribeBulk", "UnsubscribeBulk", "SessionState", "WorkerInfo", "DrainEvents", "Payload", }); internal_static_mxaccess_gateway_v1_RegisterReply_descriptor = - getDescriptor().getMessageType(31); + getDescriptor().getMessageType(37); internal_static_mxaccess_gateway_v1_RegisterReply_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_RegisterReply_descriptor, new java.lang.String[] { "ServerHandle", }); internal_static_mxaccess_gateway_v1_AddItemReply_descriptor = - getDescriptor().getMessageType(32); + getDescriptor().getMessageType(38); internal_static_mxaccess_gateway_v1_AddItemReply_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_AddItemReply_descriptor, new java.lang.String[] { "ItemHandle", }); internal_static_mxaccess_gateway_v1_AddItem2Reply_descriptor = - getDescriptor().getMessageType(33); + getDescriptor().getMessageType(39); internal_static_mxaccess_gateway_v1_AddItem2Reply_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_AddItem2Reply_descriptor, new java.lang.String[] { "ItemHandle", }); internal_static_mxaccess_gateway_v1_AddBufferedItemReply_descriptor = - getDescriptor().getMessageType(34); + getDescriptor().getMessageType(40); internal_static_mxaccess_gateway_v1_AddBufferedItemReply_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_AddBufferedItemReply_descriptor, new java.lang.String[] { "ItemHandle", }); internal_static_mxaccess_gateway_v1_SuspendReply_descriptor = - getDescriptor().getMessageType(35); + getDescriptor().getMessageType(41); internal_static_mxaccess_gateway_v1_SuspendReply_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_SuspendReply_descriptor, new java.lang.String[] { "Status", }); internal_static_mxaccess_gateway_v1_ActivateReply_descriptor = - getDescriptor().getMessageType(36); + getDescriptor().getMessageType(42); internal_static_mxaccess_gateway_v1_ActivateReply_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_ActivateReply_descriptor, new java.lang.String[] { "Status", }); internal_static_mxaccess_gateway_v1_AuthenticateUserReply_descriptor = - getDescriptor().getMessageType(37); + getDescriptor().getMessageType(43); internal_static_mxaccess_gateway_v1_AuthenticateUserReply_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_AuthenticateUserReply_descriptor, new java.lang.String[] { "UserId", }); internal_static_mxaccess_gateway_v1_ArchestrAUserToIdReply_descriptor = - getDescriptor().getMessageType(38); + getDescriptor().getMessageType(44); internal_static_mxaccess_gateway_v1_ArchestrAUserToIdReply_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_ArchestrAUserToIdReply_descriptor, new java.lang.String[] { "UserId", }); + internal_static_mxaccess_gateway_v1_SubscribeResult_descriptor = + getDescriptor().getMessageType(45); + internal_static_mxaccess_gateway_v1_SubscribeResult_fieldAccessorTable = new + com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_mxaccess_gateway_v1_SubscribeResult_descriptor, + new java.lang.String[] { "ServerHandle", "TagAddress", "ItemHandle", "WasSuccessful", "ErrorMessage", }); + internal_static_mxaccess_gateway_v1_BulkSubscribeReply_descriptor = + getDescriptor().getMessageType(46); + internal_static_mxaccess_gateway_v1_BulkSubscribeReply_fieldAccessorTable = new + com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_mxaccess_gateway_v1_BulkSubscribeReply_descriptor, + new java.lang.String[] { "Results", }); internal_static_mxaccess_gateway_v1_SessionStateReply_descriptor = - getDescriptor().getMessageType(39); + getDescriptor().getMessageType(47); internal_static_mxaccess_gateway_v1_SessionStateReply_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_SessionStateReply_descriptor, new java.lang.String[] { "State", }); internal_static_mxaccess_gateway_v1_WorkerInfoReply_descriptor = - getDescriptor().getMessageType(40); + getDescriptor().getMessageType(48); internal_static_mxaccess_gateway_v1_WorkerInfoReply_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_WorkerInfoReply_descriptor, new java.lang.String[] { "WorkerProcessId", "WorkerVersion", "MxaccessProgid", "MxaccessClsid", }); internal_static_mxaccess_gateway_v1_DrainEventsReply_descriptor = - getDescriptor().getMessageType(41); + getDescriptor().getMessageType(49); internal_static_mxaccess_gateway_v1_DrainEventsReply_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_DrainEventsReply_descriptor, new java.lang.String[] { "Events", }); internal_static_mxaccess_gateway_v1_MxEvent_descriptor = - getDescriptor().getMessageType(42); + getDescriptor().getMessageType(50); internal_static_mxaccess_gateway_v1_MxEvent_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_MxEvent_descriptor, new java.lang.String[] { "Family", "SessionId", "ServerHandle", "ItemHandle", "Value", "Quality", "SourceTimestamp", "Statuses", "WorkerSequence", "WorkerTimestamp", "GatewayReceiveTimestamp", "Hresult", "RawStatus", "OnDataChange", "OnWriteComplete", "OperationComplete", "OnBufferedDataChange", "Body", }); internal_static_mxaccess_gateway_v1_OnDataChangeEvent_descriptor = - getDescriptor().getMessageType(43); + getDescriptor().getMessageType(51); internal_static_mxaccess_gateway_v1_OnDataChangeEvent_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_OnDataChangeEvent_descriptor, new java.lang.String[] { }); internal_static_mxaccess_gateway_v1_OnWriteCompleteEvent_descriptor = - getDescriptor().getMessageType(44); + getDescriptor().getMessageType(52); internal_static_mxaccess_gateway_v1_OnWriteCompleteEvent_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_OnWriteCompleteEvent_descriptor, new java.lang.String[] { }); internal_static_mxaccess_gateway_v1_OperationCompleteEvent_descriptor = - getDescriptor().getMessageType(45); + getDescriptor().getMessageType(53); internal_static_mxaccess_gateway_v1_OperationCompleteEvent_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_OperationCompleteEvent_descriptor, new java.lang.String[] { }); internal_static_mxaccess_gateway_v1_OnBufferedDataChangeEvent_descriptor = - getDescriptor().getMessageType(46); + getDescriptor().getMessageType(54); internal_static_mxaccess_gateway_v1_OnBufferedDataChangeEvent_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_OnBufferedDataChangeEvent_descriptor, new java.lang.String[] { "DataType", "QualityValues", "TimestampValues", "RawDataType", }); internal_static_mxaccess_gateway_v1_MxStatusProxy_descriptor = - getDescriptor().getMessageType(47); + getDescriptor().getMessageType(55); internal_static_mxaccess_gateway_v1_MxStatusProxy_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_MxStatusProxy_descriptor, new java.lang.String[] { "Success", "Category", "DetectedBy", "Detail", "RawCategory", "RawDetectedBy", "DiagnosticText", }); internal_static_mxaccess_gateway_v1_MxValue_descriptor = - getDescriptor().getMessageType(48); + getDescriptor().getMessageType(56); internal_static_mxaccess_gateway_v1_MxValue_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_MxValue_descriptor, new java.lang.String[] { "DataType", "VariantType", "IsNull", "RawDiagnostic", "RawDataType", "BoolValue", "Int32Value", "Int64Value", "FloatValue", "DoubleValue", "StringValue", "TimestampValue", "ArrayValue", "RawValue", "Kind", }); internal_static_mxaccess_gateway_v1_MxArray_descriptor = - getDescriptor().getMessageType(49); + getDescriptor().getMessageType(57); internal_static_mxaccess_gateway_v1_MxArray_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_MxArray_descriptor, new java.lang.String[] { "ElementDataType", "VariantType", "Dimensions", "RawDiagnostic", "RawElementDataType", "BoolValues", "Int32Values", "Int64Values", "FloatValues", "DoubleValues", "StringValues", "TimestampValues", "RawValues", "Values", }); internal_static_mxaccess_gateway_v1_BoolArray_descriptor = - getDescriptor().getMessageType(50); + getDescriptor().getMessageType(58); internal_static_mxaccess_gateway_v1_BoolArray_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_BoolArray_descriptor, new java.lang.String[] { "Values", }); internal_static_mxaccess_gateway_v1_Int32Array_descriptor = - getDescriptor().getMessageType(51); + getDescriptor().getMessageType(59); internal_static_mxaccess_gateway_v1_Int32Array_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_Int32Array_descriptor, new java.lang.String[] { "Values", }); internal_static_mxaccess_gateway_v1_Int64Array_descriptor = - getDescriptor().getMessageType(52); + getDescriptor().getMessageType(60); internal_static_mxaccess_gateway_v1_Int64Array_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_Int64Array_descriptor, new java.lang.String[] { "Values", }); internal_static_mxaccess_gateway_v1_FloatArray_descriptor = - getDescriptor().getMessageType(53); + getDescriptor().getMessageType(61); internal_static_mxaccess_gateway_v1_FloatArray_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_FloatArray_descriptor, new java.lang.String[] { "Values", }); internal_static_mxaccess_gateway_v1_DoubleArray_descriptor = - getDescriptor().getMessageType(54); + getDescriptor().getMessageType(62); internal_static_mxaccess_gateway_v1_DoubleArray_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_DoubleArray_descriptor, new java.lang.String[] { "Values", }); internal_static_mxaccess_gateway_v1_StringArray_descriptor = - getDescriptor().getMessageType(55); + getDescriptor().getMessageType(63); internal_static_mxaccess_gateway_v1_StringArray_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_StringArray_descriptor, new java.lang.String[] { "Values", }); internal_static_mxaccess_gateway_v1_TimestampArray_descriptor = - getDescriptor().getMessageType(56); + getDescriptor().getMessageType(64); internal_static_mxaccess_gateway_v1_TimestampArray_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_TimestampArray_descriptor, new java.lang.String[] { "Values", }); internal_static_mxaccess_gateway_v1_RawArray_descriptor = - getDescriptor().getMessageType(57); + getDescriptor().getMessageType(65); internal_static_mxaccess_gateway_v1_RawArray_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_RawArray_descriptor, new java.lang.String[] { "Values", }); internal_static_mxaccess_gateway_v1_ProtocolStatus_descriptor = - getDescriptor().getMessageType(58); + getDescriptor().getMessageType(66); internal_static_mxaccess_gateway_v1_ProtocolStatus_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_mxaccess_gateway_v1_ProtocolStatus_descriptor, diff --git a/clients/proto/descriptors/mxaccessgw-client-v1.protoset b/clients/proto/descriptors/mxaccessgw-client-v1.protoset index ab29fa9a717277d6b653e2ad32ffb6592470e272..0ef0cacb44fb9bfe58039dfbd4e97d7ad59f7418 100644 GIT binary patch delta 18884 zcma)@d6ZYxmG6J|oKu&oUr`LVr~wKPunR^+5|3?zv#EL-yZuo@QW7|NQNHww!H${BksH4da-IUF&#k z{7Lm=`*-|y&!#(9fBv$E!Cw$WADh?1!TTS$Z};B)b9d=kx!?5D>Vy8HUTj;XyZ@Rk zr)<7{z3tGs`_k^c51F@M!Mp|CZj7JUGHW1z#8m$_Zce@9%Pkk_W@GCE_m}?NkDi>L zluff*F8$Mpan`(p=l}GpGhz1E z&IG2=7GJCV>O?^PH4_2()?Y9G%3Rp>f0zq0hrd36zn=i#`I-rUeCF2%@Ri}e)7K7v z)Z@Qa{neqr^0oi<2iJa2Rv-L@BrjMv|Iq$-x0zIaVYoBcGX{IT8tlb-^*Dgjpzih< zG|j44W4ah$AN1q73+60XxYu4xn0*$`?+(~B&uZhZvm1Xb7;y6rIpm;2<{W_4+x}*Ma+)nl4?^{%SqdtI%N4yKVGiGCJUvK|i+jn)Q)nryInq?*{SMM-= zu)Cmng*>2~5``01uMQ?pf|LwbV4w+N^aajE0xx4l3 zszx2fg!=kB?mFjN|9i(BxBd1%&-vFK_|MMYp0n*g@3O<}?Y|)GEXLJGf7NjI&fCrY z)~p@2+g_b@Md#UW?SsGk_wJR4?=iQvzUsoPKA>o-)z++heV=6mvj6Bm@xbq7|GskF zfgkyD!}`E_Q^;L=Uiev|(ZpN)>dX+d1?YA=`Q6R3l_N_idJ{ z>ni*%VM;3MLbgljHbS<`@ClL1+;ySbWy8ry*IoGUhE0-XH@feJ5k}~~+q01ovhQv@ zEy;!#e%D4^!;$S81}DSe$aWnv%m~@8T_cigL|ORV!ltQg1iIZC)r~;6ThC-GL$}-1 zzNG6Z{O-XT-h*uSM(cWz?LK^BlJy|leWQ(&Y-Hj02-ZC#k?m17x_l(MJ-XIUx{>Ji z*uc7cRN=qZ=(|zqzSrpTQOLeGVp5WgLiWAMQ|tA*YpNCD`?WIT|9w*ptM4}z5=K+a z)e1k?jT1>z2~jrJjfx04Xw2ATNztBey;PJ%ioJo848uJ~jZTKZUXFbOmo?`w+{=wL zlCt&2Btrt+yW!Diq>REVR+yOOVFUgALK@-qCprQli^?t4{n4! z7{l`5alOfMNa26vHb|C3u>4UY<{?=AX#MfYaA@HVY2ca3RjRdiV{E z_UNp+!w|1WXWb%op{2-=%W5ZPtj`iH3qm+9YnI%H&?0V+H@6UOL3Imad%U>?aeKVF z6)A-$WOS)S1R(`!sA4Q_={EF5NinOQgj6r`ld{^Wsi7=9;UvpnT_XCmMFim%)QCWA ze{B(gMD%Nms4fwmY!N|7L5-;HN;VZZg+wvhlQp6c>dqD6l&V^X7BsDRJ|%0>{9=pr z6w7aGk)M{;&Pa`6aSW$fueC~JPETIT0OA(b)_@qFZmj`vd%CrzRq9-tvDQgKA*7&5 zr7=sh=5{MZx-{#QG3dg;BL7WRJ10fNDja@8B{Kd)7$_l~WetUJ3#wZXMb% zaeKZ+)Fu%vvxp$1ph+d7WfoCe8ADoTAq^_>i?Z6KDI)fja8cGQXMhj}NkkW0L=bL4 zbqiv9u|)(D(Zv?gAc^P_iwHsrinMIPv4nJqg#@C##3CA8r+VV=3%9+gF_{vRTdG1 zTTtDC*sijOK-{jfh=xi;tF6Z&q@YP9qSdj(W&NiZ?P}}sqR4N|YPY0_I5vbEZB`T# z(M=W+gj-PEg4o_<5rKHU$s#HwqMI!u2q{>aRzkYj#vsLLZ?=fqi~P2%c6W-1<4L$J zYnBU52<;Nl?G_P)TTs1%*xqgtfq1>$B5Ie2$~!D15G`n0iRccCh*Gq7Xhc#iWAM(* z>5d8I5nEyxgGle>HNp_-omtVIB8KiVY1!^P)xuV-M|)S+Y+4_!qt=CCMSf3K`+Z6T z$FFdYG)@vROcHUgB?7`Ls9r&A@3lmLc)eE=QL2{G`z#T|Vj@7(N+RyFL{N(MK1;+f zNyPou8i+)Ing|f-{gwz2>HU_7VM67aj8l(H8xSpMT1mv3tgdGkO0iy(jg)(uv^Ess zfvVa-Ye9>c+Y*>^h%M3wv|1NBiu?~*?Xi@@lA~$(L)I)es}MRQi4R&5A>4xM7R2^J zOCpHd2W>QUNK+rO970GzlS&RBvK&&1^dZS%%zuX@@!^acqa*@C3z}9uKP*!)m7;w( z8(|SckJ#~|BMv6eq>{r&vS!_`DUHUQca~DN7!uXrHnH*eSVNYq^7{7Bs2kZms2xQlx7wcb!5{$J|XP?;u*(w3581EqRni zYfE0IjKFo|?$nb1W#q2241x&PSq4Fb>ul6_N`TMWpofrxI_N>9&)T2|kv^+~-i59r ze=e*2-;{hVK;gNpc|9FMU6TFhE&C9)fZ7xg~~3yUa-pngcQ{M6pW?m zZU7>ELGA`8$Pnrx`!2lPzt!R;<;#^uJieT@=qVfGu38s{7x`OR z?cEd+x4`gL)+}!_AqxQ^` zCu<#Q7>#+2PR4k8CmSbEBrc37^7pdZf29DqeTMh4W?cwJNPzE4fTajQ+`<|mi1GWD zGZ44$TYw`Zzz;I+#wwKnK@E^XJbjS04zbc`JXHIXQapWNecDsxA99lZI7P^{H+*Oj z_DF;uSqdTCf*K%*?MD_Mh}(}Wz#a+kZx$d#fS?8l;^}V|U=JthXq_UY7*~I@2uBwA zr&;ZAr`Jtx+u>80JJQD^CBV-tKnS;>1_)yNnFR>q^)m}_qy+f62FOVoBtlpt1abAb zMF>Xg6d;JJ&n>`FMSg^bJB0t8}j!yxO#_|}KE&`(^!17p& z5X3F05rP;W>(WC2h}&Z=z|j)maV`x)hyXzi5X94QE)7C38mA0`cskCFi3>{^)+_Q8 zUG1b4;d+>!=(vkYAFn47E^$tC1mPCc)d9qIiEGiJ4&ru+YnKzI3uB7>WLG;Sc^!l0 z$=Yrg#ujf;q#bOEg33J=<+4 z?`|&i7WsLuc6)N$i{*JPJ;wBk*Yhn{h+sht7R2`a7_8hRVBDUs(FTyxWiFj-Ahe)q zr8Aeg7CqNcigcMv=bB#G)-Q1B#R{S^pq`3Bq!&0oYDiN-r2lq-i!WAEEqI~h6;Vs& zTnTFLQi%3KH*}1ZM&tE+>o>`U)+^ikrLKR?v8zh{KSCOeAn{*ngAv5hrEaJmu0R}J z>f&RP_`&uv$E&%Fec=Q?ekL0?Us6gG$dgW69Sm@vbaebxZnO&tVMYzfZ-RpW?3sTVf zN8SRjazlsf(*VV2uW~%*tF~T*tC@PK+B#a$s+Cu}t6gC&sw2JHjn)U0Uf0T<-SHhs zlhKM4v^>fi*)?wXhF0oJVLk(DwF9}dyP#Kj!yt8Z7agH zRifIEf)=s7I$c{OstxJ2ny6CxZ%`4gb9@ifkO!d!^-4q`+UwkijjR;yb&gMhTJ2z- z5*%MHRXP|cXdNOCIV)YyR4YZg((&<9r9*g1a3x>rR67LiD#w?)glJbezRo5@yUOu- zR<%QUN^pGn)WV@iL6ge+#%kB4i%_o{igdN(+owv4B3xfd%K|NI+5+wMm9{{8eWh(L z!VOj5@-e^wvaJXPu6~y)dyz2S`VAorvil?3gxD+&*Y-A>4xM7R2^J3l_xd zgXVQokw4;Ue@tE{VfhFLI(^}qByJzIodlxCK-~#Jj30GFbjX3YeN=Z6##WI(=4wwQ zw;N*lnB`zY@%p%Vh42chR}kCsadQjf_HlE&QIS98YELJ(8)5pC9YQt|w`*N`7lX(F zs5tjFWhwqZsWAcA}ah^kNmVyjXyFOelqDUvvX> z5doudx(Q5?lg&%k;}BBNB9_C?P~*jf?yhS9>ibabrwhvBT`flEhb? zn-D{Qs0Gx+3dp#6)wSxj10sFZ_2`WgB*0hQc=_n@IFObuupZ;oRTL>+v=>%hGI@^Ls|7vI3X)*xbbLk@`gcLNXIDXHy zbnE&1i>nsM?O?H=D!-VMoO3%k+Pf{a z1x{`Uph@L+aI_z(M`CP|9_?prk)+%Xj`3+N=yR=s^#``bx6*=Re0qqW7+1&mboT>s zb&O9Z{yxWL;aH#Ut`Jht8ZVcHV|`<+%4OkL-`O2+U46}5x{mkm*WT;;&mS;9-Zu|S zQF56$!KYJWpOec3s0%)b?Fqh9Pv#)5Pw?qv-Y0j76Mee=KuAHo{(wkN^y&Ho%KCqz zPuHJ5$7N!P=ZAuEWH`A@fV!$vh<1tZ(KA0twM+c8z7#Q+iIaS=E|I$gsLzOfPQJmO z-;U~)vMqSvHR~}z0&rXZzrkI}P<4)+pW<`Fkubr2Q zHlyfVAKwYN>J|AiU%Ma`{S!sYe0-sEVe=xt$k#4UMVnJ}k#Ck~vk*3yOkQl01fqjL zewrtJ4P$(8WCK$<8G<%^|d)u5n;2t?Lj2kzQicd~?a4Ikb=54f=I7T8$(I8vOis`L&ou2)_j$(-Kl-oBzalon_}NJIqAFA zHpL+dL7n0tDPC<;JZALzlyH>NIbck%Ahy>_g5}dJ4Bk+cO08ggvy{SEs%-;__QuMw zq#rcLvK-u)dJbFCe^X^E%K>P%{J=MqH&w=D>1OZZ0*h1<46;VClz^F+9C?E;G zrLvWbf@aIle8Gk-8~&}HA782?+0ntc|2H}Ie~fSSlj2(kj@i<0t31gb4(h^4A-1>q zv@r6}$qy|mTiLTgv*q``V8fO@`;JDfPBv+f{A*BkjPLOLwv&~Sp_Je4YyT$=0ZH)P zz9~NOH+dNXzq3jp3c>hdCxy8AogXW|`VJt4_oT%~NHH!pg4o{UOI>YX@LmfL!WfM6 zRSILNo_j!sz5f5`+x;P;iS3;|GV`Dr$#82?_4U6@hi5Bl1FdOh3E z!1O^`4`n5qA=!V(b`gjWz=2Yy6k_|3Z6Y99ddN1B8IsV4Z8e8zDcG#%KR6brpE-hP zANJ`|J43Snh%JB+T2Sx9Aks(t09^nuQt0L~D4G)*}|l%qYUD-kI7&qsZ_!NJiw ztzt8z>;71UEQ=?o3m}D5`$yY=K%{?^h~-^P^{4)?ux~#3BZmBckFnGe(^{faYeZqI^H-{NA z44$l{@}Z!FO)JCV$x16{{U<9e3&T^DR?hmMNoAdQs*=iC|EWsKI|Fo=HJ! z{j(ok>UkDM`)51P&XB|XGnKJ?2>@GD&gF3bj2~zb%i;c+s#*^3>tf%=u5BY?&=Mtw z_jSImd-)94CimZU+P5yuL8LExzL3g{0Fl1z zxfaMwoGCN$74P0nGZDu66*(`-_?lTt6JGV{Gu6!aOC7K+`I4FVsvo3}Ae7?zRiD06 z&6G{}HJ`pxL5jK#fk9TA6W^$$%)~c+h+8z7;?i9T>*EZJ_Dw&;5-BtBO+O~?rdTr*->S57 z>jq6K8~R(7RA%B^m6VzIwhxn1Qe`HB@!VYESf=9JzTKjdnfSKn-?zjLl9~99&BU4U zn;dB4US{GuzD;K$rAXh=ndrh6MgG38{a2bzTVVOVZyp-GZXvVj1KG%8{y_#9tm7JF zP<-H9wQ(TY4}5xl2dU))-Pl~%vdBO5wZElWw#4#7->j$aEv1%^Y{)}Y0%|27m3&m% zYXgk-BR^Ez0#eIIdZKn=t0Moz*FHz4& z_2*NoW$Pk8Jk*W|y7h03>EZm#keIQprItk@-3B0P0ksy8S{8-$Z~`J-6jD<_Dp?fb zWOm^jMSfJM9i1vEzk%sdA^n2m8&b>SkY1D^Y5}ztkXjapwA_G57l%S`o*=a>4)KA> zg>8!b*ibt@)v^ti$66)ZNF~RmO3DCI3#_$()N-8F0-`<6Y5}R`IIHEG{1_$FPD-_W z6U!4r`bot%rIsbZ>4#{DN8%c{xM0YU7@u!$(njv zXo}~)rXaPP9`qV7L?NgrX^=hQ^pFnHK{kP?b z1T2wO1jG*XD|c|ji@K$h+EL%Nkg*n;|m2Fm^8{Ge+*#w^s! zD#x-ggVxXddrMG%-+?U)^95DbWF-bIVE)A=sApDeITKwN^toCHTTli&_YWB33xocq z0ptnuqL41A5XPY1@sx65y$;kXw{DaMzF4*kbe+ZFlpP`f(K`|Yq?ZmY|7G9#}H=^-0pSc3YH z17dq+=+I*e$jrGiq;Fc=$t1ffjl)oa41ZV;Vqh#zKa&H|UKR9ba$HmL6`^)ZS|enl ztO!liY#4OVjg3lN>TvS+_yhf)iu6f!MAJ8|fQLlN>5nmzA+B600j?StM3h#w6+bkREoM z;u-p>)#W8EdO;r%GMt~NCtPwX=L9j;L9Q1dBC}oWRbpV6d-W>R0An#vt=FM*lwKb_* zCEnXYQ#>g(<Jo7jJTXMLW>ZUyxT z3&i+$Aw6N`(yjN{Y6#&N)a4w+_8wdMbLrK4)3!`oW$6dw(M}NCdv)KPC8?lW@2f(T jZUuF-q7dWzY-7u1>A$~nEZqv4W9ioWSH6Gs{Pq4H&rDiq delta 15009 zcmYM5caUDik-*=ZneXY_Z+9i_lXh2$RZc6R-4(&W)!jc=<@@WZ>?7QjBQ`kWcx7Dn zm3bry1+oN|Fd_$uLL#id5(tAxB1jlvi)bfF3Fs%&K0nZrl?__9&?|EzlE#4qIkJ-qN2ANgu> ztE1Hjg&S9t{=dQ)qZ}GL-pE6}lUnVqfaLhn9~llxP2*8JGE6c;?a0XsjZiysU~y9G zF8xtqAT@QPc2tZoGp-RK=Pah^4zchrJKNw25$M~D8@)Pvs9p~ncdqkCr>p?36~ z`AMy}^v8t3)YOaGF=3(+YR62PAE_!_FM7u;9B8##u921DOWFVC{M$D&#J#O=Y%BfoF0KkB+Ymh7#mN>z@c21%lVGd#-*N{h8!ZICR#-!|6csJ0mggK=3;USSUM7|J{)Q zbt3p(*PHt8MDV+lEI^}6|2@~2nnok|JtA3YC`Tjty~zh8FUOSr`)+oU9E0TdM|>WG z;P+?DN`hlc{{uHC364eZ2O}b1dd%>3`_r z4kjcel0O{jphWP8^A{wO<4XUdk#Ubh@JBB0OVq|8_@jw7Zt}&CUEIJljYsguBeOW( zRiN%!8c7j98JTa%2|sbRJ-RXZlUX+37CiQUDrd1&)gLKqP^8#QuO^6|3vFfN*V)Or z8kCLj>t;_h*d_)~N(KS^J1N5~WSdH6Px3E>UX{iLNn=~w<; z#V+r_k5*ZnnrBOKq`l<>8!eog6R8d&)xwi-T8=B7n1mV;M;Rh}T8=ZR)eGVc>tA$f zJw3-CZN(kIreSQwq11}*>3Q@>R9zXC)ZIE%K~ojOOY%1B)}gvYx|PASm&LNY%2uY) zkPX7JoQV>T+GRA$%`AjjP)7qIyWBD^B;;cM7H+e+X31>+!;!%fqbhdc}VHQ-gAhKthM<7`Yy z7dBn-XtjAnE4r)AqtRvYn>@QHc|;x!zsZ|&=7lg?JX&KOL0ARVDv0bF^9aQ1n#x=n zEiSFKAVKJYrYjz;HIHaTcddCerYtVbv&)i4@1rYeRn)m>3F@KLtKrP{3v zW6R=-Ji9uLhC?M>kvHWK4q>c}=1MaQVHVWUfXH5Hg8{L6r444R^m$dz86*=9p$d+w zjAL_imLa-VP5Wm#OGXE!8|I3>gNwkt~UXrp-qVHH%5Kx8+XM_`57 zjpkA*E^RW8Aap^~6^}NVN3^24$vhfY7B}VDt;r*f<8V{nl%pwxapKX<<`INdP_0%l z!Z({sAZBkikH(2d!{!l$E~vU-Y)#1wM0Hp_l5Sapn{zilPAODGY%@f4bKa`P7^Ay6 zFUKX9p<8NQPq(0TO9>1%P1Q%?sOrM_ve=SmzfXan+z4A_Y!Zm^5{Ru92neectY%?^ zw^|@T%x<+njF&*%W`Tgv1x-}~ahpvIt*G8+ffz4=xZMT=5eQHNQNifmp0{)~AiB3( zAjS)A%c*W;+d$}ostcmJEpJV<)+jth?j1%1t7KZVBRc3nGMBP|bqKZnqeMSlwc?E)e}47JU%K9X4?wiaRWVJ!SDwp8YXJkPKJ1v9|x}fPw1b12lX+?LZMX*OAxXU64p$eL+ z7~W+Oq!ra&7Qr5&e|^M42%-y`u0-$=iy*B?KO#p_j9`zf!`(!1O|{!%$N!L5UbAGf%Jn0?$3o{pcwCrJ7SHC{3uzz|kbKsvoC&gip0ja4I0Nc9 zKxCh@ae!ET&c-ppRkS`|>&iet^=LvI$n#b%gXli5x-LvCiMe-uK64ht>^|GjeX@Q&uni5N3Yw}c$`A53O^LLk z`awP^zW0UDCyVkQwxA(K1L_$BqWh1W_dgjci0(gRK}&r5gg(rq@FsT!gB0xiX!Dv3{DnYEEh`@B%h3irCz4-SXr`>%{3M zjHyraS@Jj|!{OcFvz#{<^gldeFJFDGoy)c3%~gZZjw)zzlOgg(3Yy1q zV?Cn|R41xuXrL7lx8kqtOL5%hQPNGB;^~wW7PsEs{57Q60mb--Sa`;}}#y zn-IAKE_ag$tQFPeZn3;jit1Rd{I23rTO&0V-4zsFhUl(vJu?l_UEz2mQ{ApItaQQF zZWpScCbK>#ccYbVyv=+Usw>?LTdZXn&U9g3vRjqt!nVmvbkB6%HuELAXF6WoBuP&# zi*sFee#~G#Ohxismx}7ClEBV$DG@^K0Z>mP5ZUuYR)z{<^*k3JU@GRUELOYh!en+D zqN`oHv`iDT7r69_0$~-;MxyGEGE>_p7Rc^i@ zW??l8BD~hjf|y-vW@m8AciAP$>sqL*0=W{TO%T}pBg69#IM29dqojnyOvV)k+ulbj2)%Hk@QU6ZWNLh>q$ z!7Q&WR=5U>M*`{Q64x-n)^nfx)%x*NZ5N1I&3nIJG%z`+((X7rbiyK{b zbFw-Y$s1jI-kXcnD%|8!K?f28aCCGJMEE8*Mz;ot*_&KE|JXlevDsx?li7JlZg%Mn zbe=eSi%YjP2xmcc7DVe2;g zo*d@CbLsgMLKQSsG5kB19*Ss1^>=Ralqx2ad4gN&Zl$sZO;=9yEpDV+sqD9Cw=T>t zi`!jxM+(GzByV@zq9jetmq2W@KtLR^pdPUx(cV^ZUc^Yi=x%f4G%z5&Y}2^7&|emJ zy6jJ>mwqJgv@^0_db!K?2ZUKr*BFTGUAB-xtlp&yIfQ;EFK^pz%Yuv>)NzC8Zg;6j z1kv5Di9mD-_uZE9AXGt}Wf0Z7E#rZx-mMu=RH1uD@(+kEY`PNedn{AX8l_`e6J3IM zuk8eg(Slm?fT-T<(klXp>b<%XM3rvtt5q9LKxlqYF+xd-#I-a`<;|W zpe7Fx)%)EPt%^ZZ?{@=wM)pg2w8QcJNESTA06<*@{goSqsU0p=S~O#7hf9?fh^ZYe zRa*Uya_9kD;t(SMZMvi!dcc-At*Ac05|3-K-%$=d=-lGug_J|!WUYT_Mfbsa1X2z? z=mv(8F6Gce&izZ$m2wEQ!Am*xkei}4K);i6=plF55lNMD=waIe{jQzCgK6-ty}|l> z*rj5ZW=uV7B@T$Ghpoivm+EMzB`b)*gEn}nj&{~-RjQ+%u4h6lGy9uVnU6U4$5ds) zNI&A59r~Wo@2H;sz%EMzl01y1U)r;uKe^r^j5dDUsp{)Jt@~ zllSV!T%S$JSX3X=DUnM-@wm(Wtf{0?$sT{4ogro$x#W^39N)z8NQg!-niXWrKjEgy z-CSg8eA4L+NJuf3>Vn8V>A3Q!EcBG)8>HG5RgmJ2FK-A-E_urFAzOuU_i3k(YC4dnSM*qRVNqGU=CZd^(;}K)bIll?ut*~Lx@{7O z2?9IBF=<5hb=TRWUw&YQ{JN#(MG~GjY@0*qf|}#N*xJ%12BP|gZSzGE$u}Jz%C#T4 z<$4GfdI{A3B-G@sZ|oK zQMfB^AUa|_{@s!k#ArcNmF4+&DQwj#j;9JvPYMHaKD}>62&8Dbay-2+HJ0ki@$|mc zJ_9nmeYRpCR6)&+AgcT9U;t6wrz^%){LZEL&}FCl_%*vBf%(ui;-`X!lezoIwm3v1 zs9PK)#2?ufk0Jdy1sqM895B9A3nKe*3NQ%$Gd9Zp2N8zj*aTy<)^#B6?yn6?_(3x) z>0p0tnDBp6%SyaKljYYxpw2RO3DT#W|1rS|BK)c4C=lUK-2(X$NT8Jfe^$#%L_y7G zG$Q+1Ez5y_vUl;ujHaCEU_Ac?kv-YZm!E=Qm){%k-r+|q$r%pDYcIn55(rF*k$ubq zM=dL7HfXZ^7ziAZ<;*^}j4K#_*mll}@qLXXm6PAOT+L8}U)I;bjS& zVVyuUg7Jw$8nJVRpDw=$3m}clye1zZ#h7gbkzM9B*?`b;pWdGY5r*S_6^zYV_kb*c z6*d?MSwX7@w&}3x^tgL0F{y4K1mL&k1uq=TyYhjkaS)LzQu>o;O zmH;?li0oN@vHT)XBEb?kyOxzD0Gg~UfwNVX`~P5BoaeJEz5bkJ5Yh8|djA@f=%4RX zsRiKzsHX^s?D?KkL{b7sl+O3*fp1U(y2_^)35eAWYDxfOYg@P0e=xeMd`#y7Q#iQV zrvwP03l^y#vAo)k(ga8=s;hlUfP+F8_;i7TPz9}9nYjymx=GP0?_U@Abb}j|@yOT32fQ-`2V$hKp-msr5nAl{|5Attz$t#kDGVVx3Rb;Gkj z(Ou{Hfu4?*ym3jb+d>yKT}dOCnC@V#^)IPasr4`Qshk~j^7IL6O$wrVsqfQr7Nplp z{a~f_?4T6)m({}Z^a-}76(`00WxhjQMi$-6>TW6CFR$me6OTa)loaom`<9;NgRywO zT&I>7&$6hl_Svmz>kT1#wQap2*?QNc#1|ku0(I+w$X??+^{E!bqia$gM3}~FZ5=~+ z1nM3DV{7^~Rt2Mbt!=#_*?Q|!3c`|X2~gt?Vrso_*LPhIQ|o=HpMyaxt@o*l84}uH zI}t(^G%sW)Zt!iqze)0-IZCIUI3(R(=k*>yqwGXbcOr=Hb)F|LRh6B1o#$F0J8?*M z;`QF$l6E4D^!1*4N!Hhpj9??Lr%AVxZx(Q8V%dos{b+pzK^W5;eR`H3l0$ftPtWp@ zqUIqG)lGhk?o$xeO+G!#56Movp;nbkH#l1BKU&efq1Kh1ctfqrPQ0596H`lsy>jq6%cH+&o zs@%G7u2tEI!#>PUL6w~dYTY~(cjB-g7oDo;N4Day=eMsqLF~lMwiAcqM+nf?z3jxz zzSCBX?8MEw6J1zb7F&FFTiQ*Fk=){&UD4`d*-cyRAcI(6U`yit2PPLjR~9>c_DJgGb4c#AUOp#7*=3zT z3AJY|(ML?ft`G{_n8lvUC} z4uPlB)2rk0KGzpx2wvsRD@kTrGqws5ep&*;jr1hFb-idBS|nEEat8mL;e!IUus{`fe>-Kz7c%K7G?VLN@5$v<^{~auC!)tb${+{xC?I(cSCy zcR}1!iuZl?S;`So9KG)w@lOqSHo>EP79xm7P@ir=2DZ=7mOqOL$kOkSv_%PF7}Pfk5ZQm)8%0BM#D1S% zlX-uUBmwKHq!r=)eun&kl^7;Td{R3hIRZ2%Bu9KwJ3)^4)ax&!(3Bhj>H-Fl{nYDE zp(uHaQ$luT;KpC^CwAiRDWMT7rA8ssdTL19526v&Tmxd~)R1ybAyac&NZSum)RYDy zds@&BK-h&&4{6{KvS6hHhhuXZcp=leB&4kiAq;9t0Fhl1(%XI^)4H^7lxYRcVVTvX zwZqKn86mBYf>|a1!TN*+BYZ|kPgsRa>#~rtA%tO2(>aLjvY;;(jE-qt9@0x6ge(|K zJ849Ac}Ne6h0N-T5D$@$z>% diff --git a/clients/python/src/mxgateway/generated/mxaccess_gateway_pb2.py b/clients/python/src/mxgateway/generated/mxaccess_gateway_pb2.py index 782411a..6dbe788 100644 --- a/clients/python/src/mxgateway/generated/mxaccess_gateway_pb2.py +++ b/clients/python/src/mxgateway/generated/mxaccess_gateway_pb2.py @@ -26,7 +26,7 @@ from google.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x16mxaccess_gateway.proto\x12\x13mxaccess_gateway.v1\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\x9f\x01\n\x12OpenSessionRequest\x12\x19\n\x11requested_backend\x18\x01 \x01(\t\x12\x1b\n\x13\x63lient_session_name\x18\x02 \x01(\t\x12\x1d\n\x15\x63lient_correlation_id\x18\x03 \x01(\t\x12\x32\n\x0f\x63ommand_timeout\x18\x04 \x01(\x0b\x32\x19.google.protobuf.Duration\"\xaa\x02\n\x10OpenSessionReply\x12\x12\n\nsession_id\x18\x01 \x01(\t\x12\x14\n\x0c\x62\x61\x63kend_name\x18\x02 \x01(\t\x12\x19\n\x11worker_process_id\x18\x03 \x01(\x05\x12\x1f\n\x17worker_protocol_version\x18\x04 \x01(\r\x12\x14\n\x0c\x63\x61pabilities\x18\x05 \x03(\t\x12:\n\x17\x64\x65\x66\x61ult_command_timeout\x18\x06 \x01(\x0b\x32\x19.google.protobuf.Duration\x12<\n\x0fprotocol_status\x18\x07 \x01(\x0b\x32#.mxaccess_gateway.v1.ProtocolStatus\x12 \n\x18gateway_protocol_version\x18\x08 \x01(\r\"H\n\x13\x43loseSessionRequest\x12\x12\n\nsession_id\x18\x01 \x01(\t\x12\x1d\n\x15\x63lient_correlation_id\x18\x02 \x01(\t\"\x9d\x01\n\x11\x43loseSessionReply\x12\x12\n\nsession_id\x18\x01 \x01(\t\x12\x36\n\x0b\x66inal_state\x18\x02 \x01(\x0e\x32!.mxaccess_gateway.v1.SessionState\x12<\n\x0fprotocol_status\x18\x03 \x01(\x0b\x32#.mxaccess_gateway.v1.ProtocolStatus\"H\n\x13StreamEventsRequest\x12\x12\n\nsession_id\x18\x01 \x01(\t\x12\x1d\n\x15\x61\x66ter_worker_sequence\x18\x02 \x01(\x04\"v\n\x10MxCommandRequest\x12\x12\n\nsession_id\x18\x01 \x01(\t\x12\x1d\n\x15\x63lient_correlation_id\x18\x02 \x01(\t\x12/\n\x07\x63ommand\x18\x03 \x01(\x0b\x32\x1e.mxaccess_gateway.v1.MxCommand\"\xa2\x0c\n\tMxCommand\x12\x30\n\x04kind\x18\x01 \x01(\x0e\x32\".mxaccess_gateway.v1.MxCommandKind\x12\x38\n\x08register\x18\n \x01(\x0b\x32$.mxaccess_gateway.v1.RegisterCommandH\x00\x12<\n\nunregister\x18\x0b \x01(\x0b\x32&.mxaccess_gateway.v1.UnregisterCommandH\x00\x12\x37\n\x08\x61\x64\x64_item\x18\x0c \x01(\x0b\x32#.mxaccess_gateway.v1.AddItemCommandH\x00\x12\x39\n\tadd_item2\x18\r \x01(\x0b\x32$.mxaccess_gateway.v1.AddItem2CommandH\x00\x12=\n\x0bremove_item\x18\x0e \x01(\x0b\x32&.mxaccess_gateway.v1.RemoveItemCommandH\x00\x12\x34\n\x06\x61\x64vise\x18\x0f \x01(\x0b\x32\".mxaccess_gateway.v1.AdviseCommandH\x00\x12\x39\n\tun_advise\x18\x10 \x01(\x0b\x32$.mxaccess_gateway.v1.UnAdviseCommandH\x00\x12K\n\x12\x61\x64vise_supervisory\x18\x11 \x01(\x0b\x32-.mxaccess_gateway.v1.AdviseSupervisoryCommandH\x00\x12H\n\x11\x61\x64\x64_buffered_item\x18\x12 \x01(\x0b\x32+.mxaccess_gateway.v1.AddBufferedItemCommandH\x00\x12]\n\x1cset_buffered_update_interval\x18\x13 \x01(\x0b\x32\x35.mxaccess_gateway.v1.SetBufferedUpdateIntervalCommandH\x00\x12\x36\n\x07suspend\x18\x14 \x01(\x0b\x32#.mxaccess_gateway.v1.SuspendCommandH\x00\x12\x38\n\x08\x61\x63tivate\x18\x15 \x01(\x0b\x32$.mxaccess_gateway.v1.ActivateCommandH\x00\x12\x32\n\x05write\x18\x16 \x01(\x0b\x32!.mxaccess_gateway.v1.WriteCommandH\x00\x12\x34\n\x06write2\x18\x17 \x01(\x0b\x32\".mxaccess_gateway.v1.Write2CommandH\x00\x12\x41\n\rwrite_secured\x18\x18 \x01(\x0b\x32(.mxaccess_gateway.v1.WriteSecuredCommandH\x00\x12\x43\n\x0ewrite_secured2\x18\x19 \x01(\x0b\x32).mxaccess_gateway.v1.WriteSecured2CommandH\x00\x12I\n\x11\x61uthenticate_user\x18\x1a \x01(\x0b\x32,.mxaccess_gateway.v1.AuthenticateUserCommandH\x00\x12M\n\x14\x61rchestra_user_to_id\x18\x1b \x01(\x0b\x32-.mxaccess_gateway.v1.ArchestrAUserToIdCommandH\x00\x12\x30\n\x04ping\x18\x64 \x01(\x0b\x32 .mxaccess_gateway.v1.PingCommandH\x00\x12H\n\x11get_session_state\x18\x65 \x01(\x0b\x32+.mxaccess_gateway.v1.GetSessionStateCommandH\x00\x12\x44\n\x0fget_worker_info\x18\x66 \x01(\x0b\x32).mxaccess_gateway.v1.GetWorkerInfoCommandH\x00\x12?\n\x0c\x64rain_events\x18g \x01(\x0b\x32\'.mxaccess_gateway.v1.DrainEventsCommandH\x00\x12\x45\n\x0fshutdown_worker\x18h \x01(\x0b\x32*.mxaccess_gateway.v1.ShutdownWorkerCommandH\x00\x42\t\n\x07payload\"&\n\x0fRegisterCommand\x12\x13\n\x0b\x63lient_name\x18\x01 \x01(\t\"*\n\x11UnregisterCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\"@\n\x0e\x41\x64\x64ItemCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x17\n\x0fitem_definition\x18\x02 \x01(\t\"W\n\x0f\x41\x64\x64Item2Command\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x17\n\x0fitem_definition\x18\x02 \x01(\t\x12\x14\n\x0citem_context\x18\x03 \x01(\t\"?\n\x11RemoveItemCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x13\n\x0bitem_handle\x18\x02 \x01(\x05\";\n\rAdviseCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x13\n\x0bitem_handle\x18\x02 \x01(\x05\"=\n\x0fUnAdviseCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x13\n\x0bitem_handle\x18\x02 \x01(\x05\"F\n\x18\x41\x64viseSupervisoryCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x13\n\x0bitem_handle\x18\x02 \x01(\x05\"^\n\x16\x41\x64\x64\x42ufferedItemCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x17\n\x0fitem_definition\x18\x02 \x01(\t\x12\x14\n\x0citem_context\x18\x03 \x01(\t\"_\n SetBufferedUpdateIntervalCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12$\n\x1cupdate_interval_milliseconds\x18\x02 \x01(\x05\"<\n\x0eSuspendCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x13\n\x0bitem_handle\x18\x02 \x01(\x05\"=\n\x0f\x41\x63tivateCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x13\n\x0bitem_handle\x18\x02 \x01(\x05\"x\n\x0cWriteCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x13\n\x0bitem_handle\x18\x02 \x01(\x05\x12+\n\x05value\x18\x03 \x01(\x0b\x32\x1c.mxaccess_gateway.v1.MxValue\x12\x0f\n\x07user_id\x18\x04 \x01(\x05\"\xb0\x01\n\rWrite2Command\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x13\n\x0bitem_handle\x18\x02 \x01(\x05\x12+\n\x05value\x18\x03 \x01(\x0b\x32\x1c.mxaccess_gateway.v1.MxValue\x12\x35\n\x0ftimestamp_value\x18\x04 \x01(\x0b\x32\x1c.mxaccess_gateway.v1.MxValue\x12\x0f\n\x07user_id\x18\x05 \x01(\x05\"\xa1\x01\n\x13WriteSecuredCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x13\n\x0bitem_handle\x18\x02 \x01(\x05\x12\x17\n\x0f\x63urrent_user_id\x18\x03 \x01(\x05\x12\x18\n\x10verifier_user_id\x18\x04 \x01(\x05\x12+\n\x05value\x18\x05 \x01(\x0b\x32\x1c.mxaccess_gateway.v1.MxValue\"\xd9\x01\n\x14WriteSecured2Command\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x13\n\x0bitem_handle\x18\x02 \x01(\x05\x12\x17\n\x0f\x63urrent_user_id\x18\x03 \x01(\x05\x12\x18\n\x10verifier_user_id\x18\x04 \x01(\x05\x12+\n\x05value\x18\x05 \x01(\x0b\x32\x1c.mxaccess_gateway.v1.MxValue\x12\x35\n\x0ftimestamp_value\x18\x06 \x01(\x0b\x32\x1c.mxaccess_gateway.v1.MxValue\"c\n\x17\x41uthenticateUserCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x13\n\x0bverify_user\x18\x02 \x01(\t\x12\x1c\n\x14verify_user_password\x18\x03 \x01(\t\"G\n\x18\x41rchestrAUserToIdCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x14\n\x0cuser_id_guid\x18\x02 \x01(\t\"\x1e\n\x0bPingCommand\x12\x0f\n\x07message\x18\x01 \x01(\t\"\x18\n\x16GetSessionStateCommand\"\x16\n\x14GetWorkerInfoCommand\"(\n\x12\x44rainEventsCommand\x12\x12\n\nmax_events\x18\x01 \x01(\r\"H\n\x15ShutdownWorkerCommand\x12/\n\x0cgrace_period\x18\x01 \x01(\x0b\x32\x19.google.protobuf.Duration\"\x90\x08\n\x0eMxCommandReply\x12\x12\n\nsession_id\x18\x01 \x01(\t\x12\x16\n\x0e\x63orrelation_id\x18\x02 \x01(\t\x12\x30\n\x04kind\x18\x03 \x01(\x0e\x32\".mxaccess_gateway.v1.MxCommandKind\x12<\n\x0fprotocol_status\x18\x04 \x01(\x0b\x32#.mxaccess_gateway.v1.ProtocolStatus\x12\x14\n\x07hresult\x18\x05 \x01(\x05H\x01\x88\x01\x01\x12\x32\n\x0creturn_value\x18\x06 \x01(\x0b\x32\x1c.mxaccess_gateway.v1.MxValue\x12\x34\n\x08statuses\x18\x07 \x03(\x0b\x32\".mxaccess_gateway.v1.MxStatusProxy\x12\x1a\n\x12\x64iagnostic_message\x18\x08 \x01(\t\x12\x36\n\x08register\x18\x14 \x01(\x0b\x32\".mxaccess_gateway.v1.RegisterReplyH\x00\x12\x35\n\x08\x61\x64\x64_item\x18\x15 \x01(\x0b\x32!.mxaccess_gateway.v1.AddItemReplyH\x00\x12\x37\n\tadd_item2\x18\x16 \x01(\x0b\x32\".mxaccess_gateway.v1.AddItem2ReplyH\x00\x12\x46\n\x11\x61\x64\x64_buffered_item\x18\x17 \x01(\x0b\x32).mxaccess_gateway.v1.AddBufferedItemReplyH\x00\x12\x34\n\x07suspend\x18\x18 \x01(\x0b\x32!.mxaccess_gateway.v1.SuspendReplyH\x00\x12\x36\n\x08\x61\x63tivate\x18\x19 \x01(\x0b\x32\".mxaccess_gateway.v1.ActivateReplyH\x00\x12G\n\x11\x61uthenticate_user\x18\x1a \x01(\x0b\x32*.mxaccess_gateway.v1.AuthenticateUserReplyH\x00\x12K\n\x14\x61rchestra_user_to_id\x18\x1b \x01(\x0b\x32+.mxaccess_gateway.v1.ArchestrAUserToIdReplyH\x00\x12?\n\rsession_state\x18\x64 \x01(\x0b\x32&.mxaccess_gateway.v1.SessionStateReplyH\x00\x12;\n\x0bworker_info\x18\x65 \x01(\x0b\x32$.mxaccess_gateway.v1.WorkerInfoReplyH\x00\x12=\n\x0c\x64rain_events\x18\x66 \x01(\x0b\x32%.mxaccess_gateway.v1.DrainEventsReplyH\x00\x42\t\n\x07payloadB\n\n\x08_hresult\"&\n\rRegisterReply\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\"#\n\x0c\x41\x64\x64ItemReply\x12\x13\n\x0bitem_handle\x18\x01 \x01(\x05\"$\n\rAddItem2Reply\x12\x13\n\x0bitem_handle\x18\x01 \x01(\x05\"+\n\x14\x41\x64\x64\x42ufferedItemReply\x12\x13\n\x0bitem_handle\x18\x01 \x01(\x05\"B\n\x0cSuspendReply\x12\x32\n\x06status\x18\x01 \x01(\x0b\x32\".mxaccess_gateway.v1.MxStatusProxy\"C\n\rActivateReply\x12\x32\n\x06status\x18\x01 \x01(\x0b\x32\".mxaccess_gateway.v1.MxStatusProxy\"(\n\x15\x41uthenticateUserReply\x12\x0f\n\x07user_id\x18\x01 \x01(\x05\")\n\x16\x41rchestrAUserToIdReply\x12\x0f\n\x07user_id\x18\x01 \x01(\x05\"E\n\x11SessionStateReply\x12\x30\n\x05state\x18\x01 \x01(\x0e\x32!.mxaccess_gateway.v1.SessionState\"u\n\x0fWorkerInfoReply\x12\x19\n\x11worker_process_id\x18\x01 \x01(\x05\x12\x16\n\x0eworker_version\x18\x02 \x01(\t\x12\x17\n\x0fmxaccess_progid\x18\x03 \x01(\t\x12\x16\n\x0emxaccess_clsid\x18\x04 \x01(\t\"@\n\x10\x44rainEventsReply\x12,\n\x06\x65vents\x18\x01 \x03(\x0b\x32\x1c.mxaccess_gateway.v1.MxEvent\"\x9b\x06\n\x07MxEvent\x12\x32\n\x06\x66\x61mily\x18\x01 \x01(\x0e\x32\".mxaccess_gateway.v1.MxEventFamily\x12\x12\n\nsession_id\x18\x02 \x01(\t\x12\x15\n\rserver_handle\x18\x03 \x01(\x05\x12\x13\n\x0bitem_handle\x18\x04 \x01(\x05\x12+\n\x05value\x18\x05 \x01(\x0b\x32\x1c.mxaccess_gateway.v1.MxValue\x12\x0f\n\x07quality\x18\x06 \x01(\x05\x12\x34\n\x10source_timestamp\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x34\n\x08statuses\x18\x08 \x03(\x0b\x32\".mxaccess_gateway.v1.MxStatusProxy\x12\x17\n\x0fworker_sequence\x18\t \x01(\x04\x12\x34\n\x10worker_timestamp\x18\n \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12=\n\x19gateway_receive_timestamp\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x14\n\x07hresult\x18\x0c \x01(\x05H\x01\x88\x01\x01\x12\x12\n\nraw_status\x18\r \x01(\t\x12@\n\x0eon_data_change\x18\x14 \x01(\x0b\x32&.mxaccess_gateway.v1.OnDataChangeEventH\x00\x12\x46\n\x11on_write_complete\x18\x15 \x01(\x0b\x32).mxaccess_gateway.v1.OnWriteCompleteEventH\x00\x12I\n\x12operation_complete\x18\x16 \x01(\x0b\x32+.mxaccess_gateway.v1.OperationCompleteEventH\x00\x12Q\n\x17on_buffered_data_change\x18\x17 \x01(\x0b\x32..mxaccess_gateway.v1.OnBufferedDataChangeEventH\x00\x42\x06\n\x04\x62odyB\n\n\x08_hresult\"\x13\n\x11OnDataChangeEvent\"\x16\n\x14OnWriteCompleteEvent\"\x18\n\x16OperationCompleteEvent\"\xd4\x01\n\x19OnBufferedDataChangeEvent\x12\x32\n\tdata_type\x18\x01 \x01(\x0e\x32\x1f.mxaccess_gateway.v1.MxDataType\x12\x34\n\x0equality_values\x18\x02 \x01(\x0b\x32\x1c.mxaccess_gateway.v1.MxArray\x12\x36\n\x10timestamp_values\x18\x03 \x01(\x0b\x32\x1c.mxaccess_gateway.v1.MxArray\x12\x15\n\rraw_data_type\x18\x04 \x01(\x05\"\xeb\x01\n\rMxStatusProxy\x12\x0f\n\x07success\x18\x01 \x01(\x05\x12\x37\n\x08\x63\x61tegory\x18\x02 \x01(\x0e\x32%.mxaccess_gateway.v1.MxStatusCategory\x12\x38\n\x0b\x64\x65tected_by\x18\x03 \x01(\x0e\x32#.mxaccess_gateway.v1.MxStatusSource\x12\x0e\n\x06\x64\x65tail\x18\x04 \x01(\x05\x12\x14\n\x0craw_category\x18\x05 \x01(\x05\x12\x17\n\x0fraw_detected_by\x18\x06 \x01(\x05\x12\x17\n\x0f\x64iagnostic_text\x18\x07 \x01(\t\"\xa7\x03\n\x07MxValue\x12\x32\n\tdata_type\x18\x01 \x01(\x0e\x32\x1f.mxaccess_gateway.v1.MxDataType\x12\x14\n\x0cvariant_type\x18\x02 \x01(\t\x12\x0f\n\x07is_null\x18\x03 \x01(\x08\x12\x16\n\x0eraw_diagnostic\x18\x04 \x01(\t\x12\x15\n\rraw_data_type\x18\x05 \x01(\x05\x12\x14\n\nbool_value\x18\n \x01(\x08H\x00\x12\x15\n\x0bint32_value\x18\x0b \x01(\x05H\x00\x12\x15\n\x0bint64_value\x18\x0c \x01(\x03H\x00\x12\x15\n\x0b\x66loat_value\x18\r \x01(\x02H\x00\x12\x16\n\x0c\x64ouble_value\x18\x0e \x01(\x01H\x00\x12\x16\n\x0cstring_value\x18\x0f \x01(\tH\x00\x12\x35\n\x0ftimestamp_value\x18\x10 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00\x12\x33\n\x0b\x61rray_value\x18\x11 \x01(\x0b\x32\x1c.mxaccess_gateway.v1.MxArrayH\x00\x12\x13\n\traw_value\x18\x12 \x01(\x0cH\x00\x42\x06\n\x04kind\"\xfe\x04\n\x07MxArray\x12:\n\x11\x65lement_data_type\x18\x01 \x01(\x0e\x32\x1f.mxaccess_gateway.v1.MxDataType\x12\x14\n\x0cvariant_type\x18\x02 \x01(\t\x12\x12\n\ndimensions\x18\x03 \x03(\r\x12\x16\n\x0eraw_diagnostic\x18\x04 \x01(\t\x12\x1d\n\x15raw_element_data_type\x18\x05 \x01(\x05\x12\x35\n\x0b\x62ool_values\x18\n \x01(\x0b\x32\x1e.mxaccess_gateway.v1.BoolArrayH\x00\x12\x37\n\x0cint32_values\x18\x0b \x01(\x0b\x32\x1f.mxaccess_gateway.v1.Int32ArrayH\x00\x12\x37\n\x0cint64_values\x18\x0c \x01(\x0b\x32\x1f.mxaccess_gateway.v1.Int64ArrayH\x00\x12\x37\n\x0c\x66loat_values\x18\r \x01(\x0b\x32\x1f.mxaccess_gateway.v1.FloatArrayH\x00\x12\x39\n\rdouble_values\x18\x0e \x01(\x0b\x32 .mxaccess_gateway.v1.DoubleArrayH\x00\x12\x39\n\rstring_values\x18\x0f \x01(\x0b\x32 .mxaccess_gateway.v1.StringArrayH\x00\x12?\n\x10timestamp_values\x18\x10 \x01(\x0b\x32#.mxaccess_gateway.v1.TimestampArrayH\x00\x12\x33\n\nraw_values\x18\x11 \x01(\x0b\x32\x1d.mxaccess_gateway.v1.RawArrayH\x00\x42\x08\n\x06values\"\x1b\n\tBoolArray\x12\x0e\n\x06values\x18\x01 \x03(\x08\"\x1c\n\nInt32Array\x12\x0e\n\x06values\x18\x01 \x03(\x05\"\x1c\n\nInt64Array\x12\x0e\n\x06values\x18\x01 \x03(\x03\"\x1c\n\nFloatArray\x12\x0e\n\x06values\x18\x01 \x03(\x02\"\x1d\n\x0b\x44oubleArray\x12\x0e\n\x06values\x18\x01 \x03(\x01\"\x1d\n\x0bStringArray\x12\x0e\n\x06values\x18\x01 \x03(\t\"<\n\x0eTimestampArray\x12*\n\x06values\x18\x01 \x03(\x0b\x32\x1a.google.protobuf.Timestamp\"\x1a\n\x08RawArray\x12\x0e\n\x06values\x18\x01 \x03(\x0c\"X\n\x0eProtocolStatus\x12\x35\n\x04\x63ode\x18\x01 \x01(\x0e\x32\'.mxaccess_gateway.v1.ProtocolStatusCode\x12\x0f\n\x07message\x18\x02 \x01(\t*\xbf\x06\n\rMxCommandKind\x12\x1f\n\x1bMX_COMMAND_KIND_UNSPECIFIED\x10\x00\x12\x1c\n\x18MX_COMMAND_KIND_REGISTER\x10\x01\x12\x1e\n\x1aMX_COMMAND_KIND_UNREGISTER\x10\x02\x12\x1c\n\x18MX_COMMAND_KIND_ADD_ITEM\x10\x03\x12\x1d\n\x19MX_COMMAND_KIND_ADD_ITEM2\x10\x04\x12\x1f\n\x1bMX_COMMAND_KIND_REMOVE_ITEM\x10\x05\x12\x1a\n\x16MX_COMMAND_KIND_ADVISE\x10\x06\x12\x1d\n\x19MX_COMMAND_KIND_UN_ADVISE\x10\x07\x12&\n\"MX_COMMAND_KIND_ADVISE_SUPERVISORY\x10\x08\x12%\n!MX_COMMAND_KIND_ADD_BUFFERED_ITEM\x10\t\x12\x30\n,MX_COMMAND_KIND_SET_BUFFERED_UPDATE_INTERVAL\x10\n\x12\x1b\n\x17MX_COMMAND_KIND_SUSPEND\x10\x0b\x12\x1c\n\x18MX_COMMAND_KIND_ACTIVATE\x10\x0c\x12\x19\n\x15MX_COMMAND_KIND_WRITE\x10\r\x12\x1a\n\x16MX_COMMAND_KIND_WRITE2\x10\x0e\x12!\n\x1dMX_COMMAND_KIND_WRITE_SECURED\x10\x0f\x12\"\n\x1eMX_COMMAND_KIND_WRITE_SECURED2\x10\x10\x12%\n!MX_COMMAND_KIND_AUTHENTICATE_USER\x10\x11\x12(\n$MX_COMMAND_KIND_ARCHESTRA_USER_TO_ID\x10\x12\x12\x18\n\x14MX_COMMAND_KIND_PING\x10\x64\x12%\n!MX_COMMAND_KIND_GET_SESSION_STATE\x10\x65\x12#\n\x1fMX_COMMAND_KIND_GET_WORKER_INFO\x10\x66\x12 \n\x1cMX_COMMAND_KIND_DRAIN_EVENTS\x10g\x12#\n\x1fMX_COMMAND_KIND_SHUTDOWN_WORKER\x10h*\xd0\x01\n\rMxEventFamily\x12\x1f\n\x1bMX_EVENT_FAMILY_UNSPECIFIED\x10\x00\x12\"\n\x1eMX_EVENT_FAMILY_ON_DATA_CHANGE\x10\x01\x12%\n!MX_EVENT_FAMILY_ON_WRITE_COMPLETE\x10\x02\x12&\n\"MX_EVENT_FAMILY_OPERATION_COMPLETE\x10\x03\x12+\n\'MX_EVENT_FAMILY_ON_BUFFERED_DATA_CHANGE\x10\x04*\xa5\x03\n\x10MxStatusCategory\x12\"\n\x1eMX_STATUS_CATEGORY_UNSPECIFIED\x10\x00\x12\x1e\n\x1aMX_STATUS_CATEGORY_UNKNOWN\x10\x01\x12\x19\n\x15MX_STATUS_CATEGORY_OK\x10\x02\x12\x1e\n\x1aMX_STATUS_CATEGORY_PENDING\x10\x03\x12\x1e\n\x1aMX_STATUS_CATEGORY_WARNING\x10\x04\x12*\n&MX_STATUS_CATEGORY_COMMUNICATION_ERROR\x10\x05\x12*\n&MX_STATUS_CATEGORY_CONFIGURATION_ERROR\x10\x06\x12(\n$MX_STATUS_CATEGORY_OPERATIONAL_ERROR\x10\x07\x12%\n!MX_STATUS_CATEGORY_SECURITY_ERROR\x10\x08\x12%\n!MX_STATUS_CATEGORY_SOFTWARE_ERROR\x10\t\x12\"\n\x1eMX_STATUS_CATEGORY_OTHER_ERROR\x10\n*\xca\x02\n\x0eMxStatusSource\x12 \n\x1cMX_STATUS_SOURCE_UNSPECIFIED\x10\x00\x12\x1c\n\x18MX_STATUS_SOURCE_UNKNOWN\x10\x01\x12#\n\x1fMX_STATUS_SOURCE_REQUESTING_LMX\x10\x02\x12#\n\x1fMX_STATUS_SOURCE_RESPONDING_LMX\x10\x03\x12#\n\x1fMX_STATUS_SOURCE_REQUESTING_NMX\x10\x04\x12#\n\x1fMX_STATUS_SOURCE_RESPONDING_NMX\x10\x05\x12\x31\n-MX_STATUS_SOURCE_REQUESTING_AUTOMATION_OBJECT\x10\x06\x12\x31\n-MX_STATUS_SOURCE_RESPONDING_AUTOMATION_OBJECT\x10\x07*\xdd\x04\n\nMxDataType\x12\x1c\n\x18MX_DATA_TYPE_UNSPECIFIED\x10\x00\x12\x18\n\x14MX_DATA_TYPE_UNKNOWN\x10\x01\x12\x18\n\x14MX_DATA_TYPE_NO_DATA\x10\x02\x12\x18\n\x14MX_DATA_TYPE_BOOLEAN\x10\x03\x12\x18\n\x14MX_DATA_TYPE_INTEGER\x10\x04\x12\x16\n\x12MX_DATA_TYPE_FLOAT\x10\x05\x12\x17\n\x13MX_DATA_TYPE_DOUBLE\x10\x06\x12\x17\n\x13MX_DATA_TYPE_STRING\x10\x07\x12\x15\n\x11MX_DATA_TYPE_TIME\x10\x08\x12\x1d\n\x19MX_DATA_TYPE_ELAPSED_TIME\x10\t\x12\x1f\n\x1bMX_DATA_TYPE_REFERENCE_TYPE\x10\n\x12\x1c\n\x18MX_DATA_TYPE_STATUS_TYPE\x10\x0b\x12\x15\n\x11MX_DATA_TYPE_ENUM\x10\x0c\x12-\n)MX_DATA_TYPE_SECURITY_CLASSIFICATION_ENUM\x10\r\x12\"\n\x1eMX_DATA_TYPE_DATA_QUALITY_TYPE\x10\x0e\x12\x1f\n\x1bMX_DATA_TYPE_QUALIFIED_ENUM\x10\x0f\x12!\n\x1dMX_DATA_TYPE_QUALIFIED_STRUCT\x10\x10\x12)\n%MX_DATA_TYPE_INTERNATIONALIZED_STRING\x10\x11\x12\x1b\n\x17MX_DATA_TYPE_BIG_STRING\x10\x12\x12\x14\n\x10MX_DATA_TYPE_END\x10\x13*\xa3\x03\n\x12ProtocolStatusCode\x12$\n PROTOCOL_STATUS_CODE_UNSPECIFIED\x10\x00\x12\x1b\n\x17PROTOCOL_STATUS_CODE_OK\x10\x01\x12(\n$PROTOCOL_STATUS_CODE_INVALID_REQUEST\x10\x02\x12*\n&PROTOCOL_STATUS_CODE_SESSION_NOT_FOUND\x10\x03\x12*\n&PROTOCOL_STATUS_CODE_SESSION_NOT_READY\x10\x04\x12+\n\'PROTOCOL_STATUS_CODE_WORKER_UNAVAILABLE\x10\x05\x12 \n\x1cPROTOCOL_STATUS_CODE_TIMEOUT\x10\x06\x12!\n\x1dPROTOCOL_STATUS_CODE_CANCELED\x10\x07\x12+\n\'PROTOCOL_STATUS_CODE_PROTOCOL_VIOLATION\x10\x08\x12)\n%PROTOCOL_STATUS_CODE_MXACCESS_FAILURE\x10\t*\xbf\x02\n\x0cSessionState\x12\x1d\n\x19SESSION_STATE_UNSPECIFIED\x10\x00\x12\x1a\n\x16SESSION_STATE_CREATING\x10\x01\x12!\n\x1dSESSION_STATE_STARTING_WORKER\x10\x02\x12\"\n\x1eSESSION_STATE_WAITING_FOR_PIPE\x10\x03\x12\x1d\n\x19SESSION_STATE_HANDSHAKING\x10\x04\x12%\n!SESSION_STATE_INITIALIZING_WORKER\x10\x05\x12\x17\n\x13SESSION_STATE_READY\x10\x06\x12\x19\n\x15SESSION_STATE_CLOSING\x10\x07\x12\x18\n\x14SESSION_STATE_CLOSED\x10\x08\x12\x19\n\x15SESSION_STATE_FAULTED\x10\t2\x82\x03\n\x0fMxAccessGateway\x12]\n\x0bOpenSession\x12\'.mxaccess_gateway.v1.OpenSessionRequest\x1a%.mxaccess_gateway.v1.OpenSessionReply\x12`\n\x0c\x43loseSession\x12(.mxaccess_gateway.v1.CloseSessionRequest\x1a&.mxaccess_gateway.v1.CloseSessionReply\x12T\n\x06Invoke\x12%.mxaccess_gateway.v1.MxCommandRequest\x1a#.mxaccess_gateway.v1.MxCommandReply\x12X\n\x0cStreamEvents\x12(.mxaccess_gateway.v1.StreamEventsRequest\x1a\x1c.mxaccess_gateway.v1.MxEvent0\x01\x42\x1c\xaa\x02\x19MxGateway.Contracts.Protob\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x16mxaccess_gateway.proto\x12\x13mxaccess_gateway.v1\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\x9f\x01\n\x12OpenSessionRequest\x12\x19\n\x11requested_backend\x18\x01 \x01(\t\x12\x1b\n\x13\x63lient_session_name\x18\x02 \x01(\t\x12\x1d\n\x15\x63lient_correlation_id\x18\x03 \x01(\t\x12\x32\n\x0f\x63ommand_timeout\x18\x04 \x01(\x0b\x32\x19.google.protobuf.Duration\"\xaa\x02\n\x10OpenSessionReply\x12\x12\n\nsession_id\x18\x01 \x01(\t\x12\x14\n\x0c\x62\x61\x63kend_name\x18\x02 \x01(\t\x12\x19\n\x11worker_process_id\x18\x03 \x01(\x05\x12\x1f\n\x17worker_protocol_version\x18\x04 \x01(\r\x12\x14\n\x0c\x63\x61pabilities\x18\x05 \x03(\t\x12:\n\x17\x64\x65\x66\x61ult_command_timeout\x18\x06 \x01(\x0b\x32\x19.google.protobuf.Duration\x12<\n\x0fprotocol_status\x18\x07 \x01(\x0b\x32#.mxaccess_gateway.v1.ProtocolStatus\x12 \n\x18gateway_protocol_version\x18\x08 \x01(\r\"H\n\x13\x43loseSessionRequest\x12\x12\n\nsession_id\x18\x01 \x01(\t\x12\x1d\n\x15\x63lient_correlation_id\x18\x02 \x01(\t\"\x9d\x01\n\x11\x43loseSessionReply\x12\x12\n\nsession_id\x18\x01 \x01(\t\x12\x36\n\x0b\x66inal_state\x18\x02 \x01(\x0e\x32!.mxaccess_gateway.v1.SessionState\x12<\n\x0fprotocol_status\x18\x03 \x01(\x0b\x32#.mxaccess_gateway.v1.ProtocolStatus\"H\n\x13StreamEventsRequest\x12\x12\n\nsession_id\x18\x01 \x01(\t\x12\x1d\n\x15\x61\x66ter_worker_sequence\x18\x02 \x01(\x04\"v\n\x10MxCommandRequest\x12\x12\n\nsession_id\x18\x01 \x01(\t\x12\x1d\n\x15\x63lient_correlation_id\x18\x02 \x01(\t\x12/\n\x07\x63ommand\x18\x03 \x01(\x0b\x32\x1e.mxaccess_gateway.v1.MxCommand\"\xcf\x0f\n\tMxCommand\x12\x30\n\x04kind\x18\x01 \x01(\x0e\x32\".mxaccess_gateway.v1.MxCommandKind\x12\x38\n\x08register\x18\n \x01(\x0b\x32$.mxaccess_gateway.v1.RegisterCommandH\x00\x12<\n\nunregister\x18\x0b \x01(\x0b\x32&.mxaccess_gateway.v1.UnregisterCommandH\x00\x12\x37\n\x08\x61\x64\x64_item\x18\x0c \x01(\x0b\x32#.mxaccess_gateway.v1.AddItemCommandH\x00\x12\x39\n\tadd_item2\x18\r \x01(\x0b\x32$.mxaccess_gateway.v1.AddItem2CommandH\x00\x12=\n\x0bremove_item\x18\x0e \x01(\x0b\x32&.mxaccess_gateway.v1.RemoveItemCommandH\x00\x12\x34\n\x06\x61\x64vise\x18\x0f \x01(\x0b\x32\".mxaccess_gateway.v1.AdviseCommandH\x00\x12\x39\n\tun_advise\x18\x10 \x01(\x0b\x32$.mxaccess_gateway.v1.UnAdviseCommandH\x00\x12K\n\x12\x61\x64vise_supervisory\x18\x11 \x01(\x0b\x32-.mxaccess_gateway.v1.AdviseSupervisoryCommandH\x00\x12H\n\x11\x61\x64\x64_buffered_item\x18\x12 \x01(\x0b\x32+.mxaccess_gateway.v1.AddBufferedItemCommandH\x00\x12]\n\x1cset_buffered_update_interval\x18\x13 \x01(\x0b\x32\x35.mxaccess_gateway.v1.SetBufferedUpdateIntervalCommandH\x00\x12\x36\n\x07suspend\x18\x14 \x01(\x0b\x32#.mxaccess_gateway.v1.SuspendCommandH\x00\x12\x38\n\x08\x61\x63tivate\x18\x15 \x01(\x0b\x32$.mxaccess_gateway.v1.ActivateCommandH\x00\x12\x32\n\x05write\x18\x16 \x01(\x0b\x32!.mxaccess_gateway.v1.WriteCommandH\x00\x12\x34\n\x06write2\x18\x17 \x01(\x0b\x32\".mxaccess_gateway.v1.Write2CommandH\x00\x12\x41\n\rwrite_secured\x18\x18 \x01(\x0b\x32(.mxaccess_gateway.v1.WriteSecuredCommandH\x00\x12\x43\n\x0ewrite_secured2\x18\x19 \x01(\x0b\x32).mxaccess_gateway.v1.WriteSecured2CommandH\x00\x12I\n\x11\x61uthenticate_user\x18\x1a \x01(\x0b\x32,.mxaccess_gateway.v1.AuthenticateUserCommandH\x00\x12M\n\x14\x61rchestra_user_to_id\x18\x1b \x01(\x0b\x32-.mxaccess_gateway.v1.ArchestrAUserToIdCommandH\x00\x12@\n\radd_item_bulk\x18\x1c \x01(\x0b\x32\'.mxaccess_gateway.v1.AddItemBulkCommandH\x00\x12\x46\n\x10\x61\x64vise_item_bulk\x18\x1d \x01(\x0b\x32*.mxaccess_gateway.v1.AdviseItemBulkCommandH\x00\x12\x46\n\x10remove_item_bulk\x18\x1e \x01(\x0b\x32*.mxaccess_gateway.v1.RemoveItemBulkCommandH\x00\x12K\n\x13un_advise_item_bulk\x18\x1f \x01(\x0b\x32,.mxaccess_gateway.v1.UnAdviseItemBulkCommandH\x00\x12\x43\n\x0esubscribe_bulk\x18 \x01(\x0b\x32).mxaccess_gateway.v1.SubscribeBulkCommandH\x00\x12G\n\x10unsubscribe_bulk\x18! \x01(\x0b\x32+.mxaccess_gateway.v1.UnsubscribeBulkCommandH\x00\x12\x30\n\x04ping\x18\x64 \x01(\x0b\x32 .mxaccess_gateway.v1.PingCommandH\x00\x12H\n\x11get_session_state\x18\x65 \x01(\x0b\x32+.mxaccess_gateway.v1.GetSessionStateCommandH\x00\x12\x44\n\x0fget_worker_info\x18\x66 \x01(\x0b\x32).mxaccess_gateway.v1.GetWorkerInfoCommandH\x00\x12?\n\x0c\x64rain_events\x18g \x01(\x0b\x32\'.mxaccess_gateway.v1.DrainEventsCommandH\x00\x12\x45\n\x0fshutdown_worker\x18h \x01(\x0b\x32*.mxaccess_gateway.v1.ShutdownWorkerCommandH\x00\x42\t\n\x07payload\"&\n\x0fRegisterCommand\x12\x13\n\x0b\x63lient_name\x18\x01 \x01(\t\"*\n\x11UnregisterCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\"@\n\x0e\x41\x64\x64ItemCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x17\n\x0fitem_definition\x18\x02 \x01(\t\"W\n\x0f\x41\x64\x64Item2Command\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x17\n\x0fitem_definition\x18\x02 \x01(\t\x12\x14\n\x0citem_context\x18\x03 \x01(\t\"?\n\x11RemoveItemCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x13\n\x0bitem_handle\x18\x02 \x01(\x05\";\n\rAdviseCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x13\n\x0bitem_handle\x18\x02 \x01(\x05\"=\n\x0fUnAdviseCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x13\n\x0bitem_handle\x18\x02 \x01(\x05\"F\n\x18\x41\x64viseSupervisoryCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x13\n\x0bitem_handle\x18\x02 \x01(\x05\"^\n\x16\x41\x64\x64\x42ufferedItemCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x17\n\x0fitem_definition\x18\x02 \x01(\t\x12\x14\n\x0citem_context\x18\x03 \x01(\t\"_\n SetBufferedUpdateIntervalCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12$\n\x1cupdate_interval_milliseconds\x18\x02 \x01(\x05\"<\n\x0eSuspendCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x13\n\x0bitem_handle\x18\x02 \x01(\x05\"=\n\x0f\x41\x63tivateCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x13\n\x0bitem_handle\x18\x02 \x01(\x05\"x\n\x0cWriteCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x13\n\x0bitem_handle\x18\x02 \x01(\x05\x12+\n\x05value\x18\x03 \x01(\x0b\x32\x1c.mxaccess_gateway.v1.MxValue\x12\x0f\n\x07user_id\x18\x04 \x01(\x05\"\xb0\x01\n\rWrite2Command\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x13\n\x0bitem_handle\x18\x02 \x01(\x05\x12+\n\x05value\x18\x03 \x01(\x0b\x32\x1c.mxaccess_gateway.v1.MxValue\x12\x35\n\x0ftimestamp_value\x18\x04 \x01(\x0b\x32\x1c.mxaccess_gateway.v1.MxValue\x12\x0f\n\x07user_id\x18\x05 \x01(\x05\"\xa1\x01\n\x13WriteSecuredCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x13\n\x0bitem_handle\x18\x02 \x01(\x05\x12\x17\n\x0f\x63urrent_user_id\x18\x03 \x01(\x05\x12\x18\n\x10verifier_user_id\x18\x04 \x01(\x05\x12+\n\x05value\x18\x05 \x01(\x0b\x32\x1c.mxaccess_gateway.v1.MxValue\"\xd9\x01\n\x14WriteSecured2Command\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x13\n\x0bitem_handle\x18\x02 \x01(\x05\x12\x17\n\x0f\x63urrent_user_id\x18\x03 \x01(\x05\x12\x18\n\x10verifier_user_id\x18\x04 \x01(\x05\x12+\n\x05value\x18\x05 \x01(\x0b\x32\x1c.mxaccess_gateway.v1.MxValue\x12\x35\n\x0ftimestamp_value\x18\x06 \x01(\x0b\x32\x1c.mxaccess_gateway.v1.MxValue\"c\n\x17\x41uthenticateUserCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x13\n\x0bverify_user\x18\x02 \x01(\t\x12\x1c\n\x14verify_user_password\x18\x03 \x01(\t\"G\n\x18\x41rchestrAUserToIdCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x14\n\x0cuser_id_guid\x18\x02 \x01(\t\"B\n\x12\x41\x64\x64ItemBulkCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x15\n\rtag_addresses\x18\x02 \x03(\t\"D\n\x15\x41\x64viseItemBulkCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x14\n\x0citem_handles\x18\x02 \x03(\x05\"D\n\x15RemoveItemBulkCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x14\n\x0citem_handles\x18\x02 \x03(\x05\"F\n\x17UnAdviseItemBulkCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x14\n\x0citem_handles\x18\x02 \x03(\x05\"D\n\x14SubscribeBulkCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x15\n\rtag_addresses\x18\x02 \x03(\t\"E\n\x16UnsubscribeBulkCommand\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x14\n\x0citem_handles\x18\x02 \x03(\x05\"\x1e\n\x0bPingCommand\x12\x0f\n\x07message\x18\x01 \x01(\t\"\x18\n\x16GetSessionStateCommand\"\x16\n\x14GetWorkerInfoCommand\"(\n\x12\x44rainEventsCommand\x12\x12\n\nmax_events\x18\x01 \x01(\r\"H\n\x15ShutdownWorkerCommand\x12/\n\x0cgrace_period\x18\x01 \x01(\x0b\x32\x19.google.protobuf.Duration\"\xac\x0b\n\x0eMxCommandReply\x12\x12\n\nsession_id\x18\x01 \x01(\t\x12\x16\n\x0e\x63orrelation_id\x18\x02 \x01(\t\x12\x30\n\x04kind\x18\x03 \x01(\x0e\x32\".mxaccess_gateway.v1.MxCommandKind\x12<\n\x0fprotocol_status\x18\x04 \x01(\x0b\x32#.mxaccess_gateway.v1.ProtocolStatus\x12\x14\n\x07hresult\x18\x05 \x01(\x05H\x01\x88\x01\x01\x12\x32\n\x0creturn_value\x18\x06 \x01(\x0b\x32\x1c.mxaccess_gateway.v1.MxValue\x12\x34\n\x08statuses\x18\x07 \x03(\x0b\x32\".mxaccess_gateway.v1.MxStatusProxy\x12\x1a\n\x12\x64iagnostic_message\x18\x08 \x01(\t\x12\x36\n\x08register\x18\x14 \x01(\x0b\x32\".mxaccess_gateway.v1.RegisterReplyH\x00\x12\x35\n\x08\x61\x64\x64_item\x18\x15 \x01(\x0b\x32!.mxaccess_gateway.v1.AddItemReplyH\x00\x12\x37\n\tadd_item2\x18\x16 \x01(\x0b\x32\".mxaccess_gateway.v1.AddItem2ReplyH\x00\x12\x46\n\x11\x61\x64\x64_buffered_item\x18\x17 \x01(\x0b\x32).mxaccess_gateway.v1.AddBufferedItemReplyH\x00\x12\x34\n\x07suspend\x18\x18 \x01(\x0b\x32!.mxaccess_gateway.v1.SuspendReplyH\x00\x12\x36\n\x08\x61\x63tivate\x18\x19 \x01(\x0b\x32\".mxaccess_gateway.v1.ActivateReplyH\x00\x12G\n\x11\x61uthenticate_user\x18\x1a \x01(\x0b\x32*.mxaccess_gateway.v1.AuthenticateUserReplyH\x00\x12K\n\x14\x61rchestra_user_to_id\x18\x1b \x01(\x0b\x32+.mxaccess_gateway.v1.ArchestrAUserToIdReplyH\x00\x12@\n\radd_item_bulk\x18\x1c \x01(\x0b\x32\'.mxaccess_gateway.v1.BulkSubscribeReplyH\x00\x12\x43\n\x10\x61\x64vise_item_bulk\x18\x1d \x01(\x0b\x32\'.mxaccess_gateway.v1.BulkSubscribeReplyH\x00\x12\x43\n\x10remove_item_bulk\x18\x1e \x01(\x0b\x32\'.mxaccess_gateway.v1.BulkSubscribeReplyH\x00\x12\x46\n\x13un_advise_item_bulk\x18\x1f \x01(\x0b\x32\'.mxaccess_gateway.v1.BulkSubscribeReplyH\x00\x12\x41\n\x0esubscribe_bulk\x18 \x01(\x0b\x32\'.mxaccess_gateway.v1.BulkSubscribeReplyH\x00\x12\x43\n\x10unsubscribe_bulk\x18! \x01(\x0b\x32\'.mxaccess_gateway.v1.BulkSubscribeReplyH\x00\x12?\n\rsession_state\x18\x64 \x01(\x0b\x32&.mxaccess_gateway.v1.SessionStateReplyH\x00\x12;\n\x0bworker_info\x18\x65 \x01(\x0b\x32$.mxaccess_gateway.v1.WorkerInfoReplyH\x00\x12=\n\x0c\x64rain_events\x18\x66 \x01(\x0b\x32%.mxaccess_gateway.v1.DrainEventsReplyH\x00\x42\t\n\x07payloadB\n\n\x08_hresult\"&\n\rRegisterReply\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\"#\n\x0c\x41\x64\x64ItemReply\x12\x13\n\x0bitem_handle\x18\x01 \x01(\x05\"$\n\rAddItem2Reply\x12\x13\n\x0bitem_handle\x18\x01 \x01(\x05\"+\n\x14\x41\x64\x64\x42ufferedItemReply\x12\x13\n\x0bitem_handle\x18\x01 \x01(\x05\"B\n\x0cSuspendReply\x12\x32\n\x06status\x18\x01 \x01(\x0b\x32\".mxaccess_gateway.v1.MxStatusProxy\"C\n\rActivateReply\x12\x32\n\x06status\x18\x01 \x01(\x0b\x32\".mxaccess_gateway.v1.MxStatusProxy\"(\n\x15\x41uthenticateUserReply\x12\x0f\n\x07user_id\x18\x01 \x01(\x05\")\n\x16\x41rchestrAUserToIdReply\x12\x0f\n\x07user_id\x18\x01 \x01(\x05\"\x81\x01\n\x0fSubscribeResult\x12\x15\n\rserver_handle\x18\x01 \x01(\x05\x12\x13\n\x0btag_address\x18\x02 \x01(\t\x12\x13\n\x0bitem_handle\x18\x03 \x01(\x05\x12\x16\n\x0ewas_successful\x18\x04 \x01(\x08\x12\x15\n\rerror_message\x18\x05 \x01(\t\"K\n\x12\x42ulkSubscribeReply\x12\x35\n\x07results\x18\x01 \x03(\x0b\x32$.mxaccess_gateway.v1.SubscribeResult\"E\n\x11SessionStateReply\x12\x30\n\x05state\x18\x01 \x01(\x0e\x32!.mxaccess_gateway.v1.SessionState\"u\n\x0fWorkerInfoReply\x12\x19\n\x11worker_process_id\x18\x01 \x01(\x05\x12\x16\n\x0eworker_version\x18\x02 \x01(\t\x12\x17\n\x0fmxaccess_progid\x18\x03 \x01(\t\x12\x16\n\x0emxaccess_clsid\x18\x04 \x01(\t\"@\n\x10\x44rainEventsReply\x12,\n\x06\x65vents\x18\x01 \x03(\x0b\x32\x1c.mxaccess_gateway.v1.MxEvent\"\x9b\x06\n\x07MxEvent\x12\x32\n\x06\x66\x61mily\x18\x01 \x01(\x0e\x32\".mxaccess_gateway.v1.MxEventFamily\x12\x12\n\nsession_id\x18\x02 \x01(\t\x12\x15\n\rserver_handle\x18\x03 \x01(\x05\x12\x13\n\x0bitem_handle\x18\x04 \x01(\x05\x12+\n\x05value\x18\x05 \x01(\x0b\x32\x1c.mxaccess_gateway.v1.MxValue\x12\x0f\n\x07quality\x18\x06 \x01(\x05\x12\x34\n\x10source_timestamp\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x34\n\x08statuses\x18\x08 \x03(\x0b\x32\".mxaccess_gateway.v1.MxStatusProxy\x12\x17\n\x0fworker_sequence\x18\t \x01(\x04\x12\x34\n\x10worker_timestamp\x18\n \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12=\n\x19gateway_receive_timestamp\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x14\n\x07hresult\x18\x0c \x01(\x05H\x01\x88\x01\x01\x12\x12\n\nraw_status\x18\r \x01(\t\x12@\n\x0eon_data_change\x18\x14 \x01(\x0b\x32&.mxaccess_gateway.v1.OnDataChangeEventH\x00\x12\x46\n\x11on_write_complete\x18\x15 \x01(\x0b\x32).mxaccess_gateway.v1.OnWriteCompleteEventH\x00\x12I\n\x12operation_complete\x18\x16 \x01(\x0b\x32+.mxaccess_gateway.v1.OperationCompleteEventH\x00\x12Q\n\x17on_buffered_data_change\x18\x17 \x01(\x0b\x32..mxaccess_gateway.v1.OnBufferedDataChangeEventH\x00\x42\x06\n\x04\x62odyB\n\n\x08_hresult\"\x13\n\x11OnDataChangeEvent\"\x16\n\x14OnWriteCompleteEvent\"\x18\n\x16OperationCompleteEvent\"\xd4\x01\n\x19OnBufferedDataChangeEvent\x12\x32\n\tdata_type\x18\x01 \x01(\x0e\x32\x1f.mxaccess_gateway.v1.MxDataType\x12\x34\n\x0equality_values\x18\x02 \x01(\x0b\x32\x1c.mxaccess_gateway.v1.MxArray\x12\x36\n\x10timestamp_values\x18\x03 \x01(\x0b\x32\x1c.mxaccess_gateway.v1.MxArray\x12\x15\n\rraw_data_type\x18\x04 \x01(\x05\"\xeb\x01\n\rMxStatusProxy\x12\x0f\n\x07success\x18\x01 \x01(\x05\x12\x37\n\x08\x63\x61tegory\x18\x02 \x01(\x0e\x32%.mxaccess_gateway.v1.MxStatusCategory\x12\x38\n\x0b\x64\x65tected_by\x18\x03 \x01(\x0e\x32#.mxaccess_gateway.v1.MxStatusSource\x12\x0e\n\x06\x64\x65tail\x18\x04 \x01(\x05\x12\x14\n\x0craw_category\x18\x05 \x01(\x05\x12\x17\n\x0fraw_detected_by\x18\x06 \x01(\x05\x12\x17\n\x0f\x64iagnostic_text\x18\x07 \x01(\t\"\xa7\x03\n\x07MxValue\x12\x32\n\tdata_type\x18\x01 \x01(\x0e\x32\x1f.mxaccess_gateway.v1.MxDataType\x12\x14\n\x0cvariant_type\x18\x02 \x01(\t\x12\x0f\n\x07is_null\x18\x03 \x01(\x08\x12\x16\n\x0eraw_diagnostic\x18\x04 \x01(\t\x12\x15\n\rraw_data_type\x18\x05 \x01(\x05\x12\x14\n\nbool_value\x18\n \x01(\x08H\x00\x12\x15\n\x0bint32_value\x18\x0b \x01(\x05H\x00\x12\x15\n\x0bint64_value\x18\x0c \x01(\x03H\x00\x12\x15\n\x0b\x66loat_value\x18\r \x01(\x02H\x00\x12\x16\n\x0c\x64ouble_value\x18\x0e \x01(\x01H\x00\x12\x16\n\x0cstring_value\x18\x0f \x01(\tH\x00\x12\x35\n\x0ftimestamp_value\x18\x10 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00\x12\x33\n\x0b\x61rray_value\x18\x11 \x01(\x0b\x32\x1c.mxaccess_gateway.v1.MxArrayH\x00\x12\x13\n\traw_value\x18\x12 \x01(\x0cH\x00\x42\x06\n\x04kind\"\xfe\x04\n\x07MxArray\x12:\n\x11\x65lement_data_type\x18\x01 \x01(\x0e\x32\x1f.mxaccess_gateway.v1.MxDataType\x12\x14\n\x0cvariant_type\x18\x02 \x01(\t\x12\x12\n\ndimensions\x18\x03 \x03(\r\x12\x16\n\x0eraw_diagnostic\x18\x04 \x01(\t\x12\x1d\n\x15raw_element_data_type\x18\x05 \x01(\x05\x12\x35\n\x0b\x62ool_values\x18\n \x01(\x0b\x32\x1e.mxaccess_gateway.v1.BoolArrayH\x00\x12\x37\n\x0cint32_values\x18\x0b \x01(\x0b\x32\x1f.mxaccess_gateway.v1.Int32ArrayH\x00\x12\x37\n\x0cint64_values\x18\x0c \x01(\x0b\x32\x1f.mxaccess_gateway.v1.Int64ArrayH\x00\x12\x37\n\x0c\x66loat_values\x18\r \x01(\x0b\x32\x1f.mxaccess_gateway.v1.FloatArrayH\x00\x12\x39\n\rdouble_values\x18\x0e \x01(\x0b\x32 .mxaccess_gateway.v1.DoubleArrayH\x00\x12\x39\n\rstring_values\x18\x0f \x01(\x0b\x32 .mxaccess_gateway.v1.StringArrayH\x00\x12?\n\x10timestamp_values\x18\x10 \x01(\x0b\x32#.mxaccess_gateway.v1.TimestampArrayH\x00\x12\x33\n\nraw_values\x18\x11 \x01(\x0b\x32\x1d.mxaccess_gateway.v1.RawArrayH\x00\x42\x08\n\x06values\"\x1b\n\tBoolArray\x12\x0e\n\x06values\x18\x01 \x03(\x08\"\x1c\n\nInt32Array\x12\x0e\n\x06values\x18\x01 \x03(\x05\"\x1c\n\nInt64Array\x12\x0e\n\x06values\x18\x01 \x03(\x03\"\x1c\n\nFloatArray\x12\x0e\n\x06values\x18\x01 \x03(\x02\"\x1d\n\x0b\x44oubleArray\x12\x0e\n\x06values\x18\x01 \x03(\x01\"\x1d\n\x0bStringArray\x12\x0e\n\x06values\x18\x01 \x03(\t\"<\n\x0eTimestampArray\x12*\n\x06values\x18\x01 \x03(\x0b\x32\x1a.google.protobuf.Timestamp\"\x1a\n\x08RawArray\x12\x0e\n\x06values\x18\x01 \x03(\x0c\"X\n\x0eProtocolStatus\x12\x35\n\x04\x63ode\x18\x01 \x01(\x0e\x32\'.mxaccess_gateway.v1.ProtocolStatusCode\x12\x0f\n\x07message\x18\x02 \x01(\t*\xa1\x08\n\rMxCommandKind\x12\x1f\n\x1bMX_COMMAND_KIND_UNSPECIFIED\x10\x00\x12\x1c\n\x18MX_COMMAND_KIND_REGISTER\x10\x01\x12\x1e\n\x1aMX_COMMAND_KIND_UNREGISTER\x10\x02\x12\x1c\n\x18MX_COMMAND_KIND_ADD_ITEM\x10\x03\x12\x1d\n\x19MX_COMMAND_KIND_ADD_ITEM2\x10\x04\x12\x1f\n\x1bMX_COMMAND_KIND_REMOVE_ITEM\x10\x05\x12\x1a\n\x16MX_COMMAND_KIND_ADVISE\x10\x06\x12\x1d\n\x19MX_COMMAND_KIND_UN_ADVISE\x10\x07\x12&\n\"MX_COMMAND_KIND_ADVISE_SUPERVISORY\x10\x08\x12%\n!MX_COMMAND_KIND_ADD_BUFFERED_ITEM\x10\t\x12\x30\n,MX_COMMAND_KIND_SET_BUFFERED_UPDATE_INTERVAL\x10\n\x12\x1b\n\x17MX_COMMAND_KIND_SUSPEND\x10\x0b\x12\x1c\n\x18MX_COMMAND_KIND_ACTIVATE\x10\x0c\x12\x19\n\x15MX_COMMAND_KIND_WRITE\x10\r\x12\x1a\n\x16MX_COMMAND_KIND_WRITE2\x10\x0e\x12!\n\x1dMX_COMMAND_KIND_WRITE_SECURED\x10\x0f\x12\"\n\x1eMX_COMMAND_KIND_WRITE_SECURED2\x10\x10\x12%\n!MX_COMMAND_KIND_AUTHENTICATE_USER\x10\x11\x12(\n$MX_COMMAND_KIND_ARCHESTRA_USER_TO_ID\x10\x12\x12!\n\x1dMX_COMMAND_KIND_ADD_ITEM_BULK\x10\x13\x12$\n MX_COMMAND_KIND_ADVISE_ITEM_BULK\x10\x14\x12$\n MX_COMMAND_KIND_REMOVE_ITEM_BULK\x10\x15\x12\'\n#MX_COMMAND_KIND_UN_ADVISE_ITEM_BULK\x10\x16\x12\"\n\x1eMX_COMMAND_KIND_SUBSCRIBE_BULK\x10\x17\x12$\n MX_COMMAND_KIND_UNSUBSCRIBE_BULK\x10\x18\x12\x18\n\x14MX_COMMAND_KIND_PING\x10\x64\x12%\n!MX_COMMAND_KIND_GET_SESSION_STATE\x10\x65\x12#\n\x1fMX_COMMAND_KIND_GET_WORKER_INFO\x10\x66\x12 \n\x1cMX_COMMAND_KIND_DRAIN_EVENTS\x10g\x12#\n\x1fMX_COMMAND_KIND_SHUTDOWN_WORKER\x10h*\xd0\x01\n\rMxEventFamily\x12\x1f\n\x1bMX_EVENT_FAMILY_UNSPECIFIED\x10\x00\x12\"\n\x1eMX_EVENT_FAMILY_ON_DATA_CHANGE\x10\x01\x12%\n!MX_EVENT_FAMILY_ON_WRITE_COMPLETE\x10\x02\x12&\n\"MX_EVENT_FAMILY_OPERATION_COMPLETE\x10\x03\x12+\n\'MX_EVENT_FAMILY_ON_BUFFERED_DATA_CHANGE\x10\x04*\xa5\x03\n\x10MxStatusCategory\x12\"\n\x1eMX_STATUS_CATEGORY_UNSPECIFIED\x10\x00\x12\x1e\n\x1aMX_STATUS_CATEGORY_UNKNOWN\x10\x01\x12\x19\n\x15MX_STATUS_CATEGORY_OK\x10\x02\x12\x1e\n\x1aMX_STATUS_CATEGORY_PENDING\x10\x03\x12\x1e\n\x1aMX_STATUS_CATEGORY_WARNING\x10\x04\x12*\n&MX_STATUS_CATEGORY_COMMUNICATION_ERROR\x10\x05\x12*\n&MX_STATUS_CATEGORY_CONFIGURATION_ERROR\x10\x06\x12(\n$MX_STATUS_CATEGORY_OPERATIONAL_ERROR\x10\x07\x12%\n!MX_STATUS_CATEGORY_SECURITY_ERROR\x10\x08\x12%\n!MX_STATUS_CATEGORY_SOFTWARE_ERROR\x10\t\x12\"\n\x1eMX_STATUS_CATEGORY_OTHER_ERROR\x10\n*\xca\x02\n\x0eMxStatusSource\x12 \n\x1cMX_STATUS_SOURCE_UNSPECIFIED\x10\x00\x12\x1c\n\x18MX_STATUS_SOURCE_UNKNOWN\x10\x01\x12#\n\x1fMX_STATUS_SOURCE_REQUESTING_LMX\x10\x02\x12#\n\x1fMX_STATUS_SOURCE_RESPONDING_LMX\x10\x03\x12#\n\x1fMX_STATUS_SOURCE_REQUESTING_NMX\x10\x04\x12#\n\x1fMX_STATUS_SOURCE_RESPONDING_NMX\x10\x05\x12\x31\n-MX_STATUS_SOURCE_REQUESTING_AUTOMATION_OBJECT\x10\x06\x12\x31\n-MX_STATUS_SOURCE_RESPONDING_AUTOMATION_OBJECT\x10\x07*\xdd\x04\n\nMxDataType\x12\x1c\n\x18MX_DATA_TYPE_UNSPECIFIED\x10\x00\x12\x18\n\x14MX_DATA_TYPE_UNKNOWN\x10\x01\x12\x18\n\x14MX_DATA_TYPE_NO_DATA\x10\x02\x12\x18\n\x14MX_DATA_TYPE_BOOLEAN\x10\x03\x12\x18\n\x14MX_DATA_TYPE_INTEGER\x10\x04\x12\x16\n\x12MX_DATA_TYPE_FLOAT\x10\x05\x12\x17\n\x13MX_DATA_TYPE_DOUBLE\x10\x06\x12\x17\n\x13MX_DATA_TYPE_STRING\x10\x07\x12\x15\n\x11MX_DATA_TYPE_TIME\x10\x08\x12\x1d\n\x19MX_DATA_TYPE_ELAPSED_TIME\x10\t\x12\x1f\n\x1bMX_DATA_TYPE_REFERENCE_TYPE\x10\n\x12\x1c\n\x18MX_DATA_TYPE_STATUS_TYPE\x10\x0b\x12\x15\n\x11MX_DATA_TYPE_ENUM\x10\x0c\x12-\n)MX_DATA_TYPE_SECURITY_CLASSIFICATION_ENUM\x10\r\x12\"\n\x1eMX_DATA_TYPE_DATA_QUALITY_TYPE\x10\x0e\x12\x1f\n\x1bMX_DATA_TYPE_QUALIFIED_ENUM\x10\x0f\x12!\n\x1dMX_DATA_TYPE_QUALIFIED_STRUCT\x10\x10\x12)\n%MX_DATA_TYPE_INTERNATIONALIZED_STRING\x10\x11\x12\x1b\n\x17MX_DATA_TYPE_BIG_STRING\x10\x12\x12\x14\n\x10MX_DATA_TYPE_END\x10\x13*\xa3\x03\n\x12ProtocolStatusCode\x12$\n PROTOCOL_STATUS_CODE_UNSPECIFIED\x10\x00\x12\x1b\n\x17PROTOCOL_STATUS_CODE_OK\x10\x01\x12(\n$PROTOCOL_STATUS_CODE_INVALID_REQUEST\x10\x02\x12*\n&PROTOCOL_STATUS_CODE_SESSION_NOT_FOUND\x10\x03\x12*\n&PROTOCOL_STATUS_CODE_SESSION_NOT_READY\x10\x04\x12+\n\'PROTOCOL_STATUS_CODE_WORKER_UNAVAILABLE\x10\x05\x12 \n\x1cPROTOCOL_STATUS_CODE_TIMEOUT\x10\x06\x12!\n\x1dPROTOCOL_STATUS_CODE_CANCELED\x10\x07\x12+\n\'PROTOCOL_STATUS_CODE_PROTOCOL_VIOLATION\x10\x08\x12)\n%PROTOCOL_STATUS_CODE_MXACCESS_FAILURE\x10\t*\xbf\x02\n\x0cSessionState\x12\x1d\n\x19SESSION_STATE_UNSPECIFIED\x10\x00\x12\x1a\n\x16SESSION_STATE_CREATING\x10\x01\x12!\n\x1dSESSION_STATE_STARTING_WORKER\x10\x02\x12\"\n\x1eSESSION_STATE_WAITING_FOR_PIPE\x10\x03\x12\x1d\n\x19SESSION_STATE_HANDSHAKING\x10\x04\x12%\n!SESSION_STATE_INITIALIZING_WORKER\x10\x05\x12\x17\n\x13SESSION_STATE_READY\x10\x06\x12\x19\n\x15SESSION_STATE_CLOSING\x10\x07\x12\x18\n\x14SESSION_STATE_CLOSED\x10\x08\x12\x19\n\x15SESSION_STATE_FAULTED\x10\t2\x82\x03\n\x0fMxAccessGateway\x12]\n\x0bOpenSession\x12\'.mxaccess_gateway.v1.OpenSessionRequest\x1a%.mxaccess_gateway.v1.OpenSessionReply\x12`\n\x0c\x43loseSession\x12(.mxaccess_gateway.v1.CloseSessionRequest\x1a&.mxaccess_gateway.v1.CloseSessionReply\x12T\n\x06Invoke\x12%.mxaccess_gateway.v1.MxCommandRequest\x1a#.mxaccess_gateway.v1.MxCommandReply\x12X\n\x0cStreamEvents\x12(.mxaccess_gateway.v1.StreamEventsRequest\x1a\x1c.mxaccess_gateway.v1.MxEvent0\x01\x42\x1c\xaa\x02\x19MxGateway.Contracts.Protob\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -34,20 +34,20 @@ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'mxaccess_gateway_pb2', _glo if not _descriptor._USE_C_DESCRIPTORS: _globals['DESCRIPTOR']._loaded_options = None _globals['DESCRIPTOR']._serialized_options = b'\252\002\031MxGateway.Contracts.Proto' - _globals['_MXCOMMANDKIND']._serialized_start=8883 - _globals['_MXCOMMANDKIND']._serialized_end=9714 - _globals['_MXEVENTFAMILY']._serialized_start=9717 - _globals['_MXEVENTFAMILY']._serialized_end=9925 - _globals['_MXSTATUSCATEGORY']._serialized_start=9928 - _globals['_MXSTATUSCATEGORY']._serialized_end=10349 - _globals['_MXSTATUSSOURCE']._serialized_start=10352 - _globals['_MXSTATUSSOURCE']._serialized_end=10682 - _globals['_MXDATATYPE']._serialized_start=10685 - _globals['_MXDATATYPE']._serialized_end=11290 - _globals['_PROTOCOLSTATUSCODE']._serialized_start=11293 - _globals['_PROTOCOLSTATUSCODE']._serialized_end=11712 - _globals['_SESSIONSTATE']._serialized_start=11715 - _globals['_SESSIONSTATE']._serialized_end=12034 + _globals['_MXCOMMANDKIND']._serialized_start=10354 + _globals['_MXCOMMANDKIND']._serialized_end=11411 + _globals['_MXEVENTFAMILY']._serialized_start=11414 + _globals['_MXEVENTFAMILY']._serialized_end=11622 + _globals['_MXSTATUSCATEGORY']._serialized_start=11625 + _globals['_MXSTATUSCATEGORY']._serialized_end=12046 + _globals['_MXSTATUSSOURCE']._serialized_start=12049 + _globals['_MXSTATUSSOURCE']._serialized_end=12379 + _globals['_MXDATATYPE']._serialized_start=12382 + _globals['_MXDATATYPE']._serialized_end=12987 + _globals['_PROTOCOLSTATUSCODE']._serialized_start=12990 + _globals['_PROTOCOLSTATUSCODE']._serialized_end=13409 + _globals['_SESSIONSTATE']._serialized_start=13412 + _globals['_SESSIONSTATE']._serialized_end=13731 _globals['_OPENSESSIONREQUEST']._serialized_start=113 _globals['_OPENSESSIONREQUEST']._serialized_end=272 _globals['_OPENSESSIONREPLY']._serialized_start=275 @@ -61,111 +61,127 @@ if not _descriptor._USE_C_DESCRIPTORS: _globals['_MXCOMMANDREQUEST']._serialized_start=883 _globals['_MXCOMMANDREQUEST']._serialized_end=1001 _globals['_MXCOMMAND']._serialized_start=1004 - _globals['_MXCOMMAND']._serialized_end=2574 - _globals['_REGISTERCOMMAND']._serialized_start=2576 - _globals['_REGISTERCOMMAND']._serialized_end=2614 - _globals['_UNREGISTERCOMMAND']._serialized_start=2616 - _globals['_UNREGISTERCOMMAND']._serialized_end=2658 - _globals['_ADDITEMCOMMAND']._serialized_start=2660 - _globals['_ADDITEMCOMMAND']._serialized_end=2724 - _globals['_ADDITEM2COMMAND']._serialized_start=2726 - _globals['_ADDITEM2COMMAND']._serialized_end=2813 - _globals['_REMOVEITEMCOMMAND']._serialized_start=2815 - _globals['_REMOVEITEMCOMMAND']._serialized_end=2878 - _globals['_ADVISECOMMAND']._serialized_start=2880 - _globals['_ADVISECOMMAND']._serialized_end=2939 - _globals['_UNADVISECOMMAND']._serialized_start=2941 - _globals['_UNADVISECOMMAND']._serialized_end=3002 - _globals['_ADVISESUPERVISORYCOMMAND']._serialized_start=3004 - _globals['_ADVISESUPERVISORYCOMMAND']._serialized_end=3074 - _globals['_ADDBUFFEREDITEMCOMMAND']._serialized_start=3076 - _globals['_ADDBUFFEREDITEMCOMMAND']._serialized_end=3170 - _globals['_SETBUFFEREDUPDATEINTERVALCOMMAND']._serialized_start=3172 - _globals['_SETBUFFEREDUPDATEINTERVALCOMMAND']._serialized_end=3267 - _globals['_SUSPENDCOMMAND']._serialized_start=3269 - _globals['_SUSPENDCOMMAND']._serialized_end=3329 - _globals['_ACTIVATECOMMAND']._serialized_start=3331 - _globals['_ACTIVATECOMMAND']._serialized_end=3392 - _globals['_WRITECOMMAND']._serialized_start=3394 - _globals['_WRITECOMMAND']._serialized_end=3514 - _globals['_WRITE2COMMAND']._serialized_start=3517 - _globals['_WRITE2COMMAND']._serialized_end=3693 - _globals['_WRITESECUREDCOMMAND']._serialized_start=3696 - _globals['_WRITESECUREDCOMMAND']._serialized_end=3857 - _globals['_WRITESECURED2COMMAND']._serialized_start=3860 - _globals['_WRITESECURED2COMMAND']._serialized_end=4077 - _globals['_AUTHENTICATEUSERCOMMAND']._serialized_start=4079 - _globals['_AUTHENTICATEUSERCOMMAND']._serialized_end=4178 - _globals['_ARCHESTRAUSERTOIDCOMMAND']._serialized_start=4180 - _globals['_ARCHESTRAUSERTOIDCOMMAND']._serialized_end=4251 - _globals['_PINGCOMMAND']._serialized_start=4253 - _globals['_PINGCOMMAND']._serialized_end=4283 - _globals['_GETSESSIONSTATECOMMAND']._serialized_start=4285 - _globals['_GETSESSIONSTATECOMMAND']._serialized_end=4309 - _globals['_GETWORKERINFOCOMMAND']._serialized_start=4311 - _globals['_GETWORKERINFOCOMMAND']._serialized_end=4333 - _globals['_DRAINEVENTSCOMMAND']._serialized_start=4335 - _globals['_DRAINEVENTSCOMMAND']._serialized_end=4375 - _globals['_SHUTDOWNWORKERCOMMAND']._serialized_start=4377 - _globals['_SHUTDOWNWORKERCOMMAND']._serialized_end=4449 - _globals['_MXCOMMANDREPLY']._serialized_start=4452 - _globals['_MXCOMMANDREPLY']._serialized_end=5492 - _globals['_REGISTERREPLY']._serialized_start=5494 - _globals['_REGISTERREPLY']._serialized_end=5532 - _globals['_ADDITEMREPLY']._serialized_start=5534 - _globals['_ADDITEMREPLY']._serialized_end=5569 - _globals['_ADDITEM2REPLY']._serialized_start=5571 - _globals['_ADDITEM2REPLY']._serialized_end=5607 - _globals['_ADDBUFFEREDITEMREPLY']._serialized_start=5609 - _globals['_ADDBUFFEREDITEMREPLY']._serialized_end=5652 - _globals['_SUSPENDREPLY']._serialized_start=5654 - _globals['_SUSPENDREPLY']._serialized_end=5720 - _globals['_ACTIVATEREPLY']._serialized_start=5722 - _globals['_ACTIVATEREPLY']._serialized_end=5789 - _globals['_AUTHENTICATEUSERREPLY']._serialized_start=5791 - _globals['_AUTHENTICATEUSERREPLY']._serialized_end=5831 - _globals['_ARCHESTRAUSERTOIDREPLY']._serialized_start=5833 - _globals['_ARCHESTRAUSERTOIDREPLY']._serialized_end=5874 - _globals['_SESSIONSTATEREPLY']._serialized_start=5876 - _globals['_SESSIONSTATEREPLY']._serialized_end=5945 - _globals['_WORKERINFOREPLY']._serialized_start=5947 - _globals['_WORKERINFOREPLY']._serialized_end=6064 - _globals['_DRAINEVENTSREPLY']._serialized_start=6066 - _globals['_DRAINEVENTSREPLY']._serialized_end=6130 - _globals['_MXEVENT']._serialized_start=6133 - _globals['_MXEVENT']._serialized_end=6928 - _globals['_ONDATACHANGEEVENT']._serialized_start=6930 - _globals['_ONDATACHANGEEVENT']._serialized_end=6949 - _globals['_ONWRITECOMPLETEEVENT']._serialized_start=6951 - _globals['_ONWRITECOMPLETEEVENT']._serialized_end=6973 - _globals['_OPERATIONCOMPLETEEVENT']._serialized_start=6975 - _globals['_OPERATIONCOMPLETEEVENT']._serialized_end=6999 - _globals['_ONBUFFEREDDATACHANGEEVENT']._serialized_start=7002 - _globals['_ONBUFFEREDDATACHANGEEVENT']._serialized_end=7214 - _globals['_MXSTATUSPROXY']._serialized_start=7217 - _globals['_MXSTATUSPROXY']._serialized_end=7452 - _globals['_MXVALUE']._serialized_start=7455 - _globals['_MXVALUE']._serialized_end=7878 - _globals['_MXARRAY']._serialized_start=7881 - _globals['_MXARRAY']._serialized_end=8519 - _globals['_BOOLARRAY']._serialized_start=8521 - _globals['_BOOLARRAY']._serialized_end=8548 - _globals['_INT32ARRAY']._serialized_start=8550 - _globals['_INT32ARRAY']._serialized_end=8578 - _globals['_INT64ARRAY']._serialized_start=8580 - _globals['_INT64ARRAY']._serialized_end=8608 - _globals['_FLOATARRAY']._serialized_start=8610 - _globals['_FLOATARRAY']._serialized_end=8638 - _globals['_DOUBLEARRAY']._serialized_start=8640 - _globals['_DOUBLEARRAY']._serialized_end=8669 - _globals['_STRINGARRAY']._serialized_start=8671 - _globals['_STRINGARRAY']._serialized_end=8700 - _globals['_TIMESTAMPARRAY']._serialized_start=8702 - _globals['_TIMESTAMPARRAY']._serialized_end=8762 - _globals['_RAWARRAY']._serialized_start=8764 - _globals['_RAWARRAY']._serialized_end=8790 - _globals['_PROTOCOLSTATUS']._serialized_start=8792 - _globals['_PROTOCOLSTATUS']._serialized_end=8880 - _globals['_MXACCESSGATEWAY']._serialized_start=12037 - _globals['_MXACCESSGATEWAY']._serialized_end=12423 + _globals['_MXCOMMAND']._serialized_end=3003 + _globals['_REGISTERCOMMAND']._serialized_start=3005 + _globals['_REGISTERCOMMAND']._serialized_end=3043 + _globals['_UNREGISTERCOMMAND']._serialized_start=3045 + _globals['_UNREGISTERCOMMAND']._serialized_end=3087 + _globals['_ADDITEMCOMMAND']._serialized_start=3089 + _globals['_ADDITEMCOMMAND']._serialized_end=3153 + _globals['_ADDITEM2COMMAND']._serialized_start=3155 + _globals['_ADDITEM2COMMAND']._serialized_end=3242 + _globals['_REMOVEITEMCOMMAND']._serialized_start=3244 + _globals['_REMOVEITEMCOMMAND']._serialized_end=3307 + _globals['_ADVISECOMMAND']._serialized_start=3309 + _globals['_ADVISECOMMAND']._serialized_end=3368 + _globals['_UNADVISECOMMAND']._serialized_start=3370 + _globals['_UNADVISECOMMAND']._serialized_end=3431 + _globals['_ADVISESUPERVISORYCOMMAND']._serialized_start=3433 + _globals['_ADVISESUPERVISORYCOMMAND']._serialized_end=3503 + _globals['_ADDBUFFEREDITEMCOMMAND']._serialized_start=3505 + _globals['_ADDBUFFEREDITEMCOMMAND']._serialized_end=3599 + _globals['_SETBUFFEREDUPDATEINTERVALCOMMAND']._serialized_start=3601 + _globals['_SETBUFFEREDUPDATEINTERVALCOMMAND']._serialized_end=3696 + _globals['_SUSPENDCOMMAND']._serialized_start=3698 + _globals['_SUSPENDCOMMAND']._serialized_end=3758 + _globals['_ACTIVATECOMMAND']._serialized_start=3760 + _globals['_ACTIVATECOMMAND']._serialized_end=3821 + _globals['_WRITECOMMAND']._serialized_start=3823 + _globals['_WRITECOMMAND']._serialized_end=3943 + _globals['_WRITE2COMMAND']._serialized_start=3946 + _globals['_WRITE2COMMAND']._serialized_end=4122 + _globals['_WRITESECUREDCOMMAND']._serialized_start=4125 + _globals['_WRITESECUREDCOMMAND']._serialized_end=4286 + _globals['_WRITESECURED2COMMAND']._serialized_start=4289 + _globals['_WRITESECURED2COMMAND']._serialized_end=4506 + _globals['_AUTHENTICATEUSERCOMMAND']._serialized_start=4508 + _globals['_AUTHENTICATEUSERCOMMAND']._serialized_end=4607 + _globals['_ARCHESTRAUSERTOIDCOMMAND']._serialized_start=4609 + _globals['_ARCHESTRAUSERTOIDCOMMAND']._serialized_end=4680 + _globals['_ADDITEMBULKCOMMAND']._serialized_start=4682 + _globals['_ADDITEMBULKCOMMAND']._serialized_end=4748 + _globals['_ADVISEITEMBULKCOMMAND']._serialized_start=4750 + _globals['_ADVISEITEMBULKCOMMAND']._serialized_end=4818 + _globals['_REMOVEITEMBULKCOMMAND']._serialized_start=4820 + _globals['_REMOVEITEMBULKCOMMAND']._serialized_end=4888 + _globals['_UNADVISEITEMBULKCOMMAND']._serialized_start=4890 + _globals['_UNADVISEITEMBULKCOMMAND']._serialized_end=4960 + _globals['_SUBSCRIBEBULKCOMMAND']._serialized_start=4962 + _globals['_SUBSCRIBEBULKCOMMAND']._serialized_end=5030 + _globals['_UNSUBSCRIBEBULKCOMMAND']._serialized_start=5032 + _globals['_UNSUBSCRIBEBULKCOMMAND']._serialized_end=5101 + _globals['_PINGCOMMAND']._serialized_start=5103 + _globals['_PINGCOMMAND']._serialized_end=5133 + _globals['_GETSESSIONSTATECOMMAND']._serialized_start=5135 + _globals['_GETSESSIONSTATECOMMAND']._serialized_end=5159 + _globals['_GETWORKERINFOCOMMAND']._serialized_start=5161 + _globals['_GETWORKERINFOCOMMAND']._serialized_end=5183 + _globals['_DRAINEVENTSCOMMAND']._serialized_start=5185 + _globals['_DRAINEVENTSCOMMAND']._serialized_end=5225 + _globals['_SHUTDOWNWORKERCOMMAND']._serialized_start=5227 + _globals['_SHUTDOWNWORKERCOMMAND']._serialized_end=5299 + _globals['_MXCOMMANDREPLY']._serialized_start=5302 + _globals['_MXCOMMANDREPLY']._serialized_end=6754 + _globals['_REGISTERREPLY']._serialized_start=6756 + _globals['_REGISTERREPLY']._serialized_end=6794 + _globals['_ADDITEMREPLY']._serialized_start=6796 + _globals['_ADDITEMREPLY']._serialized_end=6831 + _globals['_ADDITEM2REPLY']._serialized_start=6833 + _globals['_ADDITEM2REPLY']._serialized_end=6869 + _globals['_ADDBUFFEREDITEMREPLY']._serialized_start=6871 + _globals['_ADDBUFFEREDITEMREPLY']._serialized_end=6914 + _globals['_SUSPENDREPLY']._serialized_start=6916 + _globals['_SUSPENDREPLY']._serialized_end=6982 + _globals['_ACTIVATEREPLY']._serialized_start=6984 + _globals['_ACTIVATEREPLY']._serialized_end=7051 + _globals['_AUTHENTICATEUSERREPLY']._serialized_start=7053 + _globals['_AUTHENTICATEUSERREPLY']._serialized_end=7093 + _globals['_ARCHESTRAUSERTOIDREPLY']._serialized_start=7095 + _globals['_ARCHESTRAUSERTOIDREPLY']._serialized_end=7136 + _globals['_SUBSCRIBERESULT']._serialized_start=7139 + _globals['_SUBSCRIBERESULT']._serialized_end=7268 + _globals['_BULKSUBSCRIBEREPLY']._serialized_start=7270 + _globals['_BULKSUBSCRIBEREPLY']._serialized_end=7345 + _globals['_SESSIONSTATEREPLY']._serialized_start=7347 + _globals['_SESSIONSTATEREPLY']._serialized_end=7416 + _globals['_WORKERINFOREPLY']._serialized_start=7418 + _globals['_WORKERINFOREPLY']._serialized_end=7535 + _globals['_DRAINEVENTSREPLY']._serialized_start=7537 + _globals['_DRAINEVENTSREPLY']._serialized_end=7601 + _globals['_MXEVENT']._serialized_start=7604 + _globals['_MXEVENT']._serialized_end=8399 + _globals['_ONDATACHANGEEVENT']._serialized_start=8401 + _globals['_ONDATACHANGEEVENT']._serialized_end=8420 + _globals['_ONWRITECOMPLETEEVENT']._serialized_start=8422 + _globals['_ONWRITECOMPLETEEVENT']._serialized_end=8444 + _globals['_OPERATIONCOMPLETEEVENT']._serialized_start=8446 + _globals['_OPERATIONCOMPLETEEVENT']._serialized_end=8470 + _globals['_ONBUFFEREDDATACHANGEEVENT']._serialized_start=8473 + _globals['_ONBUFFEREDDATACHANGEEVENT']._serialized_end=8685 + _globals['_MXSTATUSPROXY']._serialized_start=8688 + _globals['_MXSTATUSPROXY']._serialized_end=8923 + _globals['_MXVALUE']._serialized_start=8926 + _globals['_MXVALUE']._serialized_end=9349 + _globals['_MXARRAY']._serialized_start=9352 + _globals['_MXARRAY']._serialized_end=9990 + _globals['_BOOLARRAY']._serialized_start=9992 + _globals['_BOOLARRAY']._serialized_end=10019 + _globals['_INT32ARRAY']._serialized_start=10021 + _globals['_INT32ARRAY']._serialized_end=10049 + _globals['_INT64ARRAY']._serialized_start=10051 + _globals['_INT64ARRAY']._serialized_end=10079 + _globals['_FLOATARRAY']._serialized_start=10081 + _globals['_FLOATARRAY']._serialized_end=10109 + _globals['_DOUBLEARRAY']._serialized_start=10111 + _globals['_DOUBLEARRAY']._serialized_end=10140 + _globals['_STRINGARRAY']._serialized_start=10142 + _globals['_STRINGARRAY']._serialized_end=10171 + _globals['_TIMESTAMPARRAY']._serialized_start=10173 + _globals['_TIMESTAMPARRAY']._serialized_end=10233 + _globals['_RAWARRAY']._serialized_start=10235 + _globals['_RAWARRAY']._serialized_end=10261 + _globals['_PROTOCOLSTATUS']._serialized_start=10263 + _globals['_PROTOCOLSTATUS']._serialized_end=10351 + _globals['_MXACCESSGATEWAY']._serialized_start=13734 + _globals['_MXACCESSGATEWAY']._serialized_end=14120 # @@protoc_insertion_point(module_scope) diff --git a/clients/python/src/mxgateway/session.py b/clients/python/src/mxgateway/session.py index 13aa90b..1ef173b 100644 --- a/clients/python/src/mxgateway/session.py +++ b/clients/python/src/mxgateway/session.py @@ -2,7 +2,7 @@ from __future__ import annotations -from collections.abc import AsyncIterator +from collections.abc import AsyncIterator, Sequence from .errors import ensure_mxaccess_success from .generated import mxaccess_gateway_pb2 as pb @@ -89,6 +89,24 @@ class Session: correlation_id=correlation_id, ) + async def remove_item( + self, + server_handle: int, + item_handle: int, + *, + correlation_id: str = "", + ) -> None: + await self.invoke( + pb.MxCommand( + kind=pb.MX_COMMAND_KIND_REMOVE_ITEM, + remove_item=pb.RemoveItemCommand( + server_handle=server_handle, + item_handle=item_handle, + ), + ), + correlation_id=correlation_id, + ) + async def add_item( self, server_handle: int, @@ -147,6 +165,150 @@ class Session: correlation_id=correlation_id, ) + async def unadvise( + self, + server_handle: int, + item_handle: int, + *, + correlation_id: str = "", + ) -> None: + await self.invoke( + pb.MxCommand( + kind=pb.MX_COMMAND_KIND_UN_ADVISE, + un_advise=pb.UnAdviseCommand( + server_handle=server_handle, + item_handle=item_handle, + ), + ), + correlation_id=correlation_id, + ) + + async def add_item_bulk( + self, + server_handle: int, + tag_addresses: Sequence[str], + *, + correlation_id: str = "", + ) -> list[pb.SubscribeResult]: + if tag_addresses is None: + raise TypeError("tag_addresses is required") + reply = await self.invoke( + pb.MxCommand( + kind=pb.MX_COMMAND_KIND_ADD_ITEM_BULK, + add_item_bulk=pb.AddItemBulkCommand( + server_handle=server_handle, + tag_addresses=tag_addresses, + ), + ), + correlation_id=correlation_id, + ) + return list(reply.add_item_bulk.results) + + async def advise_item_bulk( + self, + server_handle: int, + item_handles: Sequence[int], + *, + correlation_id: str = "", + ) -> list[pb.SubscribeResult]: + if item_handles is None: + raise TypeError("item_handles is required") + reply = await self.invoke( + pb.MxCommand( + kind=pb.MX_COMMAND_KIND_ADVISE_ITEM_BULK, + advise_item_bulk=pb.AdviseItemBulkCommand( + server_handle=server_handle, + item_handles=item_handles, + ), + ), + correlation_id=correlation_id, + ) + return list(reply.advise_item_bulk.results) + + async def remove_item_bulk( + self, + server_handle: int, + item_handles: Sequence[int], + *, + correlation_id: str = "", + ) -> list[pb.SubscribeResult]: + if item_handles is None: + raise TypeError("item_handles is required") + reply = await self.invoke( + pb.MxCommand( + kind=pb.MX_COMMAND_KIND_REMOVE_ITEM_BULK, + remove_item_bulk=pb.RemoveItemBulkCommand( + server_handle=server_handle, + item_handles=item_handles, + ), + ), + correlation_id=correlation_id, + ) + return list(reply.remove_item_bulk.results) + + async def unadvise_item_bulk( + self, + server_handle: int, + item_handles: Sequence[int], + *, + correlation_id: str = "", + ) -> list[pb.SubscribeResult]: + if item_handles is None: + raise TypeError("item_handles is required") + reply = await self.invoke( + pb.MxCommand( + kind=pb.MX_COMMAND_KIND_UN_ADVISE_ITEM_BULK, + un_advise_item_bulk=pb.UnAdviseItemBulkCommand( + server_handle=server_handle, + item_handles=item_handles, + ), + ), + correlation_id=correlation_id, + ) + return list(reply.un_advise_item_bulk.results) + + async def subscribe_bulk( + self, + server_handle: int, + tag_addresses: Sequence[str], + *, + correlation_id: str = "", + ) -> list[pb.SubscribeResult]: + if tag_addresses is None: + raise TypeError("tag_addresses is required") + reply = await self.invoke( + pb.MxCommand( + kind=pb.MX_COMMAND_KIND_SUBSCRIBE_BULK, + subscribe_bulk=pb.SubscribeBulkCommand( + server_handle=server_handle, + tag_addresses=tag_addresses, + ), + ), + correlation_id=correlation_id, + ) + return list(reply.subscribe_bulk.results) + + async def unsubscribe_bulk( + self, + server_handle: int, + item_handles: Sequence[int], + *, + correlation_id: str = "", + ) -> list[pb.SubscribeResult]: + if item_handles is None: + raise TypeError("item_handles is required") + reply = await self.invoke( + pb.MxCommand( + kind=pb.MX_COMMAND_KIND_UNSUBSCRIBE_BULK, + unsubscribe_bulk=pb.UnsubscribeBulkCommand( + server_handle=server_handle, + item_handles=item_handles, + ), + ), + correlation_id=correlation_id, + ) + return list(reply.unsubscribe_bulk.results) + async def write( self, server_handle: int, diff --git a/clients/python/tests/test_client_session.py b/clients/python/tests/test_client_session.py index 7e278da..818e272 100644 --- a/clients/python/tests/test_client_session.py +++ b/clients/python/tests/test_client_session.py @@ -58,6 +58,41 @@ async def test_mxaccess_error_preserves_raw_reply() -> None: assert captured.value.raw_reply is failure_reply +@pytest.mark.asyncio +async def test_subscribe_bulk_sends_one_bulk_command_and_returns_results() -> None: + stub = FakeGatewayStub() + bulk_reply = pb.MxCommandReply( + session_id="session-1", + kind=pb.MX_COMMAND_KIND_SUBSCRIBE_BULK, + protocol_status=pb.ProtocolStatus(code=pb.PROTOCOL_STATUS_CODE_OK), + subscribe_bulk=pb.BulkSubscribeReply( + results=[ + pb.SubscribeResult( + server_handle=12, + tag_address="Area001.Pump001.Speed", + item_handle=34, + was_successful=True, + ), + ], + ), + ) + stub.invoke.replies = [bulk_reply] + client = await GatewayClient.connect( + ClientOptions(endpoint="fake", api_key="mxgw_test_secret", plaintext=True), + stub=stub, + ) + session = await client.open_session() + + results = await session.subscribe_bulk(12, ["Area001.Pump001.Speed"]) + + assert results[0].item_handle == 34 + assert len(stub.invoke.requests) == 1 + assert stub.invoke.requests[0].command.kind == pb.MX_COMMAND_KIND_SUBSCRIBE_BULK + assert list(stub.invoke.requests[0].command.subscribe_bulk.tag_addresses) == [ + "Area001.Pump001.Speed", + ] + + @pytest.mark.asyncio async def test_stream_events_cancels_underlying_call_when_closed() -> None: stream = FakeStream( diff --git a/clients/rust/src/session.rs b/clients/rust/src/session.rs index e934478..4646f23 100644 --- a/clients/rust/src/session.rs +++ b/clients/rust/src/session.rs @@ -3,9 +3,11 @@ use crate::error::Error; use crate::generated::mxaccess_gateway::v1::mx_command::Payload; use crate::generated::mxaccess_gateway::v1::mx_command_reply; use crate::generated::mxaccess_gateway::v1::{ - AddItem2Command, AddItemCommand, AdviseCommand, CloseSessionRequest, MxCommand, MxCommandKind, - MxCommandReply, MxCommandRequest, MxValue as ProtoMxValue, OpenSessionRequest, RegisterCommand, - StreamEventsRequest, Write2Command, WriteCommand, + AddItem2Command, AddItemBulkCommand, AddItemCommand, AdviseCommand, AdviseItemBulkCommand, + CloseSessionRequest, MxCommand, MxCommandKind, MxCommandReply, MxCommandRequest, + MxValue as ProtoMxValue, OpenSessionRequest, RegisterCommand, RemoveItemBulkCommand, + RemoveItemCommand, StreamEventsRequest, SubscribeBulkCommand, SubscribeResult, UnAdviseCommand, + UnAdviseItemBulkCommand, UnsubscribeBulkCommand, Write2Command, WriteCommand, }; use crate::value::MxValue; @@ -94,6 +96,18 @@ impl Session { Ok(add_item2_handle(&reply)) } + pub async fn remove_item(&self, server_handle: i32, item_handle: i32) -> Result<(), Error> { + self.invoke( + MxCommandKind::RemoveItem, + Payload::RemoveItem(RemoveItemCommand { + server_handle, + item_handle, + }), + ) + .await?; + Ok(()) + } + pub async fn advise(&self, server_handle: i32, item_handle: i32) -> Result<(), Error> { self.invoke( MxCommandKind::Advise, @@ -106,6 +120,126 @@ impl Session { Ok(()) } + pub async fn un_advise(&self, server_handle: i32, item_handle: i32) -> Result<(), Error> { + self.invoke( + MxCommandKind::UnAdvise, + Payload::UnAdvise(UnAdviseCommand { + server_handle, + item_handle, + }), + ) + .await?; + Ok(()) + } + + pub async fn add_item_bulk( + &self, + server_handle: i32, + tag_addresses: Vec, + ) -> Result, Error> { + let reply = self + .invoke( + MxCommandKind::AddItemBulk, + Payload::AddItemBulk(AddItemBulkCommand { + server_handle, + tag_addresses, + }), + ) + .await?; + + Ok(bulk_results(reply, BulkReplyKind::AddItemBulk)) + } + + pub async fn advise_item_bulk( + &self, + server_handle: i32, + item_handles: Vec, + ) -> Result, Error> { + let reply = self + .invoke( + MxCommandKind::AdviseItemBulk, + Payload::AdviseItemBulk(AdviseItemBulkCommand { + server_handle, + item_handles, + }), + ) + .await?; + + Ok(bulk_results(reply, BulkReplyKind::AdviseItemBulk)) + } + + pub async fn remove_item_bulk( + &self, + server_handle: i32, + item_handles: Vec, + ) -> Result, Error> { + let reply = self + .invoke( + MxCommandKind::RemoveItemBulk, + Payload::RemoveItemBulk(RemoveItemBulkCommand { + server_handle, + item_handles, + }), + ) + .await?; + + Ok(bulk_results(reply, BulkReplyKind::RemoveItemBulk)) + } + + pub async fn un_advise_item_bulk( + &self, + server_handle: i32, + item_handles: Vec, + ) -> Result, Error> { + let reply = self + .invoke( + MxCommandKind::UnAdviseItemBulk, + Payload::UnAdviseItemBulk(UnAdviseItemBulkCommand { + server_handle, + item_handles, + }), + ) + .await?; + + Ok(bulk_results(reply, BulkReplyKind::UnAdviseItemBulk)) + } + + pub async fn subscribe_bulk( + &self, + server_handle: i32, + tag_addresses: Vec, + ) -> Result, Error> { + let reply = self + .invoke( + MxCommandKind::SubscribeBulk, + Payload::SubscribeBulk(SubscribeBulkCommand { + server_handle, + tag_addresses, + }), + ) + .await?; + + Ok(bulk_results(reply, BulkReplyKind::SubscribeBulk)) + } + + pub async fn unsubscribe_bulk( + &self, + server_handle: i32, + item_handles: Vec, + ) -> Result, Error> { + let reply = self + .invoke( + MxCommandKind::UnsubscribeBulk, + Payload::UnsubscribeBulk(UnsubscribeBulkCommand { + server_handle, + item_handles, + }), + ) + .await?; + + Ok(bulk_results(reply, BulkReplyKind::UnsubscribeBulk)) + } + pub async fn write( &self, server_handle: i32, @@ -226,6 +360,41 @@ fn add_item2_handle(reply: &MxCommandReply) -> i32 { } } +enum BulkReplyKind { + AddItemBulk, + AdviseItemBulk, + RemoveItemBulk, + UnAdviseItemBulk, + SubscribeBulk, + UnsubscribeBulk, +} + +fn bulk_results(reply: MxCommandReply, kind: BulkReplyKind) -> Vec { + match (reply.payload, kind) { + (Some(mx_command_reply::Payload::AddItemBulk(reply)), BulkReplyKind::AddItemBulk) => { + reply.results + } + (Some(mx_command_reply::Payload::AdviseItemBulk(reply)), BulkReplyKind::AdviseItemBulk) => { + reply.results + } + (Some(mx_command_reply::Payload::RemoveItemBulk(reply)), BulkReplyKind::RemoveItemBulk) => { + reply.results + } + ( + Some(mx_command_reply::Payload::UnAdviseItemBulk(reply)), + BulkReplyKind::UnAdviseItemBulk, + ) => reply.results, + (Some(mx_command_reply::Payload::SubscribeBulk(reply)), BulkReplyKind::SubscribeBulk) => { + reply.results + } + ( + Some(mx_command_reply::Payload::UnsubscribeBulk(reply)), + BulkReplyKind::UnsubscribeBulk, + ) => reply.results, + _ => Vec::new(), + } +} + fn int32_reply_value(value: &ProtoMxValue) -> Option { match value.kind.as_ref()? { crate::generated::mxaccess_gateway::v1::mx_value::Kind::Int32Value(value) => Some(*value), diff --git a/clients/rust/tests/client_behavior.rs b/clients/rust/tests/client_behavior.rs index 0afccf6..7e0c894 100644 --- a/clients/rust/tests/client_behavior.rs +++ b/clients/rust/tests/client_behavior.rs @@ -14,10 +14,10 @@ use mxgateway_client::generated::mxaccess_gateway::v1::mx_access_gateway_server: use mxgateway_client::generated::mxaccess_gateway::v1::mx_command_reply; use mxgateway_client::generated::mxaccess_gateway::v1::mx_value::Kind; use mxgateway_client::generated::mxaccess_gateway::v1::{ - AddItemReply, CloseSessionReply, CloseSessionRequest, MxCommandKind, MxCommandReply, - MxDataType, MxEvent, MxEventFamily, MxStatusCategory, MxStatusProxy, MxStatusSource, MxValue, - OpenSessionReply, OpenSessionRequest, ProtocolStatus, ProtocolStatusCode, SessionState, - StreamEventsRequest, + AddItemReply, BulkSubscribeReply, CloseSessionReply, CloseSessionRequest, MxCommandKind, + MxCommandReply, MxDataType, MxEvent, MxEventFamily, MxStatusCategory, MxStatusProxy, + MxStatusSource, MxValue, OpenSessionReply, OpenSessionRequest, ProtocolStatus, + ProtocolStatusCode, SessionState, StreamEventsRequest, SubscribeResult, }; use mxgateway_client::{ ApiKey, ClientOptions, CommandError, Error, GatewayClient, MxStatus, MxValue as ClientMxValue, @@ -87,6 +87,25 @@ async fn session_helpers_build_commands_and_preserve_command_errors() { assert_eq!(error.reply().statuses.len(), 2); } +#[tokio::test] +async fn subscribe_bulk_builds_one_bulk_command_and_returns_results() { + let state = Arc::new(FakeState::default()); + let endpoint = spawn_fake_gateway(state.clone()).await; + let client = GatewayClient::connect(ClientOptions::new(endpoint)) + .await + .unwrap(); + let session = client.session("session-fixture"); + + let results = session + .subscribe_bulk(12, vec!["Area001.Pump001.Speed".to_owned()]) + .await + .unwrap(); + + assert_eq!(results[0].item_handle, 34); + let last_command = state.last_command_kind.lock().await; + assert_eq!(*last_command, Some(MxCommandKind::SubscribeBulk as i32)); +} + #[tokio::test] async fn event_stream_preserves_order_and_drop_cancels_server_stream() { let state = Arc::new(FakeState::default()); @@ -268,6 +287,27 @@ impl MxAccessGateway for FakeGateway { return Ok(Response::new(mxaccess_failure_reply())); } + if kind == MxCommandKind::SubscribeBulk as i32 { + return Ok(Response::new(MxCommandReply { + session_id: request.session_id, + correlation_id: "fake-correlation".to_owned(), + kind, + protocol_status: Some(ok_status("command ok")), + payload: Some(mx_command_reply::Payload::SubscribeBulk( + BulkSubscribeReply { + results: vec![SubscribeResult { + server_handle: 12, + tag_address: "Area001.Pump001.Speed".to_owned(), + item_handle: 34, + was_successful: true, + error_message: String::new(), + }], + }, + )), + ..MxCommandReply::default() + })); + } + Ok(Response::new(MxCommandReply { session_id: request.session_id, correlation_id: "fake-correlation".to_owned(), diff --git a/docs/Contracts.md b/docs/Contracts.md index f683104..0369015 100644 --- a/docs/Contracts.md +++ b/docs/Contracts.md @@ -10,6 +10,19 @@ recreated by the contracts project build. `MxAccessGateway` gRPC service, command payloads, command replies, event DTOs, `MxValue`, `MxArray`, and `MxStatusProxy`. +The public command model includes bulk subscription command kinds for +`AddItemBulk`, `AdviseItemBulk`, `RemoveItemBulk`, `UnAdviseItemBulk`, +`SubscribeBulk`, and `UnsubscribeBulk`. These commands are normal unary +`Invoke` payloads. They do not add separate gRPC methods, and they return a +`BulkSubscribeReply` containing per-item `SubscribeResult` records with +`ServerHandle`, `TagAddress`, `ItemHandle`, `WasSuccessful`, and +`ErrorMessage`. + +The gateway forwards each bulk command as one worker command. The worker runs +the corresponding MXAccess `AddItem`, `Advise`, `UnAdvise`, and `RemoveItem` +calls sequentially on the session STA and preserves input order in the result +list. + `src/MxGateway.Contracts/Protos/mxaccess_worker.proto` defines the named-pipe worker IPC envelope and control messages. It imports `mxaccess_gateway.proto` so the worker and gateway use the same command, reply, diff --git a/docs/client-libraries-design.md b/docs/client-libraries-design.md index 9750551..a8d2ba1 100644 --- a/docs/client-libraries-design.md +++ b/docs/client-libraries-design.md @@ -106,6 +106,26 @@ session.close() client.close() ``` +Each language should expose the gateway bulk subscription commands with +idiomatic names: + +```text +session.addItemBulk(serverHandle, tagAddresses) +session.adviseItemBulk(serverHandle, itemHandles) +session.removeItemBulk(serverHandle, itemHandles) +session.unAdviseItemBulk(serverHandle, itemHandles) +session.subscribeBulk(serverHandle, tagAddresses) +session.unsubscribeBulk(serverHandle, itemHandles) +``` + +These methods send one `Invoke` request using the matching bulk command kind. +They return the gateway `SubscribeResult` list without inventing client-only +handles. `SubscribeBulk` performs `AddItem` then `Advise` per tag inside the +worker session. `UnsubscribeBulk` performs `UnAdvise` then `RemoveItem` per item +handle. Per-item failures are returned in `SubscribeResult`; transport, +gateway, and cancellation failures still use each language's normal error +surface. + Each library should also expose lower-level calls: ```text diff --git a/docs/clients-dotnet-csharp-design.md b/docs/clients-dotnet-csharp-design.md index 8b35036..87225cc 100644 --- a/docs/clients-dotnet-csharp-design.md +++ b/docs/clients-dotnet-csharp-design.md @@ -83,6 +83,12 @@ public sealed class MxGatewaySession : IAsyncDisposable public Task AddItem2Async(int serverHandle, string item, string context, CancellationToken ct = default); public Task AdviseAsync(int serverHandle, int itemHandle, CancellationToken ct = default); public Task UnAdviseAsync(int serverHandle, int itemHandle, CancellationToken ct = default); + public Task> AddItemBulkAsync(int serverHandle, IReadOnlyList tagAddresses, CancellationToken ct = default); + public Task> AdviseItemBulkAsync(int serverHandle, IReadOnlyList itemHandles, CancellationToken ct = default); + public Task> RemoveItemBulkAsync(int serverHandle, IReadOnlyList itemHandles, CancellationToken ct = default); + public Task> UnAdviseItemBulkAsync(int serverHandle, IReadOnlyList itemHandles, CancellationToken ct = default); + public Task> SubscribeBulkAsync(int serverHandle, IReadOnlyList tagAddresses, CancellationToken ct = default); + public Task> UnsubscribeBulkAsync(int serverHandle, IReadOnlyList itemHandles, CancellationToken ct = default); public Task WriteAsync(int serverHandle, int itemHandle, MxValue value, int userId, CancellationToken ct = default); public IAsyncEnumerable StreamEventsAsync(CancellationToken ct = default); public Task CloseAsync(CancellationToken ct = default); diff --git a/docs/clients-golang-design.md b/docs/clients-golang-design.md index f4d07b6..fc1b589 100644 --- a/docs/clients-golang-design.md +++ b/docs/clients-golang-design.md @@ -74,6 +74,12 @@ func (s *Session) Unregister(ctx context.Context, serverHandle int32) error func (s *Session) AddItem(ctx context.Context, serverHandle int32, item string) (int32, error) func (s *Session) AddItem2(ctx context.Context, serverHandle int32, item, context string) (int32, error) func (s *Session) Advise(ctx context.Context, serverHandle, itemHandle int32) error +func (s *Session) AddItemBulk(ctx context.Context, serverHandle int32, tagAddresses []string) ([]*pb.SubscribeResult, error) +func (s *Session) AdviseItemBulk(ctx context.Context, serverHandle int32, itemHandles []int32) ([]*pb.SubscribeResult, error) +func (s *Session) RemoveItemBulk(ctx context.Context, serverHandle int32, itemHandles []int32) ([]*pb.SubscribeResult, error) +func (s *Session) UnAdviseItemBulk(ctx context.Context, serverHandle int32, itemHandles []int32) ([]*pb.SubscribeResult, error) +func (s *Session) SubscribeBulk(ctx context.Context, serverHandle int32, tagAddresses []string) ([]*pb.SubscribeResult, error) +func (s *Session) UnsubscribeBulk(ctx context.Context, serverHandle int32, itemHandles []int32) ([]*pb.SubscribeResult, error) func (s *Session) Write(ctx context.Context, serverHandle, itemHandle int32, value Value, userID int32) error func (s *Session) Events(ctx context.Context) (<-chan EventResult, error) func (s *Session) Close(ctx context.Context) error diff --git a/docs/clients-java-design.md b/docs/clients-java-design.md index 896e488..edab9b4 100644 --- a/docs/clients-java-design.md +++ b/docs/clients-java-design.md @@ -64,6 +64,12 @@ public final class MxGatewaySession implements AutoCloseable { public int addItem(int serverHandle, String item); public int addItem2(int serverHandle, String item, String context); public void advise(int serverHandle, int itemHandle); + public List addItemBulk(int serverHandle, List tagAddresses); + public List adviseItemBulk(int serverHandle, List itemHandles); + public List removeItemBulk(int serverHandle, List itemHandles); + public List unAdviseItemBulk(int serverHandle, List itemHandles); + public List subscribeBulk(int serverHandle, List tagAddresses); + public List unsubscribeBulk(int serverHandle, List itemHandles); public void write(int serverHandle, int itemHandle, MxValue value, int userId); public Iterator streamEvents(); public void streamEventsAsync(StreamObserver observer); diff --git a/docs/clients-python-design.md b/docs/clients-python-design.md index 3722477..dac1660 100644 --- a/docs/clients-python-design.md +++ b/docs/clients-python-design.md @@ -82,6 +82,12 @@ class Session: async def add_item(self, server_handle: int, item: str) -> int: ... async def add_item2(self, server_handle: int, item: str, context: str) -> int: ... async def advise(self, server_handle: int, item_handle: int) -> None: ... + async def add_item_bulk(self, server_handle: int, tag_addresses: Sequence[str]) -> list[SubscribeResult]: ... + async def advise_item_bulk(self, server_handle: int, item_handles: Sequence[int]) -> list[SubscribeResult]: ... + async def remove_item_bulk(self, server_handle: int, item_handles: Sequence[int]) -> list[SubscribeResult]: ... + async def unadvise_item_bulk(self, server_handle: int, item_handles: Sequence[int]) -> list[SubscribeResult]: ... + async def subscribe_bulk(self, server_handle: int, tag_addresses: Sequence[str]) -> list[SubscribeResult]: ... + async def unsubscribe_bulk(self, server_handle: int, item_handles: Sequence[int]) -> list[SubscribeResult]: ... async def write(self, server_handle: int, item_handle: int, value: MxValueInput, user_id: int = 0) -> None: ... async def stream_events(self) -> AsyncIterator[MxEvent]: ... async def close(self) -> None: ... diff --git a/docs/clients-rust-design.md b/docs/clients-rust-design.md index 4587ef3..ccd5c75 100644 --- a/docs/clients-rust-design.md +++ b/docs/clients-rust-design.md @@ -81,6 +81,12 @@ impl Session { pub async fn add_item(&self, server_handle: i32, item: &str) -> Result; pub async fn add_item2(&self, server_handle: i32, item: &str, context: &str) -> Result; pub async fn advise(&self, server_handle: i32, item_handle: i32) -> Result<(), Error>; + pub async fn add_item_bulk(&self, server_handle: i32, tag_addresses: Vec) -> Result, Error>; + pub async fn advise_item_bulk(&self, server_handle: i32, item_handles: Vec) -> Result, Error>; + pub async fn remove_item_bulk(&self, server_handle: i32, item_handles: Vec) -> Result, Error>; + pub async fn un_advise_item_bulk(&self, server_handle: i32, item_handles: Vec) -> Result, Error>; + pub async fn subscribe_bulk(&self, server_handle: i32, tag_addresses: Vec) -> Result, Error>; + pub async fn unsubscribe_bulk(&self, server_handle: i32, item_handles: Vec) -> Result, Error>; pub async fn write(&self, server_handle: i32, item_handle: i32, value: MxValue, user_id: i32) -> Result<(), Error>; pub async fn events(&self) -> Result>, Error>; pub async fn close(&self) -> Result<(), Error>; diff --git a/src/MxGateway.Contracts/Generated/MxaccessGateway.cs b/src/MxGateway.Contracts/Generated/MxaccessGateway.cs index 9d2f179..dc74ff7 100644 --- a/src/MxGateway.Contracts/Generated/MxaccessGateway.cs +++ b/src/MxGateway.Contracts/Generated/MxaccessGateway.cs @@ -46,7 +46,7 @@ namespace MxGateway.Contracts.Proto { "ZnRlcl93b3JrZXJfc2VxdWVuY2UYAiABKAQidgoQTXhDb21tYW5kUmVxdWVz", "dBISCgpzZXNzaW9uX2lkGAEgASgJEh0KFWNsaWVudF9jb3JyZWxhdGlvbl9p", "ZBgCIAEoCRIvCgdjb21tYW5kGAMgASgLMh4ubXhhY2Nlc3NfZ2F0ZXdheS52", - "MS5NeENvbW1hbmQiogwKCU14Q29tbWFuZBIwCgRraW5kGAEgASgOMiIubXhh", + "MS5NeENvbW1hbmQizw8KCU14Q29tbWFuZBIwCgRraW5kGAEgASgOMiIubXhh", "Y2Nlc3NfZ2F0ZXdheS52MS5NeENvbW1hbmRLaW5kEjgKCHJlZ2lzdGVyGAog", "ASgLMiQubXhhY2Nlc3NfZ2F0ZXdheS52MS5SZWdpc3RlckNvbW1hbmRIABI8", "Cgp1bnJlZ2lzdGVyGAsgASgLMiYubXhhY2Nlc3NfZ2F0ZXdheS52MS5VbnJl", @@ -73,234 +73,272 @@ namespace MxGateway.Contracts.Proto { "Q29tbWFuZEgAEkkKEWF1dGhlbnRpY2F0ZV91c2VyGBogASgLMiwubXhhY2Nl", "c3NfZ2F0ZXdheS52MS5BdXRoZW50aWNhdGVVc2VyQ29tbWFuZEgAEk0KFGFy", "Y2hlc3RyYV91c2VyX3RvX2lkGBsgASgLMi0ubXhhY2Nlc3NfZ2F0ZXdheS52", - "MS5BcmNoZXN0ckFVc2VyVG9JZENvbW1hbmRIABIwCgRwaW5nGGQgASgLMiAu", - "bXhhY2Nlc3NfZ2F0ZXdheS52MS5QaW5nQ29tbWFuZEgAEkgKEWdldF9zZXNz", - "aW9uX3N0YXRlGGUgASgLMisubXhhY2Nlc3NfZ2F0ZXdheS52MS5HZXRTZXNz", - "aW9uU3RhdGVDb21tYW5kSAASRAoPZ2V0X3dvcmtlcl9pbmZvGGYgASgLMiku", - "bXhhY2Nlc3NfZ2F0ZXdheS52MS5HZXRXb3JrZXJJbmZvQ29tbWFuZEgAEj8K", - "DGRyYWluX2V2ZW50cxhnIAEoCzInLm14YWNjZXNzX2dhdGV3YXkudjEuRHJh", - "aW5FdmVudHNDb21tYW5kSAASRQoPc2h1dGRvd25fd29ya2VyGGggASgLMiou", - "bXhhY2Nlc3NfZ2F0ZXdheS52MS5TaHV0ZG93bldvcmtlckNvbW1hbmRIAEIJ", - "CgdwYXlsb2FkIiYKD1JlZ2lzdGVyQ29tbWFuZBITCgtjbGllbnRfbmFtZRgB", - "IAEoCSIqChFVbnJlZ2lzdGVyQ29tbWFuZBIVCg1zZXJ2ZXJfaGFuZGxlGAEg", - "ASgFIkAKDkFkZEl0ZW1Db21tYW5kEhUKDXNlcnZlcl9oYW5kbGUYASABKAUS", - "FwoPaXRlbV9kZWZpbml0aW9uGAIgASgJIlcKD0FkZEl0ZW0yQ29tbWFuZBIV", - "Cg1zZXJ2ZXJfaGFuZGxlGAEgASgFEhcKD2l0ZW1fZGVmaW5pdGlvbhgCIAEo", - "CRIUCgxpdGVtX2NvbnRleHQYAyABKAkiPwoRUmVtb3ZlSXRlbUNvbW1hbmQS", - "FQoNc2VydmVyX2hhbmRsZRgBIAEoBRITCgtpdGVtX2hhbmRsZRgCIAEoBSI7", - "Cg1BZHZpc2VDb21tYW5kEhUKDXNlcnZlcl9oYW5kbGUYASABKAUSEwoLaXRl", - "bV9oYW5kbGUYAiABKAUiPQoPVW5BZHZpc2VDb21tYW5kEhUKDXNlcnZlcl9o", - "YW5kbGUYASABKAUSEwoLaXRlbV9oYW5kbGUYAiABKAUiRgoYQWR2aXNlU3Vw", - "ZXJ2aXNvcnlDb21tYW5kEhUKDXNlcnZlcl9oYW5kbGUYASABKAUSEwoLaXRl", - "bV9oYW5kbGUYAiABKAUiXgoWQWRkQnVmZmVyZWRJdGVtQ29tbWFuZBIVCg1z", - "ZXJ2ZXJfaGFuZGxlGAEgASgFEhcKD2l0ZW1fZGVmaW5pdGlvbhgCIAEoCRIU", - "CgxpdGVtX2NvbnRleHQYAyABKAkiXwogU2V0QnVmZmVyZWRVcGRhdGVJbnRl", - "cnZhbENvbW1hbmQSFQoNc2VydmVyX2hhbmRsZRgBIAEoBRIkChx1cGRhdGVf", - "aW50ZXJ2YWxfbWlsbGlzZWNvbmRzGAIgASgFIjwKDlN1c3BlbmRDb21tYW5k", - "EhUKDXNlcnZlcl9oYW5kbGUYASABKAUSEwoLaXRlbV9oYW5kbGUYAiABKAUi", - "PQoPQWN0aXZhdGVDb21tYW5kEhUKDXNlcnZlcl9oYW5kbGUYASABKAUSEwoL", - "aXRlbV9oYW5kbGUYAiABKAUieAoMV3JpdGVDb21tYW5kEhUKDXNlcnZlcl9o", - "YW5kbGUYASABKAUSEwoLaXRlbV9oYW5kbGUYAiABKAUSKwoFdmFsdWUYAyAB", - "KAsyHC5teGFjY2Vzc19nYXRld2F5LnYxLk14VmFsdWUSDwoHdXNlcl9pZBgE", - "IAEoBSKwAQoNV3JpdGUyQ29tbWFuZBIVCg1zZXJ2ZXJfaGFuZGxlGAEgASgF", - "EhMKC2l0ZW1faGFuZGxlGAIgASgFEisKBXZhbHVlGAMgASgLMhwubXhhY2Nl", - "c3NfZ2F0ZXdheS52MS5NeFZhbHVlEjUKD3RpbWVzdGFtcF92YWx1ZRgEIAEo", - "CzIcLm14YWNjZXNzX2dhdGV3YXkudjEuTXhWYWx1ZRIPCgd1c2VyX2lkGAUg", - "ASgFIqEBChNXcml0ZVNlY3VyZWRDb21tYW5kEhUKDXNlcnZlcl9oYW5kbGUY", - "ASABKAUSEwoLaXRlbV9oYW5kbGUYAiABKAUSFwoPY3VycmVudF91c2VyX2lk", - "GAMgASgFEhgKEHZlcmlmaWVyX3VzZXJfaWQYBCABKAUSKwoFdmFsdWUYBSAB", - "KAsyHC5teGFjY2Vzc19nYXRld2F5LnYxLk14VmFsdWUi2QEKFFdyaXRlU2Vj", - "dXJlZDJDb21tYW5kEhUKDXNlcnZlcl9oYW5kbGUYASABKAUSEwoLaXRlbV9o", - "YW5kbGUYAiABKAUSFwoPY3VycmVudF91c2VyX2lkGAMgASgFEhgKEHZlcmlm", - "aWVyX3VzZXJfaWQYBCABKAUSKwoFdmFsdWUYBSABKAsyHC5teGFjY2Vzc19n", - "YXRld2F5LnYxLk14VmFsdWUSNQoPdGltZXN0YW1wX3ZhbHVlGAYgASgLMhwu", - "bXhhY2Nlc3NfZ2F0ZXdheS52MS5NeFZhbHVlImMKF0F1dGhlbnRpY2F0ZVVz", - "ZXJDb21tYW5kEhUKDXNlcnZlcl9oYW5kbGUYASABKAUSEwoLdmVyaWZ5X3Vz", - "ZXIYAiABKAkSHAoUdmVyaWZ5X3VzZXJfcGFzc3dvcmQYAyABKAkiRwoYQXJj", - "aGVzdHJBVXNlclRvSWRDb21tYW5kEhUKDXNlcnZlcl9oYW5kbGUYASABKAUS", - "FAoMdXNlcl9pZF9ndWlkGAIgASgJIh4KC1BpbmdDb21tYW5kEg8KB21lc3Nh", - "Z2UYASABKAkiGAoWR2V0U2Vzc2lvblN0YXRlQ29tbWFuZCIWChRHZXRXb3Jr", - "ZXJJbmZvQ29tbWFuZCIoChJEcmFpbkV2ZW50c0NvbW1hbmQSEgoKbWF4X2V2", - "ZW50cxgBIAEoDSJIChVTaHV0ZG93bldvcmtlckNvbW1hbmQSLwoMZ3JhY2Vf", - "cGVyaW9kGAEgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uIpAICg5N", - "eENvbW1hbmRSZXBseRISCgpzZXNzaW9uX2lkGAEgASgJEhYKDmNvcnJlbGF0", - "aW9uX2lkGAIgASgJEjAKBGtpbmQYAyABKA4yIi5teGFjY2Vzc19nYXRld2F5", - "LnYxLk14Q29tbWFuZEtpbmQSPAoPcHJvdG9jb2xfc3RhdHVzGAQgASgLMiMu", - "bXhhY2Nlc3NfZ2F0ZXdheS52MS5Qcm90b2NvbFN0YXR1cxIUCgdocmVzdWx0", - "GAUgASgFSAGIAQESMgoMcmV0dXJuX3ZhbHVlGAYgASgLMhwubXhhY2Nlc3Nf", - "Z2F0ZXdheS52MS5NeFZhbHVlEjQKCHN0YXR1c2VzGAcgAygLMiIubXhhY2Nl", - "c3NfZ2F0ZXdheS52MS5NeFN0YXR1c1Byb3h5EhoKEmRpYWdub3N0aWNfbWVz", - "c2FnZRgIIAEoCRI2CghyZWdpc3RlchgUIAEoCzIiLm14YWNjZXNzX2dhdGV3", - "YXkudjEuUmVnaXN0ZXJSZXBseUgAEjUKCGFkZF9pdGVtGBUgASgLMiEubXhh", - "Y2Nlc3NfZ2F0ZXdheS52MS5BZGRJdGVtUmVwbHlIABI3CglhZGRfaXRlbTIY", - "FiABKAsyIi5teGFjY2Vzc19nYXRld2F5LnYxLkFkZEl0ZW0yUmVwbHlIABJG", - "ChFhZGRfYnVmZmVyZWRfaXRlbRgXIAEoCzIpLm14YWNjZXNzX2dhdGV3YXku", - "djEuQWRkQnVmZmVyZWRJdGVtUmVwbHlIABI0CgdzdXNwZW5kGBggASgLMiEu", - "bXhhY2Nlc3NfZ2F0ZXdheS52MS5TdXNwZW5kUmVwbHlIABI2CghhY3RpdmF0", - "ZRgZIAEoCzIiLm14YWNjZXNzX2dhdGV3YXkudjEuQWN0aXZhdGVSZXBseUgA", - "EkcKEWF1dGhlbnRpY2F0ZV91c2VyGBogASgLMioubXhhY2Nlc3NfZ2F0ZXdh", - "eS52MS5BdXRoZW50aWNhdGVVc2VyUmVwbHlIABJLChRhcmNoZXN0cmFfdXNl", - "cl90b19pZBgbIAEoCzIrLm14YWNjZXNzX2dhdGV3YXkudjEuQXJjaGVzdHJB", - "VXNlclRvSWRSZXBseUgAEj8KDXNlc3Npb25fc3RhdGUYZCABKAsyJi5teGFj", - "Y2Vzc19nYXRld2F5LnYxLlNlc3Npb25TdGF0ZVJlcGx5SAASOwoLd29ya2Vy", - "X2luZm8YZSABKAsyJC5teGFjY2Vzc19nYXRld2F5LnYxLldvcmtlckluZm9S", - "ZXBseUgAEj0KDGRyYWluX2V2ZW50cxhmIAEoCzIlLm14YWNjZXNzX2dhdGV3", - "YXkudjEuRHJhaW5FdmVudHNSZXBseUgAQgkKB3BheWxvYWRCCgoIX2hyZXN1", - "bHQiJgoNUmVnaXN0ZXJSZXBseRIVCg1zZXJ2ZXJfaGFuZGxlGAEgASgFIiMK", - "DEFkZEl0ZW1SZXBseRITCgtpdGVtX2hhbmRsZRgBIAEoBSIkCg1BZGRJdGVt", - "MlJlcGx5EhMKC2l0ZW1faGFuZGxlGAEgASgFIisKFEFkZEJ1ZmZlcmVkSXRl", - "bVJlcGx5EhMKC2l0ZW1faGFuZGxlGAEgASgFIkIKDFN1c3BlbmRSZXBseRIy", - "CgZzdGF0dXMYASABKAsyIi5teGFjY2Vzc19nYXRld2F5LnYxLk14U3RhdHVz", - "UHJveHkiQwoNQWN0aXZhdGVSZXBseRIyCgZzdGF0dXMYASABKAsyIi5teGFj", - "Y2Vzc19nYXRld2F5LnYxLk14U3RhdHVzUHJveHkiKAoVQXV0aGVudGljYXRl", - "VXNlclJlcGx5Eg8KB3VzZXJfaWQYASABKAUiKQoWQXJjaGVzdHJBVXNlclRv", - "SWRSZXBseRIPCgd1c2VyX2lkGAEgASgFIkUKEVNlc3Npb25TdGF0ZVJlcGx5", - "EjAKBXN0YXRlGAEgASgOMiEubXhhY2Nlc3NfZ2F0ZXdheS52MS5TZXNzaW9u", - "U3RhdGUidQoPV29ya2VySW5mb1JlcGx5EhkKEXdvcmtlcl9wcm9jZXNzX2lk", - "GAEgASgFEhYKDndvcmtlcl92ZXJzaW9uGAIgASgJEhcKD214YWNjZXNzX3By", - "b2dpZBgDIAEoCRIWCg5teGFjY2Vzc19jbHNpZBgEIAEoCSJAChBEcmFpbkV2", - "ZW50c1JlcGx5EiwKBmV2ZW50cxgBIAMoCzIcLm14YWNjZXNzX2dhdGV3YXku", - "djEuTXhFdmVudCKbBgoHTXhFdmVudBIyCgZmYW1pbHkYASABKA4yIi5teGFj", - "Y2Vzc19nYXRld2F5LnYxLk14RXZlbnRGYW1pbHkSEgoKc2Vzc2lvbl9pZBgC", - "IAEoCRIVCg1zZXJ2ZXJfaGFuZGxlGAMgASgFEhMKC2l0ZW1faGFuZGxlGAQg", - "ASgFEisKBXZhbHVlGAUgASgLMhwubXhhY2Nlc3NfZ2F0ZXdheS52MS5NeFZh", - "bHVlEg8KB3F1YWxpdHkYBiABKAUSNAoQc291cmNlX3RpbWVzdGFtcBgHIAEo", - "CzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASNAoIc3RhdHVzZXMYCCAD", - "KAsyIi5teGFjY2Vzc19nYXRld2F5LnYxLk14U3RhdHVzUHJveHkSFwoPd29y", - "a2VyX3NlcXVlbmNlGAkgASgEEjQKEHdvcmtlcl90aW1lc3RhbXAYCiABKAsy", - "Gi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEj0KGWdhdGV3YXlfcmVjZWl2", - "ZV90aW1lc3RhbXAYCyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1w", - "EhQKB2hyZXN1bHQYDCABKAVIAYgBARISCgpyYXdfc3RhdHVzGA0gASgJEkAK", - "Dm9uX2RhdGFfY2hhbmdlGBQgASgLMiYubXhhY2Nlc3NfZ2F0ZXdheS52MS5P", - "bkRhdGFDaGFuZ2VFdmVudEgAEkYKEW9uX3dyaXRlX2NvbXBsZXRlGBUgASgL", - "MikubXhhY2Nlc3NfZ2F0ZXdheS52MS5PbldyaXRlQ29tcGxldGVFdmVudEgA", - "EkkKEm9wZXJhdGlvbl9jb21wbGV0ZRgWIAEoCzIrLm14YWNjZXNzX2dhdGV3", - "YXkudjEuT3BlcmF0aW9uQ29tcGxldGVFdmVudEgAElEKF29uX2J1ZmZlcmVk", - "X2RhdGFfY2hhbmdlGBcgASgLMi4ubXhhY2Nlc3NfZ2F0ZXdheS52MS5PbkJ1", - "ZmZlcmVkRGF0YUNoYW5nZUV2ZW50SABCBgoEYm9keUIKCghfaHJlc3VsdCIT", - "ChFPbkRhdGFDaGFuZ2VFdmVudCIWChRPbldyaXRlQ29tcGxldGVFdmVudCIY", - "ChZPcGVyYXRpb25Db21wbGV0ZUV2ZW50ItQBChlPbkJ1ZmZlcmVkRGF0YUNo", - "YW5nZUV2ZW50EjIKCWRhdGFfdHlwZRgBIAEoDjIfLm14YWNjZXNzX2dhdGV3", - "YXkudjEuTXhEYXRhVHlwZRI0Cg5xdWFsaXR5X3ZhbHVlcxgCIAEoCzIcLm14", - "YWNjZXNzX2dhdGV3YXkudjEuTXhBcnJheRI2ChB0aW1lc3RhbXBfdmFsdWVz", - "GAMgASgLMhwubXhhY2Nlc3NfZ2F0ZXdheS52MS5NeEFycmF5EhUKDXJhd19k", - "YXRhX3R5cGUYBCABKAUi6wEKDU14U3RhdHVzUHJveHkSDwoHc3VjY2VzcxgB", - "IAEoBRI3CghjYXRlZ29yeRgCIAEoDjIlLm14YWNjZXNzX2dhdGV3YXkudjEu", - "TXhTdGF0dXNDYXRlZ29yeRI4CgtkZXRlY3RlZF9ieRgDIAEoDjIjLm14YWNj", - "ZXNzX2dhdGV3YXkudjEuTXhTdGF0dXNTb3VyY2USDgoGZGV0YWlsGAQgASgF", - "EhQKDHJhd19jYXRlZ29yeRgFIAEoBRIXCg9yYXdfZGV0ZWN0ZWRfYnkYBiAB", - "KAUSFwoPZGlhZ25vc3RpY190ZXh0GAcgASgJIqcDCgdNeFZhbHVlEjIKCWRh", - "dGFfdHlwZRgBIAEoDjIfLm14YWNjZXNzX2dhdGV3YXkudjEuTXhEYXRhVHlw", - "ZRIUCgx2YXJpYW50X3R5cGUYAiABKAkSDwoHaXNfbnVsbBgDIAEoCBIWCg5y", - "YXdfZGlhZ25vc3RpYxgEIAEoCRIVCg1yYXdfZGF0YV90eXBlGAUgASgFEhQK", - "CmJvb2xfdmFsdWUYCiABKAhIABIVCgtpbnQzMl92YWx1ZRgLIAEoBUgAEhUK", - "C2ludDY0X3ZhbHVlGAwgASgDSAASFQoLZmxvYXRfdmFsdWUYDSABKAJIABIW", - "Cgxkb3VibGVfdmFsdWUYDiABKAFIABIWCgxzdHJpbmdfdmFsdWUYDyABKAlI", - "ABI1Cg90aW1lc3RhbXBfdmFsdWUYECABKAsyGi5nb29nbGUucHJvdG9idWYu", - "VGltZXN0YW1wSAASMwoLYXJyYXlfdmFsdWUYESABKAsyHC5teGFjY2Vzc19n", - "YXRld2F5LnYxLk14QXJyYXlIABITCglyYXdfdmFsdWUYEiABKAxIAEIGCgRr", - "aW5kIv4ECgdNeEFycmF5EjoKEWVsZW1lbnRfZGF0YV90eXBlGAEgASgOMh8u", - "bXhhY2Nlc3NfZ2F0ZXdheS52MS5NeERhdGFUeXBlEhQKDHZhcmlhbnRfdHlw", - "ZRgCIAEoCRISCgpkaW1lbnNpb25zGAMgAygNEhYKDnJhd19kaWFnbm9zdGlj", - "GAQgASgJEh0KFXJhd19lbGVtZW50X2RhdGFfdHlwZRgFIAEoBRI1Cgtib29s", - "X3ZhbHVlcxgKIAEoCzIeLm14YWNjZXNzX2dhdGV3YXkudjEuQm9vbEFycmF5", - "SAASNwoMaW50MzJfdmFsdWVzGAsgASgLMh8ubXhhY2Nlc3NfZ2F0ZXdheS52", - "MS5JbnQzMkFycmF5SAASNwoMaW50NjRfdmFsdWVzGAwgASgLMh8ubXhhY2Nl", - "c3NfZ2F0ZXdheS52MS5JbnQ2NEFycmF5SAASNwoMZmxvYXRfdmFsdWVzGA0g", - "ASgLMh8ubXhhY2Nlc3NfZ2F0ZXdheS52MS5GbG9hdEFycmF5SAASOQoNZG91", - "YmxlX3ZhbHVlcxgOIAEoCzIgLm14YWNjZXNzX2dhdGV3YXkudjEuRG91Ymxl", - "QXJyYXlIABI5Cg1zdHJpbmdfdmFsdWVzGA8gASgLMiAubXhhY2Nlc3NfZ2F0", - "ZXdheS52MS5TdHJpbmdBcnJheUgAEj8KEHRpbWVzdGFtcF92YWx1ZXMYECAB", - "KAsyIy5teGFjY2Vzc19nYXRld2F5LnYxLlRpbWVzdGFtcEFycmF5SAASMwoK", - "cmF3X3ZhbHVlcxgRIAEoCzIdLm14YWNjZXNzX2dhdGV3YXkudjEuUmF3QXJy", - "YXlIAEIICgZ2YWx1ZXMiGwoJQm9vbEFycmF5Eg4KBnZhbHVlcxgBIAMoCCIc", - "CgpJbnQzMkFycmF5Eg4KBnZhbHVlcxgBIAMoBSIcCgpJbnQ2NEFycmF5Eg4K", - "BnZhbHVlcxgBIAMoAyIcCgpGbG9hdEFycmF5Eg4KBnZhbHVlcxgBIAMoAiId", - "CgtEb3VibGVBcnJheRIOCgZ2YWx1ZXMYASADKAEiHQoLU3RyaW5nQXJyYXkS", - "DgoGdmFsdWVzGAEgAygJIjwKDlRpbWVzdGFtcEFycmF5EioKBnZhbHVlcxgB", - "IAMoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiGgoIUmF3QXJyYXkS", - "DgoGdmFsdWVzGAEgAygMIlgKDlByb3RvY29sU3RhdHVzEjUKBGNvZGUYASAB", - "KA4yJy5teGFjY2Vzc19nYXRld2F5LnYxLlByb3RvY29sU3RhdHVzQ29kZRIP", - "CgdtZXNzYWdlGAIgASgJKr8GCg1NeENvbW1hbmRLaW5kEh8KG01YX0NPTU1B", - "TkRfS0lORF9VTlNQRUNJRklFRBAAEhwKGE1YX0NPTU1BTkRfS0lORF9SRUdJ", - "U1RFUhABEh4KGk1YX0NPTU1BTkRfS0lORF9VTlJFR0lTVEVSEAISHAoYTVhf", - "Q09NTUFORF9LSU5EX0FERF9JVEVNEAMSHQoZTVhfQ09NTUFORF9LSU5EX0FE", - "RF9JVEVNMhAEEh8KG01YX0NPTU1BTkRfS0lORF9SRU1PVkVfSVRFTRAFEhoK", - "Fk1YX0NPTU1BTkRfS0lORF9BRFZJU0UQBhIdChlNWF9DT01NQU5EX0tJTkRf", - "VU5fQURWSVNFEAcSJgoiTVhfQ09NTUFORF9LSU5EX0FEVklTRV9TVVBFUlZJ", - "U09SWRAIEiUKIU1YX0NPTU1BTkRfS0lORF9BRERfQlVGRkVSRURfSVRFTRAJ", - "EjAKLE1YX0NPTU1BTkRfS0lORF9TRVRfQlVGRkVSRURfVVBEQVRFX0lOVEVS", - "VkFMEAoSGwoXTVhfQ09NTUFORF9LSU5EX1NVU1BFTkQQCxIcChhNWF9DT01N", - "QU5EX0tJTkRfQUNUSVZBVEUQDBIZChVNWF9DT01NQU5EX0tJTkRfV1JJVEUQ", - "DRIaChZNWF9DT01NQU5EX0tJTkRfV1JJVEUyEA4SIQodTVhfQ09NTUFORF9L", - "SU5EX1dSSVRFX1NFQ1VSRUQQDxIiCh5NWF9DT01NQU5EX0tJTkRfV1JJVEVf", - "U0VDVVJFRDIQEBIlCiFNWF9DT01NQU5EX0tJTkRfQVVUSEVOVElDQVRFX1VT", - "RVIQERIoCiRNWF9DT01NQU5EX0tJTkRfQVJDSEVTVFJBX1VTRVJfVE9fSUQQ", - "EhIYChRNWF9DT01NQU5EX0tJTkRfUElORxBkEiUKIU1YX0NPTU1BTkRfS0lO", - "RF9HRVRfU0VTU0lPTl9TVEFURRBlEiMKH01YX0NPTU1BTkRfS0lORF9HRVRf", - "V09SS0VSX0lORk8QZhIgChxNWF9DT01NQU5EX0tJTkRfRFJBSU5fRVZFTlRT", - "EGcSIwofTVhfQ09NTUFORF9LSU5EX1NIVVRET1dOX1dPUktFUhBoKtABCg1N", - "eEV2ZW50RmFtaWx5Eh8KG01YX0VWRU5UX0ZBTUlMWV9VTlNQRUNJRklFRBAA", - "EiIKHk1YX0VWRU5UX0ZBTUlMWV9PTl9EQVRBX0NIQU5HRRABEiUKIU1YX0VW", - "RU5UX0ZBTUlMWV9PTl9XUklURV9DT01QTEVURRACEiYKIk1YX0VWRU5UX0ZB", - "TUlMWV9PUEVSQVRJT05fQ09NUExFVEUQAxIrCidNWF9FVkVOVF9GQU1JTFlf", - "T05fQlVGRkVSRURfREFUQV9DSEFOR0UQBCqlAwoQTXhTdGF0dXNDYXRlZ29y", - "eRIiCh5NWF9TVEFUVVNfQ0FURUdPUllfVU5TUEVDSUZJRUQQABIeChpNWF9T", - "VEFUVVNfQ0FURUdPUllfVU5LTk9XThABEhkKFU1YX1NUQVRVU19DQVRFR09S", - "WV9PSxACEh4KGk1YX1NUQVRVU19DQVRFR09SWV9QRU5ESU5HEAMSHgoaTVhf", - "U1RBVFVTX0NBVEVHT1JZX1dBUk5JTkcQBBIqCiZNWF9TVEFUVVNfQ0FURUdP", - "UllfQ09NTVVOSUNBVElPTl9FUlJPUhAFEioKJk1YX1NUQVRVU19DQVRFR09S", - "WV9DT05GSUdVUkFUSU9OX0VSUk9SEAYSKAokTVhfU1RBVFVTX0NBVEVHT1JZ", - "X09QRVJBVElPTkFMX0VSUk9SEAcSJQohTVhfU1RBVFVTX0NBVEVHT1JZX1NF", - "Q1VSSVRZX0VSUk9SEAgSJQohTVhfU1RBVFVTX0NBVEVHT1JZX1NPRlRXQVJF", - "X0VSUk9SEAkSIgoeTVhfU1RBVFVTX0NBVEVHT1JZX09USEVSX0VSUk9SEAoq", - "ygIKDk14U3RhdHVzU291cmNlEiAKHE1YX1NUQVRVU19TT1VSQ0VfVU5TUEVD", - "SUZJRUQQABIcChhNWF9TVEFUVVNfU09VUkNFX1VOS05PV04QARIjCh9NWF9T", - "VEFUVVNfU09VUkNFX1JFUVVFU1RJTkdfTE1YEAISIwofTVhfU1RBVFVTX1NP", - "VVJDRV9SRVNQT05ESU5HX0xNWBADEiMKH01YX1NUQVRVU19TT1VSQ0VfUkVR", - "VUVTVElOR19OTVgQBBIjCh9NWF9TVEFUVVNfU09VUkNFX1JFU1BPTkRJTkdf", - "Tk1YEAUSMQotTVhfU1RBVFVTX1NPVVJDRV9SRVFVRVNUSU5HX0FVVE9NQVRJ", - "T05fT0JKRUNUEAYSMQotTVhfU1RBVFVTX1NPVVJDRV9SRVNQT05ESU5HX0FV", - "VE9NQVRJT05fT0JKRUNUEAcq3QQKCk14RGF0YVR5cGUSHAoYTVhfREFUQV9U", - "WVBFX1VOU1BFQ0lGSUVEEAASGAoUTVhfREFUQV9UWVBFX1VOS05PV04QARIY", - "ChRNWF9EQVRBX1RZUEVfTk9fREFUQRACEhgKFE1YX0RBVEFfVFlQRV9CT09M", - "RUFOEAMSGAoUTVhfREFUQV9UWVBFX0lOVEVHRVIQBBIWChJNWF9EQVRBX1RZ", - "UEVfRkxPQVQQBRIXChNNWF9EQVRBX1RZUEVfRE9VQkxFEAYSFwoTTVhfREFU", - "QV9UWVBFX1NUUklORxAHEhUKEU1YX0RBVEFfVFlQRV9USU1FEAgSHQoZTVhf", - "REFUQV9UWVBFX0VMQVBTRURfVElNRRAJEh8KG01YX0RBVEFfVFlQRV9SRUZF", - "UkVOQ0VfVFlQRRAKEhwKGE1YX0RBVEFfVFlQRV9TVEFUVVNfVFlQRRALEhUK", - "EU1YX0RBVEFfVFlQRV9FTlVNEAwSLQopTVhfREFUQV9UWVBFX1NFQ1VSSVRZ", - "X0NMQVNTSUZJQ0FUSU9OX0VOVU0QDRIiCh5NWF9EQVRBX1RZUEVfREFUQV9R", - "VUFMSVRZX1RZUEUQDhIfChtNWF9EQVRBX1RZUEVfUVVBTElGSUVEX0VOVU0Q", - "DxIhCh1NWF9EQVRBX1RZUEVfUVVBTElGSUVEX1NUUlVDVBAQEikKJU1YX0RB", - "VEFfVFlQRV9JTlRFUk5BVElPTkFMSVpFRF9TVFJJTkcQERIbChdNWF9EQVRB", - "X1RZUEVfQklHX1NUUklORxASEhQKEE1YX0RBVEFfVFlQRV9FTkQQEyqjAwoS", - "UHJvdG9jb2xTdGF0dXNDb2RlEiQKIFBST1RPQ09MX1NUQVRVU19DT0RFX1VO", - "U1BFQ0lGSUVEEAASGwoXUFJPVE9DT0xfU1RBVFVTX0NPREVfT0sQARIoCiRQ", - "Uk9UT0NPTF9TVEFUVVNfQ09ERV9JTlZBTElEX1JFUVVFU1QQAhIqCiZQUk9U", - "T0NPTF9TVEFUVVNfQ09ERV9TRVNTSU9OX05PVF9GT1VORBADEioKJlBST1RP", - "Q09MX1NUQVRVU19DT0RFX1NFU1NJT05fTk9UX1JFQURZEAQSKwonUFJPVE9D", - "T0xfU1RBVFVTX0NPREVfV09SS0VSX1VOQVZBSUxBQkxFEAUSIAocUFJPVE9D", - "T0xfU1RBVFVTX0NPREVfVElNRU9VVBAGEiEKHVBST1RPQ09MX1NUQVRVU19D", - "T0RFX0NBTkNFTEVEEAcSKwonUFJPVE9DT0xfU1RBVFVTX0NPREVfUFJPVE9D", - "T0xfVklPTEFUSU9OEAgSKQolUFJPVE9DT0xfU1RBVFVTX0NPREVfTVhBQ0NF", - "U1NfRkFJTFVSRRAJKr8CCgxTZXNzaW9uU3RhdGUSHQoZU0VTU0lPTl9TVEFU", - "RV9VTlNQRUNJRklFRBAAEhoKFlNFU1NJT05fU1RBVEVfQ1JFQVRJTkcQARIh", - "Ch1TRVNTSU9OX1NUQVRFX1NUQVJUSU5HX1dPUktFUhACEiIKHlNFU1NJT05f", - "U1RBVEVfV0FJVElOR19GT1JfUElQRRADEh0KGVNFU1NJT05fU1RBVEVfSEFO", - "RFNIQUtJTkcQBBIlCiFTRVNTSU9OX1NUQVRFX0lOSVRJQUxJWklOR19XT1JL", - "RVIQBRIXChNTRVNTSU9OX1NUQVRFX1JFQURZEAYSGQoVU0VTU0lPTl9TVEFU", - "RV9DTE9TSU5HEAcSGAoUU0VTU0lPTl9TVEFURV9DTE9TRUQQCBIZChVTRVNT", - "SU9OX1NUQVRFX0ZBVUxURUQQCTKCAwoPTXhBY2Nlc3NHYXRld2F5El0KC09w", - "ZW5TZXNzaW9uEicubXhhY2Nlc3NfZ2F0ZXdheS52MS5PcGVuU2Vzc2lvblJl", - "cXVlc3QaJS5teGFjY2Vzc19nYXRld2F5LnYxLk9wZW5TZXNzaW9uUmVwbHkS", - "YAoMQ2xvc2VTZXNzaW9uEigubXhhY2Nlc3NfZ2F0ZXdheS52MS5DbG9zZVNl", - "c3Npb25SZXF1ZXN0GiYubXhhY2Nlc3NfZ2F0ZXdheS52MS5DbG9zZVNlc3Np", - "b25SZXBseRJUCgZJbnZva2USJS5teGFjY2Vzc19nYXRld2F5LnYxLk14Q29t", - "bWFuZFJlcXVlc3QaIy5teGFjY2Vzc19nYXRld2F5LnYxLk14Q29tbWFuZFJl", - "cGx5ElgKDFN0cmVhbUV2ZW50cxIoLm14YWNjZXNzX2dhdGV3YXkudjEuU3Ry", - "ZWFtRXZlbnRzUmVxdWVzdBocLm14YWNjZXNzX2dhdGV3YXkudjEuTXhFdmVu", - "dDABQhyqAhlNeEdhdGV3YXkuQ29udHJhY3RzLlByb3RvYgZwcm90bzM=")); + "MS5BcmNoZXN0ckFVc2VyVG9JZENvbW1hbmRIABJACg1hZGRfaXRlbV9idWxr", + "GBwgASgLMicubXhhY2Nlc3NfZ2F0ZXdheS52MS5BZGRJdGVtQnVsa0NvbW1h", + "bmRIABJGChBhZHZpc2VfaXRlbV9idWxrGB0gASgLMioubXhhY2Nlc3NfZ2F0", + "ZXdheS52MS5BZHZpc2VJdGVtQnVsa0NvbW1hbmRIABJGChByZW1vdmVfaXRl", + "bV9idWxrGB4gASgLMioubXhhY2Nlc3NfZ2F0ZXdheS52MS5SZW1vdmVJdGVt", + "QnVsa0NvbW1hbmRIABJLChN1bl9hZHZpc2VfaXRlbV9idWxrGB8gASgLMiwu", + "bXhhY2Nlc3NfZ2F0ZXdheS52MS5VbkFkdmlzZUl0ZW1CdWxrQ29tbWFuZEgA", + "EkMKDnN1YnNjcmliZV9idWxrGCAgASgLMikubXhhY2Nlc3NfZ2F0ZXdheS52", + "MS5TdWJzY3JpYmVCdWxrQ29tbWFuZEgAEkcKEHVuc3Vic2NyaWJlX2J1bGsY", + "ISABKAsyKy5teGFjY2Vzc19nYXRld2F5LnYxLlVuc3Vic2NyaWJlQnVsa0Nv", + "bW1hbmRIABIwCgRwaW5nGGQgASgLMiAubXhhY2Nlc3NfZ2F0ZXdheS52MS5Q", + "aW5nQ29tbWFuZEgAEkgKEWdldF9zZXNzaW9uX3N0YXRlGGUgASgLMisubXhh", + "Y2Nlc3NfZ2F0ZXdheS52MS5HZXRTZXNzaW9uU3RhdGVDb21tYW5kSAASRAoP", + "Z2V0X3dvcmtlcl9pbmZvGGYgASgLMikubXhhY2Nlc3NfZ2F0ZXdheS52MS5H", + "ZXRXb3JrZXJJbmZvQ29tbWFuZEgAEj8KDGRyYWluX2V2ZW50cxhnIAEoCzIn", + "Lm14YWNjZXNzX2dhdGV3YXkudjEuRHJhaW5FdmVudHNDb21tYW5kSAASRQoP", + "c2h1dGRvd25fd29ya2VyGGggASgLMioubXhhY2Nlc3NfZ2F0ZXdheS52MS5T", + "aHV0ZG93bldvcmtlckNvbW1hbmRIAEIJCgdwYXlsb2FkIiYKD1JlZ2lzdGVy", + "Q29tbWFuZBITCgtjbGllbnRfbmFtZRgBIAEoCSIqChFVbnJlZ2lzdGVyQ29t", + "bWFuZBIVCg1zZXJ2ZXJfaGFuZGxlGAEgASgFIkAKDkFkZEl0ZW1Db21tYW5k", + "EhUKDXNlcnZlcl9oYW5kbGUYASABKAUSFwoPaXRlbV9kZWZpbml0aW9uGAIg", + "ASgJIlcKD0FkZEl0ZW0yQ29tbWFuZBIVCg1zZXJ2ZXJfaGFuZGxlGAEgASgF", + "EhcKD2l0ZW1fZGVmaW5pdGlvbhgCIAEoCRIUCgxpdGVtX2NvbnRleHQYAyAB", + "KAkiPwoRUmVtb3ZlSXRlbUNvbW1hbmQSFQoNc2VydmVyX2hhbmRsZRgBIAEo", + "BRITCgtpdGVtX2hhbmRsZRgCIAEoBSI7Cg1BZHZpc2VDb21tYW5kEhUKDXNl", + "cnZlcl9oYW5kbGUYASABKAUSEwoLaXRlbV9oYW5kbGUYAiABKAUiPQoPVW5B", + "ZHZpc2VDb21tYW5kEhUKDXNlcnZlcl9oYW5kbGUYASABKAUSEwoLaXRlbV9o", + "YW5kbGUYAiABKAUiRgoYQWR2aXNlU3VwZXJ2aXNvcnlDb21tYW5kEhUKDXNl", + "cnZlcl9oYW5kbGUYASABKAUSEwoLaXRlbV9oYW5kbGUYAiABKAUiXgoWQWRk", + "QnVmZmVyZWRJdGVtQ29tbWFuZBIVCg1zZXJ2ZXJfaGFuZGxlGAEgASgFEhcK", + "D2l0ZW1fZGVmaW5pdGlvbhgCIAEoCRIUCgxpdGVtX2NvbnRleHQYAyABKAki", + "XwogU2V0QnVmZmVyZWRVcGRhdGVJbnRlcnZhbENvbW1hbmQSFQoNc2VydmVy", + "X2hhbmRsZRgBIAEoBRIkChx1cGRhdGVfaW50ZXJ2YWxfbWlsbGlzZWNvbmRz", + "GAIgASgFIjwKDlN1c3BlbmRDb21tYW5kEhUKDXNlcnZlcl9oYW5kbGUYASAB", + "KAUSEwoLaXRlbV9oYW5kbGUYAiABKAUiPQoPQWN0aXZhdGVDb21tYW5kEhUK", + "DXNlcnZlcl9oYW5kbGUYASABKAUSEwoLaXRlbV9oYW5kbGUYAiABKAUieAoM", + "V3JpdGVDb21tYW5kEhUKDXNlcnZlcl9oYW5kbGUYASABKAUSEwoLaXRlbV9o", + "YW5kbGUYAiABKAUSKwoFdmFsdWUYAyABKAsyHC5teGFjY2Vzc19nYXRld2F5", + "LnYxLk14VmFsdWUSDwoHdXNlcl9pZBgEIAEoBSKwAQoNV3JpdGUyQ29tbWFu", + "ZBIVCg1zZXJ2ZXJfaGFuZGxlGAEgASgFEhMKC2l0ZW1faGFuZGxlGAIgASgF", + "EisKBXZhbHVlGAMgASgLMhwubXhhY2Nlc3NfZ2F0ZXdheS52MS5NeFZhbHVl", + "EjUKD3RpbWVzdGFtcF92YWx1ZRgEIAEoCzIcLm14YWNjZXNzX2dhdGV3YXku", + "djEuTXhWYWx1ZRIPCgd1c2VyX2lkGAUgASgFIqEBChNXcml0ZVNlY3VyZWRD", + "b21tYW5kEhUKDXNlcnZlcl9oYW5kbGUYASABKAUSEwoLaXRlbV9oYW5kbGUY", + "AiABKAUSFwoPY3VycmVudF91c2VyX2lkGAMgASgFEhgKEHZlcmlmaWVyX3Vz", + "ZXJfaWQYBCABKAUSKwoFdmFsdWUYBSABKAsyHC5teGFjY2Vzc19nYXRld2F5", + "LnYxLk14VmFsdWUi2QEKFFdyaXRlU2VjdXJlZDJDb21tYW5kEhUKDXNlcnZl", + "cl9oYW5kbGUYASABKAUSEwoLaXRlbV9oYW5kbGUYAiABKAUSFwoPY3VycmVu", + "dF91c2VyX2lkGAMgASgFEhgKEHZlcmlmaWVyX3VzZXJfaWQYBCABKAUSKwoF", + "dmFsdWUYBSABKAsyHC5teGFjY2Vzc19nYXRld2F5LnYxLk14VmFsdWUSNQoP", + "dGltZXN0YW1wX3ZhbHVlGAYgASgLMhwubXhhY2Nlc3NfZ2F0ZXdheS52MS5N", + "eFZhbHVlImMKF0F1dGhlbnRpY2F0ZVVzZXJDb21tYW5kEhUKDXNlcnZlcl9o", + "YW5kbGUYASABKAUSEwoLdmVyaWZ5X3VzZXIYAiABKAkSHAoUdmVyaWZ5X3Vz", + "ZXJfcGFzc3dvcmQYAyABKAkiRwoYQXJjaGVzdHJBVXNlclRvSWRDb21tYW5k", + "EhUKDXNlcnZlcl9oYW5kbGUYASABKAUSFAoMdXNlcl9pZF9ndWlkGAIgASgJ", + "IkIKEkFkZEl0ZW1CdWxrQ29tbWFuZBIVCg1zZXJ2ZXJfaGFuZGxlGAEgASgF", + "EhUKDXRhZ19hZGRyZXNzZXMYAiADKAkiRAoVQWR2aXNlSXRlbUJ1bGtDb21t", + "YW5kEhUKDXNlcnZlcl9oYW5kbGUYASABKAUSFAoMaXRlbV9oYW5kbGVzGAIg", + "AygFIkQKFVJlbW92ZUl0ZW1CdWxrQ29tbWFuZBIVCg1zZXJ2ZXJfaGFuZGxl", + "GAEgASgFEhQKDGl0ZW1faGFuZGxlcxgCIAMoBSJGChdVbkFkdmlzZUl0ZW1C", + "dWxrQ29tbWFuZBIVCg1zZXJ2ZXJfaGFuZGxlGAEgASgFEhQKDGl0ZW1faGFu", + "ZGxlcxgCIAMoBSJEChRTdWJzY3JpYmVCdWxrQ29tbWFuZBIVCg1zZXJ2ZXJf", + "aGFuZGxlGAEgASgFEhUKDXRhZ19hZGRyZXNzZXMYAiADKAkiRQoWVW5zdWJz", + "Y3JpYmVCdWxrQ29tbWFuZBIVCg1zZXJ2ZXJfaGFuZGxlGAEgASgFEhQKDGl0", + "ZW1faGFuZGxlcxgCIAMoBSIeCgtQaW5nQ29tbWFuZBIPCgdtZXNzYWdlGAEg", + "ASgJIhgKFkdldFNlc3Npb25TdGF0ZUNvbW1hbmQiFgoUR2V0V29ya2VySW5m", + "b0NvbW1hbmQiKAoSRHJhaW5FdmVudHNDb21tYW5kEhIKCm1heF9ldmVudHMY", + "ASABKA0iSAoVU2h1dGRvd25Xb3JrZXJDb21tYW5kEi8KDGdyYWNlX3Blcmlv", + "ZBgBIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbiKsCwoOTXhDb21t", + "YW5kUmVwbHkSEgoKc2Vzc2lvbl9pZBgBIAEoCRIWCg5jb3JyZWxhdGlvbl9p", + "ZBgCIAEoCRIwCgRraW5kGAMgASgOMiIubXhhY2Nlc3NfZ2F0ZXdheS52MS5N", + "eENvbW1hbmRLaW5kEjwKD3Byb3RvY29sX3N0YXR1cxgEIAEoCzIjLm14YWNj", + "ZXNzX2dhdGV3YXkudjEuUHJvdG9jb2xTdGF0dXMSFAoHaHJlc3VsdBgFIAEo", + "BUgBiAEBEjIKDHJldHVybl92YWx1ZRgGIAEoCzIcLm14YWNjZXNzX2dhdGV3", + "YXkudjEuTXhWYWx1ZRI0CghzdGF0dXNlcxgHIAMoCzIiLm14YWNjZXNzX2dh", + "dGV3YXkudjEuTXhTdGF0dXNQcm94eRIaChJkaWFnbm9zdGljX21lc3NhZ2UY", + "CCABKAkSNgoIcmVnaXN0ZXIYFCABKAsyIi5teGFjY2Vzc19nYXRld2F5LnYx", + "LlJlZ2lzdGVyUmVwbHlIABI1CghhZGRfaXRlbRgVIAEoCzIhLm14YWNjZXNz", + "X2dhdGV3YXkudjEuQWRkSXRlbVJlcGx5SAASNwoJYWRkX2l0ZW0yGBYgASgL", + "MiIubXhhY2Nlc3NfZ2F0ZXdheS52MS5BZGRJdGVtMlJlcGx5SAASRgoRYWRk", + "X2J1ZmZlcmVkX2l0ZW0YFyABKAsyKS5teGFjY2Vzc19nYXRld2F5LnYxLkFk", + "ZEJ1ZmZlcmVkSXRlbVJlcGx5SAASNAoHc3VzcGVuZBgYIAEoCzIhLm14YWNj", + "ZXNzX2dhdGV3YXkudjEuU3VzcGVuZFJlcGx5SAASNgoIYWN0aXZhdGUYGSAB", + "KAsyIi5teGFjY2Vzc19nYXRld2F5LnYxLkFjdGl2YXRlUmVwbHlIABJHChFh", + "dXRoZW50aWNhdGVfdXNlchgaIAEoCzIqLm14YWNjZXNzX2dhdGV3YXkudjEu", + "QXV0aGVudGljYXRlVXNlclJlcGx5SAASSwoUYXJjaGVzdHJhX3VzZXJfdG9f", + "aWQYGyABKAsyKy5teGFjY2Vzc19nYXRld2F5LnYxLkFyY2hlc3RyQVVzZXJU", + "b0lkUmVwbHlIABJACg1hZGRfaXRlbV9idWxrGBwgASgLMicubXhhY2Nlc3Nf", + "Z2F0ZXdheS52MS5CdWxrU3Vic2NyaWJlUmVwbHlIABJDChBhZHZpc2VfaXRl", + "bV9idWxrGB0gASgLMicubXhhY2Nlc3NfZ2F0ZXdheS52MS5CdWxrU3Vic2Ny", + "aWJlUmVwbHlIABJDChByZW1vdmVfaXRlbV9idWxrGB4gASgLMicubXhhY2Nl", + "c3NfZ2F0ZXdheS52MS5CdWxrU3Vic2NyaWJlUmVwbHlIABJGChN1bl9hZHZp", + "c2VfaXRlbV9idWxrGB8gASgLMicubXhhY2Nlc3NfZ2F0ZXdheS52MS5CdWxr", + "U3Vic2NyaWJlUmVwbHlIABJBCg5zdWJzY3JpYmVfYnVsaxggIAEoCzInLm14", + "YWNjZXNzX2dhdGV3YXkudjEuQnVsa1N1YnNjcmliZVJlcGx5SAASQwoQdW5z", + "dWJzY3JpYmVfYnVsaxghIAEoCzInLm14YWNjZXNzX2dhdGV3YXkudjEuQnVs", + "a1N1YnNjcmliZVJlcGx5SAASPwoNc2Vzc2lvbl9zdGF0ZRhkIAEoCzImLm14", + "YWNjZXNzX2dhdGV3YXkudjEuU2Vzc2lvblN0YXRlUmVwbHlIABI7Cgt3b3Jr", + "ZXJfaW5mbxhlIAEoCzIkLm14YWNjZXNzX2dhdGV3YXkudjEuV29ya2VySW5m", + "b1JlcGx5SAASPQoMZHJhaW5fZXZlbnRzGGYgASgLMiUubXhhY2Nlc3NfZ2F0", + "ZXdheS52MS5EcmFpbkV2ZW50c1JlcGx5SABCCQoHcGF5bG9hZEIKCghfaHJl", + "c3VsdCImCg1SZWdpc3RlclJlcGx5EhUKDXNlcnZlcl9oYW5kbGUYASABKAUi", + "IwoMQWRkSXRlbVJlcGx5EhMKC2l0ZW1faGFuZGxlGAEgASgFIiQKDUFkZEl0", + "ZW0yUmVwbHkSEwoLaXRlbV9oYW5kbGUYASABKAUiKwoUQWRkQnVmZmVyZWRJ", + "dGVtUmVwbHkSEwoLaXRlbV9oYW5kbGUYASABKAUiQgoMU3VzcGVuZFJlcGx5", + "EjIKBnN0YXR1cxgBIAEoCzIiLm14YWNjZXNzX2dhdGV3YXkudjEuTXhTdGF0", + "dXNQcm94eSJDCg1BY3RpdmF0ZVJlcGx5EjIKBnN0YXR1cxgBIAEoCzIiLm14", + "YWNjZXNzX2dhdGV3YXkudjEuTXhTdGF0dXNQcm94eSIoChVBdXRoZW50aWNh", + "dGVVc2VyUmVwbHkSDwoHdXNlcl9pZBgBIAEoBSIpChZBcmNoZXN0ckFVc2Vy", + "VG9JZFJlcGx5Eg8KB3VzZXJfaWQYASABKAUigQEKD1N1YnNjcmliZVJlc3Vs", + "dBIVCg1zZXJ2ZXJfaGFuZGxlGAEgASgFEhMKC3RhZ19hZGRyZXNzGAIgASgJ", + "EhMKC2l0ZW1faGFuZGxlGAMgASgFEhYKDndhc19zdWNjZXNzZnVsGAQgASgI", + "EhUKDWVycm9yX21lc3NhZ2UYBSABKAkiSwoSQnVsa1N1YnNjcmliZVJlcGx5", + "EjUKB3Jlc3VsdHMYASADKAsyJC5teGFjY2Vzc19nYXRld2F5LnYxLlN1YnNj", + "cmliZVJlc3VsdCJFChFTZXNzaW9uU3RhdGVSZXBseRIwCgVzdGF0ZRgBIAEo", + "DjIhLm14YWNjZXNzX2dhdGV3YXkudjEuU2Vzc2lvblN0YXRlInUKD1dvcmtl", + "ckluZm9SZXBseRIZChF3b3JrZXJfcHJvY2Vzc19pZBgBIAEoBRIWCg53b3Jr", + "ZXJfdmVyc2lvbhgCIAEoCRIXCg9teGFjY2Vzc19wcm9naWQYAyABKAkSFgoO", + "bXhhY2Nlc3NfY2xzaWQYBCABKAkiQAoQRHJhaW5FdmVudHNSZXBseRIsCgZl", + "dmVudHMYASADKAsyHC5teGFjY2Vzc19nYXRld2F5LnYxLk14RXZlbnQimwYK", + "B014RXZlbnQSMgoGZmFtaWx5GAEgASgOMiIubXhhY2Nlc3NfZ2F0ZXdheS52", + "MS5NeEV2ZW50RmFtaWx5EhIKCnNlc3Npb25faWQYAiABKAkSFQoNc2VydmVy", + "X2hhbmRsZRgDIAEoBRITCgtpdGVtX2hhbmRsZRgEIAEoBRIrCgV2YWx1ZRgF", + "IAEoCzIcLm14YWNjZXNzX2dhdGV3YXkudjEuTXhWYWx1ZRIPCgdxdWFsaXR5", + "GAYgASgFEjQKEHNvdXJjZV90aW1lc3RhbXAYByABKAsyGi5nb29nbGUucHJv", + "dG9idWYuVGltZXN0YW1wEjQKCHN0YXR1c2VzGAggAygLMiIubXhhY2Nlc3Nf", + "Z2F0ZXdheS52MS5NeFN0YXR1c1Byb3h5EhcKD3dvcmtlcl9zZXF1ZW5jZRgJ", + "IAEoBBI0ChB3b3JrZXJfdGltZXN0YW1wGAogASgLMhouZ29vZ2xlLnByb3Rv", + "YnVmLlRpbWVzdGFtcBI9ChlnYXRld2F5X3JlY2VpdmVfdGltZXN0YW1wGAsg", + "ASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIUCgdocmVzdWx0GAwg", + "ASgFSAGIAQESEgoKcmF3X3N0YXR1cxgNIAEoCRJACg5vbl9kYXRhX2NoYW5n", + "ZRgUIAEoCzImLm14YWNjZXNzX2dhdGV3YXkudjEuT25EYXRhQ2hhbmdlRXZl", + "bnRIABJGChFvbl93cml0ZV9jb21wbGV0ZRgVIAEoCzIpLm14YWNjZXNzX2dh", + "dGV3YXkudjEuT25Xcml0ZUNvbXBsZXRlRXZlbnRIABJJChJvcGVyYXRpb25f", + "Y29tcGxldGUYFiABKAsyKy5teGFjY2Vzc19nYXRld2F5LnYxLk9wZXJhdGlv", + "bkNvbXBsZXRlRXZlbnRIABJRChdvbl9idWZmZXJlZF9kYXRhX2NoYW5nZRgX", + "IAEoCzIuLm14YWNjZXNzX2dhdGV3YXkudjEuT25CdWZmZXJlZERhdGFDaGFu", + "Z2VFdmVudEgAQgYKBGJvZHlCCgoIX2hyZXN1bHQiEwoRT25EYXRhQ2hhbmdl", + "RXZlbnQiFgoUT25Xcml0ZUNvbXBsZXRlRXZlbnQiGAoWT3BlcmF0aW9uQ29t", + "cGxldGVFdmVudCLUAQoZT25CdWZmZXJlZERhdGFDaGFuZ2VFdmVudBIyCglk", + "YXRhX3R5cGUYASABKA4yHy5teGFjY2Vzc19nYXRld2F5LnYxLk14RGF0YVR5", + "cGUSNAoOcXVhbGl0eV92YWx1ZXMYAiABKAsyHC5teGFjY2Vzc19nYXRld2F5", + "LnYxLk14QXJyYXkSNgoQdGltZXN0YW1wX3ZhbHVlcxgDIAEoCzIcLm14YWNj", + "ZXNzX2dhdGV3YXkudjEuTXhBcnJheRIVCg1yYXdfZGF0YV90eXBlGAQgASgF", + "IusBCg1NeFN0YXR1c1Byb3h5Eg8KB3N1Y2Nlc3MYASABKAUSNwoIY2F0ZWdv", + "cnkYAiABKA4yJS5teGFjY2Vzc19nYXRld2F5LnYxLk14U3RhdHVzQ2F0ZWdv", + "cnkSOAoLZGV0ZWN0ZWRfYnkYAyABKA4yIy5teGFjY2Vzc19nYXRld2F5LnYx", + "Lk14U3RhdHVzU291cmNlEg4KBmRldGFpbBgEIAEoBRIUCgxyYXdfY2F0ZWdv", + "cnkYBSABKAUSFwoPcmF3X2RldGVjdGVkX2J5GAYgASgFEhcKD2RpYWdub3N0", + "aWNfdGV4dBgHIAEoCSKnAwoHTXhWYWx1ZRIyCglkYXRhX3R5cGUYASABKA4y", + "Hy5teGFjY2Vzc19nYXRld2F5LnYxLk14RGF0YVR5cGUSFAoMdmFyaWFudF90", + "eXBlGAIgASgJEg8KB2lzX251bGwYAyABKAgSFgoOcmF3X2RpYWdub3N0aWMY", + "BCABKAkSFQoNcmF3X2RhdGFfdHlwZRgFIAEoBRIUCgpib29sX3ZhbHVlGAog", + "ASgISAASFQoLaW50MzJfdmFsdWUYCyABKAVIABIVCgtpbnQ2NF92YWx1ZRgM", + "IAEoA0gAEhUKC2Zsb2F0X3ZhbHVlGA0gASgCSAASFgoMZG91YmxlX3ZhbHVl", + "GA4gASgBSAASFgoMc3RyaW5nX3ZhbHVlGA8gASgJSAASNQoPdGltZXN0YW1w", + "X3ZhbHVlGBAgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAEjMK", + "C2FycmF5X3ZhbHVlGBEgASgLMhwubXhhY2Nlc3NfZ2F0ZXdheS52MS5NeEFy", + "cmF5SAASEwoJcmF3X3ZhbHVlGBIgASgMSABCBgoEa2luZCL+BAoHTXhBcnJh", + "eRI6ChFlbGVtZW50X2RhdGFfdHlwZRgBIAEoDjIfLm14YWNjZXNzX2dhdGV3", + "YXkudjEuTXhEYXRhVHlwZRIUCgx2YXJpYW50X3R5cGUYAiABKAkSEgoKZGlt", + "ZW5zaW9ucxgDIAMoDRIWCg5yYXdfZGlhZ25vc3RpYxgEIAEoCRIdChVyYXdf", + "ZWxlbWVudF9kYXRhX3R5cGUYBSABKAUSNQoLYm9vbF92YWx1ZXMYCiABKAsy", + "Hi5teGFjY2Vzc19nYXRld2F5LnYxLkJvb2xBcnJheUgAEjcKDGludDMyX3Zh", + "bHVlcxgLIAEoCzIfLm14YWNjZXNzX2dhdGV3YXkudjEuSW50MzJBcnJheUgA", + "EjcKDGludDY0X3ZhbHVlcxgMIAEoCzIfLm14YWNjZXNzX2dhdGV3YXkudjEu", + "SW50NjRBcnJheUgAEjcKDGZsb2F0X3ZhbHVlcxgNIAEoCzIfLm14YWNjZXNz", + "X2dhdGV3YXkudjEuRmxvYXRBcnJheUgAEjkKDWRvdWJsZV92YWx1ZXMYDiAB", + "KAsyIC5teGFjY2Vzc19nYXRld2F5LnYxLkRvdWJsZUFycmF5SAASOQoNc3Ry", + "aW5nX3ZhbHVlcxgPIAEoCzIgLm14YWNjZXNzX2dhdGV3YXkudjEuU3RyaW5n", + "QXJyYXlIABI/ChB0aW1lc3RhbXBfdmFsdWVzGBAgASgLMiMubXhhY2Nlc3Nf", + "Z2F0ZXdheS52MS5UaW1lc3RhbXBBcnJheUgAEjMKCnJhd192YWx1ZXMYESAB", + "KAsyHS5teGFjY2Vzc19nYXRld2F5LnYxLlJhd0FycmF5SABCCAoGdmFsdWVz", + "IhsKCUJvb2xBcnJheRIOCgZ2YWx1ZXMYASADKAgiHAoKSW50MzJBcnJheRIO", + "CgZ2YWx1ZXMYASADKAUiHAoKSW50NjRBcnJheRIOCgZ2YWx1ZXMYASADKAMi", + "HAoKRmxvYXRBcnJheRIOCgZ2YWx1ZXMYASADKAIiHQoLRG91YmxlQXJyYXkS", + "DgoGdmFsdWVzGAEgAygBIh0KC1N0cmluZ0FycmF5Eg4KBnZhbHVlcxgBIAMo", + "CSI8Cg5UaW1lc3RhbXBBcnJheRIqCgZ2YWx1ZXMYASADKAsyGi5nb29nbGUu", + "cHJvdG9idWYuVGltZXN0YW1wIhoKCFJhd0FycmF5Eg4KBnZhbHVlcxgBIAMo", + "DCJYCg5Qcm90b2NvbFN0YXR1cxI1CgRjb2RlGAEgASgOMicubXhhY2Nlc3Nf", + "Z2F0ZXdheS52MS5Qcm90b2NvbFN0YXR1c0NvZGUSDwoHbWVzc2FnZRgCIAEo", + "CSqhCAoNTXhDb21tYW5kS2luZBIfChtNWF9DT01NQU5EX0tJTkRfVU5TUEVD", + "SUZJRUQQABIcChhNWF9DT01NQU5EX0tJTkRfUkVHSVNURVIQARIeChpNWF9D", + "T01NQU5EX0tJTkRfVU5SRUdJU1RFUhACEhwKGE1YX0NPTU1BTkRfS0lORF9B", + "RERfSVRFTRADEh0KGU1YX0NPTU1BTkRfS0lORF9BRERfSVRFTTIQBBIfChtN", + "WF9DT01NQU5EX0tJTkRfUkVNT1ZFX0lURU0QBRIaChZNWF9DT01NQU5EX0tJ", + "TkRfQURWSVNFEAYSHQoZTVhfQ09NTUFORF9LSU5EX1VOX0FEVklTRRAHEiYK", + "Ik1YX0NPTU1BTkRfS0lORF9BRFZJU0VfU1VQRVJWSVNPUlkQCBIlCiFNWF9D", + "T01NQU5EX0tJTkRfQUREX0JVRkZFUkVEX0lURU0QCRIwCixNWF9DT01NQU5E", + "X0tJTkRfU0VUX0JVRkZFUkVEX1VQREFURV9JTlRFUlZBTBAKEhsKF01YX0NP", + "TU1BTkRfS0lORF9TVVNQRU5EEAsSHAoYTVhfQ09NTUFORF9LSU5EX0FDVElW", + "QVRFEAwSGQoVTVhfQ09NTUFORF9LSU5EX1dSSVRFEA0SGgoWTVhfQ09NTUFO", + "RF9LSU5EX1dSSVRFMhAOEiEKHU1YX0NPTU1BTkRfS0lORF9XUklURV9TRUNV", + "UkVEEA8SIgoeTVhfQ09NTUFORF9LSU5EX1dSSVRFX1NFQ1VSRUQyEBASJQoh", + "TVhfQ09NTUFORF9LSU5EX0FVVEhFTlRJQ0FURV9VU0VSEBESKAokTVhfQ09N", + "TUFORF9LSU5EX0FSQ0hFU1RSQV9VU0VSX1RPX0lEEBISIQodTVhfQ09NTUFO", + "RF9LSU5EX0FERF9JVEVNX0JVTEsQExIkCiBNWF9DT01NQU5EX0tJTkRfQURW", + "SVNFX0lURU1fQlVMSxAUEiQKIE1YX0NPTU1BTkRfS0lORF9SRU1PVkVfSVRF", + "TV9CVUxLEBUSJwojTVhfQ09NTUFORF9LSU5EX1VOX0FEVklTRV9JVEVNX0JV", + "TEsQFhIiCh5NWF9DT01NQU5EX0tJTkRfU1VCU0NSSUJFX0JVTEsQFxIkCiBN", + "WF9DT01NQU5EX0tJTkRfVU5TVUJTQ1JJQkVfQlVMSxAYEhgKFE1YX0NPTU1B", + "TkRfS0lORF9QSU5HEGQSJQohTVhfQ09NTUFORF9LSU5EX0dFVF9TRVNTSU9O", + "X1NUQVRFEGUSIwofTVhfQ09NTUFORF9LSU5EX0dFVF9XT1JLRVJfSU5GTxBm", + "EiAKHE1YX0NPTU1BTkRfS0lORF9EUkFJTl9FVkVOVFMQZxIjCh9NWF9DT01N", + "QU5EX0tJTkRfU0hVVERPV05fV09SS0VSEGgq0AEKDU14RXZlbnRGYW1pbHkS", + "HwobTVhfRVZFTlRfRkFNSUxZX1VOU1BFQ0lGSUVEEAASIgoeTVhfRVZFTlRf", + "RkFNSUxZX09OX0RBVEFfQ0hBTkdFEAESJQohTVhfRVZFTlRfRkFNSUxZX09O", + "X1dSSVRFX0NPTVBMRVRFEAISJgoiTVhfRVZFTlRfRkFNSUxZX09QRVJBVElP", + "Tl9DT01QTEVURRADEisKJ01YX0VWRU5UX0ZBTUlMWV9PTl9CVUZGRVJFRF9E", + "QVRBX0NIQU5HRRAEKqUDChBNeFN0YXR1c0NhdGVnb3J5EiIKHk1YX1NUQVRV", + "U19DQVRFR09SWV9VTlNQRUNJRklFRBAAEh4KGk1YX1NUQVRVU19DQVRFR09S", + "WV9VTktOT1dOEAESGQoVTVhfU1RBVFVTX0NBVEVHT1JZX09LEAISHgoaTVhf", + "U1RBVFVTX0NBVEVHT1JZX1BFTkRJTkcQAxIeChpNWF9TVEFUVVNfQ0FURUdP", + "UllfV0FSTklORxAEEioKJk1YX1NUQVRVU19DQVRFR09SWV9DT01NVU5JQ0FU", + "SU9OX0VSUk9SEAUSKgomTVhfU1RBVFVTX0NBVEVHT1JZX0NPTkZJR1VSQVRJ", + "T05fRVJST1IQBhIoCiRNWF9TVEFUVVNfQ0FURUdPUllfT1BFUkFUSU9OQUxf", + "RVJST1IQBxIlCiFNWF9TVEFUVVNfQ0FURUdPUllfU0VDVVJJVFlfRVJST1IQ", + "CBIlCiFNWF9TVEFUVVNfQ0FURUdPUllfU09GVFdBUkVfRVJST1IQCRIiCh5N", + "WF9TVEFUVVNfQ0FURUdPUllfT1RIRVJfRVJST1IQCirKAgoOTXhTdGF0dXNT", + "b3VyY2USIAocTVhfU1RBVFVTX1NPVVJDRV9VTlNQRUNJRklFRBAAEhwKGE1Y", + "X1NUQVRVU19TT1VSQ0VfVU5LTk9XThABEiMKH01YX1NUQVRVU19TT1VSQ0Vf", + "UkVRVUVTVElOR19MTVgQAhIjCh9NWF9TVEFUVVNfU09VUkNFX1JFU1BPTkRJ", + "TkdfTE1YEAMSIwofTVhfU1RBVFVTX1NPVVJDRV9SRVFVRVNUSU5HX05NWBAE", + "EiMKH01YX1NUQVRVU19TT1VSQ0VfUkVTUE9ORElOR19OTVgQBRIxCi1NWF9T", + "VEFUVVNfU09VUkNFX1JFUVVFU1RJTkdfQVVUT01BVElPTl9PQkpFQ1QQBhIx", + "Ci1NWF9TVEFUVVNfU09VUkNFX1JFU1BPTkRJTkdfQVVUT01BVElPTl9PQkpF", + "Q1QQByrdBAoKTXhEYXRhVHlwZRIcChhNWF9EQVRBX1RZUEVfVU5TUEVDSUZJ", + "RUQQABIYChRNWF9EQVRBX1RZUEVfVU5LTk9XThABEhgKFE1YX0RBVEFfVFlQ", + "RV9OT19EQVRBEAISGAoUTVhfREFUQV9UWVBFX0JPT0xFQU4QAxIYChRNWF9E", + "QVRBX1RZUEVfSU5URUdFUhAEEhYKEk1YX0RBVEFfVFlQRV9GTE9BVBAFEhcK", + "E01YX0RBVEFfVFlQRV9ET1VCTEUQBhIXChNNWF9EQVRBX1RZUEVfU1RSSU5H", + "EAcSFQoRTVhfREFUQV9UWVBFX1RJTUUQCBIdChlNWF9EQVRBX1RZUEVfRUxB", + "UFNFRF9USU1FEAkSHwobTVhfREFUQV9UWVBFX1JFRkVSRU5DRV9UWVBFEAoS", + "HAoYTVhfREFUQV9UWVBFX1NUQVRVU19UWVBFEAsSFQoRTVhfREFUQV9UWVBF", + "X0VOVU0QDBItCilNWF9EQVRBX1RZUEVfU0VDVVJJVFlfQ0xBU1NJRklDQVRJ", + "T05fRU5VTRANEiIKHk1YX0RBVEFfVFlQRV9EQVRBX1FVQUxJVFlfVFlQRRAO", + "Eh8KG01YX0RBVEFfVFlQRV9RVUFMSUZJRURfRU5VTRAPEiEKHU1YX0RBVEFf", + "VFlQRV9RVUFMSUZJRURfU1RSVUNUEBASKQolTVhfREFUQV9UWVBFX0lOVEVS", + "TkFUSU9OQUxJWkVEX1NUUklORxAREhsKF01YX0RBVEFfVFlQRV9CSUdfU1RS", + "SU5HEBISFAoQTVhfREFUQV9UWVBFX0VORBATKqMDChJQcm90b2NvbFN0YXR1", + "c0NvZGUSJAogUFJPVE9DT0xfU1RBVFVTX0NPREVfVU5TUEVDSUZJRUQQABIb", + "ChdQUk9UT0NPTF9TVEFUVVNfQ09ERV9PSxABEigKJFBST1RPQ09MX1NUQVRV", + "U19DT0RFX0lOVkFMSURfUkVRVUVTVBACEioKJlBST1RPQ09MX1NUQVRVU19D", + "T0RFX1NFU1NJT05fTk9UX0ZPVU5EEAMSKgomUFJPVE9DT0xfU1RBVFVTX0NP", + "REVfU0VTU0lPTl9OT1RfUkVBRFkQBBIrCidQUk9UT0NPTF9TVEFUVVNfQ09E", + "RV9XT1JLRVJfVU5BVkFJTEFCTEUQBRIgChxQUk9UT0NPTF9TVEFUVVNfQ09E", + "RV9USU1FT1VUEAYSIQodUFJPVE9DT0xfU1RBVFVTX0NPREVfQ0FOQ0VMRUQQ", + "BxIrCidQUk9UT0NPTF9TVEFUVVNfQ09ERV9QUk9UT0NPTF9WSU9MQVRJT04Q", + "CBIpCiVQUk9UT0NPTF9TVEFUVVNfQ09ERV9NWEFDQ0VTU19GQUlMVVJFEAkq", + "vwIKDFNlc3Npb25TdGF0ZRIdChlTRVNTSU9OX1NUQVRFX1VOU1BFQ0lGSUVE", + "EAASGgoWU0VTU0lPTl9TVEFURV9DUkVBVElORxABEiEKHVNFU1NJT05fU1RB", + "VEVfU1RBUlRJTkdfV09SS0VSEAISIgoeU0VTU0lPTl9TVEFURV9XQUlUSU5H", + "X0ZPUl9QSVBFEAMSHQoZU0VTU0lPTl9TVEFURV9IQU5EU0hBS0lORxAEEiUK", + "IVNFU1NJT05fU1RBVEVfSU5JVElBTElaSU5HX1dPUktFUhAFEhcKE1NFU1NJ", + "T05fU1RBVEVfUkVBRFkQBhIZChVTRVNTSU9OX1NUQVRFX0NMT1NJTkcQBxIY", + "ChRTRVNTSU9OX1NUQVRFX0NMT1NFRBAIEhkKFVNFU1NJT05fU1RBVEVfRkFV", + "TFRFRBAJMoIDCg9NeEFjY2Vzc0dhdGV3YXkSXQoLT3BlblNlc3Npb24SJy5t", + "eGFjY2Vzc19nYXRld2F5LnYxLk9wZW5TZXNzaW9uUmVxdWVzdBolLm14YWNj", + "ZXNzX2dhdGV3YXkudjEuT3BlblNlc3Npb25SZXBseRJgCgxDbG9zZVNlc3Np", + "b24SKC5teGFjY2Vzc19nYXRld2F5LnYxLkNsb3NlU2Vzc2lvblJlcXVlc3Qa", + "Ji5teGFjY2Vzc19nYXRld2F5LnYxLkNsb3NlU2Vzc2lvblJlcGx5ElQKBklu", + "dm9rZRIlLm14YWNjZXNzX2dhdGV3YXkudjEuTXhDb21tYW5kUmVxdWVzdBoj", + "Lm14YWNjZXNzX2dhdGV3YXkudjEuTXhDb21tYW5kUmVwbHkSWAoMU3RyZWFt", + "RXZlbnRzEigubXhhY2Nlc3NfZ2F0ZXdheS52MS5TdHJlYW1FdmVudHNSZXF1", + "ZXN0GhwubXhhY2Nlc3NfZ2F0ZXdheS52MS5NeEV2ZW50MAFCHKoCGU14R2F0", + "ZXdheS5Db250cmFjdHMuUHJvdG9iBnByb3RvMw==")); descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData, new pbr::FileDescriptor[] { global::Google.Protobuf.WellKnownTypes.DurationReflection.Descriptor, global::Google.Protobuf.WellKnownTypes.TimestampReflection.Descriptor, }, new pbr::GeneratedClrTypeInfo(new[] {typeof(global::MxGateway.Contracts.Proto.MxCommandKind), typeof(global::MxGateway.Contracts.Proto.MxEventFamily), typeof(global::MxGateway.Contracts.Proto.MxStatusCategory), typeof(global::MxGateway.Contracts.Proto.MxStatusSource), typeof(global::MxGateway.Contracts.Proto.MxDataType), typeof(global::MxGateway.Contracts.Proto.ProtocolStatusCode), typeof(global::MxGateway.Contracts.Proto.SessionState), }, null, new pbr::GeneratedClrTypeInfo[] { @@ -310,7 +348,7 @@ namespace MxGateway.Contracts.Proto { new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.CloseSessionReply), global::MxGateway.Contracts.Proto.CloseSessionReply.Parser, new[]{ "SessionId", "FinalState", "ProtocolStatus" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.StreamEventsRequest), global::MxGateway.Contracts.Proto.StreamEventsRequest.Parser, new[]{ "SessionId", "AfterWorkerSequence" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.MxCommandRequest), global::MxGateway.Contracts.Proto.MxCommandRequest.Parser, new[]{ "SessionId", "ClientCorrelationId", "Command" }, null, null, null, null), - new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.MxCommand), global::MxGateway.Contracts.Proto.MxCommand.Parser, new[]{ "Kind", "Register", "Unregister", "AddItem", "AddItem2", "RemoveItem", "Advise", "UnAdvise", "AdviseSupervisory", "AddBufferedItem", "SetBufferedUpdateInterval", "Suspend", "Activate", "Write", "Write2", "WriteSecured", "WriteSecured2", "AuthenticateUser", "ArchestraUserToId", "Ping", "GetSessionState", "GetWorkerInfo", "DrainEvents", "ShutdownWorker" }, new[]{ "Payload" }, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.MxCommand), global::MxGateway.Contracts.Proto.MxCommand.Parser, new[]{ "Kind", "Register", "Unregister", "AddItem", "AddItem2", "RemoveItem", "Advise", "UnAdvise", "AdviseSupervisory", "AddBufferedItem", "SetBufferedUpdateInterval", "Suspend", "Activate", "Write", "Write2", "WriteSecured", "WriteSecured2", "AuthenticateUser", "ArchestraUserToId", "AddItemBulk", "AdviseItemBulk", "RemoveItemBulk", "UnAdviseItemBulk", "SubscribeBulk", "UnsubscribeBulk", "Ping", "GetSessionState", "GetWorkerInfo", "DrainEvents", "ShutdownWorker" }, new[]{ "Payload" }, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.RegisterCommand), global::MxGateway.Contracts.Proto.RegisterCommand.Parser, new[]{ "ClientName" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.UnregisterCommand), global::MxGateway.Contracts.Proto.UnregisterCommand.Parser, new[]{ "ServerHandle" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.AddItemCommand), global::MxGateway.Contracts.Proto.AddItemCommand.Parser, new[]{ "ServerHandle", "ItemDefinition" }, null, null, null, null), @@ -329,12 +367,18 @@ namespace MxGateway.Contracts.Proto { new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.WriteSecured2Command), global::MxGateway.Contracts.Proto.WriteSecured2Command.Parser, new[]{ "ServerHandle", "ItemHandle", "CurrentUserId", "VerifierUserId", "Value", "TimestampValue" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.AuthenticateUserCommand), global::MxGateway.Contracts.Proto.AuthenticateUserCommand.Parser, new[]{ "ServerHandle", "VerifyUser", "VerifyUserPassword" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.ArchestrAUserToIdCommand), global::MxGateway.Contracts.Proto.ArchestrAUserToIdCommand.Parser, new[]{ "ServerHandle", "UserIdGuid" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.AddItemBulkCommand), global::MxGateway.Contracts.Proto.AddItemBulkCommand.Parser, new[]{ "ServerHandle", "TagAddresses" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.AdviseItemBulkCommand), global::MxGateway.Contracts.Proto.AdviseItemBulkCommand.Parser, new[]{ "ServerHandle", "ItemHandles" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.RemoveItemBulkCommand), global::MxGateway.Contracts.Proto.RemoveItemBulkCommand.Parser, new[]{ "ServerHandle", "ItemHandles" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.UnAdviseItemBulkCommand), global::MxGateway.Contracts.Proto.UnAdviseItemBulkCommand.Parser, new[]{ "ServerHandle", "ItemHandles" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.SubscribeBulkCommand), global::MxGateway.Contracts.Proto.SubscribeBulkCommand.Parser, new[]{ "ServerHandle", "TagAddresses" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.UnsubscribeBulkCommand), global::MxGateway.Contracts.Proto.UnsubscribeBulkCommand.Parser, new[]{ "ServerHandle", "ItemHandles" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.PingCommand), global::MxGateway.Contracts.Proto.PingCommand.Parser, new[]{ "Message" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.GetSessionStateCommand), global::MxGateway.Contracts.Proto.GetSessionStateCommand.Parser, null, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.GetWorkerInfoCommand), global::MxGateway.Contracts.Proto.GetWorkerInfoCommand.Parser, null, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.DrainEventsCommand), global::MxGateway.Contracts.Proto.DrainEventsCommand.Parser, new[]{ "MaxEvents" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.ShutdownWorkerCommand), global::MxGateway.Contracts.Proto.ShutdownWorkerCommand.Parser, new[]{ "GracePeriod" }, null, null, null, null), - new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.MxCommandReply), global::MxGateway.Contracts.Proto.MxCommandReply.Parser, new[]{ "SessionId", "CorrelationId", "Kind", "ProtocolStatus", "Hresult", "ReturnValue", "Statuses", "DiagnosticMessage", "Register", "AddItem", "AddItem2", "AddBufferedItem", "Suspend", "Activate", "AuthenticateUser", "ArchestraUserToId", "SessionState", "WorkerInfo", "DrainEvents" }, new[]{ "Payload", "Hresult" }, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.MxCommandReply), global::MxGateway.Contracts.Proto.MxCommandReply.Parser, new[]{ "SessionId", "CorrelationId", "Kind", "ProtocolStatus", "Hresult", "ReturnValue", "Statuses", "DiagnosticMessage", "Register", "AddItem", "AddItem2", "AddBufferedItem", "Suspend", "Activate", "AuthenticateUser", "ArchestraUserToId", "AddItemBulk", "AdviseItemBulk", "RemoveItemBulk", "UnAdviseItemBulk", "SubscribeBulk", "UnsubscribeBulk", "SessionState", "WorkerInfo", "DrainEvents" }, new[]{ "Payload", "Hresult" }, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.RegisterReply), global::MxGateway.Contracts.Proto.RegisterReply.Parser, new[]{ "ServerHandle" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.AddItemReply), global::MxGateway.Contracts.Proto.AddItemReply.Parser, new[]{ "ItemHandle" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.AddItem2Reply), global::MxGateway.Contracts.Proto.AddItem2Reply.Parser, new[]{ "ItemHandle" }, null, null, null, null), @@ -343,6 +387,8 @@ namespace MxGateway.Contracts.Proto { new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.ActivateReply), global::MxGateway.Contracts.Proto.ActivateReply.Parser, new[]{ "Status" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.AuthenticateUserReply), global::MxGateway.Contracts.Proto.AuthenticateUserReply.Parser, new[]{ "UserId" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.ArchestrAUserToIdReply), global::MxGateway.Contracts.Proto.ArchestrAUserToIdReply.Parser, new[]{ "UserId" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.SubscribeResult), global::MxGateway.Contracts.Proto.SubscribeResult.Parser, new[]{ "ServerHandle", "TagAddress", "ItemHandle", "WasSuccessful", "ErrorMessage" }, null, null, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.BulkSubscribeReply), global::MxGateway.Contracts.Proto.BulkSubscribeReply.Parser, new[]{ "Results" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.SessionStateReply), global::MxGateway.Contracts.Proto.SessionStateReply.Parser, new[]{ "State" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.WorkerInfoReply), global::MxGateway.Contracts.Proto.WorkerInfoReply.Parser, new[]{ "WorkerProcessId", "WorkerVersion", "MxaccessProgid", "MxaccessClsid" }, null, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::MxGateway.Contracts.Proto.DrainEventsReply), global::MxGateway.Contracts.Proto.DrainEventsReply.Parser, new[]{ "Events" }, null, null, null, null), @@ -389,6 +435,12 @@ namespace MxGateway.Contracts.Proto { [pbr::OriginalName("MX_COMMAND_KIND_WRITE_SECURED2")] WriteSecured2 = 16, [pbr::OriginalName("MX_COMMAND_KIND_AUTHENTICATE_USER")] AuthenticateUser = 17, [pbr::OriginalName("MX_COMMAND_KIND_ARCHESTRA_USER_TO_ID")] ArchestraUserToId = 18, + [pbr::OriginalName("MX_COMMAND_KIND_ADD_ITEM_BULK")] AddItemBulk = 19, + [pbr::OriginalName("MX_COMMAND_KIND_ADVISE_ITEM_BULK")] AdviseItemBulk = 20, + [pbr::OriginalName("MX_COMMAND_KIND_REMOVE_ITEM_BULK")] RemoveItemBulk = 21, + [pbr::OriginalName("MX_COMMAND_KIND_UN_ADVISE_ITEM_BULK")] UnAdviseItemBulk = 22, + [pbr::OriginalName("MX_COMMAND_KIND_SUBSCRIBE_BULK")] SubscribeBulk = 23, + [pbr::OriginalName("MX_COMMAND_KIND_UNSUBSCRIBE_BULK")] UnsubscribeBulk = 24, [pbr::OriginalName("MX_COMMAND_KIND_PING")] Ping = 100, [pbr::OriginalName("MX_COMMAND_KIND_GET_SESSION_STATE")] GetSessionState = 101, [pbr::OriginalName("MX_COMMAND_KIND_GET_WORKER_INFO")] GetWorkerInfo = 102, @@ -2391,6 +2443,24 @@ namespace MxGateway.Contracts.Proto { case PayloadOneofCase.ArchestraUserToId: ArchestraUserToId = other.ArchestraUserToId.Clone(); break; + case PayloadOneofCase.AddItemBulk: + AddItemBulk = other.AddItemBulk.Clone(); + break; + case PayloadOneofCase.AdviseItemBulk: + AdviseItemBulk = other.AdviseItemBulk.Clone(); + break; + case PayloadOneofCase.RemoveItemBulk: + RemoveItemBulk = other.RemoveItemBulk.Clone(); + break; + case PayloadOneofCase.UnAdviseItemBulk: + UnAdviseItemBulk = other.UnAdviseItemBulk.Clone(); + break; + case PayloadOneofCase.SubscribeBulk: + SubscribeBulk = other.SubscribeBulk.Clone(); + break; + case PayloadOneofCase.UnsubscribeBulk: + UnsubscribeBulk = other.UnsubscribeBulk.Clone(); + break; case PayloadOneofCase.Ping: Ping = other.Ping.Clone(); break; @@ -2645,6 +2715,78 @@ namespace MxGateway.Contracts.Proto { } } + /// Field number for the "add_item_bulk" field. + public const int AddItemBulkFieldNumber = 28; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::MxGateway.Contracts.Proto.AddItemBulkCommand AddItemBulk { + get { return payloadCase_ == PayloadOneofCase.AddItemBulk ? (global::MxGateway.Contracts.Proto.AddItemBulkCommand) payload_ : null; } + set { + payload_ = value; + payloadCase_ = value == null ? PayloadOneofCase.None : PayloadOneofCase.AddItemBulk; + } + } + + /// Field number for the "advise_item_bulk" field. + public const int AdviseItemBulkFieldNumber = 29; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::MxGateway.Contracts.Proto.AdviseItemBulkCommand AdviseItemBulk { + get { return payloadCase_ == PayloadOneofCase.AdviseItemBulk ? (global::MxGateway.Contracts.Proto.AdviseItemBulkCommand) payload_ : null; } + set { + payload_ = value; + payloadCase_ = value == null ? PayloadOneofCase.None : PayloadOneofCase.AdviseItemBulk; + } + } + + /// Field number for the "remove_item_bulk" field. + public const int RemoveItemBulkFieldNumber = 30; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::MxGateway.Contracts.Proto.RemoveItemBulkCommand RemoveItemBulk { + get { return payloadCase_ == PayloadOneofCase.RemoveItemBulk ? (global::MxGateway.Contracts.Proto.RemoveItemBulkCommand) payload_ : null; } + set { + payload_ = value; + payloadCase_ = value == null ? PayloadOneofCase.None : PayloadOneofCase.RemoveItemBulk; + } + } + + /// Field number for the "un_advise_item_bulk" field. + public const int UnAdviseItemBulkFieldNumber = 31; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::MxGateway.Contracts.Proto.UnAdviseItemBulkCommand UnAdviseItemBulk { + get { return payloadCase_ == PayloadOneofCase.UnAdviseItemBulk ? (global::MxGateway.Contracts.Proto.UnAdviseItemBulkCommand) payload_ : null; } + set { + payload_ = value; + payloadCase_ = value == null ? PayloadOneofCase.None : PayloadOneofCase.UnAdviseItemBulk; + } + } + + /// Field number for the "subscribe_bulk" field. + public const int SubscribeBulkFieldNumber = 32; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::MxGateway.Contracts.Proto.SubscribeBulkCommand SubscribeBulk { + get { return payloadCase_ == PayloadOneofCase.SubscribeBulk ? (global::MxGateway.Contracts.Proto.SubscribeBulkCommand) payload_ : null; } + set { + payload_ = value; + payloadCase_ = value == null ? PayloadOneofCase.None : PayloadOneofCase.SubscribeBulk; + } + } + + /// Field number for the "unsubscribe_bulk" field. + public const int UnsubscribeBulkFieldNumber = 33; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::MxGateway.Contracts.Proto.UnsubscribeBulkCommand UnsubscribeBulk { + get { return payloadCase_ == PayloadOneofCase.UnsubscribeBulk ? (global::MxGateway.Contracts.Proto.UnsubscribeBulkCommand) payload_ : null; } + set { + payload_ = value; + payloadCase_ = value == null ? PayloadOneofCase.None : PayloadOneofCase.UnsubscribeBulk; + } + } + /// Field number for the "ping" field. public const int PingFieldNumber = 100; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -2727,6 +2869,12 @@ namespace MxGateway.Contracts.Proto { WriteSecured2 = 25, AuthenticateUser = 26, ArchestraUserToId = 27, + AddItemBulk = 28, + AdviseItemBulk = 29, + RemoveItemBulk = 30, + UnAdviseItemBulk = 31, + SubscribeBulk = 32, + UnsubscribeBulk = 33, Ping = 100, GetSessionState = 101, GetWorkerInfo = 102, @@ -2781,6 +2929,12 @@ namespace MxGateway.Contracts.Proto { if (!object.Equals(WriteSecured2, other.WriteSecured2)) return false; if (!object.Equals(AuthenticateUser, other.AuthenticateUser)) return false; if (!object.Equals(ArchestraUserToId, other.ArchestraUserToId)) return false; + if (!object.Equals(AddItemBulk, other.AddItemBulk)) return false; + if (!object.Equals(AdviseItemBulk, other.AdviseItemBulk)) return false; + if (!object.Equals(RemoveItemBulk, other.RemoveItemBulk)) return false; + if (!object.Equals(UnAdviseItemBulk, other.UnAdviseItemBulk)) return false; + if (!object.Equals(SubscribeBulk, other.SubscribeBulk)) return false; + if (!object.Equals(UnsubscribeBulk, other.UnsubscribeBulk)) return false; if (!object.Equals(Ping, other.Ping)) return false; if (!object.Equals(GetSessionState, other.GetSessionState)) return false; if (!object.Equals(GetWorkerInfo, other.GetWorkerInfo)) return false; @@ -2813,6 +2967,12 @@ namespace MxGateway.Contracts.Proto { if (payloadCase_ == PayloadOneofCase.WriteSecured2) hash ^= WriteSecured2.GetHashCode(); if (payloadCase_ == PayloadOneofCase.AuthenticateUser) hash ^= AuthenticateUser.GetHashCode(); if (payloadCase_ == PayloadOneofCase.ArchestraUserToId) hash ^= ArchestraUserToId.GetHashCode(); + if (payloadCase_ == PayloadOneofCase.AddItemBulk) hash ^= AddItemBulk.GetHashCode(); + if (payloadCase_ == PayloadOneofCase.AdviseItemBulk) hash ^= AdviseItemBulk.GetHashCode(); + if (payloadCase_ == PayloadOneofCase.RemoveItemBulk) hash ^= RemoveItemBulk.GetHashCode(); + if (payloadCase_ == PayloadOneofCase.UnAdviseItemBulk) hash ^= UnAdviseItemBulk.GetHashCode(); + if (payloadCase_ == PayloadOneofCase.SubscribeBulk) hash ^= SubscribeBulk.GetHashCode(); + if (payloadCase_ == PayloadOneofCase.UnsubscribeBulk) hash ^= UnsubscribeBulk.GetHashCode(); if (payloadCase_ == PayloadOneofCase.Ping) hash ^= Ping.GetHashCode(); if (payloadCase_ == PayloadOneofCase.GetSessionState) hash ^= GetSessionState.GetHashCode(); if (payloadCase_ == PayloadOneofCase.GetWorkerInfo) hash ^= GetWorkerInfo.GetHashCode(); @@ -2913,6 +3073,30 @@ namespace MxGateway.Contracts.Proto { output.WriteRawTag(218, 1); output.WriteMessage(ArchestraUserToId); } + if (payloadCase_ == PayloadOneofCase.AddItemBulk) { + output.WriteRawTag(226, 1); + output.WriteMessage(AddItemBulk); + } + if (payloadCase_ == PayloadOneofCase.AdviseItemBulk) { + output.WriteRawTag(234, 1); + output.WriteMessage(AdviseItemBulk); + } + if (payloadCase_ == PayloadOneofCase.RemoveItemBulk) { + output.WriteRawTag(242, 1); + output.WriteMessage(RemoveItemBulk); + } + if (payloadCase_ == PayloadOneofCase.UnAdviseItemBulk) { + output.WriteRawTag(250, 1); + output.WriteMessage(UnAdviseItemBulk); + } + if (payloadCase_ == PayloadOneofCase.SubscribeBulk) { + output.WriteRawTag(130, 2); + output.WriteMessage(SubscribeBulk); + } + if (payloadCase_ == PayloadOneofCase.UnsubscribeBulk) { + output.WriteRawTag(138, 2); + output.WriteMessage(UnsubscribeBulk); + } if (payloadCase_ == PayloadOneofCase.Ping) { output.WriteRawTag(162, 6); output.WriteMessage(Ping); @@ -3019,6 +3203,30 @@ namespace MxGateway.Contracts.Proto { output.WriteRawTag(218, 1); output.WriteMessage(ArchestraUserToId); } + if (payloadCase_ == PayloadOneofCase.AddItemBulk) { + output.WriteRawTag(226, 1); + output.WriteMessage(AddItemBulk); + } + if (payloadCase_ == PayloadOneofCase.AdviseItemBulk) { + output.WriteRawTag(234, 1); + output.WriteMessage(AdviseItemBulk); + } + if (payloadCase_ == PayloadOneofCase.RemoveItemBulk) { + output.WriteRawTag(242, 1); + output.WriteMessage(RemoveItemBulk); + } + if (payloadCase_ == PayloadOneofCase.UnAdviseItemBulk) { + output.WriteRawTag(250, 1); + output.WriteMessage(UnAdviseItemBulk); + } + if (payloadCase_ == PayloadOneofCase.SubscribeBulk) { + output.WriteRawTag(130, 2); + output.WriteMessage(SubscribeBulk); + } + if (payloadCase_ == PayloadOneofCase.UnsubscribeBulk) { + output.WriteRawTag(138, 2); + output.WriteMessage(UnsubscribeBulk); + } if (payloadCase_ == PayloadOneofCase.Ping) { output.WriteRawTag(162, 6); output.WriteMessage(Ping); @@ -3106,6 +3314,24 @@ namespace MxGateway.Contracts.Proto { if (payloadCase_ == PayloadOneofCase.ArchestraUserToId) { size += 2 + pb::CodedOutputStream.ComputeMessageSize(ArchestraUserToId); } + if (payloadCase_ == PayloadOneofCase.AddItemBulk) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(AddItemBulk); + } + if (payloadCase_ == PayloadOneofCase.AdviseItemBulk) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(AdviseItemBulk); + } + if (payloadCase_ == PayloadOneofCase.RemoveItemBulk) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(RemoveItemBulk); + } + if (payloadCase_ == PayloadOneofCase.UnAdviseItemBulk) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(UnAdviseItemBulk); + } + if (payloadCase_ == PayloadOneofCase.SubscribeBulk) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(SubscribeBulk); + } + if (payloadCase_ == PayloadOneofCase.UnsubscribeBulk) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(UnsubscribeBulk); + } if (payloadCase_ == PayloadOneofCase.Ping) { size += 2 + pb::CodedOutputStream.ComputeMessageSize(Ping); } @@ -3245,6 +3471,42 @@ namespace MxGateway.Contracts.Proto { } ArchestraUserToId.MergeFrom(other.ArchestraUserToId); break; + case PayloadOneofCase.AddItemBulk: + if (AddItemBulk == null) { + AddItemBulk = new global::MxGateway.Contracts.Proto.AddItemBulkCommand(); + } + AddItemBulk.MergeFrom(other.AddItemBulk); + break; + case PayloadOneofCase.AdviseItemBulk: + if (AdviseItemBulk == null) { + AdviseItemBulk = new global::MxGateway.Contracts.Proto.AdviseItemBulkCommand(); + } + AdviseItemBulk.MergeFrom(other.AdviseItemBulk); + break; + case PayloadOneofCase.RemoveItemBulk: + if (RemoveItemBulk == null) { + RemoveItemBulk = new global::MxGateway.Contracts.Proto.RemoveItemBulkCommand(); + } + RemoveItemBulk.MergeFrom(other.RemoveItemBulk); + break; + case PayloadOneofCase.UnAdviseItemBulk: + if (UnAdviseItemBulk == null) { + UnAdviseItemBulk = new global::MxGateway.Contracts.Proto.UnAdviseItemBulkCommand(); + } + UnAdviseItemBulk.MergeFrom(other.UnAdviseItemBulk); + break; + case PayloadOneofCase.SubscribeBulk: + if (SubscribeBulk == null) { + SubscribeBulk = new global::MxGateway.Contracts.Proto.SubscribeBulkCommand(); + } + SubscribeBulk.MergeFrom(other.SubscribeBulk); + break; + case PayloadOneofCase.UnsubscribeBulk: + if (UnsubscribeBulk == null) { + UnsubscribeBulk = new global::MxGateway.Contracts.Proto.UnsubscribeBulkCommand(); + } + UnsubscribeBulk.MergeFrom(other.UnsubscribeBulk); + break; case PayloadOneofCase.Ping: if (Ping == null) { Ping = new global::MxGateway.Contracts.Proto.PingCommand(); @@ -3462,6 +3724,60 @@ namespace MxGateway.Contracts.Proto { ArchestraUserToId = subBuilder; break; } + case 226: { + global::MxGateway.Contracts.Proto.AddItemBulkCommand subBuilder = new global::MxGateway.Contracts.Proto.AddItemBulkCommand(); + if (payloadCase_ == PayloadOneofCase.AddItemBulk) { + subBuilder.MergeFrom(AddItemBulk); + } + input.ReadMessage(subBuilder); + AddItemBulk = subBuilder; + break; + } + case 234: { + global::MxGateway.Contracts.Proto.AdviseItemBulkCommand subBuilder = new global::MxGateway.Contracts.Proto.AdviseItemBulkCommand(); + if (payloadCase_ == PayloadOneofCase.AdviseItemBulk) { + subBuilder.MergeFrom(AdviseItemBulk); + } + input.ReadMessage(subBuilder); + AdviseItemBulk = subBuilder; + break; + } + case 242: { + global::MxGateway.Contracts.Proto.RemoveItemBulkCommand subBuilder = new global::MxGateway.Contracts.Proto.RemoveItemBulkCommand(); + if (payloadCase_ == PayloadOneofCase.RemoveItemBulk) { + subBuilder.MergeFrom(RemoveItemBulk); + } + input.ReadMessage(subBuilder); + RemoveItemBulk = subBuilder; + break; + } + case 250: { + global::MxGateway.Contracts.Proto.UnAdviseItemBulkCommand subBuilder = new global::MxGateway.Contracts.Proto.UnAdviseItemBulkCommand(); + if (payloadCase_ == PayloadOneofCase.UnAdviseItemBulk) { + subBuilder.MergeFrom(UnAdviseItemBulk); + } + input.ReadMessage(subBuilder); + UnAdviseItemBulk = subBuilder; + break; + } + case 258: { + global::MxGateway.Contracts.Proto.SubscribeBulkCommand subBuilder = new global::MxGateway.Contracts.Proto.SubscribeBulkCommand(); + if (payloadCase_ == PayloadOneofCase.SubscribeBulk) { + subBuilder.MergeFrom(SubscribeBulk); + } + input.ReadMessage(subBuilder); + SubscribeBulk = subBuilder; + break; + } + case 266: { + global::MxGateway.Contracts.Proto.UnsubscribeBulkCommand subBuilder = new global::MxGateway.Contracts.Proto.UnsubscribeBulkCommand(); + if (payloadCase_ == PayloadOneofCase.UnsubscribeBulk) { + subBuilder.MergeFrom(UnsubscribeBulk); + } + input.ReadMessage(subBuilder); + UnsubscribeBulk = subBuilder; + break; + } case 802: { global::MxGateway.Contracts.Proto.PingCommand subBuilder = new global::MxGateway.Contracts.Proto.PingCommand(); if (payloadCase_ == PayloadOneofCase.Ping) { @@ -3692,6 +4008,60 @@ namespace MxGateway.Contracts.Proto { ArchestraUserToId = subBuilder; break; } + case 226: { + global::MxGateway.Contracts.Proto.AddItemBulkCommand subBuilder = new global::MxGateway.Contracts.Proto.AddItemBulkCommand(); + if (payloadCase_ == PayloadOneofCase.AddItemBulk) { + subBuilder.MergeFrom(AddItemBulk); + } + input.ReadMessage(subBuilder); + AddItemBulk = subBuilder; + break; + } + case 234: { + global::MxGateway.Contracts.Proto.AdviseItemBulkCommand subBuilder = new global::MxGateway.Contracts.Proto.AdviseItemBulkCommand(); + if (payloadCase_ == PayloadOneofCase.AdviseItemBulk) { + subBuilder.MergeFrom(AdviseItemBulk); + } + input.ReadMessage(subBuilder); + AdviseItemBulk = subBuilder; + break; + } + case 242: { + global::MxGateway.Contracts.Proto.RemoveItemBulkCommand subBuilder = new global::MxGateway.Contracts.Proto.RemoveItemBulkCommand(); + if (payloadCase_ == PayloadOneofCase.RemoveItemBulk) { + subBuilder.MergeFrom(RemoveItemBulk); + } + input.ReadMessage(subBuilder); + RemoveItemBulk = subBuilder; + break; + } + case 250: { + global::MxGateway.Contracts.Proto.UnAdviseItemBulkCommand subBuilder = new global::MxGateway.Contracts.Proto.UnAdviseItemBulkCommand(); + if (payloadCase_ == PayloadOneofCase.UnAdviseItemBulk) { + subBuilder.MergeFrom(UnAdviseItemBulk); + } + input.ReadMessage(subBuilder); + UnAdviseItemBulk = subBuilder; + break; + } + case 258: { + global::MxGateway.Contracts.Proto.SubscribeBulkCommand subBuilder = new global::MxGateway.Contracts.Proto.SubscribeBulkCommand(); + if (payloadCase_ == PayloadOneofCase.SubscribeBulk) { + subBuilder.MergeFrom(SubscribeBulk); + } + input.ReadMessage(subBuilder); + SubscribeBulk = subBuilder; + break; + } + case 266: { + global::MxGateway.Contracts.Proto.UnsubscribeBulkCommand subBuilder = new global::MxGateway.Contracts.Proto.UnsubscribeBulkCommand(); + if (payloadCase_ == PayloadOneofCase.UnsubscribeBulk) { + subBuilder.MergeFrom(UnsubscribeBulk); + } + input.ReadMessage(subBuilder); + UnsubscribeBulk = subBuilder; + break; + } case 802: { global::MxGateway.Contracts.Proto.PingCommand subBuilder = new global::MxGateway.Contracts.Proto.PingCommand(); if (payloadCase_ == PayloadOneofCase.Ping) { @@ -8521,6 +8891,1358 @@ namespace MxGateway.Contracts.Proto { } + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class AddItemBulkCommand : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new AddItemBulkCommand()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[25]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public AddItemBulkCommand() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public AddItemBulkCommand(AddItemBulkCommand other) : this() { + serverHandle_ = other.serverHandle_; + tagAddresses_ = other.tagAddresses_.Clone(); + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public AddItemBulkCommand Clone() { + return new AddItemBulkCommand(this); + } + + /// Field number for the "server_handle" field. + public const int ServerHandleFieldNumber = 1; + private int serverHandle_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int ServerHandle { + get { return serverHandle_; } + set { + serverHandle_ = value; + } + } + + /// Field number for the "tag_addresses" field. + public const int TagAddressesFieldNumber = 2; + private static readonly pb::FieldCodec _repeated_tagAddresses_codec + = pb::FieldCodec.ForString(18); + private readonly pbc::RepeatedField tagAddresses_ = new pbc::RepeatedField(); + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField TagAddresses { + get { return tagAddresses_; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as AddItemBulkCommand); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(AddItemBulkCommand other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (ServerHandle != other.ServerHandle) return false; + if(!tagAddresses_.Equals(other.tagAddresses_)) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (ServerHandle != 0) hash ^= ServerHandle.GetHashCode(); + hash ^= tagAddresses_.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (ServerHandle != 0) { + output.WriteRawTag(8); + output.WriteInt32(ServerHandle); + } + tagAddresses_.WriteTo(output, _repeated_tagAddresses_codec); + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (ServerHandle != 0) { + output.WriteRawTag(8); + output.WriteInt32(ServerHandle); + } + tagAddresses_.WriteTo(ref output, _repeated_tagAddresses_codec); + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (ServerHandle != 0) { + size += 1 + pb::CodedOutputStream.ComputeInt32Size(ServerHandle); + } + size += tagAddresses_.CalculateSize(_repeated_tagAddresses_codec); + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(AddItemBulkCommand other) { + if (other == null) { + return; + } + if (other.ServerHandle != 0) { + ServerHandle = other.ServerHandle; + } + tagAddresses_.Add(other.tagAddresses_); + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + ServerHandle = input.ReadInt32(); + break; + } + case 18: { + tagAddresses_.AddEntriesFrom(input, _repeated_tagAddresses_codec); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + ServerHandle = input.ReadInt32(); + break; + } + case 18: { + tagAddresses_.AddEntriesFrom(ref input, _repeated_tagAddresses_codec); + break; + } + } + } + } + #endif + + } + + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class AdviseItemBulkCommand : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new AdviseItemBulkCommand()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[26]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public AdviseItemBulkCommand() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public AdviseItemBulkCommand(AdviseItemBulkCommand other) : this() { + serverHandle_ = other.serverHandle_; + itemHandles_ = other.itemHandles_.Clone(); + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public AdviseItemBulkCommand Clone() { + return new AdviseItemBulkCommand(this); + } + + /// Field number for the "server_handle" field. + public const int ServerHandleFieldNumber = 1; + private int serverHandle_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int ServerHandle { + get { return serverHandle_; } + set { + serverHandle_ = value; + } + } + + /// Field number for the "item_handles" field. + public const int ItemHandlesFieldNumber = 2; + private static readonly pb::FieldCodec _repeated_itemHandles_codec + = pb::FieldCodec.ForInt32(18); + private readonly pbc::RepeatedField itemHandles_ = new pbc::RepeatedField(); + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField ItemHandles { + get { return itemHandles_; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as AdviseItemBulkCommand); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(AdviseItemBulkCommand other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (ServerHandle != other.ServerHandle) return false; + if(!itemHandles_.Equals(other.itemHandles_)) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (ServerHandle != 0) hash ^= ServerHandle.GetHashCode(); + hash ^= itemHandles_.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (ServerHandle != 0) { + output.WriteRawTag(8); + output.WriteInt32(ServerHandle); + } + itemHandles_.WriteTo(output, _repeated_itemHandles_codec); + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (ServerHandle != 0) { + output.WriteRawTag(8); + output.WriteInt32(ServerHandle); + } + itemHandles_.WriteTo(ref output, _repeated_itemHandles_codec); + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (ServerHandle != 0) { + size += 1 + pb::CodedOutputStream.ComputeInt32Size(ServerHandle); + } + size += itemHandles_.CalculateSize(_repeated_itemHandles_codec); + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(AdviseItemBulkCommand other) { + if (other == null) { + return; + } + if (other.ServerHandle != 0) { + ServerHandle = other.ServerHandle; + } + itemHandles_.Add(other.itemHandles_); + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + ServerHandle = input.ReadInt32(); + break; + } + case 18: + case 16: { + itemHandles_.AddEntriesFrom(input, _repeated_itemHandles_codec); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + ServerHandle = input.ReadInt32(); + break; + } + case 18: + case 16: { + itemHandles_.AddEntriesFrom(ref input, _repeated_itemHandles_codec); + break; + } + } + } + } + #endif + + } + + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class RemoveItemBulkCommand : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new RemoveItemBulkCommand()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[27]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public RemoveItemBulkCommand() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public RemoveItemBulkCommand(RemoveItemBulkCommand other) : this() { + serverHandle_ = other.serverHandle_; + itemHandles_ = other.itemHandles_.Clone(); + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public RemoveItemBulkCommand Clone() { + return new RemoveItemBulkCommand(this); + } + + /// Field number for the "server_handle" field. + public const int ServerHandleFieldNumber = 1; + private int serverHandle_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int ServerHandle { + get { return serverHandle_; } + set { + serverHandle_ = value; + } + } + + /// Field number for the "item_handles" field. + public const int ItemHandlesFieldNumber = 2; + private static readonly pb::FieldCodec _repeated_itemHandles_codec + = pb::FieldCodec.ForInt32(18); + private readonly pbc::RepeatedField itemHandles_ = new pbc::RepeatedField(); + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField ItemHandles { + get { return itemHandles_; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as RemoveItemBulkCommand); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(RemoveItemBulkCommand other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (ServerHandle != other.ServerHandle) return false; + if(!itemHandles_.Equals(other.itemHandles_)) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (ServerHandle != 0) hash ^= ServerHandle.GetHashCode(); + hash ^= itemHandles_.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (ServerHandle != 0) { + output.WriteRawTag(8); + output.WriteInt32(ServerHandle); + } + itemHandles_.WriteTo(output, _repeated_itemHandles_codec); + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (ServerHandle != 0) { + output.WriteRawTag(8); + output.WriteInt32(ServerHandle); + } + itemHandles_.WriteTo(ref output, _repeated_itemHandles_codec); + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (ServerHandle != 0) { + size += 1 + pb::CodedOutputStream.ComputeInt32Size(ServerHandle); + } + size += itemHandles_.CalculateSize(_repeated_itemHandles_codec); + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(RemoveItemBulkCommand other) { + if (other == null) { + return; + } + if (other.ServerHandle != 0) { + ServerHandle = other.ServerHandle; + } + itemHandles_.Add(other.itemHandles_); + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + ServerHandle = input.ReadInt32(); + break; + } + case 18: + case 16: { + itemHandles_.AddEntriesFrom(input, _repeated_itemHandles_codec); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + ServerHandle = input.ReadInt32(); + break; + } + case 18: + case 16: { + itemHandles_.AddEntriesFrom(ref input, _repeated_itemHandles_codec); + break; + } + } + } + } + #endif + + } + + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class UnAdviseItemBulkCommand : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new UnAdviseItemBulkCommand()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[28]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public UnAdviseItemBulkCommand() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public UnAdviseItemBulkCommand(UnAdviseItemBulkCommand other) : this() { + serverHandle_ = other.serverHandle_; + itemHandles_ = other.itemHandles_.Clone(); + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public UnAdviseItemBulkCommand Clone() { + return new UnAdviseItemBulkCommand(this); + } + + /// Field number for the "server_handle" field. + public const int ServerHandleFieldNumber = 1; + private int serverHandle_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int ServerHandle { + get { return serverHandle_; } + set { + serverHandle_ = value; + } + } + + /// Field number for the "item_handles" field. + public const int ItemHandlesFieldNumber = 2; + private static readonly pb::FieldCodec _repeated_itemHandles_codec + = pb::FieldCodec.ForInt32(18); + private readonly pbc::RepeatedField itemHandles_ = new pbc::RepeatedField(); + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField ItemHandles { + get { return itemHandles_; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as UnAdviseItemBulkCommand); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(UnAdviseItemBulkCommand other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (ServerHandle != other.ServerHandle) return false; + if(!itemHandles_.Equals(other.itemHandles_)) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (ServerHandle != 0) hash ^= ServerHandle.GetHashCode(); + hash ^= itemHandles_.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (ServerHandle != 0) { + output.WriteRawTag(8); + output.WriteInt32(ServerHandle); + } + itemHandles_.WriteTo(output, _repeated_itemHandles_codec); + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (ServerHandle != 0) { + output.WriteRawTag(8); + output.WriteInt32(ServerHandle); + } + itemHandles_.WriteTo(ref output, _repeated_itemHandles_codec); + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (ServerHandle != 0) { + size += 1 + pb::CodedOutputStream.ComputeInt32Size(ServerHandle); + } + size += itemHandles_.CalculateSize(_repeated_itemHandles_codec); + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(UnAdviseItemBulkCommand other) { + if (other == null) { + return; + } + if (other.ServerHandle != 0) { + ServerHandle = other.ServerHandle; + } + itemHandles_.Add(other.itemHandles_); + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + ServerHandle = input.ReadInt32(); + break; + } + case 18: + case 16: { + itemHandles_.AddEntriesFrom(input, _repeated_itemHandles_codec); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + ServerHandle = input.ReadInt32(); + break; + } + case 18: + case 16: { + itemHandles_.AddEntriesFrom(ref input, _repeated_itemHandles_codec); + break; + } + } + } + } + #endif + + } + + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class SubscribeBulkCommand : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new SubscribeBulkCommand()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[29]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public SubscribeBulkCommand() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public SubscribeBulkCommand(SubscribeBulkCommand other) : this() { + serverHandle_ = other.serverHandle_; + tagAddresses_ = other.tagAddresses_.Clone(); + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public SubscribeBulkCommand Clone() { + return new SubscribeBulkCommand(this); + } + + /// Field number for the "server_handle" field. + public const int ServerHandleFieldNumber = 1; + private int serverHandle_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int ServerHandle { + get { return serverHandle_; } + set { + serverHandle_ = value; + } + } + + /// Field number for the "tag_addresses" field. + public const int TagAddressesFieldNumber = 2; + private static readonly pb::FieldCodec _repeated_tagAddresses_codec + = pb::FieldCodec.ForString(18); + private readonly pbc::RepeatedField tagAddresses_ = new pbc::RepeatedField(); + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField TagAddresses { + get { return tagAddresses_; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as SubscribeBulkCommand); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(SubscribeBulkCommand other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (ServerHandle != other.ServerHandle) return false; + if(!tagAddresses_.Equals(other.tagAddresses_)) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (ServerHandle != 0) hash ^= ServerHandle.GetHashCode(); + hash ^= tagAddresses_.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (ServerHandle != 0) { + output.WriteRawTag(8); + output.WriteInt32(ServerHandle); + } + tagAddresses_.WriteTo(output, _repeated_tagAddresses_codec); + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (ServerHandle != 0) { + output.WriteRawTag(8); + output.WriteInt32(ServerHandle); + } + tagAddresses_.WriteTo(ref output, _repeated_tagAddresses_codec); + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (ServerHandle != 0) { + size += 1 + pb::CodedOutputStream.ComputeInt32Size(ServerHandle); + } + size += tagAddresses_.CalculateSize(_repeated_tagAddresses_codec); + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(SubscribeBulkCommand other) { + if (other == null) { + return; + } + if (other.ServerHandle != 0) { + ServerHandle = other.ServerHandle; + } + tagAddresses_.Add(other.tagAddresses_); + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + ServerHandle = input.ReadInt32(); + break; + } + case 18: { + tagAddresses_.AddEntriesFrom(input, _repeated_tagAddresses_codec); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + ServerHandle = input.ReadInt32(); + break; + } + case 18: { + tagAddresses_.AddEntriesFrom(ref input, _repeated_tagAddresses_codec); + break; + } + } + } + } + #endif + + } + + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class UnsubscribeBulkCommand : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new UnsubscribeBulkCommand()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[30]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public UnsubscribeBulkCommand() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public UnsubscribeBulkCommand(UnsubscribeBulkCommand other) : this() { + serverHandle_ = other.serverHandle_; + itemHandles_ = other.itemHandles_.Clone(); + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public UnsubscribeBulkCommand Clone() { + return new UnsubscribeBulkCommand(this); + } + + /// Field number for the "server_handle" field. + public const int ServerHandleFieldNumber = 1; + private int serverHandle_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int ServerHandle { + get { return serverHandle_; } + set { + serverHandle_ = value; + } + } + + /// Field number for the "item_handles" field. + public const int ItemHandlesFieldNumber = 2; + private static readonly pb::FieldCodec _repeated_itemHandles_codec + = pb::FieldCodec.ForInt32(18); + private readonly pbc::RepeatedField itemHandles_ = new pbc::RepeatedField(); + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField ItemHandles { + get { return itemHandles_; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as UnsubscribeBulkCommand); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(UnsubscribeBulkCommand other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (ServerHandle != other.ServerHandle) return false; + if(!itemHandles_.Equals(other.itemHandles_)) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (ServerHandle != 0) hash ^= ServerHandle.GetHashCode(); + hash ^= itemHandles_.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (ServerHandle != 0) { + output.WriteRawTag(8); + output.WriteInt32(ServerHandle); + } + itemHandles_.WriteTo(output, _repeated_itemHandles_codec); + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (ServerHandle != 0) { + output.WriteRawTag(8); + output.WriteInt32(ServerHandle); + } + itemHandles_.WriteTo(ref output, _repeated_itemHandles_codec); + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (ServerHandle != 0) { + size += 1 + pb::CodedOutputStream.ComputeInt32Size(ServerHandle); + } + size += itemHandles_.CalculateSize(_repeated_itemHandles_codec); + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(UnsubscribeBulkCommand other) { + if (other == null) { + return; + } + if (other.ServerHandle != 0) { + ServerHandle = other.ServerHandle; + } + itemHandles_.Add(other.itemHandles_); + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + ServerHandle = input.ReadInt32(); + break; + } + case 18: + case 16: { + itemHandles_.AddEntriesFrom(input, _repeated_itemHandles_codec); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + ServerHandle = input.ReadInt32(); + break; + } + case 18: + case 16: { + itemHandles_.AddEntriesFrom(ref input, _repeated_itemHandles_codec); + break; + } + } + } + } + #endif + + } + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] public sealed partial class PingCommand : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE @@ -8536,7 +10258,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[25]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[31]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -8734,7 +10456,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[26]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[32]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -8895,7 +10617,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[27]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[33]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -9056,7 +10778,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[28]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[34]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -9254,7 +10976,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[29]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[35]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -9462,7 +11184,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[30]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[36]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -9516,6 +11238,24 @@ namespace MxGateway.Contracts.Proto { case PayloadOneofCase.ArchestraUserToId: ArchestraUserToId = other.ArchestraUserToId.Clone(); break; + case PayloadOneofCase.AddItemBulk: + AddItemBulk = other.AddItemBulk.Clone(); + break; + case PayloadOneofCase.AdviseItemBulk: + AdviseItemBulk = other.AdviseItemBulk.Clone(); + break; + case PayloadOneofCase.RemoveItemBulk: + RemoveItemBulk = other.RemoveItemBulk.Clone(); + break; + case PayloadOneofCase.UnAdviseItemBulk: + UnAdviseItemBulk = other.UnAdviseItemBulk.Clone(); + break; + case PayloadOneofCase.SubscribeBulk: + SubscribeBulk = other.SubscribeBulk.Clone(); + break; + case PayloadOneofCase.UnsubscribeBulk: + UnsubscribeBulk = other.UnsubscribeBulk.Clone(); + break; case PayloadOneofCase.SessionState: SessionState = other.SessionState.Clone(); break; @@ -9747,6 +11487,78 @@ namespace MxGateway.Contracts.Proto { } } + /// Field number for the "add_item_bulk" field. + public const int AddItemBulkFieldNumber = 28; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::MxGateway.Contracts.Proto.BulkSubscribeReply AddItemBulk { + get { return payloadCase_ == PayloadOneofCase.AddItemBulk ? (global::MxGateway.Contracts.Proto.BulkSubscribeReply) payload_ : null; } + set { + payload_ = value; + payloadCase_ = value == null ? PayloadOneofCase.None : PayloadOneofCase.AddItemBulk; + } + } + + /// Field number for the "advise_item_bulk" field. + public const int AdviseItemBulkFieldNumber = 29; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::MxGateway.Contracts.Proto.BulkSubscribeReply AdviseItemBulk { + get { return payloadCase_ == PayloadOneofCase.AdviseItemBulk ? (global::MxGateway.Contracts.Proto.BulkSubscribeReply) payload_ : null; } + set { + payload_ = value; + payloadCase_ = value == null ? PayloadOneofCase.None : PayloadOneofCase.AdviseItemBulk; + } + } + + /// Field number for the "remove_item_bulk" field. + public const int RemoveItemBulkFieldNumber = 30; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::MxGateway.Contracts.Proto.BulkSubscribeReply RemoveItemBulk { + get { return payloadCase_ == PayloadOneofCase.RemoveItemBulk ? (global::MxGateway.Contracts.Proto.BulkSubscribeReply) payload_ : null; } + set { + payload_ = value; + payloadCase_ = value == null ? PayloadOneofCase.None : PayloadOneofCase.RemoveItemBulk; + } + } + + /// Field number for the "un_advise_item_bulk" field. + public const int UnAdviseItemBulkFieldNumber = 31; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::MxGateway.Contracts.Proto.BulkSubscribeReply UnAdviseItemBulk { + get { return payloadCase_ == PayloadOneofCase.UnAdviseItemBulk ? (global::MxGateway.Contracts.Proto.BulkSubscribeReply) payload_ : null; } + set { + payload_ = value; + payloadCase_ = value == null ? PayloadOneofCase.None : PayloadOneofCase.UnAdviseItemBulk; + } + } + + /// Field number for the "subscribe_bulk" field. + public const int SubscribeBulkFieldNumber = 32; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::MxGateway.Contracts.Proto.BulkSubscribeReply SubscribeBulk { + get { return payloadCase_ == PayloadOneofCase.SubscribeBulk ? (global::MxGateway.Contracts.Proto.BulkSubscribeReply) payload_ : null; } + set { + payload_ = value; + payloadCase_ = value == null ? PayloadOneofCase.None : PayloadOneofCase.SubscribeBulk; + } + } + + /// Field number for the "unsubscribe_bulk" field. + public const int UnsubscribeBulkFieldNumber = 33; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public global::MxGateway.Contracts.Proto.BulkSubscribeReply UnsubscribeBulk { + get { return payloadCase_ == PayloadOneofCase.UnsubscribeBulk ? (global::MxGateway.Contracts.Proto.BulkSubscribeReply) payload_ : null; } + set { + payload_ = value; + payloadCase_ = value == null ? PayloadOneofCase.None : PayloadOneofCase.UnsubscribeBulk; + } + } + /// Field number for the "session_state" field. public const int SessionStateFieldNumber = 100; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -9795,6 +11607,12 @@ namespace MxGateway.Contracts.Proto { Activate = 25, AuthenticateUser = 26, ArchestraUserToId = 27, + AddItemBulk = 28, + AdviseItemBulk = 29, + RemoveItemBulk = 30, + UnAdviseItemBulk = 31, + SubscribeBulk = 32, + UnsubscribeBulk = 33, SessionState = 100, WorkerInfo = 101, DrainEvents = 102, @@ -9844,6 +11662,12 @@ namespace MxGateway.Contracts.Proto { if (!object.Equals(Activate, other.Activate)) return false; if (!object.Equals(AuthenticateUser, other.AuthenticateUser)) return false; if (!object.Equals(ArchestraUserToId, other.ArchestraUserToId)) return false; + if (!object.Equals(AddItemBulk, other.AddItemBulk)) return false; + if (!object.Equals(AdviseItemBulk, other.AdviseItemBulk)) return false; + if (!object.Equals(RemoveItemBulk, other.RemoveItemBulk)) return false; + if (!object.Equals(UnAdviseItemBulk, other.UnAdviseItemBulk)) return false; + if (!object.Equals(SubscribeBulk, other.SubscribeBulk)) return false; + if (!object.Equals(UnsubscribeBulk, other.UnsubscribeBulk)) return false; if (!object.Equals(SessionState, other.SessionState)) return false; if (!object.Equals(WorkerInfo, other.WorkerInfo)) return false; if (!object.Equals(DrainEvents, other.DrainEvents)) return false; @@ -9871,6 +11695,12 @@ namespace MxGateway.Contracts.Proto { if (payloadCase_ == PayloadOneofCase.Activate) hash ^= Activate.GetHashCode(); if (payloadCase_ == PayloadOneofCase.AuthenticateUser) hash ^= AuthenticateUser.GetHashCode(); if (payloadCase_ == PayloadOneofCase.ArchestraUserToId) hash ^= ArchestraUserToId.GetHashCode(); + if (payloadCase_ == PayloadOneofCase.AddItemBulk) hash ^= AddItemBulk.GetHashCode(); + if (payloadCase_ == PayloadOneofCase.AdviseItemBulk) hash ^= AdviseItemBulk.GetHashCode(); + if (payloadCase_ == PayloadOneofCase.RemoveItemBulk) hash ^= RemoveItemBulk.GetHashCode(); + if (payloadCase_ == PayloadOneofCase.UnAdviseItemBulk) hash ^= UnAdviseItemBulk.GetHashCode(); + if (payloadCase_ == PayloadOneofCase.SubscribeBulk) hash ^= SubscribeBulk.GetHashCode(); + if (payloadCase_ == PayloadOneofCase.UnsubscribeBulk) hash ^= UnsubscribeBulk.GetHashCode(); if (payloadCase_ == PayloadOneofCase.SessionState) hash ^= SessionState.GetHashCode(); if (payloadCase_ == PayloadOneofCase.WorkerInfo) hash ^= WorkerInfo.GetHashCode(); if (payloadCase_ == PayloadOneofCase.DrainEvents) hash ^= DrainEvents.GetHashCode(); @@ -9954,6 +11784,30 @@ namespace MxGateway.Contracts.Proto { output.WriteRawTag(218, 1); output.WriteMessage(ArchestraUserToId); } + if (payloadCase_ == PayloadOneofCase.AddItemBulk) { + output.WriteRawTag(226, 1); + output.WriteMessage(AddItemBulk); + } + if (payloadCase_ == PayloadOneofCase.AdviseItemBulk) { + output.WriteRawTag(234, 1); + output.WriteMessage(AdviseItemBulk); + } + if (payloadCase_ == PayloadOneofCase.RemoveItemBulk) { + output.WriteRawTag(242, 1); + output.WriteMessage(RemoveItemBulk); + } + if (payloadCase_ == PayloadOneofCase.UnAdviseItemBulk) { + output.WriteRawTag(250, 1); + output.WriteMessage(UnAdviseItemBulk); + } + if (payloadCase_ == PayloadOneofCase.SubscribeBulk) { + output.WriteRawTag(130, 2); + output.WriteMessage(SubscribeBulk); + } + if (payloadCase_ == PayloadOneofCase.UnsubscribeBulk) { + output.WriteRawTag(138, 2); + output.WriteMessage(UnsubscribeBulk); + } if (payloadCase_ == PayloadOneofCase.SessionState) { output.WriteRawTag(162, 6); output.WriteMessage(SessionState); @@ -10037,6 +11891,30 @@ namespace MxGateway.Contracts.Proto { output.WriteRawTag(218, 1); output.WriteMessage(ArchestraUserToId); } + if (payloadCase_ == PayloadOneofCase.AddItemBulk) { + output.WriteRawTag(226, 1); + output.WriteMessage(AddItemBulk); + } + if (payloadCase_ == PayloadOneofCase.AdviseItemBulk) { + output.WriteRawTag(234, 1); + output.WriteMessage(AdviseItemBulk); + } + if (payloadCase_ == PayloadOneofCase.RemoveItemBulk) { + output.WriteRawTag(242, 1); + output.WriteMessage(RemoveItemBulk); + } + if (payloadCase_ == PayloadOneofCase.UnAdviseItemBulk) { + output.WriteRawTag(250, 1); + output.WriteMessage(UnAdviseItemBulk); + } + if (payloadCase_ == PayloadOneofCase.SubscribeBulk) { + output.WriteRawTag(130, 2); + output.WriteMessage(SubscribeBulk); + } + if (payloadCase_ == PayloadOneofCase.UnsubscribeBulk) { + output.WriteRawTag(138, 2); + output.WriteMessage(UnsubscribeBulk); + } if (payloadCase_ == PayloadOneofCase.SessionState) { output.WriteRawTag(162, 6); output.WriteMessage(SessionState); @@ -10105,6 +11983,24 @@ namespace MxGateway.Contracts.Proto { if (payloadCase_ == PayloadOneofCase.ArchestraUserToId) { size += 2 + pb::CodedOutputStream.ComputeMessageSize(ArchestraUserToId); } + if (payloadCase_ == PayloadOneofCase.AddItemBulk) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(AddItemBulk); + } + if (payloadCase_ == PayloadOneofCase.AdviseItemBulk) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(AdviseItemBulk); + } + if (payloadCase_ == PayloadOneofCase.RemoveItemBulk) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(RemoveItemBulk); + } + if (payloadCase_ == PayloadOneofCase.UnAdviseItemBulk) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(UnAdviseItemBulk); + } + if (payloadCase_ == PayloadOneofCase.SubscribeBulk) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(SubscribeBulk); + } + if (payloadCase_ == PayloadOneofCase.UnsubscribeBulk) { + size += 2 + pb::CodedOutputStream.ComputeMessageSize(UnsubscribeBulk); + } if (payloadCase_ == PayloadOneofCase.SessionState) { size += 2 + pb::CodedOutputStream.ComputeMessageSize(SessionState); } @@ -10203,6 +12099,42 @@ namespace MxGateway.Contracts.Proto { } ArchestraUserToId.MergeFrom(other.ArchestraUserToId); break; + case PayloadOneofCase.AddItemBulk: + if (AddItemBulk == null) { + AddItemBulk = new global::MxGateway.Contracts.Proto.BulkSubscribeReply(); + } + AddItemBulk.MergeFrom(other.AddItemBulk); + break; + case PayloadOneofCase.AdviseItemBulk: + if (AdviseItemBulk == null) { + AdviseItemBulk = new global::MxGateway.Contracts.Proto.BulkSubscribeReply(); + } + AdviseItemBulk.MergeFrom(other.AdviseItemBulk); + break; + case PayloadOneofCase.RemoveItemBulk: + if (RemoveItemBulk == null) { + RemoveItemBulk = new global::MxGateway.Contracts.Proto.BulkSubscribeReply(); + } + RemoveItemBulk.MergeFrom(other.RemoveItemBulk); + break; + case PayloadOneofCase.UnAdviseItemBulk: + if (UnAdviseItemBulk == null) { + UnAdviseItemBulk = new global::MxGateway.Contracts.Proto.BulkSubscribeReply(); + } + UnAdviseItemBulk.MergeFrom(other.UnAdviseItemBulk); + break; + case PayloadOneofCase.SubscribeBulk: + if (SubscribeBulk == null) { + SubscribeBulk = new global::MxGateway.Contracts.Proto.BulkSubscribeReply(); + } + SubscribeBulk.MergeFrom(other.SubscribeBulk); + break; + case PayloadOneofCase.UnsubscribeBulk: + if (UnsubscribeBulk == null) { + UnsubscribeBulk = new global::MxGateway.Contracts.Proto.BulkSubscribeReply(); + } + UnsubscribeBulk.MergeFrom(other.UnsubscribeBulk); + break; case PayloadOneofCase.SessionState: if (SessionState == null) { SessionState = new global::MxGateway.Contracts.Proto.SessionStateReply(); @@ -10352,6 +12284,60 @@ namespace MxGateway.Contracts.Proto { ArchestraUserToId = subBuilder; break; } + case 226: { + global::MxGateway.Contracts.Proto.BulkSubscribeReply subBuilder = new global::MxGateway.Contracts.Proto.BulkSubscribeReply(); + if (payloadCase_ == PayloadOneofCase.AddItemBulk) { + subBuilder.MergeFrom(AddItemBulk); + } + input.ReadMessage(subBuilder); + AddItemBulk = subBuilder; + break; + } + case 234: { + global::MxGateway.Contracts.Proto.BulkSubscribeReply subBuilder = new global::MxGateway.Contracts.Proto.BulkSubscribeReply(); + if (payloadCase_ == PayloadOneofCase.AdviseItemBulk) { + subBuilder.MergeFrom(AdviseItemBulk); + } + input.ReadMessage(subBuilder); + AdviseItemBulk = subBuilder; + break; + } + case 242: { + global::MxGateway.Contracts.Proto.BulkSubscribeReply subBuilder = new global::MxGateway.Contracts.Proto.BulkSubscribeReply(); + if (payloadCase_ == PayloadOneofCase.RemoveItemBulk) { + subBuilder.MergeFrom(RemoveItemBulk); + } + input.ReadMessage(subBuilder); + RemoveItemBulk = subBuilder; + break; + } + case 250: { + global::MxGateway.Contracts.Proto.BulkSubscribeReply subBuilder = new global::MxGateway.Contracts.Proto.BulkSubscribeReply(); + if (payloadCase_ == PayloadOneofCase.UnAdviseItemBulk) { + subBuilder.MergeFrom(UnAdviseItemBulk); + } + input.ReadMessage(subBuilder); + UnAdviseItemBulk = subBuilder; + break; + } + case 258: { + global::MxGateway.Contracts.Proto.BulkSubscribeReply subBuilder = new global::MxGateway.Contracts.Proto.BulkSubscribeReply(); + if (payloadCase_ == PayloadOneofCase.SubscribeBulk) { + subBuilder.MergeFrom(SubscribeBulk); + } + input.ReadMessage(subBuilder); + SubscribeBulk = subBuilder; + break; + } + case 266: { + global::MxGateway.Contracts.Proto.BulkSubscribeReply subBuilder = new global::MxGateway.Contracts.Proto.BulkSubscribeReply(); + if (payloadCase_ == PayloadOneofCase.UnsubscribeBulk) { + subBuilder.MergeFrom(UnsubscribeBulk); + } + input.ReadMessage(subBuilder); + UnsubscribeBulk = subBuilder; + break; + } case 802: { global::MxGateway.Contracts.Proto.SessionStateReply subBuilder = new global::MxGateway.Contracts.Proto.SessionStateReply(); if (payloadCase_ == PayloadOneofCase.SessionState) { @@ -10508,6 +12494,60 @@ namespace MxGateway.Contracts.Proto { ArchestraUserToId = subBuilder; break; } + case 226: { + global::MxGateway.Contracts.Proto.BulkSubscribeReply subBuilder = new global::MxGateway.Contracts.Proto.BulkSubscribeReply(); + if (payloadCase_ == PayloadOneofCase.AddItemBulk) { + subBuilder.MergeFrom(AddItemBulk); + } + input.ReadMessage(subBuilder); + AddItemBulk = subBuilder; + break; + } + case 234: { + global::MxGateway.Contracts.Proto.BulkSubscribeReply subBuilder = new global::MxGateway.Contracts.Proto.BulkSubscribeReply(); + if (payloadCase_ == PayloadOneofCase.AdviseItemBulk) { + subBuilder.MergeFrom(AdviseItemBulk); + } + input.ReadMessage(subBuilder); + AdviseItemBulk = subBuilder; + break; + } + case 242: { + global::MxGateway.Contracts.Proto.BulkSubscribeReply subBuilder = new global::MxGateway.Contracts.Proto.BulkSubscribeReply(); + if (payloadCase_ == PayloadOneofCase.RemoveItemBulk) { + subBuilder.MergeFrom(RemoveItemBulk); + } + input.ReadMessage(subBuilder); + RemoveItemBulk = subBuilder; + break; + } + case 250: { + global::MxGateway.Contracts.Proto.BulkSubscribeReply subBuilder = new global::MxGateway.Contracts.Proto.BulkSubscribeReply(); + if (payloadCase_ == PayloadOneofCase.UnAdviseItemBulk) { + subBuilder.MergeFrom(UnAdviseItemBulk); + } + input.ReadMessage(subBuilder); + UnAdviseItemBulk = subBuilder; + break; + } + case 258: { + global::MxGateway.Contracts.Proto.BulkSubscribeReply subBuilder = new global::MxGateway.Contracts.Proto.BulkSubscribeReply(); + if (payloadCase_ == PayloadOneofCase.SubscribeBulk) { + subBuilder.MergeFrom(SubscribeBulk); + } + input.ReadMessage(subBuilder); + SubscribeBulk = subBuilder; + break; + } + case 266: { + global::MxGateway.Contracts.Proto.BulkSubscribeReply subBuilder = new global::MxGateway.Contracts.Proto.BulkSubscribeReply(); + if (payloadCase_ == PayloadOneofCase.UnsubscribeBulk) { + subBuilder.MergeFrom(UnsubscribeBulk); + } + input.ReadMessage(subBuilder); + UnsubscribeBulk = subBuilder; + break; + } case 802: { global::MxGateway.Contracts.Proto.SessionStateReply subBuilder = new global::MxGateway.Contracts.Proto.SessionStateReply(); if (payloadCase_ == PayloadOneofCase.SessionState) { @@ -10557,7 +12597,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[31]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[37]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -10755,7 +12795,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[32]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[38]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -10953,7 +12993,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[33]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[39]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -11151,7 +13191,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[34]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[40]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -11349,7 +13389,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[35]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[41]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -11556,7 +13596,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[36]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[42]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -11763,7 +13803,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[37]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[43]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -11961,7 +14001,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[38]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[44]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -12144,6 +14184,539 @@ namespace MxGateway.Contracts.Proto { } + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class SubscribeResult : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new SubscribeResult()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[45]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public SubscribeResult() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public SubscribeResult(SubscribeResult other) : this() { + serverHandle_ = other.serverHandle_; + tagAddress_ = other.tagAddress_; + itemHandle_ = other.itemHandle_; + wasSuccessful_ = other.wasSuccessful_; + errorMessage_ = other.errorMessage_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public SubscribeResult Clone() { + return new SubscribeResult(this); + } + + /// Field number for the "server_handle" field. + public const int ServerHandleFieldNumber = 1; + private int serverHandle_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int ServerHandle { + get { return serverHandle_; } + set { + serverHandle_ = value; + } + } + + /// Field number for the "tag_address" field. + public const int TagAddressFieldNumber = 2; + private string tagAddress_ = ""; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string TagAddress { + get { return tagAddress_; } + set { + tagAddress_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "item_handle" field. + public const int ItemHandleFieldNumber = 3; + private int itemHandle_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int ItemHandle { + get { return itemHandle_; } + set { + itemHandle_ = value; + } + } + + /// Field number for the "was_successful" field. + public const int WasSuccessfulFieldNumber = 4; + private bool wasSuccessful_; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool WasSuccessful { + get { return wasSuccessful_; } + set { + wasSuccessful_ = value; + } + } + + /// Field number for the "error_message" field. + public const int ErrorMessageFieldNumber = 5; + private string errorMessage_ = ""; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public string ErrorMessage { + get { return errorMessage_; } + set { + errorMessage_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as SubscribeResult); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(SubscribeResult other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (ServerHandle != other.ServerHandle) return false; + if (TagAddress != other.TagAddress) return false; + if (ItemHandle != other.ItemHandle) return false; + if (WasSuccessful != other.WasSuccessful) return false; + if (ErrorMessage != other.ErrorMessage) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + if (ServerHandle != 0) hash ^= ServerHandle.GetHashCode(); + if (TagAddress.Length != 0) hash ^= TagAddress.GetHashCode(); + if (ItemHandle != 0) hash ^= ItemHandle.GetHashCode(); + if (WasSuccessful != false) hash ^= WasSuccessful.GetHashCode(); + if (ErrorMessage.Length != 0) hash ^= ErrorMessage.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (ServerHandle != 0) { + output.WriteRawTag(8); + output.WriteInt32(ServerHandle); + } + if (TagAddress.Length != 0) { + output.WriteRawTag(18); + output.WriteString(TagAddress); + } + if (ItemHandle != 0) { + output.WriteRawTag(24); + output.WriteInt32(ItemHandle); + } + if (WasSuccessful != false) { + output.WriteRawTag(32); + output.WriteBool(WasSuccessful); + } + if (ErrorMessage.Length != 0) { + output.WriteRawTag(42); + output.WriteString(ErrorMessage); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (ServerHandle != 0) { + output.WriteRawTag(8); + output.WriteInt32(ServerHandle); + } + if (TagAddress.Length != 0) { + output.WriteRawTag(18); + output.WriteString(TagAddress); + } + if (ItemHandle != 0) { + output.WriteRawTag(24); + output.WriteInt32(ItemHandle); + } + if (WasSuccessful != false) { + output.WriteRawTag(32); + output.WriteBool(WasSuccessful); + } + if (ErrorMessage.Length != 0) { + output.WriteRawTag(42); + output.WriteString(ErrorMessage); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + if (ServerHandle != 0) { + size += 1 + pb::CodedOutputStream.ComputeInt32Size(ServerHandle); + } + if (TagAddress.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(TagAddress); + } + if (ItemHandle != 0) { + size += 1 + pb::CodedOutputStream.ComputeInt32Size(ItemHandle); + } + if (WasSuccessful != false) { + size += 1 + 1; + } + if (ErrorMessage.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(ErrorMessage); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(SubscribeResult other) { + if (other == null) { + return; + } + if (other.ServerHandle != 0) { + ServerHandle = other.ServerHandle; + } + if (other.TagAddress.Length != 0) { + TagAddress = other.TagAddress; + } + if (other.ItemHandle != 0) { + ItemHandle = other.ItemHandle; + } + if (other.WasSuccessful != false) { + WasSuccessful = other.WasSuccessful; + } + if (other.ErrorMessage.Length != 0) { + ErrorMessage = other.ErrorMessage; + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + ServerHandle = input.ReadInt32(); + break; + } + case 18: { + TagAddress = input.ReadString(); + break; + } + case 24: { + ItemHandle = input.ReadInt32(); + break; + } + case 32: { + WasSuccessful = input.ReadBool(); + break; + } + case 42: { + ErrorMessage = input.ReadString(); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + ServerHandle = input.ReadInt32(); + break; + } + case 18: { + TagAddress = input.ReadString(); + break; + } + case 24: { + ItemHandle = input.ReadInt32(); + break; + } + case 32: { + WasSuccessful = input.ReadBool(); + break; + } + case 42: { + ErrorMessage = input.ReadString(); + break; + } + } + } + } + #endif + + } + + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] + public sealed partial class BulkSubscribeReply : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new BulkSubscribeReply()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public static pbr::MessageDescriptor Descriptor { + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[46]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public BulkSubscribeReply() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public BulkSubscribeReply(BulkSubscribeReply other) : this() { + results_ = other.results_.Clone(); + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public BulkSubscribeReply Clone() { + return new BulkSubscribeReply(this); + } + + /// Field number for the "results" field. + public const int ResultsFieldNumber = 1; + private static readonly pb::FieldCodec _repeated_results_codec + = pb::FieldCodec.ForMessage(10, global::MxGateway.Contracts.Proto.SubscribeResult.Parser); + private readonly pbc::RepeatedField results_ = new pbc::RepeatedField(); + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public pbc::RepeatedField Results { + get { return results_; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override bool Equals(object other) { + return Equals(other as BulkSubscribeReply); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public bool Equals(BulkSubscribeReply other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if(!results_.Equals(other.results_)) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override int GetHashCode() { + int hash = 1; + hash ^= results_.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + results_.WriteTo(output, _repeated_results_codec); + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + results_.WriteTo(ref output, _repeated_results_codec); + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public int CalculateSize() { + int size = 0; + size += results_.CalculateSize(_repeated_results_codec); + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(BulkSubscribeReply other) { + if (other == null) { + return; + } + results_.Add(other.results_); + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 10: { + results_.AddEntriesFrom(input, _repeated_results_codec); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + if ((tag & 7) == 4) { + // Abort on any end group tag. + return; + } + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 10: { + results_.AddEntriesFrom(ref input, _repeated_results_codec); + break; + } + } + } + } + #endif + + } + [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")] public sealed partial class SessionStateReply : pb::IMessage #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE @@ -12159,7 +14732,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[39]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[47]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -12357,7 +14930,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[40]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[48]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -12666,7 +15239,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[41]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[49]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -12854,7 +15427,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[42]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[50]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -13776,7 +16349,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[43]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[51]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -13937,7 +16510,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[44]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[52]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -14098,7 +16671,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[45]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[53]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -14259,7 +16832,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[46]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[54]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -14586,7 +17159,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[47]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[55]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -15006,7 +17579,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[48]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[56]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -15863,7 +18436,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[49]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[57]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -16651,7 +19224,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[50]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[58]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -16840,7 +19413,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[51]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[59]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -17029,7 +19602,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[52]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[60]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -17218,7 +19791,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[53]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[61]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -17407,7 +19980,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[54]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[62]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -17596,7 +20169,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[55]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[63]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -17783,7 +20356,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[56]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[64]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -17970,7 +20543,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[57]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[65]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -18157,7 +20730,7 @@ namespace MxGateway.Contracts.Proto { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] public static pbr::MessageDescriptor Descriptor { - get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[58]; } + get { return global::MxGateway.Contracts.Proto.MxaccessGatewayReflection.Descriptor.MessageTypes[66]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] diff --git a/src/MxGateway.Contracts/Protos/mxaccess_gateway.proto b/src/MxGateway.Contracts/Protos/mxaccess_gateway.proto index 898c742..394a3ec 100644 --- a/src/MxGateway.Contracts/Protos/mxaccess_gateway.proto +++ b/src/MxGateway.Contracts/Protos/mxaccess_gateway.proto @@ -80,6 +80,12 @@ message MxCommand { WriteSecured2Command write_secured2 = 25; AuthenticateUserCommand authenticate_user = 26; ArchestrAUserToIdCommand archestra_user_to_id = 27; + AddItemBulkCommand add_item_bulk = 28; + AdviseItemBulkCommand advise_item_bulk = 29; + RemoveItemBulkCommand remove_item_bulk = 30; + UnAdviseItemBulkCommand un_advise_item_bulk = 31; + SubscribeBulkCommand subscribe_bulk = 32; + UnsubscribeBulkCommand unsubscribe_bulk = 33; PingCommand ping = 100; GetSessionStateCommand get_session_state = 101; GetWorkerInfoCommand get_worker_info = 102; @@ -108,6 +114,12 @@ enum MxCommandKind { MX_COMMAND_KIND_WRITE_SECURED2 = 16; MX_COMMAND_KIND_AUTHENTICATE_USER = 17; MX_COMMAND_KIND_ARCHESTRA_USER_TO_ID = 18; + MX_COMMAND_KIND_ADD_ITEM_BULK = 19; + MX_COMMAND_KIND_ADVISE_ITEM_BULK = 20; + MX_COMMAND_KIND_REMOVE_ITEM_BULK = 21; + MX_COMMAND_KIND_UN_ADVISE_ITEM_BULK = 22; + MX_COMMAND_KIND_SUBSCRIBE_BULK = 23; + MX_COMMAND_KIND_UNSUBSCRIBE_BULK = 24; MX_COMMAND_KIND_PING = 100; MX_COMMAND_KIND_GET_SESSION_STATE = 101; MX_COMMAND_KIND_GET_WORKER_INFO = 102; @@ -224,6 +236,36 @@ message ArchestrAUserToIdCommand { string user_id_guid = 2; } +message AddItemBulkCommand { + int32 server_handle = 1; + repeated string tag_addresses = 2; +} + +message AdviseItemBulkCommand { + int32 server_handle = 1; + repeated int32 item_handles = 2; +} + +message RemoveItemBulkCommand { + int32 server_handle = 1; + repeated int32 item_handles = 2; +} + +message UnAdviseItemBulkCommand { + int32 server_handle = 1; + repeated int32 item_handles = 2; +} + +message SubscribeBulkCommand { + int32 server_handle = 1; + repeated string tag_addresses = 2; +} + +message UnsubscribeBulkCommand { + int32 server_handle = 1; + repeated int32 item_handles = 2; +} + message PingCommand { string message = 1; } @@ -264,6 +306,12 @@ message MxCommandReply { ActivateReply activate = 25; AuthenticateUserReply authenticate_user = 26; ArchestrAUserToIdReply archestra_user_to_id = 27; + BulkSubscribeReply add_item_bulk = 28; + BulkSubscribeReply advise_item_bulk = 29; + BulkSubscribeReply remove_item_bulk = 30; + BulkSubscribeReply un_advise_item_bulk = 31; + BulkSubscribeReply subscribe_bulk = 32; + BulkSubscribeReply unsubscribe_bulk = 33; SessionStateReply session_state = 100; WorkerInfoReply worker_info = 101; DrainEventsReply drain_events = 102; @@ -302,6 +350,18 @@ message ArchestrAUserToIdReply { int32 user_id = 1; } +message SubscribeResult { + int32 server_handle = 1; + string tag_address = 2; + int32 item_handle = 3; + bool was_successful = 4; + string error_message = 5; +} + +message BulkSubscribeReply { + repeated SubscribeResult results = 1; +} + message SessionStateReply { SessionState state = 1; } diff --git a/src/MxGateway.Server/Grpc/MxAccessGatewayService.cs b/src/MxGateway.Server/Grpc/MxAccessGatewayService.cs index 201bedf..75cc9c3 100644 --- a/src/MxGateway.Server/Grpc/MxAccessGatewayService.cs +++ b/src/MxGateway.Server/Grpc/MxAccessGatewayService.cs @@ -43,6 +43,7 @@ public sealed class MxAccessGatewayService( reply.Capabilities.Add("unary-close-session"); reply.Capabilities.Add("unary-invoke"); reply.Capabilities.Add("server-stream-events"); + reply.Capabilities.Add("bulk-subscribe-commands"); return reply; } diff --git a/src/MxGateway.Server/Grpc/MxAccessGrpcRequestValidator.cs b/src/MxGateway.Server/Grpc/MxAccessGrpcRequestValidator.cs index 1bcf884..e6822bd 100644 --- a/src/MxGateway.Server/Grpc/MxAccessGrpcRequestValidator.cs +++ b/src/MxGateway.Server/Grpc/MxAccessGrpcRequestValidator.cs @@ -85,6 +85,12 @@ public sealed class MxAccessGrpcRequestValidator MxCommandKind.WriteSecured2 => MxCommand.PayloadOneofCase.WriteSecured2, MxCommandKind.AuthenticateUser => MxCommand.PayloadOneofCase.AuthenticateUser, MxCommandKind.ArchestraUserToId => MxCommand.PayloadOneofCase.ArchestraUserToId, + MxCommandKind.AddItemBulk => MxCommand.PayloadOneofCase.AddItemBulk, + MxCommandKind.AdviseItemBulk => MxCommand.PayloadOneofCase.AdviseItemBulk, + MxCommandKind.RemoveItemBulk => MxCommand.PayloadOneofCase.RemoveItemBulk, + MxCommandKind.UnAdviseItemBulk => MxCommand.PayloadOneofCase.UnAdviseItemBulk, + MxCommandKind.SubscribeBulk => MxCommand.PayloadOneofCase.SubscribeBulk, + MxCommandKind.UnsubscribeBulk => MxCommand.PayloadOneofCase.UnsubscribeBulk, MxCommandKind.Ping => MxCommand.PayloadOneofCase.Ping, MxCommandKind.GetSessionState => MxCommand.PayloadOneofCase.GetSessionState, MxCommandKind.GetWorkerInfo => MxCommand.PayloadOneofCase.GetWorkerInfo, diff --git a/src/MxGateway.Server/Sessions/GatewaySession.cs b/src/MxGateway.Server/Sessions/GatewaySession.cs index dab1f34..6cd4557 100644 --- a/src/MxGateway.Server/Sessions/GatewaySession.cs +++ b/src/MxGateway.Server/Sessions/GatewaySession.cs @@ -247,6 +247,120 @@ public sealed class GatewaySession return await workerClient.InvokeAsync(command, CommandTimeout, cancellationToken).ConfigureAwait(false); } + public Task> AddItemBulkAsync( + int serverHandle, + IReadOnlyList tagAddresses, + CancellationToken cancellationToken) + { + ArgumentNullException.ThrowIfNull(tagAddresses); + + AddItemBulkCommand bulkCommand = new() { ServerHandle = serverHandle }; + bulkCommand.TagAddresses.Add(tagAddresses); + return InvokeBulkAsync( + new MxCommand + { + Kind = MxCommandKind.AddItemBulk, + AddItemBulk = bulkCommand, + }, + reply => reply.AddItemBulk, + cancellationToken); + } + + public Task> AdviseItemBulkAsync( + int serverHandle, + IReadOnlyList itemHandles, + CancellationToken cancellationToken) + { + ArgumentNullException.ThrowIfNull(itemHandles); + + AdviseItemBulkCommand bulkCommand = new() { ServerHandle = serverHandle }; + bulkCommand.ItemHandles.Add(itemHandles); + return InvokeBulkAsync( + new MxCommand + { + Kind = MxCommandKind.AdviseItemBulk, + AdviseItemBulk = bulkCommand, + }, + reply => reply.AdviseItemBulk, + cancellationToken); + } + + public Task> RemoveItemBulkAsync( + int serverHandle, + IReadOnlyList itemHandles, + CancellationToken cancellationToken) + { + ArgumentNullException.ThrowIfNull(itemHandles); + + RemoveItemBulkCommand bulkCommand = new() { ServerHandle = serverHandle }; + bulkCommand.ItemHandles.Add(itemHandles); + return InvokeBulkAsync( + new MxCommand + { + Kind = MxCommandKind.RemoveItemBulk, + RemoveItemBulk = bulkCommand, + }, + reply => reply.RemoveItemBulk, + cancellationToken); + } + + public Task> UnAdviseItemBulkAsync( + int serverHandle, + IReadOnlyList itemHandles, + CancellationToken cancellationToken) + { + ArgumentNullException.ThrowIfNull(itemHandles); + + UnAdviseItemBulkCommand bulkCommand = new() { ServerHandle = serverHandle }; + bulkCommand.ItemHandles.Add(itemHandles); + return InvokeBulkAsync( + new MxCommand + { + Kind = MxCommandKind.UnAdviseItemBulk, + UnAdviseItemBulk = bulkCommand, + }, + reply => reply.UnAdviseItemBulk, + cancellationToken); + } + + public Task> SubscribeBulkAsync( + int serverHandle, + IReadOnlyList tagAddresses, + CancellationToken cancellationToken) + { + ArgumentNullException.ThrowIfNull(tagAddresses); + + SubscribeBulkCommand bulkCommand = new() { ServerHandle = serverHandle }; + bulkCommand.TagAddresses.Add(tagAddresses); + return InvokeBulkAsync( + new MxCommand + { + Kind = MxCommandKind.SubscribeBulk, + SubscribeBulk = bulkCommand, + }, + reply => reply.SubscribeBulk, + cancellationToken); + } + + public Task> UnsubscribeBulkAsync( + int serverHandle, + IReadOnlyList itemHandles, + CancellationToken cancellationToken) + { + ArgumentNullException.ThrowIfNull(itemHandles); + + UnsubscribeBulkCommand bulkCommand = new() { ServerHandle = serverHandle }; + bulkCommand.ItemHandles.Add(itemHandles); + return InvokeBulkAsync( + new MxCommand + { + Kind = MxCommandKind.UnsubscribeBulk, + UnsubscribeBulk = bulkCommand, + }, + reply => reply.UnsubscribeBulk, + cancellationToken); + } + public IAsyncEnumerable ReadEventsAsync(CancellationToken cancellationToken) { IWorkerClient workerClient = GetReadyWorkerClient(); @@ -308,6 +422,35 @@ public sealed class GatewaySession } } + private async Task> InvokeBulkAsync( + MxCommand command, + Func payloadAccessor, + CancellationToken cancellationToken) + { + WorkerCommandReply workerReply = await InvokeAsync( + new WorkerCommand { Command = command }, + cancellationToken) + .ConfigureAwait(false); + MxCommandReply reply = workerReply.Reply ?? new MxCommandReply + { + ProtocolStatus = new ProtocolStatus + { + Code = ProtocolStatusCode.ProtocolViolation, + Message = "Worker command reply did not contain a public reply payload.", + }, + }; + + if (reply.ProtocolStatus?.Code is not ProtocolStatusCode.Ok) + { + string message = reply.ProtocolStatus?.Message ?? reply.DiagnosticMessage; + throw new SessionManagerException( + SessionManagerErrorCode.SessionNotReady, + string.IsNullOrWhiteSpace(message) ? "Bulk MXAccess command failed." : message); + } + + return payloadAccessor(reply)?.Results.ToArray() ?? []; + } + private IWorkerClient GetReadyWorkerClient() { lock (_syncRoot) diff --git a/src/MxGateway.Tests/Gateway/Sessions/SessionManagerTests.cs b/src/MxGateway.Tests/Gateway/Sessions/SessionManagerTests.cs index eece91a..1c5367e 100644 --- a/src/MxGateway.Tests/Gateway/Sessions/SessionManagerTests.cs +++ b/src/MxGateway.Tests/Gateway/Sessions/SessionManagerTests.cs @@ -48,6 +48,50 @@ public sealed class SessionManagerTests Assert.Equal(MxCommandKind.Ping, reply.Reply.Kind); } + [Fact] + public async Task GatewaySessionSubscribeBulkAsync_ForwardsOneBulkCommandAndReturnsResults() + { + FakeWorkerClient workerClient = new() + { + InvokeReply = new WorkerCommandReply + { + Reply = new MxCommandReply + { + SessionId = "session-1", + CorrelationId = "correlation-1", + Kind = MxCommandKind.SubscribeBulk, + ProtocolStatus = new ProtocolStatus { Code = ProtocolStatusCode.Ok }, + SubscribeBulk = new BulkSubscribeReply + { + Results = + { + new SubscribeResult + { + ServerHandle = 12, + TagAddress = "Galaxy.Tag.Value", + ItemHandle = 512, + WasSuccessful = true, + }, + }, + }, + }, + }, + }; + SessionManager manager = CreateManager(new FakeSessionWorkerClientFactory(workerClient)); + GatewaySession session = await manager.OpenSessionAsync(CreateOpenRequest(), "client-1", CancellationToken.None); + + IReadOnlyList results = await session.SubscribeBulkAsync( + 12, + ["Galaxy.Tag.Value"], + CancellationToken.None); + + SubscribeResult result = Assert.Single(results); + Assert.Equal(512, result.ItemHandle); + Assert.Equal(1, workerClient.InvokeCount); + Assert.Equal(MxCommandKind.SubscribeBulk, workerClient.LastCommand?.Command.Kind); + Assert.Equal(["Galaxy.Tag.Value"], workerClient.LastCommand?.Command.SubscribeBulk.TagAddresses); + } + [Fact] public async Task InvokeAsync_WhenSessionFaulted_RejectsCommand() { @@ -288,6 +332,10 @@ public sealed class SessionManagerTests public Exception? ShutdownException { get; init; } + public WorkerCommand? LastCommand { get; private set; } + + public WorkerCommandReply? InvokeReply { get; init; } + public Task StartAsync(CancellationToken cancellationToken) { return Task.CompletedTask; @@ -299,6 +347,12 @@ public sealed class SessionManagerTests CancellationToken cancellationToken) { InvokeCount++; + LastCommand = command; + if (InvokeReply is not null) + { + return Task.FromResult(InvokeReply); + } + MxCommandKind kind = command.Command?.Kind ?? MxCommandKind.Unspecified; return Task.FromResult(new WorkerCommandReply diff --git a/src/MxGateway.Worker.Tests/MxAccess/MxAccessCommandExecutorTests.cs b/src/MxGateway.Worker.Tests/MxAccess/MxAccessCommandExecutorTests.cs index 4e8b355..08a6a87 100644 --- a/src/MxGateway.Worker.Tests/MxAccess/MxAccessCommandExecutorTests.cs +++ b/src/MxGateway.Worker.Tests/MxAccess/MxAccessCommandExecutorTests.cs @@ -416,6 +416,74 @@ public sealed class MxAccessCommandExecutorTests Assert.Equal(MxAccessAdviceKind.Plain, adviceHandle.AdviceKind); } + [Fact] + public async Task DispatchAsync_SubscribeBulk_RunsSequentialMxAccessCallsAndReturnsPerItemResults() + { + FakeMxAccessComObject fakeComObject = new( + registerHandle: 60, + addItemHandle: 512); + FakeMxAccessComObjectFactory factory = new(fakeComObject); + using StaRuntime runtime = CreateRuntime(); + using MxAccessStaSession session = new(runtime, factory, new NoopEventSink()); + await session.StartAsync(workerProcessId: 1234); + + MxCommandReply reply = await session.DispatchAsync(CreateSubscribeBulkCommand( + "subscribe-bulk", + 60, + ["", "Galaxy.Tag.Value"])); + + Assert.Equal(ProtocolStatusCode.Ok, reply.ProtocolStatus.Code); + Assert.Equal(MxCommandKind.SubscribeBulk, reply.Kind); + Assert.Collection( + reply.SubscribeBulk.Results, + result => + { + Assert.False(result.WasSuccessful); + Assert.Equal(string.Empty, result.TagAddress); + Assert.Equal(0, result.ItemHandle); + Assert.Contains("required", result.ErrorMessage, StringComparison.OrdinalIgnoreCase); + }, + result => + { + Assert.True(result.WasSuccessful); + Assert.Equal("Galaxy.Tag.Value", result.TagAddress); + Assert.Equal(512, result.ItemHandle); + }); + Assert.Equal( + ["AddItem:60:Galaxy.Tag.Value", "Advise:60:512"], + fakeComObject.OperationNames); + Assert.Equal(runtime.StaThreadId, fakeComObject.AddItemThreadId); + Assert.Equal(runtime.StaThreadId, fakeComObject.AdviseThreadId); + } + + [Fact] + public async Task DispatchAsync_UnsubscribeBulk_RemovesItemAfterUnAdviseFailure() + { + const int hresult = unchecked((int)0x80070057); + FakeMxAccessComObject fakeComObject = new( + registerHandle: 61, + unAdviseException: new COMException("Invalid item handle.", hresult)); + FakeMxAccessComObjectFactory factory = new(fakeComObject); + using StaRuntime runtime = CreateRuntime(); + using MxAccessStaSession session = new(runtime, factory, new NoopEventSink()); + await session.StartAsync(workerProcessId: 1234); + + MxCommandReply reply = await session.DispatchAsync(CreateUnsubscribeBulkCommand( + "unsubscribe-bulk", + 61, + [513])); + + Assert.Equal(ProtocolStatusCode.Ok, reply.ProtocolStatus.Code); + SubscribeResult result = Assert.Single(reply.UnsubscribeBulk.Results); + Assert.False(result.WasSuccessful); + Assert.Equal(513, result.ItemHandle); + Assert.Equal(string.Empty, result.TagAddress); + Assert.Contains("UnAdvise failed", result.ErrorMessage); + Assert.Equal( + ["UnAdvise:61:513", "RemoveItem:61:513"], + fakeComObject.OperationNames); + } + [Fact] public async Task ShutdownGracefullyAsync_CleansHandlesInAdviceItemServerOrder() { @@ -658,6 +726,48 @@ public sealed class MxAccessCommandExecutorTests }); } + private static StaCommand CreateSubscribeBulkCommand( + string correlationId, + int serverHandle, + IEnumerable tagAddresses) + { + SubscribeBulkCommand command = new() + { + ServerHandle = serverHandle, + }; + command.TagAddresses.Add(tagAddresses); + + return new StaCommand( + "session-1", + correlationId, + new MxCommand + { + Kind = MxCommandKind.SubscribeBulk, + SubscribeBulk = command, + }); + } + + private static StaCommand CreateUnsubscribeBulkCommand( + string correlationId, + int serverHandle, + IEnumerable itemHandles) + { + UnsubscribeBulkCommand command = new() + { + ServerHandle = serverHandle, + }; + command.ItemHandles.Add(itemHandles); + + return new StaCommand( + "session-1", + correlationId, + new MxCommand + { + Kind = MxCommandKind.UnsubscribeBulk, + UnsubscribeBulk = command, + }); + } + private static StaCommand CreateAdviseSupervisoryCommand( string correlationId, int serverHandle, diff --git a/src/MxGateway.Worker/MxAccess/MxAccessCommandExecutor.cs b/src/MxGateway.Worker/MxAccess/MxAccessCommandExecutor.cs index 71a0480..d2d325b 100644 --- a/src/MxGateway.Worker/MxAccess/MxAccessCommandExecutor.cs +++ b/src/MxGateway.Worker/MxAccess/MxAccessCommandExecutor.cs @@ -1,4 +1,5 @@ using System; +using System.Collections.Generic; using MxGateway.Contracts.Proto; using MxGateway.Worker.Conversion; using MxGateway.Worker.Sta; @@ -40,6 +41,12 @@ public sealed class MxAccessCommandExecutor : IStaCommandExecutor MxCommandKind.Advise => ExecuteAdvise(command), MxCommandKind.UnAdvise => ExecuteUnAdvise(command), MxCommandKind.AdviseSupervisory => ExecuteAdviseSupervisory(command), + MxCommandKind.AddItemBulk => ExecuteAddItemBulk(command), + MxCommandKind.AdviseItemBulk => ExecuteAdviseItemBulk(command), + MxCommandKind.RemoveItemBulk => ExecuteRemoveItemBulk(command), + MxCommandKind.UnAdviseItemBulk => ExecuteUnAdviseItemBulk(command), + MxCommandKind.SubscribeBulk => ExecuteSubscribeBulk(command), + MxCommandKind.UnsubscribeBulk => ExecuteUnsubscribeBulk(command), _ => CreateInvalidRequestReply(command, $"Unsupported MXAccess command kind {command.Kind}."), }; } @@ -178,6 +185,84 @@ public sealed class MxAccessCommandExecutor : IStaCommandExecutor return CreateOkReply(command); } + private MxCommandReply ExecuteAddItemBulk(StaCommand command) + { + if (command.Command.PayloadCase != MxCommand.PayloadOneofCase.AddItemBulk) + { + return CreateInvalidRequestReply(command, "AddItemBulk command payload is required."); + } + + AddItemBulkCommand addItemBulkCommand = command.Command.AddItemBulk; + return CreateBulkReply( + command, + session.AddItemBulk(addItemBulkCommand.ServerHandle, addItemBulkCommand.TagAddresses)); + } + + private MxCommandReply ExecuteAdviseItemBulk(StaCommand command) + { + if (command.Command.PayloadCase != MxCommand.PayloadOneofCase.AdviseItemBulk) + { + return CreateInvalidRequestReply(command, "AdviseItemBulk command payload is required."); + } + + AdviseItemBulkCommand adviseItemBulkCommand = command.Command.AdviseItemBulk; + return CreateBulkReply( + command, + session.AdviseItemBulk(adviseItemBulkCommand.ServerHandle, adviseItemBulkCommand.ItemHandles)); + } + + private MxCommandReply ExecuteRemoveItemBulk(StaCommand command) + { + if (command.Command.PayloadCase != MxCommand.PayloadOneofCase.RemoveItemBulk) + { + return CreateInvalidRequestReply(command, "RemoveItemBulk command payload is required."); + } + + RemoveItemBulkCommand removeItemBulkCommand = command.Command.RemoveItemBulk; + return CreateBulkReply( + command, + session.RemoveItemBulk(removeItemBulkCommand.ServerHandle, removeItemBulkCommand.ItemHandles)); + } + + private MxCommandReply ExecuteUnAdviseItemBulk(StaCommand command) + { + if (command.Command.PayloadCase != MxCommand.PayloadOneofCase.UnAdviseItemBulk) + { + return CreateInvalidRequestReply(command, "UnAdviseItemBulk command payload is required."); + } + + UnAdviseItemBulkCommand unAdviseItemBulkCommand = command.Command.UnAdviseItemBulk; + return CreateBulkReply( + command, + session.UnAdviseItemBulk(unAdviseItemBulkCommand.ServerHandle, unAdviseItemBulkCommand.ItemHandles)); + } + + private MxCommandReply ExecuteSubscribeBulk(StaCommand command) + { + if (command.Command.PayloadCase != MxCommand.PayloadOneofCase.SubscribeBulk) + { + return CreateInvalidRequestReply(command, "SubscribeBulk command payload is required."); + } + + SubscribeBulkCommand subscribeBulkCommand = command.Command.SubscribeBulk; + return CreateBulkReply( + command, + session.SubscribeBulk(subscribeBulkCommand.ServerHandle, subscribeBulkCommand.TagAddresses)); + } + + private MxCommandReply ExecuteUnsubscribeBulk(StaCommand command) + { + if (command.Command.PayloadCase != MxCommand.PayloadOneofCase.UnsubscribeBulk) + { + return CreateInvalidRequestReply(command, "UnsubscribeBulk command payload is required."); + } + + UnsubscribeBulkCommand unsubscribeBulkCommand = command.Command.UnsubscribeBulk; + return CreateBulkReply( + command, + session.UnsubscribeBulk(unsubscribeBulkCommand.ServerHandle, unsubscribeBulkCommand.ItemHandles)); + } + private static MxCommandReply CreateOkReply(StaCommand command) { return new MxCommandReply @@ -194,6 +279,41 @@ public sealed class MxAccessCommandExecutor : IStaCommandExecutor }; } + private static MxCommandReply CreateBulkReply( + StaCommand command, + IEnumerable results) + { + MxCommandReply reply = CreateOkReply(command); + BulkSubscribeReply bulkReply = new(); + bulkReply.Results.Add(results); + + switch (command.Kind) + { + case MxCommandKind.AddItemBulk: + reply.AddItemBulk = bulkReply; + break; + case MxCommandKind.AdviseItemBulk: + reply.AdviseItemBulk = bulkReply; + break; + case MxCommandKind.RemoveItemBulk: + reply.RemoveItemBulk = bulkReply; + break; + case MxCommandKind.UnAdviseItemBulk: + reply.UnAdviseItemBulk = bulkReply; + break; + case MxCommandKind.SubscribeBulk: + reply.SubscribeBulk = bulkReply; + break; + case MxCommandKind.UnsubscribeBulk: + reply.UnsubscribeBulk = bulkReply; + break; + default: + throw new InvalidOperationException($"Unsupported bulk command kind {command.Kind}."); + } + + return reply; + } + private static MxCommandReply CreateInvalidRequestReply( StaCommand command, string message) diff --git a/src/MxGateway.Worker/MxAccess/MxAccessSession.cs b/src/MxGateway.Worker/MxAccess/MxAccessSession.cs index 5b7ab53..5dc80cf 100644 --- a/src/MxGateway.Worker/MxAccess/MxAccessSession.cs +++ b/src/MxGateway.Worker/MxAccess/MxAccessSession.cs @@ -189,6 +189,202 @@ public sealed class MxAccessSession : IDisposable MxAccessAdviceKind.Supervisory); } + public IReadOnlyList AddItemBulk( + int serverHandle, + IEnumerable tagAddresses) + { + ThrowIfDisposed(); + if (tagAddresses is null) + { + throw new ArgumentNullException(nameof(tagAddresses)); + } + + List results = new(); + foreach (string? tagAddress in tagAddresses) + { + if (string.IsNullOrWhiteSpace(tagAddress)) + { + results.Add(Failed(serverHandle, tagAddress ?? string.Empty, itemHandle: 0, "Tag address is required.")); + continue; + } + + try + { + int itemHandle = AddItem(serverHandle, tagAddress); + results.Add(Succeeded(serverHandle, tagAddress, itemHandle)); + } + catch (Exception exception) + { + results.Add(Failed(serverHandle, tagAddress, itemHandle: 0, exception.Message)); + } + } + + return results; + } + + public IReadOnlyList AdviseItemBulk( + int serverHandle, + IEnumerable itemHandles) + { + ThrowIfDisposed(); + if (itemHandles is null) + { + throw new ArgumentNullException(nameof(itemHandles)); + } + + List results = new(); + foreach (int itemHandle in itemHandles) + { + try + { + Advise(serverHandle, itemHandle); + results.Add(Succeeded(serverHandle, string.Empty, itemHandle)); + } + catch (Exception exception) + { + results.Add(Failed(serverHandle, string.Empty, itemHandle, exception.Message)); + } + } + + return results; + } + + public IReadOnlyList RemoveItemBulk( + int serverHandle, + IEnumerable itemHandles) + { + ThrowIfDisposed(); + if (itemHandles is null) + { + throw new ArgumentNullException(nameof(itemHandles)); + } + + List results = new(); + foreach (int itemHandle in itemHandles) + { + try + { + RemoveItem(serverHandle, itemHandle); + results.Add(Succeeded(serverHandle, string.Empty, itemHandle)); + } + catch (Exception exception) + { + results.Add(Failed(serverHandle, string.Empty, itemHandle, exception.Message)); + } + } + + return results; + } + + public IReadOnlyList UnAdviseItemBulk( + int serverHandle, + IEnumerable itemHandles) + { + ThrowIfDisposed(); + if (itemHandles is null) + { + throw new ArgumentNullException(nameof(itemHandles)); + } + + List results = new(); + foreach (int itemHandle in itemHandles) + { + try + { + UnAdvise(serverHandle, itemHandle); + results.Add(Succeeded(serverHandle, string.Empty, itemHandle)); + } + catch (Exception exception) + { + results.Add(Failed(serverHandle, string.Empty, itemHandle, exception.Message)); + } + } + + return results; + } + + public IReadOnlyList SubscribeBulk( + int serverHandle, + IEnumerable tagAddresses) + { + ThrowIfDisposed(); + if (tagAddresses is null) + { + throw new ArgumentNullException(nameof(tagAddresses)); + } + + List results = new(); + foreach (string? tagAddress in tagAddresses) + { + if (string.IsNullOrWhiteSpace(tagAddress)) + { + results.Add(Failed(serverHandle, tagAddress ?? string.Empty, itemHandle: 0, "Tag address is required.")); + continue; + } + + int itemHandle = 0; + try + { + itemHandle = AddItem(serverHandle, tagAddress); + Advise(serverHandle, itemHandle); + results.Add(Succeeded(serverHandle, tagAddress, itemHandle)); + } + catch (Exception exception) + { + string errorMessage = exception.Message; + if (itemHandle != 0) + { + errorMessage = AppendRemoveItemCleanup(serverHandle, itemHandle, errorMessage); + } + + results.Add(Failed(serverHandle, tagAddress, itemHandle, errorMessage)); + } + } + + return results; + } + + public IReadOnlyList UnsubscribeBulk( + int serverHandle, + IEnumerable itemHandles) + { + ThrowIfDisposed(); + if (itemHandles is null) + { + throw new ArgumentNullException(nameof(itemHandles)); + } + + List results = new(); + foreach (int itemHandle in itemHandles) + { + List errors = new(); + + try + { + UnAdvise(serverHandle, itemHandle); + } + catch (Exception exception) + { + errors.Add($"UnAdvise failed: {exception.Message}"); + } + + try + { + RemoveItem(serverHandle, itemHandle); + } + catch (Exception exception) + { + errors.Add($"RemoveItem failed: {exception.Message}"); + } + + results.Add(errors.Count == 0 + ? Succeeded(serverHandle, string.Empty, itemHandle) + : Failed(serverHandle, string.Empty, itemHandle, string.Join("; ", errors))); + } + + return results; + } + public MxAccessShutdownResult ShutdownGracefully() { if (disposed) @@ -290,6 +486,53 @@ public sealed class MxAccessSession : IDisposable return ((long)serverHandle << 32) | (uint)itemHandle; } + private string AppendRemoveItemCleanup( + int serverHandle, + int itemHandle, + string errorMessage) + { + try + { + RemoveItem(serverHandle, itemHandle); + return $"{errorMessage}; cleanup RemoveItem succeeded."; + } + catch (Exception cleanupException) + { + return $"{errorMessage}; cleanup RemoveItem failed: {cleanupException.Message}"; + } + } + + private static SubscribeResult Succeeded( + int serverHandle, + string tagAddress, + int itemHandle) + { + return new SubscribeResult + { + ServerHandle = serverHandle, + TagAddress = tagAddress, + ItemHandle = itemHandle, + WasSuccessful = true, + ErrorMessage = string.Empty, + }; + } + + private static SubscribeResult Failed( + int serverHandle, + string tagAddress, + int itemHandle, + string errorMessage) + { + return new SubscribeResult + { + ServerHandle = serverHandle, + TagAddress = tagAddress, + ItemHandle = itemHandle, + WasSuccessful = false, + ErrorMessage = errorMessage, + }; + } + private void DisposeCore(ICollection? failures) { try