88 "strings"
99)
1010
11- func PrintData (value any , decode , printHex bool , blacklist []* regexp.Regexp , logger * Logger ) {
11+ func PrintData (value any , decode , printHex bool , whitelist , blacklist []* regexp.Regexp , logger * Logger ) {
1212 val := reflect .ValueOf (value )
1313
1414 data := make (map [string ]any )
@@ -20,30 +20,39 @@ func PrintData(value any, decode, printHex bool, blacklist []*regexp.Regexp, log
2020 }
2121 }
2222 name := data ["connName" ].(string )
23- if ! connectionNameInBlacklist (name , blacklist ) {
24- var message string
25- fnName := fmt .Sprintf ("Name: %s\n " , data ["name" ])
26- connName := fmt .Sprintf ("Connection Name: %s\n " , data ["connName" ])
27- printData (reflect .ValueOf (data ["dictionary" ]), "" , "" , & message )
28- total := len (fnName ) + len (connName ) + len (message ) + 100
2923
30- builder := strings.Builder {}
31- builder .Grow (total )
24+ if len (whitelist ) > 0 {
25+ if ! connInList (name , whitelist ) {
26+ return
27+ }
28+ } else {
29+ if connInList (name , blacklist ) {
30+ return
31+ }
32+ }
3233
33- builder . WriteString ( fnName )
34- builder . WriteString ( connName )
35- builder . WriteString ( "Data: \n " )
36- builder . WriteString ( message )
37- builder . WriteString ( fmt . Sprintf ( " \n %s \n " , strings . Repeat ( "=" , 80 )))
34+ var message string
35+ fnName := fmt . Sprintf ( "Name: %s \n " , data [ "name" ] )
36+ connName := fmt . Sprintf ( "Connection Name: %s \n ", data [ "connName" ] )
37+ printData ( reflect . ValueOf ( data [ "dictionary" ]), "" , "" , & message )
38+ total := len ( fnName ) + len ( connName ) + len ( message ) + 100
3839
39- logger .Scriptf ("Name: %s" , data ["name" ])
40- logger .Scriptf ("Connection Name: %s" , data ["connName" ])
41- logger .Scriptf ("Data:" )
42- logger .Scriptf ("%s" , message )
43- fmt .Println (strings .Repeat ("=" , 80 ))
40+ builder := strings.Builder {}
41+ builder .Grow (total )
4442
45- logger .writeToFileScript (builder .String ())
46- }
43+ builder .WriteString (fnName )
44+ builder .WriteString (connName )
45+ builder .WriteString ("Data:\n " )
46+ builder .WriteString (message )
47+ builder .WriteString (fmt .Sprintf ("\n %s\n " , strings .Repeat ("=" , 80 )))
48+
49+ logger .Scriptf ("Name: %s" , data ["name" ])
50+ logger .Scriptf ("Connection Name: %s" , data ["connName" ])
51+ logger .Scriptf ("Data:" )
52+ logger .Scriptf ("%s" , message )
53+ fmt .Println (strings .Repeat ("=" , 80 ))
54+
55+ logger .writeToFileScript (builder .String ())
4756}
4857
4958func printData (v reflect.Value , key , indent string , message * string ) {
@@ -78,8 +87,8 @@ func printData(v reflect.Value, key, indent string, message *string) {
7887 }
7988}
8089
81- func connectionNameInBlacklist (connName string , blacklist []* regexp.Regexp ) bool {
82- for _ , b := range blacklist {
90+ func connInList (connName string , list []* regexp.Regexp ) bool {
91+ for _ , b := range list {
8392 if match := b .MatchString (connName ); match {
8493 return true
8594 }
0 commit comments