This is an automated email from the ASF dual-hosted git repository. lmccay pushed a change to annotated tag v1.4.0-branch in repository https://gitbox.apache.org/repos/asf/knox.git.
*** WARNING: tag v1.4.0-branch was modified! *** from 98fe3d2 (tag) to e319a14 (tag) tagging 3189fe7b9f02a0318f62662fa1eaf6369a0ee6e6 (commit) replaces v1.3.0-branch by lmccay on Tue Apr 14 14:50:03 2020 -0400 - Log ----------------------------------------------------------------- Branch point for v1.4.0 ----------------------------------------------------------------------- from 3d0e3b5 KNOX-1912 - X509CertificateUtil should set CN and SAN add abde1c1 Updating for 1.4.0-SNAPSHOT add 0ac46f3 KNOX-1911 - Support ClouderaManager Service Discovery in Admin UI add 24d3bf3 KNOX-1915 - X509CertificateUtil SAN should contain fully qualified hostname add 2a12710 KNOX-1740 - Add Trusted Proxy Support to Knox (#106) add 51e4363 KNOX-1916 - Provide default configuration for Hue in topology (#109) add da11a65 KNOX-1917 - DefaultKeystoreService should use a shared read lock (#110) add 082cb1e KNOX-1918 - Atlas API - prevent global HDFS rules from triggering (#111) add 027ac74 KNOX-1885 - Upgrade jetty to 9.4.19.v20190610 add a76f64b Cleanup Javadoc warnings add 77f0c51 Exclude jdk.tools from hadoop-annotations add e90beea KNOX-1919 - Taking gateway.path into consideration when processing redirectToUrl provider param with the OOTB knoxsso.xml sample (#113) add a1d86ae KNOX-1816 - Added shellcheck validation to our build optionally and fixed issues shellcheck already found (#114) add a4587b6 KNOX-1922 - Processing a DNSName only if the hostname starts with a letter (#115) add 471cf78 KNOX-1923 - Upgrade nodejs to latest LTS v10.16.0 (#117) add 61b8d35 KNOX-1924 - Upgrade org.abstractj.libpam4j 1.9.1 to org.kohsuke.libpam4j 1.11 (#116) add 30446bf KNOX-1925 - KnoxPamRealm code cleanup add 40485c5 KNOX-1744 - Add rewrite rules to fix executor stdout/stderr links in Spark History Server UI (#120) add 512147f KNOX-1933 - Add rewrite rules to fix Yarn RM application and logs URL (#119) add ae44c17 KNOX-1593 - YARN v2 UI - Application - View logs for running application add 34723fd KNOX-1928 - CM discovery - Multiple of same url are added to descriptor add b10a852 KNOX-1927 - CM discovery - ZEPPELINUI / ZEPPELINWS urls are not discovered add f199443 KNOX-1588 - YARN v2 UI - Make sure that Spark and MR Job history links are handled add 17dfaa6 Updated CHANGES for v1.3.0 (post release) add 1b3e3df KNOX-1940 - Upgrade commons-text to 1.7 add c38cf6c KNOX-1943 - Upgrade dependency-check-maven to 5.2.0 add 6e8e47f KNOX-1941 - Upgrade joda-time to 2.10.3 add 5fa3e03 KNOX-1936 - Upgrade log4j2 to 2.12.0 add 9fa268e KNOX-1937 - Upgrade testcontainers to 1.11.4 add 13580cf KNOX-1942 - Upgrade spotbugs-maven-plugin to 3.1.12.1 add dcfdae0 KNOX-1944 - Upgrade protobuf-java to 3.9.0 add e561254 KNOX-1945 - Upgrade spring-vault to 2.1.3.RELEASE add 4944351 KNOX-1938 - Upgrade nimbus-jose-jwt to 7.5.1 add 3be8d5d KNOX-1949 - CM discovery - Improve efficiency of discovery add 3a9dbea KNOX-1950 - YARN v2 UI - Tools - Yarn Daemon Logs - /logs/stacks link broken add 6b080d8 KNOX-1939 - Upgrade jackson-databind to 2.9.9.1 add 8a2e6ae KNOX-1948 - If no rules are defined don't rewrite (#121) add 359f220 KNOX-1929 - CM discovery - HIVE URLs not discovered when HIVE_ON_TEZ is deployed add d398c63 KNOX-1955 - Admin UI should handle gateway.path change (#123) add 8624167 KNOX-1956 - Improve AdminUI development by using angular proxy conf (#122) add d2ae683 KNOX-1590 - YARN v2 UI - Application - ApplicationMaster link is broken add 34d3937 Fix javadoc warnings add 4261051 KNOX-1958 - YARN v2 UI - internal links of History and ApplicationMaster Pages. add 096e717 KNOX-1930 - CM discovery - JOBTRACKER URLs not discovered add c7328c9 KNOX-1959 - HadoopAuthCookieStore should not read krb5 login config each time add 232c422 KNOX-1963 - Ranger API service should proxy xusers/users and and xusers/groups add eb6d3c5 KNOX-1964 - YARN v1 UI - ContainerLogs link broken for Running Jobs add 0619f0e KNOX-1966 - Upgrade jackson-databind to 2.9.9.2 add 55adc6a KNOX-1694 - Prevent port mapped topologies from being exposed to gateway port (#126) add 379b162 KNOX-1968 - YARN UI V2 proxied via Knox does not rewrite Spark stderr/stdout links add 880ced1 Fix javadoc warnings add 970527a KNOX-1967 - Add a service definition for Impala Hiveserver2 (#127) add 4fde386 KNOX-1969 - Upgrade jackson-databind to 2.9.9.3 add 81fe6fc KNOX-1986 - Do not attempt to rewrite empty payload (#129) add 51d25c5 KNOX-1988 - In Spark History Server UI, make links for Executor logs point to YARN UI v2 (#132) add a102269 KNOX-1952 - Add NiFi Registry service definition (#128) add cc27ffe KNOX-1957 - Optional APP_JAVA_OPTS are handled properly (#131) add 8a8fe3b KNOX-1990 - Testing non-existing/non-parsable JAAS configuration in sequential order even if parallel test execution is enabled (#133) add 9ae8d4e KNOX-1934 - Setting the default value of knoxsso.cookie.secure.only based on ssl.enabled flag in gateway-site.xml (#134) add 32c3f2d KNOX-1995 - If a rule doesn't match, shouldn't error. Need to handle null case add a6197d1 KNOX-1994 - Update Ranger API service definition to allow separate URL patterns (#136) add af2699b KNOX-1992: Add a service definition for Impala's debug web pages (#137) add fd7df34 KNOX-1999 - Make WEBHDFS rule that rewrites hdfs:// local (#139) add b1cc3a7 KNOX-2000 - KnoxSession should not set javax.security.auth.useSubjectCredsOnly add 880217d KNOX-2001 - KnoxSession should log a warning message when useSubjectCredsOnly is false add 5d3acde KNOX-2002 - Add a KnoxShellTable to Represent and Render Output in Tabular Format add ea086a4 KNOX-2002 - Fix KnoxShellTableTest build errors add 074a035 KNOX-2005 - Improvements to KnoxShellTable add 36cdb97 KNOX-1788 - New XSS Provider is added to Web Application Security Provider List (#141) add de014d3 KNOX-1971 - Upgrade Hashicorp Vault test to vault:1.2.1 add ebda495 KNOX-2007 - TestHashicorpVaultAliasService fails if a process is already bound to port 8200 add 3897835 KNOX-2008. Fix Broken RM Home Link in YARN UI. add 5159972 KNOX-1980 - Upgrade checkstyle to 8.23 add b46c378 KNOX-1973 - Upgrade cloudera-manager-api 6.2.0 to 6.3.0 add 1bf9d8f KNOX-1976 - Upgrade dependency-check-maven to 5.2.1 add c149dbd KNOX-1972 - Upgrade groovy to 2.5.8 add 5b3e9e4 KNOX-1985 - Upgrade javax.annotation-api to 1.3.2 add 6542076 KNOX-1984 - Upgrade jna to 5.4.0 add 5831155 KNOX-1978 - Upgrade nimbus-jose-jwt to 7.7 add 15ce5d6 KNOX-1975 - Upgrade slf4j to 1.7.27 add 9ab8e44 KNOX-1982 - Upgrade testcontainers to 1.12.0 add d51771a KNOX-1983 - Upgrade commons-codec to 1.13 add 9b7e7ae KNOX-1979 - Upgrade dockerfile-maven-plugin to 1.4.12 add 24c364e KNOX-1974 - Upgrade protobuf-java to 3.9.1 add 9f0d026 KNOX-1977 - Upgrade spotbugs-maven-plugin to 3.1.12.2 add 48ae3bd KNOX-1981 - Upgrade spring-core to 5.1.9.RELEASE add 62b7acf KNOX-2007 - Ensure wait for vault to start on exposed port add ac21cb6 KNOX-1994 - Update Ranger API service definition to allow separate URL patterns add 731d8ff KNOX-2011 - Don't block SET-COOKIE response header for Ranger UI (#144) add e89aaaf KNOX-2012 Fix an issue where multiple sessions are created during Ranger login (#146) add 8b1d79f KNOX-1998 - WebHDFS rewrite.xml does not have rewrite rule for Location field in json (#138) add 6422b54 KNOX-2016 - KnoxShellTable SQL Builder, Col Select, Sort add c636d5b KNOX-2017 - Making Cloudera repository available in Knox's parent POM so that Cloudera dependencies are available in every children project (#149) add 51b9ab7 KNOX-1914 - New admin API to be used by the UI to fetch available service discovery types (#147) add 854017d KNOX-2013 - CM discovery - Add Phoenix to auto discovery (#148) add 8360635 KNOX-2014 - Make sure ATLASSESSIONID cookie is set (#150) add 00c36e8 KNOX-2010 - Upgrade zookeeper to 3.5.5 (#152) add d00f061 KNOX-1987 - knox failed to start because knoxcli failed with "java.lan…g.NoSuchFieldError: DEFAULT_XML_TYPE_ATTRIBUTE" (#130) add 61bdb98 KNOX-2021 - Fix typo in gateway-docker/README.md (#155) add 8e7e9d9 KNOX-2022 - Splitting up KnoxShellTable and do minor cleanup add 5c2c7a7 KNOX-2022 - KnoxShellTable contains Comparables instead of Strings add 739fc28 KNOX-2028 - Upgrade jackson to 2.9.10 add b80ffff KNOX-2036 - Upgrade cors-filter to 2.8 add 290aa1d KNOX-2035 - Upgrade maven-bundle-plugin to 4.2.1 add ca56439 KNOX-2034 - Upgrade jetty to 9.4.20.v20190813 add 325c782 KNOX-2033 - Upgrade commons-beanutils to 1.9.4 add 8a5ff6e KNOX-2032 - Upgrade cglib to 3.3.0 add ae424d2 KNOX-2031 - Upgrade slf4j to 1.7.28 add 7864212 KNOX-2030 - Upgrade frontend-maven-plugin to 1.8.0 add 978298b KNOX-2029 - Upgrade log4j2 to 2.12.1 add 176d5f4 KNOX-2037 - Upgrade nimbus-jose-jwt to 7.8 add e002ee6 KNOX-2038 - Upgrade guava to 28.1-jre add be050cf KNOX-2039 - Upgrade checkstyle to 8.24 add 390fb27 KNOX-2040 - Upgrade commons-text to 1.8 add 7e594ab KNOX-2041 - Upgrade rest-assured to 4.1.1 add cb3a904 KNOX-2042 - Upgrade testcontainers to 1.12.1 add 91ed928 KNOX-2043 - Upgrade bcprov-jdk15on to 1.63 add 432ec50 KNOX-2044 - Upgrade protobuf-java to 3.10.0 add 40e0de2 KNOX-2045 - Upgrade joda-time to 2.10.4 add 39880da KNOX-2046 - Upgrade hadoop to 3.2.1 add 47d247c KNOX-2047 - Upgrade dependency-check-maven to 5.2.2 add a3d8d79 KNOX-2048 - Upgrade pac4j to 3.8.2 add 34f2aa0 KNOX-2027 - Need a reverse order sort on a table based on a column. (#159) add 951853b KNOX-2018 - KnoxShellTable Filtering needs greaterThan and lessThan, equals Methods (#158) add 579b43f KNOX-2024 - KnoxShellTable - Case Insensitive Operations with Col Names (#160) add 431dcd2 KNOX-1996: Adding changes to remove extra / while generating backedn … (#142) add 2aa16ef KNOX-2024 - Fix testNameMethod test add b98e77e KNOX-2015 - Allow end-users to exclude only certain directives of the SET-COOKIE HTTP header (#154) add 9258e3d Fix javadoc warning add 84c8287 KNOX-2050 - Upgrade jackson to 2.10.0 add adc250c KNOX-2051 - Upgrade asm to 7.2 add b5c6486 KNOX-2023 - Recording KnoxShellTable builder/filter chain and providing rollback/replay capabilities using the call history as well as allowing end-users to export JSON without data (in this case only the call history will be serialized) (#162) add f7acac9 KNOX-2026 - Accept Impala's authentication cookies (#161) add 2cf99f4 KNOX-2058 - Upgrade commons-compress to 1.19 add e305987 KNOX-2059 - Upgrade bcprov-jdk15on to 1.64 add e8e7cbd KNOX-2061 - ConfigurableHADispatch needs to be wired up add 04f5d86 KNOX-2052 - KnoxShellTable mean, median, and mode methods (#163) add f3eddab KNOX-2066 - Composite Authz Provider add f58a46d KNOX-2064 - KnoxSSO knoxsso.token.ttl should not default to -1 add 05333e8 KNOX-2063 - KnoxShellTable javadoc failures (#167) add 45043b4 KNOX-2057 - Unique ID is set when creating a new instance of KnoxShellTable instead of setting it in the builder/filter (#165) add ae65dd8 KNOX-2060 - Extend KnoxShellTable statistics methods to work with columns of Strings (#168) add e21ce87 KNOX-2065 - Upgrade nimbus-jose-jwt to 8.1 add db8cc23 KNOX-2067 - KnoxToken service support for renewal and revocation add 15a85c0 Merge branch 'master' into KNOX-2066 add 245b916 KNOX-2066 - pom clean up add 9e55444 KNOX-2053 - New REST API to create/read/update/delete service definitions (#164) add 1bdbdee KNOX-2056 - Adding Service Definitions management into Admin UI (#169) add b3923f2 KNOX-2070 - SSOCookieFederationFilter NPE (#170) add 7f27b56 Fix javadoc warning add 9305dca KNOX-2072: Kudu web UI service definition (#171) add d99f1e5 KNOX-2068 - Let end-users add a new service definition from scratch (#173) add 8bc8991 KNOX-2025 - KnoxShellTable - Join Builder on Method should accept Col Names (#172) add 9175fbd KNOX-2082 - Upgrade dockerfile-maven-plugin to 1.4.13 add 1c66238 KNOX-2086 - Upgrade eclipselink to 2.7.5 add b29066a KNOX-2091 - Upgrade findsecbugs to 1.10.1 add e8b4643 KNOX-2080 - Upgrade forbiddenapis to 2.7 add c479a60 KNOX-2083 - Upgrade hamcrest to 2.2 add facbe55 KNOX-2079 - Upgrade jacoco-maven-plugin to 0.8.5 add 6f9ee50 KNOX-2090 - Upgrade javax.inject to 2.4.0 add 7ea9654 KNOX-2087 - Upgrade jetty to 9.4.22.v20191022 add 48d6c4a KNOX-2092 - Upgrade jna to 5.5.0 add a3b92f9 KNOX-2089 - Upgrade joda-time to 2.10.5 add ea24d43 KNOX-2085 - Upgrade metrics to 4.1.1 add 0752fb9 KNOX-2084 - Upgrade nimbus-jose-jwt to 8.2 add b3b1c2e KNOX-2078 - Upgrade rest-assured to 4.1.2 add 7fb9db1 KNOX-2093 - Upgrade slf4j to 1.7.29 add e442d61 KNOX-2077 - Upgrade spring-core to 5.2.0.RELEASE add c5a3607 KNOX-2088 - Upgrade spring-vault to 2.1.4.RELEASE add 4fa8b6e KNOX-2081 - Upgrade zookeeper to 3.5.6 add 1d29c0b KNOX-2094 - Upgrade httpcore to 4.4.12 add ff638cb KNOX-2075 - Druid coordinator ui is broken (#175) add d9a3eb9 KNOX-1842 - Upgrade httpclient to 4.5.10 (#176) add 855f12e KNOX-2071 - Configurable maximum token lifetime for TokenStateService (#178) add 0367fe8 KNOX-1878 - Enforce single version of dependencies (#102) add 89bae58 KNOX-2105 - KnoxShell support for token renewal and revocation (#180) add 5d6ed0f KNOX-2104 - Removing redundant resource cleanup so that data table can keep track of its activePage/rowsOnTable attributes (#179) add 7cb0d1b KNOX-2106 - Upgrade spring-core to 5.2.1.RELEASE add 94d91e9 KNOX-2107 - Upgrade spring-vault to 2.2.0.RELEASE add 5625b14 KNOX-2108 - Upgrade pac4j to 3.8.3 add 7dc3a7a KNOX-2109 - Upgrade nimbus-jose-jwt to 8.2.1 add bf5e0ad KNOX-2110 - Upgrade xmlsec to 2.1.4 add 093e16b KNOX-2111 - Upgrade java-support to 7.5.1 add c9838fc KNOX-2112 - Upgrade dom4j to 2.1.1 (#183) add ddc8011 KNOX-2100 - Make sure knoxshell initializes logging by using the 'launcher' framework like other products (gateway, cli, ldap) do (#181) add 7ff6a92 KNOX-2098 - OWASP Add Nov 2019 suppressions for false positives (#184) add 426054c KNOX-2114 - Add OWASP suppression for cas-client-core add 896f0f1 KNOX-2113 - Upgrade mina-core to 2.0.21 (#185) add 2eb4bab Remove duplicate dependency declaration in gateway-server pom add 4179fee KNOX-2115 - Improve .travis.yml (#187) add 84ae9b4 KNOX-2116 - com.nimbusds:lang-tag needs a fixed version add 5c7a9eb KNOX-2117 - Upgrade testcontainers to 1.12.3 add 0defc4f KNOX-2118 - Upgrade checkstyle to 8.26 add 3a28598 KNOX-2119 - Upgrade jackson to 2.10.1 add 247eb86 KNOX-2120 - Upgrade easymock to 4.1 add 53a106c KNOX-2099 - Using the default port of the protocol when no port is declared in the URL when building truststore. (#189) add 6f7d633 KNOX-2121 - Zookeeper - Reduce amount of resources required to run tests (#190) add 2b6cee2 KNOX-2122 - Code cleanup from static code analysis (#191) add af68e28 KNOX-2103 - Make responseExcludeHeaders parameter in ConfigurableDispatch case insensitive (#192) add 62d2bf9 KNOX-2122 - Use ThreadLocalRandom add a3e450e KNOX-1718 - Hide org.apache.directory.api.ldap.model.entry.Value errors (#193) add 584f210 KNOX-2103 - Fix javadoc errors add 14ac290 KNOX-2122 - Remove deprecated API usages (#194) add 96587a4 KNOX-1997: Adding changes to buffer messages from backend in onMessag… (#143) add b144016 KNOX-1997 - Fix diamond operator compiliation error add acfbc34 KNOX-2129 - Improve deprecated javadoc (#197) add d2ee1ef KNOX-2122 - Misc code cleanup (#198) add 9b244d7 KNOX-2130 - Handle InterruptedException better (#199) add 40f699f KNOX-2122 - Use static base class constants add 90559a4 KNOX-2053 - Ensure secure XML processing add 029c9b8 KNOX-2127 - ZooKeeperAliasService mishandles mixed-case alias keys properly (#202) add 9c69c8c KNOX-2131 - Fixed sonarcloud bugs (#201) add 16dd645 KNOX-2133 - Ensure that Knox always validates TLS (#203) add c9cb170 KNOX-2004 - Adding changes for handling Ping/Pong message from backend server on websocket connection (#200) add ef4fd73 KNOX-2074: Tracking UI of flink session is broken in YARNUI (#174) add b54f7f3 KNOX-2140 - RequestUpdateHandler.ForwardedRequest#getRequestURL needs to return a valid URL (#206) add 048d620 KNOX-2142 - Upgrade jetty to 9.4.24.v20191120 (#208) add 61ecb34 KNOX-2135 - Fix YARNUIV2 RM Logs sub-links (#204) add 1436fed KNOX-2143 - Upgrade shiro to 1.4.2 (#209) add 3b495a1 KNOX-1410 - Knox Shell support for remote Alias management (#210) add ebbf8d6 KNOX-2145 - WhitelistUtils should have an HTTPS_ONLY template (#212) add 6b1898f KNOX-2144 - Alias API KnoxShell support should provide response types better than raw JSON (#211) add bd24b53 KNOX-2132 - JDBCKnoxShellTableBuilder should have optional username and password fields add 586207f KNOX-1962 - CM discovery - Avoid reading krb5 login config multiple t… (#215) add 4be5227 KNOX-2136 - Caching credentials in DefaultKeystoreService when an alias is being added or loaded from keystore and using a different cache implementation (#213) add 1071c1d KNOX-1935 - CM discovery - Hue should not have both LB and non LB (#220) add 13d3866 KNOX-2123 - Setting requestURI using the given servletRequest in case the service is unavailable and logging it with the appropriate action outcome (#219) add aff3a9d KNOX-1921 - CM discovery - Hue Load balancer HTTP/HTTPS scheme (#221) add 73bd80f KNOX-1932 - CM discovery - WEBHCAT URLs not discovered (#222) add eac453e KNOX-2134 - Checking if password/alias is available via local alias service before going to fetch it from remote ZK server (#218) add 3b28f4f KNOX-1970 - CM discovery - Add Impala HS2 to auto discovery (#223) add 88d5726 KNOX-2151 - HIVE_ON_TEZ HS2 Discovery doesn't work (#224) add 8cc1d5b KNOX-2152 - Disable Ambari cluster configuration monitoring by default (#225) add eac2778 KNOX-2147 - Mask username/password in case we display call history and keep them safely (by setting proper file permissions) in JSON file (#217) add 56ab602 KNOX-2154 - Allow KNOX service during topology generation without URLs and parameters (#226) add 1b01961 KNOX-2155 - KnoxSSO should handle multiple cookies with the same name add 6aab5de KNOX-2156 - CM discovery - KUDUUI discovery (#228) add fc0a002 KNOX-2148 - ZEPPELINUI service definition should pass query parameters for API add 4a47303 KNOX-2101 - knoxshell doesn't handle invalid TLS well (#232) add a658319 KNOX-2149 - Added JWT OIDC Verification based on JWKS Urls and extract custom claim add cdcb186 KNOX-2157 - Verifying the server's state in addition to PID check at gateway start and registering shutdown hook in order to stop the server gracefully. (#230) add cc235fd KNOX-718 - KnoxSSO login page doesn't display any feedback on error (#234) add b94872c KNOX-1951 - Service Discovery Support for NiFi and NiFi Registry UI (#235) add 64025c5 KNOX-2162 - Log no rewrite rule found at DEBUG level add bf12bc0 KNOX-2166 - Upgrade apache pom to 22 add 21f7c42 KNOX-2164 - Upgrade asm to 7.3.1 add 381ec45 KNOX-2182 - Upgrade aspectj to 1.9.5 add 0ea79e4 KNOX-2171 - Upgrade checkstyle to 8.28 add d672acd KNOX-2176 - Upgrade cloudera-manager-api to 7.0.3 add 4d845a8 KNOX-2168 - Upgrade commons-codec to 1.14 add 2f79624 KNOX-2185 - Upgrade dependency-check-maven to 5.2.4 add f316a9e KNOX-2167 - Upgrade frontend-maven-plugin to 1.9.1 add 1be1317 KNOX-2172 - Upgrade guava to 28.2-jre add 4ba641a KNOX-2165 - Upgrade httpcore to 4.4.13 add ad4fee1 KNOX-2169 - Upgrade jackson to 2.10.2 add 8870654 KNOX-2174 - Upgrade jetty to 9.4.25.v20191220 add 5c7a2c5 KNOX-2170 - Upgrade junit to 1.14 add cd43e30 KNOX-2177 - Upgrade log4j to 2.13.0 add a0822d7 KNOX-2184 - Upgrade maven-enforcer-plugin to 3.0.0-M3 add b012505 KNOX-2179 - Upgrade metrics to 4.1.2 add f62131a KNOX-2173 - Upgrade nimbus-jose-jwt to 8.4 add b58a0a8 KNOX-2180 - Upgrade protobuf-java to 3.11.1 add 7f2c981 KNOX-2175 - Upgrade slf4j to 1.7.30 add a304c44 KNOX-2183 - Upgrade spring-core to 5.2.2.RELEASE add 9cc0fa9 KNOX-2181 - Upgrade testcontainers to 1.12.4 add 2b7f771 KNOX-2178 - Upgrade woodstox-core to 6.0.3 add 56726b4 KNOX-2160 - Introducing Hadoop XML type descriptor format (#236) add 7e9a79d KNOX-2128 - Custom DataSource and SQL Commands for KnoxShell and KnoxShellTable (#231) add 22b61f1 KNOX-2128 - fix javadoc warnings/errors add 69b08af KNOX-2186 - Advanced service discovery configuration handling (#238) add 36ee8ab KNOX-1742 - Simple SQL Client in KnoxShell for access to JDBC sources (#241) add 89ae00a KNOX-1742 - add knoxline to knoxshell usage rendering add 5bea67f KNOX-2188 - Handling discovery details via advanced configuration (#240) add 0325d07 KNOX-2190 - Processing advanced service discovery configuration on topology level (#242) add 03e818d KNOX-1742 - Fix javadoc warning add 51797e3 KNOX-2196 - Upgrade caffeine to 2.8.1 add 3ac8f38 KNOX-2197 - Upgrade dependency-check-maven to 5.3.0 add 1813937 KNOX-2198 - Upgrade groovy to 2.5.9 add 9e2b7a9 KNOX-2192 - Upgrade httpclient to 4.5.11 add 5142a92 KNOX-2195 - Upgrade jetty to 9.4.26.v20200117 add e5252e3 KNOX-2193 - Upgrade rest-assured to 4.2.0 add e057c3c KNOX-2199 - Upgrade spring-core to 5.2.3.RELEASE add 3282d89 KNOX-2194 - Upgrade spring-vault to 2.2.1.RELEASE add 693961e KNOX-2191 - Upgrade testcontainers to 1.12.5 add 5e9b53a KNOX-2200 - DefaultKeystoreService can lose entries under concurrent access (#243) add 3f364a6 KNOX-2202 - Knox should use UTF-8 as default encoding instead of ISO-8859-1 (#244) add 294cd1b KNOX-2204 - KnoxLine NPE list datasources when directories don't exist (#246) add bc277f9 KNOX-2203 - Upgrade admin-ui npm dependencies (#245) add c898b47 KNOX-2208 - AclsAuthorizationFilter should log access at DEBUG level (#247) add ce2f1bb KNOX-2153 - CM discovery - Monitor Cloudera Manager (#239) add 278de05 KNOX-2206 - Log exclusion of a discovered service due to configuration issues (#248) add 4578327 KNOX-2209 - Improve logging for Knox token handling (#250) add 94c2d8b KNOX-2217 - Upgrade apache pom to 23 add 7624987 KNOX-2219 - Upgrade checkstyle to 8.29 add 97e17a1 KNOX-2218 - Upgrade easymock to 4.2 add 9e29357 KNOX-2220 - Upgrade nimbus-jose-jwt to 8.5 add f1cec12 KNOX-2213 - Service Discovery Support for CM UI, API (#249) add d2ee4dc KNOX-2215 - Token service should return a 403 response when the renewer is not white-listed (#251) add 4c79ca3 KNOX-2224 - KnoxLine and KnoxShell DataSource and Select Command Alignment (#255) add 98e547f KNOX-2207 - TokenStateService revocation should remove persisted token state (#252) add 704c6ec KNOX-2222 - Fix HBase UI Proxying for HBCK Report page (#254) add d05d307 KNOX-2223 - HS2 cookie not stored in HadoopAuthCookieStore (#253) add fad5763 KNOX-2227 - Strip Leading and Trailing Whitespace from Headers in KnoxShellTable (#258) add 90a623b KNOX-2210 - Gateway-level configuration for server-managed Knox token state (#259) add e90158c KNOX-2229 - Knox shouldn't exclude Kerby since it is used by Hadoop add c758be4 KNOX-2228 - JWTFilter should handle unknown token exception from token state service (#260) add f9071e0 KNOX-2231 - Fix KnoxSSO OIDC integration (#262) add 73c8f84 KNOX-2214 - Periodic job to evict expired tokens (#257) add 30d5cb7 KNOX-2189 - KnoxShellTable.select() must handle whitespace (#256) add 186ca4a KNOX-2233 - DefaultKeystoreService getCredentialForCluster uses cache without synchronization (#264) add 03f62b0 KNOX-2161 - CM generated descriptors are read-only on Admin UI (#265) add 871f3b7 KNOX-2237 - CM service discovery should default the http path of Hive URLs when the associated property is not set (#266) add 61e513e KNOX-2230 - Token State Service should throw UnknownTokenException instead of IllegalArgumentException (#268) add 7d4e997 KNOX-2238 CM discovery - Add TLS support to Phoenix auto discovery (#267) add 58e3b99 KNOX-2239 - Websocket use the configured truststore in gateway-site config file (#269) add b04e5cb KNOX-2248 - Upgrade cryptacular to 1.2.4 add 20927ee KNOX-2245 - Upgrade maven-checkstyle-plugin to 3.1.1 add 3a48b24 KNOX-2242 - Upgrade metrics to 4.1.3 add fe7337e KNOX-2241 - Upgrade nimbus-jose-jwt to 8.8 add ce6cf10 KNOX-2246 - Upgrade protobuf-java to 3.11.4 add ab82a93 KNOX-2244 - Upgrade spotbugs to 4.0.0 add 5dd3804 KNOX-2247 - Upgrade zookeeper to 3.5.7 add 17908b9 KNOX-2243 - Upgrade groovy to 3.0.1 add cbbf233 KNOX-2250 - maven-antrun-plugin use target instead of tasks (#273) add 03fab89 KNOX-2249 - Add Spark 3 History Server definition (#270) add 5eedc61 KNOX-2226 - Add home page to Knox (#263) add 04ec47e KNOX-2212 - Token permissiveness (#274) add abdb887 KNOX-2258 - Add new rewrite rule in Livy service for handling redirect requests to /ui (#276) add 0546550 KNOX-2258 - Add filter for Location header (#277) add 4f6730e KNOX-2263 - Docker - make sure not to put anything except version in the tag (#279) add c48ff3e KNOX-2265 - Checking CM configs by their related names and read hive.server2.use.SSL from the service configuration (#280) add f8f04d3 KNOX-2273 - Upgrade checkstyle to 8.30 add 317568b KNOX-2280 - Upgrade cors-filter to 2.9 add 84b513d KNOX-2281 - Upgrade eclipselink to 2.7.6 add 3557751 KNOX-2272 - Upgrade jackson to 2.10.3 add ab9cee9 KNOX-2278 - Upgrade jetty to 9.4.27.v20200227 add cb9f618 KNOX-2271 - Upgrade nimbus-jose-jwt to 8.9 add c809697 KNOX-2276 - Upgrade metrics to 4.1.4 add 72ada17 KNOX-2274 - Upgrade log4j2 to 2.13.1 add b9acb12 KNOX-2279 - Upgrade spring-core to 5.2.4.RELEASE add 5890da3 KNOX-2277 - Upgrade spring-vault to 2.2.2.RELEASE add e02ff73 KNOX-2270 - Upgrade testcontainers to 1.13.0 add 60989bb KNOX-2275 - Upgrade woodstox-core to 6.1.1 add 86bd4fb KNOX-2282 - Upgrade curator to 4.3.0 add 926adc6 KNOX-2269 - The Knox Home page is available as a regular app via the homepage topology (#281) add 5c46e4c KNOX-2259 KNOX-2260 KNOX-2261 - Fixed Impala/Kudu/HBase UI context path in service metadata (#282) add f39d0c5 KNOX-2267 - Ambari/CM discovery - Needs to point to configured truststore add e2ea842 KNOX-2266 - Tokens Should Include a Unique Identifier (#284) add 6ca3a4e KNOX-2284 - Handling CM descriptors after Knox shared-provider/descriptor/topology monitors are started (#285) add 27a8113 KNOX-2285 - Change gateway.server.header.enabled default to false add 2e2230f KNOX-2286 Cleaner log messages about monitoring topologies/providers/descriptors (#287) add 58d8479 KNOX-2289 - Passing GatewayServer.getGatewayServices() to SimpleDescriptorHandler.handle() as it needs it to provision encryption query string password (#288) add 36155bc KNOX-2295 - UI services improvement on Knox Home page (#289) add 49d08ba KNOX-2298 - ClouderaManager cluster config monitor should stop monitoring unreferenced clusters (#291) add 998e720 KNOX-2296 - Passing down the service URL field when building up a service model (#290) add bef8b19 KNOX-2299 - Fixed Hive JDBC URL on Knox Home page (#293) add 840af4f KNOX-2300 - Livy and Solr handled as both API and UI services (#294) add ffa7f55 KNOX-2305 - Blacklist Maven 3.6.2 and move cloudera repository to child pom (#295) add 0ec8ce1 KNOX-2287 KnoxCLI convert topology to provider and descriptor (#292) add 3d17ede KNOX-2301 and KNOX-2302 (#297) add b93cc1c KNOX-2240 - KnoxShell Custom Command for WEBHDFS Use (#296) add 9a7767a KNOX-2307 - CSVKnoxShellTableBuilder must support quoted strings and embedded commas (#301) add b225050 KNOX-2308 - Add sortNumeric to KnoxShellTable for Cols that are numeric but values are String (#300) add 46ccd34 KNOX-2310 - Add aggregate method to KnoxShellTable (#302) add 52ca823 KNOX-2314 - NPE from topology Service equals implementation when no URLs (#303) add fd8e1bb KNOX-2262 - Accessing hbase logs through knox exposes hbase endpoint url instead of routing through knox add 0026377 KNOX-2317 - Open UI services from Knox Home page on new tabs (#305) add aaf1748 KNOX-2316 - Knox Token State Eviction Must Consider Maximum Token Lifetime (#306) add 38b56bb KNOX-2315 - Fix zookeeper Kerberos Auth (#304) add 92b2ac4 KNOX-2319 - Upgrade commons-compress to 1.20 add d3b556b KNOX-2320 - Upgrade xmlsec to 2.1.5 add 8920651 KNOX-2304 - CM discovery cluster config monitor needs to be aware of … (#307) add 7a93dd4 Minor javadoc fixes add f857f7c KNOX-2325 - Upgrade asm to 8.0.1 add 4dc04c5 KNOX-2326 - Upgrade bcprov-jdk15on to 1.65 add 060ba83 KNOX-2328 - Upgrade checkstyle to 8.31 add fe2dc0e KNOX-2327 - Upgrade commons-lang3 to 3.10 add b146ae7 KNOX-2329 - Upgrade dependency-check-maven to 5.3.2 add b174138 KNOX-2323 - Upgrade groovy to 3.0.3 add 0449ee6 KNOX-2336 - Upgrade httpclient to 4.5.12 add e6aaf40 KNOX-2335 - Upgrade java-support to 8.0.0 add d35f3de KNOX-2334 - Upgrade maven-dependency-plugin to 3.1.2 add e3079b2 KNOX-2324 - Upgrade metrics to 4.1.6 add 94ce397 KNOX-2322 - Upgrade nimbus-jose-jwt to 8.14.1 add 31df513 KNOX-2333 - Upgrade rest-assured to 4.3.0 add 7f8a5a0 KNOX-2330 - Upgrade spring-core to 5.2.5.RELEASE add 8f39d03 KNOX-2331 - Upgrade spotbugs to 4.0.1 add 7a8b459 KNOX-2332 - Upgrade spotbugs-maven-plugin to 4.0.0 add dc71011 Revert "KNOX-2335 - Upgrade java-support to 8.0.0" add b5d97a1 KNOX-2338 - Upgrade apacheds.directory.server.version to 2.0.0.AM26 (#309) add 0e04e5c KNOX-2340 - Fix DefaultTokenStateServiceTest timeouts (#312) add 1834c67 KNOX-2341 - KnoxShell Custom Commands need Description and Usage Details (#313) add 4127124 KNOX-2321. /LogLevel with knox not working for Hdfs web ui endpoints. (#314) add 3189fe7 KNOX-2339 - Add Github Actions for CI (#311) No new revisions were added by this update. Summary of changes: .github/workflows/main.yml | 48 + .travis.yml | 8 +- CHANGES | 222 + .../build-tools/dependency-check/suppressions.xml | 26 +- .../build-tools/forbiddenapis/signatures.txt | 90 + .../main/resources/build-tools/pmd/pmd-ruleset.xml | 1 + .../main/resources/build-tools/spotbugs-filter.xml | 20 + build.xml | 4 +- gateway-adapter/pom.xml | 2 +- .../gateway/audit/log4j/layout/AuditLayout.java | 11 +- .../hadoop/gateway/dispatch/DefaultDispatch.java | 61 +- .../hadoop/gateway/dispatch/NiFiDispatch.java | 7 + .../hadoop/gateway/dispatch/NiFiHaDispatch.java | 7 + .../gateway/dispatch/PassAllHeadersDispatch.java | 25 +- .../dispatch/PassAllHeadersNoEncodingDispatch.java | 17 +- .../hadoopauth/filter/HadoopAuthFilter.java | 8 +- .../apache/hadoop/gateway/hbase/HBaseDispatch.java | 17 +- .../hdfs/dispatch/HdfsHttpClientDispatch.java | 10 +- .../gateway/hdfs/dispatch/WebHdfsHaDispatch.java | 24 +- .../apache/hadoop/gateway/hive/HiveDispatch.java | 24 +- .../apache/hadoop/gateway/hive/HiveHaDispatch.java | 19 +- .../federation/jwt/filter/JWTFederationFilter.java | 30 +- .../jwt/filter/SSOCookieFederationFilter.java | 45 +- .../hadoop/gateway/rm/dispatch/RMHaDispatch.java | 20 +- .../hadoop/gateway/rm/dispatch/RMUIHaDispatch.java | 19 +- .../gateway/shirorealm/KnoxLdapContextFactory.java | 11 +- .../hadoop/gateway/shirorealm/KnoxLdapRealm.java | 13 +- .../hadoop/gateway/shirorealm/KnoxPamRealm.java | 14 +- .../apache/hadoop/gateway/storm/StormDispatch.java | 15 +- .../apache/hadoop/gateway/topology/Service.java | 98 +- .../apache/hadoop/gateway/topology/Topology.java | 111 +- .../org/apache/hadoop/gateway/util/RegExUtils.java | 8 +- gateway-admin-ui/admin-ui/app/app.component.ts | 4 +- gateway-admin-ui/admin-ui/app/app.module.ts | 10 +- .../admin-ui/app/gateway-version.service.ts | 6 +- .../new-desc-wizard/new-desc-wizard.component.html | 15 +- .../new-desc-wizard/new-desc-wizard.component.ts | 9 +- .../app/provider-config-wizard/webappsec-wizard.ts | 8 +- .../provider-config-wizard/xss-provider-config.ts | 65 + .../admin-ui/app/resource-detail/descriptor.ts | 2 + .../resource-detail/resource-detail.component.html | 44 +- .../resource-detail/resource-detail.component.ts | 9 + .../admin-ui/app/resource/resource.component.html | 17 +- .../admin-ui/app/resource/resource.component.ts | 29 +- .../admin-ui/app/resource/resource.service.ts | 75 +- gateway-admin-ui/admin-ui/app/resource/resource.ts | 1 + .../app/resourcetypes/resourcetypes.service.ts | 2 +- .../new-service-definition.component.css} | 0 .../new-service-definition.component.html | 27 + .../new-service-definition.component.ts | 82 + .../app/service-definition/rewrite.rule.ts | 22 + .../app/service-definition/rewrite.rules.ts | 21 + .../admin-ui/app/service-definition/service.ts | 22 + .../servicedefinition-detail.component.ts | 143 + .../servicedefinition.service.ts | 161 + .../app/service-definition/servicedefinition.ts | 25 + gateway-admin-ui/admin-ui/app/topology.service.ts | 3 +- .../assets/new-service-definition-template.xml | 8 + gateway-admin-ui/admin-ui/assets/vkbeautify.js | 375 - gateway-admin-ui/package-lock.json | 638 +- gateway-admin-ui/package.json | 10 +- gateway-admin-ui/pom.xml | 7 +- gateway-admin-ui/proxy.conf.json | 11 + gateway-applications/pom.xml | 14 +- .../applications/knoxauth/app/js/knoxauth.js | 13 +- gateway-cm-integration/pom.xml | 71 + .../ClouderaManagerIntegrationMessages.java | 59 + .../ClouderaManagerDescriptorMonitor.java | 126 + .../ClouderaManagerDescriptorParser.java | 274 + ...vanceServiceDiscoveryConfigurationMessages.java | 36 + .../advanced/AdvancedServiceDiscoveryConfig.java | 88 + ...vancedServiceDiscoveryConfigChangeListener.java | 28 + ...vancedServiceDiscoveryConfigurationMonitor.java | 114 + .../ClouderaManagerDescriptorParserTest.java | 222 + .../src/test/resources/testDescriptor.xml | 48 + ...onfigurationWithNonHadoopStyleConfiguration.xml | 35 + ...tDescriptorConfigurationWithWrongDescriptor.xml | 46 + .../testDescriptorWithoutDiscoveryDetails.xml | 27 + gateway-demo-ldap-launcher/pom.xml | 2 +- gateway-demo-ldap/pom.xml | 2 +- .../security/ldap/SimpleLdapDirectoryServer.java | 5 +- gateway-discovery-ambari/pom.xml | 2 +- .../discovery/ambari/AmbariClientCommon.java | 5 +- .../topology/discovery/ambari/AmbariCluster.java | 6 +- .../AmbariClusterConfigurationMonitorProvider.java | 6 +- .../ambari/AmbariConfigurationMonitor.java | 13 +- .../ambari/AmbariDynamicServiceURLCreator.java | 6 +- .../discovery/ambari/AmbariServiceDiscovery.java | 47 +- .../topology/discovery/ambari/RESTInvoker.java | 25 +- .../discovery/ambari/ServiceURLPropertyConfig.java | 10 +- .../ambari/SparkCommonServiceURLCreator.java | 4 - .../ambari/AmbariConfigurationMonitorTest.java | 2 +- .../ambari/AmbariServiceDiscoveryTest.java | 2 +- gateway-discovery-cm/pom.xml | 63 +- .../discovery/cm/ClouderaManagerCluster.java | 48 +- .../cm/ClouderaManagerServiceDiscovery.java | 142 +- .../ClouderaManagerServiceDiscoveryMessages.java | 96 + .../topology/discovery/cm/DiscoveryApiClient.java | 29 +- .../topology/discovery/cm/ServiceModel.java | 91 +- .../discovery/cm/ServiceModelGenerator.java | 27 +- .../cm/ServiceModelGeneratorHandleResponse.java | 44 + .../topology/discovery/cm/ServiceURLCollector.java | 35 + .../topology/discovery/cm/auth/AuthUtils.java | 28 +- .../cm/collector/AbstractURLCollector.java | 68 + .../cm/collector/DefaultURLCollector.java | 24 + .../discovery/cm/collector/HueURLCollector.java | 61 + .../cm/collector/ServiceURLCollectors.java | 53 + .../cm/model/AbstractServiceModelGenerator.java | 15 +- .../model/atlas/AtlasAPIServiceModelGenerator.java | 21 +- .../cm/model/atlas/AtlasServiceModelGenerator.java | 49 +- .../model/atlas/AtlasUIServiceModelGenerator.java | 39 - .../ClouderaManagerAPIServiceModelGenerator.java | 94 + .../cm/ClouderaManagerUIServiceModelGenerator.java | 37 + .../model/hbase/HBaseUIServiceModelGenerator.java | 43 +- .../model/hbase/WebHBaseServiceModelGenerator.java | 42 +- .../cm/model/hdfs/HdfsUIServiceModelGenerator.java | 30 +- .../model/hdfs/NameNodeServiceModelGenerator.java | 48 +- .../model/hdfs/WebHdfsServiceModelGenerator.java | 64 +- .../model/hive/HiveOnTezServiceModelGenerator.java | 71 + .../cm/model/hive/HiveServiceModelGenerator.java | 96 +- .../model/hive/WebHCatServiceModelGenerator.java | 70 + .../cm/model/hue/HueLBServiceModelGenerator.java | 37 +- .../cm/model/hue/HueServiceModelGenerator.java | 41 +- .../model/impala/ImpalaServiceModelGenerator.java | 77 + .../impala/ImpalaUIServiceModelGenerator.java | 93 + .../cm/model/kudu/KuduUIServiceModelGenerator.java | 76 + .../cm/model/livy/LivyServiceModelGenerator.java | 43 +- .../cm/model/livy/LivyUIServiceModelGenerator.java | 39 - .../nifi/NifiRegistryServiceModelGenerator.java | 97 + .../cm/model/nifi/NifiServiceModelGenerator.java | 96 + .../cm/model/oozie/OozieServiceModelGenerator.java | 48 +- .../model/oozie/OozieUIServiceModelGenerator.java | 17 +- .../phoenix/PhoenixServiceModelGenerator.java | 81 + .../model/ranger/RangerServiceModelGenerator.java | 47 +- .../ranger/RangerUIAPIServiceModelGenerator.java | 38 - .../ranger/RangerUIServiceModelGenerator.java | 16 +- .../cm/model/solr/SolrServiceModelGenerator.java | 48 +- .../cm/model/solr/SolrUIServiceModelGenerator.java | 38 - .../Spark3HistoryUIServiceModelGenerator.java | 38 + .../spark/SparkHistoryUIServiceModelGenerator.java | 47 +- .../yarn/JobHistoryUIServiceModelGenerator.java | 35 +- .../yarn/JobTrackerServiceModelGenerator.java | 61 + .../ResourceManagerServiceModelGeneratorBase.java | 36 + .../ResourceManagerUIServiceModelGenerator.java | 19 +- .../cm/model/yarn/YarnUIServiceModelGenerator.java | 40 +- .../model/yarn/YarnUIv2ServiceModelGenerator.java | 15 +- .../zeppelin/ZeppelinServiceModelGenerator.java | 94 + .../zeppelin/ZeppelinUIServiceModelGenerator.java | 35 +- .../zeppelin/ZeppelinWSServiceModelGenerator.java | 40 +- .../cm/monitor/AbstractConfigurationStore.java | 86 + ...ClouderaManagerClusterConfigurationMonitor.java | 229 + ...ManagerClusterConfigurationMonitorProvider.java | 38 + .../cm/monitor/ClusterConfigurationCache.java | 162 + .../cm/monitor/ClusterConfigurationFileStore.java | 113 + .../cm/monitor/ClusterConfigurationStore.java | 61 + .../monitor/DiscoveryConfigurationFileStore.java | 133 + .../cm/monitor/DiscoveryConfigurationStore.java | 50 + .../cm/monitor/PollingConfigurationAnalyzer.java | 602 ++ .../cm/monitor/ServiceConfigurationModel.java | 94 + .../cm/monitor/ServiceConfigurationRecord.java | 55 + ...y.discovery.ClusterConfigurationMonitorProvider | 19 + ...way.topology.discovery.cm.ServiceModelGenerator | 19 +- .../discovery/cm/AbstractCMDiscoveryTest.java | 93 + .../cm/ClouderaManagerServiceDiscoveryTest.java | 1111 ++- .../topology/discovery/cm/auth/AuthUtilsTest.java | 89 + .../cm/collector/AbstractURLCollectorTest.java | 40 + .../cm/collector/HueURLCollectorTest.java | 136 + .../model/AbstractServiceModelGeneratorTest.java | 118 + .../atlas/AtlasAPIServiceModelGeneratorTest.java | 38 + .../atlas/AtlasServiceModelGeneratorTest.java | 56 + .../hbase/HBaseUIServiceModelGeneratorTest.java | 53 + .../hbase/WebHBaseServiceModelGeneratorTest.java | 55 + .../hdfs/HdfsUIServiceModelGeneratorTest.java | 53 + .../hdfs/NameNodeServiceModelGeneratorTest.java | 65 + .../hdfs/WebHdfsServiceModelGeneratorTest.java | 74 + .../hive/HiveOnTezServiceModelGeneratorTest.java | 77 + .../model/hive/HiveServiceModelGeneratorTest.java | 80 + .../model/hue/HueLBServiceModelGeneratorTest.java | 53 + .../cm/model/hue/HueServiceModelGeneratorTest.java | 54 + .../impala/ImpalaServiceModelGeneratorTest.java | 53 + .../impala/ImpalaUIServiceModelGeneratorTest.java | 73 + .../kudu/KuduUIServiceModelGeneratorTest.java | 55 + .../model/livy/LivyServiceModelGeneratorTest.java | 54 + .../NifiRegistryServiceModelGeneratorTest.java | 55 + .../model/nifi/NifiServiceModelGeneratorTest.java | 54 + .../oozie/OozieServiceModelGeneratorTest.java | 54 + .../oozie/OozieUIServiceModelGeneratorTest.java | 38 + .../phoenix/PhoenixServiceModelGeneratorTest.java | 53 + .../ranger/RangerServiceModelGeneratorTest.java | 54 + .../ranger/RangerUIServiceModelGeneratorTest.java | 38 + .../model/solr/SolrServiceModelGeneratorTest.java | 54 + .../Spark3HistoryUIServiceModelGeneratorTest.java | 54 + .../SparkHistoryUIServiceModelGeneratorTest.java | 55 + .../ZeppelinServiceModelGeneratorTest.java | 55 + .../ZeppelinUIServiceModelGeneratorTest.java | 37 + .../ZeppelinWSServiceModelGeneratorTest.java | 38 + .../cm/monitor/AbstractConfigurationStoreTest.java | 61 + .../monitor/ClusterConfigurationFileStoreTest.java | 130 + .../DiscoveryConfigurationFileStoreTest.java | 129 + .../monitor/PollingConfigurationAnalyzerTest.java | 415 + .../cm/monitor/ServiceConfigurationModelTest.java | 156 + gateway-docker/README.md | 4 +- gateway-docker/pom.xml | 9 +- .../src/main/resources/docker-compose.yml | 4 +- gateway-i18n-logging-log4j/pom.xml | 2 +- gateway-i18n-logging-sl4j/pom.xml | 2 +- gateway-i18n/pom.xml | 2 +- .../gateway/i18n/messages/MessagesInvoker.java | 8 +- gateway-provider-ha/pom.xml | 7 +- .../knox/gateway/ha/dispatch/AtlasHaDispatch.java | 13 +- .../ha/dispatch/AtlasTrustedProxyHaDispatch.java | 2 +- .../ha/dispatch/ConfigurableHADispatch.java | 133 + .../gateway/ha/dispatch/DefaultHaDispatch.java | 2 +- .../impl/AtlasZookeeperURLManagerTest.java | 2 +- .../ha/provider/impl/DefaultHaProviderTest.java | 5 +- .../impl/HBaseZookeeperURLManagerTest.java | 2 +- .../provider/impl/HS2ZookeeperURLManagerTest.java | 2 +- .../impl/KafkaZookeeperURLManagerTest.java | 2 +- .../provider/impl/SOLRZookeeperURLManagerTest.java | 2 +- gateway-provider-identity-assertion-common/pom.xml | 6 +- .../filter/CommonIdentityAssertionFilter.java | 2 +- gateway-provider-identity-assertion-concat/pom.xml | 2 +- .../pom.xml | 2 +- gateway-provider-identity-assertion-pseudo/pom.xml | 2 +- gateway-provider-identity-assertion-regex/pom.xml | 2 +- .../pom.xml | 2 +- gateway-provider-jersey/pom.xml | 2 +- gateway-provider-rewrite-common/pom.xml | 58 + .../filter/rewrite/api/UrlRewriteEnvironment.java | 0 .../api/UrlRewriteFilterApplyDescriptor.java | 0 .../api/UrlRewriteFilterBufferDescriptor.java | 0 .../api/UrlRewriteFilterContentDescriptor.java | 0 .../rewrite/api/UrlRewriteFilterDescriptor.java | 0 .../api/UrlRewriteFilterDetectDescriptor.java | 0 .../api/UrlRewriteFilterGroupDescriptor.java | 0 .../api/UrlRewriteFilterPathDescriptor.java | 0 .../api/UrlRewriteFilterScopeDescriptor.java | 0 .../rewrite/api/UrlRewriteFlowDescriptor.java | 0 .../rewrite/api/UrlRewriteFunctionDescriptor.java | 0 .../api/UrlRewriteFunctionDescriptorFactory.java | 0 .../rewrite/api/UrlRewriteRuleDescriptor.java | 0 .../rewrite/api/UrlRewriteRulesDescriptor.java | 0 .../rewrite/api/UrlRewriteStepDescriptor.java | 0 .../api/UrlRewriteStepDescriptorFactory.java | 0 .../filter/rewrite/api/UrlRewriteStepFlow.java | 0 .../gateway/filter/rewrite/api/UrlRewriter.java | 0 .../filter/rewrite/i18n/UrlRewriteMessages.java | 90 + .../impl/UrlRewriteFilterApplyDescriptorImpl.java | 0 .../impl/UrlRewriteFilterBufferDescriptorImpl.java | 0 .../UrlRewriteFilterContentDescriptorImpl.java | 0 .../impl/UrlRewriteFilterDescriptorImpl.java | 0 .../impl/UrlRewriteFilterDetectDescriptorImpl.java | 0 .../impl/UrlRewriteFilterGroupDescriptorBase.java | 0 .../impl/UrlRewriteFilterScopeDescriptorImpl.java | 0 .../UrlRewriteFilterSelectorDescriptorBase.java | 0 .../rewrite/impl/UrlRewriteRuleDescriptorImpl.java | 0 .../impl/UrlRewriteRulesDescriptorImpl.java | 0 .../rewrite/impl/xml/XmlRewriteRulesDigester.java | 236 + .../rewrite/impl/xml/XmlRewriteRulesTags.java | 0 .../impl/xml/XmlUrlRewriteRulesExporter.java | 199 + .../impl/xml/XmlUrlRewriteRulesImporter.java | 0 .../rewrite/spi/UrlRewriteFlowDescriptorBase.java | 0 .../rewrite/spi/UrlRewriteRulesExporter.java | 31 + .../rewrite/spi/UrlRewriteRulesImporter.java | 0 .../rewrite/spi/UrlRewriteStepDescriptorBase.java | 0 .../filter/rewrite/spi/UrlRewriteStepStatus.java | 0 .../pom.xml | 6 +- .../pom.xml | 6 +- .../pom.xml | 6 +- gateway-provider-rewrite-step-encrypt-uri/pom.xml | 6 +- .../impl/EncryptDecryptUriProcessorTest.java | 5 +- gateway-provider-rewrite-step-secure-query/pom.xml | 6 +- .../securequery/SecureQueryEncryptProcessor.java | 11 +- gateway-provider-rewrite/pom.xml | 6 +- .../rewrite/api/UrlRewriteStreamFilterFactory.java | 2 +- .../ext/UrlRewriteActionRewriteProcessorExt.java | 4 +- .../filter/rewrite/i18n/UrlRewriteMessages.java | 87 - .../impl/UrlRewriteFunctionProcessorFactory.java | 7 +- .../filter/rewrite/impl/UrlRewriteRequest.java | 9 +- .../filter/rewrite/impl/UrlRewriteResponse.java | 2 +- .../impl/UrlRewriteStepProcessorFactory.java | 7 +- .../rewrite/impl/html/HtmlFilterReaderBase.java | 64 +- .../filter/rewrite/impl/json/JsonFilterReader.java | 28 +- .../impl/json/JsonUrlRewriteFilterReader.java | 30 +- .../filter/rewrite/impl/xml/XmlFilterReader.java | 33 +- .../rewrite/impl/xml/XmlRewriteRulesDigester.java | 236 - .../impl/xml/XmlUrlRewriteRulesExporter.java | 192 - .../rewrite/spi/UrlRewriteRulesExporter.java | 31 - .../rewrite/api/UrlRewriteProcessorTest.java | 20 + .../rewrite/api/UrlRewriteServletFilterTest.java | 9 +- .../filter/rewrite/impl/UrlRewriteRequestTest.java | 213 +- .../rewrite/impl/UrlRewriteResponseTest.java | 58 +- .../rewrite/impl/json/JsonFilterReaderTest.java | 4 +- .../UrlRewriteProcessorTest/rewrite-no-match.xml | 22 + gateway-provider-security-authc-anon/pom.xml | 2 +- gateway-provider-security-authz-acls/pom.xml | 2 +- .../gateway/filter/AclsAuthorizationMessages.java | 2 +- gateway-provider-security-authz-composite/pom.xml | 40 + .../impl/CompositeAuthzDeploymentContributor.java | 83 + ...ox.gateway.deploy.ProviderDeploymentContributor | 18 + .../deploy/impl/CompositeAuthzProviderTest.java | 67 + gateway-provider-security-clientcert/pom.xml | 2 +- gateway-provider-security-hadoopauth/pom.xml | 15 +- .../gateway/hadoopauth/HadoopAuthMessages.java | 10 + .../hadoopauth/filter/HadoopAuthFilter.java | 156 + .../hadoopauth/filter/HadoopAuthFilterTest.java | 140 +- gateway-provider-security-jwt/pom.xml | 7 +- .../provider/federation/jwt/JWTMessages.java | 8 +- .../federation/jwt/filter/AbstractJWTFilter.java | 90 +- .../jwt/filter/AccessTokenFederationFilter.java | 49 +- .../federation/jwt/filter/JWTFederationFilter.java | 15 +- .../jwt/filter/SSOCookieFederationFilter.java | 117 +- .../provider/federation/AbstractJWTFilterTest.java | 303 +- .../provider/federation/CommonJWTFilterTest.java | 195 + .../provider/federation/SSOCookieProviderTest.java | 24 +- gateway-provider-security-pac4j/pom.xml | 2 +- .../pac4j/filter/Pac4jDispatcherFilter.java | 7 +- gateway-provider-security-preauth/pom.xml | 2 +- gateway-provider-security-shiro/pom.xml | 4 +- .../knox/gateway/deploy/impl/ShiroConfig.java | 6 +- .../knox/gateway/filter/RedirectToUrlFilter.java | 22 +- .../knox/gateway/shirorealm/KnoxPamRealm.java | 66 +- .../gateway/filter/RedirectToUrlFilterTest.java | 61 + gateway-provider-security-webappsec/pom.xml | 2 +- gateway-release-common/home/bin/knox-functions.sh | 200 +- gateway-release-common/pom.xml | 41 +- gateway-release/home/bin/gateway.sh | 87 +- gateway-release/home/bin/knoxcli.sh | 50 +- gateway-release/home/bin/ldap.sh | 33 +- gateway-release/home/conf/topologies/homepage.xml | 62 + gateway-release/home/conf/topologies/knoxsso.xml | 7 +- gateway-release/home/conf/topologies/metadata.xml | 64 + gateway-release/home/conf/topologies/sandbox.xml | 4 + gateway-release/pom.xml | 79 +- gateway-release/src/assembly.xml | 1 - gateway-server-launcher/pom.xml | 2 +- gateway-server-xforwarded-filter/pom.xml | 2 +- .../gateway/filter/XForwardHeaderFilterTest.java | 41 +- gateway-server/pom.xml | 47 +- .../org/apache/knox/gateway/GatewayFilter.java | 9 +- .../org/apache/knox/gateway/GatewayMessages.java | 60 +- .../org/apache/knox/gateway/GatewayServer.java | 126 +- .../gateway/GatewayServerLifecycleListener.java | 86 + .../org/apache/knox/gateway/GatewayServlet.java | 29 +- .../gateway/config/impl/GatewayConfigImpl.java | 93 +- .../knox/gateway/deploy/DeploymentFactory.java | 28 +- .../impl/ApplicationDeploymentContributor.java | 4 +- .../ServiceDefinitionDeploymentContributor.java | 42 +- .../gateway/filter/PortMappingHelperHandler.java | 141 +- .../knox/gateway/filter/RequestUpdateHandler.java | 51 +- .../gateway/model/DescriptorConfiguration.java | 126 + .../knox/gateway/model/ProviderConfiguration.java | 41 + .../org/apache/knox/gateway/model/Topology.java | 477 + .../gateway/services/DefaultGatewayServices.java | 8 +- .../impl/instr/InstrHttpClientBuilderProvider.java | 2 +- .../impl/DefaultServiceDefinitionRegistry.java | 228 +- .../security/impl/DefaultAliasService.java | 8 +- .../security/impl/DefaultCryptoService.java | 9 +- .../security/impl/DefaultKeystoreService.java | 151 +- .../services/security/impl/JettySSLService.java | 2 +- .../security/impl/ZookeeperRemoteAliasService.java | 797 +- .../token/impl/AliasBasedTokenStateService.java | 157 + .../token/impl/DefaultTokenAuthorityService.java | 47 +- .../token/impl/DefaultTokenStateService.java | 334 + .../token/impl/TokenStateServiceMessages.java | 70 + .../DefaultClusterConfigurationMonitorService.java | 9 +- .../topology/impl/DefaultTopologyService.java | 393 +- .../topology/monitor/DescriptorsMonitor.java | 142 + .../monitor/SharedProviderConfigMonitor.java | 86 + .../discovery/DefaultServiceDiscoveryConfig.java | 51 - .../discovery/ServiceDiscoveryFactory.java | 81 - .../monitor/RemoteConfigurationMonitorFactory.java | 2 +- .../gateway/topology/simple/SimpleDescriptor.java | 60 - .../topology/simple/SimpleDescriptorHandler.java | 610 -- .../topology/simple/SimpleDescriptorImpl.java | 171 - .../topology/simple/SimpleDescriptorMessages.java | 64 - .../topology/validation/TopologyValidator.java | 14 +- .../knox/gateway/trace/KnoxErrorHandler.java | 3 +- .../java/org/apache/knox/gateway/util/KnoxCLI.java | 203 +- .../gateway/util/ServiceDefinitionsLoader.java | 61 +- .../knox/gateway/util/ServletRequestUtils.java | 64 + .../knox/gateway/util/TopologyToDescriptor.java | 277 + .../apache/knox/gateway/util/TopologyUtils.java | 56 + .../websockets/GatewayWebsocketHandler.java | 77 +- .../gateway/websockets/MessageEventCallback.java | 8 + .../gateway/websockets/ProxyInboundClient.java | 16 + .../gateway/websockets/ProxyWebSocketAdapter.java | 123 +- .../gateway/websockets/WebsocketLogMessages.java | 4 + .../org/apache/knox/gateway/AuditLoggingTest.java | 3 +- .../knox/gateway/GatewayGlobalConfigTest.java | 23 +- .../knox/gateway/GatewayPortMappingConfigTest.java | 7 +- .../gateway/config/impl/GatewayConfigImplTest.java | 6 +- .../knox/gateway/filter/ForwardedRequestTest.java | 125 + ...emRemoteConfigurationRegistryClientService.java | 10 + .../services/AbstractGatewayServicesTest.java | 1 + .../security/impl/DefaultKeystoreServiceTest.java | 120 +- .../impl/ZookeeperRemoteAliasMonitorTest.java | 5 +- .../impl/ZookeeperRemoteAliasServiceTest.java | 72 +- .../impl/AliasBasedTokenStateServiceTest.java | 146 + .../token/impl/DefaultTokenStateServiceTest.java | 302 + .../topology/DefaultTopologyServiceTest.java | 44 +- .../discovery/ServiceDiscoveryFactoryTest.java | 12 + .../monitor/ZooKeeperConfigurationMonitorTest.java | 4 +- .../simple/SimpleDescriptorFactoryTest.java | 2 +- .../simple/SimpleDescriptorHandlerTest.java | 58 +- .../topology/xml/TopologyRulesModuleTest.java | 2 +- .../org/apache/knox/gateway/util/KnoxCLITest.java | 82 + .../gateway/util/ServiceDefinitionsLoaderTest.java | 30 +- .../knox/gateway/websockets/BadBackendTest.java | 5 +- .../gateway/websockets/ConnectionDroppedTest.java | 5 +- .../gateway/websockets/MessageFailureTest.java | 5 +- .../gateway/websockets/ProxyInboundClientTest.java | 9 + .../websockets/WebsocketBackendUrlTest.java | 79 + .../knox/gateway/websockets/WebsocketClient.java | 10 + .../WebsocketEchoHTTPServiceRoleTest.java | 88 + .../knox/gateway/websockets/WebsocketEchoTest.java | 334 +- .../gateway/websockets/WebsocketEchoTestBase.java | 384 + .../WebsocketMultipleConnectionTest.java | 7 +- .../WebsocketServerInitiatedMessageTest.java | 142 + .../WebsocketServerInitiatedPingTest.java | 151 + gateway-server/src/test/resources/token-test.xml | 70 + gateway-service-admin/pom.xml | 16 +- .../ServiceDefinitionCollectionMarshaller.java | 90 + .../admin/ServiceDefinitionUnmarshaller.java | 64 + .../service/admin/ServiceDefinitionsResource.java | 192 + .../ServiceDiscoveryCollectionMarshaller.java | 70 + .../service/admin/ServiceDiscoveryResource.java | 100 + .../gateway/service/admin/TopologiesResource.java | 36 +- .../service/admin/TopologyResourceTest.java | 6 +- gateway-service-as/pom.xml | 2 +- gateway-service-definitions/pom.xml | 7 +- .../knox/gateway/service/definition/Metadata.java | 87 + .../service/definition/ServiceDefinition.java | 18 + .../ServiceDefinitionChangeListener.java | 24 + .../definition/ServiceDefinitionComparator.java | 47 + .../resources/services/ambari/0.2.2.0/service.xml | 6 + .../resources/services/ambari/2.2.0/service.xml | 6 + .../resources/services/ambariui/2.2.0/service.xml | 7 + .../services/atlas-api/0.1.2.0/rewrite.xml | 6 +- .../services/atlas-api/0.1.2.0/service.xml | 7 +- .../resources/services/atlas-api/0.8.0/rewrite.xml | 8 +- .../resources/services/atlas-api/0.8.0/service.xml | 6 + .../resources/services/atlas-api/2.0.0/rewrite.xml | 4 + .../resources/services/atlas-api/2.0.0/service.xml | 6 + .../resources/services/atlas/0.1.2.0/service.xml | 10 +- .../resources/services/atlas/0.8.0/service.xml | 8 +- .../resources/services/atlas/2.0.0/service.xml | 14 +- .../resources/services/avatica/1.9.0/service.xml | 7 + .../resources/services/cm-api/1.0.0/service.xml | 6 + .../resources/services/cm-ui/1.0.0/rewrite.xml | 33 + .../resources/services/cm-ui/1.0.0/service.xml | 62 + .../resources/services/datanode/1.0.0/service.xml | 6 + .../services/druid-broker/0.0.1/service.xml | 10 +- .../druid-coordinator-ui/0.0.1/rewrite.xml | 11 + .../druid-coordinator-ui/0.0.1/service.xml | 6 + .../services/druid-coordinator/0.0.1/service.xml | 10 +- .../services/druid-overlord-ui/0.0.1/service.xml | 8 +- .../services/druid-overlord/0.0.1/service.xml | 7 + .../services/druid-router/0.0.1/service.xml | 6 + .../resources/services/hbase/0.98.0/service.xml | 6 + .../resources/services/hbaseui/1.1.0/service.xml | 8 + .../resources/services/hbaseui/2.1.0/rewrite.xml | 12 + .../resources/services/hbaseui/2.1.0/service.xml | 22 +- .../resources/services/hdfsui/2.7.0/service.xml | 6 + .../resources/services/hdfsui/3.0.0/rewrite.xml | 4 + .../resources/services/hdfsui/3.0.0/service.xml | 6 + .../resources/services/hive/0.13.0/service.xml | 6 + .../main/resources/services/hue/1.0.0/service.xml | 11 +- .../resources/services/impala/1.0.0/rewrite.xml | 21 + .../resources/services/impala/1.0.0/service.xml | 30 + .../resources/services/impalaui/1.0.0/rewrite.xml | 40 + .../resources/services/impalaui/1.0.0/service.xml | 33 + .../services/jobhistoryui/2.7.0/service.xml | 6 + .../resources/services/kafka/0.10.0/service.xml | 9 + .../resources/services/kuduui/1.0.0/rewrite.xml | 73 + .../resources/services/kuduui/1.0.0/service.xml | 37 + .../main/resources/services/livy/0.4.0/rewrite.xml | 23 + .../main/resources/services/livy/0.4.0/service.xml | 14 +- .../resources/services/logsearch/0.5.0/service.xml | 8 +- .../services/nifi-registry/0.5.0/rewrite.xml | 27 + .../services/nifi-registry/0.5.0/service.xml | 36 + .../main/resources/services/nifi/1.4.0/service.xml | 6 + .../services/nodemanagerui/2.7.1/service.xml | 6 + .../resources/services/oozie/4.0.0/service.xml | 6 + .../resources/services/oozieui/4.2.0/service.xml | 6 + .../resources/services/ranger/0.1.0.0/service.xml | 7 + .../resources/services/ranger/0.5.0/service.xml | 7 + .../resources/services/ranger/1.0.0/rewrite.xml | 6 + .../resources/services/ranger/1.0.0/service.xml | 17 +- .../resources/services/rangerui/0.5.0/service.xml | 6 + .../resources/services/rangerui/1.0.0/service.xml | 14 +- .../main/resources/services/solr/5.5.0/service.xml | 6 + .../main/resources/services/solr/6.0.0/service.xml | 6 + .../services/spark3historyui/3.0.0/rewrite.xml | 101 + .../services/spark3historyui/3.0.0/service.xml | 42 + .../services/sparkhistoryui/1.4.0/service.xml | 6 + .../services/sparkhistoryui/2.3.0/rewrite.xml | 9 + .../services/sparkhistoryui/2.3.0/service.xml | 6 + .../services/sparkthriftui/2.1.0/service.xml | 6 + .../services/storm-logviewer/0.9.3/service.xml | 7 + .../resources/services/storm/0.9.3/service.xml | 7 + .../resources/services/webhcat/0.13.0/service.xml | 6 + .../resources/services/webhdfs/2.4.0/rewrite.xml | 5 +- .../resources/services/webhdfs/2.4.0/service.xml | 7 + .../resources/services/yarn-rm/2.5.0/service.xml | 6 + .../resources/services/yarnui/2.7.0/rewrite.xml | 21 +- .../resources/services/yarnui/2.7.0/service.xml | 6 + .../resources/services/yarnuiv2/3.0.0/rewrite.xml | 216 +- .../resources/services/yarnuiv2/3.0.0/service.xml | 42 + .../services/zeppelinui/0.6.0/service.xml | 6 + .../services/zeppelinui/0.8.0/rewrite.xml | 30 +- .../services/zeppelinui/0.8.0/service.xml | 6 + .../services/zeppelinui/0.8.1/rewrite.xml | 30 +- .../services/zeppelinui/0.8.1/service.xml | 6 + .../services/zeppelinws/0.6.0/service.xml | 6 + .../services/zeppelinws/0.8.1/service.xml | 6 + .../ServiceDefinitionComparatorTest.java | 56 + gateway-service-hashicorp-vault/pom.xml | 2 +- ...HashicorpVaultClientAuthenticationProvider.java | 2 +- .../vault/TestHashicorpVaultAliasService.java | 61 +- gateway-service-hbase/pom.xml | 12 +- .../apache/knox/gateway/hbase/HBaseDispatch.java | 21 +- .../gateway/hbase/HBaseHttpClientDispatch.java | 4 +- .../knox/gateway/hbase/HBaseRequestUtil.java | 59 + .../apache/knox/gateway/hbase/HBaseUIDispatch.java | 36 + .../knox/gateway/hbase/HBaseUIHaDispatch.java | 37 + gateway-service-health/pom.xml | 2 +- gateway-service-hive/pom.xml | 2 +- .../knox/gateway/hive/HiveHttpClientDispatch.java | 4 +- gateway-service-impala/pom.xml | 66 + .../apache/knox/gateway/impala/ImpalaDispatch.java | 49 + .../knox/gateway/impala/ImpalaDispatchUtils.java | 42 + .../knox/gateway/impala/ImpalaHaDispatch.java | 49 + gateway-service-jkg/pom.xml | 2 +- gateway-service-knoxsso/pom.xml | 7 +- .../gateway/service/knoxsso/KnoxSSOMessages.java | 5 +- .../gateway/service/knoxsso/WebSSOResource.java | 65 +- .../service/knoxsso/WebSSOResourceTest.java | 93 +- gateway-service-knoxssout/pom.xml | 2 +- gateway-service-knoxtoken/pom.xml | 16 +- .../gateway/service/knoxtoken/TokenResource.java | 207 +- .../service/knoxtoken/TokenServiceMessages.java | 68 +- .../knoxtoken/TokenServiceResourceTest.java | 646 ++ gateway-service-livy/pom.xml | 2 +- gateway-service-metadata/pom.xml | 74 + .../service/metadata/GeneralProxyInformation.java | 59 + .../GeneralProxyInformationMarshaller.java | 89 + .../service/metadata/KnoxMetadataResource.java | 238 + .../KnoxMetadataServiceDeploymentContributor.java | 44 + .../service/metadata/MetadataServiceMessages.java | 34 + .../gateway/service/metadata/ServiceModel.java | 183 + .../service/metadata/TopologyInformation.java | 64 + .../metadata/TopologyInformationWrapper.java | 47 + .../TopologyInformationWrapperMarshaller.java | 89 + ...nox.gateway.deploy.ServiceDeploymentContributor | 18 + .../gateway/service/metadata/ServiceModelTest.java | 234 + gateway-service-nifi-registry/pom.xml | 74 + .../gateway/dispatch/NiFiRegistryDispatch.java | 22 + .../gateway/dispatch/NiFiRegistryHaDispatch.java | 26 + gateway-service-nifi/pom.xml | 2 +- .../apache/knox/gateway/dispatch/NiFiDispatch.java | 32 - .../knox/gateway/dispatch/NiFiHaDispatch.java | 32 - .../knox/gateway/dispatch/NiFiRequestUtil.java | 2 +- gateway-service-remoteconfig/pom.xml | 12 +- .../remote/RemoteConfigurationRegistryConfig.java | 3 + .../DefaultRemoteConfigurationRegistries.java | 2 +- .../remote/config/RemoteConfigurationRegistry.java | 12 + .../config/remote/zk/CuratorClientService.java | 39 +- .../zk/RemoteConfigurationRegistryJAASConfig.java | 4 +- .../config/remote/zk/ZooKeeperClientService.java | 2 + ...moteConfigurationRegistryClientServiceTest.java | 3 +- .../RemoteConfigurationRegistryJAASConfigTest.java | 24 +- gateway-service-rm/pom.xml | 2 +- .../gateway/rm/dispatch/RMHaBaseDispatcher.java | 1 + gateway-service-storm/pom.xml | 2 +- .../apache/knox/gateway/storm/StormDispatch.java | 3 +- gateway-service-test/pom.xml | 2 +- .../gateway/service/test/ServiceTestResource.java | 17 +- gateway-service-tgs/pom.xml | 2 +- gateway-service-vault/pom.xml | 2 +- gateway-service-webhdfs/pom.xml | 2 +- .../hdfs/dispatch/AbstractHdfsHaDispatch.java | 4 +- .../knox/gateway/hdfs/dispatch/HdfsDispatch.java | 4 +- .../hdfs/dispatch/HdfsHttpClientDispatch.java | 1 - .../hdfs/dispatch/WebHdfsHaHttpClientDispatch.java | 5 +- gateway-shell-launcher/pom.xml | 2 +- gateway-shell-release/home/bin/knoxshell.sh | 68 +- .../home/conf/knoxshell-log4j.properties | 2 +- gateway-shell-release/pom.xml | 41 +- gateway-shell-release/src/assembly.xml | 7 + gateway-shell-samples/pom.xml | 2 +- gateway-shell/pom.xml | 32 +- .../apache/knox/gateway/shell/AbstractRequest.java | 25 +- .../apache/knox/gateway/shell/ClientContext.java | 8 - .../org/apache/knox/gateway/shell/Credentials.java | 2 +- .../apache/knox/gateway/shell/ErrorResponse.java | 8 +- .../java/org/apache/knox/gateway/shell/Hadoop.java | 4 +- .../apache/knox/gateway/shell/KnoxDataSource.java | 73 + .../org/apache/knox/gateway/shell/KnoxSession.java | 205 +- .../java/org/apache/knox/gateway/shell/KnoxSh.java | 57 +- .../knox/gateway/shell/KnoxShellMessages.java | 4 + .../java/org/apache/knox/gateway/shell/Shell.java | 45 +- .../gateway/shell/alias/AbstractAliasRequest.java | 131 + .../knox/gateway/shell/alias/AddAliasResponse.java | 48 + .../org/apache/knox/gateway/shell/alias/Alias.java | 53 + .../knox/gateway/shell/alias/AliasResponse.java | 82 + .../knox/gateway/shell/alias/DeleteRequest.java | 62 + .../gateway/shell/alias/ListAliasResponse.java | 38 + .../knox/gateway/shell/alias/ListRequest.java | 47 + .../knox/gateway/shell/alias/PostRequest.java | 84 + .../gateway/shell/alias/RemoveAliasResponse.java | 42 + .../shell/commands/AbstractKnoxShellCommand.java | 81 + .../shell/commands/AbstractSQLCommandSupport.java | 208 + .../knox/gateway/shell/commands/CSVCommand.java | 82 + .../gateway/shell/commands/DataSourceCommand.java | 147 + .../gateway/shell/commands/KnoxLoginDialog.java | 111 + .../knox/gateway/shell/commands/LoginCommand.java | 58 + .../knox/gateway/shell/commands/SelectCommand.java | 186 + .../knox/gateway/shell/commands/SwingUtils.java | 51 + .../gateway/shell/commands/WebHDFSCommand.java | 425 + .../org/apache/knox/gateway/shell/hdfs/Ls.java | 2 +- .../org/apache/knox/gateway/shell/hdfs/Mkdir.java | 2 +- .../org/apache/knox/gateway/shell/hdfs/Put.java | 2 +- .../org/apache/knox/gateway/shell/hdfs/Rm.java | 2 +- .../apache/knox/gateway/shell/jdbc/Database.java | 73 + .../apache/knox/gateway/shell/jdbc/JDBCUtils.java | 38 + .../apache/knox/gateway/shell/jdbc/KnoxLine.java | 218 + .../gateway/shell/jdbc/derby/DerbyDatabase.java | 126 + .../shell/jdbc/derby/DerbyDatabaseException.java | 29 + .../knox/token/AbstractTokenLifecycleRequest.java | 82 + .../apache/knox/gateway/shell/knox/token/Get.java | 37 +- .../knox/gateway/shell/knox/token/Renew.java | 41 + .../knox/gateway/shell/knox/token/Revoke.java | 41 + .../knox/gateway/shell/knox/token/Token.java | 25 +- .../shell/knox/token/TokenLifecycleResponse.java | 28 + .../shell/table/CSVKnoxShellTableBuilder.java | 87 + .../shell/table/JDBCKnoxShellTableBuilder.java | 146 + .../shell/table/JSONKnoxShellTableBuilder.java | 59 + .../shell/table/JoinKnoxShellTableBuilder.java | 90 + .../knox/gateway/shell/table/KnoxShellTable.java | 466 + .../shell/table/KnoxShellTableAggregator.java | 74 + .../gateway/shell/table/KnoxShellTableBuilder.java | 52 + .../gateway/shell/table/KnoxShellTableCall.java | 96 + .../shell/table/KnoxShellTableCallHistory.java | 149 + .../gateway/shell/table/KnoxShellTableCell.java | 70 + .../shell/table/KnoxShellTableFileUtils.java | 47 + .../gateway/shell/table/KnoxShellTableFilter.java | 119 + .../shell/table/KnoxShellTableFilterException.java | 29 + .../shell/table/KnoxShellTableHistoryAspect.java | 86 + .../shell/table/KnoxShellTableJSONSerializer.java | 92 + .../shell/table/KnoxShellTableRenderer.java | 178 + .../shell/table/KnoxShellTableRowDeserializer.java | 169 + gateway-shell/src/main/resources/META-INF/aop.xml | 27 + .../knox/gateway/shell/AbstractRequestTest.java | 90 + .../apache/knox/gateway/shell/KnoxSessionTest.java | 20 - .../org/apache/knox/gateway/shell/KnoxShTest.java | 52 + .../gateway/shell/alias/AbstractResponseTest.java | 158 + .../gateway/shell/alias/AddAliasResponseTest.java | 67 + .../apache/knox/gateway/shell/alias/AliasTest.java | 255 + .../gateway/shell/alias/ListAliasResponseTest.java | 76 + .../shell/alias/RemoveAliasResponseTest.java | 62 + .../knox/gateway/shell/knox/token/GetTest.java | 79 + .../knox/gateway/shell/knox/token/TokenTest.java | 216 + .../shell/table/KnoxShellTableCallHistoryTest.java | 134 + .../shell/table/KnoxShellTableFilterTest.java | 154 + .../gateway/shell/table/KnoxShellTableTest.java | 723 ++ .../src/test/resources/createBooksTable.sql | 5 + gateway-shell/src/test/resources/insertBooks.sql | 4 + .../knoxShellTableCallHistoryWithFiltering.json | 39 + .../knoxShellTableLocationsWithZipLessThan14.csv | 15 + gateway-spi/pom.xml | 36 +- .../apache/knox/gateway/config/GatewayConfig.java | 66 +- .../gateway/dispatch/AbstractGatewayDispatch.java | 12 +- .../gateway/dispatch/ConfigurableDispatch.java | 49 +- .../knox/gateway/dispatch/DefaultDispatch.java | 76 +- .../gateway/dispatch/DefaultHttpClientFactory.java | 16 +- .../gateway/dispatch/HadoopAuthCookieStore.java | 98 +- .../knox/gateway/dispatch/HttpClientDispatch.java | 4 +- .../gateway/dispatch/KnoxSpnegoAuthScheme.java | 3 +- .../knox/gateway/i18n/GatewaySpiMessages.java | 3 + .../apache/knox/gateway/security/SubjectUtils.java | 8 +- .../service/definition/ServiceDefinitionPair.java | 61 + .../ServiceDefinitionPairComparator.java | 34 + .../UrlRewriteRulesDescriptorAdapter.java | 70 + .../apache/knox/gateway/services/ServiceType.java | 1 + .../client/RemoteConfigurationRegistryClient.java | 4 + .../registry/ServiceDefinitionRegistry.java | 14 + .../ServiceDefinitionRegistryException.java | 31 + .../services/security/impl/CMFMasterService.java | 12 +- .../services/security/token/JWTokenAuthority.java | 7 +- .../services/security/token/TokenStateService.java | 155 + .../services/security/token/TokenUtils.java | 83 + .../security/token/UnknownTokenException.java | 40 + .../services/security/token/impl/JWTToken.java | 6 + .../gateway/services/topology/TopologyService.java | 18 +- .../org/apache/knox/gateway/topology/Provider.java | 30 + .../org/apache/knox/gateway/topology/Service.java | 41 +- .../org/apache/knox/gateway/topology/Topology.java | 118 +- .../ClusterConfigurationMonitorProvider.java | 4 +- .../topology/discovery/ServiceDiscoveryConfig.java | 6 + .../discovery/ServiceDiscoveryFactory.java | 78 + .../gateway/util/TruststoreSSLContextUtils.java | 55 + .../apache/knox/gateway/util/WhitelistUtils.java | 37 +- .../gateway/dispatch/ConfigurableDispatchTest.java | 34 +- .../dispatch/DefaultHttpClientFactoryTest.java | 29 +- .../dispatch/HadoopAuthCookieStoreTest.java | 8 +- .../services/security/token/impl/JWTTokenTest.java | 20 + .../apache/knox/gateway/topology/TopologyTest.java | 763 ++ .../knox/gateway/util/WhitelistUtilsTest.java | 44 +- gateway-test-release-utils/pom.xml | 2 +- .../org/apache/knox/gateway/GatewayTestConfig.java | 67 +- .../org/apache/knox/gateway/GatewayTestDriver.java | 8 +- gateway-test-release/pom.xml | 45 +- gateway-test-release/webhdfs-kerb-test/pom.xml | 50 +- .../java/org/apache/hadoop/http/HttpServer2.java | 1705 ++++ gateway-test-release/webhdfs-test/pom.xml | 52 +- .../java/org/apache/hadoop/http/HttpServer2.java | 1706 ++++ gateway-test-utils/pom.xml | 2 +- .../main/java/org/apache/knox/test/Console.java | 9 +- .../main/java/org/apache/knox/test/TestUtils.java | 10 +- .../apache/knox/test/mock/MockRequestMatcher.java | 14 +- .../knox/test/mock/MockServletInputStream.java | 5 + gateway-test/pom.xml | 18 +- .../knox/gateway/AmbariServiceDefinitionTest.java | 6 + .../apache/knox/gateway/GatewayAdminFuncTest.java | 6 + .../apache/knox/gateway/GatewayAppFuncTest.java | 6 + .../apache/knox/gateway/GatewayBasicFuncTest.java | 134 +- .../knox/gateway/GatewayCorrelationIdTest.java | 20 +- .../knox/gateway/GatewayDefaultTopologyTest.java | 75 + .../apache/knox/gateway/GatewayDeployFuncTest.java | 6 + .../apache/knox/gateway/GatewayHealthFuncTest.java | 6 + .../knox/gateway/GatewayLocalServiceFuncTest.java | 6 + .../apache/knox/gateway/GatewayMultiFuncTest.java | 6 + .../GatewayPortMappingDisableFeatureTest.java | 163 +- .../knox/gateway/GatewayPortMappingFailTest.java | 50 +- .../knox/gateway/GatewayPortMappingFuncTest.java | 179 +- .../apache/knox/gateway/GatewaySampleFuncTest.java | 6 + .../apache/knox/gateway/GatewaySslFuncTest.java | 6 + .../org/apache/knox/gateway/PortMappingHelper.java | 189 + .../gateway/SimpleDescriptorHandlerFuncTest.java | 18 +- .../monitor/RemoteConfigurationMonitorTest.java | 17 +- gateway-test/src/test/resources/log4j.properties | 2 + gateway-topology-simple/pom.xml | 70 + .../discovery/DefaultServiceDiscoveryConfig.java | 61 + .../topology/simple/ProviderConfiguration.java | 0 .../simple/ProviderConfigurationParser.java | 0 .../gateway/topology/simple/SimpleDescriptor.java | 70 + .../topology/simple/SimpleDescriptorFactory.java | 0 .../topology/simple/SimpleDescriptorHandler.java | 669 ++ .../topology/simple/SimpleDescriptorImpl.java | 277 + .../topology/simple/SimpleDescriptorMessages.java | 77 + gateway-util-common/pom.xml | 9 +- .../knox/gateway/audit/api/CorrelationContext.java | 4 +- .../appender/JdbmStoreAndForwardAppender.java | 7 +- .../gateway/i18n/GatewayUtilCommonMessages.java | 8 + .../apache/knox/gateway/util/CollectionUtils.java | 47 + .../org/apache/knox/gateway/util/CookieUtils.java | 50 + .../org/apache/knox/gateway/util/JsonUtils.java | 54 + .../util/NoClassNameMultiLineToStringStyle.java | 39 + .../org/apache/knox/gateway/util/StringUtils.java | 42 + .../knox/gateway/util/X500PrincipalParser.java | 6 +- .../knox/gateway/util/X509CertificateUtil.java | 84 +- .../org/apache/knox/gateway/util/XmlUtils.java | 6 +- .../knox/gateway/util/CollectionUtilsTest.java | 61 + .../apache/knox/gateway/util/CookieUtilsTest.java | 68 + .../apache/knox/gateway/util/JsonUtilsTest.java | 45 +- .../knox/gateway/util/PasswordUtilsTest.java | 4 +- .../apache/knox/gateway/util/StringUtilsTest.java | 39 + gateway-util-configinjector/pom.xml | 2 +- .../config/impl/DefaultConfigurationInjector.java | 2 +- gateway-util-launcher/pom.xml | 2 +- .../org/apache/knox/gateway/launcher/Config.java | 6 +- gateway-util-urltemplate/pom.xml | 2 +- .../knox/gateway/util/urltemplate/Template.java | 2 +- .../knox/gateway/util/urltemplate/MatcherTest.java | 3 +- .../knox/gateway/util/urltemplate/ParserTest.java | 88 +- hadoop-examples/pom.xml | 2 +- knox-cli-launcher/pom.xml | 2 +- knox-homepage-ui/.gitignore | 12 + knox-homepage-ui/angular-cli.json | 54 + knox-homepage-ui/home/app/app.module.ts | 44 + .../general.proxy.information.component.html | 61 + .../general.proxy.information.component.ts | 69 + .../general.proxy.information.ts | 22 + knox-homepage-ui/home/app/homepage.service.ts | 85 + knox-homepage-ui/home/app/topologies/service.ts | 26 + .../topologies/topology.information.component.css | 36 + .../topologies/topology.information.component.html | 78 + .../topologies/topology.information.component.ts | 56 + .../home/app/topologies/topology.information.ts | 23 + .../home}/assets/.gitkeep | 0 .../home}/assets/knox-logo-transparent.gif | Bin .../home/assets/service-logos/ambari.png | Bin 0 -> 14670 bytes .../home/assets/service-logos/ambariui.png | Bin 0 -> 14670 bytes .../home/assets/service-logos/ambariws.png | Bin 0 -> 14670 bytes .../home/assets/service-logos/atlas-api.png | Bin 0 -> 5186 bytes .../home/assets/service-logos/atlas.png | Bin 0 -> 5186 bytes .../home/assets/service-logos/avatica.png | Bin 0 -> 33733 bytes .../home/assets/service-logos/datanode.png | Bin 0 -> 63191 bytes .../home/assets/service-logos/druid-broker.png | Bin 0 -> 11419 bytes .../assets/service-logos/druid-coordinator-ui.png | Bin 0 -> 11419 bytes .../assets/service-logos/druid-coordinator.png | Bin 0 -> 11419 bytes .../assets/service-logos/druid-overlord-ui.png | Bin 0 -> 11419 bytes .../home/assets/service-logos/druid-overlord.png | Bin 0 -> 11419 bytes .../home/assets/service-logos/druid-router.png | Bin 0 -> 11419 bytes .../home/assets/service-logos/druid.png | Bin 0 -> 11419 bytes .../home/assets/service-logos/hbase.png | Bin 0 -> 21196 bytes .../home/assets/service-logos/hbaseui.png | Bin 0 -> 21196 bytes .../home/assets/service-logos/hdfsui.png | Bin 0 -> 63191 bytes .../home/assets/service-logos/hive.png | Bin 0 -> 86132 bytes knox-homepage-ui/home/assets/service-logos/hue.png | Bin 0 -> 53507 bytes .../home/assets/service-logos/impala.png | Bin 0 -> 25804 bytes .../home/assets/service-logos/impalaui.png | Bin 0 -> 25804 bytes .../home/assets/service-logos/jobhistoryui.png | Bin 0 -> 371070 bytes .../home/assets/service-logos/kafka.png | Bin 0 -> 2396 bytes .../home/assets/service-logos/kuduui.png | Bin 0 -> 21572 bytes .../home/assets/service-logos/livyserver.png | Bin 0 -> 4492 bytes .../home/assets/service-logos/logsearch.png | Bin 0 -> 64392 bytes .../home/assets/service-logos/nifi-registry.png | Bin 0 -> 3465 bytes .../home/assets/service-logos/nifi.png | Bin 0 -> 3465 bytes .../home/assets/service-logos/nodemanagerui.png | Bin 0 -> 371070 bytes .../home/assets/service-logos/oozie.png | Bin 0 -> 15497 bytes .../home/assets/service-logos/oozieui.png | Bin 0 -> 15497 bytes .../home/assets/service-logos/ranger.png | Bin 0 -> 44773 bytes .../home/assets/service-logos/rangerui.png | Bin 0 -> 44773 bytes .../home/assets/service-logos/resourcemanager.png | Bin 0 -> 371070 bytes .../home/assets/service-logos/solr.png | Bin 0 -> 47661 bytes .../home/assets/service-logos/spark3historyui.png | Bin 0 -> 67362 bytes .../home/assets/service-logos/sparkhistoryui.png | Bin 0 -> 67362 bytes .../home/assets/service-logos/storm-logviewer.png | Bin 0 -> 34490 bytes .../home/assets/service-logos/storm.png | Bin 0 -> 34490 bytes .../home/assets/service-logos/thriftserverui.png | Bin 0 -> 67362 bytes .../home/assets/service-logos/webhbase.png | Bin 0 -> 21196 bytes .../home/assets/service-logos/webhcat.png | Bin 0 -> 86132 bytes .../home/assets/service-logos/webhdfs.png | Bin 0 -> 63191 bytes .../home/assets/service-logos/yarnui.png | Bin 0 -> 371070 bytes .../home/assets/service-logos/yarnuiv2.png | Bin 0 -> 371070 bytes .../home/assets/service-logos/zeppelinui.png | Bin 0 -> 31387 bytes .../home/assets/service-logos/zeppelinws.png | Bin 0 -> 31387 bytes knox-homepage-ui/home/assets/sticky-footer.css | 42 + .../home}/environments/environment.prod.ts | 0 .../home}/environments/environment.ts | 0 .../images => knox-homepage-ui/home}/favicon.ico | Bin knox-homepage-ui/home/index.html | 51 + knox-homepage-ui/home/main.ts | 28 + .../home}/polyfills.ts | 0 knox-homepage-ui/home/styles.css | 27 + knox-homepage-ui/home/tsconfig.json | 21 + {gateway-admin-ui => knox-homepage-ui}/npm | 0 knox-homepage-ui/package-lock.json | 9969 ++++++++++++++++++++ knox-homepage-ui/package.json | 48 + knox-homepage-ui/pom.xml | 93 + knox-homepage-ui/proxy.conf.json | 8 + .../src/main/resources/home/service.xml | 40 + {gateway-admin-ui => knox-homepage-ui}/tslint.json | 0 pom.xml | 434 +- 856 files changed, 50881 insertions(+), 6878 deletions(-) create mode 100644 .github/workflows/main.yml create mode 100644 build-tools/src/main/resources/build-tools/forbiddenapis/signatures.txt create mode 100644 gateway-admin-ui/admin-ui/app/provider-config-wizard/xss-provider-config.ts copy gateway-admin-ui/admin-ui/app/{new-desc-wizard/new-desc-wizard.component.css => service-definition/new-service-definition.component.css} (100%) create mode 100644 gateway-admin-ui/admin-ui/app/service-definition/new-service-definition.component.html create mode 100644 gateway-admin-ui/admin-ui/app/service-definition/new-service-definition.component.ts create mode 100644 gateway-admin-ui/admin-ui/app/service-definition/rewrite.rule.ts create mode 100644 gateway-admin-ui/admin-ui/app/service-definition/rewrite.rules.ts create mode 100644 gateway-admin-ui/admin-ui/app/service-definition/service.ts create mode 100644 gateway-admin-ui/admin-ui/app/service-definition/servicedefinition-detail.component.ts create mode 100644 gateway-admin-ui/admin-ui/app/service-definition/servicedefinition.service.ts create mode 100644 gateway-admin-ui/admin-ui/app/service-definition/servicedefinition.ts create mode 100644 gateway-admin-ui/admin-ui/assets/new-service-definition-template.xml delete mode 100644 gateway-admin-ui/admin-ui/assets/vkbeautify.js create mode 100644 gateway-admin-ui/proxy.conf.json create mode 100644 gateway-cm-integration/pom.xml create mode 100644 gateway-cm-integration/src/main/java/org/apache/knox/gateway/ClouderaManagerIntegrationMessages.java create mode 100644 gateway-cm-integration/src/main/java/org/apache/knox/gateway/cm/descriptor/ClouderaManagerDescriptorMonitor.java create mode 100644 gateway-cm-integration/src/main/java/org/apache/knox/gateway/cm/descriptor/ClouderaManagerDescriptorParser.java create mode 100644 gateway-cm-integration/src/main/java/org/apache/knox/gateway/topology/discovery/advanced/AdvanceServiceDiscoveryConfigurationMessages.java create mode 100644 gateway-cm-integration/src/main/java/org/apache/knox/gateway/topology/discovery/advanced/AdvancedServiceDiscoveryConfig.java create mode 100644 gateway-cm-integration/src/main/java/org/apache/knox/gateway/topology/discovery/advanced/AdvancedServiceDiscoveryConfigChangeListener.java create mode 100644 gateway-cm-integration/src/main/java/org/apache/knox/gateway/topology/discovery/advanced/AdvancedServiceDiscoveryConfigurationMonitor.java create mode 100644 gateway-cm-integration/src/test/java/org/apache/knox/gateway/cm/descriptor/ClouderaManagerDescriptorParserTest.java create mode 100644 gateway-cm-integration/src/test/resources/testDescriptor.xml create mode 100644 gateway-cm-integration/src/test/resources/testDescriptorConfigurationWithNonHadoopStyleConfiguration.xml create mode 100644 gateway-cm-integration/src/test/resources/testDescriptorConfigurationWithWrongDescriptor.xml create mode 100644 gateway-cm-integration/src/test/resources/testDescriptorWithoutDiscoveryDetails.xml create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/ServiceModelGeneratorHandleResponse.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/ServiceURLCollector.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/collector/AbstractURLCollector.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/collector/DefaultURLCollector.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/collector/HueURLCollector.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/collector/ServiceURLCollectors.java delete mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/model/atlas/AtlasUIServiceModelGenerator.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/model/cm/ClouderaManagerAPIServiceModelGenerator.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/model/cm/ClouderaManagerUIServiceModelGenerator.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/model/hive/HiveOnTezServiceModelGenerator.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/model/hive/WebHCatServiceModelGenerator.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/model/impala/ImpalaServiceModelGenerator.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/model/impala/ImpalaUIServiceModelGenerator.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/model/kudu/KuduUIServiceModelGenerator.java delete mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/model/livy/LivyUIServiceModelGenerator.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/model/nifi/NifiRegistryServiceModelGenerator.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/model/nifi/NifiServiceModelGenerator.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/model/phoenix/PhoenixServiceModelGenerator.java delete mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/model/ranger/RangerUIAPIServiceModelGenerator.java delete mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/model/solr/SolrUIServiceModelGenerator.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/model/spark/Spark3HistoryUIServiceModelGenerator.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/model/yarn/JobTrackerServiceModelGenerator.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/model/yarn/ResourceManagerServiceModelGeneratorBase.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/model/zeppelin/ZeppelinServiceModelGenerator.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/monitor/AbstractConfigurationStore.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/monitor/ClouderaManagerClusterConfigurationMonitor.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/monitor/ClouderaManagerClusterConfigurationMonitorProvider.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/monitor/ClusterConfigurationCache.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/monitor/ClusterConfigurationFileStore.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/monitor/ClusterConfigurationStore.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/monitor/DiscoveryConfigurationFileStore.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/monitor/DiscoveryConfigurationStore.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/monitor/PollingConfigurationAnalyzer.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/monitor/ServiceConfigurationModel.java create mode 100644 gateway-discovery-cm/src/main/java/org/apache/knox/gateway/topology/discovery/cm/monitor/ServiceConfigurationRecord.java create mode 100644 gateway-discovery-cm/src/main/resources/META-INF/services/org.apache.knox.gateway.topology.discovery.ClusterConfigurationMonitorProvider create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/AbstractCMDiscoveryTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/auth/AuthUtilsTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/collector/AbstractURLCollectorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/collector/HueURLCollectorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/AbstractServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/atlas/AtlasAPIServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/atlas/AtlasServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/hbase/HBaseUIServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/hbase/WebHBaseServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/hdfs/HdfsUIServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/hdfs/NameNodeServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/hdfs/WebHdfsServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/hive/HiveOnTezServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/hive/HiveServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/hue/HueLBServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/hue/HueServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/impala/ImpalaServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/impala/ImpalaUIServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/kudu/KuduUIServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/livy/LivyServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/nifi/NifiRegistryServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/nifi/NifiServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/oozie/OozieServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/oozie/OozieUIServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/phoenix/PhoenixServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/ranger/RangerServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/ranger/RangerUIServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/solr/SolrServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/spark/Spark3HistoryUIServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/spark/SparkHistoryUIServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/zeppelin/ZeppelinServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/zeppelin/ZeppelinUIServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/model/zeppelin/ZeppelinWSServiceModelGeneratorTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/monitor/AbstractConfigurationStoreTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/monitor/ClusterConfigurationFileStoreTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/monitor/DiscoveryConfigurationFileStoreTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/monitor/PollingConfigurationAnalyzerTest.java create mode 100644 gateway-discovery-cm/src/test/java/org/apache/knox/gateway/topology/discovery/cm/monitor/ServiceConfigurationModelTest.java create mode 100644 gateway-provider-ha/src/main/java/org/apache/knox/gateway/ha/dispatch/ConfigurableHADispatch.java create mode 100644 gateway-provider-rewrite-common/pom.xml rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/api/UrlRewriteEnvironment.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/api/UrlRewriteFilterApplyDescriptor.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/api/UrlRewriteFilterBufferDescriptor.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/api/UrlRewriteFilterContentDescriptor.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/api/UrlRewriteFilterDescriptor.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/api/UrlRewriteFilterDetectDescriptor.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/api/UrlRewriteFilterGroupDescriptor.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/api/UrlRewriteFilterPathDescriptor.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/api/UrlRewriteFilterScopeDescriptor.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/api/UrlRewriteFlowDescriptor.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/api/UrlRewriteFunctionDescriptor.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/api/UrlRewriteFunctionDescriptorFactory.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/api/UrlRewriteRuleDescriptor.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/api/UrlRewriteRulesDescriptor.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/api/UrlRewriteStepDescriptor.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/api/UrlRewriteStepDescriptorFactory.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/api/UrlRewriteStepFlow.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/api/UrlRewriter.java (100%) create mode 100644 gateway-provider-rewrite-common/src/main/java/org/apache/knox/gateway/filter/rewrite/i18n/UrlRewriteMessages.java rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/impl/UrlRewriteFilterApplyDescriptorImpl.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/impl/UrlRewriteFilterBufferDescriptorImpl.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/impl/UrlRewriteFilterContentDescriptorImpl.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/impl/UrlRewriteFilterDescriptorImpl.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/impl/UrlRewriteFilterDetectDescriptorImpl.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/impl/UrlRewriteFilterGroupDescriptorBase.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/impl/UrlRewriteFilterScopeDescriptorImpl.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/impl/UrlRewriteFilterSelectorDescriptorBase.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/impl/UrlRewriteRuleDescriptorImpl.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/impl/UrlRewriteRulesDescriptorImpl.java (100%) create mode 100644 gateway-provider-rewrite-common/src/main/java/org/apache/knox/gateway/filter/rewrite/impl/xml/XmlRewriteRulesDigester.java rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/impl/xml/XmlRewriteRulesTags.java (100%) create mode 100644 gateway-provider-rewrite-common/src/main/java/org/apache/knox/gateway/filter/rewrite/impl/xml/XmlUrlRewriteRulesExporter.java rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/impl/xml/XmlUrlRewriteRulesImporter.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/spi/UrlRewriteFlowDescriptorBase.java (100%) create mode 100644 gateway-provider-rewrite-common/src/main/java/org/apache/knox/gateway/filter/rewrite/spi/UrlRewriteRulesExporter.java rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/spi/UrlRewriteRulesImporter.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/spi/UrlRewriteStepDescriptorBase.java (100%) rename {gateway-provider-rewrite => gateway-provider-rewrite-common}/src/main/java/org/apache/knox/gateway/filter/rewrite/spi/UrlRewriteStepStatus.java (100%) delete mode 100644 gateway-provider-rewrite/src/main/java/org/apache/knox/gateway/filter/rewrite/i18n/UrlRewriteMessages.java delete mode 100644 gateway-provider-rewrite/src/main/java/org/apache/knox/gateway/filter/rewrite/impl/xml/XmlRewriteRulesDigester.java delete mode 100644 gateway-provider-rewrite/src/main/java/org/apache/knox/gateway/filter/rewrite/impl/xml/XmlUrlRewriteRulesExporter.java delete mode 100644 gateway-provider-rewrite/src/main/java/org/apache/knox/gateway/filter/rewrite/spi/UrlRewriteRulesExporter.java create mode 100644 gateway-provider-rewrite/src/test/resources/org/apache/knox/gateway/filter/rewrite/api/UrlRewriteProcessorTest/rewrite-no-match.xml create mode 100644 gateway-provider-security-authz-composite/pom.xml create mode 100644 gateway-provider-security-authz-composite/src/main/java/org/apache/knox/gateway/deploy/impl/CompositeAuthzDeploymentContributor.java create mode 100644 gateway-provider-security-authz-composite/src/main/resources/META-INF/services/org.apache.knox.gateway.deploy.ProviderDeploymentContributor create mode 100644 gateway-provider-security-authz-composite/src/test/java/org/apache/knox/gateway/deploy/impl/CompositeAuthzProviderTest.java create mode 100644 gateway-provider-security-jwt/src/test/java/org/apache/knox/gateway/provider/federation/CommonJWTFilterTest.java create mode 100644 gateway-provider-security-shiro/src/test/java/org/apache/knox/gateway/filter/RedirectToUrlFilterTest.java create mode 100644 gateway-release/home/conf/topologies/homepage.xml create mode 100644 gateway-release/home/conf/topologies/metadata.xml create mode 100644 gateway-server/src/main/java/org/apache/knox/gateway/GatewayServerLifecycleListener.java create mode 100644 gateway-server/src/main/java/org/apache/knox/gateway/model/DescriptorConfiguration.java create mode 100644 gateway-server/src/main/java/org/apache/knox/gateway/model/ProviderConfiguration.java create mode 100644 gateway-server/src/main/java/org/apache/knox/gateway/model/Topology.java create mode 100644 gateway-server/src/main/java/org/apache/knox/gateway/services/token/impl/AliasBasedTokenStateService.java create mode 100644 gateway-server/src/main/java/org/apache/knox/gateway/services/token/impl/DefaultTokenStateService.java create mode 100644 gateway-server/src/main/java/org/apache/knox/gateway/services/token/impl/TokenStateServiceMessages.java create mode 100644 gateway-server/src/main/java/org/apache/knox/gateway/services/topology/monitor/DescriptorsMonitor.java create mode 100644 gateway-server/src/main/java/org/apache/knox/gateway/services/topology/monitor/SharedProviderConfigMonitor.java delete mode 100644 gateway-server/src/main/java/org/apache/knox/gateway/topology/discovery/DefaultServiceDiscoveryConfig.java delete mode 100644 gateway-server/src/main/java/org/apache/knox/gateway/topology/discovery/ServiceDiscoveryFactory.java delete mode 100644 gateway-server/src/main/java/org/apache/knox/gateway/topology/simple/SimpleDescriptor.java delete mode 100644 gateway-server/src/main/java/org/apache/knox/gateway/topology/simple/SimpleDescriptorHandler.java delete mode 100644 gateway-server/src/main/java/org/apache/knox/gateway/topology/simple/SimpleDescriptorImpl.java delete mode 100644 gateway-server/src/main/java/org/apache/knox/gateway/topology/simple/SimpleDescriptorMessages.java create mode 100644 gateway-server/src/main/java/org/apache/knox/gateway/util/ServletRequestUtils.java create mode 100644 gateway-server/src/main/java/org/apache/knox/gateway/util/TopologyToDescriptor.java create mode 100644 gateway-server/src/main/java/org/apache/knox/gateway/util/TopologyUtils.java create mode 100644 gateway-server/src/test/java/org/apache/knox/gateway/filter/ForwardedRequestTest.java create mode 100644 gateway-server/src/test/java/org/apache/knox/gateway/services/token/impl/AliasBasedTokenStateServiceTest.java create mode 100644 gateway-server/src/test/java/org/apache/knox/gateway/services/token/impl/DefaultTokenStateServiceTest.java create mode 100644 gateway-server/src/test/java/org/apache/knox/gateway/websockets/WebsocketBackendUrlTest.java create mode 100644 gateway-server/src/test/java/org/apache/knox/gateway/websockets/WebsocketEchoHTTPServiceRoleTest.java create mode 100644 gateway-server/src/test/java/org/apache/knox/gateway/websockets/WebsocketEchoTestBase.java create mode 100644 gateway-server/src/test/java/org/apache/knox/gateway/websockets/WebsocketServerInitiatedMessageTest.java create mode 100644 gateway-server/src/test/java/org/apache/knox/gateway/websockets/WebsocketServerInitiatedPingTest.java create mode 100644 gateway-server/src/test/resources/token-test.xml create mode 100644 gateway-service-admin/src/main/java/org/apache/knox/gateway/service/admin/ServiceDefinitionCollectionMarshaller.java create mode 100644 gateway-service-admin/src/main/java/org/apache/knox/gateway/service/admin/ServiceDefinitionUnmarshaller.java create mode 100644 gateway-service-admin/src/main/java/org/apache/knox/gateway/service/admin/ServiceDefinitionsResource.java create mode 100644 gateway-service-admin/src/main/java/org/apache/knox/gateway/service/admin/ServiceDiscoveryCollectionMarshaller.java create mode 100644 gateway-service-admin/src/main/java/org/apache/knox/gateway/service/admin/ServiceDiscoveryResource.java create mode 100644 gateway-service-definitions/src/main/java/org/apache/knox/gateway/service/definition/Metadata.java create mode 100644 gateway-service-definitions/src/main/java/org/apache/knox/gateway/service/definition/ServiceDefinitionChangeListener.java create mode 100644 gateway-service-definitions/src/main/java/org/apache/knox/gateway/service/definition/ServiceDefinitionComparator.java create mode 100644 gateway-service-definitions/src/main/resources/services/cm-ui/1.0.0/rewrite.xml create mode 100644 gateway-service-definitions/src/main/resources/services/cm-ui/1.0.0/service.xml create mode 100644 gateway-service-definitions/src/main/resources/services/impala/1.0.0/rewrite.xml create mode 100644 gateway-service-definitions/src/main/resources/services/impala/1.0.0/service.xml create mode 100644 gateway-service-definitions/src/main/resources/services/impalaui/1.0.0/rewrite.xml create mode 100644 gateway-service-definitions/src/main/resources/services/impalaui/1.0.0/service.xml create mode 100644 gateway-service-definitions/src/main/resources/services/kuduui/1.0.0/rewrite.xml create mode 100644 gateway-service-definitions/src/main/resources/services/kuduui/1.0.0/service.xml create mode 100644 gateway-service-definitions/src/main/resources/services/nifi-registry/0.5.0/rewrite.xml create mode 100644 gateway-service-definitions/src/main/resources/services/nifi-registry/0.5.0/service.xml create mode 100644 gateway-service-definitions/src/main/resources/services/spark3historyui/3.0.0/rewrite.xml create mode 100644 gateway-service-definitions/src/main/resources/services/spark3historyui/3.0.0/service.xml create mode 100644 gateway-service-definitions/src/test/java/org/apache/knox/gateway/service/definition/ServiceDefinitionComparatorTest.java create mode 100644 gateway-service-hbase/src/main/java/org/apache/knox/gateway/hbase/HBaseRequestUtil.java create mode 100644 gateway-service-hbase/src/main/java/org/apache/knox/gateway/hbase/HBaseUIDispatch.java create mode 100644 gateway-service-hbase/src/main/java/org/apache/knox/gateway/hbase/HBaseUIHaDispatch.java create mode 100644 gateway-service-impala/pom.xml create mode 100644 gateway-service-impala/src/main/java/org/apache/knox/gateway/impala/ImpalaDispatch.java create mode 100644 gateway-service-impala/src/main/java/org/apache/knox/gateway/impala/ImpalaDispatchUtils.java create mode 100644 gateway-service-impala/src/main/java/org/apache/knox/gateway/impala/ImpalaHaDispatch.java create mode 100644 gateway-service-metadata/pom.xml create mode 100644 gateway-service-metadata/src/main/java/org/apache/knox/gateway/service/metadata/GeneralProxyInformation.java create mode 100644 gateway-service-metadata/src/main/java/org/apache/knox/gateway/service/metadata/GeneralProxyInformationMarshaller.java create mode 100644 gateway-service-metadata/src/main/java/org/apache/knox/gateway/service/metadata/KnoxMetadataResource.java create mode 100644 gateway-service-metadata/src/main/java/org/apache/knox/gateway/service/metadata/KnoxMetadataServiceDeploymentContributor.java create mode 100644 gateway-service-metadata/src/main/java/org/apache/knox/gateway/service/metadata/MetadataServiceMessages.java create mode 100644 gateway-service-metadata/src/main/java/org/apache/knox/gateway/service/metadata/ServiceModel.java create mode 100644 gateway-service-metadata/src/main/java/org/apache/knox/gateway/service/metadata/TopologyInformation.java create mode 100644 gateway-service-metadata/src/main/java/org/apache/knox/gateway/service/metadata/TopologyInformationWrapper.java create mode 100644 gateway-service-metadata/src/main/java/org/apache/knox/gateway/service/metadata/TopologyInformationWrapperMarshaller.java create mode 100644 gateway-service-metadata/src/main/resources/META-INF/services/org.apache.knox.gateway.deploy.ServiceDeploymentContributor create mode 100644 gateway-service-metadata/src/test/java/org/apache/knox/gateway/service/metadata/ServiceModelTest.java create mode 100644 gateway-service-nifi-registry/pom.xml create mode 100644 gateway-service-nifi-registry/src/main/java/org/apache/knox/gateway/dispatch/NiFiRegistryDispatch.java create mode 100644 gateway-service-nifi-registry/src/main/java/org/apache/knox/gateway/dispatch/NiFiRegistryHaDispatch.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/KnoxDataSource.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/alias/AbstractAliasRequest.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/alias/AddAliasResponse.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/alias/Alias.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/alias/AliasResponse.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/alias/DeleteRequest.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/alias/ListAliasResponse.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/alias/ListRequest.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/alias/PostRequest.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/alias/RemoveAliasResponse.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/commands/AbstractKnoxShellCommand.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/commands/AbstractSQLCommandSupport.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/commands/CSVCommand.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/commands/DataSourceCommand.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/commands/KnoxLoginDialog.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/commands/LoginCommand.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/commands/SelectCommand.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/commands/SwingUtils.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/commands/WebHDFSCommand.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/jdbc/Database.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/jdbc/JDBCUtils.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/jdbc/KnoxLine.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/jdbc/derby/DerbyDatabase.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/jdbc/derby/DerbyDatabaseException.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/knox/token/AbstractTokenLifecycleRequest.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/knox/token/Renew.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/knox/token/Revoke.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/knox/token/TokenLifecycleResponse.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/table/CSVKnoxShellTableBuilder.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/table/JDBCKnoxShellTableBuilder.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/table/JSONKnoxShellTableBuilder.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/table/JoinKnoxShellTableBuilder.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/table/KnoxShellTable.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/table/KnoxShellTableAggregator.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/table/KnoxShellTableBuilder.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/table/KnoxShellTableCall.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/table/KnoxShellTableCallHistory.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/table/KnoxShellTableCell.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/table/KnoxShellTableFileUtils.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/table/KnoxShellTableFilter.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/table/KnoxShellTableFilterException.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/table/KnoxShellTableHistoryAspect.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/table/KnoxShellTableJSONSerializer.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/table/KnoxShellTableRenderer.java create mode 100644 gateway-shell/src/main/java/org/apache/knox/gateway/shell/table/KnoxShellTableRowDeserializer.java create mode 100644 gateway-shell/src/main/resources/META-INF/aop.xml create mode 100644 gateway-shell/src/test/java/org/apache/knox/gateway/shell/AbstractRequestTest.java create mode 100644 gateway-shell/src/test/java/org/apache/knox/gateway/shell/KnoxShTest.java create mode 100644 gateway-shell/src/test/java/org/apache/knox/gateway/shell/alias/AbstractResponseTest.java create mode 100644 gateway-shell/src/test/java/org/apache/knox/gateway/shell/alias/AddAliasResponseTest.java create mode 100644 gateway-shell/src/test/java/org/apache/knox/gateway/shell/alias/AliasTest.java create mode 100644 gateway-shell/src/test/java/org/apache/knox/gateway/shell/alias/ListAliasResponseTest.java create mode 100644 gateway-shell/src/test/java/org/apache/knox/gateway/shell/alias/RemoveAliasResponseTest.java create mode 100644 gateway-shell/src/test/java/org/apache/knox/gateway/shell/knox/token/GetTest.java create mode 100644 gateway-shell/src/test/java/org/apache/knox/gateway/shell/knox/token/TokenTest.java create mode 100644 gateway-shell/src/test/java/org/apache/knox/gateway/shell/table/KnoxShellTableCallHistoryTest.java create mode 100644 gateway-shell/src/test/java/org/apache/knox/gateway/shell/table/KnoxShellTableFilterTest.java create mode 100644 gateway-shell/src/test/java/org/apache/knox/gateway/shell/table/KnoxShellTableTest.java create mode 100644 gateway-shell/src/test/resources/createBooksTable.sql create mode 100644 gateway-shell/src/test/resources/insertBooks.sql create mode 100644 gateway-shell/src/test/resources/knoxShellTableCallHistoryWithFiltering.json create mode 100644 gateway-shell/src/test/resources/knoxShellTableLocationsWithZipLessThan14.csv create mode 100644 gateway-spi/src/main/java/org/apache/knox/gateway/service/definition/ServiceDefinitionPair.java create mode 100644 gateway-spi/src/main/java/org/apache/knox/gateway/service/definition/ServiceDefinitionPairComparator.java create mode 100644 gateway-spi/src/main/java/org/apache/knox/gateway/service/definition/UrlRewriteRulesDescriptorAdapter.java create mode 100644 gateway-spi/src/main/java/org/apache/knox/gateway/services/registry/ServiceDefinitionRegistryException.java create mode 100644 gateway-spi/src/main/java/org/apache/knox/gateway/services/security/token/TokenStateService.java create mode 100644 gateway-spi/src/main/java/org/apache/knox/gateway/services/security/token/TokenUtils.java create mode 100644 gateway-spi/src/main/java/org/apache/knox/gateway/services/security/token/UnknownTokenException.java create mode 100644 gateway-spi/src/main/java/org/apache/knox/gateway/topology/discovery/ServiceDiscoveryFactory.java create mode 100644 gateway-spi/src/main/java/org/apache/knox/gateway/util/TruststoreSSLContextUtils.java create mode 100644 gateway-spi/src/test/java/org/apache/knox/gateway/topology/TopologyTest.java create mode 100644 gateway-test-release/webhdfs-kerb-test/src/test/java/org/apache/hadoop/http/HttpServer2.java create mode 100644 gateway-test-release/webhdfs-test/src/test/java/org/apache/hadoop/http/HttpServer2.java create mode 100644 gateway-test/src/test/java/org/apache/knox/gateway/GatewayDefaultTopologyTest.java create mode 100644 gateway-test/src/test/java/org/apache/knox/gateway/PortMappingHelper.java create mode 100644 gateway-topology-simple/pom.xml create mode 100644 gateway-topology-simple/src/main/java/org/apache/knox/gateway/topology/discovery/DefaultServiceDiscoveryConfig.java rename {gateway-server => gateway-topology-simple}/src/main/java/org/apache/knox/gateway/topology/simple/ProviderConfiguration.java (100%) rename {gateway-server => gateway-topology-simple}/src/main/java/org/apache/knox/gateway/topology/simple/ProviderConfigurationParser.java (100%) create mode 100644 gateway-topology-simple/src/main/java/org/apache/knox/gateway/topology/simple/SimpleDescriptor.java rename {gateway-server => gateway-topology-simple}/src/main/java/org/apache/knox/gateway/topology/simple/SimpleDescriptorFactory.java (100%) create mode 100644 gateway-topology-simple/src/main/java/org/apache/knox/gateway/topology/simple/SimpleDescriptorHandler.java create mode 100644 gateway-topology-simple/src/main/java/org/apache/knox/gateway/topology/simple/SimpleDescriptorImpl.java create mode 100644 gateway-topology-simple/src/main/java/org/apache/knox/gateway/topology/simple/SimpleDescriptorMessages.java create mode 100644 gateway-util-common/src/main/java/org/apache/knox/gateway/util/CollectionUtils.java create mode 100644 gateway-util-common/src/main/java/org/apache/knox/gateway/util/CookieUtils.java create mode 100644 gateway-util-common/src/main/java/org/apache/knox/gateway/util/NoClassNameMultiLineToStringStyle.java create mode 100644 gateway-util-common/src/main/java/org/apache/knox/gateway/util/StringUtils.java create mode 100644 gateway-util-common/src/test/java/org/apache/knox/gateway/util/CollectionUtilsTest.java create mode 100644 gateway-util-common/src/test/java/org/apache/knox/gateway/util/CookieUtilsTest.java create mode 100644 gateway-util-common/src/test/java/org/apache/knox/gateway/util/StringUtilsTest.java create mode 100644 knox-homepage-ui/.gitignore create mode 100644 knox-homepage-ui/angular-cli.json create mode 100644 knox-homepage-ui/home/app/app.module.ts create mode 100644 knox-homepage-ui/home/app/generalProxyInformation/general.proxy.information.component.html create mode 100644 knox-homepage-ui/home/app/generalProxyInformation/general.proxy.information.component.ts create mode 100644 knox-homepage-ui/home/app/generalProxyInformation/general.proxy.information.ts create mode 100644 knox-homepage-ui/home/app/homepage.service.ts create mode 100644 knox-homepage-ui/home/app/topologies/service.ts create mode 100644 knox-homepage-ui/home/app/topologies/topology.information.component.css create mode 100644 knox-homepage-ui/home/app/topologies/topology.information.component.html create mode 100644 knox-homepage-ui/home/app/topologies/topology.information.component.ts create mode 100644 knox-homepage-ui/home/app/topologies/topology.information.ts copy {gateway-admin-ui/admin-ui => knox-homepage-ui/home}/assets/.gitkeep (100%) copy {gateway-admin-ui/admin-ui => knox-homepage-ui/home}/assets/knox-logo-transparent.gif (100%) create mode 100644 knox-homepage-ui/home/assets/service-logos/ambari.png create mode 100644 knox-homepage-ui/home/assets/service-logos/ambariui.png create mode 100644 knox-homepage-ui/home/assets/service-logos/ambariws.png create mode 100644 knox-homepage-ui/home/assets/service-logos/atlas-api.png create mode 100644 knox-homepage-ui/home/assets/service-logos/atlas.png create mode 100644 knox-homepage-ui/home/assets/service-logos/avatica.png create mode 100644 knox-homepage-ui/home/assets/service-logos/datanode.png create mode 100644 knox-homepage-ui/home/assets/service-logos/druid-broker.png create mode 100644 knox-homepage-ui/home/assets/service-logos/druid-coordinator-ui.png create mode 100644 knox-homepage-ui/home/assets/service-logos/druid-coordinator.png create mode 100644 knox-homepage-ui/home/assets/service-logos/druid-overlord-ui.png create mode 100644 knox-homepage-ui/home/assets/service-logos/druid-overlord.png create mode 100644 knox-homepage-ui/home/assets/service-logos/druid-router.png create mode 100644 knox-homepage-ui/home/assets/service-logos/druid.png create mode 100644 knox-homepage-ui/home/assets/service-logos/hbase.png create mode 100644 knox-homepage-ui/home/assets/service-logos/hbaseui.png create mode 100644 knox-homepage-ui/home/assets/service-logos/hdfsui.png create mode 100644 knox-homepage-ui/home/assets/service-logos/hive.png create mode 100644 knox-homepage-ui/home/assets/service-logos/hue.png create mode 100644 knox-homepage-ui/home/assets/service-logos/impala.png create mode 100644 knox-homepage-ui/home/assets/service-logos/impalaui.png create mode 100644 knox-homepage-ui/home/assets/service-logos/jobhistoryui.png create mode 100644 knox-homepage-ui/home/assets/service-logos/kafka.png create mode 100644 knox-homepage-ui/home/assets/service-logos/kuduui.png create mode 100644 knox-homepage-ui/home/assets/service-logos/livyserver.png create mode 100644 knox-homepage-ui/home/assets/service-logos/logsearch.png create mode 100644 knox-homepage-ui/home/assets/service-logos/nifi-registry.png create mode 100644 knox-homepage-ui/home/assets/service-logos/nifi.png create mode 100644 knox-homepage-ui/home/assets/service-logos/nodemanagerui.png create mode 100644 knox-homepage-ui/home/assets/service-logos/oozie.png create mode 100644 knox-homepage-ui/home/assets/service-logos/oozieui.png create mode 100644 knox-homepage-ui/home/assets/service-logos/ranger.png create mode 100644 knox-homepage-ui/home/assets/service-logos/rangerui.png create mode 100644 knox-homepage-ui/home/assets/service-logos/resourcemanager.png create mode 100644 knox-homepage-ui/home/assets/service-logos/solr.png create mode 100644 knox-homepage-ui/home/assets/service-logos/spark3historyui.png create mode 100644 knox-homepage-ui/home/assets/service-logos/sparkhistoryui.png create mode 100644 knox-homepage-ui/home/assets/service-logos/storm-logviewer.png create mode 100644 knox-homepage-ui/home/assets/service-logos/storm.png create mode 100644 knox-homepage-ui/home/assets/service-logos/thriftserverui.png create mode 100644 knox-homepage-ui/home/assets/service-logos/webhbase.png create mode 100644 knox-homepage-ui/home/assets/service-logos/webhcat.png create mode 100644 knox-homepage-ui/home/assets/service-logos/webhdfs.png create mode 100644 knox-homepage-ui/home/assets/service-logos/yarnui.png create mode 100644 knox-homepage-ui/home/assets/service-logos/yarnuiv2.png create mode 100644 knox-homepage-ui/home/assets/service-logos/zeppelinui.png create mode 100644 knox-homepage-ui/home/assets/service-logos/zeppelinws.png create mode 100644 knox-homepage-ui/home/assets/sticky-footer.css copy {gateway-admin-ui/admin-ui => knox-homepage-ui/home}/environments/environment.prod.ts (100%) copy {gateway-admin-ui/admin-ui => knox-homepage-ui/home}/environments/environment.ts (100%) copy {gateway-applications/src/main/resources/applications/knoxauth/app/images => knox-homepage-ui/home}/favicon.ico (100%) create mode 100644 knox-homepage-ui/home/index.html create mode 100644 knox-homepage-ui/home/main.ts copy {gateway-admin-ui/admin-ui => knox-homepage-ui/home}/polyfills.ts (100%) create mode 100644 knox-homepage-ui/home/styles.css create mode 100644 knox-homepage-ui/home/tsconfig.json copy {gateway-admin-ui => knox-homepage-ui}/npm (100%) create mode 100644 knox-homepage-ui/package-lock.json create mode 100644 knox-homepage-ui/package.json create mode 100644 knox-homepage-ui/pom.xml create mode 100644 knox-homepage-ui/proxy.conf.json create mode 100644 knox-homepage-ui/src/main/resources/home/service.xml copy {gateway-admin-ui => knox-homepage-ui}/tslint.json (100%)