This is an automated email from the ASF dual-hosted git repository.

bmahler pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/mesos.git

commit f2deec5e57a84cef0033bda45ee87ee4259ab4c7
Author: Andrei Sekretenko <[email protected]>
AuthorDate: Mon Jul 1 23:21:25 2019 -0400

    Supported suppressedRoles in updateFramework() in V0 Java bindings.
    
    Review: https://reviews.apache.org/r/70897/
---
 src/java/jni/org_apache_mesos_MesosSchedulerDriver.cpp  |  9 ++++++---
 src/java/src/org/apache/mesos/MesosSchedulerDriver.java |  3 ++-
 src/java/src/org/apache/mesos/SchedulerDriver.java      | 11 +++++++----
 3 files changed, 15 insertions(+), 8 deletions(-)

diff --git a/src/java/jni/org_apache_mesos_MesosSchedulerDriver.cpp 
b/src/java/jni/org_apache_mesos_MesosSchedulerDriver.cpp
index 167f232..5ac9a64 100644
--- a/src/java/jni/org_apache_mesos_MesosSchedulerDriver.cpp
+++ b/src/java/jni/org_apache_mesos_MesosSchedulerDriver.cpp
@@ -1001,22 +1001,25 @@ 
Java_org_apache_mesos_MesosSchedulerDriver_reconcileTasks(
 
 /* Class:     org_apache_mesos_MesosSchedulerDriver
  * Method:    updateFramework
- * Signature: 
(Lorg/apache/mesos/Protos/FrameworkInfo;)Lorg/apache/mesos/Protos/Status;
+ * Signature: 
(Lorg/apache/mesos/Protos/FrameworkInfo;Ljava/util/Collection;)Lorg/apache/mesos/Protos/Status;
  */
 JNIEXPORT jobject JNICALL
 Java_org_apache_mesos_MesosSchedulerDriver_updateFramework(
-    JNIEnv* env, jobject thiz, jobject jframeworkInfo)
+    JNIEnv* env, jobject thiz, jobject jframeworkInfo, jobject 
jsuppressedRoles)
 {
   const FrameworkInfo& frameworkInfo =
     construct<FrameworkInfo>(env, jframeworkInfo);
 
+  const vector<string> suppressedRoles =
+    constructFromIterable<string>(env, jsuppressedRoles);
+
   jclass clazz = env->GetObjectClass(thiz);
 
   jfieldID __driver = env->GetFieldID(clazz, "__driver", "J");
   MesosSchedulerDriver* driver =
     (MesosSchedulerDriver*) env->GetLongField(thiz, __driver);
 
-  Status status = driver->updateFramework(frameworkInfo, {});
+  Status status = driver->updateFramework(frameworkInfo, suppressedRoles);
 
   return convert<Status>(env, status);
 }
diff --git a/src/java/src/org/apache/mesos/MesosSchedulerDriver.java 
b/src/java/src/org/apache/mesos/MesosSchedulerDriver.java
index 55ebc87..fb16b67 100644
--- a/src/java/src/org/apache/mesos/MesosSchedulerDriver.java
+++ b/src/java/src/org/apache/mesos/MesosSchedulerDriver.java
@@ -298,7 +298,8 @@ public class MesosSchedulerDriver implements 
SchedulerDriver {
 
   public native Status reconcileTasks(Collection<TaskStatus> statuses);
 
-  public native Status updateFramework(FrameworkInfo frameworkInfo);
+  public native Status updateFramework(FrameworkInfo frameworkInfo,
+                                       Collection<String> suppressedRoles);
 
   protected native void initialize();
   protected native void finalize();
diff --git a/src/java/src/org/apache/mesos/SchedulerDriver.java 
b/src/java/src/org/apache/mesos/SchedulerDriver.java
index f92521a..155e4ac 100644
--- a/src/java/src/org/apache/mesos/SchedulerDriver.java
+++ b/src/java/src/org/apache/mesos/SchedulerDriver.java
@@ -336,9 +336,9 @@ public interface SchedulerDriver {
   Status reconcileTasks(Collection<TaskStatus> statuses);
 
   /**
-   * Inform Mesos master about changes to the `FrameworkInfo`. The
-   * driver will store the new `FrameworkInfo` and all subsequent
-   * re-registrations will use it.
+   * Inform Mesos master about changes to the `FrameworkInfo` and the list of
+   * suppressed roles. The driver will store the new `FrameworkInfo` and the 
new
+   * suppressed roles list, and all subsequent re-registrations will use it.
    *
    * NOTE: If the supplied info is invalid or fails authorization,
    * the `error()` callback will be invoked asynchronously (after
@@ -354,9 +354,12 @@ public interface SchedulerDriver {
    *
    * @param frameworkInfo  The new FrameworkInfo.
    *
+   * @param suppressedRoles The new list of suppressed roles.
+   *
    * @return               The state of the driver after the call.
    *
    * @see FrameworkInfo
    */
-  Status updateFramework(FrameworkInfo frameworkInfo);
+  Status updateFramework(FrameworkInfo frameworkInfo,
+                         Collection<String> suppressedRoles);
 }

Reply via email to