You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jclouds.apache.org by ga...@apache.org on 2013/05/17 19:53:34 UTC

git commit: JCLOUDS-44: Map TooManyBuckets to proper exception

Updated Branches:
  refs/heads/master e5a43385b -> af7c00358


JCLOUDS-44: Map TooManyBuckets to proper exception


Project: http://git-wip-us.apache.org/repos/asf/incubator-jclouds/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-jclouds/commit/af7c0035
Tree: http://git-wip-us.apache.org/repos/asf/incubator-jclouds/tree/af7c0035
Diff: http://git-wip-us.apache.org/repos/asf/incubator-jclouds/diff/af7c0035

Branch: refs/heads/master
Commit: af7c003582c2ca657c2547de9f670f693aef1ca7
Parents: e5a4338
Author: Andrew Gaul <ga...@maginatics.com>
Authored: Tue May 14 15:55:30 2013 -0700
Committer: Andrew Gaul <ga...@maginatics.com>
Committed: Fri May 17 10:53:14 2013 -0700

----------------------------------------------------------------------
 .../aws/handlers/ParseAWSErrorFromXmlContent.java  |    2 ++
 .../handlers/ParseAWSErrorFromXmlContentTest.java  |   11 +++++++++++
 2 files changed, 13 insertions(+), 0 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/af7c0035/apis/sts/src/main/java/org/jclouds/aws/handlers/ParseAWSErrorFromXmlContent.java
----------------------------------------------------------------------
diff --git a/apis/sts/src/main/java/org/jclouds/aws/handlers/ParseAWSErrorFromXmlContent.java b/apis/sts/src/main/java/org/jclouds/aws/handlers/ParseAWSErrorFromXmlContent.java
index 7a347dc..53b3e96 100644
--- a/apis/sts/src/main/java/org/jclouds/aws/handlers/ParseAWSErrorFromXmlContent.java
+++ b/apis/sts/src/main/java/org/jclouds/aws/handlers/ParseAWSErrorFromXmlContent.java
@@ -103,6 +103,8 @@ public class ParseAWSErrorFromXmlContent implements HttpErrorHandler {
                exception = new UnsupportedOperationException(message, exception);
             else if ("AddressLimitExceeded".equals(errorCode))
                exception = new InsufficientResourcesException(message, exception);
+            else if ("TooManyBuckets".equals(errorCode))
+               exception = new InsufficientResourcesException(message, exception);
             else if (errorCode != null && (errorCode.indexOf("NotFound") != -1 || errorCode.endsWith(".Unknown")))
                exception = new ResourceNotFoundException(message, exception);
             else if ("IncorrectState".equals(errorCode)

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/af7c0035/apis/sts/src/test/java/org/jclouds/aws/handlers/ParseAWSErrorFromXmlContentTest.java
----------------------------------------------------------------------
diff --git a/apis/sts/src/test/java/org/jclouds/aws/handlers/ParseAWSErrorFromXmlContentTest.java b/apis/sts/src/test/java/org/jclouds/aws/handlers/ParseAWSErrorFromXmlContentTest.java
index 30092e3..bf6d4a5 100644
--- a/apis/sts/src/test/java/org/jclouds/aws/handlers/ParseAWSErrorFromXmlContentTest.java
+++ b/apis/sts/src/test/java/org/jclouds/aws/handlers/ParseAWSErrorFromXmlContentTest.java
@@ -100,6 +100,17 @@ public class ParseAWSErrorFromXmlContentTest {
    }
 
    @Test
+   public void test400WithTooManyBucketsCodeMakesInsufficientResourcesException() {
+      assertCodeMakes(
+               POST,
+               URI.create("https://ec2.us-east-1.amazonaws.com/"),
+               BAD_REQUEST.getStatusCode(),
+               "",
+               "<Response><Errors><Error><Code>TooManyBuckets</Code><Message>You have attempted to create more buckets than allowed</Message></Error></Errors><RequestID>c14f531a-cc35-4b48-8149-2655c7e6dc76</RequestID></Response>",
+               InsufficientResourcesException.class);
+   }
+
+   @Test
    public void test400WithInUseCodeSetsIllegalStateException() {
       assertCodeMakes(GET, URI.create("https://amazonaws.com/foo"), BAD_REQUEST.getStatusCode(), "",
                "<Error><Code>InvalidPlacementGroup.InUse</Code></Error>", IllegalStateException.class);