@@ -23,29 +23,21 @@ func NewBoardsController(wc *wrecker.Wrecker) *BoardsController {
23
23
// Fetch loads a board from the board_spec (username/board-slug)
24
24
// Endpoint: [GET] /v1/boards/<board_spec:board>/
25
25
func (bc * BoardsController ) Fetch (boardSpec string ) (* models.Board , error ) {
26
- // Make request
27
- response := new (models.Response )
28
- response .Data = new (models.Board )
29
- resp , err := bc .wreckerClient .Get ("/boards/" + boardSpec ).
26
+ // Build + execute request
27
+ resp := new (models.Response )
28
+ resp .Data = new (models.Board )
29
+ httpResp , err := bc .wreckerClient .Get ("/boards/" + boardSpec ).
30
30
URLParam ("fields" , models .BOARD_FIELDS ).
31
- Into (response ).
31
+ Into (resp ).
32
32
Execute ()
33
33
34
- // Error from Wrecker
35
- if err != nil {
34
+ // Check Error
35
+ if err = models . WrapPinterestError ( httpResp , resp , err ); err != nil {
36
36
return nil , err
37
37
}
38
38
39
- // Status code
40
- if ! (resp .StatusCode >= 200 && resp .StatusCode < 300 ) {
41
- return nil , & models.PinterestError {
42
- StatusCode : resp .StatusCode ,
43
- Message : response .Message ,
44
- }
45
- }
46
-
47
39
// OK
48
- return response .Data .(* models.Board ), nil
40
+ return resp .Data .(* models.Board ), nil
49
41
}
50
42
51
43
// BoardCreateOptionals is a struct that represents the optional parameters
@@ -57,31 +49,23 @@ type BoardCreateOptionals struct {
57
49
// Create makes a new board
58
50
// Endpoint: [POST] /v1/boards/
59
51
func (bc * BoardsController ) Create (boardName string , optionals * BoardCreateOptionals ) (* models.Board , error ) {
60
- // Make request
61
- response := new (models.Response )
62
- response .Data = new (models.Board )
63
- resp , err := bc .wreckerClient .Post ("/boards/" ).
52
+ // Build + execute request
53
+ resp := new (models.Response )
54
+ resp .Data = new (models.Board )
55
+ httpResp , err := bc .wreckerClient .Post ("/boards/" ).
64
56
URLParam ("fields" , models .BOARD_FIELDS ).
65
57
FormParam ("name" , boardName ).
66
58
FormParam ("description" , optionals .Description ).
67
- Into (response ).
59
+ Into (resp ).
68
60
Execute ()
69
61
70
- // Error from Wrecker
71
- if err != nil {
62
+ // Check Error
63
+ if err = models . WrapPinterestError ( httpResp , resp , err ); err != nil {
72
64
return nil , err
73
65
}
74
66
75
- // Status code
76
- if ! (resp .StatusCode >= 200 && resp .StatusCode < 300 ) {
77
- return nil , & models.PinterestError {
78
- StatusCode : resp .StatusCode ,
79
- Message : response .Message ,
80
- }
81
- }
82
-
83
67
// OK
84
- return response .Data .(* models.Board ), nil
68
+ return resp .Data .(* models.Board ), nil
85
69
}
86
70
87
71
// BoardUpdateOptionals is a struct that represents the optional parameters
@@ -94,56 +78,40 @@ type BoardUpdateOptionals struct {
94
78
// Update updates an existing board
95
79
// Endpoint: [PATCH] /v1/boards/<board_spec:board>/
96
80
func (bc * BoardsController ) Update (boardSpec string , optionals * BoardUpdateOptionals ) (* models.Board , error ) {
97
- // Make request
98
- response := new (models.Response )
99
- response .Data = new (models.Board )
100
- resp , err := bc .wreckerClient .Patch ("/boards/" + boardSpec + "/" ).
81
+ // Build + execute request
82
+ resp := new (models.Response )
83
+ resp .Data = new (models.Board )
84
+ httpResp , err := bc .wreckerClient .Patch ("/boards/" + boardSpec + "/" ).
101
85
URLParam ("fields" , models .BOARD_FIELDS ).
102
86
FormParam ("name" , optionals .Name ).
103
87
FormParam ("description" , optionals .Description ).
104
- Into (response ).
88
+ Into (resp ).
105
89
Execute ()
106
90
107
- // Error from Wrecker
108
- if err != nil {
91
+ // Check Error
92
+ if err = models . WrapPinterestError ( httpResp , resp , err ); err != nil {
109
93
return nil , err
110
94
}
111
95
112
- // Status code
113
- if ! (resp .StatusCode >= 200 && resp .StatusCode < 300 ) {
114
- return nil , & models.PinterestError {
115
- StatusCode : resp .StatusCode ,
116
- Message : response .Message ,
117
- }
118
- }
119
-
120
96
// OK
121
- return response .Data .(* models.Board ), nil
97
+ return resp .Data .(* models.Board ), nil
122
98
}
123
99
124
100
// Delete deletes an existing board
125
101
// Endpoint: [DELETE] /v1/boards/<board_spec:board>/
126
102
func (bc * BoardsController ) Delete (boardSpec string ) error {
127
- // Make request
128
- response := new (models.Response )
129
- response .Data = ""
130
- resp , err := bc .wreckerClient .Delete ("/boards/" + boardSpec + "/" ).
131
- Into (response ).
103
+ // Build + execute request
104
+ resp := new (models.Response )
105
+ resp .Data = ""
106
+ httpResp , err := bc .wreckerClient .Delete ("/boards/" + boardSpec + "/" ).
107
+ Into (resp ).
132
108
Execute ()
133
109
134
- // Error from Wrecker
135
- if err != nil {
110
+ // Check Error
111
+ if err = models . WrapPinterestError ( httpResp , resp , err ); err != nil {
136
112
return err
137
113
}
138
114
139
- // Status code
140
- if ! (resp .StatusCode >= 200 && resp .StatusCode < 300 ) {
141
- return & models.PinterestError {
142
- StatusCode : resp .StatusCode ,
143
- Message : response .Message ,
144
- }
145
- }
146
-
147
115
// OK
148
116
return nil
149
117
}
0 commit comments