@@ -98,3 +98,78 @@ func toIntfArray(stringArray []string) []interface{} {
9898 }
9999 return intfArray
100100}
101+
102+
103+
104+ //func outputTable1(flag *cli.Flag, response string) error {
105+ //
106+ // var v interface{}
107+ // err := json.Unmarshal([]byte(response), &v)
108+ //
109+ // if err != nil {
110+ // return err
111+ // }
112+ //
113+ // targets := strings.Split(flag.GetValue(), ",")
114+ // cols := columnFinder(targets, v)
115+ //
116+ // if len(cols) == 0 {
117+ // return fmt.Errorf("%s field %s error", flagOutputTableRow, flag.GetValue())
118+ // }
119+ //
120+ // format := strings.Repeat("%v\t", len(cols[0]) - 1) + "%v"
121+ //
122+ // w := tabwriter.NewWriter(os.Stdout, 0, 0, 1, ' ', tabwriter.Debug)
123+ //
124+ // fmt.Fprintln(w, fmt.Sprintf(format, toIntfArray(targets)...))
125+ // separator := "-----------------"
126+ // fmt.Fprintln(w, strings.Repeat(separator + "\t", len(cols[0]) - 1) + separator)
127+ // for _, col := range cols {
128+ // fmt.Fprintln(w, fmt.Sprintf(format, col...))
129+ // }
130+ // w.Flush()
131+ //
132+ // return nil
133+ //}
134+ //
135+ //func isBaseType(v interface{}) bool {
136+ // switch v.(type) {
137+ // case map[string]interface{}:
138+ // return false
139+ // case []interface{}:
140+ // return false
141+ // }
142+ //
143+ // return true
144+ //}
145+ //
146+ //func columnFinder(targets []string, v interface{}) [][]interface{} {
147+ // var outputTable [][]interface{}
148+ // switch v1 := v.(type) {
149+ // case map[string]interface{}:
150+ // row := []interface{}{}
151+ // for _, target := range targets {
152+ // colValue, ok := v1[target]
153+ // if ok && isBaseType(colValue) {
154+ // row = append(row, colValue)
155+ // }
156+ // }
157+ //
158+ // if len(row) == len(targets) {
159+ // outputTable = append(outputTable, row)
160+ // return outputTable
161+ // }
162+ //
163+ // for _, intf := range v1 {
164+ // outputTable = append(outputTable, columnFinder(targets, intf)...)
165+ // }
166+ //
167+ // case []interface{}:
168+ // for _, intf := range v1{
169+ // outputTable = append(outputTable, columnFinder(targets, intf)...)
170+ // }
171+ // }
172+ //
173+ // return outputTable
174+ //}
175+
0 commit comments