1 package appplatform
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/autorest/validation"
14 "github.com/Azure/go-autorest/tracing"
15 "net/http"
16 )
17
18
19 type CertificatesClient struct {
20 BaseClient
21 }
22
23
24 func NewCertificatesClient(subscriptionID string) CertificatesClient {
25 return NewCertificatesClientWithBaseURI(DefaultBaseURI, subscriptionID)
26 }
27
28
29
30 func NewCertificatesClientWithBaseURI(baseURI string, subscriptionID string) CertificatesClient {
31 return CertificatesClient{NewWithBaseURI(baseURI, subscriptionID)}
32 }
33
34
35
36
37
38
39
40
41 func (client CertificatesClient) CreateOrUpdate(ctx context.Context, resourceGroupName string, serviceName string, certificateName string, certificateResource CertificateResource) (result CertificatesCreateOrUpdateFuture, err error) {
42 if tracing.IsEnabled() {
43 ctx = tracing.StartSpan(ctx, fqdn+"/CertificatesClient.CreateOrUpdate")
44 defer func() {
45 sc := -1
46 if result.FutureAPI != nil && result.FutureAPI.Response() != nil {
47 sc = result.FutureAPI.Response().StatusCode
48 }
49 tracing.EndSpan(ctx, sc, err)
50 }()
51 }
52 if err := validation.Validate([]validation.Validation{
53 {TargetValue: certificateResource,
54 Constraints: []validation.Constraint{{Target: "certificateResource.Properties", Name: validation.Null, Rule: false,
55 Chain: []validation.Constraint{{Target: "certificateResource.Properties.VaultURI", Name: validation.Null, Rule: true, Chain: nil},
56 {Target: "certificateResource.Properties.KeyVaultCertName", Name: validation.Null, Rule: true, Chain: nil},
57 }}}}}); err != nil {
58 return result, validation.NewError("appplatform.CertificatesClient", "CreateOrUpdate", err.Error())
59 }
60
61 req, err := client.CreateOrUpdatePreparer(ctx, resourceGroupName, serviceName, certificateName, certificateResource)
62 if err != nil {
63 err = autorest.NewErrorWithError(err, "appplatform.CertificatesClient", "CreateOrUpdate", nil, "Failure preparing request")
64 return
65 }
66
67 result, err = client.CreateOrUpdateSender(req)
68 if err != nil {
69 err = autorest.NewErrorWithError(err, "appplatform.CertificatesClient", "CreateOrUpdate", result.Response(), "Failure sending request")
70 return
71 }
72
73 return
74 }
75
76
77 func (client CertificatesClient) CreateOrUpdatePreparer(ctx context.Context, resourceGroupName string, serviceName string, certificateName string, certificateResource CertificateResource) (*http.Request, error) {
78 pathParameters := map[string]interface{}{
79 "certificateName": autorest.Encode("path", certificateName),
80 "resourceGroupName": autorest.Encode("path", resourceGroupName),
81 "serviceName": autorest.Encode("path", serviceName),
82 "subscriptionId": autorest.Encode("path", client.SubscriptionID),
83 }
84
85 const APIVersion = "2021-06-01-preview"
86 queryParameters := map[string]interface{}{
87 "api-version": APIVersion,
88 }
89
90 preparer := autorest.CreatePreparer(
91 autorest.AsContentType("application/json; charset=utf-8"),
92 autorest.AsPut(),
93 autorest.WithBaseURL(client.BaseURI),
94 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/certificates/{certificateName}", pathParameters),
95 autorest.WithJSON(certificateResource),
96 autorest.WithQueryParameters(queryParameters))
97 return preparer.Prepare((&http.Request{}).WithContext(ctx))
98 }
99
100
101
102 func (client CertificatesClient) CreateOrUpdateSender(req *http.Request) (future CertificatesCreateOrUpdateFuture, err error) {
103 var resp *http.Response
104 future.FutureAPI = &azure.Future{}
105 resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client))
106 if err != nil {
107 return
108 }
109 var azf azure.Future
110 azf, err = azure.NewFutureFromResponse(resp)
111 future.FutureAPI = &azf
112 future.Result = future.result
113 return
114 }
115
116
117
118 func (client CertificatesClient) CreateOrUpdateResponder(resp *http.Response) (result CertificateResource, err error) {
119 err = autorest.Respond(
120 resp,
121 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusCreated, http.StatusAccepted),
122 autorest.ByUnmarshallingJSON(&result),
123 autorest.ByClosing())
124 result.Response = autorest.Response{Response: resp}
125 return
126 }
127
128
129
130
131
132
133
134 func (client CertificatesClient) Delete(ctx context.Context, resourceGroupName string, serviceName string, certificateName string) (result CertificatesDeleteFuture, err error) {
135 if tracing.IsEnabled() {
136 ctx = tracing.StartSpan(ctx, fqdn+"/CertificatesClient.Delete")
137 defer func() {
138 sc := -1
139 if result.FutureAPI != nil && result.FutureAPI.Response() != nil {
140 sc = result.FutureAPI.Response().StatusCode
141 }
142 tracing.EndSpan(ctx, sc, err)
143 }()
144 }
145 req, err := client.DeletePreparer(ctx, resourceGroupName, serviceName, certificateName)
146 if err != nil {
147 err = autorest.NewErrorWithError(err, "appplatform.CertificatesClient", "Delete", nil, "Failure preparing request")
148 return
149 }
150
151 result, err = client.DeleteSender(req)
152 if err != nil {
153 err = autorest.NewErrorWithError(err, "appplatform.CertificatesClient", "Delete", result.Response(), "Failure sending request")
154 return
155 }
156
157 return
158 }
159
160
161 func (client CertificatesClient) DeletePreparer(ctx context.Context, resourceGroupName string, serviceName string, certificateName string) (*http.Request, error) {
162 pathParameters := map[string]interface{}{
163 "certificateName": autorest.Encode("path", certificateName),
164 "resourceGroupName": autorest.Encode("path", resourceGroupName),
165 "serviceName": autorest.Encode("path", serviceName),
166 "subscriptionId": autorest.Encode("path", client.SubscriptionID),
167 }
168
169 const APIVersion = "2021-06-01-preview"
170 queryParameters := map[string]interface{}{
171 "api-version": APIVersion,
172 }
173
174 preparer := autorest.CreatePreparer(
175 autorest.AsDelete(),
176 autorest.WithBaseURL(client.BaseURI),
177 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/certificates/{certificateName}", pathParameters),
178 autorest.WithQueryParameters(queryParameters))
179 return preparer.Prepare((&http.Request{}).WithContext(ctx))
180 }
181
182
183
184 func (client CertificatesClient) DeleteSender(req *http.Request) (future CertificatesDeleteFuture, err error) {
185 var resp *http.Response
186 future.FutureAPI = &azure.Future{}
187 resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client))
188 if err != nil {
189 return
190 }
191 var azf azure.Future
192 azf, err = azure.NewFutureFromResponse(resp)
193 future.FutureAPI = &azf
194 future.Result = future.result
195 return
196 }
197
198
199
200 func (client CertificatesClient) DeleteResponder(resp *http.Response) (result autorest.Response, err error) {
201 err = autorest.Respond(
202 resp,
203 azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted, http.StatusNoContent),
204 autorest.ByClosing())
205 result.Response = resp
206 return
207 }
208
209
210
211
212
213
214
215 func (client CertificatesClient) Get(ctx context.Context, resourceGroupName string, serviceName string, certificateName string) (result CertificateResource, err error) {
216 if tracing.IsEnabled() {
217 ctx = tracing.StartSpan(ctx, fqdn+"/CertificatesClient.Get")
218 defer func() {
219 sc := -1
220 if result.Response.Response != nil {
221 sc = result.Response.Response.StatusCode
222 }
223 tracing.EndSpan(ctx, sc, err)
224 }()
225 }
226 req, err := client.GetPreparer(ctx, resourceGroupName, serviceName, certificateName)
227 if err != nil {
228 err = autorest.NewErrorWithError(err, "appplatform.CertificatesClient", "Get", nil, "Failure preparing request")
229 return
230 }
231
232 resp, err := client.GetSender(req)
233 if err != nil {
234 result.Response = autorest.Response{Response: resp}
235 err = autorest.NewErrorWithError(err, "appplatform.CertificatesClient", "Get", resp, "Failure sending request")
236 return
237 }
238
239 result, err = client.GetResponder(resp)
240 if err != nil {
241 err = autorest.NewErrorWithError(err, "appplatform.CertificatesClient", "Get", resp, "Failure responding to request")
242 return
243 }
244
245 return
246 }
247
248
249 func (client CertificatesClient) GetPreparer(ctx context.Context, resourceGroupName string, serviceName string, certificateName string) (*http.Request, error) {
250 pathParameters := map[string]interface{}{
251 "certificateName": autorest.Encode("path", certificateName),
252 "resourceGroupName": autorest.Encode("path", resourceGroupName),
253 "serviceName": autorest.Encode("path", serviceName),
254 "subscriptionId": autorest.Encode("path", client.SubscriptionID),
255 }
256
257 const APIVersion = "2021-06-01-preview"
258 queryParameters := map[string]interface{}{
259 "api-version": APIVersion,
260 }
261
262 preparer := autorest.CreatePreparer(
263 autorest.AsGet(),
264 autorest.WithBaseURL(client.BaseURI),
265 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/certificates/{certificateName}", pathParameters),
266 autorest.WithQueryParameters(queryParameters))
267 return preparer.Prepare((&http.Request{}).WithContext(ctx))
268 }
269
270
271
272 func (client CertificatesClient) GetSender(req *http.Request) (*http.Response, error) {
273 return client.Send(req, azure.DoRetryWithRegistration(client.Client))
274 }
275
276
277
278 func (client CertificatesClient) GetResponder(resp *http.Response) (result CertificateResource, err error) {
279 err = autorest.Respond(
280 resp,
281 azure.WithErrorUnlessStatusCode(http.StatusOK),
282 autorest.ByUnmarshallingJSON(&result),
283 autorest.ByClosing())
284 result.Response = autorest.Response{Response: resp}
285 return
286 }
287
288
289
290
291
292
293 func (client CertificatesClient) List(ctx context.Context, resourceGroupName string, serviceName string) (result CertificateResourceCollectionPage, err error) {
294 if tracing.IsEnabled() {
295 ctx = tracing.StartSpan(ctx, fqdn+"/CertificatesClient.List")
296 defer func() {
297 sc := -1
298 if result.crc.Response.Response != nil {
299 sc = result.crc.Response.Response.StatusCode
300 }
301 tracing.EndSpan(ctx, sc, err)
302 }()
303 }
304 result.fn = client.listNextResults
305 req, err := client.ListPreparer(ctx, resourceGroupName, serviceName)
306 if err != nil {
307 err = autorest.NewErrorWithError(err, "appplatform.CertificatesClient", "List", nil, "Failure preparing request")
308 return
309 }
310
311 resp, err := client.ListSender(req)
312 if err != nil {
313 result.crc.Response = autorest.Response{Response: resp}
314 err = autorest.NewErrorWithError(err, "appplatform.CertificatesClient", "List", resp, "Failure sending request")
315 return
316 }
317
318 result.crc, err = client.ListResponder(resp)
319 if err != nil {
320 err = autorest.NewErrorWithError(err, "appplatform.CertificatesClient", "List", resp, "Failure responding to request")
321 return
322 }
323 if result.crc.hasNextLink() && result.crc.IsEmpty() {
324 err = result.NextWithContext(ctx)
325 return
326 }
327
328 return
329 }
330
331
332 func (client CertificatesClient) ListPreparer(ctx context.Context, resourceGroupName string, serviceName string) (*http.Request, error) {
333 pathParameters := map[string]interface{}{
334 "resourceGroupName": autorest.Encode("path", resourceGroupName),
335 "serviceName": autorest.Encode("path", serviceName),
336 "subscriptionId": autorest.Encode("path", client.SubscriptionID),
337 }
338
339 const APIVersion = "2021-06-01-preview"
340 queryParameters := map[string]interface{}{
341 "api-version": APIVersion,
342 }
343
344 preparer := autorest.CreatePreparer(
345 autorest.AsGet(),
346 autorest.WithBaseURL(client.BaseURI),
347 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/certificates", pathParameters),
348 autorest.WithQueryParameters(queryParameters))
349 return preparer.Prepare((&http.Request{}).WithContext(ctx))
350 }
351
352
353
354 func (client CertificatesClient) ListSender(req *http.Request) (*http.Response, error) {
355 return client.Send(req, azure.DoRetryWithRegistration(client.Client))
356 }
357
358
359
360 func (client CertificatesClient) ListResponder(resp *http.Response) (result CertificateResourceCollection, err error) {
361 err = autorest.Respond(
362 resp,
363 azure.WithErrorUnlessStatusCode(http.StatusOK),
364 autorest.ByUnmarshallingJSON(&result),
365 autorest.ByClosing())
366 result.Response = autorest.Response{Response: resp}
367 return
368 }
369
370
371 func (client CertificatesClient) listNextResults(ctx context.Context, lastResults CertificateResourceCollection) (result CertificateResourceCollection, err error) {
372 req, err := lastResults.certificateResourceCollectionPreparer(ctx)
373 if err != nil {
374 return result, autorest.NewErrorWithError(err, "appplatform.CertificatesClient", "listNextResults", nil, "Failure preparing next results request")
375 }
376 if req == nil {
377 return
378 }
379 resp, err := client.ListSender(req)
380 if err != nil {
381 result.Response = autorest.Response{Response: resp}
382 return result, autorest.NewErrorWithError(err, "appplatform.CertificatesClient", "listNextResults", resp, "Failure sending next results request")
383 }
384 result, err = client.ListResponder(resp)
385 if err != nil {
386 err = autorest.NewErrorWithError(err, "appplatform.CertificatesClient", "listNextResults", resp, "Failure responding to next results request")
387 }
388 return
389 }
390
391
392 func (client CertificatesClient) ListComplete(ctx context.Context, resourceGroupName string, serviceName string) (result CertificateResourceCollectionIterator, err error) {
393 if tracing.IsEnabled() {
394 ctx = tracing.StartSpan(ctx, fqdn+"/CertificatesClient.List")
395 defer func() {
396 sc := -1
397 if result.Response().Response.Response != nil {
398 sc = result.page.Response().Response.Response.StatusCode
399 }
400 tracing.EndSpan(ctx, sc, err)
401 }()
402 }
403 result.page, err = client.List(ctx, resourceGroupName, serviceName)
404 return
405 }
406
View as plain text