//register an event func myrebootcallback(c libvirt.VirConnection, d libvirt.VirDomain, event int, detail int) { fmt.Printf("Got event %d\n", event) if event == libvirt.VIR_DOMAIN_EVENT_STOPPED { fmt.Println("rebooting...") d.Create() } }
//register an event func myrebootcallback(c libvirt.VirConnection, d libvirt.VirDomain, event int, detail int) { fmt.Printf("Got event %d\n", event) if event == libvirt.VIR_DOMAIN_EVENT_STOPPED { fmt.Println("rebooting...") d.Create() } name, _ := d.GetName() if callbackMap.Check(name) == true { callbackid := callbackMap.Get(name).(int) libvirt.ConnectDomainEventDeregister(c, callbackid) callbackMap.Delete(name) } }