!rem, clu, mul #3154 Upgrade protobuf to 2.5.0 and add an SBT task
* Added an SBT task to compile protobuf files with protoc * Upgraded protobuf to 2.5.0 which is the current stable
This commit is contained in:
parent
9456a081b7
commit
2876460dcb
13 changed files with 8484 additions and 4628 deletions
File diff suppressed because it is too large
Load diff
|
|
@ -5,14 +5,6 @@
|
|||
option java_package = "akka.remote.testconductor";
|
||||
option optimize_for = SPEED;
|
||||
|
||||
/******************************************
|
||||
Compile with:
|
||||
cd ./akka-multi-node-testkit/src/main/protocol
|
||||
protoc TestConductorProtocol.proto --java_out ../java
|
||||
cd ../../../..
|
||||
./scripts/fix-protobuf.sh
|
||||
*******************************************/
|
||||
|
||||
message Wrapper {
|
||||
optional Hello hello = 1;
|
||||
optional EnterBarrier barrier = 2;
|
||||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -5,14 +5,6 @@
|
|||
option java_package = "akka.remote";
|
||||
option optimize_for = SPEED;
|
||||
|
||||
/******************************************
|
||||
Compile with:
|
||||
cd ./akka-remote/src/main/protocol
|
||||
protoc ContainerFormats.proto --java_out ../java
|
||||
cd ../../../..
|
||||
./scripts/fix-protobuf.sh
|
||||
*******************************************/
|
||||
|
||||
/******************************************
|
||||
ActorSelection related formats
|
||||
*******************************************/
|
||||
|
|
@ -5,14 +5,6 @@
|
|||
option java_package = "akka.remote";
|
||||
option optimize_for = SPEED;
|
||||
|
||||
/******************************************
|
||||
Compile with:
|
||||
cd ./akka-remote/src/main/protocol
|
||||
protoc WireFormats.proto --java_out ../java
|
||||
cd ../../../..
|
||||
./scripts/fix-protobuf.sh
|
||||
*******************************************/
|
||||
|
||||
/******************************************
|
||||
* Remoting message formats
|
||||
******************************************/
|
||||
|
|
@ -3,8 +3,6 @@
|
|||
|
||||
package akka.remote;
|
||||
|
||||
import com.google.protobuf.AbstractMessage;
|
||||
|
||||
public final class ProtobufProtocol {
|
||||
private ProtobufProtocol() {}
|
||||
public static void registerAllExtensions(
|
||||
|
|
@ -14,25 +12,52 @@ public final class ProtobufProtocol {
|
|||
extends com.google.protobuf.MessageOrBuilder {
|
||||
|
||||
// required uint64 id = 1;
|
||||
/**
|
||||
* <code>required uint64 id = 1;</code>
|
||||
*/
|
||||
boolean hasId();
|
||||
/**
|
||||
* <code>required uint64 id = 1;</code>
|
||||
*/
|
||||
long getId();
|
||||
|
||||
// required string name = 2;
|
||||
/**
|
||||
* <code>required string name = 2;</code>
|
||||
*/
|
||||
boolean hasName();
|
||||
String getName();
|
||||
/**
|
||||
* <code>required string name = 2;</code>
|
||||
*/
|
||||
java.lang.String getName();
|
||||
/**
|
||||
* <code>required string name = 2;</code>
|
||||
*/
|
||||
com.google.protobuf.ByteString
|
||||
getNameBytes();
|
||||
|
||||
// required bool status = 3;
|
||||
/**
|
||||
* <code>required bool status = 3;</code>
|
||||
*/
|
||||
boolean hasStatus();
|
||||
/**
|
||||
* <code>required bool status = 3;</code>
|
||||
*/
|
||||
boolean getStatus();
|
||||
}
|
||||
/**
|
||||
* Protobuf type {@code MyMessage}
|
||||
*/
|
||||
public static final class MyMessage extends
|
||||
com.google.protobuf.GeneratedMessage
|
||||
implements MyMessageOrBuilder {
|
||||
// Use MyMessage.newBuilder() to construct.
|
||||
private MyMessage(Builder builder) {
|
||||
private MyMessage(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
|
||||
super(builder);
|
||||
this.unknownFields = builder.getUnknownFields();
|
||||
}
|
||||
private MyMessage(boolean noInit) {}
|
||||
private MyMessage(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
|
||||
|
||||
private static final MyMessage defaultInstance;
|
||||
public static MyMessage getDefaultInstance() {
|
||||
|
|
@ -43,23 +68,102 @@ public final class ProtobufProtocol {
|
|||
return defaultInstance;
|
||||
}
|
||||
|
||||
private final com.google.protobuf.UnknownFieldSet unknownFields;
|
||||
@java.lang.Override
|
||||
public final com.google.protobuf.UnknownFieldSet
|
||||
getUnknownFields() {
|
||||
return this.unknownFields;
|
||||
}
|
||||
private MyMessage(
|
||||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
initFields();
|
||||
int mutable_bitField0_ = 0;
|
||||
com.google.protobuf.UnknownFieldSet.Builder unknownFields =
|
||||
com.google.protobuf.UnknownFieldSet.newBuilder();
|
||||
try {
|
||||
boolean done = false;
|
||||
while (!done) {
|
||||
int tag = input.readTag();
|
||||
switch (tag) {
|
||||
case 0:
|
||||
done = true;
|
||||
break;
|
||||
default: {
|
||||
if (!parseUnknownField(input, unknownFields,
|
||||
extensionRegistry, tag)) {
|
||||
done = true;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 8: {
|
||||
bitField0_ |= 0x00000001;
|
||||
id_ = input.readUInt64();
|
||||
break;
|
||||
}
|
||||
case 18: {
|
||||
bitField0_ |= 0x00000002;
|
||||
name_ = input.readBytes();
|
||||
break;
|
||||
}
|
||||
case 24: {
|
||||
bitField0_ |= 0x00000004;
|
||||
status_ = input.readBool();
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
|
||||
throw e.setUnfinishedMessage(this);
|
||||
} catch (java.io.IOException e) {
|
||||
throw new com.google.protobuf.InvalidProtocolBufferException(
|
||||
e.getMessage()).setUnfinishedMessage(this);
|
||||
} finally {
|
||||
this.unknownFields = unknownFields.build();
|
||||
makeExtensionsImmutable();
|
||||
}
|
||||
}
|
||||
public static final com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptor() {
|
||||
return ProtobufProtocol.internal_static_akka_actor_MyMessage_descriptor;
|
||||
return akka.remote.ProtobufProtocol.internal_static_MyMessage_descriptor;
|
||||
}
|
||||
|
||||
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return ProtobufProtocol.internal_static_akka_actor_MyMessage_fieldAccessorTable;
|
||||
return akka.remote.ProtobufProtocol.internal_static_MyMessage_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
akka.remote.ProtobufProtocol.MyMessage.class, akka.remote.ProtobufProtocol.MyMessage.Builder.class);
|
||||
}
|
||||
|
||||
public static com.google.protobuf.Parser<MyMessage> PARSER =
|
||||
new com.google.protobuf.AbstractParser<MyMessage>() {
|
||||
public MyMessage parsePartialFrom(
|
||||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return new MyMessage(input, extensionRegistry);
|
||||
}
|
||||
};
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Parser<MyMessage> getParserForType() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
private int bitField0_;
|
||||
// required uint64 id = 1;
|
||||
public static final int ID_FIELD_NUMBER = 1;
|
||||
private long id_;
|
||||
/**
|
||||
* <code>required uint64 id = 1;</code>
|
||||
*/
|
||||
public boolean hasId() {
|
||||
return ((bitField0_ & 0x00000001) == 0x00000001);
|
||||
}
|
||||
/**
|
||||
* <code>required uint64 id = 1;</code>
|
||||
*/
|
||||
public long getId() {
|
||||
return id_;
|
||||
}
|
||||
|
|
@ -67,28 +171,39 @@ public final class ProtobufProtocol {
|
|||
// required string name = 2;
|
||||
public static final int NAME_FIELD_NUMBER = 2;
|
||||
private java.lang.Object name_;
|
||||
/**
|
||||
* <code>required string name = 2;</code>
|
||||
*/
|
||||
public boolean hasName() {
|
||||
return ((bitField0_ & 0x00000002) == 0x00000002);
|
||||
}
|
||||
public String getName() {
|
||||
/**
|
||||
* <code>required string name = 2;</code>
|
||||
*/
|
||||
public java.lang.String getName() {
|
||||
java.lang.Object ref = name_;
|
||||
if (ref instanceof String) {
|
||||
return (String) ref;
|
||||
if (ref instanceof java.lang.String) {
|
||||
return (java.lang.String) ref;
|
||||
} else {
|
||||
com.google.protobuf.ByteString bs =
|
||||
com.google.protobuf.ByteString bs =
|
||||
(com.google.protobuf.ByteString) ref;
|
||||
String s = bs.toStringUtf8();
|
||||
if (com.google.protobuf.Internal.isValidUtf8(bs)) {
|
||||
java.lang.String s = bs.toStringUtf8();
|
||||
if (bs.isValidUtf8()) {
|
||||
name_ = s;
|
||||
}
|
||||
return s;
|
||||
}
|
||||
}
|
||||
private com.google.protobuf.ByteString getNameBytes() {
|
||||
/**
|
||||
* <code>required string name = 2;</code>
|
||||
*/
|
||||
public com.google.protobuf.ByteString
|
||||
getNameBytes() {
|
||||
java.lang.Object ref = name_;
|
||||
if (ref instanceof String) {
|
||||
com.google.protobuf.ByteString b =
|
||||
com.google.protobuf.ByteString.copyFromUtf8((String) ref);
|
||||
if (ref instanceof java.lang.String) {
|
||||
com.google.protobuf.ByteString b =
|
||||
com.google.protobuf.ByteString.copyFromUtf8(
|
||||
(java.lang.String) ref);
|
||||
name_ = b;
|
||||
return b;
|
||||
} else {
|
||||
|
|
@ -99,9 +214,15 @@ public final class ProtobufProtocol {
|
|||
// required bool status = 3;
|
||||
public static final int STATUS_FIELD_NUMBER = 3;
|
||||
private boolean status_;
|
||||
/**
|
||||
* <code>required bool status = 3;</code>
|
||||
*/
|
||||
public boolean hasStatus() {
|
||||
return ((bitField0_ & 0x00000004) == 0x00000004);
|
||||
}
|
||||
/**
|
||||
* <code>required bool status = 3;</code>
|
||||
*/
|
||||
public boolean getStatus() {
|
||||
return status_;
|
||||
}
|
||||
|
|
@ -177,76 +298,62 @@ public final class ProtobufProtocol {
|
|||
return super.writeReplace();
|
||||
}
|
||||
|
||||
public static ProtobufProtocol.MyMessage parseFrom(
|
||||
public static akka.remote.ProtobufProtocol.MyMessage parseFrom(
|
||||
com.google.protobuf.ByteString data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return newBuilder().mergeFrom(data).buildParsed();
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static ProtobufProtocol.MyMessage parseFrom(
|
||||
public static akka.remote.ProtobufProtocol.MyMessage parseFrom(
|
||||
com.google.protobuf.ByteString data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return newBuilder().mergeFrom(data, extensionRegistry)
|
||||
.buildParsed();
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static ProtobufProtocol.MyMessage parseFrom(byte[] data)
|
||||
public static akka.remote.ProtobufProtocol.MyMessage parseFrom(byte[] data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return newBuilder().mergeFrom(data).buildParsed();
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static ProtobufProtocol.MyMessage parseFrom(
|
||||
public static akka.remote.ProtobufProtocol.MyMessage parseFrom(
|
||||
byte[] data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return newBuilder().mergeFrom(data, extensionRegistry)
|
||||
.buildParsed();
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static ProtobufProtocol.MyMessage parseFrom(java.io.InputStream input)
|
||||
public static akka.remote.ProtobufProtocol.MyMessage parseFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return newBuilder().mergeFrom(input).buildParsed();
|
||||
return PARSER.parseFrom(input);
|
||||
}
|
||||
public static ProtobufProtocol.MyMessage parseFrom(
|
||||
public static akka.remote.ProtobufProtocol.MyMessage parseFrom(
|
||||
java.io.InputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws java.io.IOException {
|
||||
return newBuilder().mergeFrom(input, extensionRegistry)
|
||||
.buildParsed();
|
||||
return PARSER.parseFrom(input, extensionRegistry);
|
||||
}
|
||||
public static ProtobufProtocol.MyMessage parseDelimitedFrom(java.io.InputStream input)
|
||||
public static akka.remote.ProtobufProtocol.MyMessage parseDelimitedFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
Builder builder = newBuilder();
|
||||
if (builder.mergeDelimitedFrom(input)) {
|
||||
return builder.buildParsed();
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
return PARSER.parseDelimitedFrom(input);
|
||||
}
|
||||
public static ProtobufProtocol.MyMessage parseDelimitedFrom(
|
||||
public static akka.remote.ProtobufProtocol.MyMessage parseDelimitedFrom(
|
||||
java.io.InputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws java.io.IOException {
|
||||
Builder builder = newBuilder();
|
||||
if (builder.mergeDelimitedFrom(input, extensionRegistry)) {
|
||||
return builder.buildParsed();
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
return PARSER.parseDelimitedFrom(input, extensionRegistry);
|
||||
}
|
||||
public static ProtobufProtocol.MyMessage parseFrom(
|
||||
public static akka.remote.ProtobufProtocol.MyMessage parseFrom(
|
||||
com.google.protobuf.CodedInputStream input)
|
||||
throws java.io.IOException {
|
||||
return newBuilder().mergeFrom(input).buildParsed();
|
||||
return PARSER.parseFrom(input);
|
||||
}
|
||||
public static ProtobufProtocol.MyMessage parseFrom(
|
||||
public static akka.remote.ProtobufProtocol.MyMessage parseFrom(
|
||||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws java.io.IOException {
|
||||
return newBuilder().mergeFrom(input, extensionRegistry)
|
||||
.buildParsed();
|
||||
return PARSER.parseFrom(input, extensionRegistry);
|
||||
}
|
||||
|
||||
public static Builder newBuilder() { return Builder.create(); }
|
||||
public Builder newBuilderForType() { return newBuilder(); }
|
||||
public static Builder newBuilder(ProtobufProtocol.MyMessage prototype) {
|
||||
public static Builder newBuilder(akka.remote.ProtobufProtocol.MyMessage prototype) {
|
||||
return newBuilder().mergeFrom(prototype);
|
||||
}
|
||||
public Builder toBuilder() { return newBuilder(this); }
|
||||
|
|
@ -257,25 +364,31 @@ public final class ProtobufProtocol {
|
|||
Builder builder = new Builder(parent);
|
||||
return builder;
|
||||
}
|
||||
/**
|
||||
* Protobuf type {@code MyMessage}
|
||||
*/
|
||||
public static final class Builder extends
|
||||
com.google.protobuf.GeneratedMessage.Builder<Builder>
|
||||
implements ProtobufProtocol.MyMessageOrBuilder {
|
||||
implements akka.remote.ProtobufProtocol.MyMessageOrBuilder {
|
||||
public static final com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptor() {
|
||||
return ProtobufProtocol.internal_static_akka_actor_MyMessage_descriptor;
|
||||
return akka.remote.ProtobufProtocol.internal_static_MyMessage_descriptor;
|
||||
}
|
||||
|
||||
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return ProtobufProtocol.internal_static_akka_actor_MyMessage_fieldAccessorTable;
|
||||
return akka.remote.ProtobufProtocol.internal_static_MyMessage_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
akka.remote.ProtobufProtocol.MyMessage.class, akka.remote.ProtobufProtocol.MyMessage.Builder.class);
|
||||
}
|
||||
|
||||
// Construct using akka.actor.ProtobufProtocol.MyMessage.newBuilder()
|
||||
// Construct using akka.remote.ProtobufProtocol.MyMessage.newBuilder()
|
||||
private Builder() {
|
||||
maybeForceBuilderInitialization();
|
||||
}
|
||||
|
||||
private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) {
|
||||
private Builder(
|
||||
com.google.protobuf.GeneratedMessage.BuilderParent parent) {
|
||||
super(parent);
|
||||
maybeForceBuilderInitialization();
|
||||
}
|
||||
|
|
@ -304,33 +417,23 @@ public final class ProtobufProtocol {
|
|||
|
||||
public com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptorForType() {
|
||||
return ProtobufProtocol.MyMessage.getDescriptor();
|
||||
return akka.remote.ProtobufProtocol.internal_static_MyMessage_descriptor;
|
||||
}
|
||||
|
||||
public ProtobufProtocol.MyMessage getDefaultInstanceForType() {
|
||||
return ProtobufProtocol.MyMessage.getDefaultInstance();
|
||||
public akka.remote.ProtobufProtocol.MyMessage getDefaultInstanceForType() {
|
||||
return akka.remote.ProtobufProtocol.MyMessage.getDefaultInstance();
|
||||
}
|
||||
|
||||
public ProtobufProtocol.MyMessage build() {
|
||||
ProtobufProtocol.MyMessage result = buildPartial();
|
||||
public akka.remote.ProtobufProtocol.MyMessage build() {
|
||||
akka.remote.ProtobufProtocol.MyMessage result = buildPartial();
|
||||
if (!result.isInitialized()) {
|
||||
throw AbstractMessage.Builder.newUninitializedMessageException(result);
|
||||
throw newUninitializedMessageException(result);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
private ProtobufProtocol.MyMessage buildParsed()
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
ProtobufProtocol.MyMessage result = buildPartial();
|
||||
if (!result.isInitialized()) {
|
||||
throw AbstractMessage.Builder.newUninitializedMessageException(
|
||||
result).asInvalidProtocolBufferException();
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
public ProtobufProtocol.MyMessage buildPartial() {
|
||||
ProtobufProtocol.MyMessage result = new ProtobufProtocol.MyMessage(this);
|
||||
public akka.remote.ProtobufProtocol.MyMessage buildPartial() {
|
||||
akka.remote.ProtobufProtocol.MyMessage result = new akka.remote.ProtobufProtocol.MyMessage(this);
|
||||
int from_bitField0_ = bitField0_;
|
||||
int to_bitField0_ = 0;
|
||||
if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
|
||||
|
|
@ -351,21 +454,23 @@ public final class ProtobufProtocol {
|
|||
}
|
||||
|
||||
public Builder mergeFrom(com.google.protobuf.Message other) {
|
||||
if (other instanceof ProtobufProtocol.MyMessage) {
|
||||
return mergeFrom((ProtobufProtocol.MyMessage)other);
|
||||
if (other instanceof akka.remote.ProtobufProtocol.MyMessage) {
|
||||
return mergeFrom((akka.remote.ProtobufProtocol.MyMessage)other);
|
||||
} else {
|
||||
super.mergeFrom(other);
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
public Builder mergeFrom(ProtobufProtocol.MyMessage other) {
|
||||
if (other == ProtobufProtocol.MyMessage.getDefaultInstance()) return this;
|
||||
public Builder mergeFrom(akka.remote.ProtobufProtocol.MyMessage other) {
|
||||
if (other == akka.remote.ProtobufProtocol.MyMessage.getDefaultInstance()) return this;
|
||||
if (other.hasId()) {
|
||||
setId(other.getId());
|
||||
}
|
||||
if (other.hasName()) {
|
||||
setName(other.getName());
|
||||
bitField0_ |= 0x00000002;
|
||||
name_ = other.name_;
|
||||
onChanged();
|
||||
}
|
||||
if (other.hasStatus()) {
|
||||
setStatus(other.getStatus());
|
||||
|
|
@ -376,15 +481,15 @@ public final class ProtobufProtocol {
|
|||
|
||||
public final boolean isInitialized() {
|
||||
if (!hasId()) {
|
||||
|
||||
|
||||
return false;
|
||||
}
|
||||
if (!hasName()) {
|
||||
|
||||
|
||||
return false;
|
||||
}
|
||||
if (!hasStatus()) {
|
||||
|
||||
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
|
|
@ -394,60 +499,47 @@ public final class ProtobufProtocol {
|
|||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws java.io.IOException {
|
||||
com.google.protobuf.UnknownFieldSet.Builder unknownFields =
|
||||
com.google.protobuf.UnknownFieldSet.newBuilder(
|
||||
this.getUnknownFields());
|
||||
while (true) {
|
||||
int tag = input.readTag();
|
||||
switch (tag) {
|
||||
case 0:
|
||||
this.setUnknownFields(unknownFields.build());
|
||||
onChanged();
|
||||
return this;
|
||||
default: {
|
||||
if (!parseUnknownField(input, unknownFields,
|
||||
extensionRegistry, tag)) {
|
||||
this.setUnknownFields(unknownFields.build());
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 8: {
|
||||
bitField0_ |= 0x00000001;
|
||||
id_ = input.readUInt64();
|
||||
break;
|
||||
}
|
||||
case 18: {
|
||||
bitField0_ |= 0x00000002;
|
||||
name_ = input.readBytes();
|
||||
break;
|
||||
}
|
||||
case 24: {
|
||||
bitField0_ |= 0x00000004;
|
||||
status_ = input.readBool();
|
||||
break;
|
||||
}
|
||||
akka.remote.ProtobufProtocol.MyMessage parsedMessage = null;
|
||||
try {
|
||||
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
|
||||
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
|
||||
parsedMessage = (akka.remote.ProtobufProtocol.MyMessage) e.getUnfinishedMessage();
|
||||
throw e;
|
||||
} finally {
|
||||
if (parsedMessage != null) {
|
||||
mergeFrom(parsedMessage);
|
||||
}
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
private int bitField0_;
|
||||
|
||||
// required uint64 id = 1;
|
||||
private long id_ ;
|
||||
/**
|
||||
* <code>required uint64 id = 1;</code>
|
||||
*/
|
||||
public boolean hasId() {
|
||||
return ((bitField0_ & 0x00000001) == 0x00000001);
|
||||
}
|
||||
/**
|
||||
* <code>required uint64 id = 1;</code>
|
||||
*/
|
||||
public long getId() {
|
||||
return id_;
|
||||
}
|
||||
/**
|
||||
* <code>required uint64 id = 1;</code>
|
||||
*/
|
||||
public Builder setId(long value) {
|
||||
bitField0_ |= 0x00000001;
|
||||
id_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>required uint64 id = 1;</code>
|
||||
*/
|
||||
public Builder clearId() {
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
id_ = 0L;
|
||||
|
|
@ -457,20 +549,47 @@ public final class ProtobufProtocol {
|
|||
|
||||
// required string name = 2;
|
||||
private java.lang.Object name_ = "";
|
||||
/**
|
||||
* <code>required string name = 2;</code>
|
||||
*/
|
||||
public boolean hasName() {
|
||||
return ((bitField0_ & 0x00000002) == 0x00000002);
|
||||
}
|
||||
public String getName() {
|
||||
/**
|
||||
* <code>required string name = 2;</code>
|
||||
*/
|
||||
public java.lang.String getName() {
|
||||
java.lang.Object ref = name_;
|
||||
if (!(ref instanceof String)) {
|
||||
String s = ((com.google.protobuf.ByteString) ref).toStringUtf8();
|
||||
if (!(ref instanceof java.lang.String)) {
|
||||
java.lang.String s = ((com.google.protobuf.ByteString) ref)
|
||||
.toStringUtf8();
|
||||
name_ = s;
|
||||
return s;
|
||||
} else {
|
||||
return (String) ref;
|
||||
return (java.lang.String) ref;
|
||||
}
|
||||
}
|
||||
public Builder setName(String value) {
|
||||
/**
|
||||
* <code>required string name = 2;</code>
|
||||
*/
|
||||
public com.google.protobuf.ByteString
|
||||
getNameBytes() {
|
||||
java.lang.Object ref = name_;
|
||||
if (ref instanceof String) {
|
||||
com.google.protobuf.ByteString b =
|
||||
com.google.protobuf.ByteString.copyFromUtf8(
|
||||
(java.lang.String) ref);
|
||||
name_ = b;
|
||||
return b;
|
||||
} else {
|
||||
return (com.google.protobuf.ByteString) ref;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>required string name = 2;</code>
|
||||
*/
|
||||
public Builder setName(
|
||||
java.lang.String value) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
|
|
@ -479,32 +598,55 @@ public final class ProtobufProtocol {
|
|||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>required string name = 2;</code>
|
||||
*/
|
||||
public Builder clearName() {
|
||||
bitField0_ = (bitField0_ & ~0x00000002);
|
||||
name_ = getDefaultInstance().getName();
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
void setName(com.google.protobuf.ByteString value) {
|
||||
bitField0_ |= 0x00000002;
|
||||
/**
|
||||
* <code>required string name = 2;</code>
|
||||
*/
|
||||
public Builder setNameBytes(
|
||||
com.google.protobuf.ByteString value) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
bitField0_ |= 0x00000002;
|
||||
name_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
|
||||
// required bool status = 3;
|
||||
private boolean status_ ;
|
||||
/**
|
||||
* <code>required bool status = 3;</code>
|
||||
*/
|
||||
public boolean hasStatus() {
|
||||
return ((bitField0_ & 0x00000004) == 0x00000004);
|
||||
}
|
||||
/**
|
||||
* <code>required bool status = 3;</code>
|
||||
*/
|
||||
public boolean getStatus() {
|
||||
return status_;
|
||||
}
|
||||
/**
|
||||
* <code>required bool status = 3;</code>
|
||||
*/
|
||||
public Builder setStatus(boolean value) {
|
||||
bitField0_ |= 0x00000004;
|
||||
status_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>required bool status = 3;</code>
|
||||
*/
|
||||
public Builder clearStatus() {
|
||||
bitField0_ = (bitField0_ & ~0x00000004);
|
||||
status_ = false;
|
||||
|
|
@ -512,7 +654,7 @@ public final class ProtobufProtocol {
|
|||
return this;
|
||||
}
|
||||
|
||||
// @@protoc_insertion_point(builder_scope:akka.actor.MyMessage)
|
||||
// @@protoc_insertion_point(builder_scope:MyMessage)
|
||||
}
|
||||
|
||||
static {
|
||||
|
|
@ -520,14 +662,14 @@ public final class ProtobufProtocol {
|
|||
defaultInstance.initFields();
|
||||
}
|
||||
|
||||
// @@protoc_insertion_point(class_scope:akka.actor.MyMessage)
|
||||
// @@protoc_insertion_point(class_scope:MyMessage)
|
||||
}
|
||||
|
||||
private static com.google.protobuf.Descriptors.Descriptor
|
||||
internal_static_akka_actor_MyMessage_descriptor;
|
||||
internal_static_MyMessage_descriptor;
|
||||
private static
|
||||
com.google.protobuf.GeneratedMessage.FieldAccessorTable
|
||||
internal_static_akka_actor_MyMessage_fieldAccessorTable;
|
||||
internal_static_MyMessage_fieldAccessorTable;
|
||||
|
||||
public static com.google.protobuf.Descriptors.FileDescriptor
|
||||
getDescriptor() {
|
||||
|
|
@ -537,23 +679,21 @@ public final class ProtobufProtocol {
|
|||
descriptor;
|
||||
static {
|
||||
java.lang.String[] descriptorData = {
|
||||
"\n\026ProtobufProtocol.proto\022\nakka.actor\"5\n\t" +
|
||||
"MyMessage\022\n\n\002id\030\001 \002(\004\022\014\n\004name\030\002 \002(\t\022\016\n\006s" +
|
||||
"tatus\030\003 \002(\010"
|
||||
"\n\026ProtobufProtocol.proto\"5\n\tMyMessage\022\n\n" +
|
||||
"\002id\030\001 \002(\004\022\014\n\004name\030\002 \002(\t\022\016\n\006status\030\003 \002(\010B" +
|
||||
"\r\n\013akka.remote"
|
||||
};
|
||||
com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner =
|
||||
new com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner() {
|
||||
public com.google.protobuf.ExtensionRegistry assignDescriptors(
|
||||
com.google.protobuf.Descriptors.FileDescriptor root) {
|
||||
descriptor = root;
|
||||
internal_static_akka_actor_MyMessage_descriptor =
|
||||
internal_static_MyMessage_descriptor =
|
||||
getDescriptor().getMessageTypes().get(0);
|
||||
internal_static_akka_actor_MyMessage_fieldAccessorTable = new
|
||||
internal_static_MyMessage_fieldAccessorTable = new
|
||||
com.google.protobuf.GeneratedMessage.FieldAccessorTable(
|
||||
internal_static_akka_actor_MyMessage_descriptor,
|
||||
new java.lang.String[] { "Id", "Name", "Status", },
|
||||
ProtobufProtocol.MyMessage.class,
|
||||
ProtobufProtocol.MyMessage.Builder.class);
|
||||
internal_static_MyMessage_descriptor,
|
||||
new java.lang.String[] { "Id", "Name", "Status", });
|
||||
return null;
|
||||
}
|
||||
};
|
||||
|
|
|
|||
12
akka-remote/src/test/protobuf/ProtobufProtocol.proto
Normal file
12
akka-remote/src/test/protobuf/ProtobufProtocol.proto
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
/**
|
||||
* Copyright (C) 2009-2013 Typesafe Inc. <http://www.typesafe.com>
|
||||
*/
|
||||
|
||||
option java_package = "akka.remote";
|
||||
|
||||
message MyMessage {
|
||||
required uint64 id = 1;
|
||||
required string name = 2;
|
||||
required bool status = 3;
|
||||
}
|
||||
|
||||
|
|
@ -1,20 +0,0 @@
|
|||
/**
|
||||
* Copyright (C) 2009-2013 Typesafe Inc. <http://www.typesafe.com>
|
||||
*/
|
||||
|
||||
package akka.actor;
|
||||
|
||||
/******************************************
|
||||
Compile with:
|
||||
cd ./akka-remote/src/test/protocol
|
||||
protoc ProtobufProtocol.proto --java_out ../java
|
||||
cd ../../../..
|
||||
./scripts/fix-protobuf.sh
|
||||
*******************************************/
|
||||
|
||||
message MyMessage {
|
||||
required uint64 id = 1;
|
||||
required string name = 2;
|
||||
required bool status = 3;
|
||||
}
|
||||
|
||||
|
|
@ -16,12 +16,12 @@
|
|||
<osgi.version>4.2.0</osgi.version>
|
||||
<paxexam.version>2.6.0</paxexam.version>
|
||||
<paxswissbox.version>1.6.0</paxswissbox.version>
|
||||
<protobuf.version>2.4.1</protobuf.version>
|
||||
<protobuf.version>2.5.0</protobuf.version>
|
||||
<scala.version>2.10.1</scala.version>
|
||||
<scala.dep.version>2.10</scala.dep.version>
|
||||
<scalatest.version>1.9.1</scalatest.version>
|
||||
<typesafe.config.version>1.0.0</typesafe.config.version>
|
||||
<scalabuff.version>1.2.0</scalabuff.version>
|
||||
<typesafe.config.version>1.0.2</typesafe.config.version>
|
||||
<scalabuff.version>1.3.6</scalabuff.version>
|
||||
</properties>
|
||||
|
||||
<modules>
|
||||
|
|
|
|||
|
|
@ -193,7 +193,7 @@ object AkkaBuild extends Build {
|
|||
id = "akka-remote",
|
||||
base = file("akka-remote"),
|
||||
dependencies = Seq(actor, actorTests % "test->test", testkit % "test->test"),
|
||||
settings = defaultSettings ++ scaladocSettings ++ javadocSettings ++ OSGi.remote ++ Seq(
|
||||
settings = defaultSettings ++ scaladocSettings ++ javadocSettings ++ OSGi.remote ++ Protobuf.settings ++ Seq(
|
||||
libraryDependencies ++= Dependencies.remote,
|
||||
// disable parallel tests
|
||||
parallelExecution in Test := false,
|
||||
|
|
@ -205,7 +205,7 @@ object AkkaBuild extends Build {
|
|||
id = "akka-multi-node-testkit",
|
||||
base = file("akka-multi-node-testkit"),
|
||||
dependencies = Seq(remote, testkit),
|
||||
settings = defaultSettings ++ scaladocSettings ++ javadocSettings ++ Seq(
|
||||
settings = defaultSettings ++ scaladocSettings ++ javadocSettings ++ Protobuf.settings ++ Seq(
|
||||
previousArtifact := akkaPreviousArtifact("akka-multi-node-testkit")
|
||||
)
|
||||
)
|
||||
|
|
@ -234,7 +234,7 @@ object AkkaBuild extends Build {
|
|||
settings = defaultSettings ++ scaladocSettings ++ javadocSettings ++ multiJvmSettings ++ OSGi.cluster ++
|
||||
scalabuffSettings ++ Seq(
|
||||
// this version needs to be reflected in the OSGi.scalabuffImport and dining hackers pom.xml
|
||||
scalabuffVersion in ScalaBuff := "1.2.0",
|
||||
scalabuffVersion in ScalaBuff := "1.3.6",
|
||||
libraryDependencies ++= Dependencies.cluster,
|
||||
// disable parallel tests
|
||||
parallelExecution in Test := false,
|
||||
|
|
@ -1023,8 +1023,8 @@ object AkkaBuild extends Build {
|
|||
def defaultImports = Seq("!sun.misc", akkaImport(), configImport(), scalaImport(), "*")
|
||||
def akkaImport(packageName: String = "akka.*") = "%s;version=\"[2.2,2.3)\"".format(packageName)
|
||||
def configImport(packageName: String = "com.typesafe.config.*") = "%s;version=\"[0.4.1,1.1.0)\"".format(packageName)
|
||||
def protobufImport(packageName: String = "com.google.protobuf.*") = "%s;version=\"[2.4.0,2.5.0)\"".format(packageName)
|
||||
def scalabuffImport(packageName: String = "net.sandrogrzicic.scalabuff.*") = "%s;version=\"[1.2.0,1.3.0)\"".format(packageName)
|
||||
def protobufImport(packageName: String = "com.google.protobuf.*") = "%s;version=\"[2.5.0,2.6.0)\"".format(packageName)
|
||||
def scalabuffImport(packageName: String = "net.sandrogrzicic.scalabuff.*") = "%s;version=\"[1.3.6,1.4.0)\"".format(packageName)
|
||||
def scalaImport(packageName: String = "scala.*") = "%s;version=\"[2.10,2.11)\"".format(packageName)
|
||||
def optionalResolution(packageName: String) = "%s;resolution:=optional".format(packageName)
|
||||
}
|
||||
|
|
@ -1040,7 +1040,7 @@ object Dependencies {
|
|||
|
||||
val config = "com.typesafe" % "config" % "1.0.2" // ApacheV2
|
||||
val netty = "io.netty" % "netty" % "3.6.6.Final" // ApacheV2
|
||||
val protobuf = "com.google.protobuf" % "protobuf-java" % "2.4.1" // New BSD
|
||||
val protobuf = "com.google.protobuf" % "protobuf-java" % "2.5.0" // New BSD
|
||||
val scalaStm = "org.scala-stm" %% "scala-stm" % "0.7" // Modified BSD (Scala)
|
||||
val scalaBuffRuntime = "net.sandrogrzicic" %% "scalabuff-runtime" % "1.2.0" // ApacheV2
|
||||
|
||||
|
|
|
|||
77
project/Protobuf.scala
Normal file
77
project/Protobuf.scala
Normal file
|
|
@ -0,0 +1,77 @@
|
|||
/**
|
||||
* Copyright (C) 2009-2013 Typesafe Inc. <http://www.typesafe.com>
|
||||
*/
|
||||
|
||||
package akka
|
||||
|
||||
import sbt._
|
||||
import Process._
|
||||
import Keys._
|
||||
|
||||
import java.io.File
|
||||
|
||||
object Protobuf {
|
||||
val paths = SettingKey[Seq[File]]("protobuf-paths", "The paths that contain *.proto files.")
|
||||
val outputPaths = SettingKey[Seq[File]]("protobuf-output-paths", "The paths where to save the generated *.java files.")
|
||||
val protoc = SettingKey[String]("protobuf-protoc", "The path and name of the protoc executable.")
|
||||
val protocVersion = SettingKey[String]("protobuf-protoc-version", "The version of the protoc executable.")
|
||||
val generate = TaskKey[Unit]("protobuf-generate", "Compile the protobuf sources and do all processing.")
|
||||
|
||||
lazy val settings: Seq[Setting[_]] = Seq(
|
||||
paths <<= (sourceDirectory in Compile, sourceDirectory in Test) { (a, b) => Seq(a, b) map (_ / "protobuf") },
|
||||
outputPaths <<= (sourceDirectory in Compile, sourceDirectory in Test) { (a, b) => Seq(a, b) map (_ / "java") },
|
||||
protoc := "protoc",
|
||||
protocVersion := "2.5.0",
|
||||
generate <<= generateSourceTask
|
||||
)
|
||||
|
||||
private def callProtoc[T](protoc: String, args: Seq[String], log: Logger, thunk: (ProcessBuilder, Logger) => T): T =
|
||||
try {
|
||||
val proc = Process(protoc, args)
|
||||
thunk(proc, log)
|
||||
} catch { case e: Exception =>
|
||||
throw new RuntimeException("error while executing '%s' with args: %s" format(protoc, args.mkString(" ")), e)
|
||||
}
|
||||
|
||||
private def checkProtocVersion(protoc: String, protocVersion: String, log: Logger): Unit = {
|
||||
val res = callProtoc(protoc, Seq("--version"), log, { (p, l) => p !! l })
|
||||
val version = res.split(" ").last.trim
|
||||
if (version != protocVersion) {
|
||||
sys.error("Wrong protoc version! Expected %s but got %s" format (protocVersion, version))
|
||||
}
|
||||
}
|
||||
|
||||
private def generate(protoc: String, srcDir: File, targetDir: File, log: Logger): Unit = {
|
||||
val protoFiles = (srcDir ** "*.proto").get
|
||||
if (srcDir.exists)
|
||||
if (protoFiles.isEmpty)
|
||||
log.info("Skipping empty source directory %s" format srcDir)
|
||||
else {
|
||||
targetDir.mkdirs()
|
||||
|
||||
log.info("Generating %d protobuf files from %s to %s".format(protoFiles.size, srcDir, targetDir))
|
||||
protoFiles.foreach { proto => log.info("Compiling %s" format proto) }
|
||||
|
||||
val exitCode = callProtoc(protoc, Seq("-I" + srcDir.absolutePath, "--java_out=%s" format targetDir.absolutePath) ++
|
||||
protoFiles.map(_.absolutePath), log, { (p, l) => p ! l })
|
||||
if (exitCode != 0)
|
||||
sys.error("protoc returned exit code: %d" format exitCode)
|
||||
}
|
||||
}
|
||||
|
||||
private def generateSourceTask: Project.Initialize[Task[Unit]] = (streams, paths, outputPaths, protoc, protocVersion) map {
|
||||
(out, sourceDirs, targetDirs, protoc, protocVersion) =>
|
||||
if (sourceDirs.size != targetDirs.size)
|
||||
sys.error("Unbalanced number of paths and destination paths!\nPaths: %s\nDestination Paths: %s" format
|
||||
(sourceDirs, targetDirs))
|
||||
|
||||
if (sourceDirs exists { _.exists }) {
|
||||
checkProtocVersion(protoc, protocVersion, out.log)
|
||||
|
||||
(sourceDirs zip targetDirs) map {
|
||||
case (sourceDir, targetDir) =>
|
||||
generate(protoc, sourceDir, targetDir, out.log)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
find . -name \*.java -print0 | xargs -0 perl -pi -e 's/\Qprivate Builder(BuilderParent parent)/private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent)/'
|
||||
Loading…
Add table
Add a link
Reference in a new issue