nsmcp::QuestionService method poll (public)

 <instance of nsmcp::QuestionService[i]> poll context handle

Defined in /usr/local/ns/tcl/nsmcp/question-service.tcl

Parameters:
context (required)
handle (required)

Testcases:
No testcase defined.
Source code:
ns_mutex lock ${:mutex}
try {set record [:owned $context $handle]} finally {ns_mutex unlock ${:mutex}}
set turns {}; set i 0
foreach entry [dict get $record turns] {
    set tools {}; set j 0
    foreach call [dict get $entry tools] {
        lappend tools $j object [list name string [dict get $call name] status string [dict get $call status]  arguments string [dict get $call arguments] result string [dict get $call result] truncated boolean [dict get $call truncated]]
        if {[dict exists $call evidenceHandle]} {
            set fields [lindex $tools end]
            lappend fields evidenceHandle string [dict get $call evidenceHandle]
            set tools [lreplace $tools end end $fields]
        }
        incr j
    }
    set jobs {}; set k 0
    if {[dict exists $entry jobs]} {
        dict for {jobHandle job} [dict get $entry jobs] {
            set fields [list jobHandle string $jobHandle name string [dict get $job name] status string [dict get $job status]]
            if {[dict exists $job progress]} {
                set progress {}
                foreach key {examinedBytes sourceBytes} {
                    if {[dict exists $job progress $key]} {lappend progress $key number [dict get $job progress $key]}
                }
                lappend fields progress object $progress
            }
            lappend jobs $k object $fields
            incr k
        }
    }
    lappend turns $i object [list id string [dict get $entry id] question string [dict get $entry question]  answer string [dict get $entry answer] status string [dict get $entry status]  error string [dict get $entry error] tools array $tools jobs array $jobs]
    incr i
}
set backendName [:defaultBackend]
if {[dict exists $record backend]} {set backendName [dict get $record backend]}
return [list {} object [list conversation string $handle server string [dict get $record server] backend string $backendName  status string [dict get $record status] expires number [dict get $record expires] turns array $turns]]
XQL Not present:
Generic, PostgreSQL, Oracle
[ hide source ] | [ make this the default ]
Show another procedure: