;; There is a weird error where everything that *should* be NULL comes back as an Object. See https://jira.talendforge.org/browse/TBD-1592
;; Everything else comes back as a String luckily so we can proceed normally.
(when-not(=(classv)Object)
(parserv)))))}))
(defn-post-process-native
;; 99% of the time by the time this is called `.getJobComplete` will return `true`. On the off chance it doesn't, wait a few seconds for the job to finish.
([^QueryResponseresponse]
(post-process-nativeresponse5)); wait up to 5 seconds for `.getJobComplete` to return `true`
([^QueryResponseresponse,^Integertimeout-seconds]
(when-not(.getJobCompleteresponse)
(when(zero?timeout-seconds); if we've ran out of wait time throw an exception
(throw(Exception.(str(.getErrorsresponse)))))
(Thread/sleep1000); otherwise sleep a second, try again, and decrement the remaining `timeout-seconds`