ducky/subscriptions

Paddy 2015-09-27 Parent:2c8250237566 Child:7eef47ecc01c

13:1ff031bebf9e Go to Latest

ducky/subscriptions/client/subscription.go

Add golint comments. Comment on some more of our exported types, functions, and variables, both to make golint happy and because uncommented code never ever ends well.

History
1 package client
3 import (
4 commonAPI "code.secondbit.org/api.hg"
5 "code.secondbit.org/auth.hg"
7 "code.secondbit.org/ducky/subscriptions.hg"
8 "code.secondbit.org/ducky/subscriptions.hg/api"
9 )
11 func (c *Client) CreateSubscription(change subscriptions.SubscriptionChange) (subscriptions.Subscription, error) {
12 resp, err := c.Post("/subscriptions/", change, auth.Scopes{api.ScopeSubscription, api.ScopeSubscriptionAdmin}.Strings(), change.UserID)
13 if err != nil {
14 hErr, ok := err.(httpErrors)
15 if ok {
16 for _, e := range hErr {
17 if e.Slug == commonAPI.RequestErrConflict &&
18 e.Field == "/user_id" {
19 return subscriptions.Subscription{}, subscriptions.ErrSubscriptionAlreadyExists
20 } else if e.Slug == commonAPI.RequestErrConflict &&
21 e.Field == "/stripe_token" {
22 return subscriptions.Subscription{}, subscriptions.ErrStripeSubscriptionAlreadyExists
23 }
24 }
25 }
26 return subscriptions.Subscription{}, err
27 }
28 if len(resp.Subscriptions) < 1 {
29 return subscriptions.Subscription{}, subscriptions.ErrSubscriptionNotFound
30 }
31 return resp.Subscriptions[0], nil
32 }
34 func (c *Client) UpdateSubscription(change subscriptions.SubscriptionChange) (subscriptions.Subscription, error) {
35 resp, err := c.Patch("/subscriptions/"+change.UserID.String(), change, auth.Scopes{api.ScopeSubscription, api.ScopeSubscriptionAdmin}.Strings(), change.UserID)
36 if err != nil {
37 return subscriptions.Subscription{}, err
38 }
39 if len(resp.Subscriptions) < 1 {
40 return subscriptions.Subscription{}, subscriptions.ErrSubscriptionNotFound
41 }
42 return resp.Subscriptions[0], nil
43 }