diff --git a/aws-android-sdk-core/src/main/java/com/amazonaws/regions/RegionDefaults.java b/aws-android-sdk-core/src/main/java/com/amazonaws/regions/RegionDefaults.java
index cdac302518..b6fc66ada5 100644
--- a/aws-android-sdk-core/src/main/java/com/amazonaws/regions/RegionDefaults.java
+++ b/aws-android-sdk-core/src/main/java/com/amazonaws/regions/RegionDefaults.java
@@ -542,6 +542,33 @@ public static List getRegions() {
updateRegion(region, "sqs", "sqs.ap-southeast-3.amazonaws.com", false, true);
updateRegion(region, "sts", "sts.ap-southeast-3.amazonaws.com", false, true);
+ // Support for Middle East(UAE) `me-central-1` region
+ region = new Region("me-central-1", "amazonaws.com");
+ ret.add(region);
+ updateRegion(region, "autoscaling", "autoscaling.me-central-1.amazonaws.com", false, true);
+ updateRegion(region, "cognito-identity", "cognito-identity.me-central-1.amazonaws.com",
+ false, true);
+ updateRegion(region, "cognito-idp", "cognito-idp.me-central-1.amazonaws.com", false, true);
+ updateRegion(region, "cognito-sync", "cognito-sync.me-central-1.amazonaws.com", false,
+ true);
+ updateRegion(region, "data.iot", "data.iot.me-central-1.amazonaws.com", false, true);
+ updateRegion(region, "dynamodb", "dynamodb.me-central-1.amazonaws.com", false, true);
+ updateRegion(region, "ec2", "ec2.me-central-1.amazonaws.com", false, true);
+ updateRegion(region, "elasticloadbalancing",
+ "elasticloadbalancing.me-central-1.amazonaws.com", false, true);
+ updateRegion(region, "firehose", "firehose.me-central-1.amazonaws.com", false, true);
+ updateRegion(region, "iot", "iot.me-central-1.amazonaws.com", false, true);
+ updateRegion(region, "kinesis", "kinesis.me-central-1.amazonaws.com", false, true);
+ updateRegion(region, "kms", "kms.me-central-1.amazonaws.com", false, true);
+ updateRegion(region, "lambda", "lambda.me-central-1.amazonaws.com", false, true);
+ updateRegion(region, "logs", "logs.me-central-1.amazonaws.com", false, true);
+ updateRegion(region, "polly", "polly.me-central-1.amazonaws.com", false, true);
+ updateRegion(region, "s3", "s3.me-central-1.amazonaws.com", false, true);
+ updateRegion(region, "sdb", "sdb.me-central-1.amazonaws.com", false, true);
+ updateRegion(region, "sns", "sns.me-central-1.amazonaws.com", false, true);
+ updateRegion(region, "sqs", "sqs.me-central-1.amazonaws.com", false, true);
+ updateRegion(region, "sts", "sts.me-central-1.amazonaws.com", false, true);
+
return ret;
}
diff --git a/aws-android-sdk-core/src/main/java/com/amazonaws/regions/Regions.java b/aws-android-sdk-core/src/main/java/com/amazonaws/regions/Regions.java
index aa210282a2..f06aff71b4 100644
--- a/aws-android-sdk-core/src/main/java/com/amazonaws/regions/Regions.java
+++ b/aws-android-sdk-core/src/main/java/com/amazonaws/regions/Regions.java
@@ -93,7 +93,10 @@ public enum Regions {
AF_SOUTH_1("af-south-1"),
/** ap-southeast-3. */
- AP_SOUTHEAST_3("ap-southeast-3");
+ AP_SOUTHEAST_3("ap-southeast-3"),
+
+ /** me-central-1. */
+ ME_CENTRAL_1("me-central-1");
/**
* The default region that new customers in the US are encouraged to use
diff --git a/aws-android-sdk-core/src/test/java/com/amazonaws/regions/RegionUtilsTest.java b/aws-android-sdk-core/src/test/java/com/amazonaws/regions/RegionUtilsTest.java
index 0508cef725..f719acc71a 100644
--- a/aws-android-sdk-core/src/test/java/com/amazonaws/regions/RegionUtilsTest.java
+++ b/aws-android-sdk-core/src/test/java/com/amazonaws/regions/RegionUtilsTest.java
@@ -46,7 +46,7 @@ public void testGetRegionByEndpointWithBogusEndpoint() {
@Test
public void testGetRegionsForService() {
List regions = RegionUtils.getRegionsForService(ServiceAbbreviations.SimpleDB);
- assertEquals(regions.size(), 10);
+ assertEquals(regions.size(), 11);
boolean usEast1 = false;
boolean usWest1 = false;
for (Region curr : regions) {
diff --git a/aws-android-sdk-s3/src/main/java/com/amazonaws/services/s3/model/Region.java b/aws-android-sdk-s3/src/main/java/com/amazonaws/services/s3/model/Region.java
index 9b38ee9c98..7386e63706 100644
--- a/aws-android-sdk-s3/src/main/java/com/amazonaws/services/s3/model/Region.java
+++ b/aws-android-sdk-s3/src/main/java/com/amazonaws/services/s3/model/Region.java
@@ -326,7 +326,19 @@ public enum Region {
* bucket in this region.
*
*/
- AP_Jakarta("ap-southeast-3");
+ AP_Jakarta("ap-southeast-3"),
+
+ /**
+ * The Middle East (UAE) Region. This region uses Amazon S3 servers
+ * located in UAE.
+ *
+ * When using buckets in this region, set the client endpoint to
+ * s3-me-central-1.amazonaws.com
on all requests to these buckets
+ * to reduce any latency experienced after the first hour of creating a
+ * bucket in this region.
+ *
+ */
+ ME_UAE("me-central-1");
/**
* Used to extract the S3 regional id from an S3 end point. Note this