diff options
| author | Jeff Carr <[email protected]> | 2025-04-11 21:01:18 -0500 |
|---|---|---|
| committer | Jeff Carr <[email protected]> | 2025-04-11 21:01:18 -0500 |
| commit | 16558e1b72762e47ca9664c74922e060d571cea4 (patch) | |
| tree | ceab312d2b1290e8691fafd755510b1bf32aef4f /doList.go | |
| parent | 1fd6b1d36d099a3301b62293d004e26bea83a070 (diff) | |
autocomplete + doList()
Diffstat (limited to 'doList.go')
| -rw-r--r-- | doList.go | 102 |
1 files changed, 102 insertions, 0 deletions
diff --git a/doList.go b/doList.go new file mode 100644 index 0000000..ee2eeea --- /dev/null +++ b/doList.go @@ -0,0 +1,102 @@ +// Copyright 2017-2025 WIT.COM Inc. All rights reserved. +// Use of this source code is governed by the GPL 3.0 + +package main + +// An app to submit patches for the 30 GO GUI repos + +import ( + "fmt" + "net/http" + "net/url" + "time" + + "go.wit.com/lib/protobuf/virtpb" + "go.wit.com/log" +) + +// refresh the windows & tables the user has open +func doListDroplets() { + /* + // update the droplet list + if data, err := postData(admin.url.String()+"/DropletsPB", msg); err != nil { + log.Info("/DropletsPB Error:", err) + } else { + fmt.Println("DropletsPB Response len:", len(data)) + admin.droplets = new(virtpb.Droplets) + if err := admin.droplets.Unmarshal(data); err != nil { + fmt.Println("droplets marshal failed", err) + return + } + fmt.Println("Droplet len=", admin.droplets.Len()) + } + + // update the hypervisor list + if data, err := postData(admin.url.String()+"/HypervisorsPB", msg); err != nil { + log.Info("Error:", err) + } else { + fmt.Println("HypervisorsPB Response len:", len(data)) + admin.hypervisors = new(virtpb.Hypervisors) + if err := admin.hypervisors.Unmarshal(data); err != nil { + fmt.Println("hypervisors marshal failed", err) + return + } + fmt.Println("Hypervisors len=", admin.hypervisors.Len()) + } + + // update the events list + if data, err := postData(admin.url.String()+"/EventsPB", msg); err != nil { + log.Info("Error:", err) + } else { + fmt.Println("EventsPB Response len:", len(data)) + admin.events = new(virtpb.Events) + if err := admin.events.Unmarshal(data); err != nil { + fmt.Println("events marshal failed", err) + return + } + fmt.Println("Events len=", admin.events.Len()) + } + */ +} + +// var client *http.Client + +func doList() { + msg := []byte(`{"message": "Hello"}`) + + // Initialize a persistent client with a custom Transport + client = &http.Client{ + Transport: &http.Transport{ + DisableKeepAlives: false, // Ensure Keep-Alive is enabled + }, + Timeout: 10 * time.Second, // Set a reasonable timeout + } + + me.cmap = make(map[*virtpb.Cluster]*adminT) + for c := range me.clusters.IterAll() { + var err error + admin := new(adminT) + me.cmap[c] = admin + log.Info("found in the config file", c.URL) + // a.makeClusterGroup(c) + admin.url, err = url.Parse(c.URL) + if err != nil { + badExit(err) + } + // update the droplet list + if data, err := postData(admin.url.String()+"/DropletsPB", msg); err != nil { + log.Info("/DropletsPB Error:", err) + } else { + fmt.Println("DropletsPB Response len:", len(data)) + admin.droplets = new(virtpb.Droplets) + if err := admin.droplets.Unmarshal(data); err != nil { + fmt.Println("droplets marshal failed", err) + return + } + fmt.Println("Droplet len=", admin.droplets.Len()) + } + + } + + // sit here forever refreshing the GUI +} |
