package nmcli import ( nmcli_go "github.com/KunMengcode/nmcli-go" ) type NMClient struct { wifi WIFIInterface device DeviceInterface ethernet EthernetInterface } func NewNMCli() NMClient { cli := nmcli_go.NewNMCli() return NMClient{ wifi: NewWIFI(&cli), device: NewDevice(&cli), ethernet: NewEthernet(&cli), } } func (receiver *NMClient) Register() (err error) { err = receiver.wifi.register() if err != nil { return } err = receiver.device.register() if err != nil { return } err = receiver.ethernet.register() if err != nil { return } return }