nsmcp::LogSummaryReader method line (protected)

 <instance of nsmcp::LogSummaryReader[i]> line

Defined in /usr/local/ns/tcl/nsmcp/log-traffic-summary.tcl

Testcases:
No testcase defined.
Source code:
if {${:offset}>=${:limit}} {
    return {}
}
set start ${:offset}
set sample {}
set terminated false
set clipped false
while {${:offset}<${:limit}} {
    if {${:index} >= [string length ${:buffer}]} {
        set :buffer [read ${:channel} [expr {min(65536,${:limit}-${:offset})}]]
        set :index 0
        if {${:buffer} eq ""} {
            break
        }
    }
    set end [string first \n ${:buffer} ${:index}]
    if {$end<0} {
        set end [string length ${:buffer}]
    } else {
        set terminated true
    }
    set count [expr {$end-${:index}}]
    set room [expr {max(0,${:maxBytes}-[string length $sample])}]
    if {$count>$room} {
        set clipped true
    }
    if {$room>0} {
        append sample [string range ${:buffer} ${:index} [expr {min($end-1,${:index}+$room-1)}]]
    }
    set consumed [expr {$count+($terminated ? 1 : 0)}]
    incr :offset $consumed
    incr :index $consumed
    if {$terminated} {
        break
    }
}
set text [encoding convertfrom utf-8 [string trimright $sample \r]]
regsub -all {\x1b\[[0-9;]*m} $text {} text
return [dict create start $start end ${:offset} text $text truncated $clipped terminated $terminated]
XQL Not present:
Generic, PostgreSQL, Oracle
[ hide source ] | [ make this the default ]
Show another procedure: