diff --git a/.project.clj.un~ b/.project.clj.un~ index f804290..473e5a5 100644 Binary files a/.project.clj.un~ and b/.project.clj.un~ differ diff --git a/src/pacer/.pacer.clj.un~ b/src/pacer/.pacer.clj.un~ index 8175fce..abfc3f9 100644 Binary files a/src/pacer/.pacer.clj.un~ and b/src/pacer/.pacer.clj.un~ differ diff --git a/src/pacer/pacer.clj b/src/pacer/pacer.clj index 01f8f4e..30ecc4b 100644 --- a/src/pacer/pacer.clj +++ b/src/pacer/pacer.clj @@ -1,6 +1,7 @@ (ns pacer (:import - (com.tinkerpop.blueprints.impls.tg TinkerGraph))) + (com.tinkerpop.blueprints.impls.tg TinkerGraph)) + (:use [clojure.pprint :only [pprint]])) (defn simple-encoder [] { :encode nil :decode nil }) (defn tg [] @@ -23,26 +24,24 @@ [{ :source-type :graph :type :vertex :name "GraphV" - :iterator (fn [source] (.. (:raw-graph source) getVertices iterator)) }]) + :iterator (fn v [source] (.. (:raw-graph source) getVertices iterator)) }]) ([graph] (conj [graph] (first (v))))) -(defn- pipe-from-step [source step] +(defn- pipe-from-step [in step] (cond (:pipe step) (doto (:pipe step) - (.setStarts source)) - (:build-pipe step) (throw (Exception. "Not Implemented")) - (:iterator step) ((:iterator step) source) + (.setStarts (:pipe in (:source in)))) + (:iterator step) ((:iterator step) (:pipe in (:source in))) :else (throw (Exception. "Don't know how to build step")))) (defn pipe "Build a pipe from a route definition" - ([[source step & route]] - (if route - (pipe (pipe-from-step source step) route) - (pipe-from-step source step))) - ([iter [step & route]] - (if route - (recur (pipe-from-step iter step) route) - (pipe-from-step iter step)))) - + [[source & route]] + (reduce (fn [in step] + (pprint in) + { :pipe (pipe-from-step in step) + :type (:type step (:type in)) + :route (conj (:route in) step)}) + { :source source :route [] } + route)) diff --git a/target/repl-port b/target/repl-port index e058745..d722d90 100644 --- a/target/repl-port +++ b/target/repl-port @@ -1 +1 @@ -58812 \ No newline at end of file +59581 \ No newline at end of file diff --git a/target/stale/dependencies b/target/stale/dependencies index 5bc4435..3a8a385 100644 --- a/target/stale/dependencies +++ b/target/stale/dependencies @@ -1 +1 @@ -([:dependencies [[org.clojure/clojure "1.4.0"] [com.tinkerpop.blueprints/blueprints-core "2.1.0"] [com.tinkerpop/pipes "2.1.0"] [com.tinkerpop.gremlin/gremlin-java "2.1.0"] [swank-clojure "1.4.0"]]]) \ No newline at end of file +([:dependencies [[org.clojure/tools.nrepl "0.2.0-beta9" :exclusions [org.clojure/clojure]] [clojure-complete "0.2.1" :exclusions [org.clojure/clojure]] [org.thnetos/cd-client "0.3.4" :exclusions [org.clojure/clojure]] [org.clojure/clojure "1.4.0"] [com.tinkerpop.blueprints/blueprints-core "2.1.0"] [com.tinkerpop/pipes "2.1.0"] [com.tinkerpop.gremlin/gremlin-java "2.1.0"]]]) \ No newline at end of file