From 018b313dc0038aef3f80b0b6b4583c73d87cc4a1 Mon Sep 17 00:00:00 2001 From: Ethan92 Date: Sun, 7 Feb 2021 11:11:00 +0800 Subject: [PATCH 1/2] add albConfig in accountSetting --- pom.xml | 2 +- src/main/java/com/aliyuncs/fc/model/AccountSettings.java | 6 ++++++ .../java/com/aliyuncs/fc/FunctionComputeClientTest.java | 6 ++++++ 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 25d03666..1d15055c 100755 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ com.aliyun aliyun-java-sdk-fc jar - 1.8.15 + 1.8.15-SNAPSHOT aliyun-java-sdk-fc https://www.aliyun.com/product/fc Aliyun Java SDK for FunctionCompute diff --git a/src/main/java/com/aliyuncs/fc/model/AccountSettings.java b/src/main/java/com/aliyuncs/fc/model/AccountSettings.java index 5f7b02d4..067212ce 100644 --- a/src/main/java/com/aliyuncs/fc/model/AccountSettings.java +++ b/src/main/java/com/aliyuncs/fc/model/AccountSettings.java @@ -7,7 +7,13 @@ public class AccountSettings { private String[] availableAZs; + private String[] albEndpoints; + public String[] getAvailableAZs() { return availableAZs; } + + public String[] getAlbEndpoints() { + return albEndpoints; + } } diff --git a/src/test/java/com/aliyuncs/fc/FunctionComputeClientTest.java b/src/test/java/com/aliyuncs/fc/FunctionComputeClientTest.java index e24acc2b..e5333393 100644 --- a/src/test/java/com/aliyuncs/fc/FunctionComputeClientTest.java +++ b/src/test/java/com/aliyuncs/fc/FunctionComputeClientTest.java @@ -553,6 +553,12 @@ public void testCreateNASService() throws IOException { client.deleteService(new DeleteServiceRequest(service_name)); } + @Test + public void testGetAccountSettings() { + GetAccountSettingsResponse response = client.getAccountSettings(new GetAccountSettingsRequest()); + assertTrue(response.getAccountSettings().getAvailableAZs().length > 0); + } + private void preTestProvisionConfig(String serviceName, String functionName, String aliasName) throws Exception { // create service createService(serviceName, false); From c151a8c2937c83e8a13960b1b9911d145606dda6 Mon Sep 17 00:00:00 2001 From: Ethan92 Date: Sun, 7 Feb 2021 22:39:41 +0800 Subject: [PATCH 2/2] add albConfig in accountSetting --- pom.xml | 2 +- .../fc/client/FunctionComputeClient.java | 11 +++++ .../java/com/aliyuncs/fc/constants/Const.java | 1 + .../com/aliyuncs/fc/model/ALBSettings.java | 24 ++++++++++ .../fc/request/GetALBSettingsRequest.java | 47 +++++++++++++++++++ .../fc/response/GetALBSettingsResponse.java | 17 +++++++ 6 files changed, 101 insertions(+), 1 deletion(-) create mode 100644 src/main/java/com/aliyuncs/fc/model/ALBSettings.java create mode 100644 src/main/java/com/aliyuncs/fc/request/GetALBSettingsRequest.java create mode 100644 src/main/java/com/aliyuncs/fc/response/GetALBSettingsResponse.java diff --git a/pom.xml b/pom.xml index 1d15055c..3e6f6e7e 100755 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ com.aliyun aliyun-java-sdk-fc jar - 1.8.15-SNAPSHOT + 1.8.13.15 aliyun-java-sdk-fc https://www.aliyun.com/product/fc Aliyun Java SDK for FunctionCompute diff --git a/src/main/java/com/aliyuncs/fc/client/FunctionComputeClient.java b/src/main/java/com/aliyuncs/fc/client/FunctionComputeClient.java index b83f2854..c2d1628e 100644 --- a/src/main/java/com/aliyuncs/fc/client/FunctionComputeClient.java +++ b/src/main/java/com/aliyuncs/fc/client/FunctionComputeClient.java @@ -84,6 +84,17 @@ public GetAccountSettingsResponse getAccountSettings(GetAccountSettingsRequest r return getAccountSettingsOutput; } + public GetALBSettingsResponse getALBSettings(GetALBSettingsRequest request) throws ClientException, ServerException { + + HttpResponse response = client.doAction(request, CONTENT_TYPE_APPLICATION_JSON, GET); + GetALBSettingsResponse getALBSettingsResponse = new GetALBSettingsResponse(); + ALBSettings albSettings = GSON.fromJson(FcUtil.toDefaultCharset(response.getContent()), ALBSettings.class); + getALBSettingsResponse.setHeaders(response.getHeaders()); + getALBSettingsResponse.setStatus(response.getStatus()); + getALBSettingsResponse.setAlbSettings(albSettings); + return getALBSettingsResponse; + } + public DeleteServiceResponse deleteService(DeleteServiceRequest request) throws ClientException, ServerException { HttpResponse response = client.doAction(request, CONTENT_TYPE_APPLICATION_JSON, DELETE); diff --git a/src/main/java/com/aliyuncs/fc/constants/Const.java b/src/main/java/com/aliyuncs/fc/constants/Const.java index b1d51696..81357859 100644 --- a/src/main/java/com/aliyuncs/fc/constants/Const.java +++ b/src/main/java/com/aliyuncs/fc/constants/Const.java @@ -6,6 +6,7 @@ public class Const { public final static String ACCOUNT_SETTING_PATH = "/%s/account-settings"; + public final static String ALB_SETTING_PATH = "/%s/alb-settings"; public final static String SERVICE_PATH = "/%s/services"; public final static String ON_DEMAND_CONFIGS = "/%s/on-demand-configs"; public final static String PROVISION_CONFIG_PATH = "/%s/provision-configs"; diff --git a/src/main/java/com/aliyuncs/fc/model/ALBSettings.java b/src/main/java/com/aliyuncs/fc/model/ALBSettings.java new file mode 100644 index 00000000..cd24c3a0 --- /dev/null +++ b/src/main/java/com/aliyuncs/fc/model/ALBSettings.java @@ -0,0 +1,24 @@ +package com.aliyuncs.fc.model; + +public class ALBSettings { + + private String accountId; + + private String[] endpoints; + + public String getAccountId() { + return accountId; + } + + public void setAccountId(String accountId) { + this.accountId = accountId; + } + + public String[] getEndpoints() { + return endpoints; + } + + public void setEndpoints(String[] endpoints) { + this.endpoints = endpoints; + } +} diff --git a/src/main/java/com/aliyuncs/fc/request/GetALBSettingsRequest.java b/src/main/java/com/aliyuncs/fc/request/GetALBSettingsRequest.java new file mode 100644 index 00000000..e1a4bd94 --- /dev/null +++ b/src/main/java/com/aliyuncs/fc/request/GetALBSettingsRequest.java @@ -0,0 +1,47 @@ +package com.aliyuncs.fc.request; + +import com.aliyuncs.fc.constants.Const; +import com.aliyuncs.fc.exceptions.ClientException; +import com.aliyuncs.fc.http.HttpRequest; +import com.aliyuncs.fc.response.GetAccountSettingsResponse; +import com.google.gson.annotations.SerializedName; +import org.apache.commons.lang.StringUtils; + +import java.util.HashMap; +import java.util.Map; + +public class GetALBSettingsRequest extends HttpRequest { + + @SerializedName("accountId") + private String accountId; + + public GetALBSettingsRequest() {} + + public String getPath() { + return String.format(Const.ALB_SETTING_PATH, Const.API_VERSION, accountId); + } + + public void validate() throws ClientException { + } + + @Override + public Map getQueryParams() { + Map queryParams = new HashMap(); + if (StringUtils.isNotBlank(accountId)) { + queryParams.put("accountId", accountId); + } + return queryParams; + } + + public Class getResponseClass() { + return GetAccountSettingsResponse.class; + } + + public String getAccountId() { + return accountId; + } + + public void setAccountId(String accountId) { + this.accountId = accountId; + } +} diff --git a/src/main/java/com/aliyuncs/fc/response/GetALBSettingsResponse.java b/src/main/java/com/aliyuncs/fc/response/GetALBSettingsResponse.java new file mode 100644 index 00000000..80e4ecfa --- /dev/null +++ b/src/main/java/com/aliyuncs/fc/response/GetALBSettingsResponse.java @@ -0,0 +1,17 @@ +package com.aliyuncs.fc.response; + +import com.aliyuncs.fc.http.HttpResponse; +import com.aliyuncs.fc.model.ALBSettings; + +public class GetALBSettingsResponse extends HttpResponse { + + private ALBSettings albSettings; + + public ALBSettings getAlbSettings() { + return albSettings; + } + + public void setAlbSettings(ALBSettings albSettings) { + this.albSettings = albSettings; + } +} \ No newline at end of file