KNOX-705 rules to support view changes in Ambari
diff --git a/gateway-service-definitions/src/main/resources/services/ambariui/2.2.0/rewrite.xml b/gateway-service-definitions/src/main/resources/services/ambariui/2.2.0/rewrite.xml
index 9151fe0..4d03e9a 100644
--- a/gateway-service-definitions/src/main/resources/services/ambariui/2.2.0/rewrite.xml
+++ b/gateway-service-definitions/src/main/resources/services/ambariui/2.2.0/rewrite.xml
@@ -25,6 +25,10 @@
         <rewrite template="{$serviceUrl[AMBARIUI]}/{**}?{**}"/>
     </rule>
 
+    <rule dir="OUT" name="AMBARIUI/ambari/outbound/sitepath">
+        <rewrite template="{$frontend[path]}/ambari"/>
+    </rule>
+
     <rule dir="OUT" name="AMBARIUI/ambari/outbound/extrapath">
         <rewrite template="{$frontend[path]}/ambari/api/v1"/>
     </rule>
@@ -42,15 +46,52 @@
         <rewrite template="{$frontend[url]}/ambari/img/{**}"/>
     </rule>
 
+    <filter name="AMBARIUI/ambari/outbound/proxyroot">
+        <content type="*/x-javascript">
+            <apply path="\{proxy_root\}" rule="AMBARIUI/ambari/outbound/sitepath"/>
+        </content>
+        <content type="application/javascript">
+            <apply path="\{proxy_root\}" rule="AMBARIUI/ambari/outbound/sitepath"/>
+        </content>
+    </filter>
+
+    <!-- filter to rewrite api prefix defined in .js from root -->
+    <!-- e.g. /api/v1 -->
+    <filter name="AMBARIUI/ambari/outbound/apiendpoint">
+        <content type="*/x-javascript">
+            <apply path="/api/v1" rule="AMBARIUI/ambari/outbound/extrapath"/>
+        </content>
+        <content type="application/javascript">
+            <apply path="/api/v1" rule="AMBARIUI/ambari/outbound/extrapath"/>
+        </content>
+    </filter>
+
+    <filter name="AMBARIUI/ambari/outbound/apiendpoint/html">
+        <content type="text/html">
+            <apply path="/api/v1" rule="AMBARIUI/ambari/outbound/extrapath"/>
+        </content>
+    </filter>
+
+    <filter name="AMBARIUI/ambari/outbound/apiendpoint/noroot">
+        <content type="*/x-javascript">
+            <apply path="api/v1" rule="AMBARIUI/ambari/outbound/extrapath"/>
+        </content>
+        <content type="application/javascript">
+            <apply path="api/v1" rule="AMBARIUI/ambari/outbound/extrapath"/>
+        </content>
+    </filter>
+
     <filter name="AMBARIUI/ambari/outbound/links">
         <content type="*/x-javascript">
             <apply path="/api/v1" rule="AMBARIUI/ambari/outbound/extrapath"/>
+            <apply path="\{proxy_root\}" rule="AMBARIUI/ambari/outbound/sitepath"/>
             <apply path="/img/logo-white.png" rule="AMBARIUI/ambari/outbound/whitelogo"/>
             <apply path="/#/main/dashboard" rule="AMBARIUI/ambari/outbound/logohref"/>
             <apply path="/img/ambari-view-default.png" rule="AMBARIUI/ambari/outbound/ambariview"/>
         </content>
         <content type="application/javascript">
             <apply path="/api/v1" rule="AMBARIUI/ambari/outbound/extrapath"/>
+            <apply path="\{proxy_root\}" rule="AMBARIUI/ambari/outbound/sitepath"/>
             <apply path="/img/logo-white.png" rule="AMBARIUI/ambari/outbound/whitelogo"/>
             <apply path="/#/main/dashboard" rule="AMBARIUI/ambari/outbound/logohref"/>
             <apply path="/img/ambari-view-default.png" rule="AMBARIUI/ambari/outbound/ambariview"/>
@@ -58,4 +99,4 @@
         <content type="*/html">
         </content>
     </filter>
-</rules>
\ No newline at end of file
+</rules>
diff --git a/gateway-service-definitions/src/main/resources/services/ambariui/2.2.0/service.xml b/gateway-service-definitions/src/main/resources/services/ambariui/2.2.0/service.xml
index 786b197..728fe2a 100644
--- a/gateway-service-definitions/src/main/resources/services/ambariui/2.2.0/service.xml
+++ b/gateway-service-definitions/src/main/resources/services/ambariui/2.2.0/service.xml
@@ -28,6 +28,36 @@
         <route path="/ambari/**/app.js">
             <rewrite apply="AMBARIUI/ambari/outbound/links" to="response.body"/>
         </route>
+
+        <!-- Admin View route -->
+        <route path="/ambari/views/ADMIN_VIEW/**/INSTANCE/**/main.js">
+            <rewrite apply="AMBARIUI/ambari/outbound/proxyroot" to="response.body"/>
+        </route>
+
+        <!-- Files view -->
+        <route path="/ambari/views/FILES/**/assets/files-view*.js">
+            <rewrite apply="AMBARIUI/ambari/outbound/apiendpoint" to="response.body"/>
+        </route>
+
+        <!-- Capacity Scheduler view -->
+        <route path="/ambari/views/CAPACITY-SCHEDULER/**/javascripts/app.js">
+            <rewrite apply="AMBARIUI/ambari/outbound/apiendpoint/noroot" to="response.body"/>
+        </route>
+
+        <!-- Hive view route -->
+        <route path="/ambari/views/HIVE/**/assets/hive.js">
+            <rewrite apply="AMBARIUI/ambari/outbound/apiendpoint" to="response.body"/>
+        </route>
+
+        <!-- Storm View -->
+        <route path="/ambari/views/Storm_Monitoring/**/scripts/models/*.js">
+            <rewrite apply="AMBARIUI/ambari/outbound/apiendpoint" to="response.body"/>
+        </route>
+
+        <route path="/ambari/views/ZEPPELIN/*/*/">
+            <rewrite apply="AMBARIUI/ambari/outbound/apiendpoint/html" to="response.body"/>
+        </route>
+        <!-- No need to rewrite Slider View -->
     </routes>
     <dispatch classname="org.apache.hadoop.gateway.dispatch.PassAllHeadersDispatch"/>
 </service>