mirror of
https://bitbucket.org/svk28/rac-gui
synced 2024-11-13 00:56:54 +00:00
Make Parsing text for Table list
This commit is contained in:
parent
8d11556947
commit
2d767190af
172
lib/function.tcl
172
lib/function.tcl
@ -21,15 +21,16 @@ proc TreePress {tree} {
|
||||
} elseif {$key eq ""} {
|
||||
return
|
||||
}
|
||||
puts "$id $host $values"
|
||||
#puts "$id $host $values"
|
||||
Run::$key $tree $host $values
|
||||
#RunCommand $root "infobase summary list --cluster=$cluster $host"
|
||||
}
|
||||
|
||||
namespace eval Run {} {}
|
||||
# Получение данных по кластерам
|
||||
proc Run::server {tree host values} {
|
||||
proc Run::server_ {tree host values} {
|
||||
set lst [RunCommand server::$host "cluster list $host"]
|
||||
|
||||
set l [split $lst "&"]
|
||||
foreach i $l {
|
||||
set cluster_list [split $i ":"]
|
||||
@ -49,6 +50,31 @@ proc Run::server {tree host values} {
|
||||
}
|
||||
}
|
||||
}
|
||||
proc Run::server {tree host values} {
|
||||
set lst [RunCommand server::$host "cluster list $host"]
|
||||
set l [lindex $lst 0]
|
||||
foreach cluster_list $lst {
|
||||
foreach i $cluster_list {
|
||||
puts $i
|
||||
set cluster_list [split $i ":"]
|
||||
if {[string trim [lindex $cluster_list 0]] eq "cluster"} {
|
||||
set cluster_id [string trim [lindex $cluster_list 1]]
|
||||
lappend cluster($cluster_id) $cluster_id
|
||||
}
|
||||
if {[string trim [lindex $cluster_list 0]] eq "name"} {
|
||||
lappend cluster($cluster_id) [string trim [lindex $cluster_list 1]]
|
||||
}
|
||||
}
|
||||
}
|
||||
foreach x [array names cluster] {
|
||||
set id [lindex $cluster($x) 0]
|
||||
if { [$tree exists "cluster::$id"] == 0 } {
|
||||
$tree insert "server::$host" end -id "cluster::$id" -text "[lindex $cluster($x) 1]" -values "$id"
|
||||
InsertClusterItems $tree $id
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
proc Run::cluster {$tree host values} {
|
||||
global active_cluster
|
||||
set active_cluster $values
|
||||
@ -60,18 +86,19 @@ proc Run::infobases {tree host values} {
|
||||
.frm_work.tree_work delete [ .frm_work.tree_work children {}]
|
||||
|
||||
set lst [RunCommand infobase::$values "infobase summary --cluster=$active_cluster list $host"]
|
||||
set l [split $lst "&"]
|
||||
puts $lst
|
||||
foreach i $l {
|
||||
set base_list [split $i ":"]
|
||||
if {[string trim [lindex $base_list 0]] eq "infobase"} {
|
||||
set base_id [string trim [lindex $base_list 1]]
|
||||
lappend base($base_id) $base_id
|
||||
foreach info_bases_list $lst {
|
||||
foreach i $info_bases_list {
|
||||
set base_list [split $i ":"]
|
||||
if {[string trim [lindex $base_list 0]] eq "infobase"} {
|
||||
set base_id [string trim [lindex $base_list 1]]
|
||||
lappend base($base_id) $base_id
|
||||
}
|
||||
if {[string trim [lindex $base_list 0]] eq "name"} {
|
||||
lappend base($base_id) [string trim [lindex $base_list 1]]
|
||||
}
|
||||
#InsertItemsWorkList $base_list
|
||||
}
|
||||
if {[string trim [lindex $base_list 0]] eq "name"} {
|
||||
lappend base($base_id) [string trim [lindex $base_list 1]]
|
||||
}
|
||||
InsertItemsWorkList $base_list
|
||||
InsertItemsWorkList $info_bases_list
|
||||
}
|
||||
foreach x [array names base] {
|
||||
set id [lindex $base($x) 0]
|
||||
@ -81,15 +108,17 @@ proc Run::infobases {tree host values} {
|
||||
InsertBaseItems $tree $id
|
||||
}
|
||||
}
|
||||
|
||||
proc Run::infobase {tree host values} {
|
||||
global active_cluster
|
||||
.frm_work.tree_work delete [ .frm_work.tree_work children {}]
|
||||
set lst [RunCommand infobase::$values "infobase info --cluster=$active_cluster --infobase=$values $host"]
|
||||
|
||||
set l [split $lst "&"]
|
||||
foreach i $l {
|
||||
set base_list [split $i ":"]
|
||||
InsertItemsWorkList $base_list
|
||||
foreach l $lst {
|
||||
foreach i $l {
|
||||
set base_list [split $i ":"]
|
||||
InsertItemsWorkList $base_list
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -97,21 +126,26 @@ proc Run::List:Base {tree host values par} {
|
||||
global active_cluster
|
||||
.frm_work.tree_work delete [ .frm_work.tree_work children {}]
|
||||
set lst [RunCommand infobase::$values "$par list --cluster=$active_cluster --infobase=$values $host"]
|
||||
puts $lst
|
||||
set l [split $lst "&"]
|
||||
foreach i $l {
|
||||
set base_list [split $i ":"]
|
||||
InsertItemsWorkList $base_list
|
||||
|
||||
foreach l $lst {
|
||||
foreach i $l {
|
||||
set base_list [split $i ":"]
|
||||
InsertItemsWorkList $base_list
|
||||
}
|
||||
puts "--$l"
|
||||
InsertItemsWorkList $l
|
||||
}
|
||||
}
|
||||
proc Run::List {tree host values par} {
|
||||
global active_cluster
|
||||
.frm_work.tree_work delete [ .frm_work.tree_work children {}]
|
||||
set lst [RunCommand infobase::$values "$par list --cluster=$active_cluster $host"]
|
||||
set l [split $lst "&"]
|
||||
foreach i $l {
|
||||
set base_list [split $i ":"]
|
||||
InsertItemsWorkList $base_list
|
||||
foreach l $lst {
|
||||
foreach i $l {
|
||||
set base_list [split $i ":"]
|
||||
#InsertItemsWorkList $base_list
|
||||
}
|
||||
InsertItemsWorkList $l
|
||||
}
|
||||
}
|
||||
|
||||
@ -129,17 +163,20 @@ proc Run::servers {tree host values} {
|
||||
global active_cluster
|
||||
.frm_work.tree_work delete [ .frm_work.tree_work children {}]
|
||||
set lst [RunCommand infobase::$values "server list --cluster=$active_cluster $host"]
|
||||
set l [split $lst "&"]
|
||||
foreach i $l {
|
||||
set server_list [split $i ":"]
|
||||
#InsertItemsWorkList $server_list
|
||||
if {[string trim [lindex $server_list 0]] eq "server"} {
|
||||
set server_id [string trim [lindex $server_list 1]]
|
||||
lappend server($server_id) $server_id
|
||||
}
|
||||
if {[string trim [lindex $server_list 0]] eq "name"} {
|
||||
lappend server($server_id) [string trim [lindex $server_list 1]]
|
||||
foreach l $lst {
|
||||
foreach i $l {
|
||||
set server_list [split $i ":"]
|
||||
#InsertItemsWorkList $server_list
|
||||
if {[string trim [lindex $server_list 0]] eq "server"} {
|
||||
set server_id [string trim [lindex $server_list 1]]
|
||||
lappend server($server_id) $server_id
|
||||
}
|
||||
if {[string trim [lindex $server_list 0]] eq "name"} {
|
||||
lappend server($server_id) [string trim [lindex $server_list 1]]
|
||||
}
|
||||
}
|
||||
puts $l
|
||||
InsertItemsWorkList $l
|
||||
}
|
||||
foreach x [array names server] {
|
||||
set id [lindex $server($x) 0]
|
||||
@ -154,10 +191,13 @@ proc Run::work_server {tree host values} {
|
||||
global active_cluster
|
||||
.frm_work.tree_work delete [ .frm_work.tree_work children {}]
|
||||
set lst [RunCommand infobase::$values "server info --cluster=$active_cluster --server=$values $host"]
|
||||
set l [split $lst "&"]
|
||||
foreach i $l {
|
||||
set base_list [split $i ":"]
|
||||
InsertItemsWorkList $base_list
|
||||
foreach l $lst {
|
||||
foreach i $l {
|
||||
set base_list [split $i ":"]
|
||||
InsertItemsWorkList_ $base_list
|
||||
}
|
||||
#puts $l
|
||||
#InsertItemsWorkList $l
|
||||
}
|
||||
#Run::List $tree $host $values server
|
||||
}
|
||||
@ -182,24 +222,68 @@ proc Run::admins {tree host values} {
|
||||
}
|
||||
}
|
||||
|
||||
proc InsertItemsWorkList {lst} {
|
||||
proc InsertItemsWorkList_ {lst} {
|
||||
#.frm_work.tree_work configure -columns "par val" -displaycolumns "par val"
|
||||
.frm_work.tree_work insert {} end -values $lst
|
||||
# .frm_work.tree_work column [lindex $lst 0] -id [lindex $lst 0]
|
||||
# .frm_work.tree_work heading [lindex $lst 0] -text [lindex $lst 0]
|
||||
# .frm_work.tree_work insert [lindex $lst 0] end -values [lindex $lst 1]
|
||||
#.frm_work.tree_work insert val end -text [lindex $lst 1] -values [lindex $lst 1]
|
||||
#puts [.frm_work.tree_work cget -columns]
|
||||
#puts [.frm_work.tree_work column par]
|
||||
|
||||
}
|
||||
proc RunCommand {root par} {
|
||||
proc InsertItemsWorkList {lst} {
|
||||
foreach i $lst {
|
||||
set l [split $i ":"]
|
||||
lappend column_list [lindex $l 0]
|
||||
lappend value_list [lindex $l 1]
|
||||
}
|
||||
.frm_work.tree_work configure -columns $column_list -displaycolumns $column_list
|
||||
.frm_work.tree_work insert {} end -values $value_list
|
||||
foreach j $column_list {
|
||||
.frm_work.tree_work heading $j -text $j
|
||||
}
|
||||
}
|
||||
|
||||
proc RunCommand_ {root par} {
|
||||
global dir rac_cmd cluster
|
||||
puts $par
|
||||
#puts $par
|
||||
set pipe [open "|$rac_cmd $par" "r"]
|
||||
set lst ""
|
||||
while {[gets $pipe line]>=0} {
|
||||
#puts "$line"
|
||||
append lst "$line&"
|
||||
if {$line eq ""} {
|
||||
append lst "----&"
|
||||
} else {
|
||||
append lst "$line&"
|
||||
}
|
||||
}
|
||||
close $pipe
|
||||
return $lst
|
||||
# fileevent $pipe readable [list DebugInfo .frm_work.tree_work $pipe]
|
||||
# fconfigure $pipe -buffering none -blocking no
|
||||
}
|
||||
proc RunCommand {root par} {
|
||||
global dir rac_cmd cluster
|
||||
#puts $par
|
||||
set pipe [open "|$rac_cmd $par" "r"]
|
||||
set lst ""
|
||||
set l ""
|
||||
while {[gets $pipe line]>=0} {
|
||||
if {$line eq ""} {
|
||||
lappend l $lst
|
||||
set lst ""
|
||||
} else {
|
||||
lappend lst $line
|
||||
}
|
||||
}
|
||||
close $pipe
|
||||
return $l
|
||||
|
||||
# fileevent $pipe readable [list DebugInfo .frm_work.tree_work $pipe]
|
||||
# fconfigure $pipe -buffering none -blocking no
|
||||
}
|
||||
|
||||
proc InsertClusterItems {tree id} {
|
||||
set parent "cluster::$id"
|
||||
|
@ -61,7 +61,7 @@ ttk::scrollbar $frm_work.hsb -orient horizontal -command [list $frm_work.tree_wo
|
||||
ttk::scrollbar $frm_work.vsb -orient vertical -command [list $frm_work.tree_work yview]
|
||||
set tree_work [
|
||||
ttk::treeview $frm_work.tree_work -class TreeView \
|
||||
-show headings -columns "par val" -displaycolumns "par val"\
|
||||
-show headings -columns "par val" -displaycolumns "par val"\
|
||||
-xscrollcommand [list $frm_work.hsb set] \
|
||||
-yscrollcommand [list $frm_work.vsb set]
|
||||
]
|
||||
|
Loading…
Reference in New Issue
Block a user