svn merge -c 1333144 FIXES: MAPREDUCE-4210. Expose listener address for WebApp (Daryn Sharp via bobby)
git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-2@1333145 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
653bae728f
commit
611dffafc7
|
@ -201,6 +201,8 @@ Release 0.23.3 - UNRELEASED
|
|||
MAPREDUCE-4079. Allow MR AppMaster to limit ephemeral port range.
|
||||
(bobby via tgraves)
|
||||
|
||||
MAPREDUCE-4210. Expose listener address for WebApp (Daryn Sharp via bobby)
|
||||
|
||||
OPTIMIZATIONS
|
||||
|
||||
BUG FIXES
|
||||
|
|
|
@ -20,6 +20,7 @@ package org.apache.hadoop.yarn.webapp;
|
|||
|
||||
import static com.google.common.base.Preconditions.checkNotNull;
|
||||
|
||||
import java.net.InetSocketAddress;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
@ -75,6 +76,14 @@ public abstract class WebApp extends ServletModule {
|
|||
|
||||
@Provides public HttpServer httpServer() { return httpServer; }
|
||||
|
||||
/**
|
||||
* Get the address the http server is bound to
|
||||
* @return InetSocketAddress
|
||||
*/
|
||||
public InetSocketAddress getListenerAddress() {
|
||||
return checkNotNull(httpServer, "httpServer").getListenerAddress();
|
||||
}
|
||||
|
||||
public int port() {
|
||||
return checkNotNull(httpServer, "httpServer").getPort();
|
||||
}
|
||||
|
|
|
@ -149,6 +149,18 @@ public class TestWebApp {
|
|||
app.stop();
|
||||
}
|
||||
|
||||
@Test public void testCreateWithPort() {
|
||||
// see if the ephemeral port is updated
|
||||
WebApp app = WebApps.$for(this).at(0).start();
|
||||
int port = app.getListenerAddress().getPort();
|
||||
assertTrue(port > 0);
|
||||
app.stop();
|
||||
// try to reuse the port
|
||||
app = WebApps.$for(this).at(port).start();
|
||||
assertEquals(port, app.getListenerAddress().getPort());
|
||||
app.stop();
|
||||
}
|
||||
|
||||
@Test public void testServePaths() {
|
||||
WebApp app = WebApps.$for("test", this).start();
|
||||
assertEquals("/test", app.getRedirectPath());
|
||||
|
|
Loading…
Reference in New Issue