summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorxegineering <me@xegineering.eu>2024-10-03 18:56:14 +0200
committerxegineering <me@xegineering.eu>2024-10-03 20:00:04 +0200
commit9b995e02371e45e8cb5806ee7c7eb8139bf24fd8 (patch)
tree1f135548b9b6ed6cca9b1fc4b717e1523ca33f63
parentd246a58cb4473c7a311d99232a18057544219a9b (diff)
downloadsoundbox-go-9b995e02371e45e8cb5806ee7c7eb8139bf24fd8.tar
soundbox-go-9b995e02371e45e8cb5806ee7c7eb8139bf24fd8.tar.zst
soundbox-go-9b995e02371e45e8cb5806ee7c7eb8139bf24fd8.zip
Remove soundbox.Client
This data structure only contained a net.HardwareAddr and did not provide much more useful functionality. Thus the net.HardwareAddr type should be used directly.
-rw-r--r--client.go31
-rw-r--r--client_test.go25
-rw-r--r--examples_test.go21
-rw-r--r--stream.go5
4 files changed, 5 insertions, 77 deletions
diff --git a/client.go b/client.go
deleted file mode 100644
index 3b681eb..0000000
--- a/client.go
+++ /dev/null
@@ -1,31 +0,0 @@
-package soundbox
-
-import (
- "fmt"
- "net"
-)
-
-// streamingPort is the default network port a soundbox is listening to for
-// incoming audio stream data.
-const streamingPort = 5316
-
-type Client struct {
- HardwareAddr net.HardwareAddr
-}
-
-func NewClient(mac string) (Client, error) {
- hardwareAddr, err := net.ParseMAC(mac)
- if err != nil {
- return Client{}, err
- }
-
- return fromHardwareAddr(hardwareAddr)
-}
-
-func fromHardwareAddr(addr net.HardwareAddr) (Client, error) {
- if len(addr) != 6 {
- return Client{}, fmt.Errorf("Only IEEE 802 MAC-48 addresses supported")
- }
-
- return Client{HardwareAddr: addr}, nil
-}
diff --git a/client_test.go b/client_test.go
deleted file mode 100644
index 35e3624..0000000
--- a/client_test.go
+++ /dev/null
@@ -1,25 +0,0 @@
-package soundbox
-
-import (
- "testing"
-)
-
-func TestNewClient(t *testing.T) {
- // valid MAC should succeed
- _, err := NewClient("12:34:56:ab:cd:ef")
- if err != nil {
- t.Fatalf("NewClient() failed: %v", err)
- }
-
- // invalid MAC should fail
- _, err = NewClient("12:34:56:ab:cd")
- if err == nil {
- t.Fatalf("NewClient() failed: %v", err)
- }
-
- // No EUI-64 supported
- _, err = NewClient("12:34:56:ab:cd:ef:12:45")
- if err == nil {
- t.Fatalf("NewClient() failed: %v", err)
- }
-}
diff --git a/examples_test.go b/examples_test.go
deleted file mode 100644
index 8d233db..0000000
--- a/examples_test.go
+++ /dev/null
@@ -1,21 +0,0 @@
-package soundbox_test
-
-import (
- "fmt"
- "log"
-
- "xengineering.eu/soundbox"
-)
-
-// ExampleClient demonstrates how to instantiate a Client struct. The used MAC
-// address is from an address range suitable for documentation according to
-// https://www.rfc-editor.org/rfc/rfc9542.html#name-48-bit-mac-documentation-va.
-func ExampleClient() {
- s, err := soundbox.NewClient("00:00:5E:00:53:01")
- if err != nil {
- log.Fatal(err)
- }
-
- fmt.Printf("Client with MAC address %v", s.HardwareAddr)
- // Output: Client with MAC address 00:00:5e:00:53:01
-}
diff --git a/stream.go b/stream.go
new file mode 100644
index 0000000..38b3727
--- /dev/null
+++ b/stream.go
@@ -0,0 +1,5 @@
+package soundbox
+
+// streamingPort is the default network port a soundbox is listening to for
+// incoming audio stream data.
+const streamingPort = 5316