Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix FT #314

Merged
merged 3 commits into from
Aug 20, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
228 changes: 112 additions & 116 deletions aliyun-net-sdk-core/Retry/Util/RetryConfig.cs
Original file line number Diff line number Diff line change
Expand Up @@ -46,122 +46,118 @@ public static List<string> GetRetryableApiList(string product, string version, s
return retryableApiList.Count == 0 ? null : retryableApiList;
}

private static void initData()
{
products = new Dictionary<string, Product>() { };
Product productEcs = new Product();
productEcs.ProductName = "ecs";
Version version20140526 = new Version();
version20140526.VersionDate = "2014-05-26";
version20140526.RetryableAPIs.Add("DescribeAccessPoints");
version20140526.RetryableAPIs.Add("DescribeAccountAttributes");
version20140526.RetryableAPIs.Add("DescribeAutoSnapshotPolicyEx");
version20140526.RetryableAPIs.Add("DescribeAvailableResource");
version20140526.RetryableAPIs.Add("DescribeBandwidthLimitation");
version20140526.RetryableAPIs.Add("DescribeBandwidthPackages");
version20140526.RetryableAPIs.Add("DescribeClassicLinkInstances");
version20140526.RetryableAPIs.Add("DescribeCloudAssistantStatus");
version20140526.RetryableAPIs.Add("DescribeClusters");
version20140526.RetryableAPIs.Add("DescribeCommands");
version20140526.RetryableAPIs.Add("DescribeDedicatedHostAutoRenew");
version20140526.RetryableAPIs.Add("DescribeDedicatedHosts");
version20140526.RetryableAPIs.Add("DescribeDedicatedHostTypes");
version20140526.RetryableAPIs.Add("DescribeDeploymentSets");
version20140526.RetryableAPIs.Add("DescribeDiskMonitorData");
version20140526.RetryableAPIs.Add("DescribeDisks");
version20140526.RetryableAPIs.Add("DescribeDisksFullStatus");
version20140526.RetryableAPIs.Add("DescribeEipAddresses");
version20140526.RetryableAPIs.Add("DescribeEipMonitorData");
version20140526.RetryableAPIs.Add("DescribeEniMonitorData");
version20140526.RetryableAPIs.Add("DescribeForwardTableEntries");
version20140526.RetryableAPIs.Add("DescribeHaVips");
version20140526.RetryableAPIs.Add("DescribeHpcClusters");
version20140526.RetryableAPIs.Add("DescribeImages");
version20140526.RetryableAPIs.Add("DescribeImageSharePermission");
version20140526.RetryableAPIs.Add("DescribeImageSupportInstanceTypes");
version20140526.RetryableAPIs.Add("DescribeInstanceAttribute");
version20140526.RetryableAPIs.Add("DescribeInstanceAutoRenewAttribute");
version20140526.RetryableAPIs.Add("DescribeInstanceHistoryEvents");
version20140526.RetryableAPIs.Add("DescribeInstanceMonitorData");
version20140526.RetryableAPIs.Add("DescribeInstancePhysicalAttribute");
version20140526.RetryableAPIs.Add("DescribeInstanceRamRole");
version20140526.RetryableAPIs.Add("DescribeInstances");
version20140526.RetryableAPIs.Add("DescribeInstancesFullStatus");
version20140526.RetryableAPIs.Add("DescribeInstanceStatus");
version20140526.RetryableAPIs.Add("DescribeInstanceTopology");
version20140526.RetryableAPIs.Add("DescribeInstanceTypeFamilies");
version20140526.RetryableAPIs.Add("DescribeInstanceTypes");
version20140526.RetryableAPIs.Add("DescribeInstanceVncPasswd");
version20140526.RetryableAPIs.Add("DescribeInstanceVncUrl");
version20140526.RetryableAPIs.Add("DescribeInvocationResults");
version20140526.RetryableAPIs.Add("DescribeInvocations");
version20140526.RetryableAPIs.Add("DescribeKeyPairs");
version20140526.RetryableAPIs.Add("DescribeLaunchTemplates");
version20140526.RetryableAPIs.Add("DescribeLaunchTemplateVersions");
version20140526.RetryableAPIs.Add("DescribeLimitation");
version20140526.RetryableAPIs.Add("DescribeNatGateways");
version20140526.RetryableAPIs.Add("DescribeNetworkInterfacePermissions");
version20140526.RetryableAPIs.Add("DescribeNetworkInterfaces");
version20140526.RetryableAPIs.Add("DescribeNewProjectEipMonitorData");
version20140526.RetryableAPIs.Add("DescribePhysicalConnections");
version20140526.RetryableAPIs.Add("DescribePrice");
version20140526.RetryableAPIs.Add("DescribeRecommendInstanceType");
version20140526.RetryableAPIs.Add("DescribeRegions");
version20140526.RetryableAPIs.Add("DescribeRenewalPrice");
version20140526.RetryableAPIs.Add("DescribeResourceByTags");
version20140526.RetryableAPIs.Add("DescribeResourcesModification");
version20140526.RetryableAPIs.Add("DescribeRouterInterfaces");
version20140526.RetryableAPIs.Add("DescribeRouteTables");
version20140526.RetryableAPIs.Add("DescribeSecurityGroupAttribute");
version20140526.RetryableAPIs.Add("DescribeSecurityGroupReferences");
version20140526.RetryableAPIs.Add("DescribeSecurityGroups");
version20140526.RetryableAPIs.Add("DescribeSnapshotLinks");
version20140526.RetryableAPIs.Add("DescribeSnapshotMonitorData");
version20140526.RetryableAPIs.Add("DescribeSnapshotPackage");
version20140526.RetryableAPIs.Add("DescribeSnapshots");
version20140526.RetryableAPIs.Add("DescribeSnapshotsUsage");
version20140526.RetryableAPIs.Add("DescribeSpotPriceHistory");
version20140526.RetryableAPIs.Add("DescribeTags");
version20140526.RetryableAPIs.Add("DescribeTaskAttribute");
version20140526.RetryableAPIs.Add("DescribeTasks");
version20140526.RetryableAPIs.Add("DescribeUserBusinessBehavior");
version20140526.RetryableAPIs.Add("DescribeUserData");
version20140526.RetryableAPIs.Add("DescribeVirtualBorderRouters");
version20140526.RetryableAPIs.Add("DescribeVirtualBorderRoutersForPhysicalConnection");
version20140526.RetryableAPIs.Add("DescribeVpcs");
version20140526.RetryableAPIs.Add("DescribeVRouters");
version20140526.RetryableAPIs.Add("DescribeVSwitches");
version20140526.RetryableAPIs.Add("DescribeZones");
version20140526.RetryableAPIsWithClientToken.Add("CreateDisk");
version20140526.RetryableAPIsWithClientToken.Add("CreateImage");
version20140526.RetryableAPIsWithClientToken.Add("CreateInstance");
version20140526.RetryableAPIsWithClientToken.Add("CreateNetworkInterface");
version20140526.RetryableAPIsWithClientToken.Add("CreateSnapshot");
version20140526.RetryableAPIsWithClientToken.Add("ModifyDiskChargeType");
version20140526.RetryableAPIsWithClientToken.Add("ModifyInstanceChargeType");
version20140526.RetryableAPIsWithClientToken.Add("ModifyInstanceNetworkSpec");
version20140526.RetryableAPIsWithClientToken.Add("ModifyInstanceSpec");
version20140526.RetryableAPIsWithClientToken.Add("ModifyPrepayInstanceSpec");
version20140526.RetryableAPIsWithClientToken.Add("RenewInstance");
version20140526.RetryableAPIsWithClientToken.Add("ReplaceSystemDisk");
version20140526.RetryableAPIsWithClientToken.Add("ResizeDisk");
version20140526.RetryableAPIsWithClientToken.Add("RunInstances");
version20140526.RetryableThrottlingErrors.Add("Throttling");
version20140526.RetryableNormalErrors.Add("InternalError");
version20140526.RetryableNormalErrors.Add("UnknownError");
version20140526.RetryableNormalErrors.Add("ServiceUnavailable");
productEcs.versions.Add("2014-05-26", version20140526);

products.Add("ecs", productEcs);
}

private static Dictionary<string, Product> products;

internal static List<string> Get(string productName, string versionDate, string sectionName)
{
if (products == null)
if (null == products)
{
initData();
products = new Dictionary<string, Product>() { };
Product productEcs = new Product();
productEcs.ProductName = "ecs";
Version version20140526 = new Version();
version20140526.VersionDate = "2014-05-26";
version20140526.RetryableAPIs.Add("DescribeAccessPoints");
version20140526.RetryableAPIs.Add("DescribeAccountAttributes");
version20140526.RetryableAPIs.Add("DescribeAutoSnapshotPolicyEx");
version20140526.RetryableAPIs.Add("DescribeAvailableResource");
version20140526.RetryableAPIs.Add("DescribeBandwidthLimitation");
version20140526.RetryableAPIs.Add("DescribeBandwidthPackages");
version20140526.RetryableAPIs.Add("DescribeClassicLinkInstances");
version20140526.RetryableAPIs.Add("DescribeCloudAssistantStatus");
version20140526.RetryableAPIs.Add("DescribeClusters");
version20140526.RetryableAPIs.Add("DescribeCommands");
version20140526.RetryableAPIs.Add("DescribeDedicatedHostAutoRenew");
version20140526.RetryableAPIs.Add("DescribeDedicatedHosts");
version20140526.RetryableAPIs.Add("DescribeDedicatedHostTypes");
version20140526.RetryableAPIs.Add("DescribeDeploymentSets");
version20140526.RetryableAPIs.Add("DescribeDiskMonitorData");
version20140526.RetryableAPIs.Add("DescribeDisks");
version20140526.RetryableAPIs.Add("DescribeDisksFullStatus");
version20140526.RetryableAPIs.Add("DescribeEipAddresses");
version20140526.RetryableAPIs.Add("DescribeEipMonitorData");
version20140526.RetryableAPIs.Add("DescribeEniMonitorData");
version20140526.RetryableAPIs.Add("DescribeForwardTableEntries");
version20140526.RetryableAPIs.Add("DescribeHaVips");
version20140526.RetryableAPIs.Add("DescribeHpcClusters");
version20140526.RetryableAPIs.Add("DescribeImages");
version20140526.RetryableAPIs.Add("DescribeImageSharePermission");
version20140526.RetryableAPIs.Add("DescribeImageSupportInstanceTypes");
version20140526.RetryableAPIs.Add("DescribeInstanceAttribute");
version20140526.RetryableAPIs.Add("DescribeInstanceAutoRenewAttribute");
version20140526.RetryableAPIs.Add("DescribeInstanceHistoryEvents");
version20140526.RetryableAPIs.Add("DescribeInstanceMonitorData");
version20140526.RetryableAPIs.Add("DescribeInstancePhysicalAttribute");
version20140526.RetryableAPIs.Add("DescribeInstanceRamRole");
version20140526.RetryableAPIs.Add("DescribeInstances");
version20140526.RetryableAPIs.Add("DescribeInstancesFullStatus");
version20140526.RetryableAPIs.Add("DescribeInstanceStatus");
version20140526.RetryableAPIs.Add("DescribeInstanceTopology");
version20140526.RetryableAPIs.Add("DescribeInstanceTypeFamilies");
version20140526.RetryableAPIs.Add("DescribeInstanceTypes");
version20140526.RetryableAPIs.Add("DescribeInstanceVncPasswd");
version20140526.RetryableAPIs.Add("DescribeInstanceVncUrl");
version20140526.RetryableAPIs.Add("DescribeInvocationResults");
version20140526.RetryableAPIs.Add("DescribeInvocations");
version20140526.RetryableAPIs.Add("DescribeKeyPairs");
version20140526.RetryableAPIs.Add("DescribeLaunchTemplates");
version20140526.RetryableAPIs.Add("DescribeLaunchTemplateVersions");
version20140526.RetryableAPIs.Add("DescribeLimitation");
version20140526.RetryableAPIs.Add("DescribeNatGateways");
version20140526.RetryableAPIs.Add("DescribeNetworkInterfacePermissions");
version20140526.RetryableAPIs.Add("DescribeNetworkInterfaces");
version20140526.RetryableAPIs.Add("DescribeNewProjectEipMonitorData");
version20140526.RetryableAPIs.Add("DescribePhysicalConnections");
version20140526.RetryableAPIs.Add("DescribePrice");
version20140526.RetryableAPIs.Add("DescribeRecommendInstanceType");
version20140526.RetryableAPIs.Add("DescribeRegions");
version20140526.RetryableAPIs.Add("DescribeRenewalPrice");
version20140526.RetryableAPIs.Add("DescribeResourceByTags");
version20140526.RetryableAPIs.Add("DescribeResourcesModification");
version20140526.RetryableAPIs.Add("DescribeRouterInterfaces");
version20140526.RetryableAPIs.Add("DescribeRouteTables");
version20140526.RetryableAPIs.Add("DescribeSecurityGroupAttribute");
version20140526.RetryableAPIs.Add("DescribeSecurityGroupReferences");
version20140526.RetryableAPIs.Add("DescribeSecurityGroups");
version20140526.RetryableAPIs.Add("DescribeSnapshotLinks");
version20140526.RetryableAPIs.Add("DescribeSnapshotMonitorData");
version20140526.RetryableAPIs.Add("DescribeSnapshotPackage");
version20140526.RetryableAPIs.Add("DescribeSnapshots");
version20140526.RetryableAPIs.Add("DescribeSnapshotsUsage");
version20140526.RetryableAPIs.Add("DescribeSpotPriceHistory");
version20140526.RetryableAPIs.Add("DescribeTags");
version20140526.RetryableAPIs.Add("DescribeTaskAttribute");
version20140526.RetryableAPIs.Add("DescribeTasks");
version20140526.RetryableAPIs.Add("DescribeUserBusinessBehavior");
version20140526.RetryableAPIs.Add("DescribeUserData");
version20140526.RetryableAPIs.Add("DescribeVirtualBorderRouters");
version20140526.RetryableAPIs.Add("DescribeVirtualBorderRoutersForPhysicalConnection");
version20140526.RetryableAPIs.Add("DescribeVpcs");
version20140526.RetryableAPIs.Add("DescribeVRouters");
version20140526.RetryableAPIs.Add("DescribeVSwitches");
version20140526.RetryableAPIs.Add("DescribeZones");
version20140526.RetryableAPIsWithClientToken.Add("CreateDisk");
version20140526.RetryableAPIsWithClientToken.Add("CreateImage");
version20140526.RetryableAPIsWithClientToken.Add("CreateInstance");
version20140526.RetryableAPIsWithClientToken.Add("CreateNetworkInterface");
version20140526.RetryableAPIsWithClientToken.Add("CreateSnapshot");
version20140526.RetryableAPIsWithClientToken.Add("ModifyDiskChargeType");
version20140526.RetryableAPIsWithClientToken.Add("ModifyInstanceChargeType");
version20140526.RetryableAPIsWithClientToken.Add("ModifyInstanceNetworkSpec");
version20140526.RetryableAPIsWithClientToken.Add("ModifyInstanceSpec");
version20140526.RetryableAPIsWithClientToken.Add("ModifyPrepayInstanceSpec");
version20140526.RetryableAPIsWithClientToken.Add("RenewInstance");
version20140526.RetryableAPIsWithClientToken.Add("ReplaceSystemDisk");
version20140526.RetryableAPIsWithClientToken.Add("ResizeDisk");
version20140526.RetryableAPIsWithClientToken.Add("RunInstances");
version20140526.RetryableThrottlingErrors.Add("Throttling");
version20140526.RetryableNormalErrors.Add("InternalError");
version20140526.RetryableNormalErrors.Add("UnknownError");
version20140526.RetryableNormalErrors.Add("ServiceUnavailable");
productEcs.versions.Add("2014-05-26", version20140526);

try { products.Add("ecs", productEcs); }
catch (ArgumentException) { }
}
List<string> apis = new List<string>() { };
if (products.ContainsKey(productName))
Expand Down Expand Up @@ -196,19 +192,19 @@ public class Product
{
public string ProductName { get; set; }

public Dictionary<string, Version> versions = new Dictionary<string, Version>(){};
public Dictionary<string, Version> versions = new Dictionary<string, Version>() { };
}

public class Version
{
public String VersionDate { get; set; }

public List<string> RetryableAPIs = new List<string>(){};
public List<string> RetryableAPIs = new List<string>() { };

public List<string> RetryableAPIsWithClientToken = new List<string>(){};
public List<string> RetryableAPIsWithClientToken = new List<string>() { };

public List<string> RetryableThrottlingErrors = new List<string>(){};
public List<string> RetryableThrottlingErrors = new List<string>() { };

public List<string> RetryableNormalErrors = new List<string>(){};
public List<string> RetryableNormalErrors = new List<string>() { };
}
}
Loading