(connect-node workflow node args)
Connects the sink of one flow as the source of the next updating the workflow.
Note: This operates on the inverse of the convention for streams. i.e. source
Connects the sink of one flow as the source of the next updating the workflow. Note: This operates on the inverse of the convention for streams. i.e. source
(default-flow {:flow/keys [id default-fn]})
Returns a flow map which wraps the provided default-fn
to decorate
the argument (as a map) with map values returned by the function.
Returns a flow map which wraps the provided `default-fn` to decorate the argument (as a map) with map values returned by the function.
(flowify flow-catalog arg & {:flow/keys [expand] :or {expand false} :as op})
Converts the argument into an appropriate flow.
Converts the argument into an appropriate flow. - flow map: pass-through - fn: returns a fn-flow (optionally uses result pipelining) - single arg: lookup flow in catalog
(fn-flow fn-arg & {:flow/keys [expand id] :or {expand false id nil} :as opts})
Returns a flow map for a fn which wraps its execution to conform to the stream model.
Returns a flow map for a fn which wraps its execution to conform to the stream model.
(interceptor-order flow-catalog
definition
&
{:keys [expand] :or {expand false} :as opts})
(invoke {:workflow/keys [return-n put-timeout take-timeout expand repeat sink
source]
:or {return-n nil expand false repeat false}
:as workflow}
rt-arg)
Invokes the workflow operating on its streams to execute as a synchronous operation returning a vector of the results.
Notes
The operation is in two phases populating the sink with the passed argument using the workflow options and the take phase which populates the output vector.
Unless specified by return-n
, the operation will return all pending values from
the workflow source.
Options
return-n Returns exactly n results from the workflow or fails if unable to do so when timeouts are specified. If more results are requested than available from the source this function will hang.
expand If the runtime argument is a seq the contents of the seq are individually added.
repeat When return-n is set n copies of the passed argument is added before the take phase.
put-timeout Will wait X milliseconds before throwing an exception during put operations.
take-timeout Will wait X milliseconds before throwing an exception during take operations.
Invokes the workflow operating on its streams to execute as a synchronous operation returning a vector of the results. Notes The operation is in two phases populating the sink with the passed argument using the workflow options and the take phase which populates the output vector. Unless specified by `return-n`, the operation will return all pending values from the workflow source. Options - return-n Returns exactly n results from the workflow or fails if unable to do so when timeouts are specified. If more results are requested than available from the source this function will hang. - expand If the runtime argument is a seq the contents of the seq are individually added. - repeat When return-n is set n copies of the passed argument is added before the take phase. - put-timeout Will wait X milliseconds before throwing an exception during put operations. - take-timeout Will wait X milliseconds before throwing an exception during take operations.
(linear-order
flow-catalog
definition
&
{:keys [expand omit-leave] :or {expand false omit-leave false} :as opts})
(lookup-flow catalog id & {:keys [throw-missing] :or {throw-missing false}})
Looks up a flow from the catalog by its :flow/id
Looks up a flow from the catalog by its :flow/id
(validate-topology flow-catalog definition)
Checks that the entries of the workflow definition to be processed by workflow-factory
is a seq, isn't empty, has a recognized type and exists in the catalog when defined by id.
Checks that the entries of the workflow definition to be processed by `workflow-factory` is a seq, isn't empty, has a recognized type and exists in the catalog when defined by id.
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close