commit 3af22f844f4b4cd7f59a080a7d2fdc6110aefa70
Author: Andrew Gaul <gaul@maginatics.com>
Date:   Tue May 14 15:55:30 2013 -0700

    Translate TooManyBuckets to descriptive exception

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 221cbfd..928a655 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
@@ -105,6 +105,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)
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 ae7b8de..1087389 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
@@ -102,6 +102,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);
