1 package web
2
3
4
5
6
7
8
9 import (
10 "context"
11 "github.com/Azure/go-autorest/autorest"
12 "github.com/Azure/go-autorest/autorest/azure"
13 "github.com/Azure/go-autorest/tracing"
14 "net/http"
15 )
16
17
18 type ProviderClient struct {
19 BaseClient
20 }
21
22
23 func NewProviderClient(subscriptionID string) ProviderClient {
24 return NewProviderClientWithBaseURI(DefaultBaseURI, subscriptionID)
25 }
26
27
28
29 func NewProviderClientWithBaseURI(baseURI string, subscriptionID string) ProviderClient {
30 return ProviderClient{NewWithBaseURI(baseURI, subscriptionID)}
31 }
32
33
34 func (client ProviderClient) GetAvailableStacks(ctx context.Context, osTypeSelected string) (result ApplicationStackCollectionPage, err error) {
35 if tracing.IsEnabled() {
36 ctx = tracing.StartSpan(ctx, fqdn+"/ProviderClient.GetAvailableStacks")
37 defer func() {
38 sc := -1
39 if result.asc.Response.Response != nil {
40 sc = result.asc.Response.Response.StatusCode
41 }
42 tracing.EndSpan(ctx, sc, err)
43 }()
44 }
45 result.fn = client.getAvailableStacksNextResults
46 req, err := client.GetAvailableStacksPreparer(ctx, osTypeSelected)
47 if err != nil {
48 err = autorest.NewErrorWithError(err, "web.ProviderClient", "GetAvailableStacks", nil, "Failure preparing request")
49 return
50 }
51
52 resp, err := client.GetAvailableStacksSender(req)
53 if err != nil {
54 result.asc.Response = autorest.Response{Response: resp}
55 err = autorest.NewErrorWithError(err, "web.ProviderClient", "GetAvailableStacks", resp, "Failure sending request")
56 return
57 }
58
59 result.asc, err = client.GetAvailableStacksResponder(resp)
60 if err != nil {
61 err = autorest.NewErrorWithError(err, "web.ProviderClient", "GetAvailableStacks", resp, "Failure responding to request")
62 return
63 }
64 if result.asc.hasNextLink() && result.asc.IsEmpty() {
65 err = result.NextWithContext(ctx)
66 return
67 }
68
69 return
70 }
71
72
73 func (client ProviderClient) GetAvailableStacksPreparer(ctx context.Context, osTypeSelected string) (*http.Request, error) {
74 const APIVersion = "2016-03-01"
75 queryParameters := map[string]interface{}{
76 "api-version": APIVersion,
77 }
78 if len(string(osTypeSelected)) > 0 {
79 queryParameters["osTypeSelected"] = autorest.Encode("query", osTypeSelected)
80 }
81
82 preparer := autorest.CreatePreparer(
83 autorest.AsGet(),
84 autorest.WithBaseURL(client.BaseURI),
85 autorest.WithPath("/providers/Microsoft.Web/availableStacks"),
86 autorest.WithQueryParameters(queryParameters))
87 return preparer.Prepare((&http.Request{}).WithContext(ctx))
88 }
89
90
91
92 func (client ProviderClient) GetAvailableStacksSender(req *http.Request) (*http.Response, error) {
93 return client.Send(req, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
94 }
95
96
97
98 func (client ProviderClient) GetAvailableStacksResponder(resp *http.Response) (result ApplicationStackCollection, err error) {
99 err = autorest.Respond(
100 resp,
101 azure.WithErrorUnlessStatusCode(http.StatusOK),
102 autorest.ByUnmarshallingJSON(&result),
103 autorest.ByClosing())
104 result.Response = autorest.Response{Response: resp}
105 return
106 }
107
108
109 func (client ProviderClient) getAvailableStacksNextResults(ctx context.Context, lastResults ApplicationStackCollection) (result ApplicationStackCollection, err error) {
110 req, err := lastResults.applicationStackCollectionPreparer(ctx)
111 if err != nil {
112 return result, autorest.NewErrorWithError(err, "web.ProviderClient", "getAvailableStacksNextResults", nil, "Failure preparing next results request")
113 }
114 if req == nil {
115 return
116 }
117 resp, err := client.GetAvailableStacksSender(req)
118 if err != nil {
119 result.Response = autorest.Response{Response: resp}
120 return result, autorest.NewErrorWithError(err, "web.ProviderClient", "getAvailableStacksNextResults", resp, "Failure sending next results request")
121 }
122 result, err = client.GetAvailableStacksResponder(resp)
123 if err != nil {
124 err = autorest.NewErrorWithError(err, "web.ProviderClient", "getAvailableStacksNextResults", resp, "Failure responding to next results request")
125 }
126 return
127 }
128
129
130 func (client ProviderClient) GetAvailableStacksComplete(ctx context.Context, osTypeSelected string) (result ApplicationStackCollectionIterator, err error) {
131 if tracing.IsEnabled() {
132 ctx = tracing.StartSpan(ctx, fqdn+"/ProviderClient.GetAvailableStacks")
133 defer func() {
134 sc := -1
135 if result.Response().Response.Response != nil {
136 sc = result.page.Response().Response.Response.StatusCode
137 }
138 tracing.EndSpan(ctx, sc, err)
139 }()
140 }
141 result.page, err = client.GetAvailableStacks(ctx, osTypeSelected)
142 return
143 }
144
145
146 func (client ProviderClient) GetAvailableStacksOnPrem(ctx context.Context, osTypeSelected string) (result ApplicationStackCollectionPage, err error) {
147 if tracing.IsEnabled() {
148 ctx = tracing.StartSpan(ctx, fqdn+"/ProviderClient.GetAvailableStacksOnPrem")
149 defer func() {
150 sc := -1
151 if result.asc.Response.Response != nil {
152 sc = result.asc.Response.Response.StatusCode
153 }
154 tracing.EndSpan(ctx, sc, err)
155 }()
156 }
157 result.fn = client.getAvailableStacksOnPremNextResults
158 req, err := client.GetAvailableStacksOnPremPreparer(ctx, osTypeSelected)
159 if err != nil {
160 err = autorest.NewErrorWithError(err, "web.ProviderClient", "GetAvailableStacksOnPrem", nil, "Failure preparing request")
161 return
162 }
163
164 resp, err := client.GetAvailableStacksOnPremSender(req)
165 if err != nil {
166 result.asc.Response = autorest.Response{Response: resp}
167 err = autorest.NewErrorWithError(err, "web.ProviderClient", "GetAvailableStacksOnPrem", resp, "Failure sending request")
168 return
169 }
170
171 result.asc, err = client.GetAvailableStacksOnPremResponder(resp)
172 if err != nil {
173 err = autorest.NewErrorWithError(err, "web.ProviderClient", "GetAvailableStacksOnPrem", resp, "Failure responding to request")
174 return
175 }
176 if result.asc.hasNextLink() && result.asc.IsEmpty() {
177 err = result.NextWithContext(ctx)
178 return
179 }
180
181 return
182 }
183
184
185 func (client ProviderClient) GetAvailableStacksOnPremPreparer(ctx context.Context, osTypeSelected string) (*http.Request, error) {
186 pathParameters := map[string]interface{}{
187 "subscriptionId": autorest.Encode("path", client.SubscriptionID),
188 }
189
190 const APIVersion = "2016-03-01"
191 queryParameters := map[string]interface{}{
192 "api-version": APIVersion,
193 }
194 if len(string(osTypeSelected)) > 0 {
195 queryParameters["osTypeSelected"] = autorest.Encode("query", osTypeSelected)
196 }
197
198 preparer := autorest.CreatePreparer(
199 autorest.AsGet(),
200 autorest.WithBaseURL(client.BaseURI),
201 autorest.WithPathParameters("/subscriptions/{subscriptionId}/providers/Microsoft.Web/availableStacks", pathParameters),
202 autorest.WithQueryParameters(queryParameters))
203 return preparer.Prepare((&http.Request{}).WithContext(ctx))
204 }
205
206
207
208 func (client ProviderClient) GetAvailableStacksOnPremSender(req *http.Request) (*http.Response, error) {
209 return client.Send(req, azure.DoRetryWithRegistration(client.Client))
210 }
211
212
213
214 func (client ProviderClient) GetAvailableStacksOnPremResponder(resp *http.Response) (result ApplicationStackCollection, err error) {
215 err = autorest.Respond(
216 resp,
217 azure.WithErrorUnlessStatusCode(http.StatusOK),
218 autorest.ByUnmarshallingJSON(&result),
219 autorest.ByClosing())
220 result.Response = autorest.Response{Response: resp}
221 return
222 }
223
224
225 func (client ProviderClient) getAvailableStacksOnPremNextResults(ctx context.Context, lastResults ApplicationStackCollection) (result ApplicationStackCollection, err error) {
226 req, err := lastResults.applicationStackCollectionPreparer(ctx)
227 if err != nil {
228 return result, autorest.NewErrorWithError(err, "web.ProviderClient", "getAvailableStacksOnPremNextResults", nil, "Failure preparing next results request")
229 }
230 if req == nil {
231 return
232 }
233 resp, err := client.GetAvailableStacksOnPremSender(req)
234 if err != nil {
235 result.Response = autorest.Response{Response: resp}
236 return result, autorest.NewErrorWithError(err, "web.ProviderClient", "getAvailableStacksOnPremNextResults", resp, "Failure sending next results request")
237 }
238 result, err = client.GetAvailableStacksOnPremResponder(resp)
239 if err != nil {
240 err = autorest.NewErrorWithError(err, "web.ProviderClient", "getAvailableStacksOnPremNextResults", resp, "Failure responding to next results request")
241 }
242 return
243 }
244
245
246 func (client ProviderClient) GetAvailableStacksOnPremComplete(ctx context.Context, osTypeSelected string) (result ApplicationStackCollectionIterator, err error) {
247 if tracing.IsEnabled() {
248 ctx = tracing.StartSpan(ctx, fqdn+"/ProviderClient.GetAvailableStacksOnPrem")
249 defer func() {
250 sc := -1
251 if result.Response().Response.Response != nil {
252 sc = result.page.Response().Response.Response.StatusCode
253 }
254 tracing.EndSpan(ctx, sc, err)
255 }()
256 }
257 result.page, err = client.GetAvailableStacksOnPrem(ctx, osTypeSelected)
258 return
259 }
260
261
262
263 func (client ProviderClient) ListOperations(ctx context.Context) (result CsmOperationCollectionPage, err error) {
264 if tracing.IsEnabled() {
265 ctx = tracing.StartSpan(ctx, fqdn+"/ProviderClient.ListOperations")
266 defer func() {
267 sc := -1
268 if result.coc.Response.Response != nil {
269 sc = result.coc.Response.Response.StatusCode
270 }
271 tracing.EndSpan(ctx, sc, err)
272 }()
273 }
274 result.fn = client.listOperationsNextResults
275 req, err := client.ListOperationsPreparer(ctx)
276 if err != nil {
277 err = autorest.NewErrorWithError(err, "web.ProviderClient", "ListOperations", nil, "Failure preparing request")
278 return
279 }
280
281 resp, err := client.ListOperationsSender(req)
282 if err != nil {
283 result.coc.Response = autorest.Response{Response: resp}
284 err = autorest.NewErrorWithError(err, "web.ProviderClient", "ListOperations", resp, "Failure sending request")
285 return
286 }
287
288 result.coc, err = client.ListOperationsResponder(resp)
289 if err != nil {
290 err = autorest.NewErrorWithError(err, "web.ProviderClient", "ListOperations", resp, "Failure responding to request")
291 return
292 }
293 if result.coc.hasNextLink() && result.coc.IsEmpty() {
294 err = result.NextWithContext(ctx)
295 return
296 }
297
298 return
299 }
300
301
302 func (client ProviderClient) ListOperationsPreparer(ctx context.Context) (*http.Request, error) {
303 const APIVersion = "2016-03-01"
304 queryParameters := map[string]interface{}{
305 "api-version": APIVersion,
306 }
307
308 preparer := autorest.CreatePreparer(
309 autorest.AsGet(),
310 autorest.WithBaseURL(client.BaseURI),
311 autorest.WithPath("/providers/Microsoft.Web/operations"),
312 autorest.WithQueryParameters(queryParameters))
313 return preparer.Prepare((&http.Request{}).WithContext(ctx))
314 }
315
316
317
318 func (client ProviderClient) ListOperationsSender(req *http.Request) (*http.Response, error) {
319 return client.Send(req, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
320 }
321
322
323
324 func (client ProviderClient) ListOperationsResponder(resp *http.Response) (result CsmOperationCollection, err error) {
325 err = autorest.Respond(
326 resp,
327 azure.WithErrorUnlessStatusCode(http.StatusOK),
328 autorest.ByUnmarshallingJSON(&result),
329 autorest.ByClosing())
330 result.Response = autorest.Response{Response: resp}
331 return
332 }
333
334
335 func (client ProviderClient) listOperationsNextResults(ctx context.Context, lastResults CsmOperationCollection) (result CsmOperationCollection, err error) {
336 req, err := lastResults.csmOperationCollectionPreparer(ctx)
337 if err != nil {
338 return result, autorest.NewErrorWithError(err, "web.ProviderClient", "listOperationsNextResults", nil, "Failure preparing next results request")
339 }
340 if req == nil {
341 return
342 }
343 resp, err := client.ListOperationsSender(req)
344 if err != nil {
345 result.Response = autorest.Response{Response: resp}
346 return result, autorest.NewErrorWithError(err, "web.ProviderClient", "listOperationsNextResults", resp, "Failure sending next results request")
347 }
348 result, err = client.ListOperationsResponder(resp)
349 if err != nil {
350 err = autorest.NewErrorWithError(err, "web.ProviderClient", "listOperationsNextResults", resp, "Failure responding to next results request")
351 }
352 return
353 }
354
355
356 func (client ProviderClient) ListOperationsComplete(ctx context.Context) (result CsmOperationCollectionIterator, err error) {
357 if tracing.IsEnabled() {
358 ctx = tracing.StartSpan(ctx, fqdn+"/ProviderClient.ListOperations")
359 defer func() {
360 sc := -1
361 if result.Response().Response.Response != nil {
362 sc = result.page.Response().Response.Response.StatusCode
363 }
364 tracing.EndSpan(ctx, sc, err)
365 }()
366 }
367 result.page, err = client.ListOperations(ctx)
368 return
369 }
370
View as plain text