1 package siterecovery
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 ReplicationNetworksClient struct {
19 BaseClient
20 }
21
22
23 func NewReplicationNetworksClient(subscriptionID string, resourceGroupName string, resourceName string) ReplicationNetworksClient {
24 return NewReplicationNetworksClientWithBaseURI(DefaultBaseURI, subscriptionID, resourceGroupName, resourceName)
25 }
26
27
28
29
30 func NewReplicationNetworksClientWithBaseURI(baseURI string, subscriptionID string, resourceGroupName string, resourceName string) ReplicationNetworksClient {
31 return ReplicationNetworksClient{NewWithBaseURI(baseURI, subscriptionID, resourceGroupName, resourceName)}
32 }
33
34
35
36
37
38 func (client ReplicationNetworksClient) Get(ctx context.Context, fabricName string, networkName string) (result Network, err error) {
39 if tracing.IsEnabled() {
40 ctx = tracing.StartSpan(ctx, fqdn+"/ReplicationNetworksClient.Get")
41 defer func() {
42 sc := -1
43 if result.Response.Response != nil {
44 sc = result.Response.Response.StatusCode
45 }
46 tracing.EndSpan(ctx, sc, err)
47 }()
48 }
49 req, err := client.GetPreparer(ctx, fabricName, networkName)
50 if err != nil {
51 err = autorest.NewErrorWithError(err, "siterecovery.ReplicationNetworksClient", "Get", nil, "Failure preparing request")
52 return
53 }
54
55 resp, err := client.GetSender(req)
56 if err != nil {
57 result.Response = autorest.Response{Response: resp}
58 err = autorest.NewErrorWithError(err, "siterecovery.ReplicationNetworksClient", "Get", resp, "Failure sending request")
59 return
60 }
61
62 result, err = client.GetResponder(resp)
63 if err != nil {
64 err = autorest.NewErrorWithError(err, "siterecovery.ReplicationNetworksClient", "Get", resp, "Failure responding to request")
65 return
66 }
67
68 return
69 }
70
71
72 func (client ReplicationNetworksClient) GetPreparer(ctx context.Context, fabricName string, networkName string) (*http.Request, error) {
73 pathParameters := map[string]interface{}{
74 "fabricName": autorest.Encode("path", fabricName),
75 "networkName": autorest.Encode("path", networkName),
76 "resourceGroupName": autorest.Encode("path", client.ResourceGroupName),
77 "resourceName": autorest.Encode("path", client.ResourceName),
78 "subscriptionId": autorest.Encode("path", client.SubscriptionID),
79 }
80
81 const APIVersion = "2018-01-10"
82 queryParameters := map[string]interface{}{
83 "api-version": APIVersion,
84 }
85
86 preparer := autorest.CreatePreparer(
87 autorest.AsGet(),
88 autorest.WithBaseURL(client.BaseURI),
89 autorest.WithPathParameters("/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}", pathParameters),
90 autorest.WithQueryParameters(queryParameters))
91 return preparer.Prepare((&http.Request{}).WithContext(ctx))
92 }
93
94
95
96 func (client ReplicationNetworksClient) GetSender(req *http.Request) (*http.Response, error) {
97 return client.Send(req, azure.DoRetryWithRegistration(client.Client))
98 }
99
100
101
102 func (client ReplicationNetworksClient) GetResponder(resp *http.Response) (result Network, err error) {
103 err = autorest.Respond(
104 resp,
105 azure.WithErrorUnlessStatusCode(http.StatusOK),
106 autorest.ByUnmarshallingJSON(&result),
107 autorest.ByClosing())
108 result.Response = autorest.Response{Response: resp}
109 return
110 }
111
112
113 func (client ReplicationNetworksClient) List(ctx context.Context) (result NetworkCollectionPage, err error) {
114 if tracing.IsEnabled() {
115 ctx = tracing.StartSpan(ctx, fqdn+"/ReplicationNetworksClient.List")
116 defer func() {
117 sc := -1
118 if result.nc.Response.Response != nil {
119 sc = result.nc.Response.Response.StatusCode
120 }
121 tracing.EndSpan(ctx, sc, err)
122 }()
123 }
124 result.fn = client.listNextResults
125 req, err := client.ListPreparer(ctx)
126 if err != nil {
127 err = autorest.NewErrorWithError(err, "siterecovery.ReplicationNetworksClient", "List", nil, "Failure preparing request")
128 return
129 }
130
131 resp, err := client.ListSender(req)
132 if err != nil {
133 result.nc.Response = autorest.Response{Response: resp}
134 err = autorest.NewErrorWithError(err, "siterecovery.ReplicationNetworksClient", "List", resp, "Failure sending request")
135 return
136 }
137
138 result.nc, err = client.ListResponder(resp)
139 if err != nil {
140 err = autorest.NewErrorWithError(err, "siterecovery.ReplicationNetworksClient", "List", resp, "Failure responding to request")
141 return
142 }
143 if result.nc.hasNextLink() && result.nc.IsEmpty() {
144 err = result.NextWithContext(ctx)
145 return
146 }
147
148 return
149 }
150
151
152 func (client ReplicationNetworksClient) ListPreparer(ctx context.Context) (*http.Request, error) {
153 pathParameters := map[string]interface{}{
154 "resourceGroupName": autorest.Encode("path", client.ResourceGroupName),
155 "resourceName": autorest.Encode("path", client.ResourceName),
156 "subscriptionId": autorest.Encode("path", client.SubscriptionID),
157 }
158
159 const APIVersion = "2018-01-10"
160 queryParameters := map[string]interface{}{
161 "api-version": APIVersion,
162 }
163
164 preparer := autorest.CreatePreparer(
165 autorest.AsGet(),
166 autorest.WithBaseURL(client.BaseURI),
167 autorest.WithPathParameters("/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationNetworks", pathParameters),
168 autorest.WithQueryParameters(queryParameters))
169 return preparer.Prepare((&http.Request{}).WithContext(ctx))
170 }
171
172
173
174 func (client ReplicationNetworksClient) ListSender(req *http.Request) (*http.Response, error) {
175 return client.Send(req, azure.DoRetryWithRegistration(client.Client))
176 }
177
178
179
180 func (client ReplicationNetworksClient) ListResponder(resp *http.Response) (result NetworkCollection, err error) {
181 err = autorest.Respond(
182 resp,
183 azure.WithErrorUnlessStatusCode(http.StatusOK),
184 autorest.ByUnmarshallingJSON(&result),
185 autorest.ByClosing())
186 result.Response = autorest.Response{Response: resp}
187 return
188 }
189
190
191 func (client ReplicationNetworksClient) listNextResults(ctx context.Context, lastResults NetworkCollection) (result NetworkCollection, err error) {
192 req, err := lastResults.networkCollectionPreparer(ctx)
193 if err != nil {
194 return result, autorest.NewErrorWithError(err, "siterecovery.ReplicationNetworksClient", "listNextResults", nil, "Failure preparing next results request")
195 }
196 if req == nil {
197 return
198 }
199 resp, err := client.ListSender(req)
200 if err != nil {
201 result.Response = autorest.Response{Response: resp}
202 return result, autorest.NewErrorWithError(err, "siterecovery.ReplicationNetworksClient", "listNextResults", resp, "Failure sending next results request")
203 }
204 result, err = client.ListResponder(resp)
205 if err != nil {
206 err = autorest.NewErrorWithError(err, "siterecovery.ReplicationNetworksClient", "listNextResults", resp, "Failure responding to next results request")
207 }
208 return
209 }
210
211
212 func (client ReplicationNetworksClient) ListComplete(ctx context.Context) (result NetworkCollectionIterator, err error) {
213 if tracing.IsEnabled() {
214 ctx = tracing.StartSpan(ctx, fqdn+"/ReplicationNetworksClient.List")
215 defer func() {
216 sc := -1
217 if result.Response().Response.Response != nil {
218 sc = result.page.Response().Response.Response.StatusCode
219 }
220 tracing.EndSpan(ctx, sc, err)
221 }()
222 }
223 result.page, err = client.List(ctx)
224 return
225 }
226
227
228
229
230 func (client ReplicationNetworksClient) ListByReplicationFabrics(ctx context.Context, fabricName string) (result NetworkCollectionPage, err error) {
231 if tracing.IsEnabled() {
232 ctx = tracing.StartSpan(ctx, fqdn+"/ReplicationNetworksClient.ListByReplicationFabrics")
233 defer func() {
234 sc := -1
235 if result.nc.Response.Response != nil {
236 sc = result.nc.Response.Response.StatusCode
237 }
238 tracing.EndSpan(ctx, sc, err)
239 }()
240 }
241 result.fn = client.listByReplicationFabricsNextResults
242 req, err := client.ListByReplicationFabricsPreparer(ctx, fabricName)
243 if err != nil {
244 err = autorest.NewErrorWithError(err, "siterecovery.ReplicationNetworksClient", "ListByReplicationFabrics", nil, "Failure preparing request")
245 return
246 }
247
248 resp, err := client.ListByReplicationFabricsSender(req)
249 if err != nil {
250 result.nc.Response = autorest.Response{Response: resp}
251 err = autorest.NewErrorWithError(err, "siterecovery.ReplicationNetworksClient", "ListByReplicationFabrics", resp, "Failure sending request")
252 return
253 }
254
255 result.nc, err = client.ListByReplicationFabricsResponder(resp)
256 if err != nil {
257 err = autorest.NewErrorWithError(err, "siterecovery.ReplicationNetworksClient", "ListByReplicationFabrics", resp, "Failure responding to request")
258 return
259 }
260 if result.nc.hasNextLink() && result.nc.IsEmpty() {
261 err = result.NextWithContext(ctx)
262 return
263 }
264
265 return
266 }
267
268
269 func (client ReplicationNetworksClient) ListByReplicationFabricsPreparer(ctx context.Context, fabricName string) (*http.Request, error) {
270 pathParameters := map[string]interface{}{
271 "fabricName": autorest.Encode("path", fabricName),
272 "resourceGroupName": autorest.Encode("path", client.ResourceGroupName),
273 "resourceName": autorest.Encode("path", client.ResourceName),
274 "subscriptionId": autorest.Encode("path", client.SubscriptionID),
275 }
276
277 const APIVersion = "2018-01-10"
278 queryParameters := map[string]interface{}{
279 "api-version": APIVersion,
280 }
281
282 preparer := autorest.CreatePreparer(
283 autorest.AsGet(),
284 autorest.WithBaseURL(client.BaseURI),
285 autorest.WithPathParameters("/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks", pathParameters),
286 autorest.WithQueryParameters(queryParameters))
287 return preparer.Prepare((&http.Request{}).WithContext(ctx))
288 }
289
290
291
292 func (client ReplicationNetworksClient) ListByReplicationFabricsSender(req *http.Request) (*http.Response, error) {
293 return client.Send(req, azure.DoRetryWithRegistration(client.Client))
294 }
295
296
297
298 func (client ReplicationNetworksClient) ListByReplicationFabricsResponder(resp *http.Response) (result NetworkCollection, err error) {
299 err = autorest.Respond(
300 resp,
301 azure.WithErrorUnlessStatusCode(http.StatusOK),
302 autorest.ByUnmarshallingJSON(&result),
303 autorest.ByClosing())
304 result.Response = autorest.Response{Response: resp}
305 return
306 }
307
308
309 func (client ReplicationNetworksClient) listByReplicationFabricsNextResults(ctx context.Context, lastResults NetworkCollection) (result NetworkCollection, err error) {
310 req, err := lastResults.networkCollectionPreparer(ctx)
311 if err != nil {
312 return result, autorest.NewErrorWithError(err, "siterecovery.ReplicationNetworksClient", "listByReplicationFabricsNextResults", nil, "Failure preparing next results request")
313 }
314 if req == nil {
315 return
316 }
317 resp, err := client.ListByReplicationFabricsSender(req)
318 if err != nil {
319 result.Response = autorest.Response{Response: resp}
320 return result, autorest.NewErrorWithError(err, "siterecovery.ReplicationNetworksClient", "listByReplicationFabricsNextResults", resp, "Failure sending next results request")
321 }
322 result, err = client.ListByReplicationFabricsResponder(resp)
323 if err != nil {
324 err = autorest.NewErrorWithError(err, "siterecovery.ReplicationNetworksClient", "listByReplicationFabricsNextResults", resp, "Failure responding to next results request")
325 }
326 return
327 }
328
329
330 func (client ReplicationNetworksClient) ListByReplicationFabricsComplete(ctx context.Context, fabricName string) (result NetworkCollectionIterator, err error) {
331 if tracing.IsEnabled() {
332 ctx = tracing.StartSpan(ctx, fqdn+"/ReplicationNetworksClient.ListByReplicationFabrics")
333 defer func() {
334 sc := -1
335 if result.Response().Response.Response != nil {
336 sc = result.page.Response().Response.Response.StatusCode
337 }
338 tracing.EndSpan(ctx, sc, err)
339 }()
340 }
341 result.page, err = client.ListByReplicationFabrics(ctx, fabricName)
342 return
343 }
344
View as plain text