(def sproc-map {:sproc "webicon.p_get_prop"
:params [{:name :ipropid :type :string}
{:name :cursor :type :cursor :output true}
...]})
(defsproc get-property sproc-map [:ipropid] (first cursor))
;; Generates a bunch of jdbc code to call the sproc, compiles it, so you
;; only need to use defsproc once, and youve got a reusable function named
;; get-property
user=> (get-property 96975)
{:iname "Hamilton Heights" :iaddress "10212 NW ..." ...}
Sometimes sproc versions change, and we dont know. Frequently happens in CI, QA, not so much prod.
Troubleshooting means hearing about the problem on the front end, checking logs for a stacktrace, usually interpreting a cryptic jdbc SQLException (mixed w/ Clojure exception goodness).
lein defsproc validate
iws-oracle.properties/get-properties ... true
iws-oracle.properties/get-reviews ... true
iws-oracle.domains/put-domain ... false
...
- Break the build?
- /check-sprocs