I really am dense at times. :( I was confusing the 'component' for the system map in this line: https://github.com/weavejester/duct/blob/master/duct/src/duct/component/endpoint.clj#L6
#PalmToFace -d On Tuesday, June 9, 2015 at 5:57:48 PM UTC-5, James Reeves wrote: > > On 9 June 2015 at 23:16, Dru Sellers <d...@drusellers.com <javascript:>> > wrote: > >> @James do you only have one component that has all of your routes? or do >> you have each component supply its own routes? If you imagine a component >> providing its own routes, I'd love to see a duct example with two routes >> set up. >> >> I believe that would be multiple endpoint components. >> >> Looking at >> https://github.com/weavejester/duct/blob/master/duct/src/duct/component/endpoint.clj#L7 >> >> I'm guessing that duct only expects one endpoint-component - is that >> correct? >> > > No, you can have as many endpoint components as you want. > > Duct has a handler component that looks for endpoint components in its > dependencies, and combines their routes together using > compojure.core/routes. > > One of the ideas in Duct is to group routes together by purpose, to > achieve the modularity of micro-service architecture without the overhead. > > For example, let's say you have endpoints foo, bar and baz. Then your > system builder in Duct would look like: > > (defn new-system [config] > (let [config (meta-merge base-config config)] > (-> (component/system-map > :http (jetty-server (:http config)) > :app (handler-component (:app config)) > :foo (endpoint-component foo-endpoint) > :bar (endpoint-component bar-endpoint) > :baz (endpoint-component baz-endpoint)) > (component/system-using > {:http [:app] > :app [:foo :bar :baz]})))) > > - James > -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.