diff options
author | Collin Guarino <collin.guarino@gmail.com> | 2016-02-18 23:30:40 -0500 |
---|---|---|
committer | Collin Guarino <collin.guarino@gmail.com> | 2016-02-18 23:30:40 -0500 |
commit | a95deb0690428f3c793ae7b4e2401ff56de72343 (patch) | |
tree | f16db5adb2f62fa034f962445ccb3179905d2bb7 /bridge.go | |
parent | 4715205f959490a55b8a2ad8aef56ce503709dbb (diff) |
Implemented Bridge.Login() func that will assign Bridge.Username and create the user if it does not exist. Also convered more functions to Bridge.func()
Diffstat (limited to 'bridge.go')
-rw-r--r-- | bridge.go | 14 |
1 files changed, 12 insertions, 2 deletions
@@ -153,10 +153,9 @@ func (bridge *Bridge) Error(resp *http.Response, err error) (bool) { } // NewBridge defines hardware that is compatible with Hue. -func NewBridge(ip string, username string) (*Bridge, error) { +func NewBridge(ip string) (*Bridge, error) { bridge := Bridge { IPAddress: ip, - Username: username, } info, err := bridge.GetInfo() if err != nil { @@ -166,6 +165,17 @@ func NewBridge(ip string, username string) (*Bridge, error) { return &bridge, nil } +// Bridge.Login assigns a username to access the bridge with and +// will create the username key if it does not exist. +func (bridge *Bridge) Login(username string) error { + bridge.Username = username + err := bridge.CreateUser(username) + if err != nil { + return err + } + return nil +} + // GetBridgeInfo retreives the description.xml file from the bridge. func (bridge *Bridge) GetInfo() (BridgeInfo, error) { _, reader, err := bridge.Get("/description.xml") |