You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@reef.apache.org by mo...@apache.org on 2016/08/19 01:20:57 UTC
reef git commit: [REEF-1529] Fixing reef-webserver for multi runtime
Repository: reef
Updated Branches:
refs/heads/REEF-1529 [created] e6ba12a08
[REEF-1529] Fixing reef-webserver for multi runtime
This addressed the issue by
* Making the http-server available to the actual rutnimes hosted by the RuntimesHost
* Fixing style issues and logging exception
JIRA: [REEF-1529](https://issues.apache.org/jira/browse/REEF-1529) close
Pull Request:
Closes #1100
Project: http://git-wip-us.apache.org/repos/asf/reef/repo
Commit: http://git-wip-us.apache.org/repos/asf/reef/commit/e6ba12a0
Tree: http://git-wip-us.apache.org/repos/asf/reef/tree/e6ba12a0
Diff: http://git-wip-us.apache.org/repos/asf/reef/diff/e6ba12a0
Branch: refs/heads/REEF-1529
Commit: e6ba12a08e18dc7fa9027f51bdd40e3bab4d63ed
Parents: a59070f
Author: Boris Shulman <sh...@gmail.com>
Authored: Thu Aug 18 15:35:34 2016 -0700
Committer: Sergiy Matusevych <mo...@apache.org>
Committed: Thu Aug 18 18:17:55 2016 -0700
----------------------------------------------------------------------
.../reef/runtime/multi/driver/RuntimesHost.java | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/reef/blob/e6ba12a0/lang/java/reef-runtime-multi/src/main/java/org/apache/reef/runtime/multi/driver/RuntimesHost.java
----------------------------------------------------------------------
diff --git a/lang/java/reef-runtime-multi/src/main/java/org/apache/reef/runtime/multi/driver/RuntimesHost.java b/lang/java/reef-runtime-multi/src/main/java/org/apache/reef/runtime/multi/driver/RuntimesHost.java
index bfbc037..62646d2 100644
--- a/lang/java/reef-runtime-multi/src/main/java/org/apache/reef/runtime/multi/driver/RuntimesHost.java
+++ b/lang/java/reef-runtime-multi/src/main/java/org/apache/reef/runtime/multi/driver/RuntimesHost.java
@@ -40,16 +40,20 @@ import org.apache.reef.tang.formats.AvroConfigurationSerializer;
import org.apache.reef.wake.EventHandler;
import org.apache.reef.wake.time.runtime.event.RuntimeStart;
import org.apache.reef.wake.time.runtime.event.RuntimeStop;
+import org.apache.reef.webserver.HttpServer;
import javax.inject.Inject;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
+import java.util.logging.Level;
+import java.util.logging.Logger;
/**
* Hosts the actual runtime implementations and delegates invocations to them.
*/
final class RuntimesHost {
+ private static final Logger LOG = Logger.getLogger(RuntimesHost.class.getName());
private final AvroMultiRuntimeDefinition runtimeDefinition;
private final Injector originalInjector;
private final String defaultRuntimeName;
@@ -127,12 +131,23 @@ final class RuntimesHost {
runtimeInjector.bindVolatileParameter(
RuntimeParameters.RuntimeStatusHandler.class,
runtimeStatusEventHandler);
+ HttpServer httpServer = null;
+ try {
+ httpServer = this.originalInjector.getInstance(HttpServer.class);
+ } catch (final InjectionException e) {
+ LOG.log(Level.INFO, "Http Server is not configured for the runtime", e);
+ }
+
+ if (httpServer != null) {
+ runtimeInjector.bindVolatileInstance(HttpServer.class, httpServer);
+ LOG.log(Level.INFO, "Binding http server for the runtime implementation");
+ }
}
/**
* Retrieves requested runtime, if requested name is empty a default runtime will be used.
* @param requestedRuntimeName the requested runtime name
- * @return
+ * @return The runtime
*/
private Runtime getRuntime(final String requestedRuntimeName) {
String runtimeName = requestedRuntimeName;