Repository: incubator-reef
Updated Branches:
  refs/heads/master 9769fcb5b -> 1c5926d36


http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/1c5926d3/lang/java/reef-runtime-local/src/main/java/org/apache/reef/runtime/local/process/ReefRunnableProcessObserver.java
----------------------------------------------------------------------
diff --git 
a/lang/java/reef-runtime-local/src/main/java/org/apache/reef/runtime/local/process/ReefRunnableProcessObserver.java
 
b/lang/java/reef-runtime-local/src/main/java/org/apache/reef/runtime/local/process/ReefRunnableProcessObserver.java
index 6e26dc4..25fda94 100644
--- 
a/lang/java/reef-runtime-local/src/main/java/org/apache/reef/runtime/local/process/ReefRunnableProcessObserver.java
+++ 
b/lang/java/reef-runtime-local/src/main/java/org/apache/reef/runtime/local/process/ReefRunnableProcessObserver.java
@@ -69,11 +69,11 @@ public final class ReefRunnableProcessObserver implements 
RunnableProcessObserve
     // and then release the resources. Otherwise, the Driver might be shutdown 
because of an idle condition before the
     // message about the evaluator exit could have been sent and processed.
     switch (exitCode) {
-      case 0:
-        this.onCleanExit(processId);
-        break;
-      default:
-        this.onUncleanExit(processId, exitCode);
+    case 0:
+      this.onCleanExit(processId);
+      break;
+    default:
+      this.onUncleanExit(processId, exitCode);
     }
     this.resourceManager.get().onEvaluatorExit(processId);
   }

http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/1c5926d3/lang/java/reef-runtime-local/src/main/java/org/apache/reef/runtime/local/process/RunnableProcess.java
----------------------------------------------------------------------
diff --git 
a/lang/java/reef-runtime-local/src/main/java/org/apache/reef/runtime/local/process/RunnableProcess.java
 
b/lang/java/reef-runtime-local/src/main/java/org/apache/reef/runtime/local/process/RunnableProcess.java
index b8008f0..1741ace 100644
--- 
a/lang/java/reef-runtime-local/src/main/java/org/apache/reef/runtime/local/process/RunnableProcess.java
+++ 
b/lang/java/reef-runtime-local/src/main/java/org/apache/reef/runtime/local/process/RunnableProcess.java
@@ -117,26 +117,26 @@ public final class RunnableProcess implements Runnable {
    */
   private static boolean isLegal(final State from, final State to) {
     switch (from) {
+    case INIT:
+      switch (to) {
       case INIT:
-        switch (to) {
-          case INIT:
-          case RUNNING:
-          case ENDED:
-            return true;
-          default:
-            return false;
-        }
       case RUNNING:
-        switch (to) {
-          case ENDED:
-            return true;
-          default:
-            return false;
-        }
       case ENDED:
+        return true;
+      default:
         return false;
+      }
+    case RUNNING:
+      switch (to) {
+      case ENDED:
+        return true;
       default:
         return false;
+      }
+    case ENDED:
+      return false;
+    default:
+      return false;
     }
   }
 

http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/1c5926d3/lang/java/reef-runtime-mesos/src/main/java/org/apache/reef/runtime/mesos/driver/REEFScheduler.java
----------------------------------------------------------------------
diff --git 
a/lang/java/reef-runtime-mesos/src/main/java/org/apache/reef/runtime/mesos/driver/REEFScheduler.java
 
b/lang/java/reef-runtime-mesos/src/main/java/org/apache/reef/runtime/mesos/driver/REEFScheduler.java
index 3ab11aa..d2c1bd2 100644
--- 
a/lang/java/reef-runtime-mesos/src/main/java/org/apache/reef/runtime/mesos/driver/REEFScheduler.java
+++ 
b/lang/java/reef-runtime-mesos/src/main/java/org/apache/reef/runtime/mesos/driver/REEFScheduler.java
@@ -195,29 +195,29 @@ final class REEFScheduler implements Scheduler {
         
ResourceStatusEventImpl.newBuilder().setIdentifier(taskStatus.getTaskId().getValue());
 
     switch(taskStatus.getState()) {
-      case TASK_STARTING:
-        handleNewExecutor(taskStatus); // As there is only one Mesos Task per 
Mesos Executor, this is a new executor.
+    case TASK_STARTING:
+      handleNewExecutor(taskStatus); // As there is only one Mesos Task per 
Mesos Executor, this is a new executor.
+      return;
+    case TASK_RUNNING:
+      resourceStatus.setState(State.RUNNING);
+      break;
+    case TASK_FINISHED:
+      if (taskStatus.getData().toStringUtf8().equals("eval_not_run")) { // 
TODO: a hack to pass closeEvaluator test, replace this with a better interface
         return;
-      case TASK_RUNNING:
-        resourceStatus.setState(State.RUNNING);
-        break;
-      case TASK_FINISHED:
-        if (taskStatus.getData().toStringUtf8().equals("eval_not_run")) { // 
TODO: a hack to pass closeEvaluator test, replace this with a better interface
-          return;
-        }
-        resourceStatus.setState(State.DONE);
-        break;
-      case TASK_KILLED:
-        resourceStatus.setState(State.KILLED);
-        break;
-      case TASK_LOST:
-      case TASK_FAILED:
-        resourceStatus.setState(State.FAILED);
-        break;
-      case TASK_STAGING:
-        throw new RuntimeException("TASK_STAGING should not be used for status 
update");
-      default:
-        throw new RuntimeException("Unknown TaskStatus");
+      }
+      resourceStatus.setState(State.DONE);
+      break;
+    case TASK_KILLED:
+      resourceStatus.setState(State.KILLED);
+      break;
+    case TASK_LOST:
+    case TASK_FAILED:
+      resourceStatus.setState(State.FAILED);
+      break;
+    case TASK_STAGING:
+      throw new RuntimeException("TASK_STAGING should not be used for status 
update");
+    default:
+      throw new RuntimeException("Unknown TaskStatus");
     }
 
     if (taskStatus.getMessage() != null) {

http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/1c5926d3/lang/java/reef-runtime-mesos/src/main/java/org/apache/reef/runtime/mesos/evaluator/REEFExecutor.java
----------------------------------------------------------------------
diff --git 
a/lang/java/reef-runtime-mesos/src/main/java/org/apache/reef/runtime/mesos/evaluator/REEFExecutor.java
 
b/lang/java/reef-runtime-mesos/src/main/java/org/apache/reef/runtime/mesos/evaluator/REEFExecutor.java
index f1e1252..d04ff63 100644
--- 
a/lang/java/reef-runtime-mesos/src/main/java/org/apache/reef/runtime/mesos/evaluator/REEFExecutor.java
+++ 
b/lang/java/reef-runtime-mesos/src/main/java/org/apache/reef/runtime/mesos/evaluator/REEFExecutor.java
@@ -138,11 +138,13 @@ public final class REEFExecutor implements Executor {
   // HELPER METHODS
 
   private void onStart() {
-    this.executorService.submit(new Thread() { public void run() {
-      final Status status;
-      status = mesosExecutorDriver.run();
-      LOG.log(Level.INFO, "MesosExecutorDriver ended with status {0}", status);
-    }});
+    this.executorService.submit(new Thread() {
+      public void run() {
+        final Status status;
+        status = mesosExecutorDriver.run();
+        LOG.log(Level.INFO, "MesosExecutorDriver ended with status {0}", 
status);
+      }
+    });
   }
 
   private void onStop() {

http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/1c5926d3/lang/java/reef-runtime-mesos/src/main/java/org/apache/reef/runtime/mesos/util/MesosRemoteManagerCodec.java
----------------------------------------------------------------------
diff --git 
a/lang/java/reef-runtime-mesos/src/main/java/org/apache/reef/runtime/mesos/util/MesosRemoteManagerCodec.java
 
b/lang/java/reef-runtime-mesos/src/main/java/org/apache/reef/runtime/mesos/util/MesosRemoteManagerCodec.java
index 6c5b1e5..b44ee5e 100644
--- 
a/lang/java/reef-runtime-mesos/src/main/java/org/apache/reef/runtime/mesos/util/MesosRemoteManagerCodec.java
+++ 
b/lang/java/reef-runtime-mesos/src/main/java/org/apache/reef/runtime/mesos/util/MesosRemoteManagerCodec.java
@@ -36,7 +36,7 @@ public class MesosRemoteManagerCodec implements 
Codec<EvaluatorControl> {
   public MesosRemoteManagerCodec() {
   }
 
- @Override
+  @Override
   public byte[] encode(final EvaluatorControl evaluatorControl) {
     try {
       LOG.log(Level.INFO, "Before Eecoding: {0}", evaluatorControl.toString());

http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/1c5926d3/lang/java/reef-runtime-yarn/src/main/java/org/apache/reef/runtime/yarn/driver/YarnContainerManager.java
----------------------------------------------------------------------
diff --git 
a/lang/java/reef-runtime-yarn/src/main/java/org/apache/reef/runtime/yarn/driver/YarnContainerManager.java
 
b/lang/java/reef-runtime-yarn/src/main/java/org/apache/reef/runtime/yarn/driver/YarnContainerManager.java
index 45ea193..fdc7bb6 100644
--- 
a/lang/java/reef-runtime-yarn/src/main/java/org/apache/reef/runtime/yarn/driver/YarnContainerManager.java
+++ 
b/lang/java/reef-runtime-yarn/src/main/java/org/apache/reef/runtime/yarn/driver/YarnContainerManager.java
@@ -367,26 +367,26 @@ final class YarnContainerManager
           ResourceStatusEventImpl.newBuilder().setIdentifier(containerId);
 
       switch (value.getState()) {
-        case COMPLETE:
-          LOG.log(Level.FINE, "Container completed: status {0}", 
value.getExitStatus());
-          switch (value.getExitStatus()) {
-            case 0:
-              status.setState(ReefServiceProtos.State.DONE);
-              break;
-            case 143:
-              status.setState(ReefServiceProtos.State.KILLED);
-              break;
-            default:
-              status.setState(ReefServiceProtos.State.FAILED);
-          }
-          status.setExitCode(value.getExitStatus());
-          // remove the completed container (can be either done/killed/failed) 
from book keeping
-          this.containers.removeAndGet(containerId);
-          logContainerRemoval(containerId);
+      case COMPLETE:
+        LOG.log(Level.FINE, "Container completed: status {0}", 
value.getExitStatus());
+        switch (value.getExitStatus()) {
+        case 0:
+          status.setState(ReefServiceProtos.State.DONE);
+          break;
+        case 143:
+          status.setState(ReefServiceProtos.State.KILLED);
           break;
         default:
-          LOG.info("Container running");
-          status.setState(ReefServiceProtos.State.RUNNING);
+          status.setState(ReefServiceProtos.State.FAILED);
+        }
+        status.setExitCode(value.getExitStatus());
+          // remove the completed container (can be either done/killed/failed) 
from book keeping
+        this.containers.removeAndGet(containerId);
+        logContainerRemoval(containerId);
+        break;
+      default:
+        LOG.info("Container running");
+        status.setState(ReefServiceProtos.State.RUNNING);
       }
 
       if (value.getDiagnostics() != null) {
@@ -611,7 +611,7 @@ final class YarnContainerManager
             new BufferedWriter(new OutputStreamWriter(fs.append(path))) :
             new BufferedWriter(new OutputStreamWriter(fs.create(path)));
     ) {
-        bw.write(entry);
+      bw.write(entry);
     } catch (final IOException e) {
       if (appendToLog) {
         LOG.log(Level.FINE, "Unable to add an entry to the Evaluator log. 
Attempting append by delete and recreate", e);

http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/1c5926d3/lang/java/reef-tang/tang/src/main/java/org/apache/reef/tang/formats/ConfigurationModule.java
----------------------------------------------------------------------
diff --git 
a/lang/java/reef-tang/tang/src/main/java/org/apache/reef/tang/formats/ConfigurationModule.java
 
b/lang/java/reef-tang/tang/src/main/java/org/apache/reef/tang/formats/ConfigurationModule.java
index ae7ebba..e258cb1 100644
--- 
a/lang/java/reef-tang/tang/src/main/java/org/apache/reef/tang/formats/ConfigurationModule.java
+++ 
b/lang/java/reef-tang/tang/src/main/java/org/apache/reef/tang/formats/ConfigurationModule.java
@@ -292,7 +292,7 @@ public class ConfigurationModule {
             setParams.isEmpty() &&
             setImplLists.isEmpty() &&
             setParamLists.isEmpty()
-    )) {
+      )) {
       throw new ClassHierarchyException("Detected statically set 
ConfigurationModule Parameter / Implementation.  set() should only be used 
dynamically.  Use bind...() instead.");
     }
   }

http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/1c5926d3/lang/java/reef-tests/src/main/java/org/apache/reef/tests/fail/driver/FailDriver.java
----------------------------------------------------------------------
diff --git 
a/lang/java/reef-tests/src/main/java/org/apache/reef/tests/fail/driver/FailDriver.java
 
b/lang/java/reef-tests/src/main/java/org/apache/reef/tests/fail/driver/FailDriver.java
index 27038f1..a425d34 100644
--- 
a/lang/java/reef-tests/src/main/java/org/apache/reef/tests/fail/driver/FailDriver.java
+++ 
b/lang/java/reef-tests/src/main/java/org/apache/reef/tests/fail/driver/FailDriver.java
@@ -263,15 +263,15 @@ public final class FailDriver {
       checkMsgOrder(task);
       FailDriver.this.task = task;
       switch (state) {
-        case INIT:
-          state = DriverState.SEND_MSG;
-          break;
-        case RESUME:
-          state = DriverState.CLOSE;
-          break;
-        default:
-          LOG.log(Level.WARNING, "Unexpected state at TaskRuntime: {0}", 
state);
-          throw new DriverSideFailure("Unexpected state: " + state);
+      case INIT:
+        state = DriverState.SEND_MSG;
+        break;
+      case RESUME:
+        state = DriverState.CLOSE;
+        break;
+      default:
+        LOG.log(Level.WARNING, "Unexpected state at TaskRuntime: {0}", state);
+        throw new DriverSideFailure("Unexpected state: " + state);
       }
       // After a delay, send message or suspend the task:
       clock.scheduleAlarm(MSG_DELAY, new AlarmHandler());
@@ -345,18 +345,18 @@ public final class FailDriver {
     public void onNext(final Alarm time) {
       FailDriver.this.checkMsgOrder(time);
       switch (FailDriver.this.state) {
-        case SEND_MSG:
-          FailDriver.this.task.send(HELLO_STR);
-          break;
-        case SUSPEND:
-          FailDriver.this.task.suspend();
-          break;
-        case CLOSE:
-          FailDriver.this.task.close();
-          break;
-        default:
-          LOG.log(Level.WARNING, "Unexpected state at AlarmHandler: {0}", 
FailDriver.this.state);
-          throw new DriverSideFailure("Unexpected state: " + 
FailDriver.this.state);
+      case SEND_MSG:
+        FailDriver.this.task.send(HELLO_STR);
+        break;
+      case SUSPEND:
+        FailDriver.this.task.suspend();
+        break;
+      case CLOSE:
+        FailDriver.this.task.close();
+        break;
+      default:
+        LOG.log(Level.WARNING, "Unexpected state at AlarmHandler: {0}", 
FailDriver.this.state);
+        throw new DriverSideFailure("Unexpected state: " + 
FailDriver.this.state);
       }
     }
   }

http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/1c5926d3/lang/java/reef-tests/src/main/java/org/apache/reef/tests/fail/task/Driver.java
----------------------------------------------------------------------
diff --git 
a/lang/java/reef-tests/src/main/java/org/apache/reef/tests/fail/task/Driver.java
 
b/lang/java/reef-tests/src/main/java/org/apache/reef/tests/fail/task/Driver.java
index ebc85fa..5eb0f59 100644
--- 
a/lang/java/reef-tests/src/main/java/org/apache/reef/tests/fail/task/Driver.java
+++ 
b/lang/java/reef-tests/src/main/java/org/apache/reef/tests/fail/task/Driver.java
@@ -78,40 +78,40 @@ public final class Driver {
             TaskConfiguration.CONF.set(TaskConfiguration.IDENTIFIER, taskId);
 
         switch (failTaskName) {
-          case "FailTask":
-            taskConfig = taskConfig.set(TaskConfiguration.TASK, 
FailTask.class);
-            break;
-          case "FailTaskCall":
-            taskConfig = taskConfig.set(TaskConfiguration.TASK, 
FailTaskCall.class);
-            break;
-          case "FailTaskMsg":
-            taskConfig = taskConfig
+        case "FailTask":
+          taskConfig = taskConfig.set(TaskConfiguration.TASK, FailTask.class);
+          break;
+        case "FailTaskCall":
+          taskConfig = taskConfig.set(TaskConfiguration.TASK, 
FailTaskCall.class);
+          break;
+        case "FailTaskMsg":
+          taskConfig = taskConfig
                 .set(TaskConfiguration.TASK, FailTaskMsg.class)
                 .set(TaskConfiguration.ON_MESSAGE, FailTaskMsg.class);
-            break;
-          case "FailTaskSuspend":
-            taskConfig = taskConfig
+          break;
+        case "FailTaskSuspend":
+          taskConfig = taskConfig
                 .set(TaskConfiguration.TASK, FailTaskSuspend.class)
                 .set(TaskConfiguration.ON_SUSPEND, FailTaskSuspend.class);
-            break;
-          case "FailTaskStart":
-            taskConfig = taskConfig
+          break;
+        case "FailTaskStart":
+          taskConfig = taskConfig
                 .set(TaskConfiguration.TASK, FailTaskStart.class)
                 .set(TaskConfiguration.ON_TASK_STARTED, FailTaskStart.class);
-            break;
-          case "FailTaskStop":
-            taskConfig = taskConfig
+          break;
+        case "FailTaskStop":
+          taskConfig = taskConfig
                 .set(TaskConfiguration.TASK, FailTaskStop.class)
                 .set(TaskConfiguration.ON_TASK_STOP, FailTaskStop.class)
                 .set(TaskConfiguration.ON_CLOSE, 
FailTaskStop.CloseEventHandler.class);
-            break;
-          case "FailTaskClose":
-            taskConfig = taskConfig
+          break;
+        case "FailTaskClose":
+          taskConfig = taskConfig
                 .set(TaskConfiguration.TASK, FailTaskClose.class)
                 .set(TaskConfiguration.ON_CLOSE, FailTaskClose.class);
-            break;
-          default:
-            break;
+          break;
+        default:
+          break;
         }
 
         eval.submitContextAndTask(contextConfig, taskConfig.build());
@@ -136,21 +136,21 @@ public final class Driver {
       }
 
       switch (failTaskName) {
-        case "FailTaskMsg":
-          LOG.log(Level.INFO, "TaskRuntime: Send message: {0}", task);
-          task.send(new byte[0]);
-          break;
-        case "FailTaskSuspend":
-          LOG.log(Level.INFO, "TaskRuntime: Suspend: {0}", task);
-          task.suspend();
-          break;
-        case "FailTaskStop":
-        case "FailTaskClose":
-          LOG.log(Level.INFO, "TaskRuntime: Stop/Close: {0}", task);
-          task.close();
-          break;
-        default:
-          break;
+      case "FailTaskMsg":
+        LOG.log(Level.INFO, "TaskRuntime: Send message: {0}", task);
+        task.send(new byte[0]);
+        break;
+      case "FailTaskSuspend":
+        LOG.log(Level.INFO, "TaskRuntime: Suspend: {0}", task);
+        task.suspend();
+        break;
+      case "FailTaskStop":
+      case "FailTaskClose":
+        LOG.log(Level.INFO, "TaskRuntime: Stop/Close: {0}", task);
+        task.close();
+        break;
+      default:
+        break;
       }
     }
   }

http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/1c5926d3/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/remote/impl/DefaultRemoteManagerImplementation.java
----------------------------------------------------------------------
diff --git 
a/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/remote/impl/DefaultRemoteManagerImplementation.java
 
b/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/remote/impl/DefaultRemoteManagerImplementation.java
index 2ba322a..83247b6 100644
--- 
a/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/remote/impl/DefaultRemoteManagerImplementation.java
+++ 
b/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/remote/impl/DefaultRemoteManagerImplementation.java
@@ -113,7 +113,7 @@ public class DefaultRemoteManagerImplementation implements 
RemoteManager {
               localAddressProvider, tpFactory, RangeTcpPortProvider.Default);
   }
 
-    @Inject
+  @Inject
     private <T> DefaultRemoteManagerImplementation(
             @Parameter(RemoteConfiguration.ManagerName.class) final String 
name,
             @Parameter(RemoteConfiguration.HostAddress.class) final String 
hostAddress,
@@ -127,30 +127,30 @@ public class DefaultRemoteManagerImplementation 
implements RemoteManager {
             final TransportFactory tpFactory,
             final TcpPortProvider tcpPortProvider) {
 
-        this.name = name;
-        this.handlerContainer = new HandlerContainer<>(name, codec);
+    this.name = name;
+    this.handlerContainer = new HandlerContainer<>(name, codec);
 
-        this.reRecvStage = orderingGuarantee ?
+    this.reRecvStage = orderingGuarantee ?
                 new OrderedRemoteReceiverStage(this.handlerContainer, 
errorHandler) :
                 new RemoteReceiverStage(this.handlerContainer, errorHandler, 
10);
 
-        this.transport = tpFactory.newInstance(
+    this.transport = tpFactory.newInstance(
                 hostAddress, listeningPort, this.reRecvStage, 
this.reRecvStage, numberOfTries, retryTimeout, tcpPortProvider);
 
-        this.handlerContainer.setTransport(this.transport);
+    this.handlerContainer.setTransport(this.transport);
 
-        this.myIdentifier = new SocketRemoteIdentifier(
+    this.myIdentifier = new SocketRemoteIdentifier(
                 (InetSocketAddress) this.transport.getLocalAddress());
 
-        this.reSendStage = new RemoteSenderStage(codec, this.transport, 10);
+    this.reSendStage = new RemoteSenderStage(codec, this.transport, 10);
 
-        StageManager.instance().register(this);
-        LOG.log(Level.FINEST, "RemoteManager {0} instantiated id {1} counter 
{2} listening on {3}:{4}. Binding address provided by {5}",
+    StageManager.instance().register(this);
+    LOG.log(Level.FINEST, "RemoteManager {0} instantiated id {1} counter {2} 
listening on {3}:{4}. Binding address provided by {5}",
                 new Object[]{this.name, this.myIdentifier, 
COUNTER.incrementAndGet(),
                         this.transport.getLocalAddress().toString(),
                         this.transport.getListeningPort(), 
localAddressProvider}
-        );
-    }
+    );
+  }
 
 
   /**

http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/1c5926d3/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/remote/transport/netty/NettyMessagingTransport.java
----------------------------------------------------------------------
diff --git 
a/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/remote/transport/netty/NettyMessagingTransport.java
 
b/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/remote/transport/netty/NettyMessagingTransport.java
index cbf9aa4..92f59c1 100644
--- 
a/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/remote/transport/netty/NettyMessagingTransport.java
+++ 
b/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/remote/transport/netty/NettyMessagingTransport.java
@@ -180,33 +180,33 @@ public class NettyMessagingTransport implements Transport 
{
 
     LOG.log(Level.FINE, "Binding to {0}", port);
 
-  Channel acceptor = null;
-  try {
-    if (port > 0) {
-      acceptor = this.serverBootstrap.bind(new InetSocketAddress(host, 
port)).sync().channel();
-    } else {
-      Iterator<Integer> ports = tcpPortProvider.iterator();
-      while (acceptor == null) {
-        if (!ports.hasNext()) {
-          break;
-        }
-        port = ports.next();
-        LOG.log(Level.FINEST, "Try port {0}", port);
-        try {
-          acceptor = this.serverBootstrap.bind(new InetSocketAddress(host, 
port)).sync().channel();
-        } catch (final Exception ex) {
-          if (ex instanceof BindException) {
-            LOG.log(Level.FINEST, "The port {0} is already bound. Try again", 
port);
-          } else {
-            throw ex;
+    Channel acceptor = null;
+    try {
+      if (port > 0) {
+        acceptor = this.serverBootstrap.bind(new InetSocketAddress(host, 
port)).sync().channel();
+      } else {
+        Iterator<Integer> ports = tcpPortProvider.iterator();
+        while (acceptor == null) {
+          if (!ports.hasNext()) {
+            break;
+          }
+          port = ports.next();
+          LOG.log(Level.FINEST, "Try port {0}", port);
+          try {
+            acceptor = this.serverBootstrap.bind(new InetSocketAddress(host, 
port)).sync().channel();
+          } catch (final Exception ex) {
+            if (ex instanceof BindException) {
+              LOG.log(Level.FINEST, "The port {0} is already bound. Try 
again", port);
+            } else {
+              throw ex;
+            }
           }
         }
       }
-    }
-  } catch (final Exception ex) {
-    final RuntimeException transportException =
-       new TransportRuntimeException("Cannot bind to port " + port);
-    LOG.log(Level.SEVERE, "Cannot bind to port " + port, ex);
+    } catch (final Exception ex) {
+      final RuntimeException transportException =
+          new TransportRuntimeException("Cannot bind to port " + port);
+      LOG.log(Level.SEVERE, "Cannot bind to port " + port, ex);
 
       this.clientWorkerGroup.shutdownGracefully();
       this.serverBossGroup.shutdownGracefully();

http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/1c5926d3/lang/java/reef-webserver/src/main/java/org/apache/reef/webserver/HttpServerReefEventHandler.java
----------------------------------------------------------------------
diff --git 
a/lang/java/reef-webserver/src/main/java/org/apache/reef/webserver/HttpServerReefEventHandler.java
 
b/lang/java/reef-webserver/src/main/java/org/apache/reef/webserver/HttpServerReefEventHandler.java
index e3447c5..f53744b 100644
--- 
a/lang/java/reef-webserver/src/main/java/org/apache/reef/webserver/HttpServerReefEventHandler.java
+++ 
b/lang/java/reef-webserver/src/main/java/org/apache/reef/webserver/HttpServerReefEventHandler.java
@@ -119,67 +119,67 @@ public final class HttpServerReefEventHandler implements 
HttpHandler {
     final String target = parsedHttpRequest.getTargetEntity().toLowerCase();
 
     switch (target) {
-      case "evaluators": {
-        final String queryStr = parsedHttpRequest.getQueryString();
-        if (queryStr == null || queryStr.isEmpty()) {
-          if (version.equals(VER)) {
-            writeEvaluatorsJsonOutput(response);
-          } else {
-            writeEvaluatorsWebOutput(response);
-          }
-        } else {
-          handleQueries(response, parsedHttpRequest.getQueryMap(), version);
-        }
-        break;
-      }
-      case "driver":
+    case "evaluators": {
+      final String queryStr = parsedHttpRequest.getQueryString();
+      if (queryStr == null || queryStr.isEmpty()) {
         if (version.equals(VER)) {
-          writeDriverJsonInformation(response);
+          writeEvaluatorsJsonOutput(response);
         } else {
-          writeDriverWebInformation(response);
-        }
-        break;
-      case "close":
-        for (final EventHandler<Void> e : clientCloseHandlers) {
-          e.onNext(null);
-        }
-        response.getWriter().println("Enforced closing");
-        break;
-      case "kill":
-        reefStateManager.OnClientKill();
-        response.getWriter().println("Killing");
-        break;
-      case "duration":
-        final ArrayList<String> lines = 
LogParser.getFilteredLinesFromFile(driverStderrFile, LoggingScopeImpl.DURATION, 
LoggingScopeImpl.TOKEN, null);
-        writeLines(response, lines, "Performance...");
-        break;
-      case "stages":
-        final ArrayList<String> starts = 
LogParser.getFilteredLinesFromFile(driverStderrFile, 
LoggingScopeImpl.START_PREFIX, logLevelPrefix, null);
-        final ArrayList<String> exits = 
LogParser.getFilteredLinesFromFile(driverStderrFile, 
LoggingScopeImpl.EXIT_PREFIX, logLevelPrefix, LoggingScopeImpl.DURATION);
-        final ArrayList<String> startsStages = LogParser.findStages(starts, 
LogParser.startIndicators);
-        final ArrayList<String> endStages = LogParser.findStages(exits, 
LogParser.endIndicators);
-        final ArrayList<String> result = LogParser.mergeStages(startsStages, 
endStages);
-        writeLines(response, result, "Current Stages...");
-        break;
-      case "logfile":
-        final List names = parsedHttpRequest.getQueryMap().get("filename");
-        if (names == null || names.size() == 0) {
-          response.getWriter().println(String.format("File name is not 
provided"));
+          writeEvaluatorsWebOutput(response);
         }
+      } else {
+        handleQueries(response, parsedHttpRequest.getQueryMap(), version);
+      }
+      break;
+    }
+    case "driver":
+      if (version.equals(VER)) {
+        writeDriverJsonInformation(response);
+      } else {
+        writeDriverWebInformation(response);
+      }
+      break;
+    case "close":
+      for (final EventHandler<Void> e : clientCloseHandlers) {
+        e.onNext(null);
+      }
+      response.getWriter().println("Enforced closing");
+      break;
+    case "kill":
+      reefStateManager.OnClientKill();
+      response.getWriter().println("Killing");
+      break;
+    case "duration":
+      final ArrayList<String> lines = 
LogParser.getFilteredLinesFromFile(driverStderrFile, LoggingScopeImpl.DURATION, 
LoggingScopeImpl.TOKEN, null);
+      writeLines(response, lines, "Performance...");
+      break;
+    case "stages":
+      final ArrayList<String> starts = 
LogParser.getFilteredLinesFromFile(driverStderrFile, 
LoggingScopeImpl.START_PREFIX, logLevelPrefix, null);
+      final ArrayList<String> exits = 
LogParser.getFilteredLinesFromFile(driverStderrFile, 
LoggingScopeImpl.EXIT_PREFIX, logLevelPrefix, LoggingScopeImpl.DURATION);
+      final ArrayList<String> startsStages = LogParser.findStages(starts, 
LogParser.startIndicators);
+      final ArrayList<String> endStages = LogParser.findStages(exits, 
LogParser.endIndicators);
+      final ArrayList<String> result = LogParser.mergeStages(startsStages, 
endStages);
+      writeLines(response, result, "Current Stages...");
+      break;
+    case "logfile":
+      final List names = parsedHttpRequest.getQueryMap().get("filename");
+      if (names == null || names.size() == 0) {
+        response.getWriter().println(String.format("File name is not 
provided"));
+      }
 
-        final String fileName = (String)names.get(0);
-        if (!fileName.equals(driverStdoutFile) && 
!fileName.equals(driverStderrFile)) {
-          response.getWriter().println(String.format("Unsupported file names: 
[%s] ", fileName));
-        }
-        try {
-          final byte[] outputBody = readFile((String) 
names.get(0)).getBytes(Charset.forName("UTF-8"));
-          response.getOutputStream().write(outputBody);
-        } catch(IOException e) {
-          response.getWriter().println(String.format("Cannot find the log 
file: [%s].", fileName));
-        }
-        break;
-      default:
-        response.getWriter().println(String.format("Unsupported query for 
entity: [%s].", target));
+      final String fileName = (String)names.get(0);
+      if (!fileName.equals(driverStdoutFile) && 
!fileName.equals(driverStderrFile)) {
+        response.getWriter().println(String.format("Unsupported file names: 
[%s] ", fileName));
+      }
+      try {
+        final byte[] outputBody = readFile((String) 
names.get(0)).getBytes(Charset.forName("UTF-8"));
+        response.getOutputStream().write(outputBody);
+      } catch(IOException e) {
+        response.getWriter().println(String.format("Cannot find the log file: 
[%s].", fileName));
+      }
+      break;
+    default:
+      response.getWriter().println(String.format("Unsupported query for 
entity: [%s].", target));
     }
   }
 
@@ -198,16 +198,16 @@ public final class HttpServerReefEventHandler implements 
HttpHandler {
       final String queryTarget = entry.getKey().toLowerCase();
 
       switch (queryTarget) {
-        case "id":
-          if (version.equals(VER)) {
-            writeEvaluatorInfoJsonOutput(response, entry.getValue());
-          } else {
-            writeEvaluatorInfoWebOutput(response, entry.getValue());
-          }
-          break;
-        default:
-          response.getWriter().println("Unsupported query : " + queryTarget);
-          break;
+      case "id":
+        if (version.equals(VER)) {
+          writeEvaluatorInfoJsonOutput(response, entry.getValue());
+        } else {
+          writeEvaluatorInfoWebOutput(response, entry.getValue());
+        }
+        break;
+      default:
+        response.getWriter().println("Unsupported query : " + queryTarget);
+        break;
       }
     }
   }

Reply via email to