Repository: knox Updated Branches: refs/heads/master 1fdae18db -> 9596f2dc2
KNOX-890 - Make IdleTimeout Configurable in Knox Gateway Server Project: http://git-wip-us.apache.org/repos/asf/knox/repo Commit: http://git-wip-us.apache.org/repos/asf/knox/commit/9596f2dc Tree: http://git-wip-us.apache.org/repos/asf/knox/tree/9596f2dc Diff: http://git-wip-us.apache.org/repos/asf/knox/diff/9596f2dc Branch: refs/heads/master Commit: 9596f2dc2d0e55f37ff78fb73ad0bfc548ad8c7a Parents: 1fdae18 Author: Larry McCay <lmc...@hortonworks.com> Authored: Fri Feb 24 00:05:38 2017 -0500 Committer: Larry McCay <lmc...@hortonworks.com> Committed: Fri Feb 24 00:05:38 2017 -0500 ---------------------------------------------------------------------- .../src/main/java/org/apache/hadoop/gateway/GatewayServer.java | 4 ++++ .../apache/hadoop/gateway/config/impl/GatewayConfigImpl.java | 6 ++++++ .../java/org/apache/hadoop/gateway/config/GatewayConfig.java | 2 ++ .../main/java/org/apache/hadoop/gateway/GatewayTestConfig.java | 5 +++++ .../test/java/org/apache/hadoop/gateway/GatewayTestConfig.java | 5 +++++ 5 files changed, 22 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/knox/blob/9596f2dc/gateway-server/src/main/java/org/apache/hadoop/gateway/GatewayServer.java ---------------------------------------------------------------------- diff --git a/gateway-server/src/main/java/org/apache/hadoop/gateway/GatewayServer.java b/gateway-server/src/main/java/org/apache/hadoop/gateway/GatewayServer.java index 442004c..69d7c4b 100644 --- a/gateway-server/src/main/java/org/apache/hadoop/gateway/GatewayServer.java +++ b/gateway-server/src/main/java/org/apache/hadoop/gateway/GatewayServer.java @@ -336,6 +336,10 @@ public class GatewayServer { } connector.setHost( address.getHostName() ); connector.setPort( address.getPort() ); + long idleTimeout = config.getGatewayIdleTimeout(); + if (idleTimeout > 0l) { + connector.setIdleTimeout(idleTimeout); + } return connector; } http://git-wip-us.apache.org/repos/asf/knox/blob/9596f2dc/gateway-server/src/main/java/org/apache/hadoop/gateway/config/impl/GatewayConfigImpl.java ---------------------------------------------------------------------- diff --git a/gateway-server/src/main/java/org/apache/hadoop/gateway/config/impl/GatewayConfigImpl.java b/gateway-server/src/main/java/org/apache/hadoop/gateway/config/impl/GatewayConfigImpl.java index 0906157..6bc75a9 100644 --- a/gateway-server/src/main/java/org/apache/hadoop/gateway/config/impl/GatewayConfigImpl.java +++ b/gateway-server/src/main/java/org/apache/hadoop/gateway/config/impl/GatewayConfigImpl.java @@ -136,6 +136,7 @@ public class GatewayConfigImpl extends Configuration implements GatewayConfig { public static final String GRAPHITE_METRICS_REPORTING_HOST = GATEWAY_CONFIG_FILE_PREFIX + ".graphite.metrics.reporting.host"; public static final String GRAPHITE_METRICS_REPORTING_PORT = GATEWAY_CONFIG_FILE_PREFIX + ".graphite.metrics.reporting.port"; public static final String GRAPHITE_METRICS_REPORTING_FREQUENCY = GATEWAY_CONFIG_FILE_PREFIX + ".graphite.metrics.reporting.frequency"; + public static final String GATEWAY_IDLE_TIMEOUT = GATEWAY_CONFIG_FILE_PREFIX + ".idle.timeout"; /* @since 0.10 Websocket config variables */ public static final String WEBSOCKET_FEATURE_ENABLED = GATEWAY_CONFIG_FILE_PREFIX + ".websocket.feature.enabled"; @@ -637,6 +638,11 @@ public class GatewayConfigImpl extends Configuration implements GatewayConfig { } @Override + public long getGatewayIdleTimeout() { + return getLong(GATEWAY_IDLE_TIMEOUT, 0l); + } + + @Override public long getGatewayDeploymentsBackupAgeLimit() { PeriodFormatter f = new PeriodFormatterBuilder().appendDays().toFormatter(); String s = get( DEPLOYMENTS_BACKUP_AGE_LIMIT, "-1" ); http://git-wip-us.apache.org/repos/asf/knox/blob/9596f2dc/gateway-spi/src/main/java/org/apache/hadoop/gateway/config/GatewayConfig.java ---------------------------------------------------------------------- diff --git a/gateway-spi/src/main/java/org/apache/hadoop/gateway/config/GatewayConfig.java b/gateway-spi/src/main/java/org/apache/hadoop/gateway/config/GatewayConfig.java index ca86e44..c083a42 100644 --- a/gateway-spi/src/main/java/org/apache/hadoop/gateway/config/GatewayConfig.java +++ b/gateway-spi/src/main/java/org/apache/hadoop/gateway/config/GatewayConfig.java @@ -139,6 +139,8 @@ public interface GatewayConfig { long getGatewayDeploymentsBackupAgeLimit(); + long getGatewayIdleTimeout(); + String getSigningKeystoreName(); String getSigningKeyAlias(); http://git-wip-us.apache.org/repos/asf/knox/blob/9596f2dc/gateway-test-release-utils/src/main/java/org/apache/hadoop/gateway/GatewayTestConfig.java ---------------------------------------------------------------------- diff --git a/gateway-test-release-utils/src/main/java/org/apache/hadoop/gateway/GatewayTestConfig.java b/gateway-test-release-utils/src/main/java/org/apache/hadoop/gateway/GatewayTestConfig.java index 22f65cc..eca4e01 100644 --- a/gateway-test-release-utils/src/main/java/org/apache/hadoop/gateway/GatewayTestConfig.java +++ b/gateway-test-release-utils/src/main/java/org/apache/hadoop/gateway/GatewayTestConfig.java @@ -125,6 +125,11 @@ public class GatewayTestConfig extends Configuration implements GatewayConfig { } @Override + public long getGatewayIdleTimeout() { + return 0l; + } + + @Override public boolean isSSLEnabled() { // TODO Auto-generated method stub return false; http://git-wip-us.apache.org/repos/asf/knox/blob/9596f2dc/gateway-test/src/test/java/org/apache/hadoop/gateway/GatewayTestConfig.java ---------------------------------------------------------------------- diff --git a/gateway-test/src/test/java/org/apache/hadoop/gateway/GatewayTestConfig.java b/gateway-test/src/test/java/org/apache/hadoop/gateway/GatewayTestConfig.java index 25a09f7..0ea5cf5 100644 --- a/gateway-test/src/test/java/org/apache/hadoop/gateway/GatewayTestConfig.java +++ b/gateway-test/src/test/java/org/apache/hadoop/gateway/GatewayTestConfig.java @@ -135,6 +135,11 @@ public class GatewayTestConfig extends Configuration implements GatewayConfig { return new InetSocketAddress( getGatewayHost(), getGatewayPort() ); } + + public long getGatewayIdleTimeout() { + return 0l; + } + @Override public boolean isSSLEnabled() { return sslEnabled;