diff --git a/datafactoryv2/resource-manager/v2018_06_01/src/main/java/com/microsoft/azure/management/datafactoryv2/v2018_06_01/Factories.java b/datafactoryv2/resource-manager/v2018_06_01/src/main/java/com/microsoft/azure/management/datafactoryv2/v2018_06_01/Factories.java index d229a116e6a7..0cc2c74ea0f6 100644 --- a/datafactoryv2/resource-manager/v2018_06_01/src/main/java/com/microsoft/azure/management/datafactoryv2/v2018_06_01/Factories.java +++ b/datafactoryv2/resource-manager/v2018_06_01/src/main/java/com/microsoft/azure/management/datafactoryv2/v2018_06_01/Factories.java @@ -22,6 +22,17 @@ * Type representing Factories. */ public interface Factories extends SupportsCreating, SupportsDeletingByResourceGroup, SupportsBatchDeletion, SupportsGettingByResourceGroup, SupportsListingByResourceGroup, SupportsListing, HasInner { + /** + * Get GitHub Access Token. + * + * @param resourceGroupName The resource group name. + * @param factoryName The factory name. + * @param gitHubAccessTokenRequest Get GitHub access token request definition. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the observable for the request + */ + Observable getGitHubAccessTokenAsync(String resourceGroupName, String factoryName, GitHubAccessTokenRequest gitHubAccessTokenRequest); + /** * Updates a factory's repo information. * diff --git a/datafactoryv2/resource-manager/v2018_06_01/src/main/java/com/microsoft/azure/management/datafactoryv2/v2018_06_01/GitHubAccessTokenRequest.java b/datafactoryv2/resource-manager/v2018_06_01/src/main/java/com/microsoft/azure/management/datafactoryv2/v2018_06_01/GitHubAccessTokenRequest.java new file mode 100644 index 000000000000..d442ad80f224 --- /dev/null +++ b/datafactoryv2/resource-manager/v2018_06_01/src/main/java/com/microsoft/azure/management/datafactoryv2/v2018_06_01/GitHubAccessTokenRequest.java @@ -0,0 +1,95 @@ +/** + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + */ + +package com.microsoft.azure.management.datafactoryv2.v2018_06_01; + +import com.fasterxml.jackson.annotation.JsonProperty; + +/** + * Get GitHub access token request definition. + */ +public class GitHubAccessTokenRequest { + /** + * GitHub access code. + */ + @JsonProperty(value = "gitHubAccessCode", required = true) + private String gitHubAccessCode; + + /** + * GitHub application client ID. + */ + @JsonProperty(value = "gitHubClientId") + private String gitHubClientId; + + /** + * GitHub access token base URL. + */ + @JsonProperty(value = "gitHubAccessTokenBaseUrl", required = true) + private String gitHubAccessTokenBaseUrl; + + /** + * Get gitHub access code. + * + * @return the gitHubAccessCode value + */ + public String gitHubAccessCode() { + return this.gitHubAccessCode; + } + + /** + * Set gitHub access code. + * + * @param gitHubAccessCode the gitHubAccessCode value to set + * @return the GitHubAccessTokenRequest object itself. + */ + public GitHubAccessTokenRequest withGitHubAccessCode(String gitHubAccessCode) { + this.gitHubAccessCode = gitHubAccessCode; + return this; + } + + /** + * Get gitHub application client ID. + * + * @return the gitHubClientId value + */ + public String gitHubClientId() { + return this.gitHubClientId; + } + + /** + * Set gitHub application client ID. + * + * @param gitHubClientId the gitHubClientId value to set + * @return the GitHubAccessTokenRequest object itself. + */ + public GitHubAccessTokenRequest withGitHubClientId(String gitHubClientId) { + this.gitHubClientId = gitHubClientId; + return this; + } + + /** + * Get gitHub access token base URL. + * + * @return the gitHubAccessTokenBaseUrl value + */ + public String gitHubAccessTokenBaseUrl() { + return this.gitHubAccessTokenBaseUrl; + } + + /** + * Set gitHub access token base URL. + * + * @param gitHubAccessTokenBaseUrl the gitHubAccessTokenBaseUrl value to set + * @return the GitHubAccessTokenRequest object itself. + */ + public GitHubAccessTokenRequest withGitHubAccessTokenBaseUrl(String gitHubAccessTokenBaseUrl) { + this.gitHubAccessTokenBaseUrl = gitHubAccessTokenBaseUrl; + return this; + } + +} diff --git a/datafactoryv2/resource-manager/v2018_06_01/src/main/java/com/microsoft/azure/management/datafactoryv2/v2018_06_01/GitHubAccessTokenResponse.java b/datafactoryv2/resource-manager/v2018_06_01/src/main/java/com/microsoft/azure/management/datafactoryv2/v2018_06_01/GitHubAccessTokenResponse.java new file mode 100644 index 000000000000..142ce29dc59b --- /dev/null +++ b/datafactoryv2/resource-manager/v2018_06_01/src/main/java/com/microsoft/azure/management/datafactoryv2/v2018_06_01/GitHubAccessTokenResponse.java @@ -0,0 +1,25 @@ +/** + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + */ + +package com.microsoft.azure.management.datafactoryv2.v2018_06_01; + +import com.microsoft.azure.arm.model.HasInner; +import com.microsoft.azure.arm.resources.models.HasManager; +import com.microsoft.azure.management.datafactoryv2.v2018_06_01.implementation.DataFactoryManager; +import com.microsoft.azure.management.datafactoryv2.v2018_06_01.implementation.GitHubAccessTokenResponseInner; + +/** + * Type representing GitHubAccessTokenResponse. + */ +public interface GitHubAccessTokenResponse extends HasInner, HasManager { + /** + * @return the gitHubAccessToken value. + */ + String gitHubAccessToken(); + +} diff --git a/datafactoryv2/resource-manager/v2018_06_01/src/main/java/com/microsoft/azure/management/datafactoryv2/v2018_06_01/implementation/FactoriesImpl.java b/datafactoryv2/resource-manager/v2018_06_01/src/main/java/com/microsoft/azure/management/datafactoryv2/v2018_06_01/implementation/FactoriesImpl.java index 263acffb447e..505504c54fa3 100644 --- a/datafactoryv2/resource-manager/v2018_06_01/src/main/java/com/microsoft/azure/management/datafactoryv2/v2018_06_01/implementation/FactoriesImpl.java +++ b/datafactoryv2/resource-manager/v2018_06_01/src/main/java/com/microsoft/azure/management/datafactoryv2/v2018_06_01/implementation/FactoriesImpl.java @@ -22,6 +22,8 @@ import rx.functions.Func1; import com.microsoft.azure.PagedList; import com.microsoft.azure.Page; +import com.microsoft.azure.management.datafactoryv2.v2018_06_01.GitHubAccessTokenResponse; +import com.microsoft.azure.management.datafactoryv2.v2018_06_01.GitHubAccessTokenRequest; import com.microsoft.azure.management.datafactoryv2.v2018_06_01.FactoryRepoUpdate; class FactoriesImpl extends GroupableResourcesCoreImpl implements Factories { @@ -126,6 +128,18 @@ public FactoryImpl define(String name) { return wrapModel(name); } + @Override + public Observable getGitHubAccessTokenAsync(String resourceGroupName, String factoryName, GitHubAccessTokenRequest gitHubAccessTokenRequest) { + FactoriesInner client = this.inner(); + return client.getGitHubAccessTokenAsync(resourceGroupName, factoryName, gitHubAccessTokenRequest) + .map(new Func1() { + @Override + public GitHubAccessTokenResponse call(GitHubAccessTokenResponseInner inner) { + return new GitHubAccessTokenResponseImpl(inner, manager()); + } + }); + } + @Override protected FactoryImpl wrapModel(FactoryInner inner) { return new FactoryImpl(inner.name(), inner, manager()); diff --git a/datafactoryv2/resource-manager/v2018_06_01/src/main/java/com/microsoft/azure/management/datafactoryv2/v2018_06_01/implementation/FactoriesInner.java b/datafactoryv2/resource-manager/v2018_06_01/src/main/java/com/microsoft/azure/management/datafactoryv2/v2018_06_01/implementation/FactoriesInner.java index 549b3a6889a7..08b35850ab9a 100644 --- a/datafactoryv2/resource-manager/v2018_06_01/src/main/java/com/microsoft/azure/management/datafactoryv2/v2018_06_01/implementation/FactoriesInner.java +++ b/datafactoryv2/resource-manager/v2018_06_01/src/main/java/com/microsoft/azure/management/datafactoryv2/v2018_06_01/implementation/FactoriesInner.java @@ -18,6 +18,7 @@ import com.microsoft.azure.ListOperationCallback; import com.microsoft.azure.management.datafactoryv2.v2018_06_01.FactoryRepoUpdate; import com.microsoft.azure.management.datafactoryv2.v2018_06_01.FactoryUpdateParameters; +import com.microsoft.azure.management.datafactoryv2.v2018_06_01.GitHubAccessTokenRequest; import com.microsoft.azure.Page; import com.microsoft.azure.PagedList; import com.microsoft.rest.ServiceCallback; @@ -96,6 +97,10 @@ interface FactoriesService { @HTTP(path = "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataFactory/factories/{factoryName}", method = "DELETE", hasBody = true) Observable> delete(@Path("subscriptionId") String subscriptionId, @Path("resourceGroupName") String resourceGroupName, @Path("factoryName") String factoryName, @Query("api-version") String apiVersion, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent); + @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.datafactoryv2.v2018_06_01.Factories getGitHubAccessToken" }) + @POST("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataFactory/factories/{factoryName}/getGitHubAccessToken") + Observable> getGitHubAccessToken(@Path("subscriptionId") String subscriptionId, @Path("resourceGroupName") String resourceGroupName, @Path("factoryName") String factoryName, @Query("api-version") String apiVersion, @Body GitHubAccessTokenRequest gitHubAccessTokenRequest, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent); + @Headers({ "Content-Type: application/json; charset=utf-8", "x-ms-logging-context: com.microsoft.azure.management.datafactoryv2.v2018_06_01.Factories listNext" }) @GET Observable> listNext(@Url String nextUrl, @Header("accept-language") String acceptLanguage, @Header("User-Agent") String userAgent); @@ -952,6 +957,100 @@ private ServiceResponse deleteDelegate(Response response) th .build(response); } + /** + * Get GitHub Access Token. + * + * @param resourceGroupName The resource group name. + * @param factoryName The factory name. + * @param gitHubAccessTokenRequest Get GitHub access token request definition. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @throws CloudException thrown if the request is rejected by server + * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent + * @return the GitHubAccessTokenResponseInner object if successful. + */ + public GitHubAccessTokenResponseInner getGitHubAccessToken(String resourceGroupName, String factoryName, GitHubAccessTokenRequest gitHubAccessTokenRequest) { + return getGitHubAccessTokenWithServiceResponseAsync(resourceGroupName, factoryName, gitHubAccessTokenRequest).toBlocking().single().body(); + } + + /** + * Get GitHub Access Token. + * + * @param resourceGroupName The resource group name. + * @param factoryName The factory name. + * @param gitHubAccessTokenRequest Get GitHub access token request definition. + * @param serviceCallback the async ServiceCallback to handle successful and failed responses. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the {@link ServiceFuture} object + */ + public ServiceFuture getGitHubAccessTokenAsync(String resourceGroupName, String factoryName, GitHubAccessTokenRequest gitHubAccessTokenRequest, final ServiceCallback serviceCallback) { + return ServiceFuture.fromResponse(getGitHubAccessTokenWithServiceResponseAsync(resourceGroupName, factoryName, gitHubAccessTokenRequest), serviceCallback); + } + + /** + * Get GitHub Access Token. + * + * @param resourceGroupName The resource group name. + * @param factoryName The factory name. + * @param gitHubAccessTokenRequest Get GitHub access token request definition. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the observable to the GitHubAccessTokenResponseInner object + */ + public Observable getGitHubAccessTokenAsync(String resourceGroupName, String factoryName, GitHubAccessTokenRequest gitHubAccessTokenRequest) { + return getGitHubAccessTokenWithServiceResponseAsync(resourceGroupName, factoryName, gitHubAccessTokenRequest).map(new Func1, GitHubAccessTokenResponseInner>() { + @Override + public GitHubAccessTokenResponseInner call(ServiceResponse response) { + return response.body(); + } + }); + } + + /** + * Get GitHub Access Token. + * + * @param resourceGroupName The resource group name. + * @param factoryName The factory name. + * @param gitHubAccessTokenRequest Get GitHub access token request definition. + * @throws IllegalArgumentException thrown if parameters fail the validation + * @return the observable to the GitHubAccessTokenResponseInner object + */ + public Observable> getGitHubAccessTokenWithServiceResponseAsync(String resourceGroupName, String factoryName, GitHubAccessTokenRequest gitHubAccessTokenRequest) { + if (this.client.subscriptionId() == null) { + throw new IllegalArgumentException("Parameter this.client.subscriptionId() is required and cannot be null."); + } + if (resourceGroupName == null) { + throw new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."); + } + if (factoryName == null) { + throw new IllegalArgumentException("Parameter factoryName is required and cannot be null."); + } + if (this.client.apiVersion() == null) { + throw new IllegalArgumentException("Parameter this.client.apiVersion() is required and cannot be null."); + } + if (gitHubAccessTokenRequest == null) { + throw new IllegalArgumentException("Parameter gitHubAccessTokenRequest is required and cannot be null."); + } + Validator.validate(gitHubAccessTokenRequest); + return service.getGitHubAccessToken(this.client.subscriptionId(), resourceGroupName, factoryName, this.client.apiVersion(), gitHubAccessTokenRequest, this.client.acceptLanguage(), this.client.userAgent()) + .flatMap(new Func1, Observable>>() { + @Override + public Observable> call(Response response) { + try { + ServiceResponse clientResponse = getGitHubAccessTokenDelegate(response); + return Observable.just(clientResponse); + } catch (Throwable t) { + return Observable.error(t); + } + } + }); + } + + private ServiceResponse getGitHubAccessTokenDelegate(Response response) throws CloudException, IOException, IllegalArgumentException { + return this.client.restClient().responseBuilderFactory().newInstance(this.client.serializerAdapter()) + .register(200, new TypeToken() { }.getType()) + .registerError(CloudException.class) + .build(response); + } + /** * Lists factories under the specified subscription. * diff --git a/datafactoryv2/resource-manager/v2018_06_01/src/main/java/com/microsoft/azure/management/datafactoryv2/v2018_06_01/implementation/GitHubAccessTokenResponseImpl.java b/datafactoryv2/resource-manager/v2018_06_01/src/main/java/com/microsoft/azure/management/datafactoryv2/v2018_06_01/implementation/GitHubAccessTokenResponseImpl.java new file mode 100644 index 000000000000..c88d5912e013 --- /dev/null +++ b/datafactoryv2/resource-manager/v2018_06_01/src/main/java/com/microsoft/azure/management/datafactoryv2/v2018_06_01/implementation/GitHubAccessTokenResponseImpl.java @@ -0,0 +1,31 @@ +/** + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + */ + +package com.microsoft.azure.management.datafactoryv2.v2018_06_01.implementation; + +import com.microsoft.azure.management.datafactoryv2.v2018_06_01.GitHubAccessTokenResponse; +import com.microsoft.azure.arm.model.implementation.WrapperImpl; + +class GitHubAccessTokenResponseImpl extends WrapperImpl implements GitHubAccessTokenResponse { + private final DataFactoryManager manager; + GitHubAccessTokenResponseImpl(GitHubAccessTokenResponseInner inner, DataFactoryManager manager) { + super(inner); + this.manager = manager; + } + + @Override + public DataFactoryManager manager() { + return this.manager; + } + + @Override + public String gitHubAccessToken() { + return this.inner().gitHubAccessToken(); + } + +} diff --git a/datafactoryv2/resource-manager/v2018_06_01/src/main/java/com/microsoft/azure/management/datafactoryv2/v2018_06_01/implementation/GitHubAccessTokenResponseInner.java b/datafactoryv2/resource-manager/v2018_06_01/src/main/java/com/microsoft/azure/management/datafactoryv2/v2018_06_01/implementation/GitHubAccessTokenResponseInner.java new file mode 100644 index 000000000000..c8fe13875fb6 --- /dev/null +++ b/datafactoryv2/resource-manager/v2018_06_01/src/main/java/com/microsoft/azure/management/datafactoryv2/v2018_06_01/implementation/GitHubAccessTokenResponseInner.java @@ -0,0 +1,43 @@ +/** + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + */ + +package com.microsoft.azure.management.datafactoryv2.v2018_06_01.implementation; + +import com.fasterxml.jackson.annotation.JsonProperty; + +/** + * Get GitHub access token response definition. + */ +public class GitHubAccessTokenResponseInner { + /** + * GitHub access token. + */ + @JsonProperty(value = "gitHubAccessToken") + private String gitHubAccessToken; + + /** + * Get gitHub access token. + * + * @return the gitHubAccessToken value + */ + public String gitHubAccessToken() { + return this.gitHubAccessToken; + } + + /** + * Set gitHub access token. + * + * @param gitHubAccessToken the gitHubAccessToken value to set + * @return the GitHubAccessTokenResponseInner object itself. + */ + public GitHubAccessTokenResponseInner withGitHubAccessToken(String gitHubAccessToken) { + this.gitHubAccessToken = gitHubAccessToken; + return this; + } + +}