summaryrefslogtreecommitdiff
path: root/change.go
diff options
context:
space:
mode:
Diffstat (limited to 'change.go')
-rw-r--r--change.go136
1 files changed, 0 insertions, 136 deletions
diff --git a/change.go b/change.go
deleted file mode 100644
index 2352d38..0000000
--- a/change.go
+++ /dev/null
@@ -1,136 +0,0 @@
-package main
-
-import (
- // "reflect"
-
- "errors"
- "fmt"
- "time"
-
- "google.golang.org/protobuf/types/known/anypb"
- "google.golang.org/protobuf/types/known/timestamppb"
- "google.golang.org/protobuf/types/known/wrapperspb"
-
- pb "go.wit.com/lib/protobuf/virtbuf"
- "go.wit.com/log"
-)
-
-func convertToAnypb(x any) *anypb.Any {
- switch v := x.(type) {
- case int64:
- var a *anypb.Any
- a, _ = anypb.New(wrapperspb.Int64(x.(int64)))
- return a
- case string:
- var a *anypb.Any
- a, _ = anypb.New(wrapperspb.String(x.(string)))
- return a
- case int:
- var a *anypb.Any
- a, _ = anypb.New(wrapperspb.Int64(x.(int64)))
- return a
- case bool:
- var a *anypb.Any
- a, _ = anypb.New(wrapperspb.Bool(x.(bool)))
- return a
- default:
- log.Error(errors.New("convertToAnypb() unknown type"), "v =", v, "x =", x)
- return nil
- }
- return nil
-}
-
-func convertToString(x any) string {
- switch v := x.(type) {
- case int64:
- return fmt.Sprintf("%d", x.(int64))
- case string:
- return x.(string)
- case int:
- return fmt.Sprintf("%d", x.(int))
- case uint:
- return fmt.Sprintf("%d", x.(uint))
- case bool:
- if x.(bool) {
- return "true"
- }
- return "false"
- default:
- log.Info("convertToSTring() unknown type", v)
- log.Error(errors.New("convertToSTring() unknown type"), "v =", v, "x =", x)
- return ""
- }
- return ""
-}
-
-// Wrapping the int into a protobuf message
-func NewChangeEvent(d *pb.Droplet, fname string, origval any, newval any) *pb.Event {
- var e *pb.Event
- e = new(pb.Event)
-
- e.Droplet = d.Hostname
- e.OrigVal = convertToString(origval)
- e.NewVal = convertToString(newval)
- e.FieldName = fname
-
- now := time.Now()
- e.Start = timestamppb.New(now)
-
- // this also works, but it's a bit overkill
- // e.NewAny = convertToAnypb(newval)
-
- // me.events.Events = append(me.events.Events, e)
- // stuff := me.events.FormatJSON()
- // log.Info("events:", stuff)
- return e
-}
-
-// work in progress
-func NewAddEvent(a any, fname string, newval any) *pb.Event {
- var e *pb.Event
- e = new(pb.Event)
-
- switch v := a.(type) {
- case *pb.Droplet:
- var d *pb.Droplet
- d = a.(*pb.Droplet)
- e.Droplet = d.Hostname
- case *pb.Cluster:
- e.Droplet = "Cluster"
- case nil:
- e.Droplet = "<nil>"
- default:
- log.Info("newAddEvent() unknown type", v)
- e.Droplet = "on something somewhere"
- }
-
- e.NewVal = convertToString(newval)
- e.FieldName = fname
-
- now := time.Now()
- e.Start = timestamppb.New(now)
-
- return e
-}
-
-/*
-// update the droplet memory
-func (d *pb.Droplet) SetMemory(b int64) *pb.Event {
- oldm := pb.HumanFormatBytes(d.pb.Memory)
- newm := pb.HumanFormatBytes(b)
- if d.pb.Memory == b {
- // log.Info("droplet", d.pb.Hostname, "memory unchanged", oldm, "to", newm)
- return nil
- }
- log.Info("droplet", d.pb.Hostname, "memory change from", oldm, "to", newm)
-
- return NewChangeEvent(d.pb, "Droplet.Memory", d.pb.Memory, b)
-}
-*/
-
-/*
-// update the droplet memory
-func (d *pb.Droplet) SetCpus(b int64) {
- log.Info("Set the number of cpus for the droplet", b)
-}
-*/