Repository: storm
Updated Branches:
  refs/heads/master cd6206320 -> 20084ba34


STORM-708. CORS support for STORM UI.


Project: http://git-wip-us.apache.org/repos/asf/storm/repo
Commit: http://git-wip-us.apache.org/repos/asf/storm/commit/0201a90a
Tree: http://git-wip-us.apache.org/repos/asf/storm/tree/0201a90a
Diff: http://git-wip-us.apache.org/repos/asf/storm/diff/0201a90a

Branch: refs/heads/master
Commit: 0201a90aec9a73c75ec7bed640ddf70efb1874d8
Parents: 3d48f42
Author: Sriharsha Chintalapani <[email protected]>
Authored: Mon Mar 16 15:33:31 2015 -0700
Committer: Sriharsha Chintalapani <[email protected]>
Committed: Mon Mar 16 15:33:31 2015 -0700

----------------------------------------------------------------------
 storm-core/src/clj/backtype/storm/ui/helpers.clj | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/storm/blob/0201a90a/storm-core/src/clj/backtype/storm/ui/helpers.clj
----------------------------------------------------------------------
diff --git a/storm-core/src/clj/backtype/storm/ui/helpers.clj 
b/storm-core/src/clj/backtype/storm/ui/helpers.clj
index 925b9dc..562a407 100644
--- a/storm-core/src/clj/backtype/storm/ui/helpers.clj
+++ b/storm-core/src/clj/backtype/storm/ui/helpers.clj
@@ -26,7 +26,8 @@
   (:import [org.eclipse.jetty.server Server]
            [org.eclipse.jetty.server.nio SelectChannelConnector]
            [org.eclipse.jetty.server.ssl SslSocketConnector]
-           [org.eclipse.jetty.servlet ServletHolder FilterMapping])
+           [org.eclipse.jetty.servlet ServletHolder FilterMapping]
+           [org.eclipse.jetty.servlets CrossOriginFilter])
   (:require [ring.util servlet])
   (:require [compojure.route :as route]
             [compojure.handler :as handler]))
@@ -168,12 +169,20 @@ $(\"table#%s\").each(function(i) { $(this).tablesorter({ 
sortList: %s, headers:
   (when (> port 0)
     (.addConnector server (mk-ssl-connector port ks-path ks-password 
ks-type))))
 
+(defn cors-filter-handler
+  []
+  (doto (org.eclipse.jetty.servlet.FilterHolder. (CrossOriginFilter.))
+    (.setInitParameter CrossOriginFilter/ALLOWED_ORIGINS_PARAM "*")
+    (.setInitParameter CrossOriginFilter/ALLOWED_METHODS_PARAM "GET, POST, 
PUT")
+    (.setInitParameter CrossOriginFilter/ALLOWED_HEADERS_PARAM "*")))
+
 (defn config-filter [server handler filters-confs]
   (if filters-confs
     (let [servlet-holder (ServletHolder.
                            (ring.util.servlet/servlet handler))
           context (doto (org.eclipse.jetty.servlet.ServletContextHandler. 
server "/")
                     (.addServlet servlet-holder "/"))]
+      (.addFilter context (cors-filter-handler) "/*" FilterMapping/ALL)
       (doseq [{:keys [filter-name filter-class filter-params]} filters-confs]
         (if filter-class
           (let [filter-holder (doto (org.eclipse.jetty.servlet.FilterHolder.)

Reply via email to