diff --git a/akka-cluster-sharding/src/main/scala/akka/cluster/sharding/protobuf/ClusterShardingMessageSerializer.scala b/akka-cluster-sharding/src/main/scala/akka/cluster/sharding/protobuf/ClusterShardingMessageSerializer.scala index 48d297de0a..3e629ee2d9 100644 --- a/akka-cluster-sharding/src/main/scala/akka/cluster/sharding/protobuf/ClusterShardingMessageSerializer.scala +++ b/akka-cluster-sharding/src/main/scala/akka/cluster/sharding/protobuf/ClusterShardingMessageSerializer.scala @@ -31,8 +31,6 @@ private[akka] class ClusterShardingMessageSerializer(val system: ExtendedActorSy import Shard.{ GetShardStats, ShardStats } import Shard.{ State ⇒ EntityState, EntityStarted, EntityStopped } - private lazy val serialization = SerializationExtension(system) - private final val BufferSize = 1024 * 4 private val CoordinatorStateManifest = "AA" diff --git a/akka-remote/src/main/java/akka/remote/ArteryControlFormats.java b/akka-remote/src/main/java/akka/remote/ArteryControlFormats.java new file mode 100644 index 0000000000..516c71356a --- /dev/null +++ b/akka-remote/src/main/java/akka/remote/ArteryControlFormats.java @@ -0,0 +1,6137 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: ArteryControlFormats.proto + +package akka.remote; + +public final class ArteryControlFormats { + private ArteryControlFormats() {} + public static void registerAllExtensions( + akka.protobuf.ExtensionRegistry registry) { + } + public interface QuarantinedOrBuilder + extends akka.protobuf.MessageOrBuilder { + + // required .UniqueAddress from = 1; + /** + * required .UniqueAddress from = 1; + */ + boolean hasFrom(); + /** + * required .UniqueAddress from = 1; + */ + akka.remote.ArteryControlFormats.UniqueAddress getFrom(); + /** + * required .UniqueAddress from = 1; + */ + akka.remote.ArteryControlFormats.UniqueAddressOrBuilder getFromOrBuilder(); + + // required .UniqueAddress to = 2; + /** + * required .UniqueAddress to = 2; + */ + boolean hasTo(); + /** + * required .UniqueAddress to = 2; + */ + akka.remote.ArteryControlFormats.UniqueAddress getTo(); + /** + * required .UniqueAddress to = 2; + */ + akka.remote.ArteryControlFormats.UniqueAddressOrBuilder getToOrBuilder(); + } + /** + * Protobuf type {@code Quarantined} + */ + public static final class Quarantined extends + akka.protobuf.GeneratedMessage + implements QuarantinedOrBuilder { + // Use Quarantined.newBuilder() to construct. + private Quarantined(akka.protobuf.GeneratedMessage.Builder builder) { + super(builder); + this.unknownFields = builder.getUnknownFields(); + } + private Quarantined(boolean noInit) { this.unknownFields = akka.protobuf.UnknownFieldSet.getDefaultInstance(); } + + private static final Quarantined defaultInstance; + public static Quarantined getDefaultInstance() { + return defaultInstance; + } + + public Quarantined getDefaultInstanceForType() { + return defaultInstance; + } + + private final akka.protobuf.UnknownFieldSet unknownFields; + @java.lang.Override + public final akka.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private Quarantined( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + initFields(); + int mutable_bitField0_ = 0; + akka.protobuf.UnknownFieldSet.Builder unknownFields = + akka.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: { + if (!parseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + done = true; + } + break; + } + case 10: { + akka.remote.ArteryControlFormats.UniqueAddress.Builder subBuilder = null; + if (((bitField0_ & 0x00000001) == 0x00000001)) { + subBuilder = from_.toBuilder(); + } + from_ = input.readMessage(akka.remote.ArteryControlFormats.UniqueAddress.PARSER, extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(from_); + from_ = subBuilder.buildPartial(); + } + bitField0_ |= 0x00000001; + break; + } + case 18: { + akka.remote.ArteryControlFormats.UniqueAddress.Builder subBuilder = null; + if (((bitField0_ & 0x00000002) == 0x00000002)) { + subBuilder = to_.toBuilder(); + } + to_ = input.readMessage(akka.remote.ArteryControlFormats.UniqueAddress.PARSER, extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(to_); + to_ = subBuilder.buildPartial(); + } + bitField0_ |= 0x00000002; + break; + } + } + } + } catch (akka.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new akka.protobuf.InvalidProtocolBufferException( + e.getMessage()).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final akka.protobuf.Descriptors.Descriptor + getDescriptor() { + return akka.remote.ArteryControlFormats.internal_static_Quarantined_descriptor; + } + + protected akka.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return akka.remote.ArteryControlFormats.internal_static_Quarantined_fieldAccessorTable + .ensureFieldAccessorsInitialized( + akka.remote.ArteryControlFormats.Quarantined.class, akka.remote.ArteryControlFormats.Quarantined.Builder.class); + } + + public static akka.protobuf.Parser PARSER = + new akka.protobuf.AbstractParser() { + public Quarantined parsePartialFrom( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + return new Quarantined(input, extensionRegistry); + } + }; + + @java.lang.Override + public akka.protobuf.Parser getParserForType() { + return PARSER; + } + + private int bitField0_; + // required .UniqueAddress from = 1; + public static final int FROM_FIELD_NUMBER = 1; + private akka.remote.ArteryControlFormats.UniqueAddress from_; + /** + * required .UniqueAddress from = 1; + */ + public boolean hasFrom() { + return ((bitField0_ & 0x00000001) == 0x00000001); + } + /** + * required .UniqueAddress from = 1; + */ + public akka.remote.ArteryControlFormats.UniqueAddress getFrom() { + return from_; + } + /** + * required .UniqueAddress from = 1; + */ + public akka.remote.ArteryControlFormats.UniqueAddressOrBuilder getFromOrBuilder() { + return from_; + } + + // required .UniqueAddress to = 2; + public static final int TO_FIELD_NUMBER = 2; + private akka.remote.ArteryControlFormats.UniqueAddress to_; + /** + * required .UniqueAddress to = 2; + */ + public boolean hasTo() { + return ((bitField0_ & 0x00000002) == 0x00000002); + } + /** + * required .UniqueAddress to = 2; + */ + public akka.remote.ArteryControlFormats.UniqueAddress getTo() { + return to_; + } + /** + * required .UniqueAddress to = 2; + */ + public akka.remote.ArteryControlFormats.UniqueAddressOrBuilder getToOrBuilder() { + return to_; + } + + private void initFields() { + from_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + to_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + } + private byte memoizedIsInitialized = -1; + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized != -1) return isInitialized == 1; + + if (!hasFrom()) { + memoizedIsInitialized = 0; + return false; + } + if (!hasTo()) { + memoizedIsInitialized = 0; + return false; + } + if (!getFrom().isInitialized()) { + memoizedIsInitialized = 0; + return false; + } + if (!getTo().isInitialized()) { + memoizedIsInitialized = 0; + return false; + } + memoizedIsInitialized = 1; + return true; + } + + public void writeTo(akka.protobuf.CodedOutputStream output) + throws java.io.IOException { + getSerializedSize(); + if (((bitField0_ & 0x00000001) == 0x00000001)) { + output.writeMessage(1, from_); + } + if (((bitField0_ & 0x00000002) == 0x00000002)) { + output.writeMessage(2, to_); + } + getUnknownFields().writeTo(output); + } + + private int memoizedSerializedSize = -1; + public int getSerializedSize() { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (((bitField0_ & 0x00000001) == 0x00000001)) { + size += akka.protobuf.CodedOutputStream + .computeMessageSize(1, from_); + } + if (((bitField0_ & 0x00000002) == 0x00000002)) { + size += akka.protobuf.CodedOutputStream + .computeMessageSize(2, to_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSerializedSize = size; + return size; + } + + private static final long serialVersionUID = 0L; + @java.lang.Override + protected java.lang.Object writeReplace() + throws java.io.ObjectStreamException { + return super.writeReplace(); + } + + public static akka.remote.ArteryControlFormats.Quarantined parseFrom( + akka.protobuf.ByteString data) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static akka.remote.ArteryControlFormats.Quarantined parseFrom( + akka.protobuf.ByteString data, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.Quarantined parseFrom(byte[] data) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static akka.remote.ArteryControlFormats.Quarantined parseFrom( + byte[] data, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.Quarantined parseFrom(java.io.InputStream input) + throws java.io.IOException { + return PARSER.parseFrom(input); + } + public static akka.remote.ArteryControlFormats.Quarantined parseFrom( + java.io.InputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return PARSER.parseFrom(input, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.Quarantined parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return PARSER.parseDelimitedFrom(input); + } + public static akka.remote.ArteryControlFormats.Quarantined parseDelimitedFrom( + java.io.InputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return PARSER.parseDelimitedFrom(input, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.Quarantined parseFrom( + akka.protobuf.CodedInputStream input) + throws java.io.IOException { + return PARSER.parseFrom(input); + } + public static akka.remote.ArteryControlFormats.Quarantined parseFrom( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return PARSER.parseFrom(input, extensionRegistry); + } + + public static Builder newBuilder() { return Builder.create(); } + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder(akka.remote.ArteryControlFormats.Quarantined prototype) { + return newBuilder().mergeFrom(prototype); + } + public Builder toBuilder() { return newBuilder(this); } + + @java.lang.Override + protected Builder newBuilderForType( + akka.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code Quarantined} + */ + public static final class Builder extends + akka.protobuf.GeneratedMessage.Builder + implements akka.remote.ArteryControlFormats.QuarantinedOrBuilder { + public static final akka.protobuf.Descriptors.Descriptor + getDescriptor() { + return akka.remote.ArteryControlFormats.internal_static_Quarantined_descriptor; + } + + protected akka.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return akka.remote.ArteryControlFormats.internal_static_Quarantined_fieldAccessorTable + .ensureFieldAccessorsInitialized( + akka.remote.ArteryControlFormats.Quarantined.class, akka.remote.ArteryControlFormats.Quarantined.Builder.class); + } + + // Construct using akka.remote.ArteryControlFormats.Quarantined.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + akka.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (akka.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + getFromFieldBuilder(); + getToFieldBuilder(); + } + } + private static Builder create() { + return new Builder(); + } + + public Builder clear() { + super.clear(); + if (fromBuilder_ == null) { + from_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + } else { + fromBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000001); + if (toBuilder_ == null) { + to_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + } else { + toBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000002); + return this; + } + + public Builder clone() { + return create().mergeFrom(buildPartial()); + } + + public akka.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return akka.remote.ArteryControlFormats.internal_static_Quarantined_descriptor; + } + + public akka.remote.ArteryControlFormats.Quarantined getDefaultInstanceForType() { + return akka.remote.ArteryControlFormats.Quarantined.getDefaultInstance(); + } + + public akka.remote.ArteryControlFormats.Quarantined build() { + akka.remote.ArteryControlFormats.Quarantined result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + public akka.remote.ArteryControlFormats.Quarantined buildPartial() { + akka.remote.ArteryControlFormats.Quarantined result = new akka.remote.ArteryControlFormats.Quarantined(this); + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) == 0x00000001)) { + to_bitField0_ |= 0x00000001; + } + if (fromBuilder_ == null) { + result.from_ = from_; + } else { + result.from_ = fromBuilder_.build(); + } + if (((from_bitField0_ & 0x00000002) == 0x00000002)) { + to_bitField0_ |= 0x00000002; + } + if (toBuilder_ == null) { + result.to_ = to_; + } else { + result.to_ = toBuilder_.build(); + } + result.bitField0_ = to_bitField0_; + onBuilt(); + return result; + } + + public Builder mergeFrom(akka.protobuf.Message other) { + if (other instanceof akka.remote.ArteryControlFormats.Quarantined) { + return mergeFrom((akka.remote.ArteryControlFormats.Quarantined)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(akka.remote.ArteryControlFormats.Quarantined other) { + if (other == akka.remote.ArteryControlFormats.Quarantined.getDefaultInstance()) return this; + if (other.hasFrom()) { + mergeFrom(other.getFrom()); + } + if (other.hasTo()) { + mergeTo(other.getTo()); + } + this.mergeUnknownFields(other.getUnknownFields()); + return this; + } + + public final boolean isInitialized() { + if (!hasFrom()) { + + return false; + } + if (!hasTo()) { + + return false; + } + if (!getFrom().isInitialized()) { + + return false; + } + if (!getTo().isInitialized()) { + + return false; + } + return true; + } + + public Builder mergeFrom( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + akka.remote.ArteryControlFormats.Quarantined parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (akka.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (akka.remote.ArteryControlFormats.Quarantined) e.getUnfinishedMessage(); + throw e; + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; + + // required .UniqueAddress from = 1; + private akka.remote.ArteryControlFormats.UniqueAddress from_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + private akka.protobuf.SingleFieldBuilder< + akka.remote.ArteryControlFormats.UniqueAddress, akka.remote.ArteryControlFormats.UniqueAddress.Builder, akka.remote.ArteryControlFormats.UniqueAddressOrBuilder> fromBuilder_; + /** + * required .UniqueAddress from = 1; + */ + public boolean hasFrom() { + return ((bitField0_ & 0x00000001) == 0x00000001); + } + /** + * required .UniqueAddress from = 1; + */ + public akka.remote.ArteryControlFormats.UniqueAddress getFrom() { + if (fromBuilder_ == null) { + return from_; + } else { + return fromBuilder_.getMessage(); + } + } + /** + * required .UniqueAddress from = 1; + */ + public Builder setFrom(akka.remote.ArteryControlFormats.UniqueAddress value) { + if (fromBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + from_ = value; + onChanged(); + } else { + fromBuilder_.setMessage(value); + } + bitField0_ |= 0x00000001; + return this; + } + /** + * required .UniqueAddress from = 1; + */ + public Builder setFrom( + akka.remote.ArteryControlFormats.UniqueAddress.Builder builderForValue) { + if (fromBuilder_ == null) { + from_ = builderForValue.build(); + onChanged(); + } else { + fromBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000001; + return this; + } + /** + * required .UniqueAddress from = 1; + */ + public Builder mergeFrom(akka.remote.ArteryControlFormats.UniqueAddress value) { + if (fromBuilder_ == null) { + if (((bitField0_ & 0x00000001) == 0x00000001) && + from_ != akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance()) { + from_ = + akka.remote.ArteryControlFormats.UniqueAddress.newBuilder(from_).mergeFrom(value).buildPartial(); + } else { + from_ = value; + } + onChanged(); + } else { + fromBuilder_.mergeFrom(value); + } + bitField0_ |= 0x00000001; + return this; + } + /** + * required .UniqueAddress from = 1; + */ + public Builder clearFrom() { + if (fromBuilder_ == null) { + from_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + onChanged(); + } else { + fromBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000001); + return this; + } + /** + * required .UniqueAddress from = 1; + */ + public akka.remote.ArteryControlFormats.UniqueAddress.Builder getFromBuilder() { + bitField0_ |= 0x00000001; + onChanged(); + return getFromFieldBuilder().getBuilder(); + } + /** + * required .UniqueAddress from = 1; + */ + public akka.remote.ArteryControlFormats.UniqueAddressOrBuilder getFromOrBuilder() { + if (fromBuilder_ != null) { + return fromBuilder_.getMessageOrBuilder(); + } else { + return from_; + } + } + /** + * required .UniqueAddress from = 1; + */ + private akka.protobuf.SingleFieldBuilder< + akka.remote.ArteryControlFormats.UniqueAddress, akka.remote.ArteryControlFormats.UniqueAddress.Builder, akka.remote.ArteryControlFormats.UniqueAddressOrBuilder> + getFromFieldBuilder() { + if (fromBuilder_ == null) { + fromBuilder_ = new akka.protobuf.SingleFieldBuilder< + akka.remote.ArteryControlFormats.UniqueAddress, akka.remote.ArteryControlFormats.UniqueAddress.Builder, akka.remote.ArteryControlFormats.UniqueAddressOrBuilder>( + from_, + getParentForChildren(), + isClean()); + from_ = null; + } + return fromBuilder_; + } + + // required .UniqueAddress to = 2; + private akka.remote.ArteryControlFormats.UniqueAddress to_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + private akka.protobuf.SingleFieldBuilder< + akka.remote.ArteryControlFormats.UniqueAddress, akka.remote.ArteryControlFormats.UniqueAddress.Builder, akka.remote.ArteryControlFormats.UniqueAddressOrBuilder> toBuilder_; + /** + * required .UniqueAddress to = 2; + */ + public boolean hasTo() { + return ((bitField0_ & 0x00000002) == 0x00000002); + } + /** + * required .UniqueAddress to = 2; + */ + public akka.remote.ArteryControlFormats.UniqueAddress getTo() { + if (toBuilder_ == null) { + return to_; + } else { + return toBuilder_.getMessage(); + } + } + /** + * required .UniqueAddress to = 2; + */ + public Builder setTo(akka.remote.ArteryControlFormats.UniqueAddress value) { + if (toBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + to_ = value; + onChanged(); + } else { + toBuilder_.setMessage(value); + } + bitField0_ |= 0x00000002; + return this; + } + /** + * required .UniqueAddress to = 2; + */ + public Builder setTo( + akka.remote.ArteryControlFormats.UniqueAddress.Builder builderForValue) { + if (toBuilder_ == null) { + to_ = builderForValue.build(); + onChanged(); + } else { + toBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000002; + return this; + } + /** + * required .UniqueAddress to = 2; + */ + public Builder mergeTo(akka.remote.ArteryControlFormats.UniqueAddress value) { + if (toBuilder_ == null) { + if (((bitField0_ & 0x00000002) == 0x00000002) && + to_ != akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance()) { + to_ = + akka.remote.ArteryControlFormats.UniqueAddress.newBuilder(to_).mergeFrom(value).buildPartial(); + } else { + to_ = value; + } + onChanged(); + } else { + toBuilder_.mergeFrom(value); + } + bitField0_ |= 0x00000002; + return this; + } + /** + * required .UniqueAddress to = 2; + */ + public Builder clearTo() { + if (toBuilder_ == null) { + to_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + onChanged(); + } else { + toBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000002); + return this; + } + /** + * required .UniqueAddress to = 2; + */ + public akka.remote.ArteryControlFormats.UniqueAddress.Builder getToBuilder() { + bitField0_ |= 0x00000002; + onChanged(); + return getToFieldBuilder().getBuilder(); + } + /** + * required .UniqueAddress to = 2; + */ + public akka.remote.ArteryControlFormats.UniqueAddressOrBuilder getToOrBuilder() { + if (toBuilder_ != null) { + return toBuilder_.getMessageOrBuilder(); + } else { + return to_; + } + } + /** + * required .UniqueAddress to = 2; + */ + private akka.protobuf.SingleFieldBuilder< + akka.remote.ArteryControlFormats.UniqueAddress, akka.remote.ArteryControlFormats.UniqueAddress.Builder, akka.remote.ArteryControlFormats.UniqueAddressOrBuilder> + getToFieldBuilder() { + if (toBuilder_ == null) { + toBuilder_ = new akka.protobuf.SingleFieldBuilder< + akka.remote.ArteryControlFormats.UniqueAddress, akka.remote.ArteryControlFormats.UniqueAddress.Builder, akka.remote.ArteryControlFormats.UniqueAddressOrBuilder>( + to_, + getParentForChildren(), + isClean()); + to_ = null; + } + return toBuilder_; + } + + // @@protoc_insertion_point(builder_scope:Quarantined) + } + + static { + defaultInstance = new Quarantined(true); + defaultInstance.initFields(); + } + + // @@protoc_insertion_point(class_scope:Quarantined) + } + + public interface MessageWithAddressOrBuilder + extends akka.protobuf.MessageOrBuilder { + + // required .UniqueAddress address = 1; + /** + * required .UniqueAddress address = 1; + */ + boolean hasAddress(); + /** + * required .UniqueAddress address = 1; + */ + akka.remote.ArteryControlFormats.UniqueAddress getAddress(); + /** + * required .UniqueAddress address = 1; + */ + akka.remote.ArteryControlFormats.UniqueAddressOrBuilder getAddressOrBuilder(); + } + /** + * Protobuf type {@code MessageWithAddress} + * + *
+   * Generic message declaration that is used for all types of message that (currently) have a single
+   * address field. A message that needs to changed later can be cloned from this one and then adapted.
+   * ActorSystemTerminating
+   * ActorSystemTerminating.Ack
+   * OutboundHandshake.HandshakeReq
+   * OutboundHandshake.HandshakeRsp
+   * 
+ */ + public static final class MessageWithAddress extends + akka.protobuf.GeneratedMessage + implements MessageWithAddressOrBuilder { + // Use MessageWithAddress.newBuilder() to construct. + private MessageWithAddress(akka.protobuf.GeneratedMessage.Builder builder) { + super(builder); + this.unknownFields = builder.getUnknownFields(); + } + private MessageWithAddress(boolean noInit) { this.unknownFields = akka.protobuf.UnknownFieldSet.getDefaultInstance(); } + + private static final MessageWithAddress defaultInstance; + public static MessageWithAddress getDefaultInstance() { + return defaultInstance; + } + + public MessageWithAddress getDefaultInstanceForType() { + return defaultInstance; + } + + private final akka.protobuf.UnknownFieldSet unknownFields; + @java.lang.Override + public final akka.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private MessageWithAddress( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + initFields(); + int mutable_bitField0_ = 0; + akka.protobuf.UnknownFieldSet.Builder unknownFields = + akka.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: { + if (!parseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + done = true; + } + break; + } + case 10: { + akka.remote.ArteryControlFormats.UniqueAddress.Builder subBuilder = null; + if (((bitField0_ & 0x00000001) == 0x00000001)) { + subBuilder = address_.toBuilder(); + } + address_ = input.readMessage(akka.remote.ArteryControlFormats.UniqueAddress.PARSER, extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(address_); + address_ = subBuilder.buildPartial(); + } + bitField0_ |= 0x00000001; + break; + } + } + } + } catch (akka.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new akka.protobuf.InvalidProtocolBufferException( + e.getMessage()).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final akka.protobuf.Descriptors.Descriptor + getDescriptor() { + return akka.remote.ArteryControlFormats.internal_static_MessageWithAddress_descriptor; + } + + protected akka.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return akka.remote.ArteryControlFormats.internal_static_MessageWithAddress_fieldAccessorTable + .ensureFieldAccessorsInitialized( + akka.remote.ArteryControlFormats.MessageWithAddress.class, akka.remote.ArteryControlFormats.MessageWithAddress.Builder.class); + } + + public static akka.protobuf.Parser PARSER = + new akka.protobuf.AbstractParser() { + public MessageWithAddress parsePartialFrom( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + return new MessageWithAddress(input, extensionRegistry); + } + }; + + @java.lang.Override + public akka.protobuf.Parser getParserForType() { + return PARSER; + } + + private int bitField0_; + // required .UniqueAddress address = 1; + public static final int ADDRESS_FIELD_NUMBER = 1; + private akka.remote.ArteryControlFormats.UniqueAddress address_; + /** + * required .UniqueAddress address = 1; + */ + public boolean hasAddress() { + return ((bitField0_ & 0x00000001) == 0x00000001); + } + /** + * required .UniqueAddress address = 1; + */ + public akka.remote.ArteryControlFormats.UniqueAddress getAddress() { + return address_; + } + /** + * required .UniqueAddress address = 1; + */ + public akka.remote.ArteryControlFormats.UniqueAddressOrBuilder getAddressOrBuilder() { + return address_; + } + + private void initFields() { + address_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + } + private byte memoizedIsInitialized = -1; + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized != -1) return isInitialized == 1; + + if (!hasAddress()) { + memoizedIsInitialized = 0; + return false; + } + if (!getAddress().isInitialized()) { + memoizedIsInitialized = 0; + return false; + } + memoizedIsInitialized = 1; + return true; + } + + public void writeTo(akka.protobuf.CodedOutputStream output) + throws java.io.IOException { + getSerializedSize(); + if (((bitField0_ & 0x00000001) == 0x00000001)) { + output.writeMessage(1, address_); + } + getUnknownFields().writeTo(output); + } + + private int memoizedSerializedSize = -1; + public int getSerializedSize() { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (((bitField0_ & 0x00000001) == 0x00000001)) { + size += akka.protobuf.CodedOutputStream + .computeMessageSize(1, address_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSerializedSize = size; + return size; + } + + private static final long serialVersionUID = 0L; + @java.lang.Override + protected java.lang.Object writeReplace() + throws java.io.ObjectStreamException { + return super.writeReplace(); + } + + public static akka.remote.ArteryControlFormats.MessageWithAddress parseFrom( + akka.protobuf.ByteString data) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static akka.remote.ArteryControlFormats.MessageWithAddress parseFrom( + akka.protobuf.ByteString data, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.MessageWithAddress parseFrom(byte[] data) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static akka.remote.ArteryControlFormats.MessageWithAddress parseFrom( + byte[] data, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.MessageWithAddress parseFrom(java.io.InputStream input) + throws java.io.IOException { + return PARSER.parseFrom(input); + } + public static akka.remote.ArteryControlFormats.MessageWithAddress parseFrom( + java.io.InputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return PARSER.parseFrom(input, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.MessageWithAddress parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return PARSER.parseDelimitedFrom(input); + } + public static akka.remote.ArteryControlFormats.MessageWithAddress parseDelimitedFrom( + java.io.InputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return PARSER.parseDelimitedFrom(input, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.MessageWithAddress parseFrom( + akka.protobuf.CodedInputStream input) + throws java.io.IOException { + return PARSER.parseFrom(input); + } + public static akka.remote.ArteryControlFormats.MessageWithAddress parseFrom( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return PARSER.parseFrom(input, extensionRegistry); + } + + public static Builder newBuilder() { return Builder.create(); } + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder(akka.remote.ArteryControlFormats.MessageWithAddress prototype) { + return newBuilder().mergeFrom(prototype); + } + public Builder toBuilder() { return newBuilder(this); } + + @java.lang.Override + protected Builder newBuilderForType( + akka.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code MessageWithAddress} + * + *
+     * Generic message declaration that is used for all types of message that (currently) have a single
+     * address field. A message that needs to changed later can be cloned from this one and then adapted.
+     * ActorSystemTerminating
+     * ActorSystemTerminating.Ack
+     * OutboundHandshake.HandshakeReq
+     * OutboundHandshake.HandshakeRsp
+     * 
+ */ + public static final class Builder extends + akka.protobuf.GeneratedMessage.Builder + implements akka.remote.ArteryControlFormats.MessageWithAddressOrBuilder { + public static final akka.protobuf.Descriptors.Descriptor + getDescriptor() { + return akka.remote.ArteryControlFormats.internal_static_MessageWithAddress_descriptor; + } + + protected akka.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return akka.remote.ArteryControlFormats.internal_static_MessageWithAddress_fieldAccessorTable + .ensureFieldAccessorsInitialized( + akka.remote.ArteryControlFormats.MessageWithAddress.class, akka.remote.ArteryControlFormats.MessageWithAddress.Builder.class); + } + + // Construct using akka.remote.ArteryControlFormats.MessageWithAddress.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + akka.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (akka.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + getAddressFieldBuilder(); + } + } + private static Builder create() { + return new Builder(); + } + + public Builder clear() { + super.clear(); + if (addressBuilder_ == null) { + address_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + } else { + addressBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000001); + return this; + } + + public Builder clone() { + return create().mergeFrom(buildPartial()); + } + + public akka.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return akka.remote.ArteryControlFormats.internal_static_MessageWithAddress_descriptor; + } + + public akka.remote.ArteryControlFormats.MessageWithAddress getDefaultInstanceForType() { + return akka.remote.ArteryControlFormats.MessageWithAddress.getDefaultInstance(); + } + + public akka.remote.ArteryControlFormats.MessageWithAddress build() { + akka.remote.ArteryControlFormats.MessageWithAddress result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + public akka.remote.ArteryControlFormats.MessageWithAddress buildPartial() { + akka.remote.ArteryControlFormats.MessageWithAddress result = new akka.remote.ArteryControlFormats.MessageWithAddress(this); + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) == 0x00000001)) { + to_bitField0_ |= 0x00000001; + } + if (addressBuilder_ == null) { + result.address_ = address_; + } else { + result.address_ = addressBuilder_.build(); + } + result.bitField0_ = to_bitField0_; + onBuilt(); + return result; + } + + public Builder mergeFrom(akka.protobuf.Message other) { + if (other instanceof akka.remote.ArteryControlFormats.MessageWithAddress) { + return mergeFrom((akka.remote.ArteryControlFormats.MessageWithAddress)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(akka.remote.ArteryControlFormats.MessageWithAddress other) { + if (other == akka.remote.ArteryControlFormats.MessageWithAddress.getDefaultInstance()) return this; + if (other.hasAddress()) { + mergeAddress(other.getAddress()); + } + this.mergeUnknownFields(other.getUnknownFields()); + return this; + } + + public final boolean isInitialized() { + if (!hasAddress()) { + + return false; + } + if (!getAddress().isInitialized()) { + + return false; + } + return true; + } + + public Builder mergeFrom( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + akka.remote.ArteryControlFormats.MessageWithAddress parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (akka.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (akka.remote.ArteryControlFormats.MessageWithAddress) e.getUnfinishedMessage(); + throw e; + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; + + // required .UniqueAddress address = 1; + private akka.remote.ArteryControlFormats.UniqueAddress address_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + private akka.protobuf.SingleFieldBuilder< + akka.remote.ArteryControlFormats.UniqueAddress, akka.remote.ArteryControlFormats.UniqueAddress.Builder, akka.remote.ArteryControlFormats.UniqueAddressOrBuilder> addressBuilder_; + /** + * required .UniqueAddress address = 1; + */ + public boolean hasAddress() { + return ((bitField0_ & 0x00000001) == 0x00000001); + } + /** + * required .UniqueAddress address = 1; + */ + public akka.remote.ArteryControlFormats.UniqueAddress getAddress() { + if (addressBuilder_ == null) { + return address_; + } else { + return addressBuilder_.getMessage(); + } + } + /** + * required .UniqueAddress address = 1; + */ + public Builder setAddress(akka.remote.ArteryControlFormats.UniqueAddress value) { + if (addressBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + address_ = value; + onChanged(); + } else { + addressBuilder_.setMessage(value); + } + bitField0_ |= 0x00000001; + return this; + } + /** + * required .UniqueAddress address = 1; + */ + public Builder setAddress( + akka.remote.ArteryControlFormats.UniqueAddress.Builder builderForValue) { + if (addressBuilder_ == null) { + address_ = builderForValue.build(); + onChanged(); + } else { + addressBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000001; + return this; + } + /** + * required .UniqueAddress address = 1; + */ + public Builder mergeAddress(akka.remote.ArteryControlFormats.UniqueAddress value) { + if (addressBuilder_ == null) { + if (((bitField0_ & 0x00000001) == 0x00000001) && + address_ != akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance()) { + address_ = + akka.remote.ArteryControlFormats.UniqueAddress.newBuilder(address_).mergeFrom(value).buildPartial(); + } else { + address_ = value; + } + onChanged(); + } else { + addressBuilder_.mergeFrom(value); + } + bitField0_ |= 0x00000001; + return this; + } + /** + * required .UniqueAddress address = 1; + */ + public Builder clearAddress() { + if (addressBuilder_ == null) { + address_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + onChanged(); + } else { + addressBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000001); + return this; + } + /** + * required .UniqueAddress address = 1; + */ + public akka.remote.ArteryControlFormats.UniqueAddress.Builder getAddressBuilder() { + bitField0_ |= 0x00000001; + onChanged(); + return getAddressFieldBuilder().getBuilder(); + } + /** + * required .UniqueAddress address = 1; + */ + public akka.remote.ArteryControlFormats.UniqueAddressOrBuilder getAddressOrBuilder() { + if (addressBuilder_ != null) { + return addressBuilder_.getMessageOrBuilder(); + } else { + return address_; + } + } + /** + * required .UniqueAddress address = 1; + */ + private akka.protobuf.SingleFieldBuilder< + akka.remote.ArteryControlFormats.UniqueAddress, akka.remote.ArteryControlFormats.UniqueAddress.Builder, akka.remote.ArteryControlFormats.UniqueAddressOrBuilder> + getAddressFieldBuilder() { + if (addressBuilder_ == null) { + addressBuilder_ = new akka.protobuf.SingleFieldBuilder< + akka.remote.ArteryControlFormats.UniqueAddress, akka.remote.ArteryControlFormats.UniqueAddress.Builder, akka.remote.ArteryControlFormats.UniqueAddressOrBuilder>( + address_, + getParentForChildren(), + isClean()); + address_ = null; + } + return addressBuilder_; + } + + // @@protoc_insertion_point(builder_scope:MessageWithAddress) + } + + static { + defaultInstance = new MessageWithAddress(true); + defaultInstance.initFields(); + } + + // @@protoc_insertion_point(class_scope:MessageWithAddress) + } + + public interface CompressionTableAdvertisementOrBuilder + extends akka.protobuf.MessageOrBuilder { + + // required .UniqueAddress from = 1; + /** + * required .UniqueAddress from = 1; + */ + boolean hasFrom(); + /** + * required .UniqueAddress from = 1; + */ + akka.remote.ArteryControlFormats.UniqueAddress getFrom(); + /** + * required .UniqueAddress from = 1; + */ + akka.remote.ArteryControlFormats.UniqueAddressOrBuilder getFromOrBuilder(); + + // required uint32 tableVersion = 2; + /** + * required uint32 tableVersion = 2; + */ + boolean hasTableVersion(); + /** + * required uint32 tableVersion = 2; + */ + int getTableVersion(); + + // repeated string keys = 3; + /** + * repeated string keys = 3; + * + *
+     * actual Map is represented by separate sequences of keys and values,
+     * relies on both sequences using the same order so that corresponding entries can be
+     * associated again when deserializing
+     * 
+ */ + java.util.List + getKeysList(); + /** + * repeated string keys = 3; + * + *
+     * actual Map is represented by separate sequences of keys and values,
+     * relies on both sequences using the same order so that corresponding entries can be
+     * associated again when deserializing
+     * 
+ */ + int getKeysCount(); + /** + * repeated string keys = 3; + * + *
+     * actual Map is represented by separate sequences of keys and values,
+     * relies on both sequences using the same order so that corresponding entries can be
+     * associated again when deserializing
+     * 
+ */ + java.lang.String getKeys(int index); + /** + * repeated string keys = 3; + * + *
+     * actual Map is represented by separate sequences of keys and values,
+     * relies on both sequences using the same order so that corresponding entries can be
+     * associated again when deserializing
+     * 
+ */ + akka.protobuf.ByteString + getKeysBytes(int index); + + // repeated uint32 values = 4; + /** + * repeated uint32 values = 4; + */ + java.util.List getValuesList(); + /** + * repeated uint32 values = 4; + */ + int getValuesCount(); + /** + * repeated uint32 values = 4; + */ + int getValues(int index); + } + /** + * Protobuf type {@code CompressionTableAdvertisement} + * + *
+   * CompressionProtocol.ActorRefCompressionAdvertisement
+   * CompressionProtocol.ClassManifestCompressionAdvertisement
+   * 
+ */ + public static final class CompressionTableAdvertisement extends + akka.protobuf.GeneratedMessage + implements CompressionTableAdvertisementOrBuilder { + // Use CompressionTableAdvertisement.newBuilder() to construct. + private CompressionTableAdvertisement(akka.protobuf.GeneratedMessage.Builder builder) { + super(builder); + this.unknownFields = builder.getUnknownFields(); + } + private CompressionTableAdvertisement(boolean noInit) { this.unknownFields = akka.protobuf.UnknownFieldSet.getDefaultInstance(); } + + private static final CompressionTableAdvertisement defaultInstance; + public static CompressionTableAdvertisement getDefaultInstance() { + return defaultInstance; + } + + public CompressionTableAdvertisement getDefaultInstanceForType() { + return defaultInstance; + } + + private final akka.protobuf.UnknownFieldSet unknownFields; + @java.lang.Override + public final akka.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private CompressionTableAdvertisement( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + initFields(); + int mutable_bitField0_ = 0; + akka.protobuf.UnknownFieldSet.Builder unknownFields = + akka.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: { + if (!parseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + done = true; + } + break; + } + case 10: { + akka.remote.ArteryControlFormats.UniqueAddress.Builder subBuilder = null; + if (((bitField0_ & 0x00000001) == 0x00000001)) { + subBuilder = from_.toBuilder(); + } + from_ = input.readMessage(akka.remote.ArteryControlFormats.UniqueAddress.PARSER, extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(from_); + from_ = subBuilder.buildPartial(); + } + bitField0_ |= 0x00000001; + break; + } + case 16: { + bitField0_ |= 0x00000002; + tableVersion_ = input.readUInt32(); + break; + } + case 26: { + if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) { + keys_ = new akka.protobuf.LazyStringArrayList(); + mutable_bitField0_ |= 0x00000004; + } + keys_.add(input.readBytes()); + break; + } + case 32: { + if (!((mutable_bitField0_ & 0x00000008) == 0x00000008)) { + values_ = new java.util.ArrayList(); + mutable_bitField0_ |= 0x00000008; + } + values_.add(input.readUInt32()); + break; + } + case 34: { + int length = input.readRawVarint32(); + int limit = input.pushLimit(length); + if (!((mutable_bitField0_ & 0x00000008) == 0x00000008) && input.getBytesUntilLimit() > 0) { + values_ = new java.util.ArrayList(); + mutable_bitField0_ |= 0x00000008; + } + while (input.getBytesUntilLimit() > 0) { + values_.add(input.readUInt32()); + } + input.popLimit(limit); + break; + } + } + } + } catch (akka.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new akka.protobuf.InvalidProtocolBufferException( + e.getMessage()).setUnfinishedMessage(this); + } finally { + if (((mutable_bitField0_ & 0x00000004) == 0x00000004)) { + keys_ = new akka.protobuf.UnmodifiableLazyStringList(keys_); + } + if (((mutable_bitField0_ & 0x00000008) == 0x00000008)) { + values_ = java.util.Collections.unmodifiableList(values_); + } + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final akka.protobuf.Descriptors.Descriptor + getDescriptor() { + return akka.remote.ArteryControlFormats.internal_static_CompressionTableAdvertisement_descriptor; + } + + protected akka.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return akka.remote.ArteryControlFormats.internal_static_CompressionTableAdvertisement_fieldAccessorTable + .ensureFieldAccessorsInitialized( + akka.remote.ArteryControlFormats.CompressionTableAdvertisement.class, akka.remote.ArteryControlFormats.CompressionTableAdvertisement.Builder.class); + } + + public static akka.protobuf.Parser PARSER = + new akka.protobuf.AbstractParser() { + public CompressionTableAdvertisement parsePartialFrom( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + return new CompressionTableAdvertisement(input, extensionRegistry); + } + }; + + @java.lang.Override + public akka.protobuf.Parser getParserForType() { + return PARSER; + } + + private int bitField0_; + // required .UniqueAddress from = 1; + public static final int FROM_FIELD_NUMBER = 1; + private akka.remote.ArteryControlFormats.UniqueAddress from_; + /** + * required .UniqueAddress from = 1; + */ + public boolean hasFrom() { + return ((bitField0_ & 0x00000001) == 0x00000001); + } + /** + * required .UniqueAddress from = 1; + */ + public akka.remote.ArteryControlFormats.UniqueAddress getFrom() { + return from_; + } + /** + * required .UniqueAddress from = 1; + */ + public akka.remote.ArteryControlFormats.UniqueAddressOrBuilder getFromOrBuilder() { + return from_; + } + + // required uint32 tableVersion = 2; + public static final int TABLEVERSION_FIELD_NUMBER = 2; + private int tableVersion_; + /** + * required uint32 tableVersion = 2; + */ + public boolean hasTableVersion() { + return ((bitField0_ & 0x00000002) == 0x00000002); + } + /** + * required uint32 tableVersion = 2; + */ + public int getTableVersion() { + return tableVersion_; + } + + // repeated string keys = 3; + public static final int KEYS_FIELD_NUMBER = 3; + private akka.protobuf.LazyStringList keys_; + /** + * repeated string keys = 3; + * + *
+     * actual Map is represented by separate sequences of keys and values,
+     * relies on both sequences using the same order so that corresponding entries can be
+     * associated again when deserializing
+     * 
+ */ + public java.util.List + getKeysList() { + return keys_; + } + /** + * repeated string keys = 3; + * + *
+     * actual Map is represented by separate sequences of keys and values,
+     * relies on both sequences using the same order so that corresponding entries can be
+     * associated again when deserializing
+     * 
+ */ + public int getKeysCount() { + return keys_.size(); + } + /** + * repeated string keys = 3; + * + *
+     * actual Map is represented by separate sequences of keys and values,
+     * relies on both sequences using the same order so that corresponding entries can be
+     * associated again when deserializing
+     * 
+ */ + public java.lang.String getKeys(int index) { + return keys_.get(index); + } + /** + * repeated string keys = 3; + * + *
+     * actual Map is represented by separate sequences of keys and values,
+     * relies on both sequences using the same order so that corresponding entries can be
+     * associated again when deserializing
+     * 
+ */ + public akka.protobuf.ByteString + getKeysBytes(int index) { + return keys_.getByteString(index); + } + + // repeated uint32 values = 4; + public static final int VALUES_FIELD_NUMBER = 4; + private java.util.List values_; + /** + * repeated uint32 values = 4; + */ + public java.util.List + getValuesList() { + return values_; + } + /** + * repeated uint32 values = 4; + */ + public int getValuesCount() { + return values_.size(); + } + /** + * repeated uint32 values = 4; + */ + public int getValues(int index) { + return values_.get(index); + } + + private void initFields() { + from_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + tableVersion_ = 0; + keys_ = akka.protobuf.LazyStringArrayList.EMPTY; + values_ = java.util.Collections.emptyList(); + } + private byte memoizedIsInitialized = -1; + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized != -1) return isInitialized == 1; + + if (!hasFrom()) { + memoizedIsInitialized = 0; + return false; + } + if (!hasTableVersion()) { + memoizedIsInitialized = 0; + return false; + } + if (!getFrom().isInitialized()) { + memoizedIsInitialized = 0; + return false; + } + memoizedIsInitialized = 1; + return true; + } + + public void writeTo(akka.protobuf.CodedOutputStream output) + throws java.io.IOException { + getSerializedSize(); + if (((bitField0_ & 0x00000001) == 0x00000001)) { + output.writeMessage(1, from_); + } + if (((bitField0_ & 0x00000002) == 0x00000002)) { + output.writeUInt32(2, tableVersion_); + } + for (int i = 0; i < keys_.size(); i++) { + output.writeBytes(3, keys_.getByteString(i)); + } + for (int i = 0; i < values_.size(); i++) { + output.writeUInt32(4, values_.get(i)); + } + getUnknownFields().writeTo(output); + } + + private int memoizedSerializedSize = -1; + public int getSerializedSize() { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (((bitField0_ & 0x00000001) == 0x00000001)) { + size += akka.protobuf.CodedOutputStream + .computeMessageSize(1, from_); + } + if (((bitField0_ & 0x00000002) == 0x00000002)) { + size += akka.protobuf.CodedOutputStream + .computeUInt32Size(2, tableVersion_); + } + { + int dataSize = 0; + for (int i = 0; i < keys_.size(); i++) { + dataSize += akka.protobuf.CodedOutputStream + .computeBytesSizeNoTag(keys_.getByteString(i)); + } + size += dataSize; + size += 1 * getKeysList().size(); + } + { + int dataSize = 0; + for (int i = 0; i < values_.size(); i++) { + dataSize += akka.protobuf.CodedOutputStream + .computeUInt32SizeNoTag(values_.get(i)); + } + size += dataSize; + size += 1 * getValuesList().size(); + } + size += getUnknownFields().getSerializedSize(); + memoizedSerializedSize = size; + return size; + } + + private static final long serialVersionUID = 0L; + @java.lang.Override + protected java.lang.Object writeReplace() + throws java.io.ObjectStreamException { + return super.writeReplace(); + } + + public static akka.remote.ArteryControlFormats.CompressionTableAdvertisement parseFrom( + akka.protobuf.ByteString data) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static akka.remote.ArteryControlFormats.CompressionTableAdvertisement parseFrom( + akka.protobuf.ByteString data, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.CompressionTableAdvertisement parseFrom(byte[] data) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static akka.remote.ArteryControlFormats.CompressionTableAdvertisement parseFrom( + byte[] data, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.CompressionTableAdvertisement parseFrom(java.io.InputStream input) + throws java.io.IOException { + return PARSER.parseFrom(input); + } + public static akka.remote.ArteryControlFormats.CompressionTableAdvertisement parseFrom( + java.io.InputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return PARSER.parseFrom(input, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.CompressionTableAdvertisement parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return PARSER.parseDelimitedFrom(input); + } + public static akka.remote.ArteryControlFormats.CompressionTableAdvertisement parseDelimitedFrom( + java.io.InputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return PARSER.parseDelimitedFrom(input, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.CompressionTableAdvertisement parseFrom( + akka.protobuf.CodedInputStream input) + throws java.io.IOException { + return PARSER.parseFrom(input); + } + public static akka.remote.ArteryControlFormats.CompressionTableAdvertisement parseFrom( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return PARSER.parseFrom(input, extensionRegistry); + } + + public static Builder newBuilder() { return Builder.create(); } + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder(akka.remote.ArteryControlFormats.CompressionTableAdvertisement prototype) { + return newBuilder().mergeFrom(prototype); + } + public Builder toBuilder() { return newBuilder(this); } + + @java.lang.Override + protected Builder newBuilderForType( + akka.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code CompressionTableAdvertisement} + * + *
+     * CompressionProtocol.ActorRefCompressionAdvertisement
+     * CompressionProtocol.ClassManifestCompressionAdvertisement
+     * 
+ */ + public static final class Builder extends + akka.protobuf.GeneratedMessage.Builder + implements akka.remote.ArteryControlFormats.CompressionTableAdvertisementOrBuilder { + public static final akka.protobuf.Descriptors.Descriptor + getDescriptor() { + return akka.remote.ArteryControlFormats.internal_static_CompressionTableAdvertisement_descriptor; + } + + protected akka.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return akka.remote.ArteryControlFormats.internal_static_CompressionTableAdvertisement_fieldAccessorTable + .ensureFieldAccessorsInitialized( + akka.remote.ArteryControlFormats.CompressionTableAdvertisement.class, akka.remote.ArteryControlFormats.CompressionTableAdvertisement.Builder.class); + } + + // Construct using akka.remote.ArteryControlFormats.CompressionTableAdvertisement.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + akka.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (akka.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + getFromFieldBuilder(); + } + } + private static Builder create() { + return new Builder(); + } + + public Builder clear() { + super.clear(); + if (fromBuilder_ == null) { + from_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + } else { + fromBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000001); + tableVersion_ = 0; + bitField0_ = (bitField0_ & ~0x00000002); + keys_ = akka.protobuf.LazyStringArrayList.EMPTY; + bitField0_ = (bitField0_ & ~0x00000004); + values_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000008); + return this; + } + + public Builder clone() { + return create().mergeFrom(buildPartial()); + } + + public akka.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return akka.remote.ArteryControlFormats.internal_static_CompressionTableAdvertisement_descriptor; + } + + public akka.remote.ArteryControlFormats.CompressionTableAdvertisement getDefaultInstanceForType() { + return akka.remote.ArteryControlFormats.CompressionTableAdvertisement.getDefaultInstance(); + } + + public akka.remote.ArteryControlFormats.CompressionTableAdvertisement build() { + akka.remote.ArteryControlFormats.CompressionTableAdvertisement result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + public akka.remote.ArteryControlFormats.CompressionTableAdvertisement buildPartial() { + akka.remote.ArteryControlFormats.CompressionTableAdvertisement result = new akka.remote.ArteryControlFormats.CompressionTableAdvertisement(this); + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) == 0x00000001)) { + to_bitField0_ |= 0x00000001; + } + if (fromBuilder_ == null) { + result.from_ = from_; + } else { + result.from_ = fromBuilder_.build(); + } + if (((from_bitField0_ & 0x00000002) == 0x00000002)) { + to_bitField0_ |= 0x00000002; + } + result.tableVersion_ = tableVersion_; + if (((bitField0_ & 0x00000004) == 0x00000004)) { + keys_ = new akka.protobuf.UnmodifiableLazyStringList( + keys_); + bitField0_ = (bitField0_ & ~0x00000004); + } + result.keys_ = keys_; + if (((bitField0_ & 0x00000008) == 0x00000008)) { + values_ = java.util.Collections.unmodifiableList(values_); + bitField0_ = (bitField0_ & ~0x00000008); + } + result.values_ = values_; + result.bitField0_ = to_bitField0_; + onBuilt(); + return result; + } + + public Builder mergeFrom(akka.protobuf.Message other) { + if (other instanceof akka.remote.ArteryControlFormats.CompressionTableAdvertisement) { + return mergeFrom((akka.remote.ArteryControlFormats.CompressionTableAdvertisement)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(akka.remote.ArteryControlFormats.CompressionTableAdvertisement other) { + if (other == akka.remote.ArteryControlFormats.CompressionTableAdvertisement.getDefaultInstance()) return this; + if (other.hasFrom()) { + mergeFrom(other.getFrom()); + } + if (other.hasTableVersion()) { + setTableVersion(other.getTableVersion()); + } + if (!other.keys_.isEmpty()) { + if (keys_.isEmpty()) { + keys_ = other.keys_; + bitField0_ = (bitField0_ & ~0x00000004); + } else { + ensureKeysIsMutable(); + keys_.addAll(other.keys_); + } + onChanged(); + } + if (!other.values_.isEmpty()) { + if (values_.isEmpty()) { + values_ = other.values_; + bitField0_ = (bitField0_ & ~0x00000008); + } else { + ensureValuesIsMutable(); + values_.addAll(other.values_); + } + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + return this; + } + + public final boolean isInitialized() { + if (!hasFrom()) { + + return false; + } + if (!hasTableVersion()) { + + return false; + } + if (!getFrom().isInitialized()) { + + return false; + } + return true; + } + + public Builder mergeFrom( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + akka.remote.ArteryControlFormats.CompressionTableAdvertisement parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (akka.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (akka.remote.ArteryControlFormats.CompressionTableAdvertisement) e.getUnfinishedMessage(); + throw e; + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; + + // required .UniqueAddress from = 1; + private akka.remote.ArteryControlFormats.UniqueAddress from_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + private akka.protobuf.SingleFieldBuilder< + akka.remote.ArteryControlFormats.UniqueAddress, akka.remote.ArteryControlFormats.UniqueAddress.Builder, akka.remote.ArteryControlFormats.UniqueAddressOrBuilder> fromBuilder_; + /** + * required .UniqueAddress from = 1; + */ + public boolean hasFrom() { + return ((bitField0_ & 0x00000001) == 0x00000001); + } + /** + * required .UniqueAddress from = 1; + */ + public akka.remote.ArteryControlFormats.UniqueAddress getFrom() { + if (fromBuilder_ == null) { + return from_; + } else { + return fromBuilder_.getMessage(); + } + } + /** + * required .UniqueAddress from = 1; + */ + public Builder setFrom(akka.remote.ArteryControlFormats.UniqueAddress value) { + if (fromBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + from_ = value; + onChanged(); + } else { + fromBuilder_.setMessage(value); + } + bitField0_ |= 0x00000001; + return this; + } + /** + * required .UniqueAddress from = 1; + */ + public Builder setFrom( + akka.remote.ArteryControlFormats.UniqueAddress.Builder builderForValue) { + if (fromBuilder_ == null) { + from_ = builderForValue.build(); + onChanged(); + } else { + fromBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000001; + return this; + } + /** + * required .UniqueAddress from = 1; + */ + public Builder mergeFrom(akka.remote.ArteryControlFormats.UniqueAddress value) { + if (fromBuilder_ == null) { + if (((bitField0_ & 0x00000001) == 0x00000001) && + from_ != akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance()) { + from_ = + akka.remote.ArteryControlFormats.UniqueAddress.newBuilder(from_).mergeFrom(value).buildPartial(); + } else { + from_ = value; + } + onChanged(); + } else { + fromBuilder_.mergeFrom(value); + } + bitField0_ |= 0x00000001; + return this; + } + /** + * required .UniqueAddress from = 1; + */ + public Builder clearFrom() { + if (fromBuilder_ == null) { + from_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + onChanged(); + } else { + fromBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000001); + return this; + } + /** + * required .UniqueAddress from = 1; + */ + public akka.remote.ArteryControlFormats.UniqueAddress.Builder getFromBuilder() { + bitField0_ |= 0x00000001; + onChanged(); + return getFromFieldBuilder().getBuilder(); + } + /** + * required .UniqueAddress from = 1; + */ + public akka.remote.ArteryControlFormats.UniqueAddressOrBuilder getFromOrBuilder() { + if (fromBuilder_ != null) { + return fromBuilder_.getMessageOrBuilder(); + } else { + return from_; + } + } + /** + * required .UniqueAddress from = 1; + */ + private akka.protobuf.SingleFieldBuilder< + akka.remote.ArteryControlFormats.UniqueAddress, akka.remote.ArteryControlFormats.UniqueAddress.Builder, akka.remote.ArteryControlFormats.UniqueAddressOrBuilder> + getFromFieldBuilder() { + if (fromBuilder_ == null) { + fromBuilder_ = new akka.protobuf.SingleFieldBuilder< + akka.remote.ArteryControlFormats.UniqueAddress, akka.remote.ArteryControlFormats.UniqueAddress.Builder, akka.remote.ArteryControlFormats.UniqueAddressOrBuilder>( + from_, + getParentForChildren(), + isClean()); + from_ = null; + } + return fromBuilder_; + } + + // required uint32 tableVersion = 2; + private int tableVersion_ ; + /** + * required uint32 tableVersion = 2; + */ + public boolean hasTableVersion() { + return ((bitField0_ & 0x00000002) == 0x00000002); + } + /** + * required uint32 tableVersion = 2; + */ + public int getTableVersion() { + return tableVersion_; + } + /** + * required uint32 tableVersion = 2; + */ + public Builder setTableVersion(int value) { + bitField0_ |= 0x00000002; + tableVersion_ = value; + onChanged(); + return this; + } + /** + * required uint32 tableVersion = 2; + */ + public Builder clearTableVersion() { + bitField0_ = (bitField0_ & ~0x00000002); + tableVersion_ = 0; + onChanged(); + return this; + } + + // repeated string keys = 3; + private akka.protobuf.LazyStringList keys_ = akka.protobuf.LazyStringArrayList.EMPTY; + private void ensureKeysIsMutable() { + if (!((bitField0_ & 0x00000004) == 0x00000004)) { + keys_ = new akka.protobuf.LazyStringArrayList(keys_); + bitField0_ |= 0x00000004; + } + } + /** + * repeated string keys = 3; + * + *
+       * actual Map is represented by separate sequences of keys and values,
+       * relies on both sequences using the same order so that corresponding entries can be
+       * associated again when deserializing
+       * 
+ */ + public java.util.List + getKeysList() { + return java.util.Collections.unmodifiableList(keys_); + } + /** + * repeated string keys = 3; + * + *
+       * actual Map is represented by separate sequences of keys and values,
+       * relies on both sequences using the same order so that corresponding entries can be
+       * associated again when deserializing
+       * 
+ */ + public int getKeysCount() { + return keys_.size(); + } + /** + * repeated string keys = 3; + * + *
+       * actual Map is represented by separate sequences of keys and values,
+       * relies on both sequences using the same order so that corresponding entries can be
+       * associated again when deserializing
+       * 
+ */ + public java.lang.String getKeys(int index) { + return keys_.get(index); + } + /** + * repeated string keys = 3; + * + *
+       * actual Map is represented by separate sequences of keys and values,
+       * relies on both sequences using the same order so that corresponding entries can be
+       * associated again when deserializing
+       * 
+ */ + public akka.protobuf.ByteString + getKeysBytes(int index) { + return keys_.getByteString(index); + } + /** + * repeated string keys = 3; + * + *
+       * actual Map is represented by separate sequences of keys and values,
+       * relies on both sequences using the same order so that corresponding entries can be
+       * associated again when deserializing
+       * 
+ */ + public Builder setKeys( + int index, java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureKeysIsMutable(); + keys_.set(index, value); + onChanged(); + return this; + } + /** + * repeated string keys = 3; + * + *
+       * actual Map is represented by separate sequences of keys and values,
+       * relies on both sequences using the same order so that corresponding entries can be
+       * associated again when deserializing
+       * 
+ */ + public Builder addKeys( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureKeysIsMutable(); + keys_.add(value); + onChanged(); + return this; + } + /** + * repeated string keys = 3; + * + *
+       * actual Map is represented by separate sequences of keys and values,
+       * relies on both sequences using the same order so that corresponding entries can be
+       * associated again when deserializing
+       * 
+ */ + public Builder addAllKeys( + java.lang.Iterable values) { + ensureKeysIsMutable(); + super.addAll(values, keys_); + onChanged(); + return this; + } + /** + * repeated string keys = 3; + * + *
+       * actual Map is represented by separate sequences of keys and values,
+       * relies on both sequences using the same order so that corresponding entries can be
+       * associated again when deserializing
+       * 
+ */ + public Builder clearKeys() { + keys_ = akka.protobuf.LazyStringArrayList.EMPTY; + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + /** + * repeated string keys = 3; + * + *
+       * actual Map is represented by separate sequences of keys and values,
+       * relies on both sequences using the same order so that corresponding entries can be
+       * associated again when deserializing
+       * 
+ */ + public Builder addKeysBytes( + akka.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + ensureKeysIsMutable(); + keys_.add(value); + onChanged(); + return this; + } + + // repeated uint32 values = 4; + private java.util.List values_ = java.util.Collections.emptyList(); + private void ensureValuesIsMutable() { + if (!((bitField0_ & 0x00000008) == 0x00000008)) { + values_ = new java.util.ArrayList(values_); + bitField0_ |= 0x00000008; + } + } + /** + * repeated uint32 values = 4; + */ + public java.util.List + getValuesList() { + return java.util.Collections.unmodifiableList(values_); + } + /** + * repeated uint32 values = 4; + */ + public int getValuesCount() { + return values_.size(); + } + /** + * repeated uint32 values = 4; + */ + public int getValues(int index) { + return values_.get(index); + } + /** + * repeated uint32 values = 4; + */ + public Builder setValues( + int index, int value) { + ensureValuesIsMutable(); + values_.set(index, value); + onChanged(); + return this; + } + /** + * repeated uint32 values = 4; + */ + public Builder addValues(int value) { + ensureValuesIsMutable(); + values_.add(value); + onChanged(); + return this; + } + /** + * repeated uint32 values = 4; + */ + public Builder addAllValues( + java.lang.Iterable values) { + ensureValuesIsMutable(); + super.addAll(values, values_); + onChanged(); + return this; + } + /** + * repeated uint32 values = 4; + */ + public Builder clearValues() { + values_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:CompressionTableAdvertisement) + } + + static { + defaultInstance = new CompressionTableAdvertisement(true); + defaultInstance.initFields(); + } + + // @@protoc_insertion_point(class_scope:CompressionTableAdvertisement) + } + + public interface CompressionTableAdvertisementAckOrBuilder + extends akka.protobuf.MessageOrBuilder { + + // required .UniqueAddress from = 1; + /** + * required .UniqueAddress from = 1; + */ + boolean hasFrom(); + /** + * required .UniqueAddress from = 1; + */ + akka.remote.ArteryControlFormats.UniqueAddress getFrom(); + /** + * required .UniqueAddress from = 1; + */ + akka.remote.ArteryControlFormats.UniqueAddressOrBuilder getFromOrBuilder(); + + // required uint32 version = 2; + /** + * required uint32 version = 2; + */ + boolean hasVersion(); + /** + * required uint32 version = 2; + */ + int getVersion(); + } + /** + * Protobuf type {@code CompressionTableAdvertisementAck} + * + *
+   * CompressionProtocol.ActorRefCompressionAdvertisementAck
+   * CompressionProtocol.ClassManifestCompressionAdvertisementAck
+   * 
+ */ + public static final class CompressionTableAdvertisementAck extends + akka.protobuf.GeneratedMessage + implements CompressionTableAdvertisementAckOrBuilder { + // Use CompressionTableAdvertisementAck.newBuilder() to construct. + private CompressionTableAdvertisementAck(akka.protobuf.GeneratedMessage.Builder builder) { + super(builder); + this.unknownFields = builder.getUnknownFields(); + } + private CompressionTableAdvertisementAck(boolean noInit) { this.unknownFields = akka.protobuf.UnknownFieldSet.getDefaultInstance(); } + + private static final CompressionTableAdvertisementAck defaultInstance; + public static CompressionTableAdvertisementAck getDefaultInstance() { + return defaultInstance; + } + + public CompressionTableAdvertisementAck getDefaultInstanceForType() { + return defaultInstance; + } + + private final akka.protobuf.UnknownFieldSet unknownFields; + @java.lang.Override + public final akka.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private CompressionTableAdvertisementAck( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + initFields(); + int mutable_bitField0_ = 0; + akka.protobuf.UnknownFieldSet.Builder unknownFields = + akka.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: { + if (!parseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + done = true; + } + break; + } + case 10: { + akka.remote.ArteryControlFormats.UniqueAddress.Builder subBuilder = null; + if (((bitField0_ & 0x00000001) == 0x00000001)) { + subBuilder = from_.toBuilder(); + } + from_ = input.readMessage(akka.remote.ArteryControlFormats.UniqueAddress.PARSER, extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(from_); + from_ = subBuilder.buildPartial(); + } + bitField0_ |= 0x00000001; + break; + } + case 16: { + bitField0_ |= 0x00000002; + version_ = input.readUInt32(); + break; + } + } + } + } catch (akka.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new akka.protobuf.InvalidProtocolBufferException( + e.getMessage()).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final akka.protobuf.Descriptors.Descriptor + getDescriptor() { + return akka.remote.ArteryControlFormats.internal_static_CompressionTableAdvertisementAck_descriptor; + } + + protected akka.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return akka.remote.ArteryControlFormats.internal_static_CompressionTableAdvertisementAck_fieldAccessorTable + .ensureFieldAccessorsInitialized( + akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck.class, akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck.Builder.class); + } + + public static akka.protobuf.Parser PARSER = + new akka.protobuf.AbstractParser() { + public CompressionTableAdvertisementAck parsePartialFrom( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + return new CompressionTableAdvertisementAck(input, extensionRegistry); + } + }; + + @java.lang.Override + public akka.protobuf.Parser getParserForType() { + return PARSER; + } + + private int bitField0_; + // required .UniqueAddress from = 1; + public static final int FROM_FIELD_NUMBER = 1; + private akka.remote.ArteryControlFormats.UniqueAddress from_; + /** + * required .UniqueAddress from = 1; + */ + public boolean hasFrom() { + return ((bitField0_ & 0x00000001) == 0x00000001); + } + /** + * required .UniqueAddress from = 1; + */ + public akka.remote.ArteryControlFormats.UniqueAddress getFrom() { + return from_; + } + /** + * required .UniqueAddress from = 1; + */ + public akka.remote.ArteryControlFormats.UniqueAddressOrBuilder getFromOrBuilder() { + return from_; + } + + // required uint32 version = 2; + public static final int VERSION_FIELD_NUMBER = 2; + private int version_; + /** + * required uint32 version = 2; + */ + public boolean hasVersion() { + return ((bitField0_ & 0x00000002) == 0x00000002); + } + /** + * required uint32 version = 2; + */ + public int getVersion() { + return version_; + } + + private void initFields() { + from_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + version_ = 0; + } + private byte memoizedIsInitialized = -1; + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized != -1) return isInitialized == 1; + + if (!hasFrom()) { + memoizedIsInitialized = 0; + return false; + } + if (!hasVersion()) { + memoizedIsInitialized = 0; + return false; + } + if (!getFrom().isInitialized()) { + memoizedIsInitialized = 0; + return false; + } + memoizedIsInitialized = 1; + return true; + } + + public void writeTo(akka.protobuf.CodedOutputStream output) + throws java.io.IOException { + getSerializedSize(); + if (((bitField0_ & 0x00000001) == 0x00000001)) { + output.writeMessage(1, from_); + } + if (((bitField0_ & 0x00000002) == 0x00000002)) { + output.writeUInt32(2, version_); + } + getUnknownFields().writeTo(output); + } + + private int memoizedSerializedSize = -1; + public int getSerializedSize() { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (((bitField0_ & 0x00000001) == 0x00000001)) { + size += akka.protobuf.CodedOutputStream + .computeMessageSize(1, from_); + } + if (((bitField0_ & 0x00000002) == 0x00000002)) { + size += akka.protobuf.CodedOutputStream + .computeUInt32Size(2, version_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSerializedSize = size; + return size; + } + + private static final long serialVersionUID = 0L; + @java.lang.Override + protected java.lang.Object writeReplace() + throws java.io.ObjectStreamException { + return super.writeReplace(); + } + + public static akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck parseFrom( + akka.protobuf.ByteString data) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck parseFrom( + akka.protobuf.ByteString data, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck parseFrom(byte[] data) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck parseFrom( + byte[] data, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck parseFrom(java.io.InputStream input) + throws java.io.IOException { + return PARSER.parseFrom(input); + } + public static akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck parseFrom( + java.io.InputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return PARSER.parseFrom(input, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return PARSER.parseDelimitedFrom(input); + } + public static akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck parseDelimitedFrom( + java.io.InputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return PARSER.parseDelimitedFrom(input, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck parseFrom( + akka.protobuf.CodedInputStream input) + throws java.io.IOException { + return PARSER.parseFrom(input); + } + public static akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck parseFrom( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return PARSER.parseFrom(input, extensionRegistry); + } + + public static Builder newBuilder() { return Builder.create(); } + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder(akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck prototype) { + return newBuilder().mergeFrom(prototype); + } + public Builder toBuilder() { return newBuilder(this); } + + @java.lang.Override + protected Builder newBuilderForType( + akka.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code CompressionTableAdvertisementAck} + * + *
+     * CompressionProtocol.ActorRefCompressionAdvertisementAck
+     * CompressionProtocol.ClassManifestCompressionAdvertisementAck
+     * 
+ */ + public static final class Builder extends + akka.protobuf.GeneratedMessage.Builder + implements akka.remote.ArteryControlFormats.CompressionTableAdvertisementAckOrBuilder { + public static final akka.protobuf.Descriptors.Descriptor + getDescriptor() { + return akka.remote.ArteryControlFormats.internal_static_CompressionTableAdvertisementAck_descriptor; + } + + protected akka.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return akka.remote.ArteryControlFormats.internal_static_CompressionTableAdvertisementAck_fieldAccessorTable + .ensureFieldAccessorsInitialized( + akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck.class, akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck.Builder.class); + } + + // Construct using akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + akka.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (akka.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + getFromFieldBuilder(); + } + } + private static Builder create() { + return new Builder(); + } + + public Builder clear() { + super.clear(); + if (fromBuilder_ == null) { + from_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + } else { + fromBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000001); + version_ = 0; + bitField0_ = (bitField0_ & ~0x00000002); + return this; + } + + public Builder clone() { + return create().mergeFrom(buildPartial()); + } + + public akka.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return akka.remote.ArteryControlFormats.internal_static_CompressionTableAdvertisementAck_descriptor; + } + + public akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck getDefaultInstanceForType() { + return akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck.getDefaultInstance(); + } + + public akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck build() { + akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + public akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck buildPartial() { + akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck result = new akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck(this); + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) == 0x00000001)) { + to_bitField0_ |= 0x00000001; + } + if (fromBuilder_ == null) { + result.from_ = from_; + } else { + result.from_ = fromBuilder_.build(); + } + if (((from_bitField0_ & 0x00000002) == 0x00000002)) { + to_bitField0_ |= 0x00000002; + } + result.version_ = version_; + result.bitField0_ = to_bitField0_; + onBuilt(); + return result; + } + + public Builder mergeFrom(akka.protobuf.Message other) { + if (other instanceof akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck) { + return mergeFrom((akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck other) { + if (other == akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck.getDefaultInstance()) return this; + if (other.hasFrom()) { + mergeFrom(other.getFrom()); + } + if (other.hasVersion()) { + setVersion(other.getVersion()); + } + this.mergeUnknownFields(other.getUnknownFields()); + return this; + } + + public final boolean isInitialized() { + if (!hasFrom()) { + + return false; + } + if (!hasVersion()) { + + return false; + } + if (!getFrom().isInitialized()) { + + return false; + } + return true; + } + + public Builder mergeFrom( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (akka.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (akka.remote.ArteryControlFormats.CompressionTableAdvertisementAck) e.getUnfinishedMessage(); + throw e; + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; + + // required .UniqueAddress from = 1; + private akka.remote.ArteryControlFormats.UniqueAddress from_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + private akka.protobuf.SingleFieldBuilder< + akka.remote.ArteryControlFormats.UniqueAddress, akka.remote.ArteryControlFormats.UniqueAddress.Builder, akka.remote.ArteryControlFormats.UniqueAddressOrBuilder> fromBuilder_; + /** + * required .UniqueAddress from = 1; + */ + public boolean hasFrom() { + return ((bitField0_ & 0x00000001) == 0x00000001); + } + /** + * required .UniqueAddress from = 1; + */ + public akka.remote.ArteryControlFormats.UniqueAddress getFrom() { + if (fromBuilder_ == null) { + return from_; + } else { + return fromBuilder_.getMessage(); + } + } + /** + * required .UniqueAddress from = 1; + */ + public Builder setFrom(akka.remote.ArteryControlFormats.UniqueAddress value) { + if (fromBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + from_ = value; + onChanged(); + } else { + fromBuilder_.setMessage(value); + } + bitField0_ |= 0x00000001; + return this; + } + /** + * required .UniqueAddress from = 1; + */ + public Builder setFrom( + akka.remote.ArteryControlFormats.UniqueAddress.Builder builderForValue) { + if (fromBuilder_ == null) { + from_ = builderForValue.build(); + onChanged(); + } else { + fromBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000001; + return this; + } + /** + * required .UniqueAddress from = 1; + */ + public Builder mergeFrom(akka.remote.ArteryControlFormats.UniqueAddress value) { + if (fromBuilder_ == null) { + if (((bitField0_ & 0x00000001) == 0x00000001) && + from_ != akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance()) { + from_ = + akka.remote.ArteryControlFormats.UniqueAddress.newBuilder(from_).mergeFrom(value).buildPartial(); + } else { + from_ = value; + } + onChanged(); + } else { + fromBuilder_.mergeFrom(value); + } + bitField0_ |= 0x00000001; + return this; + } + /** + * required .UniqueAddress from = 1; + */ + public Builder clearFrom() { + if (fromBuilder_ == null) { + from_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + onChanged(); + } else { + fromBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000001); + return this; + } + /** + * required .UniqueAddress from = 1; + */ + public akka.remote.ArteryControlFormats.UniqueAddress.Builder getFromBuilder() { + bitField0_ |= 0x00000001; + onChanged(); + return getFromFieldBuilder().getBuilder(); + } + /** + * required .UniqueAddress from = 1; + */ + public akka.remote.ArteryControlFormats.UniqueAddressOrBuilder getFromOrBuilder() { + if (fromBuilder_ != null) { + return fromBuilder_.getMessageOrBuilder(); + } else { + return from_; + } + } + /** + * required .UniqueAddress from = 1; + */ + private akka.protobuf.SingleFieldBuilder< + akka.remote.ArteryControlFormats.UniqueAddress, akka.remote.ArteryControlFormats.UniqueAddress.Builder, akka.remote.ArteryControlFormats.UniqueAddressOrBuilder> + getFromFieldBuilder() { + if (fromBuilder_ == null) { + fromBuilder_ = new akka.protobuf.SingleFieldBuilder< + akka.remote.ArteryControlFormats.UniqueAddress, akka.remote.ArteryControlFormats.UniqueAddress.Builder, akka.remote.ArteryControlFormats.UniqueAddressOrBuilder>( + from_, + getParentForChildren(), + isClean()); + from_ = null; + } + return fromBuilder_; + } + + // required uint32 version = 2; + private int version_ ; + /** + * required uint32 version = 2; + */ + public boolean hasVersion() { + return ((bitField0_ & 0x00000002) == 0x00000002); + } + /** + * required uint32 version = 2; + */ + public int getVersion() { + return version_; + } + /** + * required uint32 version = 2; + */ + public Builder setVersion(int value) { + bitField0_ |= 0x00000002; + version_ = value; + onChanged(); + return this; + } + /** + * required uint32 version = 2; + */ + public Builder clearVersion() { + bitField0_ = (bitField0_ & ~0x00000002); + version_ = 0; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:CompressionTableAdvertisementAck) + } + + static { + defaultInstance = new CompressionTableAdvertisementAck(true); + defaultInstance.initFields(); + } + + // @@protoc_insertion_point(class_scope:CompressionTableAdvertisementAck) + } + + public interface SystemMessageEnvelopeOrBuilder + extends akka.protobuf.MessageOrBuilder { + + // required bytes message = 1; + /** + * required bytes message = 1; + */ + boolean hasMessage(); + /** + * required bytes message = 1; + */ + akka.protobuf.ByteString getMessage(); + + // required int32 serializerId = 2; + /** + * required int32 serializerId = 2; + */ + boolean hasSerializerId(); + /** + * required int32 serializerId = 2; + */ + int getSerializerId(); + + // optional bytes messageManifest = 3; + /** + * optional bytes messageManifest = 3; + */ + boolean hasMessageManifest(); + /** + * optional bytes messageManifest = 3; + */ + akka.protobuf.ByteString getMessageManifest(); + + // required uint64 seqNo = 4; + /** + * required uint64 seqNo = 4; + */ + boolean hasSeqNo(); + /** + * required uint64 seqNo = 4; + */ + long getSeqNo(); + + // required .UniqueAddress ackReplyTo = 5; + /** + * required .UniqueAddress ackReplyTo = 5; + */ + boolean hasAckReplyTo(); + /** + * required .UniqueAddress ackReplyTo = 5; + */ + akka.remote.ArteryControlFormats.UniqueAddress getAckReplyTo(); + /** + * required .UniqueAddress ackReplyTo = 5; + */ + akka.remote.ArteryControlFormats.UniqueAddressOrBuilder getAckReplyToOrBuilder(); + } + /** + * Protobuf type {@code SystemMessageEnvelope} + * + *
+   * SystemMessageDelivery.SystemMessageEnvelope
+   * 
+ */ + public static final class SystemMessageEnvelope extends + akka.protobuf.GeneratedMessage + implements SystemMessageEnvelopeOrBuilder { + // Use SystemMessageEnvelope.newBuilder() to construct. + private SystemMessageEnvelope(akka.protobuf.GeneratedMessage.Builder builder) { + super(builder); + this.unknownFields = builder.getUnknownFields(); + } + private SystemMessageEnvelope(boolean noInit) { this.unknownFields = akka.protobuf.UnknownFieldSet.getDefaultInstance(); } + + private static final SystemMessageEnvelope defaultInstance; + public static SystemMessageEnvelope getDefaultInstance() { + return defaultInstance; + } + + public SystemMessageEnvelope getDefaultInstanceForType() { + return defaultInstance; + } + + private final akka.protobuf.UnknownFieldSet unknownFields; + @java.lang.Override + public final akka.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private SystemMessageEnvelope( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + initFields(); + int mutable_bitField0_ = 0; + akka.protobuf.UnknownFieldSet.Builder unknownFields = + akka.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: { + if (!parseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + done = true; + } + break; + } + case 10: { + bitField0_ |= 0x00000001; + message_ = input.readBytes(); + break; + } + case 16: { + bitField0_ |= 0x00000002; + serializerId_ = input.readInt32(); + break; + } + case 26: { + bitField0_ |= 0x00000004; + messageManifest_ = input.readBytes(); + break; + } + case 32: { + bitField0_ |= 0x00000008; + seqNo_ = input.readUInt64(); + break; + } + case 42: { + akka.remote.ArteryControlFormats.UniqueAddress.Builder subBuilder = null; + if (((bitField0_ & 0x00000010) == 0x00000010)) { + subBuilder = ackReplyTo_.toBuilder(); + } + ackReplyTo_ = input.readMessage(akka.remote.ArteryControlFormats.UniqueAddress.PARSER, extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(ackReplyTo_); + ackReplyTo_ = subBuilder.buildPartial(); + } + bitField0_ |= 0x00000010; + break; + } + } + } + } catch (akka.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new akka.protobuf.InvalidProtocolBufferException( + e.getMessage()).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final akka.protobuf.Descriptors.Descriptor + getDescriptor() { + return akka.remote.ArteryControlFormats.internal_static_SystemMessageEnvelope_descriptor; + } + + protected akka.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return akka.remote.ArteryControlFormats.internal_static_SystemMessageEnvelope_fieldAccessorTable + .ensureFieldAccessorsInitialized( + akka.remote.ArteryControlFormats.SystemMessageEnvelope.class, akka.remote.ArteryControlFormats.SystemMessageEnvelope.Builder.class); + } + + public static akka.protobuf.Parser PARSER = + new akka.protobuf.AbstractParser() { + public SystemMessageEnvelope parsePartialFrom( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + return new SystemMessageEnvelope(input, extensionRegistry); + } + }; + + @java.lang.Override + public akka.protobuf.Parser getParserForType() { + return PARSER; + } + + private int bitField0_; + // required bytes message = 1; + public static final int MESSAGE_FIELD_NUMBER = 1; + private akka.protobuf.ByteString message_; + /** + * required bytes message = 1; + */ + public boolean hasMessage() { + return ((bitField0_ & 0x00000001) == 0x00000001); + } + /** + * required bytes message = 1; + */ + public akka.protobuf.ByteString getMessage() { + return message_; + } + + // required int32 serializerId = 2; + public static final int SERIALIZERID_FIELD_NUMBER = 2; + private int serializerId_; + /** + * required int32 serializerId = 2; + */ + public boolean hasSerializerId() { + return ((bitField0_ & 0x00000002) == 0x00000002); + } + /** + * required int32 serializerId = 2; + */ + public int getSerializerId() { + return serializerId_; + } + + // optional bytes messageManifest = 3; + public static final int MESSAGEMANIFEST_FIELD_NUMBER = 3; + private akka.protobuf.ByteString messageManifest_; + /** + * optional bytes messageManifest = 3; + */ + public boolean hasMessageManifest() { + return ((bitField0_ & 0x00000004) == 0x00000004); + } + /** + * optional bytes messageManifest = 3; + */ + public akka.protobuf.ByteString getMessageManifest() { + return messageManifest_; + } + + // required uint64 seqNo = 4; + public static final int SEQNO_FIELD_NUMBER = 4; + private long seqNo_; + /** + * required uint64 seqNo = 4; + */ + public boolean hasSeqNo() { + return ((bitField0_ & 0x00000008) == 0x00000008); + } + /** + * required uint64 seqNo = 4; + */ + public long getSeqNo() { + return seqNo_; + } + + // required .UniqueAddress ackReplyTo = 5; + public static final int ACKREPLYTO_FIELD_NUMBER = 5; + private akka.remote.ArteryControlFormats.UniqueAddress ackReplyTo_; + /** + * required .UniqueAddress ackReplyTo = 5; + */ + public boolean hasAckReplyTo() { + return ((bitField0_ & 0x00000010) == 0x00000010); + } + /** + * required .UniqueAddress ackReplyTo = 5; + */ + public akka.remote.ArteryControlFormats.UniqueAddress getAckReplyTo() { + return ackReplyTo_; + } + /** + * required .UniqueAddress ackReplyTo = 5; + */ + public akka.remote.ArteryControlFormats.UniqueAddressOrBuilder getAckReplyToOrBuilder() { + return ackReplyTo_; + } + + private void initFields() { + message_ = akka.protobuf.ByteString.EMPTY; + serializerId_ = 0; + messageManifest_ = akka.protobuf.ByteString.EMPTY; + seqNo_ = 0L; + ackReplyTo_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + } + private byte memoizedIsInitialized = -1; + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized != -1) return isInitialized == 1; + + if (!hasMessage()) { + memoizedIsInitialized = 0; + return false; + } + if (!hasSerializerId()) { + memoizedIsInitialized = 0; + return false; + } + if (!hasSeqNo()) { + memoizedIsInitialized = 0; + return false; + } + if (!hasAckReplyTo()) { + memoizedIsInitialized = 0; + return false; + } + if (!getAckReplyTo().isInitialized()) { + memoizedIsInitialized = 0; + return false; + } + memoizedIsInitialized = 1; + return true; + } + + public void writeTo(akka.protobuf.CodedOutputStream output) + throws java.io.IOException { + getSerializedSize(); + if (((bitField0_ & 0x00000001) == 0x00000001)) { + output.writeBytes(1, message_); + } + if (((bitField0_ & 0x00000002) == 0x00000002)) { + output.writeInt32(2, serializerId_); + } + if (((bitField0_ & 0x00000004) == 0x00000004)) { + output.writeBytes(3, messageManifest_); + } + if (((bitField0_ & 0x00000008) == 0x00000008)) { + output.writeUInt64(4, seqNo_); + } + if (((bitField0_ & 0x00000010) == 0x00000010)) { + output.writeMessage(5, ackReplyTo_); + } + getUnknownFields().writeTo(output); + } + + private int memoizedSerializedSize = -1; + public int getSerializedSize() { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (((bitField0_ & 0x00000001) == 0x00000001)) { + size += akka.protobuf.CodedOutputStream + .computeBytesSize(1, message_); + } + if (((bitField0_ & 0x00000002) == 0x00000002)) { + size += akka.protobuf.CodedOutputStream + .computeInt32Size(2, serializerId_); + } + if (((bitField0_ & 0x00000004) == 0x00000004)) { + size += akka.protobuf.CodedOutputStream + .computeBytesSize(3, messageManifest_); + } + if (((bitField0_ & 0x00000008) == 0x00000008)) { + size += akka.protobuf.CodedOutputStream + .computeUInt64Size(4, seqNo_); + } + if (((bitField0_ & 0x00000010) == 0x00000010)) { + size += akka.protobuf.CodedOutputStream + .computeMessageSize(5, ackReplyTo_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSerializedSize = size; + return size; + } + + private static final long serialVersionUID = 0L; + @java.lang.Override + protected java.lang.Object writeReplace() + throws java.io.ObjectStreamException { + return super.writeReplace(); + } + + public static akka.remote.ArteryControlFormats.SystemMessageEnvelope parseFrom( + akka.protobuf.ByteString data) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static akka.remote.ArteryControlFormats.SystemMessageEnvelope parseFrom( + akka.protobuf.ByteString data, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.SystemMessageEnvelope parseFrom(byte[] data) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static akka.remote.ArteryControlFormats.SystemMessageEnvelope parseFrom( + byte[] data, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.SystemMessageEnvelope parseFrom(java.io.InputStream input) + throws java.io.IOException { + return PARSER.parseFrom(input); + } + public static akka.remote.ArteryControlFormats.SystemMessageEnvelope parseFrom( + java.io.InputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return PARSER.parseFrom(input, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.SystemMessageEnvelope parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return PARSER.parseDelimitedFrom(input); + } + public static akka.remote.ArteryControlFormats.SystemMessageEnvelope parseDelimitedFrom( + java.io.InputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return PARSER.parseDelimitedFrom(input, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.SystemMessageEnvelope parseFrom( + akka.protobuf.CodedInputStream input) + throws java.io.IOException { + return PARSER.parseFrom(input); + } + public static akka.remote.ArteryControlFormats.SystemMessageEnvelope parseFrom( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return PARSER.parseFrom(input, extensionRegistry); + } + + public static Builder newBuilder() { return Builder.create(); } + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder(akka.remote.ArteryControlFormats.SystemMessageEnvelope prototype) { + return newBuilder().mergeFrom(prototype); + } + public Builder toBuilder() { return newBuilder(this); } + + @java.lang.Override + protected Builder newBuilderForType( + akka.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code SystemMessageEnvelope} + * + *
+     * SystemMessageDelivery.SystemMessageEnvelope
+     * 
+ */ + public static final class Builder extends + akka.protobuf.GeneratedMessage.Builder + implements akka.remote.ArteryControlFormats.SystemMessageEnvelopeOrBuilder { + public static final akka.protobuf.Descriptors.Descriptor + getDescriptor() { + return akka.remote.ArteryControlFormats.internal_static_SystemMessageEnvelope_descriptor; + } + + protected akka.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return akka.remote.ArteryControlFormats.internal_static_SystemMessageEnvelope_fieldAccessorTable + .ensureFieldAccessorsInitialized( + akka.remote.ArteryControlFormats.SystemMessageEnvelope.class, akka.remote.ArteryControlFormats.SystemMessageEnvelope.Builder.class); + } + + // Construct using akka.remote.ArteryControlFormats.SystemMessageEnvelope.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + akka.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (akka.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + getAckReplyToFieldBuilder(); + } + } + private static Builder create() { + return new Builder(); + } + + public Builder clear() { + super.clear(); + message_ = akka.protobuf.ByteString.EMPTY; + bitField0_ = (bitField0_ & ~0x00000001); + serializerId_ = 0; + bitField0_ = (bitField0_ & ~0x00000002); + messageManifest_ = akka.protobuf.ByteString.EMPTY; + bitField0_ = (bitField0_ & ~0x00000004); + seqNo_ = 0L; + bitField0_ = (bitField0_ & ~0x00000008); + if (ackReplyToBuilder_ == null) { + ackReplyTo_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + } else { + ackReplyToBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000010); + return this; + } + + public Builder clone() { + return create().mergeFrom(buildPartial()); + } + + public akka.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return akka.remote.ArteryControlFormats.internal_static_SystemMessageEnvelope_descriptor; + } + + public akka.remote.ArteryControlFormats.SystemMessageEnvelope getDefaultInstanceForType() { + return akka.remote.ArteryControlFormats.SystemMessageEnvelope.getDefaultInstance(); + } + + public akka.remote.ArteryControlFormats.SystemMessageEnvelope build() { + akka.remote.ArteryControlFormats.SystemMessageEnvelope result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + public akka.remote.ArteryControlFormats.SystemMessageEnvelope buildPartial() { + akka.remote.ArteryControlFormats.SystemMessageEnvelope result = new akka.remote.ArteryControlFormats.SystemMessageEnvelope(this); + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) == 0x00000001)) { + to_bitField0_ |= 0x00000001; + } + result.message_ = message_; + if (((from_bitField0_ & 0x00000002) == 0x00000002)) { + to_bitField0_ |= 0x00000002; + } + result.serializerId_ = serializerId_; + if (((from_bitField0_ & 0x00000004) == 0x00000004)) { + to_bitField0_ |= 0x00000004; + } + result.messageManifest_ = messageManifest_; + if (((from_bitField0_ & 0x00000008) == 0x00000008)) { + to_bitField0_ |= 0x00000008; + } + result.seqNo_ = seqNo_; + if (((from_bitField0_ & 0x00000010) == 0x00000010)) { + to_bitField0_ |= 0x00000010; + } + if (ackReplyToBuilder_ == null) { + result.ackReplyTo_ = ackReplyTo_; + } else { + result.ackReplyTo_ = ackReplyToBuilder_.build(); + } + result.bitField0_ = to_bitField0_; + onBuilt(); + return result; + } + + public Builder mergeFrom(akka.protobuf.Message other) { + if (other instanceof akka.remote.ArteryControlFormats.SystemMessageEnvelope) { + return mergeFrom((akka.remote.ArteryControlFormats.SystemMessageEnvelope)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(akka.remote.ArteryControlFormats.SystemMessageEnvelope other) { + if (other == akka.remote.ArteryControlFormats.SystemMessageEnvelope.getDefaultInstance()) return this; + if (other.hasMessage()) { + setMessage(other.getMessage()); + } + if (other.hasSerializerId()) { + setSerializerId(other.getSerializerId()); + } + if (other.hasMessageManifest()) { + setMessageManifest(other.getMessageManifest()); + } + if (other.hasSeqNo()) { + setSeqNo(other.getSeqNo()); + } + if (other.hasAckReplyTo()) { + mergeAckReplyTo(other.getAckReplyTo()); + } + this.mergeUnknownFields(other.getUnknownFields()); + return this; + } + + public final boolean isInitialized() { + if (!hasMessage()) { + + return false; + } + if (!hasSerializerId()) { + + return false; + } + if (!hasSeqNo()) { + + return false; + } + if (!hasAckReplyTo()) { + + return false; + } + if (!getAckReplyTo().isInitialized()) { + + return false; + } + return true; + } + + public Builder mergeFrom( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + akka.remote.ArteryControlFormats.SystemMessageEnvelope parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (akka.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (akka.remote.ArteryControlFormats.SystemMessageEnvelope) e.getUnfinishedMessage(); + throw e; + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; + + // required bytes message = 1; + private akka.protobuf.ByteString message_ = akka.protobuf.ByteString.EMPTY; + /** + * required bytes message = 1; + */ + public boolean hasMessage() { + return ((bitField0_ & 0x00000001) == 0x00000001); + } + /** + * required bytes message = 1; + */ + public akka.protobuf.ByteString getMessage() { + return message_; + } + /** + * required bytes message = 1; + */ + public Builder setMessage(akka.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000001; + message_ = value; + onChanged(); + return this; + } + /** + * required bytes message = 1; + */ + public Builder clearMessage() { + bitField0_ = (bitField0_ & ~0x00000001); + message_ = getDefaultInstance().getMessage(); + onChanged(); + return this; + } + + // required int32 serializerId = 2; + private int serializerId_ ; + /** + * required int32 serializerId = 2; + */ + public boolean hasSerializerId() { + return ((bitField0_ & 0x00000002) == 0x00000002); + } + /** + * required int32 serializerId = 2; + */ + public int getSerializerId() { + return serializerId_; + } + /** + * required int32 serializerId = 2; + */ + public Builder setSerializerId(int value) { + bitField0_ |= 0x00000002; + serializerId_ = value; + onChanged(); + return this; + } + /** + * required int32 serializerId = 2; + */ + public Builder clearSerializerId() { + bitField0_ = (bitField0_ & ~0x00000002); + serializerId_ = 0; + onChanged(); + return this; + } + + // optional bytes messageManifest = 3; + private akka.protobuf.ByteString messageManifest_ = akka.protobuf.ByteString.EMPTY; + /** + * optional bytes messageManifest = 3; + */ + public boolean hasMessageManifest() { + return ((bitField0_ & 0x00000004) == 0x00000004); + } + /** + * optional bytes messageManifest = 3; + */ + public akka.protobuf.ByteString getMessageManifest() { + return messageManifest_; + } + /** + * optional bytes messageManifest = 3; + */ + public Builder setMessageManifest(akka.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000004; + messageManifest_ = value; + onChanged(); + return this; + } + /** + * optional bytes messageManifest = 3; + */ + public Builder clearMessageManifest() { + bitField0_ = (bitField0_ & ~0x00000004); + messageManifest_ = getDefaultInstance().getMessageManifest(); + onChanged(); + return this; + } + + // required uint64 seqNo = 4; + private long seqNo_ ; + /** + * required uint64 seqNo = 4; + */ + public boolean hasSeqNo() { + return ((bitField0_ & 0x00000008) == 0x00000008); + } + /** + * required uint64 seqNo = 4; + */ + public long getSeqNo() { + return seqNo_; + } + /** + * required uint64 seqNo = 4; + */ + public Builder setSeqNo(long value) { + bitField0_ |= 0x00000008; + seqNo_ = value; + onChanged(); + return this; + } + /** + * required uint64 seqNo = 4; + */ + public Builder clearSeqNo() { + bitField0_ = (bitField0_ & ~0x00000008); + seqNo_ = 0L; + onChanged(); + return this; + } + + // required .UniqueAddress ackReplyTo = 5; + private akka.remote.ArteryControlFormats.UniqueAddress ackReplyTo_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + private akka.protobuf.SingleFieldBuilder< + akka.remote.ArteryControlFormats.UniqueAddress, akka.remote.ArteryControlFormats.UniqueAddress.Builder, akka.remote.ArteryControlFormats.UniqueAddressOrBuilder> ackReplyToBuilder_; + /** + * required .UniqueAddress ackReplyTo = 5; + */ + public boolean hasAckReplyTo() { + return ((bitField0_ & 0x00000010) == 0x00000010); + } + /** + * required .UniqueAddress ackReplyTo = 5; + */ + public akka.remote.ArteryControlFormats.UniqueAddress getAckReplyTo() { + if (ackReplyToBuilder_ == null) { + return ackReplyTo_; + } else { + return ackReplyToBuilder_.getMessage(); + } + } + /** + * required .UniqueAddress ackReplyTo = 5; + */ + public Builder setAckReplyTo(akka.remote.ArteryControlFormats.UniqueAddress value) { + if (ackReplyToBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ackReplyTo_ = value; + onChanged(); + } else { + ackReplyToBuilder_.setMessage(value); + } + bitField0_ |= 0x00000010; + return this; + } + /** + * required .UniqueAddress ackReplyTo = 5; + */ + public Builder setAckReplyTo( + akka.remote.ArteryControlFormats.UniqueAddress.Builder builderForValue) { + if (ackReplyToBuilder_ == null) { + ackReplyTo_ = builderForValue.build(); + onChanged(); + } else { + ackReplyToBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000010; + return this; + } + /** + * required .UniqueAddress ackReplyTo = 5; + */ + public Builder mergeAckReplyTo(akka.remote.ArteryControlFormats.UniqueAddress value) { + if (ackReplyToBuilder_ == null) { + if (((bitField0_ & 0x00000010) == 0x00000010) && + ackReplyTo_ != akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance()) { + ackReplyTo_ = + akka.remote.ArteryControlFormats.UniqueAddress.newBuilder(ackReplyTo_).mergeFrom(value).buildPartial(); + } else { + ackReplyTo_ = value; + } + onChanged(); + } else { + ackReplyToBuilder_.mergeFrom(value); + } + bitField0_ |= 0x00000010; + return this; + } + /** + * required .UniqueAddress ackReplyTo = 5; + */ + public Builder clearAckReplyTo() { + if (ackReplyToBuilder_ == null) { + ackReplyTo_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + onChanged(); + } else { + ackReplyToBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000010); + return this; + } + /** + * required .UniqueAddress ackReplyTo = 5; + */ + public akka.remote.ArteryControlFormats.UniqueAddress.Builder getAckReplyToBuilder() { + bitField0_ |= 0x00000010; + onChanged(); + return getAckReplyToFieldBuilder().getBuilder(); + } + /** + * required .UniqueAddress ackReplyTo = 5; + */ + public akka.remote.ArteryControlFormats.UniqueAddressOrBuilder getAckReplyToOrBuilder() { + if (ackReplyToBuilder_ != null) { + return ackReplyToBuilder_.getMessageOrBuilder(); + } else { + return ackReplyTo_; + } + } + /** + * required .UniqueAddress ackReplyTo = 5; + */ + private akka.protobuf.SingleFieldBuilder< + akka.remote.ArteryControlFormats.UniqueAddress, akka.remote.ArteryControlFormats.UniqueAddress.Builder, akka.remote.ArteryControlFormats.UniqueAddressOrBuilder> + getAckReplyToFieldBuilder() { + if (ackReplyToBuilder_ == null) { + ackReplyToBuilder_ = new akka.protobuf.SingleFieldBuilder< + akka.remote.ArteryControlFormats.UniqueAddress, akka.remote.ArteryControlFormats.UniqueAddress.Builder, akka.remote.ArteryControlFormats.UniqueAddressOrBuilder>( + ackReplyTo_, + getParentForChildren(), + isClean()); + ackReplyTo_ = null; + } + return ackReplyToBuilder_; + } + + // @@protoc_insertion_point(builder_scope:SystemMessageEnvelope) + } + + static { + defaultInstance = new SystemMessageEnvelope(true); + defaultInstance.initFields(); + } + + // @@protoc_insertion_point(class_scope:SystemMessageEnvelope) + } + + public interface SystemMessageDeliveryAckOrBuilder + extends akka.protobuf.MessageOrBuilder { + + // required uint64 seqNo = 1; + /** + * required uint64 seqNo = 1; + */ + boolean hasSeqNo(); + /** + * required uint64 seqNo = 1; + */ + long getSeqNo(); + + // required .UniqueAddress from = 2; + /** + * required .UniqueAddress from = 2; + */ + boolean hasFrom(); + /** + * required .UniqueAddress from = 2; + */ + akka.remote.ArteryControlFormats.UniqueAddress getFrom(); + /** + * required .UniqueAddress from = 2; + */ + akka.remote.ArteryControlFormats.UniqueAddressOrBuilder getFromOrBuilder(); + } + /** + * Protobuf type {@code SystemMessageDeliveryAck} + * + *
+   * SystemMessageDelivery.Ack
+   * SystemMessageDelivery.Nack
+   * 
+ */ + public static final class SystemMessageDeliveryAck extends + akka.protobuf.GeneratedMessage + implements SystemMessageDeliveryAckOrBuilder { + // Use SystemMessageDeliveryAck.newBuilder() to construct. + private SystemMessageDeliveryAck(akka.protobuf.GeneratedMessage.Builder builder) { + super(builder); + this.unknownFields = builder.getUnknownFields(); + } + private SystemMessageDeliveryAck(boolean noInit) { this.unknownFields = akka.protobuf.UnknownFieldSet.getDefaultInstance(); } + + private static final SystemMessageDeliveryAck defaultInstance; + public static SystemMessageDeliveryAck getDefaultInstance() { + return defaultInstance; + } + + public SystemMessageDeliveryAck getDefaultInstanceForType() { + return defaultInstance; + } + + private final akka.protobuf.UnknownFieldSet unknownFields; + @java.lang.Override + public final akka.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private SystemMessageDeliveryAck( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + initFields(); + int mutable_bitField0_ = 0; + akka.protobuf.UnknownFieldSet.Builder unknownFields = + akka.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: { + if (!parseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + done = true; + } + break; + } + case 8: { + bitField0_ |= 0x00000001; + seqNo_ = input.readUInt64(); + break; + } + case 18: { + akka.remote.ArteryControlFormats.UniqueAddress.Builder subBuilder = null; + if (((bitField0_ & 0x00000002) == 0x00000002)) { + subBuilder = from_.toBuilder(); + } + from_ = input.readMessage(akka.remote.ArteryControlFormats.UniqueAddress.PARSER, extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(from_); + from_ = subBuilder.buildPartial(); + } + bitField0_ |= 0x00000002; + break; + } + } + } + } catch (akka.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new akka.protobuf.InvalidProtocolBufferException( + e.getMessage()).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final akka.protobuf.Descriptors.Descriptor + getDescriptor() { + return akka.remote.ArteryControlFormats.internal_static_SystemMessageDeliveryAck_descriptor; + } + + protected akka.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return akka.remote.ArteryControlFormats.internal_static_SystemMessageDeliveryAck_fieldAccessorTable + .ensureFieldAccessorsInitialized( + akka.remote.ArteryControlFormats.SystemMessageDeliveryAck.class, akka.remote.ArteryControlFormats.SystemMessageDeliveryAck.Builder.class); + } + + public static akka.protobuf.Parser PARSER = + new akka.protobuf.AbstractParser() { + public SystemMessageDeliveryAck parsePartialFrom( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + return new SystemMessageDeliveryAck(input, extensionRegistry); + } + }; + + @java.lang.Override + public akka.protobuf.Parser getParserForType() { + return PARSER; + } + + private int bitField0_; + // required uint64 seqNo = 1; + public static final int SEQNO_FIELD_NUMBER = 1; + private long seqNo_; + /** + * required uint64 seqNo = 1; + */ + public boolean hasSeqNo() { + return ((bitField0_ & 0x00000001) == 0x00000001); + } + /** + * required uint64 seqNo = 1; + */ + public long getSeqNo() { + return seqNo_; + } + + // required .UniqueAddress from = 2; + public static final int FROM_FIELD_NUMBER = 2; + private akka.remote.ArteryControlFormats.UniqueAddress from_; + /** + * required .UniqueAddress from = 2; + */ + public boolean hasFrom() { + return ((bitField0_ & 0x00000002) == 0x00000002); + } + /** + * required .UniqueAddress from = 2; + */ + public akka.remote.ArteryControlFormats.UniqueAddress getFrom() { + return from_; + } + /** + * required .UniqueAddress from = 2; + */ + public akka.remote.ArteryControlFormats.UniqueAddressOrBuilder getFromOrBuilder() { + return from_; + } + + private void initFields() { + seqNo_ = 0L; + from_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + } + private byte memoizedIsInitialized = -1; + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized != -1) return isInitialized == 1; + + if (!hasSeqNo()) { + memoizedIsInitialized = 0; + return false; + } + if (!hasFrom()) { + memoizedIsInitialized = 0; + return false; + } + if (!getFrom().isInitialized()) { + memoizedIsInitialized = 0; + return false; + } + memoizedIsInitialized = 1; + return true; + } + + public void writeTo(akka.protobuf.CodedOutputStream output) + throws java.io.IOException { + getSerializedSize(); + if (((bitField0_ & 0x00000001) == 0x00000001)) { + output.writeUInt64(1, seqNo_); + } + if (((bitField0_ & 0x00000002) == 0x00000002)) { + output.writeMessage(2, from_); + } + getUnknownFields().writeTo(output); + } + + private int memoizedSerializedSize = -1; + public int getSerializedSize() { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (((bitField0_ & 0x00000001) == 0x00000001)) { + size += akka.protobuf.CodedOutputStream + .computeUInt64Size(1, seqNo_); + } + if (((bitField0_ & 0x00000002) == 0x00000002)) { + size += akka.protobuf.CodedOutputStream + .computeMessageSize(2, from_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSerializedSize = size; + return size; + } + + private static final long serialVersionUID = 0L; + @java.lang.Override + protected java.lang.Object writeReplace() + throws java.io.ObjectStreamException { + return super.writeReplace(); + } + + public static akka.remote.ArteryControlFormats.SystemMessageDeliveryAck parseFrom( + akka.protobuf.ByteString data) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static akka.remote.ArteryControlFormats.SystemMessageDeliveryAck parseFrom( + akka.protobuf.ByteString data, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.SystemMessageDeliveryAck parseFrom(byte[] data) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static akka.remote.ArteryControlFormats.SystemMessageDeliveryAck parseFrom( + byte[] data, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.SystemMessageDeliveryAck parseFrom(java.io.InputStream input) + throws java.io.IOException { + return PARSER.parseFrom(input); + } + public static akka.remote.ArteryControlFormats.SystemMessageDeliveryAck parseFrom( + java.io.InputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return PARSER.parseFrom(input, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.SystemMessageDeliveryAck parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return PARSER.parseDelimitedFrom(input); + } + public static akka.remote.ArteryControlFormats.SystemMessageDeliveryAck parseDelimitedFrom( + java.io.InputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return PARSER.parseDelimitedFrom(input, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.SystemMessageDeliveryAck parseFrom( + akka.protobuf.CodedInputStream input) + throws java.io.IOException { + return PARSER.parseFrom(input); + } + public static akka.remote.ArteryControlFormats.SystemMessageDeliveryAck parseFrom( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return PARSER.parseFrom(input, extensionRegistry); + } + + public static Builder newBuilder() { return Builder.create(); } + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder(akka.remote.ArteryControlFormats.SystemMessageDeliveryAck prototype) { + return newBuilder().mergeFrom(prototype); + } + public Builder toBuilder() { return newBuilder(this); } + + @java.lang.Override + protected Builder newBuilderForType( + akka.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code SystemMessageDeliveryAck} + * + *
+     * SystemMessageDelivery.Ack
+     * SystemMessageDelivery.Nack
+     * 
+ */ + public static final class Builder extends + akka.protobuf.GeneratedMessage.Builder + implements akka.remote.ArteryControlFormats.SystemMessageDeliveryAckOrBuilder { + public static final akka.protobuf.Descriptors.Descriptor + getDescriptor() { + return akka.remote.ArteryControlFormats.internal_static_SystemMessageDeliveryAck_descriptor; + } + + protected akka.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return akka.remote.ArteryControlFormats.internal_static_SystemMessageDeliveryAck_fieldAccessorTable + .ensureFieldAccessorsInitialized( + akka.remote.ArteryControlFormats.SystemMessageDeliveryAck.class, akka.remote.ArteryControlFormats.SystemMessageDeliveryAck.Builder.class); + } + + // Construct using akka.remote.ArteryControlFormats.SystemMessageDeliveryAck.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + akka.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (akka.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + getFromFieldBuilder(); + } + } + private static Builder create() { + return new Builder(); + } + + public Builder clear() { + super.clear(); + seqNo_ = 0L; + bitField0_ = (bitField0_ & ~0x00000001); + if (fromBuilder_ == null) { + from_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + } else { + fromBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000002); + return this; + } + + public Builder clone() { + return create().mergeFrom(buildPartial()); + } + + public akka.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return akka.remote.ArteryControlFormats.internal_static_SystemMessageDeliveryAck_descriptor; + } + + public akka.remote.ArteryControlFormats.SystemMessageDeliveryAck getDefaultInstanceForType() { + return akka.remote.ArteryControlFormats.SystemMessageDeliveryAck.getDefaultInstance(); + } + + public akka.remote.ArteryControlFormats.SystemMessageDeliveryAck build() { + akka.remote.ArteryControlFormats.SystemMessageDeliveryAck result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + public akka.remote.ArteryControlFormats.SystemMessageDeliveryAck buildPartial() { + akka.remote.ArteryControlFormats.SystemMessageDeliveryAck result = new akka.remote.ArteryControlFormats.SystemMessageDeliveryAck(this); + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) == 0x00000001)) { + to_bitField0_ |= 0x00000001; + } + result.seqNo_ = seqNo_; + if (((from_bitField0_ & 0x00000002) == 0x00000002)) { + to_bitField0_ |= 0x00000002; + } + if (fromBuilder_ == null) { + result.from_ = from_; + } else { + result.from_ = fromBuilder_.build(); + } + result.bitField0_ = to_bitField0_; + onBuilt(); + return result; + } + + public Builder mergeFrom(akka.protobuf.Message other) { + if (other instanceof akka.remote.ArteryControlFormats.SystemMessageDeliveryAck) { + return mergeFrom((akka.remote.ArteryControlFormats.SystemMessageDeliveryAck)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(akka.remote.ArteryControlFormats.SystemMessageDeliveryAck other) { + if (other == akka.remote.ArteryControlFormats.SystemMessageDeliveryAck.getDefaultInstance()) return this; + if (other.hasSeqNo()) { + setSeqNo(other.getSeqNo()); + } + if (other.hasFrom()) { + mergeFrom(other.getFrom()); + } + this.mergeUnknownFields(other.getUnknownFields()); + return this; + } + + public final boolean isInitialized() { + if (!hasSeqNo()) { + + return false; + } + if (!hasFrom()) { + + return false; + } + if (!getFrom().isInitialized()) { + + return false; + } + return true; + } + + public Builder mergeFrom( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + akka.remote.ArteryControlFormats.SystemMessageDeliveryAck parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (akka.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (akka.remote.ArteryControlFormats.SystemMessageDeliveryAck) e.getUnfinishedMessage(); + throw e; + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; + + // required uint64 seqNo = 1; + private long seqNo_ ; + /** + * required uint64 seqNo = 1; + */ + public boolean hasSeqNo() { + return ((bitField0_ & 0x00000001) == 0x00000001); + } + /** + * required uint64 seqNo = 1; + */ + public long getSeqNo() { + return seqNo_; + } + /** + * required uint64 seqNo = 1; + */ + public Builder setSeqNo(long value) { + bitField0_ |= 0x00000001; + seqNo_ = value; + onChanged(); + return this; + } + /** + * required uint64 seqNo = 1; + */ + public Builder clearSeqNo() { + bitField0_ = (bitField0_ & ~0x00000001); + seqNo_ = 0L; + onChanged(); + return this; + } + + // required .UniqueAddress from = 2; + private akka.remote.ArteryControlFormats.UniqueAddress from_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + private akka.protobuf.SingleFieldBuilder< + akka.remote.ArteryControlFormats.UniqueAddress, akka.remote.ArteryControlFormats.UniqueAddress.Builder, akka.remote.ArteryControlFormats.UniqueAddressOrBuilder> fromBuilder_; + /** + * required .UniqueAddress from = 2; + */ + public boolean hasFrom() { + return ((bitField0_ & 0x00000002) == 0x00000002); + } + /** + * required .UniqueAddress from = 2; + */ + public akka.remote.ArteryControlFormats.UniqueAddress getFrom() { + if (fromBuilder_ == null) { + return from_; + } else { + return fromBuilder_.getMessage(); + } + } + /** + * required .UniqueAddress from = 2; + */ + public Builder setFrom(akka.remote.ArteryControlFormats.UniqueAddress value) { + if (fromBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + from_ = value; + onChanged(); + } else { + fromBuilder_.setMessage(value); + } + bitField0_ |= 0x00000002; + return this; + } + /** + * required .UniqueAddress from = 2; + */ + public Builder setFrom( + akka.remote.ArteryControlFormats.UniqueAddress.Builder builderForValue) { + if (fromBuilder_ == null) { + from_ = builderForValue.build(); + onChanged(); + } else { + fromBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000002; + return this; + } + /** + * required .UniqueAddress from = 2; + */ + public Builder mergeFrom(akka.remote.ArteryControlFormats.UniqueAddress value) { + if (fromBuilder_ == null) { + if (((bitField0_ & 0x00000002) == 0x00000002) && + from_ != akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance()) { + from_ = + akka.remote.ArteryControlFormats.UniqueAddress.newBuilder(from_).mergeFrom(value).buildPartial(); + } else { + from_ = value; + } + onChanged(); + } else { + fromBuilder_.mergeFrom(value); + } + bitField0_ |= 0x00000002; + return this; + } + /** + * required .UniqueAddress from = 2; + */ + public Builder clearFrom() { + if (fromBuilder_ == null) { + from_ = akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + onChanged(); + } else { + fromBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000002); + return this; + } + /** + * required .UniqueAddress from = 2; + */ + public akka.remote.ArteryControlFormats.UniqueAddress.Builder getFromBuilder() { + bitField0_ |= 0x00000002; + onChanged(); + return getFromFieldBuilder().getBuilder(); + } + /** + * required .UniqueAddress from = 2; + */ + public akka.remote.ArteryControlFormats.UniqueAddressOrBuilder getFromOrBuilder() { + if (fromBuilder_ != null) { + return fromBuilder_.getMessageOrBuilder(); + } else { + return from_; + } + } + /** + * required .UniqueAddress from = 2; + */ + private akka.protobuf.SingleFieldBuilder< + akka.remote.ArteryControlFormats.UniqueAddress, akka.remote.ArteryControlFormats.UniqueAddress.Builder, akka.remote.ArteryControlFormats.UniqueAddressOrBuilder> + getFromFieldBuilder() { + if (fromBuilder_ == null) { + fromBuilder_ = new akka.protobuf.SingleFieldBuilder< + akka.remote.ArteryControlFormats.UniqueAddress, akka.remote.ArteryControlFormats.UniqueAddress.Builder, akka.remote.ArteryControlFormats.UniqueAddressOrBuilder>( + from_, + getParentForChildren(), + isClean()); + from_ = null; + } + return fromBuilder_; + } + + // @@protoc_insertion_point(builder_scope:SystemMessageDeliveryAck) + } + + static { + defaultInstance = new SystemMessageDeliveryAck(true); + defaultInstance.initFields(); + } + + // @@protoc_insertion_point(class_scope:SystemMessageDeliveryAck) + } + + public interface AddressOrBuilder + extends akka.protobuf.MessageOrBuilder { + + // required string protocol = 1; + /** + * required string protocol = 1; + */ + boolean hasProtocol(); + /** + * required string protocol = 1; + */ + java.lang.String getProtocol(); + /** + * required string protocol = 1; + */ + akka.protobuf.ByteString + getProtocolBytes(); + + // required string system = 2; + /** + * required string system = 2; + */ + boolean hasSystem(); + /** + * required string system = 2; + */ + java.lang.String getSystem(); + /** + * required string system = 2; + */ + akka.protobuf.ByteString + getSystemBytes(); + + // required string hostname = 3; + /** + * required string hostname = 3; + */ + boolean hasHostname(); + /** + * required string hostname = 3; + */ + java.lang.String getHostname(); + /** + * required string hostname = 3; + */ + akka.protobuf.ByteString + getHostnameBytes(); + + // required uint32 port = 4; + /** + * required uint32 port = 4; + */ + boolean hasPort(); + /** + * required uint32 port = 4; + */ + int getPort(); + } + /** + * Protobuf type {@code Address} + * + *
+   **
+   * Defines a remote address.
+   * 
+ */ + public static final class Address extends + akka.protobuf.GeneratedMessage + implements AddressOrBuilder { + // Use Address.newBuilder() to construct. + private Address(akka.protobuf.GeneratedMessage.Builder builder) { + super(builder); + this.unknownFields = builder.getUnknownFields(); + } + private Address(boolean noInit) { this.unknownFields = akka.protobuf.UnknownFieldSet.getDefaultInstance(); } + + private static final Address defaultInstance; + public static Address getDefaultInstance() { + return defaultInstance; + } + + public Address getDefaultInstanceForType() { + return defaultInstance; + } + + private final akka.protobuf.UnknownFieldSet unknownFields; + @java.lang.Override + public final akka.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private Address( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + initFields(); + int mutable_bitField0_ = 0; + akka.protobuf.UnknownFieldSet.Builder unknownFields = + akka.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: { + if (!parseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + done = true; + } + break; + } + case 10: { + bitField0_ |= 0x00000001; + protocol_ = input.readBytes(); + break; + } + case 18: { + bitField0_ |= 0x00000002; + system_ = input.readBytes(); + break; + } + case 26: { + bitField0_ |= 0x00000004; + hostname_ = input.readBytes(); + break; + } + case 32: { + bitField0_ |= 0x00000008; + port_ = input.readUInt32(); + break; + } + } + } + } catch (akka.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new akka.protobuf.InvalidProtocolBufferException( + e.getMessage()).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final akka.protobuf.Descriptors.Descriptor + getDescriptor() { + return akka.remote.ArteryControlFormats.internal_static_Address_descriptor; + } + + protected akka.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return akka.remote.ArteryControlFormats.internal_static_Address_fieldAccessorTable + .ensureFieldAccessorsInitialized( + akka.remote.ArteryControlFormats.Address.class, akka.remote.ArteryControlFormats.Address.Builder.class); + } + + public static akka.protobuf.Parser
PARSER = + new akka.protobuf.AbstractParser
() { + public Address parsePartialFrom( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + return new Address(input, extensionRegistry); + } + }; + + @java.lang.Override + public akka.protobuf.Parser
getParserForType() { + return PARSER; + } + + private int bitField0_; + // required string protocol = 1; + public static final int PROTOCOL_FIELD_NUMBER = 1; + private java.lang.Object protocol_; + /** + * required string protocol = 1; + */ + public boolean hasProtocol() { + return ((bitField0_ & 0x00000001) == 0x00000001); + } + /** + * required string protocol = 1; + */ + public java.lang.String getProtocol() { + java.lang.Object ref = protocol_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + akka.protobuf.ByteString bs = + (akka.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + if (bs.isValidUtf8()) { + protocol_ = s; + } + return s; + } + } + /** + * required string protocol = 1; + */ + public akka.protobuf.ByteString + getProtocolBytes() { + java.lang.Object ref = protocol_; + if (ref instanceof java.lang.String) { + akka.protobuf.ByteString b = + akka.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + protocol_ = b; + return b; + } else { + return (akka.protobuf.ByteString) ref; + } + } + + // required string system = 2; + public static final int SYSTEM_FIELD_NUMBER = 2; + private java.lang.Object system_; + /** + * required string system = 2; + */ + public boolean hasSystem() { + return ((bitField0_ & 0x00000002) == 0x00000002); + } + /** + * required string system = 2; + */ + public java.lang.String getSystem() { + java.lang.Object ref = system_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + akka.protobuf.ByteString bs = + (akka.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + if (bs.isValidUtf8()) { + system_ = s; + } + return s; + } + } + /** + * required string system = 2; + */ + public akka.protobuf.ByteString + getSystemBytes() { + java.lang.Object ref = system_; + if (ref instanceof java.lang.String) { + akka.protobuf.ByteString b = + akka.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + system_ = b; + return b; + } else { + return (akka.protobuf.ByteString) ref; + } + } + + // required string hostname = 3; + public static final int HOSTNAME_FIELD_NUMBER = 3; + private java.lang.Object hostname_; + /** + * required string hostname = 3; + */ + public boolean hasHostname() { + return ((bitField0_ & 0x00000004) == 0x00000004); + } + /** + * required string hostname = 3; + */ + public java.lang.String getHostname() { + java.lang.Object ref = hostname_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + akka.protobuf.ByteString bs = + (akka.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + if (bs.isValidUtf8()) { + hostname_ = s; + } + return s; + } + } + /** + * required string hostname = 3; + */ + public akka.protobuf.ByteString + getHostnameBytes() { + java.lang.Object ref = hostname_; + if (ref instanceof java.lang.String) { + akka.protobuf.ByteString b = + akka.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + hostname_ = b; + return b; + } else { + return (akka.protobuf.ByteString) ref; + } + } + + // required uint32 port = 4; + public static final int PORT_FIELD_NUMBER = 4; + private int port_; + /** + * required uint32 port = 4; + */ + public boolean hasPort() { + return ((bitField0_ & 0x00000008) == 0x00000008); + } + /** + * required uint32 port = 4; + */ + public int getPort() { + return port_; + } + + private void initFields() { + protocol_ = ""; + system_ = ""; + hostname_ = ""; + port_ = 0; + } + private byte memoizedIsInitialized = -1; + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized != -1) return isInitialized == 1; + + if (!hasProtocol()) { + memoizedIsInitialized = 0; + return false; + } + if (!hasSystem()) { + memoizedIsInitialized = 0; + return false; + } + if (!hasHostname()) { + memoizedIsInitialized = 0; + return false; + } + if (!hasPort()) { + memoizedIsInitialized = 0; + return false; + } + memoizedIsInitialized = 1; + return true; + } + + public void writeTo(akka.protobuf.CodedOutputStream output) + throws java.io.IOException { + getSerializedSize(); + if (((bitField0_ & 0x00000001) == 0x00000001)) { + output.writeBytes(1, getProtocolBytes()); + } + if (((bitField0_ & 0x00000002) == 0x00000002)) { + output.writeBytes(2, getSystemBytes()); + } + if (((bitField0_ & 0x00000004) == 0x00000004)) { + output.writeBytes(3, getHostnameBytes()); + } + if (((bitField0_ & 0x00000008) == 0x00000008)) { + output.writeUInt32(4, port_); + } + getUnknownFields().writeTo(output); + } + + private int memoizedSerializedSize = -1; + public int getSerializedSize() { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (((bitField0_ & 0x00000001) == 0x00000001)) { + size += akka.protobuf.CodedOutputStream + .computeBytesSize(1, getProtocolBytes()); + } + if (((bitField0_ & 0x00000002) == 0x00000002)) { + size += akka.protobuf.CodedOutputStream + .computeBytesSize(2, getSystemBytes()); + } + if (((bitField0_ & 0x00000004) == 0x00000004)) { + size += akka.protobuf.CodedOutputStream + .computeBytesSize(3, getHostnameBytes()); + } + if (((bitField0_ & 0x00000008) == 0x00000008)) { + size += akka.protobuf.CodedOutputStream + .computeUInt32Size(4, port_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSerializedSize = size; + return size; + } + + private static final long serialVersionUID = 0L; + @java.lang.Override + protected java.lang.Object writeReplace() + throws java.io.ObjectStreamException { + return super.writeReplace(); + } + + public static akka.remote.ArteryControlFormats.Address parseFrom( + akka.protobuf.ByteString data) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static akka.remote.ArteryControlFormats.Address parseFrom( + akka.protobuf.ByteString data, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.Address parseFrom(byte[] data) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static akka.remote.ArteryControlFormats.Address parseFrom( + byte[] data, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.Address parseFrom(java.io.InputStream input) + throws java.io.IOException { + return PARSER.parseFrom(input); + } + public static akka.remote.ArteryControlFormats.Address parseFrom( + java.io.InputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return PARSER.parseFrom(input, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.Address parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return PARSER.parseDelimitedFrom(input); + } + public static akka.remote.ArteryControlFormats.Address parseDelimitedFrom( + java.io.InputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return PARSER.parseDelimitedFrom(input, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.Address parseFrom( + akka.protobuf.CodedInputStream input) + throws java.io.IOException { + return PARSER.parseFrom(input); + } + public static akka.remote.ArteryControlFormats.Address parseFrom( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return PARSER.parseFrom(input, extensionRegistry); + } + + public static Builder newBuilder() { return Builder.create(); } + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder(akka.remote.ArteryControlFormats.Address prototype) { + return newBuilder().mergeFrom(prototype); + } + public Builder toBuilder() { return newBuilder(this); } + + @java.lang.Override + protected Builder newBuilderForType( + akka.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code Address} + * + *
+     **
+     * Defines a remote address.
+     * 
+ */ + public static final class Builder extends + akka.protobuf.GeneratedMessage.Builder + implements akka.remote.ArteryControlFormats.AddressOrBuilder { + public static final akka.protobuf.Descriptors.Descriptor + getDescriptor() { + return akka.remote.ArteryControlFormats.internal_static_Address_descriptor; + } + + protected akka.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return akka.remote.ArteryControlFormats.internal_static_Address_fieldAccessorTable + .ensureFieldAccessorsInitialized( + akka.remote.ArteryControlFormats.Address.class, akka.remote.ArteryControlFormats.Address.Builder.class); + } + + // Construct using akka.remote.ArteryControlFormats.Address.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + akka.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (akka.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + } + } + private static Builder create() { + return new Builder(); + } + + public Builder clear() { + super.clear(); + protocol_ = ""; + bitField0_ = (bitField0_ & ~0x00000001); + system_ = ""; + bitField0_ = (bitField0_ & ~0x00000002); + hostname_ = ""; + bitField0_ = (bitField0_ & ~0x00000004); + port_ = 0; + bitField0_ = (bitField0_ & ~0x00000008); + return this; + } + + public Builder clone() { + return create().mergeFrom(buildPartial()); + } + + public akka.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return akka.remote.ArteryControlFormats.internal_static_Address_descriptor; + } + + public akka.remote.ArteryControlFormats.Address getDefaultInstanceForType() { + return akka.remote.ArteryControlFormats.Address.getDefaultInstance(); + } + + public akka.remote.ArteryControlFormats.Address build() { + akka.remote.ArteryControlFormats.Address result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + public akka.remote.ArteryControlFormats.Address buildPartial() { + akka.remote.ArteryControlFormats.Address result = new akka.remote.ArteryControlFormats.Address(this); + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) == 0x00000001)) { + to_bitField0_ |= 0x00000001; + } + result.protocol_ = protocol_; + if (((from_bitField0_ & 0x00000002) == 0x00000002)) { + to_bitField0_ |= 0x00000002; + } + result.system_ = system_; + if (((from_bitField0_ & 0x00000004) == 0x00000004)) { + to_bitField0_ |= 0x00000004; + } + result.hostname_ = hostname_; + if (((from_bitField0_ & 0x00000008) == 0x00000008)) { + to_bitField0_ |= 0x00000008; + } + result.port_ = port_; + result.bitField0_ = to_bitField0_; + onBuilt(); + return result; + } + + public Builder mergeFrom(akka.protobuf.Message other) { + if (other instanceof akka.remote.ArteryControlFormats.Address) { + return mergeFrom((akka.remote.ArteryControlFormats.Address)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(akka.remote.ArteryControlFormats.Address other) { + if (other == akka.remote.ArteryControlFormats.Address.getDefaultInstance()) return this; + if (other.hasProtocol()) { + bitField0_ |= 0x00000001; + protocol_ = other.protocol_; + onChanged(); + } + if (other.hasSystem()) { + bitField0_ |= 0x00000002; + system_ = other.system_; + onChanged(); + } + if (other.hasHostname()) { + bitField0_ |= 0x00000004; + hostname_ = other.hostname_; + onChanged(); + } + if (other.hasPort()) { + setPort(other.getPort()); + } + this.mergeUnknownFields(other.getUnknownFields()); + return this; + } + + public final boolean isInitialized() { + if (!hasProtocol()) { + + return false; + } + if (!hasSystem()) { + + return false; + } + if (!hasHostname()) { + + return false; + } + if (!hasPort()) { + + return false; + } + return true; + } + + public Builder mergeFrom( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + akka.remote.ArteryControlFormats.Address parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (akka.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (akka.remote.ArteryControlFormats.Address) e.getUnfinishedMessage(); + throw e; + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; + + // required string protocol = 1; + private java.lang.Object protocol_ = ""; + /** + * required string protocol = 1; + */ + public boolean hasProtocol() { + return ((bitField0_ & 0x00000001) == 0x00000001); + } + /** + * required string protocol = 1; + */ + public java.lang.String getProtocol() { + java.lang.Object ref = protocol_; + if (!(ref instanceof java.lang.String)) { + java.lang.String s = ((akka.protobuf.ByteString) ref) + .toStringUtf8(); + protocol_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * required string protocol = 1; + */ + public akka.protobuf.ByteString + getProtocolBytes() { + java.lang.Object ref = protocol_; + if (ref instanceof String) { + akka.protobuf.ByteString b = + akka.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + protocol_ = b; + return b; + } else { + return (akka.protobuf.ByteString) ref; + } + } + /** + * required string protocol = 1; + */ + public Builder setProtocol( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000001; + protocol_ = value; + onChanged(); + return this; + } + /** + * required string protocol = 1; + */ + public Builder clearProtocol() { + bitField0_ = (bitField0_ & ~0x00000001); + protocol_ = getDefaultInstance().getProtocol(); + onChanged(); + return this; + } + /** + * required string protocol = 1; + */ + public Builder setProtocolBytes( + akka.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000001; + protocol_ = value; + onChanged(); + return this; + } + + // required string system = 2; + private java.lang.Object system_ = ""; + /** + * required string system = 2; + */ + public boolean hasSystem() { + return ((bitField0_ & 0x00000002) == 0x00000002); + } + /** + * required string system = 2; + */ + public java.lang.String getSystem() { + java.lang.Object ref = system_; + if (!(ref instanceof java.lang.String)) { + java.lang.String s = ((akka.protobuf.ByteString) ref) + .toStringUtf8(); + system_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * required string system = 2; + */ + public akka.protobuf.ByteString + getSystemBytes() { + java.lang.Object ref = system_; + if (ref instanceof String) { + akka.protobuf.ByteString b = + akka.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + system_ = b; + return b; + } else { + return (akka.protobuf.ByteString) ref; + } + } + /** + * required string system = 2; + */ + public Builder setSystem( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000002; + system_ = value; + onChanged(); + return this; + } + /** + * required string system = 2; + */ + public Builder clearSystem() { + bitField0_ = (bitField0_ & ~0x00000002); + system_ = getDefaultInstance().getSystem(); + onChanged(); + return this; + } + /** + * required string system = 2; + */ + public Builder setSystemBytes( + akka.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000002; + system_ = value; + onChanged(); + return this; + } + + // required string hostname = 3; + private java.lang.Object hostname_ = ""; + /** + * required string hostname = 3; + */ + public boolean hasHostname() { + return ((bitField0_ & 0x00000004) == 0x00000004); + } + /** + * required string hostname = 3; + */ + public java.lang.String getHostname() { + java.lang.Object ref = hostname_; + if (!(ref instanceof java.lang.String)) { + java.lang.String s = ((akka.protobuf.ByteString) ref) + .toStringUtf8(); + hostname_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * required string hostname = 3; + */ + public akka.protobuf.ByteString + getHostnameBytes() { + java.lang.Object ref = hostname_; + if (ref instanceof String) { + akka.protobuf.ByteString b = + akka.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + hostname_ = b; + return b; + } else { + return (akka.protobuf.ByteString) ref; + } + } + /** + * required string hostname = 3; + */ + public Builder setHostname( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000004; + hostname_ = value; + onChanged(); + return this; + } + /** + * required string hostname = 3; + */ + public Builder clearHostname() { + bitField0_ = (bitField0_ & ~0x00000004); + hostname_ = getDefaultInstance().getHostname(); + onChanged(); + return this; + } + /** + * required string hostname = 3; + */ + public Builder setHostnameBytes( + akka.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000004; + hostname_ = value; + onChanged(); + return this; + } + + // required uint32 port = 4; + private int port_ ; + /** + * required uint32 port = 4; + */ + public boolean hasPort() { + return ((bitField0_ & 0x00000008) == 0x00000008); + } + /** + * required uint32 port = 4; + */ + public int getPort() { + return port_; + } + /** + * required uint32 port = 4; + */ + public Builder setPort(int value) { + bitField0_ |= 0x00000008; + port_ = value; + onChanged(); + return this; + } + /** + * required uint32 port = 4; + */ + public Builder clearPort() { + bitField0_ = (bitField0_ & ~0x00000008); + port_ = 0; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:Address) + } + + static { + defaultInstance = new Address(true); + defaultInstance.initFields(); + } + + // @@protoc_insertion_point(class_scope:Address) + } + + public interface UniqueAddressOrBuilder + extends akka.protobuf.MessageOrBuilder { + + // required .Address address = 1; + /** + * required .Address address = 1; + */ + boolean hasAddress(); + /** + * required .Address address = 1; + */ + akka.remote.ArteryControlFormats.Address getAddress(); + /** + * required .Address address = 1; + */ + akka.remote.ArteryControlFormats.AddressOrBuilder getAddressOrBuilder(); + + // required uint64 uid = 2; + /** + * required uint64 uid = 2; + */ + boolean hasUid(); + /** + * required uint64 uid = 2; + */ + long getUid(); + } + /** + * Protobuf type {@code UniqueAddress} + * + *
+   **
+   * Defines a remote address with uid.
+   * 
+ */ + public static final class UniqueAddress extends + akka.protobuf.GeneratedMessage + implements UniqueAddressOrBuilder { + // Use UniqueAddress.newBuilder() to construct. + private UniqueAddress(akka.protobuf.GeneratedMessage.Builder builder) { + super(builder); + this.unknownFields = builder.getUnknownFields(); + } + private UniqueAddress(boolean noInit) { this.unknownFields = akka.protobuf.UnknownFieldSet.getDefaultInstance(); } + + private static final UniqueAddress defaultInstance; + public static UniqueAddress getDefaultInstance() { + return defaultInstance; + } + + public UniqueAddress getDefaultInstanceForType() { + return defaultInstance; + } + + private final akka.protobuf.UnknownFieldSet unknownFields; + @java.lang.Override + public final akka.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private UniqueAddress( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + initFields(); + int mutable_bitField0_ = 0; + akka.protobuf.UnknownFieldSet.Builder unknownFields = + akka.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: { + if (!parseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + done = true; + } + break; + } + case 10: { + akka.remote.ArteryControlFormats.Address.Builder subBuilder = null; + if (((bitField0_ & 0x00000001) == 0x00000001)) { + subBuilder = address_.toBuilder(); + } + address_ = input.readMessage(akka.remote.ArteryControlFormats.Address.PARSER, extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(address_); + address_ = subBuilder.buildPartial(); + } + bitField0_ |= 0x00000001; + break; + } + case 16: { + bitField0_ |= 0x00000002; + uid_ = input.readUInt64(); + break; + } + } + } + } catch (akka.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new akka.protobuf.InvalidProtocolBufferException( + e.getMessage()).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final akka.protobuf.Descriptors.Descriptor + getDescriptor() { + return akka.remote.ArteryControlFormats.internal_static_UniqueAddress_descriptor; + } + + protected akka.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return akka.remote.ArteryControlFormats.internal_static_UniqueAddress_fieldAccessorTable + .ensureFieldAccessorsInitialized( + akka.remote.ArteryControlFormats.UniqueAddress.class, akka.remote.ArteryControlFormats.UniqueAddress.Builder.class); + } + + public static akka.protobuf.Parser PARSER = + new akka.protobuf.AbstractParser() { + public UniqueAddress parsePartialFrom( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + return new UniqueAddress(input, extensionRegistry); + } + }; + + @java.lang.Override + public akka.protobuf.Parser getParserForType() { + return PARSER; + } + + private int bitField0_; + // required .Address address = 1; + public static final int ADDRESS_FIELD_NUMBER = 1; + private akka.remote.ArteryControlFormats.Address address_; + /** + * required .Address address = 1; + */ + public boolean hasAddress() { + return ((bitField0_ & 0x00000001) == 0x00000001); + } + /** + * required .Address address = 1; + */ + public akka.remote.ArteryControlFormats.Address getAddress() { + return address_; + } + /** + * required .Address address = 1; + */ + public akka.remote.ArteryControlFormats.AddressOrBuilder getAddressOrBuilder() { + return address_; + } + + // required uint64 uid = 2; + public static final int UID_FIELD_NUMBER = 2; + private long uid_; + /** + * required uint64 uid = 2; + */ + public boolean hasUid() { + return ((bitField0_ & 0x00000002) == 0x00000002); + } + /** + * required uint64 uid = 2; + */ + public long getUid() { + return uid_; + } + + private void initFields() { + address_ = akka.remote.ArteryControlFormats.Address.getDefaultInstance(); + uid_ = 0L; + } + private byte memoizedIsInitialized = -1; + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized != -1) return isInitialized == 1; + + if (!hasAddress()) { + memoizedIsInitialized = 0; + return false; + } + if (!hasUid()) { + memoizedIsInitialized = 0; + return false; + } + if (!getAddress().isInitialized()) { + memoizedIsInitialized = 0; + return false; + } + memoizedIsInitialized = 1; + return true; + } + + public void writeTo(akka.protobuf.CodedOutputStream output) + throws java.io.IOException { + getSerializedSize(); + if (((bitField0_ & 0x00000001) == 0x00000001)) { + output.writeMessage(1, address_); + } + if (((bitField0_ & 0x00000002) == 0x00000002)) { + output.writeUInt64(2, uid_); + } + getUnknownFields().writeTo(output); + } + + private int memoizedSerializedSize = -1; + public int getSerializedSize() { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (((bitField0_ & 0x00000001) == 0x00000001)) { + size += akka.protobuf.CodedOutputStream + .computeMessageSize(1, address_); + } + if (((bitField0_ & 0x00000002) == 0x00000002)) { + size += akka.protobuf.CodedOutputStream + .computeUInt64Size(2, uid_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSerializedSize = size; + return size; + } + + private static final long serialVersionUID = 0L; + @java.lang.Override + protected java.lang.Object writeReplace() + throws java.io.ObjectStreamException { + return super.writeReplace(); + } + + public static akka.remote.ArteryControlFormats.UniqueAddress parseFrom( + akka.protobuf.ByteString data) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static akka.remote.ArteryControlFormats.UniqueAddress parseFrom( + akka.protobuf.ByteString data, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.UniqueAddress parseFrom(byte[] data) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static akka.remote.ArteryControlFormats.UniqueAddress parseFrom( + byte[] data, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws akka.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.UniqueAddress parseFrom(java.io.InputStream input) + throws java.io.IOException { + return PARSER.parseFrom(input); + } + public static akka.remote.ArteryControlFormats.UniqueAddress parseFrom( + java.io.InputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return PARSER.parseFrom(input, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.UniqueAddress parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return PARSER.parseDelimitedFrom(input); + } + public static akka.remote.ArteryControlFormats.UniqueAddress parseDelimitedFrom( + java.io.InputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return PARSER.parseDelimitedFrom(input, extensionRegistry); + } + public static akka.remote.ArteryControlFormats.UniqueAddress parseFrom( + akka.protobuf.CodedInputStream input) + throws java.io.IOException { + return PARSER.parseFrom(input); + } + public static akka.remote.ArteryControlFormats.UniqueAddress parseFrom( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return PARSER.parseFrom(input, extensionRegistry); + } + + public static Builder newBuilder() { return Builder.create(); } + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder(akka.remote.ArteryControlFormats.UniqueAddress prototype) { + return newBuilder().mergeFrom(prototype); + } + public Builder toBuilder() { return newBuilder(this); } + + @java.lang.Override + protected Builder newBuilderForType( + akka.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code UniqueAddress} + * + *
+     **
+     * Defines a remote address with uid.
+     * 
+ */ + public static final class Builder extends + akka.protobuf.GeneratedMessage.Builder + implements akka.remote.ArteryControlFormats.UniqueAddressOrBuilder { + public static final akka.protobuf.Descriptors.Descriptor + getDescriptor() { + return akka.remote.ArteryControlFormats.internal_static_UniqueAddress_descriptor; + } + + protected akka.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return akka.remote.ArteryControlFormats.internal_static_UniqueAddress_fieldAccessorTable + .ensureFieldAccessorsInitialized( + akka.remote.ArteryControlFormats.UniqueAddress.class, akka.remote.ArteryControlFormats.UniqueAddress.Builder.class); + } + + // Construct using akka.remote.ArteryControlFormats.UniqueAddress.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + akka.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (akka.protobuf.GeneratedMessage.alwaysUseFieldBuilders) { + getAddressFieldBuilder(); + } + } + private static Builder create() { + return new Builder(); + } + + public Builder clear() { + super.clear(); + if (addressBuilder_ == null) { + address_ = akka.remote.ArteryControlFormats.Address.getDefaultInstance(); + } else { + addressBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000001); + uid_ = 0L; + bitField0_ = (bitField0_ & ~0x00000002); + return this; + } + + public Builder clone() { + return create().mergeFrom(buildPartial()); + } + + public akka.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return akka.remote.ArteryControlFormats.internal_static_UniqueAddress_descriptor; + } + + public akka.remote.ArteryControlFormats.UniqueAddress getDefaultInstanceForType() { + return akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance(); + } + + public akka.remote.ArteryControlFormats.UniqueAddress build() { + akka.remote.ArteryControlFormats.UniqueAddress result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + public akka.remote.ArteryControlFormats.UniqueAddress buildPartial() { + akka.remote.ArteryControlFormats.UniqueAddress result = new akka.remote.ArteryControlFormats.UniqueAddress(this); + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) == 0x00000001)) { + to_bitField0_ |= 0x00000001; + } + if (addressBuilder_ == null) { + result.address_ = address_; + } else { + result.address_ = addressBuilder_.build(); + } + if (((from_bitField0_ & 0x00000002) == 0x00000002)) { + to_bitField0_ |= 0x00000002; + } + result.uid_ = uid_; + result.bitField0_ = to_bitField0_; + onBuilt(); + return result; + } + + public Builder mergeFrom(akka.protobuf.Message other) { + if (other instanceof akka.remote.ArteryControlFormats.UniqueAddress) { + return mergeFrom((akka.remote.ArteryControlFormats.UniqueAddress)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(akka.remote.ArteryControlFormats.UniqueAddress other) { + if (other == akka.remote.ArteryControlFormats.UniqueAddress.getDefaultInstance()) return this; + if (other.hasAddress()) { + mergeAddress(other.getAddress()); + } + if (other.hasUid()) { + setUid(other.getUid()); + } + this.mergeUnknownFields(other.getUnknownFields()); + return this; + } + + public final boolean isInitialized() { + if (!hasAddress()) { + + return false; + } + if (!hasUid()) { + + return false; + } + if (!getAddress().isInitialized()) { + + return false; + } + return true; + } + + public Builder mergeFrom( + akka.protobuf.CodedInputStream input, + akka.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + akka.remote.ArteryControlFormats.UniqueAddress parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (akka.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (akka.remote.ArteryControlFormats.UniqueAddress) e.getUnfinishedMessage(); + throw e; + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; + + // required .Address address = 1; + private akka.remote.ArteryControlFormats.Address address_ = akka.remote.ArteryControlFormats.Address.getDefaultInstance(); + private akka.protobuf.SingleFieldBuilder< + akka.remote.ArteryControlFormats.Address, akka.remote.ArteryControlFormats.Address.Builder, akka.remote.ArteryControlFormats.AddressOrBuilder> addressBuilder_; + /** + * required .Address address = 1; + */ + public boolean hasAddress() { + return ((bitField0_ & 0x00000001) == 0x00000001); + } + /** + * required .Address address = 1; + */ + public akka.remote.ArteryControlFormats.Address getAddress() { + if (addressBuilder_ == null) { + return address_; + } else { + return addressBuilder_.getMessage(); + } + } + /** + * required .Address address = 1; + */ + public Builder setAddress(akka.remote.ArteryControlFormats.Address value) { + if (addressBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + address_ = value; + onChanged(); + } else { + addressBuilder_.setMessage(value); + } + bitField0_ |= 0x00000001; + return this; + } + /** + * required .Address address = 1; + */ + public Builder setAddress( + akka.remote.ArteryControlFormats.Address.Builder builderForValue) { + if (addressBuilder_ == null) { + address_ = builderForValue.build(); + onChanged(); + } else { + addressBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000001; + return this; + } + /** + * required .Address address = 1; + */ + public Builder mergeAddress(akka.remote.ArteryControlFormats.Address value) { + if (addressBuilder_ == null) { + if (((bitField0_ & 0x00000001) == 0x00000001) && + address_ != akka.remote.ArteryControlFormats.Address.getDefaultInstance()) { + address_ = + akka.remote.ArteryControlFormats.Address.newBuilder(address_).mergeFrom(value).buildPartial(); + } else { + address_ = value; + } + onChanged(); + } else { + addressBuilder_.mergeFrom(value); + } + bitField0_ |= 0x00000001; + return this; + } + /** + * required .Address address = 1; + */ + public Builder clearAddress() { + if (addressBuilder_ == null) { + address_ = akka.remote.ArteryControlFormats.Address.getDefaultInstance(); + onChanged(); + } else { + addressBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000001); + return this; + } + /** + * required .Address address = 1; + */ + public akka.remote.ArteryControlFormats.Address.Builder getAddressBuilder() { + bitField0_ |= 0x00000001; + onChanged(); + return getAddressFieldBuilder().getBuilder(); + } + /** + * required .Address address = 1; + */ + public akka.remote.ArteryControlFormats.AddressOrBuilder getAddressOrBuilder() { + if (addressBuilder_ != null) { + return addressBuilder_.getMessageOrBuilder(); + } else { + return address_; + } + } + /** + * required .Address address = 1; + */ + private akka.protobuf.SingleFieldBuilder< + akka.remote.ArteryControlFormats.Address, akka.remote.ArteryControlFormats.Address.Builder, akka.remote.ArteryControlFormats.AddressOrBuilder> + getAddressFieldBuilder() { + if (addressBuilder_ == null) { + addressBuilder_ = new akka.protobuf.SingleFieldBuilder< + akka.remote.ArteryControlFormats.Address, akka.remote.ArteryControlFormats.Address.Builder, akka.remote.ArteryControlFormats.AddressOrBuilder>( + address_, + getParentForChildren(), + isClean()); + address_ = null; + } + return addressBuilder_; + } + + // required uint64 uid = 2; + private long uid_ ; + /** + * required uint64 uid = 2; + */ + public boolean hasUid() { + return ((bitField0_ & 0x00000002) == 0x00000002); + } + /** + * required uint64 uid = 2; + */ + public long getUid() { + return uid_; + } + /** + * required uint64 uid = 2; + */ + public Builder setUid(long value) { + bitField0_ |= 0x00000002; + uid_ = value; + onChanged(); + return this; + } + /** + * required uint64 uid = 2; + */ + public Builder clearUid() { + bitField0_ = (bitField0_ & ~0x00000002); + uid_ = 0L; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:UniqueAddress) + } + + static { + defaultInstance = new UniqueAddress(true); + defaultInstance.initFields(); + } + + // @@protoc_insertion_point(class_scope:UniqueAddress) + } + + private static akka.protobuf.Descriptors.Descriptor + internal_static_Quarantined_descriptor; + private static + akka.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_Quarantined_fieldAccessorTable; + private static akka.protobuf.Descriptors.Descriptor + internal_static_MessageWithAddress_descriptor; + private static + akka.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_MessageWithAddress_fieldAccessorTable; + private static akka.protobuf.Descriptors.Descriptor + internal_static_CompressionTableAdvertisement_descriptor; + private static + akka.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_CompressionTableAdvertisement_fieldAccessorTable; + private static akka.protobuf.Descriptors.Descriptor + internal_static_CompressionTableAdvertisementAck_descriptor; + private static + akka.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_CompressionTableAdvertisementAck_fieldAccessorTable; + private static akka.protobuf.Descriptors.Descriptor + internal_static_SystemMessageEnvelope_descriptor; + private static + akka.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_SystemMessageEnvelope_fieldAccessorTable; + private static akka.protobuf.Descriptors.Descriptor + internal_static_SystemMessageDeliveryAck_descriptor; + private static + akka.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_SystemMessageDeliveryAck_fieldAccessorTable; + private static akka.protobuf.Descriptors.Descriptor + internal_static_Address_descriptor; + private static + akka.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_Address_fieldAccessorTable; + private static akka.protobuf.Descriptors.Descriptor + internal_static_UniqueAddress_descriptor; + private static + akka.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_UniqueAddress_fieldAccessorTable; + + public static akka.protobuf.Descriptors.FileDescriptor + getDescriptor() { + return descriptor; + } + private static akka.protobuf.Descriptors.FileDescriptor + descriptor; + static { + java.lang.String[] descriptorData = { + "\n\032ArteryControlFormats.proto\"G\n\013Quaranti" + + "ned\022\034\n\004from\030\001 \002(\0132\016.UniqueAddress\022\032\n\002to\030" + + "\002 \002(\0132\016.UniqueAddress\"5\n\022MessageWithAddr" + + "ess\022\037\n\007address\030\001 \002(\0132\016.UniqueAddress\"q\n\035" + + "CompressionTableAdvertisement\022\034\n\004from\030\001 " + + "\002(\0132\016.UniqueAddress\022\024\n\014tableVersion\030\002 \002(" + + "\r\022\014\n\004keys\030\003 \003(\t\022\016\n\006values\030\004 \003(\r\"Q\n Compr" + + "essionTableAdvertisementAck\022\034\n\004from\030\001 \002(" + + "\0132\016.UniqueAddress\022\017\n\007version\030\002 \002(\r\"\212\001\n\025S" + + "ystemMessageEnvelope\022\017\n\007message\030\001 \002(\014\022\024\n", + "\014serializerId\030\002 \002(\005\022\027\n\017messageManifest\030\003" + + " \001(\014\022\r\n\005seqNo\030\004 \002(\004\022\"\n\nackReplyTo\030\005 \002(\0132" + + "\016.UniqueAddress\"G\n\030SystemMessageDelivery" + + "Ack\022\r\n\005seqNo\030\001 \002(\004\022\034\n\004from\030\002 \002(\0132\016.Uniqu" + + "eAddress\"K\n\007Address\022\020\n\010protocol\030\001 \002(\t\022\016\n" + + "\006system\030\002 \002(\t\022\020\n\010hostname\030\003 \002(\t\022\014\n\004port\030" + + "\004 \002(\r\"7\n\rUniqueAddress\022\031\n\007address\030\001 \002(\0132" + + "\010.Address\022\013\n\003uid\030\002 \002(\004B\017\n\013akka.remoteH\001" + }; + akka.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner = + new akka.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner() { + public akka.protobuf.ExtensionRegistry assignDescriptors( + akka.protobuf.Descriptors.FileDescriptor root) { + descriptor = root; + internal_static_Quarantined_descriptor = + getDescriptor().getMessageTypes().get(0); + internal_static_Quarantined_fieldAccessorTable = new + akka.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_Quarantined_descriptor, + new java.lang.String[] { "From", "To", }); + internal_static_MessageWithAddress_descriptor = + getDescriptor().getMessageTypes().get(1); + internal_static_MessageWithAddress_fieldAccessorTable = new + akka.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_MessageWithAddress_descriptor, + new java.lang.String[] { "Address", }); + internal_static_CompressionTableAdvertisement_descriptor = + getDescriptor().getMessageTypes().get(2); + internal_static_CompressionTableAdvertisement_fieldAccessorTable = new + akka.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_CompressionTableAdvertisement_descriptor, + new java.lang.String[] { "From", "TableVersion", "Keys", "Values", }); + internal_static_CompressionTableAdvertisementAck_descriptor = + getDescriptor().getMessageTypes().get(3); + internal_static_CompressionTableAdvertisementAck_fieldAccessorTable = new + akka.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_CompressionTableAdvertisementAck_descriptor, + new java.lang.String[] { "From", "Version", }); + internal_static_SystemMessageEnvelope_descriptor = + getDescriptor().getMessageTypes().get(4); + internal_static_SystemMessageEnvelope_fieldAccessorTable = new + akka.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_SystemMessageEnvelope_descriptor, + new java.lang.String[] { "Message", "SerializerId", "MessageManifest", "SeqNo", "AckReplyTo", }); + internal_static_SystemMessageDeliveryAck_descriptor = + getDescriptor().getMessageTypes().get(5); + internal_static_SystemMessageDeliveryAck_fieldAccessorTable = new + akka.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_SystemMessageDeliveryAck_descriptor, + new java.lang.String[] { "SeqNo", "From", }); + internal_static_Address_descriptor = + getDescriptor().getMessageTypes().get(6); + internal_static_Address_fieldAccessorTable = new + akka.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_Address_descriptor, + new java.lang.String[] { "Protocol", "System", "Hostname", "Port", }); + internal_static_UniqueAddress_descriptor = + getDescriptor().getMessageTypes().get(7); + internal_static_UniqueAddress_fieldAccessorTable = new + akka.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_UniqueAddress_descriptor, + new java.lang.String[] { "Address", "Uid", }); + return null; + } + }; + akka.protobuf.Descriptors.FileDescriptor + .internalBuildGeneratedFileFrom(descriptorData, + new akka.protobuf.Descriptors.FileDescriptor[] { + }, assigner); + } + + // @@protoc_insertion_point(outer_class_scope) +} diff --git a/akka-remote/src/main/protobuf/ArteryControlFormats.proto b/akka-remote/src/main/protobuf/ArteryControlFormats.proto new file mode 100644 index 0000000000..5f47710670 --- /dev/null +++ b/akka-remote/src/main/protobuf/ArteryControlFormats.proto @@ -0,0 +1,75 @@ +/** + * Copyright (C) 2016 Lightbend Inc. + */ + +option java_package = "akka.remote"; +option optimize_for = SPEED; + +message Quarantined { + required UniqueAddress from = 1; + required UniqueAddress to = 2; +} + +// Generic message declaration that is used for all types of message that (currently) have a single +// address field. A message that needs to changed later can be cloned from this one and then adapted. +// ActorSystemTerminating +// ActorSystemTerminating.Ack +// OutboundHandshake.HandshakeReq +// OutboundHandshake.HandshakeRsp +message MessageWithAddress { + required UniqueAddress address = 1; +} + +// CompressionProtocol.ActorRefCompressionAdvertisement +// CompressionProtocol.ClassManifestCompressionAdvertisement +message CompressionTableAdvertisement { + required UniqueAddress from = 1; + required uint32 tableVersion = 2; + + // actual Map is represented by separate sequences of keys and values, + // relies on both sequences using the same order so that corresponding entries can be + // associated again when deserializing + repeated string keys = 3; + repeated uint32 values = 4; +} + +// CompressionProtocol.ActorRefCompressionAdvertisementAck +// CompressionProtocol.ClassManifestCompressionAdvertisementAck +message CompressionTableAdvertisementAck { + required UniqueAddress from = 1; + required uint32 version = 2; +} + +// SystemMessageDelivery.SystemMessageEnvelope +message SystemMessageEnvelope { + required bytes message = 1; + required int32 serializerId = 2; + optional bytes messageManifest = 3; + required uint64 seqNo = 4; + required UniqueAddress ackReplyTo = 5; +} + +// SystemMessageDelivery.Ack +// SystemMessageDelivery.Nack +message SystemMessageDeliveryAck { + required uint64 seqNo = 1; + required UniqueAddress from = 2; +} + +/** + * Defines a remote address. + */ +message Address { + required string protocol = 1; + required string system = 2; + required string hostname = 3; + required uint32 port = 4; +} + +/** + * Defines a remote address with uid. + */ +message UniqueAddress { + required Address address = 1; + required uint64 uid = 2; +} diff --git a/akka-remote/src/main/resources/reference.conf b/akka-remote/src/main/resources/reference.conf index 99a1116e6a..2fd385e08c 100644 --- a/akka-remote/src/main/resources/reference.conf +++ b/akka-remote/src/main/resources/reference.conf @@ -15,6 +15,7 @@ akka { serializers { akka-containers = "akka.remote.serialization.MessageContainerSerializer" akka-misc = "akka.remote.serialization.MiscMessageSerializer" + artery = "akka.remote.serialization.ArteryMessageSerializer" proto = "akka.remote.serialization.ProtobufSerializer" daemon-create = "akka.remote.serialization.DaemonMsgCreateSerializer" } @@ -28,11 +29,12 @@ akka { # Should java serialization be disabled, uncomment the following lines # "akka.actor.Identify" = akka-misc # "akka.actor.ActorIdentity" = akka-misc - # Should java serialization be disabled, uncomment the following lines # "scala.Some" = akka-misc # "scala.None$" = akka-misc "akka.remote.DaemonMsgCreate" = daemon-create + "akka.remote.artery.ArteryMessage" = artery + # Since akka.protobuf.Message does not extend Serializable but # GeneratedMessage does, need to use the more specific one here in order # to avoid ambiguity. @@ -44,7 +46,6 @@ akka { # This com.google.protobuf serialization binding is only used if the class can be loaded, # i.e. com.google.protobuf dependency has been added in the application project. "com.google.protobuf.GeneratedMessage" = proto - } serialization-identifiers { @@ -52,6 +53,7 @@ akka { "akka.remote.serialization.DaemonMsgCreateSerializer" = 3 "akka.remote.serialization.MessageContainerSerializer" = 6 "akka.remote.serialization.MiscMessageSerializer" = 16 + "akka.remote.serialization.ArteryMessageSerializer" = 17 } deployment { diff --git a/akka-remote/src/main/scala/akka/remote/artery/Control.scala b/akka-remote/src/main/scala/akka/remote/artery/Control.scala index ceac57e668..76aad28dc5 100644 --- a/akka-remote/src/main/scala/akka/remote/artery/Control.scala +++ b/akka-remote/src/main/scala/akka/remote/artery/Control.scala @@ -19,6 +19,9 @@ import akka.stream.stage.OutHandler import akka.remote.UniqueAddress import akka.util.OptionVal +/** INTERNAL API: marker trait for protobuf-serializable artery messages */ +private[akka] trait ArteryMessage extends Serializable + /** * INTERNAL API: Marker trait for reply messages */ @@ -29,22 +32,22 @@ private[akka] trait Reply extends ControlMessage * Marker trait for control messages that can be sent via the system message sub-channel * but don't need full reliable delivery. E.g. `HandshakeReq` and `Reply`. */ -private[akka] trait ControlMessage +private[akka] trait ControlMessage extends ArteryMessage /** * INTERNAL API */ -private[akka] final case class Quarantined(from: UniqueAddress, to: UniqueAddress) extends ControlMessage // FIXME serialization +private[akka] final case class Quarantined(from: UniqueAddress, to: UniqueAddress) extends ControlMessage /** * INTERNAL API */ -private[akka] case class ActorSystemTerminating(from: UniqueAddress) extends ControlMessage // FIXME serialization +private[akka] case class ActorSystemTerminating(from: UniqueAddress) extends ControlMessage /** * INTERNAL API */ -private[akka] case class ActorSystemTerminatingAck(from: UniqueAddress) // FIXME serialization +private[akka] case class ActorSystemTerminatingAck(from: UniqueAddress) extends ArteryMessage /** * INTERNAL API diff --git a/akka-remote/src/main/scala/akka/remote/artery/Handshake.scala b/akka-remote/src/main/scala/akka/remote/artery/Handshake.scala index 5f4a50a3b4..63d8c05693 100644 --- a/akka-remote/src/main/scala/akka/remote/artery/Handshake.scala +++ b/akka-remote/src/main/scala/akka/remote/artery/Handshake.scala @@ -32,7 +32,6 @@ private[akka] object OutboundHandshake { */ class HandshakeTimeoutException(msg: String) extends RuntimeException(msg) with NoStackTrace - // FIXME serialization for these messages final case class HandshakeReq(from: UniqueAddress) extends ControlMessage final case class HandshakeRsp(from: UniqueAddress) extends Reply diff --git a/akka-remote/src/main/scala/akka/remote/artery/SystemMessageDelivery.scala b/akka-remote/src/main/scala/akka/remote/artery/SystemMessageDelivery.scala index a78dc3d18b..c21f3bb2d9 100644 --- a/akka-remote/src/main/scala/akka/remote/artery/SystemMessageDelivery.scala +++ b/akka-remote/src/main/scala/akka/remote/artery/SystemMessageDelivery.scala @@ -30,7 +30,7 @@ import akka.actor.ActorRef private[akka] object SystemMessageDelivery { // FIXME serialization of these messages // FIXME ackReplyTo should not be needed - final case class SystemMessageEnvelope(message: AnyRef, seqNo: Long, ackReplyTo: UniqueAddress) + final case class SystemMessageEnvelope(message: AnyRef, seqNo: Long, ackReplyTo: UniqueAddress) extends ArteryMessage final case class Ack(seqNo: Long, from: UniqueAddress) extends Reply final case class Nack(seqNo: Long, from: UniqueAddress) extends Reply diff --git a/akka-remote/src/main/scala/akka/remote/artery/compress/CompressionProtocol.scala b/akka-remote/src/main/scala/akka/remote/artery/compress/CompressionProtocol.scala index 6aeada84d5..21e928b8f8 100644 --- a/akka-remote/src/main/scala/akka/remote/artery/compress/CompressionProtocol.scala +++ b/akka-remote/src/main/scala/akka/remote/artery/compress/CompressionProtocol.scala @@ -5,7 +5,7 @@ package akka.remote.artery.compress import scala.language.existentials -import akka.actor.{ ActorRef, Address } +import akka.actor.ActorRef import akka.remote.UniqueAddress import akka.remote.artery.ControlMessage @@ -16,12 +16,18 @@ object CompressionProtocol { /** INTERNAL API */ sealed trait CompressionMessage + /** INTERNAL API */ + sealed trait CompressionAdvertisement[T] extends ControlMessage with CompressionMessage { + def from: UniqueAddress + def table: CompressionTable[T] + } + /** * INTERNAL API * Sent by the "receiving" node after allocating a compression id to a given [[akka.actor.ActorRef]] */ private[remote] final case class ActorRefCompressionAdvertisement(from: UniqueAddress, table: CompressionTable[ActorRef]) - extends ControlMessage with CompressionMessage + extends CompressionAdvertisement[ActorRef] /** * INTERNAL API @@ -38,7 +44,7 @@ object CompressionProtocol { * Sent by the "receiving" node after allocating a compression id to a given class manifest */ private[remote] final case class ClassManifestCompressionAdvertisement(from: UniqueAddress, table: CompressionTable[String]) - extends ControlMessage with CompressionMessage + extends CompressionAdvertisement[String] /** * INTERNAL API diff --git a/akka-remote/src/main/scala/akka/remote/artery/compress/CompressionTable.scala b/akka-remote/src/main/scala/akka/remote/artery/compress/CompressionTable.scala index 244d025c96..70bbdff2b3 100644 --- a/akka-remote/src/main/scala/akka/remote/artery/compress/CompressionTable.scala +++ b/akka-remote/src/main/scala/akka/remote/artery/compress/CompressionTable.scala @@ -8,7 +8,7 @@ import java.util import java.util.Comparator /** INTERNAL API: Versioned compression table to be advertised between systems */ -private[artery] final case class CompressionTable[T](version: Int, map: Map[T, Int]) { +private[remote] final case class CompressionTable[T](version: Int, map: Map[T, Int]) { import CompressionTable.NotCompressedId def compress(value: T): Int = @@ -20,7 +20,7 @@ private[artery] final case class CompressionTable[T](version: Int, map: Map[T, I def invert: DecompressionTable[T] = if (map.isEmpty) DecompressionTable.empty[T].copy(version = version) else { - // TODO: these are some expensive sanity checks, about the numbers being consequitive, without gaps + // TODO: these are some expensive sanity checks, about the numbers being consecutive, without gaps // TODO: we can remove them, make them re-map (not needed I believe though) val expectedGaplessSum = Integer.valueOf((map.size * (map.size + 1)) / 2) /* Dirichlet */ require(map.values.min == 0, "Compression table should start allocating from 0, yet lowest allocated id was " + map.values.min) @@ -48,7 +48,7 @@ private[artery] final case class CompressionTable[T](version: Int, map: Map[T, I } } /** INTERNAL API */ -private[artery] object CompressionTable { +private[remote] object CompressionTable { final val NotCompressedId = -1 final val CompareBy2ndValue: Comparator[(Object, Int)] = new Comparator[(Object, Int)] { diff --git a/akka-remote/src/main/scala/akka/remote/serialization/ArteryMessageSerializer.scala b/akka-remote/src/main/scala/akka/remote/serialization/ArteryMessageSerializer.scala new file mode 100644 index 0000000000..98fe74a0ad --- /dev/null +++ b/akka-remote/src/main/scala/akka/remote/serialization/ArteryMessageSerializer.scala @@ -0,0 +1,213 @@ +/** + * Copyright (C) 2009-2016 Lightbend Inc. + */ +package akka.remote.serialization + +import akka.actor.{ ActorRef, Address, ExtendedActorSystem } +import akka.protobuf.MessageLite +import akka.remote.artery.OutboundHandshake.{ HandshakeReq, HandshakeRsp } +import akka.remote.artery.compress.CompressionProtocol._ +import akka.remote.artery.compress.{ CompressionProtocol, CompressionTable } +import akka.remote.artery.{ ActorSystemTerminating, ActorSystemTerminatingAck, Quarantined, SystemMessageDelivery } +import akka.remote.{ ArteryControlFormats, MessageSerializer, UniqueAddress, WireFormats } +import akka.serialization.{ BaseSerializer, Serialization, SerializationExtension, SerializerWithStringManifest } + +/** INTERNAL API */ +private[akka] object ArteryMessageSerializer { + private val QuarantinedManifest = "a" + private val ActorSystemTerminatingManifest = "b" + private val ActorSystemTerminatingAckManifest = "c" + private val HandshakeReqManifest = "d" + private val HandshakeRspManifest = "e" + private val ActorRefCompressionAdvertisementManifest = "f" + private val ActorRefCompressionAdvertisementAckManifest = "g" + private val ClassManifestCompressionAdvertisementManifest = "h" + private val ClassManifestCompressionAdvertisementAckManifest = "i" + private val SystemMessageEnvelopeManifest = "j" + private val SystemMessageDeliveryAckManifest = "k" + private val SystemMessageDeliveryNackManifest = "l" +} + +/** INTERNAL API */ +private[akka] final class ArteryMessageSerializer(val system: ExtendedActorSystem) extends SerializerWithStringManifest with BaseSerializer { + import ArteryMessageSerializer._ + + private lazy val serialization = SerializationExtension(system) + + override def manifest(o: AnyRef): String = o match { // most frequent ones first + case _: SystemMessageDelivery.SystemMessageEnvelope ⇒ SystemMessageEnvelopeManifest + case _: SystemMessageDelivery.Ack ⇒ SystemMessageDeliveryAckManifest + case _: HandshakeReq ⇒ HandshakeReqManifest + case _: HandshakeRsp ⇒ HandshakeRspManifest + case _: SystemMessageDelivery.Nack ⇒ SystemMessageDeliveryNackManifest + case _: Quarantined ⇒ QuarantinedManifest + case _: ActorSystemTerminating ⇒ ActorSystemTerminatingManifest + case _: ActorSystemTerminatingAck ⇒ ActorSystemTerminatingAckManifest + case _: CompressionProtocol.ActorRefCompressionAdvertisement ⇒ ActorRefCompressionAdvertisementManifest + case _: CompressionProtocol.ActorRefCompressionAdvertisementAck ⇒ ActorRefCompressionAdvertisementAckManifest + case _: CompressionProtocol.ClassManifestCompressionAdvertisement ⇒ ClassManifestCompressionAdvertisementManifest + case _: CompressionProtocol.ClassManifestCompressionAdvertisementAck ⇒ ClassManifestCompressionAdvertisementAckManifest + case _ ⇒ + throw new IllegalArgumentException(s"Can't serialize object of type ${o.getClass} in [${getClass.getName}]") + } + + override def toBinary(o: AnyRef): Array[Byte] = (o match { // most frequent ones first + case env: SystemMessageDelivery.SystemMessageEnvelope ⇒ serializeSystemMessageEnvelope(env) + case SystemMessageDelivery.Ack(seqNo, from) ⇒ serializeSystemMessageDeliveryAck(seqNo, from) + case HandshakeReq(from) ⇒ serializeWithAddress(from) + case HandshakeRsp(from) ⇒ serializeWithAddress(from) + case SystemMessageDelivery.Nack(seqNo, from) ⇒ serializeSystemMessageDeliveryAck(seqNo, from) + case q: Quarantined ⇒ serializeQuarantined(q) + case ActorSystemTerminating(from) ⇒ serializeWithAddress(from) + case ActorSystemTerminatingAck(from) ⇒ serializeWithAddress(from) + case adv: ActorRefCompressionAdvertisement ⇒ serializeActorRefCompressionAdvertisement(adv) + case ActorRefCompressionAdvertisementAck(from, id) ⇒ serializeCompressionTableAdvertisementAck(from, id) + case adv: ClassManifestCompressionAdvertisement ⇒ serializeCompressionAdvertisement(adv)(identity) + case ClassManifestCompressionAdvertisementAck(from, id) ⇒ serializeCompressionTableAdvertisementAck(from, id) + }).toByteArray + + override def fromBinary(bytes: Array[Byte], manifest: String): AnyRef = manifest match { // most frequent ones first (could be made a HashMap in the future) + case SystemMessageEnvelopeManifest ⇒ deserializeSystemMessageEnvelope(bytes) + case SystemMessageDeliveryAckManifest ⇒ deserializeSystemMessageDeliveryAck(bytes, SystemMessageDelivery.Ack) + case HandshakeReqManifest ⇒ deserializeWithFromAddress(bytes, HandshakeReq) + case HandshakeRspManifest ⇒ deserializeWithFromAddress(bytes, HandshakeRsp) + case SystemMessageDeliveryNackManifest ⇒ deserializeSystemMessageDeliveryAck(bytes, SystemMessageDelivery.Nack) + case QuarantinedManifest ⇒ deserializeQuarantined(ArteryControlFormats.Quarantined.parseFrom(bytes)) + case ActorSystemTerminatingManifest ⇒ deserializeWithFromAddress(bytes, ActorSystemTerminating) + case ActorSystemTerminatingAckManifest ⇒ deserializeWithFromAddress(bytes, ActorSystemTerminatingAck) + case ActorRefCompressionAdvertisementManifest ⇒ deserializeActorRefCompressionAdvertisement(bytes) + case ActorRefCompressionAdvertisementAckManifest ⇒ deserializeCompressionTableAdvertisementAck(bytes, ActorRefCompressionAdvertisementAck) + case ClassManifestCompressionAdvertisementManifest ⇒ deserializeCompressionAdvertisement(bytes, identity, ClassManifestCompressionAdvertisement) + case ClassManifestCompressionAdvertisementAckManifest ⇒ deserializeCompressionTableAdvertisementAck(bytes, ClassManifestCompressionAdvertisementAck) + case _ ⇒ throw new IllegalArgumentException(s"Manifest '$manifest' not defined for ArteryControlMessageSerializer (serializer id $identifier)") + } + + import scala.collection.JavaConverters._ + + def serializeQuarantined(quarantined: Quarantined): ArteryControlFormats.Quarantined = + ArteryControlFormats.Quarantined.newBuilder() + .setFrom(serializeUniqueAddress(quarantined.from)) + .setTo(serializeUniqueAddress(quarantined.to)) + .build + + def deserializeQuarantined(quarantined: ArteryControlFormats.Quarantined): Quarantined = + Quarantined(deserializeUniqueAddress(quarantined.getFrom), deserializeUniqueAddress(quarantined.getTo)) + + def serializeActorRef(ref: ActorRef): String = Serialization.serializedActorPath(ref) + def deserializeActorRef(str: String): ActorRef = system.provider.resolveActorRef(str) + + def serializeActorRefCompressionAdvertisement(adv: ActorRefCompressionAdvertisement): ArteryControlFormats.CompressionTableAdvertisement = + // FIXME: is it guaranteed that idx 0 is reserved for DeadLetters? In the best case, this knowledge should be managed in only one place. + serializeCompressionAdvertisement(adv)(serializeActorRef, _ != 0 /* 0 is reserved for DeadLetters and doesn't need to be serialized explicitly */ ) + + def deserializeActorRefCompressionAdvertisement(bytes: Array[Byte]): ActorRefCompressionAdvertisement = + deserializeCompressionAdvertisement(bytes, deserializeActorRef, ActorRefCompressionAdvertisement, Seq(system.deadLetters → 0) /* add DeadLetters explicitly */ ) + + def serializeCompressionAdvertisement[T](adv: CompressionAdvertisement[T])(keySerializer: T ⇒ String, valueFilter: Int ⇒ Boolean = _ ⇒ true): ArteryControlFormats.CompressionTableAdvertisement = { + val builder = + ArteryControlFormats.CompressionTableAdvertisement.newBuilder + .setFrom(serializeUniqueAddress(adv.from)) + .setTableVersion(adv.table.version) + + adv.table.map.foreach { + case (key, value) if valueFilter(value) ⇒ + builder + .addKeys(keySerializer(key)) + .addValues(value) + case _ ⇒ + } + + builder.build + } + + def deserializeCompressionAdvertisement[T, U](bytes: Array[Byte], keyDeserializer: String ⇒ T, create: (UniqueAddress, CompressionTable[T]) ⇒ U, extraValues: Seq[(T, Int)] = Nil): U = { + val protoAdv = ArteryControlFormats.CompressionTableAdvertisement.parseFrom(bytes) + + val kvs = + protoAdv.getKeysList.asScala.map(keyDeserializer).zip( + protoAdv.getValuesList.asScala.asInstanceOf[Iterable[Int]] /* to avoid having to call toInt explicitly */ ) ++ + extraValues + + val table = CompressionTable(protoAdv.getTableVersion, kvs.toMap) + create(deserializeUniqueAddress(protoAdv.getFrom), table) + } + + def serializeCompressionTableAdvertisementAck(from: UniqueAddress, version: Int): MessageLite = + ArteryControlFormats.CompressionTableAdvertisementAck.newBuilder + .setFrom(serializeUniqueAddress(from)) + .setVersion(version) + .build() + + def deserializeCompressionTableAdvertisementAck(bytes: Array[Byte], create: (UniqueAddress, Int) ⇒ AnyRef): AnyRef = { + val msg = ArteryControlFormats.CompressionTableAdvertisementAck.parseFrom(bytes) + create(deserializeUniqueAddress(msg.getFrom), msg.getVersion) + } + + def serializeSystemMessageEnvelope(env: SystemMessageDelivery.SystemMessageEnvelope): ArteryControlFormats.SystemMessageEnvelope = { + val msg = MessageSerializer.serialize(system, env.message) + + val builder = + ArteryControlFormats.SystemMessageEnvelope.newBuilder + .setMessage(msg.getMessage) + .setSerializerId(msg.getSerializerId) + .setSeqNo(env.seqNo) + .setAckReplyTo(serializeUniqueAddress(env.ackReplyTo)) + + if (msg.hasMessageManifest) builder.setMessageManifest(msg.getMessageManifest) + + builder.build + } + def deserializeSystemMessageEnvelope(bytes: Array[Byte]): SystemMessageDelivery.SystemMessageEnvelope = { + val protoEnv = ArteryControlFormats.SystemMessageEnvelope.parseFrom(bytes) + + SystemMessageDelivery.SystemMessageEnvelope( + serialization.deserialize( + protoEnv.getMessage.toByteArray, + protoEnv.getSerializerId, + if (protoEnv.hasMessageManifest) protoEnv.getMessageManifest.toStringUtf8 else "").get, + protoEnv.getSeqNo, + deserializeUniqueAddress(protoEnv.getAckReplyTo)) + } + + def serializeSystemMessageDeliveryAck(seqNo: Long, from: UniqueAddress): ArteryControlFormats.SystemMessageDeliveryAck = + ArteryControlFormats.SystemMessageDeliveryAck.newBuilder + .setSeqNo(seqNo) + .setFrom(serializeUniqueAddress(from)) + .build + + def deserializeSystemMessageDeliveryAck(bytes: Array[Byte], create: (Long, UniqueAddress) ⇒ AnyRef): AnyRef = { + val protoAck = ArteryControlFormats.SystemMessageDeliveryAck.parseFrom(bytes) + + create(protoAck.getSeqNo, deserializeUniqueAddress(protoAck.getFrom)) + } + + def serializeWithAddress(from: UniqueAddress): MessageLite = + ArteryControlFormats.MessageWithAddress.newBuilder.setAddress(serializeUniqueAddress(from)).build() + + def deserializeWithFromAddress(bytes: Array[Byte], create: UniqueAddress ⇒ AnyRef): AnyRef = + create(deserializeUniqueAddress(ArteryControlFormats.MessageWithAddress.parseFrom(bytes).getAddress)) + + def serializeUniqueAddress(address: UniqueAddress): ArteryControlFormats.UniqueAddress = + ArteryControlFormats.UniqueAddress.newBuilder() + .setAddress(serializeAddress(address.address)) + .setUid(address.uid) + .build() + + def deserializeUniqueAddress(address: ArteryControlFormats.UniqueAddress): UniqueAddress = + UniqueAddress(deserializeAddress(address.getAddress), address.getUid) + + def serializeAddress(address: Address): ArteryControlFormats.Address = + address match { + case Address(protocol, system, Some(host), Some(port)) ⇒ + ArteryControlFormats.Address.newBuilder() + .setProtocol(protocol) + .setSystem(system) + .setHostname(host) + .setPort(port) + .build() + case _ ⇒ throw new IllegalArgumentException(s"Address [$address] could not be serialized: host or port missing.") + } + + def deserializeAddress(address: ArteryControlFormats.Address): Address = + Address(address.getProtocol, address.getSystem, address.getHostname, address.getPort) +} \ No newline at end of file diff --git a/akka-remote/src/test/scala/akka/remote/artery/InboundControlJunctionSpec.scala b/akka-remote/src/test/scala/akka/remote/artery/InboundControlJunctionSpec.scala index ab85391a90..44e3a26692 100644 --- a/akka-remote/src/test/scala/akka/remote/artery/InboundControlJunctionSpec.scala +++ b/akka-remote/src/test/scala/akka/remote/artery/InboundControlJunctionSpec.scala @@ -20,12 +20,19 @@ import akka.testkit.TestProbe import akka.util.OptionVal object InboundControlJunctionSpec { - case object Control1 extends ControlMessage - case object Control2 extends ControlMessage - case object Control3 extends ControlMessage + trait TestControlMessage extends ControlMessage + + case object Control1 extends TestControlMessage + case object Control2 extends TestControlMessage + case object Control3 extends TestControlMessage } -class InboundControlJunctionSpec extends AkkaSpec with ImplicitSender { +class InboundControlJunctionSpec + extends AkkaSpec(""" + akka.actor.serialization-bindings { + "akka.remote.artery.InboundControlJunctionSpec$TestControlMessage" = java + } + """) with ImplicitSender { import InboundControlJunctionSpec._ val matSettings = ActorMaterializerSettings(system).withFuzzing(true) diff --git a/akka-remote/src/test/scala/akka/remote/serialization/ArteryMessageSerializerSpec.scala b/akka-remote/src/test/scala/akka/remote/serialization/ArteryMessageSerializerSpec.scala new file mode 100644 index 0000000000..34bc13b1de --- /dev/null +++ b/akka-remote/src/test/scala/akka/remote/serialization/ArteryMessageSerializerSpec.scala @@ -0,0 +1,71 @@ +/** + * Copyright (C) 2009-2016 Lightbend Inc. + */ + +package akka.remote.serialization + +import akka.actor._ +import akka.remote.UniqueAddress +import akka.remote.artery.OutboundHandshake.{ HandshakeReq, HandshakeRsp } +import akka.remote.artery.compress.CompressionProtocol.{ ActorRefCompressionAdvertisement, ActorRefCompressionAdvertisementAck, ClassManifestCompressionAdvertisement, ClassManifestCompressionAdvertisementAck } +import akka.remote.artery.compress.CompressionTable +import akka.remote.artery.{ ActorSystemTerminating, ActorSystemTerminatingAck, Quarantined, SystemMessageDelivery } +import akka.serialization.SerializationExtension +import akka.testkit.AkkaSpec + +class ArteryMessageSerializerSpec extends AkkaSpec { + "ArteryMessageSerializer" must { + val actorA = system.actorOf(Props.empty) + val actorB = system.actorOf(Props.empty) + + Seq( + "Quarantined" → Quarantined(uniqueAddress(), uniqueAddress()), + "ActorSystemTerminating" → ActorSystemTerminating(uniqueAddress()), + "ActorSystemTerminatingAck" → ActorSystemTerminatingAck(uniqueAddress()), + "HandshakeReq" → HandshakeReq(uniqueAddress()), + "HandshakeRsp" → HandshakeRsp(uniqueAddress()), + "ActorRefCompressionAdvertisement" → ActorRefCompressionAdvertisement(uniqueAddress(), CompressionTable(123, Map(actorA → 123, actorB → 456, system.deadLetters → 0))), + "ActorRefCompressionAdvertisementAck" → ActorRefCompressionAdvertisementAck(uniqueAddress(), 23), + "ClassManifestCompressionAdvertisement" → ClassManifestCompressionAdvertisement(uniqueAddress(), CompressionTable(42, Map("a" → 535, "b" → 23))), + "ClassManifestCompressionAdvertisementAck" → ClassManifestCompressionAdvertisementAck(uniqueAddress(), 23), + "SystemMessageDelivery.SystemMessageEnvelop" → SystemMessageDelivery.SystemMessageEnvelope("test", 1234567890123L, uniqueAddress()), + "SystemMessageDelivery.Ack" → SystemMessageDelivery.Ack(98765432109876L, uniqueAddress()), + "SystemMessageDelivery.Nack" → SystemMessageDelivery.Nack(98765432109876L, uniqueAddress()) + ).foreach { + case (scenario, item) ⇒ + s"resolve serializer for $scenario" in { + val serializer = SerializationExtension(system) + serializer.serializerFor(item.getClass).getClass should ===(classOf[ArteryMessageSerializer]) + } + + s"serialize and de-serialize $scenario" in { + verifySerialization(item) + } + } + + "not support UniqueAddresses without host/port set" in pending + + "reject invalid manifest" in { + intercept[IllegalArgumentException] { + val serializer = new ArteryMessageSerializer(system.asInstanceOf[ExtendedActorSystem]) + serializer.manifest("INVALID") + } + } + + "reject deserialization with invalid manifest" in { + intercept[IllegalArgumentException] { + val serializer = new ArteryMessageSerializer(system.asInstanceOf[ExtendedActorSystem]) + serializer.fromBinary(Array.empty[Byte], "INVALID") + } + } + + def verifySerialization(msg: AnyRef): Unit = { + val serializer = new ArteryMessageSerializer(system.asInstanceOf[ExtendedActorSystem]) + serializer.fromBinary(serializer.toBinary(msg), serializer.manifest(msg)) should ===(msg) + } + + def uniqueAddress(): UniqueAddress = + UniqueAddress(Address("abc", "def", "host", 12345), 2342) + } +} +