aboutsummaryrefslogtreecommitdiff
path: root/bridge.go
diff options
context:
space:
mode:
authorCollin Guarino <collin.guarino@gmail.com>2016-02-21 16:19:19 -0500
committerCollin Guarino <collin.guarino@gmail.com>2016-02-21 16:19:19 -0500
commit9e14b7323fd6b07144d6ebe62eb011eb0f317fb1 (patch)
tree721fb914adaebbfd239e010d591129f967d05496 /bridge.go
parent6b8ed19f09439a1d8af9129143ebf96a4c3b8774 (diff)
Improved error handling for Bridge.Login and Bridge.CreateUser
Diffstat (limited to 'bridge.go')
-rw-r--r--bridge.go25
1 files changed, 14 insertions, 11 deletions
diff --git a/bridge.go b/bridge.go
index f78b8e3..d3d40a3 100644
--- a/bridge.go
+++ b/bridge.go
@@ -154,22 +154,12 @@ func NewBridge(ip string) (*Bridge, error) {
}
err := bridge.GetInfo()
if err != nil {
+ log.Fatal("Error: Unable to access bridge. ", err)
return &Bridge{}, err
}
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() error {
_, reader, err := bridge.Get("/description.xml")
@@ -187,11 +177,24 @@ func (bridge *Bridge) GetInfo() error {
return 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 {
+ log.Fatal("Error: Unable to login as user ", username, " ", err)
+ return err
+ }
+ return nil
+}
+
// Bridge.CreateUser posts to ./api on the bridge to create a new whitelisted user.
func (bridge *Bridge) CreateUser(deviceType string) error {
params := map[string]string{"devicetype": deviceType}
body, _, err := bridge.Post("/api", params)
if err != nil {
+ log.Fatal("Error: Unable to create user. ", err)
return err
}
content := string(body)