summaryrefslogtreecommitdiff
path: root/compojure-3.2/src/compojure/server/common.clj
diff options
context:
space:
mode:
Diffstat (limited to 'compojure-3.2/src/compojure/server/common.clj')
-rwxr-xr-xcompojure-3.2/src/compojure/server/common.clj26
1 files changed, 26 insertions, 0 deletions
diff --git a/compojure-3.2/src/compojure/server/common.clj b/compojure-3.2/src/compojure/server/common.clj
new file mode 100755
index 0000000..b31fbd6
--- /dev/null
+++ b/compojure-3.2/src/compojure/server/common.clj
@@ -0,0 +1,26 @@
+;; Copyright (c) James Reeves. All rights reserved.
+;; The use and distribution terms for this software are covered by the Eclipse
+;; Public License 1.0 (http://opensource.org/licenses/eclipse-1.0.php) which
+;; can be found in the file epl-v10.html at the root of this distribution. By
+;; using this software in any fashion, you are agreeing to be bound by the
+;; terms of this license. You must not remove this notice, or any other, from
+;; this software.
+
+(ns compojure.server.common
+ "Common functions for implementing compojure server wrapper."
+ (:import java.net.URL))
+
+(defn get-host-and-path
+ "Splits a path or URL into its hostname and path."
+ [url-or-path]
+ (if (re-find #"^[a-z+.-]+://" url-or-path)
+ (let [url (URL. url-or-path)]
+ [(.getHost url) (.getPath url)])
+ [nil url-or-path]))
+
+(defn server-with-options
+ "Create a new server using the supplied function, options and servlets."
+ [creator options servlets]
+ (if (map? options)
+ (creator options servlets)
+ (creator {} (cons options servlets))))