Skip to content

Commit e538e62

Browse files
author
SDKAuto
committed
CodeGen from PR 32338 in Azure/azure-rest-api-specs
Merge 8aed2cca78618f296a396bfffdb21a725fb5b822 into 58ca4b7617b8fd22b19381d90adbf9115c0573bd
1 parent 8bef03b commit e538e62

File tree

92 files changed

+13841
-215
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

92 files changed

+13841
-215
lines changed

sdk/appconfiguration/azure-data-appconfiguration/CHANGELOG.md

Lines changed: 198 additions & 5 deletions
Large diffs are not rendered by default.

sdk/appconfiguration/azure-data-appconfiguration/src/main/java/com/azure/data/appconfiguration/AzureAppConfigurationAsyncClient.java

Lines changed: 2530 additions & 0 deletions
Large diffs are not rendered by default.

sdk/appconfiguration/azure-data-appconfiguration/src/main/java/com/azure/data/appconfiguration/AzureAppConfigurationClient.java

Lines changed: 2382 additions & 0 deletions
Large diffs are not rendered by default.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,356 @@
1+
// Copyright (c) Microsoft Corporation. All rights reserved.
2+
// Licensed under the MIT License.
3+
// Code generated by Microsoft (R) TypeSpec Code Generator.
4+
5+
package com.azure.data.appconfiguration;
6+
7+
import com.azure.core.annotation.Generated;
8+
import com.azure.core.annotation.ServiceClientBuilder;
9+
import com.azure.core.client.traits.ConfigurationTrait;
10+
import com.azure.core.client.traits.EndpointTrait;
11+
import com.azure.core.client.traits.HttpTrait;
12+
import com.azure.core.client.traits.KeyCredentialTrait;
13+
import com.azure.core.client.traits.TokenCredentialTrait;
14+
import com.azure.core.credential.KeyCredential;
15+
import com.azure.core.credential.TokenCredential;
16+
import com.azure.core.http.HttpClient;
17+
import com.azure.core.http.HttpHeaders;
18+
import com.azure.core.http.HttpPipeline;
19+
import com.azure.core.http.HttpPipelineBuilder;
20+
import com.azure.core.http.HttpPipelinePosition;
21+
import com.azure.core.http.policy.AddDatePolicy;
22+
import com.azure.core.http.policy.AddHeadersFromContextPolicy;
23+
import com.azure.core.http.policy.AddHeadersPolicy;
24+
import com.azure.core.http.policy.BearerTokenAuthenticationPolicy;
25+
import com.azure.core.http.policy.HttpLogOptions;
26+
import com.azure.core.http.policy.HttpLoggingPolicy;
27+
import com.azure.core.http.policy.HttpPipelinePolicy;
28+
import com.azure.core.http.policy.HttpPolicyProviders;
29+
import com.azure.core.http.policy.KeyCredentialPolicy;
30+
import com.azure.core.http.policy.RequestIdPolicy;
31+
import com.azure.core.http.policy.RetryOptions;
32+
import com.azure.core.http.policy.RetryPolicy;
33+
import com.azure.core.http.policy.UserAgentPolicy;
34+
import com.azure.core.util.ClientOptions;
35+
import com.azure.core.util.Configuration;
36+
import com.azure.core.util.CoreUtils;
37+
import com.azure.core.util.builder.ClientBuilderUtil;
38+
import com.azure.core.util.logging.ClientLogger;
39+
import com.azure.core.util.serializer.JacksonAdapter;
40+
import com.azure.data.appconfiguration.implementation.AzureAppConfigurationClientImpl;
41+
import java.util.ArrayList;
42+
import java.util.List;
43+
import java.util.Map;
44+
import java.util.Objects;
45+
46+
/**
47+
* A builder for creating a new instance of the AzureAppConfigurationClient type.
48+
*/
49+
@ServiceClientBuilder(serviceClients = { AzureAppConfigurationClient.class, AzureAppConfigurationAsyncClient.class })
50+
public final class AzureAppConfigurationClientBuilder implements HttpTrait<AzureAppConfigurationClientBuilder>,
51+
ConfigurationTrait<AzureAppConfigurationClientBuilder>, TokenCredentialTrait<AzureAppConfigurationClientBuilder>,
52+
KeyCredentialTrait<AzureAppConfigurationClientBuilder>, EndpointTrait<AzureAppConfigurationClientBuilder> {
53+
@Generated
54+
private static final String SDK_NAME = "name";
55+
56+
@Generated
57+
private static final String SDK_VERSION = "version";
58+
59+
@Generated
60+
private static final String[] DEFAULT_SCOPES = new String[] { "https://azconfig.io/.default" };
61+
62+
@Generated
63+
private static final Map<String, String> PROPERTIES
64+
= CoreUtils.getProperties("azure-data-appconfiguration.properties");
65+
66+
@Generated
67+
private final List<HttpPipelinePolicy> pipelinePolicies;
68+
69+
/**
70+
* Create an instance of the AzureAppConfigurationClientBuilder.
71+
*/
72+
@Generated
73+
public AzureAppConfigurationClientBuilder() {
74+
this.pipelinePolicies = new ArrayList<>();
75+
}
76+
77+
/*
78+
* The HTTP pipeline to send requests through.
79+
*/
80+
@Generated
81+
private HttpPipeline pipeline;
82+
83+
/**
84+
* {@inheritDoc}.
85+
*/
86+
@Generated
87+
@Override
88+
public AzureAppConfigurationClientBuilder pipeline(HttpPipeline pipeline) {
89+
if (this.pipeline != null && pipeline == null) {
90+
LOGGER.atInfo().log("HttpPipeline is being set to 'null' when it was previously configured.");
91+
}
92+
this.pipeline = pipeline;
93+
return this;
94+
}
95+
96+
/*
97+
* The HTTP client used to send the request.
98+
*/
99+
@Generated
100+
private HttpClient httpClient;
101+
102+
/**
103+
* {@inheritDoc}.
104+
*/
105+
@Generated
106+
@Override
107+
public AzureAppConfigurationClientBuilder httpClient(HttpClient httpClient) {
108+
this.httpClient = httpClient;
109+
return this;
110+
}
111+
112+
/*
113+
* The logging configuration for HTTP requests and responses.
114+
*/
115+
@Generated
116+
private HttpLogOptions httpLogOptions;
117+
118+
/**
119+
* {@inheritDoc}.
120+
*/
121+
@Generated
122+
@Override
123+
public AzureAppConfigurationClientBuilder httpLogOptions(HttpLogOptions httpLogOptions) {
124+
this.httpLogOptions = httpLogOptions;
125+
return this;
126+
}
127+
128+
/*
129+
* The client options such as application ID and custom headers to set on a request.
130+
*/
131+
@Generated
132+
private ClientOptions clientOptions;
133+
134+
/**
135+
* {@inheritDoc}.
136+
*/
137+
@Generated
138+
@Override
139+
public AzureAppConfigurationClientBuilder clientOptions(ClientOptions clientOptions) {
140+
this.clientOptions = clientOptions;
141+
return this;
142+
}
143+
144+
/*
145+
* The retry options to configure retry policy for failed requests.
146+
*/
147+
@Generated
148+
private RetryOptions retryOptions;
149+
150+
/**
151+
* {@inheritDoc}.
152+
*/
153+
@Generated
154+
@Override
155+
public AzureAppConfigurationClientBuilder retryOptions(RetryOptions retryOptions) {
156+
this.retryOptions = retryOptions;
157+
return this;
158+
}
159+
160+
/**
161+
* {@inheritDoc}.
162+
*/
163+
@Generated
164+
@Override
165+
public AzureAppConfigurationClientBuilder addPolicy(HttpPipelinePolicy customPolicy) {
166+
Objects.requireNonNull(customPolicy, "'customPolicy' cannot be null.");
167+
pipelinePolicies.add(customPolicy);
168+
return this;
169+
}
170+
171+
/*
172+
* The configuration store that is used during construction of the service client.
173+
*/
174+
@Generated
175+
private Configuration configuration;
176+
177+
/**
178+
* {@inheritDoc}.
179+
*/
180+
@Generated
181+
@Override
182+
public AzureAppConfigurationClientBuilder configuration(Configuration configuration) {
183+
this.configuration = configuration;
184+
return this;
185+
}
186+
187+
/*
188+
* The TokenCredential used for authentication.
189+
*/
190+
@Generated
191+
private TokenCredential tokenCredential;
192+
193+
/**
194+
* {@inheritDoc}.
195+
*/
196+
@Generated
197+
@Override
198+
public AzureAppConfigurationClientBuilder credential(TokenCredential tokenCredential) {
199+
this.tokenCredential = tokenCredential;
200+
return this;
201+
}
202+
203+
/*
204+
* The KeyCredential used for authentication.
205+
*/
206+
@Generated
207+
private KeyCredential keyCredential;
208+
209+
/**
210+
* {@inheritDoc}.
211+
*/
212+
@Generated
213+
@Override
214+
public AzureAppConfigurationClientBuilder credential(KeyCredential keyCredential) {
215+
this.keyCredential = keyCredential;
216+
return this;
217+
}
218+
219+
/*
220+
* The service endpoint
221+
*/
222+
@Generated
223+
private String endpoint;
224+
225+
/**
226+
* {@inheritDoc}.
227+
*/
228+
@Generated
229+
@Override
230+
public AzureAppConfigurationClientBuilder endpoint(String endpoint) {
231+
this.endpoint = endpoint;
232+
return this;
233+
}
234+
235+
/*
236+
* Service version
237+
*/
238+
@Generated
239+
private AzureAppConfigurationServiceVersion serviceVersion;
240+
241+
/**
242+
* Sets Service version.
243+
*
244+
* @param serviceVersion the serviceVersion value.
245+
* @return the AzureAppConfigurationClientBuilder.
246+
*/
247+
@Generated
248+
public AzureAppConfigurationClientBuilder serviceVersion(AzureAppConfigurationServiceVersion serviceVersion) {
249+
this.serviceVersion = serviceVersion;
250+
return this;
251+
}
252+
253+
/*
254+
* The retry policy that will attempt to retry failed requests, if applicable.
255+
*/
256+
@Generated
257+
private RetryPolicy retryPolicy;
258+
259+
/**
260+
* Sets The retry policy that will attempt to retry failed requests, if applicable.
261+
*
262+
* @param retryPolicy the retryPolicy value.
263+
* @return the AzureAppConfigurationClientBuilder.
264+
*/
265+
@Generated
266+
public AzureAppConfigurationClientBuilder retryPolicy(RetryPolicy retryPolicy) {
267+
this.retryPolicy = retryPolicy;
268+
return this;
269+
}
270+
271+
/**
272+
* Builds an instance of AzureAppConfigurationClientImpl with the provided parameters.
273+
*
274+
* @return an instance of AzureAppConfigurationClientImpl.
275+
*/
276+
@Generated
277+
private AzureAppConfigurationClientImpl buildInnerClient() {
278+
this.validateClient();
279+
HttpPipeline localPipeline = (pipeline != null) ? pipeline : createHttpPipeline();
280+
AzureAppConfigurationServiceVersion localServiceVersion
281+
= (serviceVersion != null) ? serviceVersion : AzureAppConfigurationServiceVersion.getLatest();
282+
AzureAppConfigurationClientImpl client = new AzureAppConfigurationClientImpl(localPipeline,
283+
JacksonAdapter.createDefaultSerializerAdapter(), this.endpoint, localServiceVersion);
284+
return client;
285+
}
286+
287+
@Generated
288+
private void validateClient() {
289+
// This method is invoked from 'buildInnerClient'/'buildClient' method.
290+
// Developer can customize this method, to validate that the necessary conditions are met for the new client.
291+
Objects.requireNonNull(endpoint, "'endpoint' cannot be null.");
292+
}
293+
294+
@Generated
295+
private HttpPipeline createHttpPipeline() {
296+
Configuration buildConfiguration
297+
= (configuration == null) ? Configuration.getGlobalConfiguration() : configuration;
298+
HttpLogOptions localHttpLogOptions = this.httpLogOptions == null ? new HttpLogOptions() : this.httpLogOptions;
299+
ClientOptions localClientOptions = this.clientOptions == null ? new ClientOptions() : this.clientOptions;
300+
List<HttpPipelinePolicy> policies = new ArrayList<>();
301+
String clientName = PROPERTIES.getOrDefault(SDK_NAME, "UnknownName");
302+
String clientVersion = PROPERTIES.getOrDefault(SDK_VERSION, "UnknownVersion");
303+
String applicationId = CoreUtils.getApplicationId(localClientOptions, localHttpLogOptions);
304+
policies.add(new UserAgentPolicy(applicationId, clientName, clientVersion, buildConfiguration));
305+
policies.add(new RequestIdPolicy());
306+
policies.add(new AddHeadersFromContextPolicy());
307+
HttpHeaders headers = CoreUtils.createHttpHeadersFromClientOptions(localClientOptions);
308+
if (headers != null) {
309+
policies.add(new AddHeadersPolicy(headers));
310+
}
311+
this.pipelinePolicies.stream()
312+
.filter(p -> p.getPipelinePosition() == HttpPipelinePosition.PER_CALL)
313+
.forEach(p -> policies.add(p));
314+
HttpPolicyProviders.addBeforeRetryPolicies(policies);
315+
policies.add(ClientBuilderUtil.validateAndGetRetryPolicy(retryPolicy, retryOptions, new RetryPolicy()));
316+
policies.add(new AddDatePolicy());
317+
if (keyCredential != null) {
318+
policies.add(new KeyCredentialPolicy("Connection String", keyCredential));
319+
}
320+
if (tokenCredential != null) {
321+
policies.add(new BearerTokenAuthenticationPolicy(tokenCredential, DEFAULT_SCOPES));
322+
}
323+
this.pipelinePolicies.stream()
324+
.filter(p -> p.getPipelinePosition() == HttpPipelinePosition.PER_RETRY)
325+
.forEach(p -> policies.add(p));
326+
HttpPolicyProviders.addAfterRetryPolicies(policies);
327+
policies.add(new HttpLoggingPolicy(localHttpLogOptions));
328+
HttpPipeline httpPipeline = new HttpPipelineBuilder().policies(policies.toArray(new HttpPipelinePolicy[0]))
329+
.httpClient(httpClient)
330+
.clientOptions(localClientOptions)
331+
.build();
332+
return httpPipeline;
333+
}
334+
335+
/**
336+
* Builds an instance of AzureAppConfigurationAsyncClient class.
337+
*
338+
* @return an instance of AzureAppConfigurationAsyncClient.
339+
*/
340+
@Generated
341+
public AzureAppConfigurationAsyncClient buildAsyncClient() {
342+
return new AzureAppConfigurationAsyncClient(buildInnerClient());
343+
}
344+
345+
/**
346+
* Builds an instance of AzureAppConfigurationClient class.
347+
*
348+
* @return an instance of AzureAppConfigurationClient.
349+
*/
350+
@Generated
351+
public AzureAppConfigurationClient buildClient() {
352+
return new AzureAppConfigurationClient(buildInnerClient());
353+
}
354+
355+
private static final ClientLogger LOGGER = new ClientLogger(AzureAppConfigurationClientBuilder.class);
356+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
// Copyright (c) Microsoft Corporation. All rights reserved.
2+
// Licensed under the MIT License.
3+
// Code generated by Microsoft (R) TypeSpec Code Generator.
4+
5+
package com.azure.data.appconfiguration;
6+
7+
import com.azure.core.util.ServiceVersion;
8+
9+
/**
10+
* Service version of AzureAppConfigurationClient.
11+
*/
12+
public enum AzureAppConfigurationServiceVersion implements ServiceVersion {
13+
/**
14+
* Enum value 2023-11-01.
15+
*/
16+
V2023_11_01("2023-11-01");
17+
18+
private final String version;
19+
20+
AzureAppConfigurationServiceVersion(String version) {
21+
this.version = version;
22+
}
23+
24+
/**
25+
* {@inheritDoc}
26+
*/
27+
@Override
28+
public String getVersion() {
29+
return this.version;
30+
}
31+
32+
/**
33+
* Gets the latest service version supported by this client library.
34+
*
35+
* @return The latest {@link AzureAppConfigurationServiceVersion}.
36+
*/
37+
public static AzureAppConfigurationServiceVersion getLatest() {
38+
return V2023_11_01;
39+
}
40+
}

0 commit comments

Comments
 (0)