You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by jo...@apache.org on 2015/09/25 02:48:05 UTC

[4/5] mesos git commit: Make common type_utils symmetrical to v1 mesos.

Make common type_utils symmetrical to v1 mesos.

This aids in verifying the files are kept in sync.
diff src/common/type_utils.cpp src/v1/mesos.cpp should result
in only include and namespace differences.

Moved some things out of type_utils.cpp that are not part of the
public API. They were moved into messages.cpp.

Review: https://reviews.apache.org/r/38733


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

Branch: refs/heads/master
Commit: bd791cacf4efa8ced83ee4c3a7f627d376534937
Parents: b7d48db
Author: Joris Van Remoortere <jo...@gmail.com>
Authored: Thu Sep 24 14:16:32 2015 -0700
Committer: Joris Van Remoortere <jo...@gmail.com>
Committed: Thu Sep 24 17:47:21 2015 -0700

----------------------------------------------------------------------
 include/mesos/type_utils.hpp |  5 +++
 include/mesos/v1/mesos.hpp   |  5 +++
 src/Makefile.am              |  1 +
 src/common/type_utils.cpp    | 49 --------------------------
 src/messages/messages.cpp    | 73 +++++++++++++++++++++++++++++++++++++++
 src/v1/mesos.cpp             |  4 ++-
 6 files changed, 87 insertions(+), 50 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/bd791cac/include/mesos/type_utils.hpp
----------------------------------------------------------------------
diff --git a/include/mesos/type_utils.hpp b/include/mesos/type_utils.hpp
index 6cedf07..06bf55d 100644
--- a/include/mesos/type_utils.hpp
+++ b/include/mesos/type_utils.hpp
@@ -61,6 +61,11 @@ bool operator==(
 bool operator==(const SlaveInfo& left, const SlaveInfo& right);
 bool operator==(const Volume& left, const Volume& right);
 
+bool operator==(const Label& left, const Label& right);
+bool operator==(const Labels& left, const Labels& right);
+
+bool operator==(const DiscoveryInfo& left, const DiscoveryInfo& right);
+
 bool operator==(const URL& left, const URL& right);
 
 bool operator==(const TaskStatus& left, const TaskStatus& right);

http://git-wip-us.apache.org/repos/asf/mesos/blob/bd791cac/include/mesos/v1/mesos.hpp
----------------------------------------------------------------------
diff --git a/include/mesos/v1/mesos.hpp b/include/mesos/v1/mesos.hpp
index 260e112..e5a0e69 100644
--- a/include/mesos/v1/mesos.hpp
+++ b/include/mesos/v1/mesos.hpp
@@ -42,6 +42,11 @@ bool operator==(
 bool operator==(const AgentInfo& left, const AgentInfo& right);
 bool operator==(const Volume& left, const Volume& right);
 
+bool operator==(const Label& left, const Label& right);
+bool operator==(const Labels& left, const Labels& right);
+
+bool operator==(const DiscoveryInfo& left, const DiscoveryInfo& right);
+
 bool operator==(const URL& left, const URL& right);
 
 bool operator==(const TaskStatus& left, const TaskStatus& right);

http://git-wip-us.apache.org/repos/asf/mesos/blob/bd791cac/src/Makefile.am
----------------------------------------------------------------------
diff --git a/src/Makefile.am b/src/Makefile.am
index 776483b..f082484 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -480,6 +480,7 @@ libmesos_no_3rdparty_la_SOURCES =					\
 	master/allocator/allocator.cpp					\
 	master/allocator/sorter/drf/sorter.cpp				\
 	messages/flags.proto						\
+	messages/messages.cpp						\
 	messages/messages.proto						\
 	module/manager.cpp						\
 	sched/constants.cpp						\

http://git-wip-us.apache.org/repos/asf/mesos/blob/bd791cac/src/common/type_utils.cpp
----------------------------------------------------------------------
diff --git a/src/common/type_utils.cpp b/src/common/type_utils.cpp
index 5f74dab..0e11468 100644
--- a/src/common/type_utils.cpp
+++ b/src/common/type_utils.cpp
@@ -361,53 +361,4 @@ bool operator!=(const TaskStatus& left, const TaskStatus& right)
   return !(left == right);
 }
 
-
-namespace internal {
-
-bool operator==(const Task& left, const Task& right)
-{
-  // Order of task statuses is important.
-  if (left.statuses().size() != right.statuses().size()) {
-    return false;
-  }
-
-  for (int i = 0; i < left.statuses().size(); i++) {
-    if (left.statuses().Get(i) != right.statuses().Get(i)) {
-      return false;
-    }
-  }
-
-  return left.name() == right.name() &&
-    left.task_id() == right.task_id() &&
-    left.framework_id() == right.framework_id() &&
-    left.executor_id() == right.executor_id() &&
-    left.slave_id() == right.slave_id() &&
-    left.state() == right.state() &&
-    Resources(left.resources()) == Resources(right.resources()) &&
-    left.status_update_state() == right.status_update_state() &&
-    left.status_update_uuid() == right.status_update_uuid() &&
-    left.labels() == right.labels() &&
-    left.discovery() == right.discovery();
-}
-
-
-std::ostream& operator<<(
-    std::ostream& stream,
-    const StatusUpdate& update)
-{
-  stream << update.status().state()
-         << (update.has_uuid()
-             ? " (UUID: " + stringify(UUID::fromBytes(update.uuid()))
-             : "")
-         << ") for task " << update.status().task_id();
-
-  if (update.status().has_healthy()) {
-    stream << " in health state "
-           << (update.status().healthy() ? "healthy" : "unhealthy");
-  }
-
-  return stream << " of framework " << update.framework_id();
-}
-
-} // namespace internal {
 } // namespace mesos {

http://git-wip-us.apache.org/repos/asf/mesos/blob/bd791cac/src/messages/messages.cpp
----------------------------------------------------------------------
diff --git a/src/messages/messages.cpp b/src/messages/messages.cpp
new file mode 100644
index 0000000..abf3ea3
--- /dev/null
+++ b/src/messages/messages.cpp
@@ -0,0 +1,73 @@
+/**
+ * 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.
+ */
+
+#include "messages/messages.hpp"
+
+#include <mesos/resources.hpp>
+#include <mesos/type_utils.hpp>
+
+namespace mesos {
+namespace internal {
+
+bool operator==(const Task& left, const Task& right)
+{
+  // Order of task statuses is important.
+  if (left.statuses().size() != right.statuses().size()) {
+    return false;
+  }
+
+  for (int i = 0; i < left.statuses().size(); i++) {
+    if (left.statuses().Get(i) != right.statuses().Get(i)) {
+      return false;
+    }
+  }
+
+  return left.name() == right.name() &&
+    left.task_id() == right.task_id() &&
+    left.framework_id() == right.framework_id() &&
+    left.executor_id() == right.executor_id() &&
+    left.slave_id() == right.slave_id() &&
+    left.state() == right.state() &&
+    Resources(left.resources()) == Resources(right.resources()) &&
+    left.status_update_state() == right.status_update_state() &&
+    left.status_update_uuid() == right.status_update_uuid() &&
+    left.labels() == right.labels() &&
+    left.discovery() == right.discovery();
+}
+
+
+std::ostream& operator<<(
+    std::ostream& stream,
+    const StatusUpdate& update)
+{
+  stream << update.status().state()
+         << (update.has_uuid()
+             ? " (UUID: " + stringify(UUID::fromBytes(update.uuid()))
+             : "")
+         << ") for task " << update.status().task_id();
+
+  if (update.status().has_healthy()) {
+    stream << " in health state "
+           << (update.status().healthy() ? "healthy" : "unhealthy");
+  }
+
+  return stream << " of framework " << update.framework_id();
+}
+
+} // namespace internal {
+} // namespace mesos {

http://git-wip-us.apache.org/repos/asf/mesos/blob/bd791cac/src/v1/mesos.cpp
----------------------------------------------------------------------
diff --git a/src/v1/mesos.cpp b/src/v1/mesos.cpp
index 631d6e5..e1ebb45 100644
--- a/src/v1/mesos.cpp
+++ b/src/v1/mesos.cpp
@@ -318,7 +318,9 @@ bool operator==(const MasterInfo& left, const MasterInfo& right)
 }
 
 
-bool operator==(const ResourceStatistics& left, const ResourceStatistics& right)
+bool operator==(
+    const ResourceStatistics& left,
+    const ResourceStatistics& right)
 {
   return left.SerializeAsString() == right.SerializeAsString();
 }