nmcli.go 591 B

123456789101112131415161718192021222324252627282930313233343536
  1. package nmcli
  2. import (
  3. nmcli_go "github.com/KunMengcode/nmcli-go"
  4. )
  5. type NMClient struct {
  6. wifi WIFIInterface
  7. device DeviceInterface
  8. ethernet EthernetInterface
  9. }
  10. func NewNMCli() NMClient {
  11. cli := nmcli_go.NewNMCli()
  12. return NMClient{
  13. wifi: NewWIFI(&cli),
  14. device: NewDevice(&cli),
  15. ethernet: NewEthernet(&cli),
  16. }
  17. }
  18. func (receiver *NMClient) Register() (err error) {
  19. err = receiver.wifi.register()
  20. if err != nil {
  21. return
  22. }
  23. err = receiver.device.register()
  24. if err != nil {
  25. return
  26. }
  27. err = receiver.ethernet.register()
  28. if err != nil {
  29. return
  30. }
  31. return
  32. }