You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@reef.apache.org by we...@apache.org on 2016/09/30 03:48:16 UTC

reef git commit: [REEF-1611] Move Java .proto files to common directory

Repository: reef
Updated Branches:
  refs/heads/master 75f78ac8d -> 8103ed90b


[REEF-1611] Move Java .proto files to common directory

This change moves the Java .proto files to lang/common/proto so
the C# side can use the same proto files.

WARNING: Before pulling this change you should clean both the
Java and C# builds; otherwise, you will have artifacts this
version cannot remove that cause test failures on the C# side.

JIRA:
    [REEF-1611](https://issues.apache.org/jira/browse/REEF-1611)

Pull Request:
  This closes #1142


Project: http://git-wip-us.apache.org/repos/asf/reef/repo
Commit: http://git-wip-us.apache.org/repos/asf/reef/commit/8103ed90
Tree: http://git-wip-us.apache.org/repos/asf/reef/tree/8103ed90
Diff: http://git-wip-us.apache.org/repos/asf/reef/diff/8103ed90

Branch: refs/heads/master
Commit: 8103ed90b34fa42537f0a6d1a374265efa7ad027
Parents: 75f78ac
Author: Doug Service <do...@microsoft.com>
Authored: Thu Sep 29 01:35:16 2016 +0000
Committer: Markus Weimer <we...@apache.org>
Committed: Thu Sep 29 20:46:49 2016 -0700

----------------------------------------------------------------------
 lang/common/proto/RemoteProtocol.proto          | 33 +++++++
 lang/common/proto/client_runtime.proto          | 41 ++++++++
 lang/common/proto/evaluator_runtime.proto       | 98 ++++++++++++++++++++
 lang/common/proto/reef_protocol.proto           | 46 +++++++++
 lang/common/proto/reef_service_protos.proto     | 93 +++++++++++++++++++
 lang/java/reef-common/pom.xml                   | 11 ++-
 .../src/main/proto/client_runtime.proto         | 41 --------
 .../src/main/proto/evaluator_runtime.proto      | 98 --------------------
 .../src/main/proto/reef_protocol.proto          | 46 ---------
 .../src/main/proto/reef_service_protos.proto    | 93 -------------------
 lang/java/reef-wake/wake/pom.xml                |  9 +-
 .../wake/src/main/proto/RemoteProtocol.proto    | 33 -------
 12 files changed, 324 insertions(+), 318 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/reef/blob/8103ed90/lang/common/proto/RemoteProtocol.proto
----------------------------------------------------------------------
diff --git a/lang/common/proto/RemoteProtocol.proto b/lang/common/proto/RemoteProtocol.proto
new file mode 100644
index 0000000..1885513
--- /dev/null
+++ b/lang/common/proto/RemoteProtocol.proto
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+option java_package = "org.apache.reef.wake.remote.proto";
+option java_outer_classname = "WakeRemoteProtos";
+option java_generic_services = true;
+option java_generate_equals_and_hash = true;
+
+message WakeMessagePBuf {
+  required bytes data = 1;
+  required int64 seq = 2; 
+}
+
+message WakeTuplePBuf {
+  required string className = 1;
+  required bytes data = 2; 
+}
+

http://git-wip-us.apache.org/repos/asf/reef/blob/8103ed90/lang/common/proto/client_runtime.proto
----------------------------------------------------------------------
diff --git a/lang/common/proto/client_runtime.proto b/lang/common/proto/client_runtime.proto
new file mode 100644
index 0000000..82e31f8
--- /dev/null
+++ b/lang/common/proto/client_runtime.proto
@@ -0,0 +1,41 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+option java_package = "org.apache.reef.proto";
+option java_outer_classname = "ClientRuntimeProtocol";
+option java_generic_services = true;
+option java_generate_equals_and_hash = true;
+
+import "reef_service_protos.proto";
+
+// Messages from REEF Client -> Driver Runtime
+
+enum Signal {
+	SIG_TERMINATE = 1;
+	SIG_SUSPEND   = 2;
+	SIG_RESUME    = 3;
+}
+
+message JobControlProto {
+	required string identifier = 1;
+	optional Signal signal     = 2;
+	optional bytes message     = 3;
+}
+
+

http://git-wip-us.apache.org/repos/asf/reef/blob/8103ed90/lang/common/proto/evaluator_runtime.proto
----------------------------------------------------------------------
diff --git a/lang/common/proto/evaluator_runtime.proto b/lang/common/proto/evaluator_runtime.proto
new file mode 100644
index 0000000..5dee352
--- /dev/null
+++ b/lang/common/proto/evaluator_runtime.proto
@@ -0,0 +1,98 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+option java_package = "org.apache.reef.proto";
+option java_outer_classname = "EvaluatorRuntimeProtocol";
+option java_generic_services = true;
+option java_generate_equals_and_hash = true;
+
+import "reef_service_protos.proto";
+
+// ACK the done message from the evaluator
+message DoneEvaluatorProto {
+}
+
+// Stop the evaluator
+message StopEvaluatorProto {
+}
+
+// Kill the evaluator
+message KillEvaluatorProto {
+}
+
+// Start a task
+message StartTaskProto {
+    required string context_id = 1;
+    required string configuration = 2;
+}
+
+message AddContextProto {
+    required string parent_context_id = 1;
+    required string context_configuration = 2;
+    optional string service_configuration = 3;
+}
+
+message RemoveContextProto {
+    required string context_id = 1;
+}
+
+// Stop the task
+message StopTaskProto {
+}
+
+// Suspend the task
+message SuspendTaskProto {
+}
+
+/////////////////////////////////////////
+// Message aggregators
+
+message ContextMessageProto {
+    required string context_id = 1;
+    required bytes message = 2;
+}
+
+message ContextControlProto {
+    optional bytes task_message = 1;
+    optional ContextMessageProto context_message = 2;
+
+    optional AddContextProto    add_context    = 5;
+    optional RemoveContextProto remove_context = 6;
+    optional StartTaskProto     start_task     = 7;
+    optional StopTaskProto      stop_task      = 8;
+    optional SuspendTaskProto   suspend_task   = 9;
+}
+
+message EvaluatorHeartbeatProto {
+    required int64 timestamp = 1;
+    required EvaluatorStatusProto evaluator_status = 2;
+    repeated ContextStatusProto   context_status   = 3;
+    optional TaskStatusProto      task_status      = 4;
+    optional bool                 recovery         = 5;  
+}
+
+message EvaluatorControlProto {
+    required int64 timestamp = 1;
+    required string identifier = 2;
+
+    optional ContextControlProto context_control = 3;
+    optional KillEvaluatorProto kill_evaluator = 4;
+    optional StopEvaluatorProto stop_evaluator = 5;
+    optional DoneEvaluatorProto done_evaluator = 6;
+}

http://git-wip-us.apache.org/repos/asf/reef/blob/8103ed90/lang/common/proto/reef_protocol.proto
----------------------------------------------------------------------
diff --git a/lang/common/proto/reef_protocol.proto b/lang/common/proto/reef_protocol.proto
new file mode 100644
index 0000000..86675f9
--- /dev/null
+++ b/lang/common/proto/reef_protocol.proto
@@ -0,0 +1,46 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import "client_runtime.proto";
+
+import "evaluator_runtime.proto";
+
+import "reef_service_protos.proto";
+
+
+option java_package = "org.apache.reef.proto";
+
+option java_generic_services = true;
+
+option java_generate_equals_and_hash = true;
+
+option java_outer_classname = "REEFProtocol";
+
+message REEFMessage {
+    // Field 1 removed
+
+    // Messages defined in client_runtime.proto
+    optional JobControlProto jobControl = 2;
+    // Messages defined in reef_service_protos.proto
+    optional RuntimeErrorProto runtimeError = 3;
+    optional JobStatusProto jobStatus = 4;
+    // Messages from evaluator_runtime.proto
+    optional EvaluatorControlProto evaluatorControl = 5;
+    optional EvaluatorHeartbeatProto evaluatorHeartBeat = 6;
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/reef/blob/8103ed90/lang/common/proto/reef_service_protos.proto
----------------------------------------------------------------------
diff --git a/lang/common/proto/reef_service_protos.proto b/lang/common/proto/reef_service_protos.proto
new file mode 100644
index 0000000..6b00759
--- /dev/null
+++ b/lang/common/proto/reef_service_protos.proto
@@ -0,0 +1,93 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+option java_package = "org.apache.reef.proto";
+
+option java_outer_classname = "ReefServiceProtos";
+
+option java_generic_services = true;
+
+option java_generate_equals_and_hash = true;
+
+enum State {
+    INIT = 0;
+    RUNNING = 1;
+    DONE = 2;
+    SUSPEND = 3;
+    FAILED = 4;
+    KILLED = 5;
+}
+
+message RuntimeErrorProto {
+    required string name = 1; // e.g., local, yarn21
+    required string message = 2;
+    optional bytes exception = 3;
+
+    optional string identifier = 5; // e.g., evaluator id
+}
+
+message JobStatusProto {
+    required string identifier = 1;
+    required State state = 2;
+    optional bytes message = 3;
+    optional bytes exception = 4;
+}
+
+message ContextStatusProto {
+    enum State {
+        READY = 0;
+        DONE = 1;
+        FAIL = 2;
+    }
+    required State context_state = 1;
+
+    required string context_id = 2;
+    optional string parent_id = 3;
+
+    optional bytes error = 5; // when creating the context
+
+    optional bool recovery = 6;
+    // Context messages
+    message ContextMessageProto {
+        required string source_id = 1;
+        required bytes message = 2;
+    }
+    repeated ContextMessageProto context_message = 7;
+}
+
+message TaskStatusProto {
+    required string task_id = 1;
+    required string context_id = 2;
+    required State state = 3;
+    optional bytes result = 4; // e.g., return value from Task.call()
+    optional bool  recovery = 5;
+
+    // TaskMessageSource messages
+    message TaskMessageProto {
+        required string source_id = 1;
+        required bytes message = 2;
+    }
+    repeated TaskMessageProto task_message = 6;
+}
+
+message EvaluatorStatusProto {
+    required string evaluator_id = 1;
+    required State state = 2;
+    optional bytes error = 3;
+}

http://git-wip-us.apache.org/repos/asf/reef/blob/8103ed90/lang/java/reef-common/pom.xml
----------------------------------------------------------------------
diff --git a/lang/java/reef-common/pom.xml b/lang/java/reef-common/pom.xml
index 18d9532..ce9f9b9 100644
--- a/lang/java/reef-common/pom.xml
+++ b/lang/java/reef-common/pom.xml
@@ -29,6 +29,7 @@ under the License.
 
     <properties>
         <rootPath>${basedir}/../../..</rootPath>
+        <protoPath>${rootPath}/lang/common/proto</protoPath>
     </properties>
 
     <artifactId>reef-common</artifactId>
@@ -68,12 +69,12 @@ under the License.
                                 </fail>
                                 <mkdir dir="target/generated-sources/proto"/>
                                 <exec executable="protoc">
-                                    <arg value="--proto_path=src/main/proto/"/>
+                                    <arg value="--proto_path=${protoPath}"/>
                                     <arg value="--java_out=target/generated-sources/proto"/>
-                                    <arg value="src/main/proto/reef_service_protos.proto"/>
-                                    <arg value="src/main/proto/evaluator_runtime.proto"/>
-                                    <arg value="src/main/proto/client_runtime.proto"/>
-                                    <arg value="src/main/proto/reef_protocol.proto"/>
+                                    <arg value="${protoPath}/reef_service_protos.proto"/>
+                                    <arg value="${protoPath}/evaluator_runtime.proto"/>
+                                    <arg value="${protoPath}/client_runtime.proto"/>
+                                    <arg value="${protoPath}/reef_protocol.proto"/>
                                 </exec>
                             </target>
                             <sourceRoot>target/generated-sources/proto</sourceRoot>

http://git-wip-us.apache.org/repos/asf/reef/blob/8103ed90/lang/java/reef-common/src/main/proto/client_runtime.proto
----------------------------------------------------------------------
diff --git a/lang/java/reef-common/src/main/proto/client_runtime.proto b/lang/java/reef-common/src/main/proto/client_runtime.proto
deleted file mode 100644
index 82e31f8..0000000
--- a/lang/java/reef-common/src/main/proto/client_runtime.proto
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-option java_package = "org.apache.reef.proto";
-option java_outer_classname = "ClientRuntimeProtocol";
-option java_generic_services = true;
-option java_generate_equals_and_hash = true;
-
-import "reef_service_protos.proto";
-
-// Messages from REEF Client -> Driver Runtime
-
-enum Signal {
-	SIG_TERMINATE = 1;
-	SIG_SUSPEND   = 2;
-	SIG_RESUME    = 3;
-}
-
-message JobControlProto {
-	required string identifier = 1;
-	optional Signal signal     = 2;
-	optional bytes message     = 3;
-}
-
-

http://git-wip-us.apache.org/repos/asf/reef/blob/8103ed90/lang/java/reef-common/src/main/proto/evaluator_runtime.proto
----------------------------------------------------------------------
diff --git a/lang/java/reef-common/src/main/proto/evaluator_runtime.proto b/lang/java/reef-common/src/main/proto/evaluator_runtime.proto
deleted file mode 100644
index 5dee352..0000000
--- a/lang/java/reef-common/src/main/proto/evaluator_runtime.proto
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-option java_package = "org.apache.reef.proto";
-option java_outer_classname = "EvaluatorRuntimeProtocol";
-option java_generic_services = true;
-option java_generate_equals_and_hash = true;
-
-import "reef_service_protos.proto";
-
-// ACK the done message from the evaluator
-message DoneEvaluatorProto {
-}
-
-// Stop the evaluator
-message StopEvaluatorProto {
-}
-
-// Kill the evaluator
-message KillEvaluatorProto {
-}
-
-// Start a task
-message StartTaskProto {
-    required string context_id = 1;
-    required string configuration = 2;
-}
-
-message AddContextProto {
-    required string parent_context_id = 1;
-    required string context_configuration = 2;
-    optional string service_configuration = 3;
-}
-
-message RemoveContextProto {
-    required string context_id = 1;
-}
-
-// Stop the task
-message StopTaskProto {
-}
-
-// Suspend the task
-message SuspendTaskProto {
-}
-
-/////////////////////////////////////////
-// Message aggregators
-
-message ContextMessageProto {
-    required string context_id = 1;
-    required bytes message = 2;
-}
-
-message ContextControlProto {
-    optional bytes task_message = 1;
-    optional ContextMessageProto context_message = 2;
-
-    optional AddContextProto    add_context    = 5;
-    optional RemoveContextProto remove_context = 6;
-    optional StartTaskProto     start_task     = 7;
-    optional StopTaskProto      stop_task      = 8;
-    optional SuspendTaskProto   suspend_task   = 9;
-}
-
-message EvaluatorHeartbeatProto {
-    required int64 timestamp = 1;
-    required EvaluatorStatusProto evaluator_status = 2;
-    repeated ContextStatusProto   context_status   = 3;
-    optional TaskStatusProto      task_status      = 4;
-    optional bool                 recovery         = 5;  
-}
-
-message EvaluatorControlProto {
-    required int64 timestamp = 1;
-    required string identifier = 2;
-
-    optional ContextControlProto context_control = 3;
-    optional KillEvaluatorProto kill_evaluator = 4;
-    optional StopEvaluatorProto stop_evaluator = 5;
-    optional DoneEvaluatorProto done_evaluator = 6;
-}

http://git-wip-us.apache.org/repos/asf/reef/blob/8103ed90/lang/java/reef-common/src/main/proto/reef_protocol.proto
----------------------------------------------------------------------
diff --git a/lang/java/reef-common/src/main/proto/reef_protocol.proto b/lang/java/reef-common/src/main/proto/reef_protocol.proto
deleted file mode 100644
index 86675f9..0000000
--- a/lang/java/reef-common/src/main/proto/reef_protocol.proto
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import "client_runtime.proto";
-
-import "evaluator_runtime.proto";
-
-import "reef_service_protos.proto";
-
-
-option java_package = "org.apache.reef.proto";
-
-option java_generic_services = true;
-
-option java_generate_equals_and_hash = true;
-
-option java_outer_classname = "REEFProtocol";
-
-message REEFMessage {
-    // Field 1 removed
-
-    // Messages defined in client_runtime.proto
-    optional JobControlProto jobControl = 2;
-    // Messages defined in reef_service_protos.proto
-    optional RuntimeErrorProto runtimeError = 3;
-    optional JobStatusProto jobStatus = 4;
-    // Messages from evaluator_runtime.proto
-    optional EvaluatorControlProto evaluatorControl = 5;
-    optional EvaluatorHeartbeatProto evaluatorHeartBeat = 6;
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/reef/blob/8103ed90/lang/java/reef-common/src/main/proto/reef_service_protos.proto
----------------------------------------------------------------------
diff --git a/lang/java/reef-common/src/main/proto/reef_service_protos.proto b/lang/java/reef-common/src/main/proto/reef_service_protos.proto
deleted file mode 100644
index 6b00759..0000000
--- a/lang/java/reef-common/src/main/proto/reef_service_protos.proto
+++ /dev/null
@@ -1,93 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-option java_package = "org.apache.reef.proto";
-
-option java_outer_classname = "ReefServiceProtos";
-
-option java_generic_services = true;
-
-option java_generate_equals_and_hash = true;
-
-enum State {
-    INIT = 0;
-    RUNNING = 1;
-    DONE = 2;
-    SUSPEND = 3;
-    FAILED = 4;
-    KILLED = 5;
-}
-
-message RuntimeErrorProto {
-    required string name = 1; // e.g., local, yarn21
-    required string message = 2;
-    optional bytes exception = 3;
-
-    optional string identifier = 5; // e.g., evaluator id
-}
-
-message JobStatusProto {
-    required string identifier = 1;
-    required State state = 2;
-    optional bytes message = 3;
-    optional bytes exception = 4;
-}
-
-message ContextStatusProto {
-    enum State {
-        READY = 0;
-        DONE = 1;
-        FAIL = 2;
-    }
-    required State context_state = 1;
-
-    required string context_id = 2;
-    optional string parent_id = 3;
-
-    optional bytes error = 5; // when creating the context
-
-    optional bool recovery = 6;
-    // Context messages
-    message ContextMessageProto {
-        required string source_id = 1;
-        required bytes message = 2;
-    }
-    repeated ContextMessageProto context_message = 7;
-}
-
-message TaskStatusProto {
-    required string task_id = 1;
-    required string context_id = 2;
-    required State state = 3;
-    optional bytes result = 4; // e.g., return value from Task.call()
-    optional bool  recovery = 5;
-
-    // TaskMessageSource messages
-    message TaskMessageProto {
-        required string source_id = 1;
-        required bytes message = 2;
-    }
-    repeated TaskMessageProto task_message = 6;
-}
-
-message EvaluatorStatusProto {
-    required string evaluator_id = 1;
-    required State state = 2;
-    optional bytes error = 3;
-}

http://git-wip-us.apache.org/repos/asf/reef/blob/8103ed90/lang/java/reef-wake/wake/pom.xml
----------------------------------------------------------------------
diff --git a/lang/java/reef-wake/wake/pom.xml b/lang/java/reef-wake/wake/pom.xml
index f7dbbe6..7f1cfee 100644
--- a/lang/java/reef-wake/wake/pom.xml
+++ b/lang/java/reef-wake/wake/pom.xml
@@ -30,6 +30,11 @@ under the License.
         <version>0.16.0-SNAPSHOT</version>
     </parent>
 
+    <properties>
+        <rootPath>${basedir}/../../../..</rootPath>
+        <protoPath>${rootPath}/lang/common/proto</protoPath>
+    </properties>
+
     <build>
 
         <resources>
@@ -57,9 +62,9 @@ under the License.
                             <target>
                                 <mkdir dir="target/generated-sources/proto"/>
                                 <exec executable="protoc">
-                                    <arg value="--proto_path=src/main/proto/"/>
+                                    <arg value="--proto_path=${protoPath}"/>
                                     <arg value="--java_out=target/generated-sources/proto"/>
-                                    <arg value="src/main/proto/RemoteProtocol.proto"/>
+                                    <arg value="${protoPath}/RemoteProtocol.proto"/>
                                 </exec>
                                 <exec executable="protoc">
                                     <arg value="--proto_path=src/test/proto/"/>

http://git-wip-us.apache.org/repos/asf/reef/blob/8103ed90/lang/java/reef-wake/wake/src/main/proto/RemoteProtocol.proto
----------------------------------------------------------------------
diff --git a/lang/java/reef-wake/wake/src/main/proto/RemoteProtocol.proto b/lang/java/reef-wake/wake/src/main/proto/RemoteProtocol.proto
deleted file mode 100644
index 1885513..0000000
--- a/lang/java/reef-wake/wake/src/main/proto/RemoteProtocol.proto
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-option java_package = "org.apache.reef.wake.remote.proto";
-option java_outer_classname = "WakeRemoteProtos";
-option java_generic_services = true;
-option java_generate_equals_and_hash = true;
-
-message WakeMessagePBuf {
-  required bytes data = 1;
-  required int64 seq = 2; 
-}
-
-message WakeTuplePBuf {
-  required string className = 1;
-  required bytes data = 2; 
-}
-