nsmcp::QuestionService method evidence (public)

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

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

Parameters:
context (required)
handle (required)
id (required)

Testcases:
No testcase defined.
Source code:
ns_mutex lock ${:mutex}
try {
    set record [:owned $context $handle]
    if {![regexp {^[a-f0-9]{32}$} $id]} {error "Unknown evidence"}
    set found false
    foreach turn [dict get $record turns] {
        foreach tool [dict get $turn tools] {
            if {[dict exists $tool evidenceHandle] && [dict get $tool evidenceHandle] eq $id} {set found true}
        }
    }
    if {!$found} {error "Unknown evidence"}
    set path [file join ${:evidenceDirectory} $handle $id.json]
    if {[file type $path] ne "file" || [file size $path]>${:maxEvidenceBytes}} {error "Evidence unavailable"}
    set channel [open $path r]
    try {
        fconfigure $channel -encoding utf-8 -translation lf
        set result [read $channel]
    } finally {close $channel}
    return [list {} object [list result string $result]]
} finally {ns_mutex unlock ${:mutex}}
XQL Not present:
Generic, PostgreSQL, Oracle
[ hide source ] | [ make this the default ]
Show another procedure: