1 package hybriddata
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 DataServicesClient struct {
20 BaseClient
21 }
22
23
24 func NewDataServicesClient(subscriptionID string) DataServicesClient {
25 return NewDataServicesClientWithBaseURI(DefaultBaseURI, subscriptionID)
26 }
27
28
29
30 func NewDataServicesClientWithBaseURI(baseURI string, subscriptionID string) DataServicesClient {
31 return DataServicesClient{NewWithBaseURI(baseURI, subscriptionID)}
32 }
33
34
35
36
37
38
39
40 func (client DataServicesClient) Get(ctx context.Context, dataServiceName string, resourceGroupName string, dataManagerName string) (result DataService, err error) {
41 if tracing.IsEnabled() {
42 ctx = tracing.StartSpan(ctx, fqdn+"/DataServicesClient.Get")
43 defer func() {
44 sc := -1
45 if result.Response.Response != nil {
46 sc = result.Response.Response.StatusCode
47 }
48 tracing.EndSpan(ctx, sc, err)
49 }()
50 }
51 if err := validation.Validate([]validation.Validation{
52 {TargetValue: dataManagerName,
53 Constraints: []validation.Constraint{{Target: "dataManagerName", Name: validation.MaxLength, Rule: 24, Chain: nil},
54 {Target: "dataManagerName", Name: validation.MinLength, Rule: 3, Chain: nil},
55 {Target: "dataManagerName", Name: validation.Pattern, Rule: `^[-\w\.]+$`, Chain: nil}}}}); err != nil {
56 return result, validation.NewError("hybriddata.DataServicesClient", "Get", err.Error())
57 }
58
59 req, err := client.GetPreparer(ctx, dataServiceName, resourceGroupName, dataManagerName)
60 if err != nil {
61 err = autorest.NewErrorWithError(err, "hybriddata.DataServicesClient", "Get", nil, "Failure preparing request")
62 return
63 }
64
65 resp, err := client.GetSender(req)
66 if err != nil {
67 result.Response = autorest.Response{Response: resp}
68 err = autorest.NewErrorWithError(err, "hybriddata.DataServicesClient", "Get", resp, "Failure sending request")
69 return
70 }
71
72 result, err = client.GetResponder(resp)
73 if err != nil {
74 err = autorest.NewErrorWithError(err, "hybriddata.DataServicesClient", "Get", resp, "Failure responding to request")
75 return
76 }
77
78 return
79 }
80
81
82 func (client DataServicesClient) GetPreparer(ctx context.Context, dataServiceName string, resourceGroupName string, dataManagerName string) (*http.Request, error) {
83 pathParameters := map[string]interface{}{
84 "dataManagerName": autorest.Encode("path", dataManagerName),
85 "dataServiceName": autorest.Encode("path", dataServiceName),
86 "resourceGroupName": autorest.Encode("path", resourceGroupName),
87 "subscriptionId": autorest.Encode("path", client.SubscriptionID),
88 }
89
90 const APIVersion = "2016-06-01"
91 queryParameters := map[string]interface{}{
92 "api-version": APIVersion,
93 }
94
95 preparer := autorest.CreatePreparer(
96 autorest.AsGet(),
97 autorest.WithBaseURL(client.BaseURI),
98 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataServices/{dataServiceName}", pathParameters),
99 autorest.WithQueryParameters(queryParameters))
100 return preparer.Prepare((&http.Request{}).WithContext(ctx))
101 }
102
103
104
105 func (client DataServicesClient) GetSender(req *http.Request) (*http.Response, error) {
106 return client.Send(req, azure.DoRetryWithRegistration(client.Client))
107 }
108
109
110
111 func (client DataServicesClient) GetResponder(resp *http.Response) (result DataService, err error) {
112 err = autorest.Respond(
113 resp,
114 azure.WithErrorUnlessStatusCode(http.StatusOK),
115 autorest.ByUnmarshallingJSON(&result),
116 autorest.ByClosing())
117 result.Response = autorest.Response{Response: resp}
118 return
119 }
120
121
122
123
124
125
126 func (client DataServicesClient) ListByDataManager(ctx context.Context, resourceGroupName string, dataManagerName string) (result DataServiceListPage, err error) {
127 if tracing.IsEnabled() {
128 ctx = tracing.StartSpan(ctx, fqdn+"/DataServicesClient.ListByDataManager")
129 defer func() {
130 sc := -1
131 if result.dsl.Response.Response != nil {
132 sc = result.dsl.Response.Response.StatusCode
133 }
134 tracing.EndSpan(ctx, sc, err)
135 }()
136 }
137 if err := validation.Validate([]validation.Validation{
138 {TargetValue: dataManagerName,
139 Constraints: []validation.Constraint{{Target: "dataManagerName", Name: validation.MaxLength, Rule: 24, Chain: nil},
140 {Target: "dataManagerName", Name: validation.MinLength, Rule: 3, Chain: nil},
141 {Target: "dataManagerName", Name: validation.Pattern, Rule: `^[-\w\.]+$`, Chain: nil}}}}); err != nil {
142 return result, validation.NewError("hybriddata.DataServicesClient", "ListByDataManager", err.Error())
143 }
144
145 result.fn = client.listByDataManagerNextResults
146 req, err := client.ListByDataManagerPreparer(ctx, resourceGroupName, dataManagerName)
147 if err != nil {
148 err = autorest.NewErrorWithError(err, "hybriddata.DataServicesClient", "ListByDataManager", nil, "Failure preparing request")
149 return
150 }
151
152 resp, err := client.ListByDataManagerSender(req)
153 if err != nil {
154 result.dsl.Response = autorest.Response{Response: resp}
155 err = autorest.NewErrorWithError(err, "hybriddata.DataServicesClient", "ListByDataManager", resp, "Failure sending request")
156 return
157 }
158
159 result.dsl, err = client.ListByDataManagerResponder(resp)
160 if err != nil {
161 err = autorest.NewErrorWithError(err, "hybriddata.DataServicesClient", "ListByDataManager", resp, "Failure responding to request")
162 return
163 }
164 if result.dsl.hasNextLink() && result.dsl.IsEmpty() {
165 err = result.NextWithContext(ctx)
166 return
167 }
168
169 return
170 }
171
172
173 func (client DataServicesClient) ListByDataManagerPreparer(ctx context.Context, resourceGroupName string, dataManagerName string) (*http.Request, error) {
174 pathParameters := map[string]interface{}{
175 "dataManagerName": autorest.Encode("path", dataManagerName),
176 "resourceGroupName": autorest.Encode("path", resourceGroupName),
177 "subscriptionId": autorest.Encode("path", client.SubscriptionID),
178 }
179
180 const APIVersion = "2016-06-01"
181 queryParameters := map[string]interface{}{
182 "api-version": APIVersion,
183 }
184
185 preparer := autorest.CreatePreparer(
186 autorest.AsGet(),
187 autorest.WithBaseURL(client.BaseURI),
188 autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataServices", pathParameters),
189 autorest.WithQueryParameters(queryParameters))
190 return preparer.Prepare((&http.Request{}).WithContext(ctx))
191 }
192
193
194
195 func (client DataServicesClient) ListByDataManagerSender(req *http.Request) (*http.Response, error) {
196 return client.Send(req, azure.DoRetryWithRegistration(client.Client))
197 }
198
199
200
201 func (client DataServicesClient) ListByDataManagerResponder(resp *http.Response) (result DataServiceList, err error) {
202 err = autorest.Respond(
203 resp,
204 azure.WithErrorUnlessStatusCode(http.StatusOK),
205 autorest.ByUnmarshallingJSON(&result),
206 autorest.ByClosing())
207 result.Response = autorest.Response{Response: resp}
208 return
209 }
210
211
212 func (client DataServicesClient) listByDataManagerNextResults(ctx context.Context, lastResults DataServiceList) (result DataServiceList, err error) {
213 req, err := lastResults.dataServiceListPreparer(ctx)
214 if err != nil {
215 return result, autorest.NewErrorWithError(err, "hybriddata.DataServicesClient", "listByDataManagerNextResults", nil, "Failure preparing next results request")
216 }
217 if req == nil {
218 return
219 }
220 resp, err := client.ListByDataManagerSender(req)
221 if err != nil {
222 result.Response = autorest.Response{Response: resp}
223 return result, autorest.NewErrorWithError(err, "hybriddata.DataServicesClient", "listByDataManagerNextResults", resp, "Failure sending next results request")
224 }
225 result, err = client.ListByDataManagerResponder(resp)
226 if err != nil {
227 err = autorest.NewErrorWithError(err, "hybriddata.DataServicesClient", "listByDataManagerNextResults", resp, "Failure responding to next results request")
228 }
229 return
230 }
231
232
233 func (client DataServicesClient) ListByDataManagerComplete(ctx context.Context, resourceGroupName string, dataManagerName string) (result DataServiceListIterator, err error) {
234 if tracing.IsEnabled() {
235 ctx = tracing.StartSpan(ctx, fqdn+"/DataServicesClient.ListByDataManager")
236 defer func() {
237 sc := -1
238 if result.Response().Response.Response != nil {
239 sc = result.page.Response().Response.Response.StatusCode
240 }
241 tracing.EndSpan(ctx, sc, err)
242 }()
243 }
244 result.page, err = client.ListByDataManager(ctx, resourceGroupName, dataManagerName)
245 return
246 }
247
View as plain text