You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ac...@apache.org on 2018/07/24 11:33:27 UTC

[camel] branch master updated (cb84ea2 -> 6c66a48)

This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git.


    from cb84ea2  [CAMEL-12679]ensure camel-xmlsecurity can try key directly to decrypt message
     new 98d43a4  CAMEL-12238 - Camel-AWS: Create an IAM component, deleteUser operation
     new d15d3ab  CAMEL-12238 - Camel-AWS: Create an IAM component, listUsers operation
     new 3fb3601  CAMEL-12238 - Fixed CS
     new 6c66a48  CAMEL-12238 - Updated docs

The 4 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../camel-aws/src/main/docs/aws-iam-component.adoc |   2 +
 .../camel/component/aws/iam/IAMComponent.java      |  14 +-
 .../aws/iam/IAMComponentVerifierExtension.java     |   3 +-
 .../camel/component/aws/iam/IAMConfiguration.java  |   4 +-
 .../camel/component/aws/iam/IAMConstants.java      |   5 +-
 .../camel/component/aws/iam/IAMEndpoint.java       |   7 +-
 .../camel/component/aws/iam/IAMOperations.java     |   3 +-
 .../camel/component/aws/iam/IAMProducer.java       |  44 +-
 .../component/aws/iam/AmazonIAMClientMock.java     | 977 ++++++++++-----------
 .../aws/iam/IAMComponentConfigurationTest.java     |   2 +-
 .../component/aws/iam/IAMProducerSpringTest.java   |  92 +-
 .../camel/component/aws/iam/IAMProducerTest.java   | 130 ++-
 .../aws/iam/IAMComponentSpringTest-context.xml     |  10 +
 13 files changed, 686 insertions(+), 607 deletions(-)


[camel] 03/04: CAMEL-12238 - Fixed CS

Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 3fb36019796a72cea1b1e2a0804f180800212d3a
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Tue Jul 24 13:30:33 2018 +0200

    CAMEL-12238 - Fixed CS
---
 .../camel/component/aws/iam/IAMComponent.java      |  14 +-
 .../aws/iam/IAMComponentVerifierExtension.java     |   3 +-
 .../camel/component/aws/iam/IAMConfiguration.java  |   4 +-
 .../camel/component/aws/iam/IAMConstants.java      |   5 +-
 .../camel/component/aws/iam/IAMEndpoint.java       |   7 +-
 .../camel/component/aws/iam/IAMOperations.java     |   5 +-
 .../camel/component/aws/iam/IAMProducer.java       |  11 +-
 .../component/aws/iam/AmazonIAMClientMock.java     | 965 ++++++++++-----------
 .../aws/iam/IAMComponentConfigurationTest.java     |   2 +-
 .../component/aws/iam/IAMProducerSpringTest.java   | 103 ++-
 .../camel/component/aws/iam/IAMProducerTest.java   | 144 ++-
 11 files changed, 601 insertions(+), 662 deletions(-)

diff --git a/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMComponent.java b/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMComponent.java
index 25b25c8..0dcc988 100644
--- a/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMComponent.java
+++ b/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMComponent.java
@@ -35,16 +35,16 @@ public class IAMComponent extends DefaultComponent {
     private String secretKey;
     @Metadata
     private String region;
-    @Metadata(label = "advanced")    
+    @Metadata(label = "advanced")
     private IAMConfiguration configuration;
-    
+
     public IAMComponent() {
         this(null);
     }
-    
+
     public IAMComponent(CamelContext context) {
         super(context);
-        
+
         this.configuration = new IAMConfiguration();
         registerExtension(new IAMComponentVerifierExtension());
     }
@@ -66,11 +66,11 @@ public class IAMComponent extends DefaultComponent {
         if (configuration.getIamClient() == null && (configuration.getAccessKey() == null || configuration.getSecretKey() == null)) {
             throw new IllegalArgumentException("Amazon IAM client or accessKey and secretKey must be specified");
         }
-        
+
         IAMEndpoint endpoint = new IAMEndpoint(uri, this, configuration);
         return endpoint;
     }
-    
+
     public IAMConfiguration getConfiguration() {
         return configuration;
     }
@@ -103,7 +103,7 @@ public class IAMComponent extends DefaultComponent {
     public void setSecretKey(String secretKey) {
         configuration.setSecretKey(secretKey);
     }
-    
+
     public String getRegion() {
         return configuration.getRegion();
     }
diff --git a/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMComponentVerifierExtension.java b/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMComponentVerifierExtension.java
index 048217f..e9cf7be 100644
--- a/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMComponentVerifierExtension.java
+++ b/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMComponentVerifierExtension.java
@@ -71,7 +71,8 @@ public class IAMComponentVerifierExtension extends DefaultComponentVerifierExten
             IAMConfiguration configuration = setProperties(new IAMConfiguration(), parameters);
             AWSCredentials credentials = new BasicAWSCredentials(configuration.getAccessKey(), configuration.getSecretKey());
             AWSCredentialsProvider credentialsProvider = new AWSStaticCredentialsProvider(credentials);
-            AmazonIdentityManagement client = AmazonIdentityManagementClientBuilder.standard().withCredentials(credentialsProvider).withRegion(Regions.valueOf(configuration.getRegion())).build();
+            AmazonIdentityManagement client = AmazonIdentityManagementClientBuilder.standard().withCredentials(credentialsProvider)
+                .withRegion(Regions.valueOf(configuration.getRegion())).build();
             client.listAccessKeys();
         } catch (SdkClientException e) {
             ResultErrorBuilder errorBuilder = ResultErrorBuilder.withCodeAndDescription(VerificationError.StandardCode.AUTHENTICATION, e.getMessage())
diff --git a/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMConfiguration.java b/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMConfiguration.java
index 82e97b7..5c5dac7 100644
--- a/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMConfiguration.java
+++ b/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMConfiguration.java
@@ -16,9 +16,7 @@
  */
 package org.apache.camel.component.aws.iam;
 
-import com.amazonaws.services.identitymanagement.AmazonIdentityManagement;
 import com.amazonaws.services.identitymanagement.AmazonIdentityManagementClient;
-import com.amazonaws.services.kms.AWSKMS;
 
 import org.apache.camel.RuntimeCamelException;
 import org.apache.camel.spi.Metadata;
@@ -124,7 +122,7 @@ public class IAMConfiguration implements Cloneable {
     public void setRegion(String region) {
         this.region = region;
     }
-    
+
     // *************************************************
     //
     // *************************************************
diff --git a/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMConstants.java b/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMConstants.java
index ba0db9a..6fb9cfb 100644
--- a/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMConstants.java
+++ b/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMConstants.java
@@ -18,9 +18,8 @@ package org.apache.camel.component.aws.iam;
 
 /**
  * Constants used in Camel AWS IAM module
- * 
  */
 public interface IAMConstants {
-    String OPERATION                = "CamelAwsIAMOperation";
-    String USERNAME                 = "CamelAwsIAMUsername";
+    String OPERATION = "CamelAwsIAMOperation";
+    String USERNAME = "CamelAwsIAMUsername";
 }
diff --git a/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMEndpoint.java b/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMEndpoint.java
index c528275..8c84fac 100644
--- a/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMEndpoint.java
+++ b/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMEndpoint.java
@@ -22,7 +22,6 @@ import com.amazonaws.auth.AWSCredentialsProvider;
 import com.amazonaws.auth.AWSStaticCredentialsProvider;
 import com.amazonaws.auth.BasicAWSCredentials;
 import com.amazonaws.services.identitymanagement.AmazonIdentityManagement;
-import com.amazonaws.services.identitymanagement.AmazonIdentityManagementClient;
 import com.amazonaws.services.identitymanagement.AmazonIdentityManagementClientBuilder;
 
 import org.apache.camel.Component;
@@ -68,12 +67,12 @@ public class IAMEndpoint extends ScheduledPollEndpoint {
 
         iamClient = configuration.getIamClient() != null ? configuration.getIamClient() : createKMSClient();
     }
-    
+
     @Override
     public void doStop() throws Exception {
         if (ObjectHelper.isEmpty(configuration.getIamClient())) {
             if (iamClient != null) {
-            	iamClient.shutdown();
+                iamClient.shutdown();
             }
         }
         super.doStop();
@@ -88,7 +87,7 @@ public class IAMEndpoint extends ScheduledPollEndpoint {
     }
 
     AmazonIdentityManagement createKMSClient() {
-    	AmazonIdentityManagement client = null;
+        AmazonIdentityManagement client = null;
         ClientConfiguration clientConfiguration = null;
         AmazonIdentityManagementClientBuilder clientBuilder = null;
         boolean isClientConfigFound = false;
diff --git a/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMOperations.java b/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMOperations.java
index 7559ec7..1ee3536 100644
--- a/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMOperations.java
+++ b/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMOperations.java
@@ -18,8 +18,5 @@ package org.apache.camel.component.aws.iam;
 
 public enum IAMOperations {
 
-    listAccessKeys,
-    createUser,
-    deleteUser,
-    listUsers
+    listAccessKeys, createUser, deleteUser, listUsers
 }
diff --git a/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMProducer.java b/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMProducer.java
index 4fcbaa0..785bd11 100644
--- a/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMProducer.java
+++ b/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMProducer.java
@@ -23,7 +23,6 @@ import com.amazonaws.services.identitymanagement.model.CreateUserResult;
 import com.amazonaws.services.identitymanagement.model.DeleteUserRequest;
 import com.amazonaws.services.identitymanagement.model.DeleteUserResult;
 import com.amazonaws.services.identitymanagement.model.ListAccessKeysResult;
-import com.amazonaws.services.identitymanagement.model.ListUsersRequest;
 import com.amazonaws.services.identitymanagement.model.ListUsersResult;
 
 import org.apache.camel.Endpoint;
@@ -85,7 +84,7 @@ public class IAMProducer extends DefaultProducer {
     @Override
     public String toString() {
         if (iamProducerToString == null) {
-        	iamProducerToString = "IAMProducer[" + URISupport.sanitizeUri(getEndpoint().getEndpointUri()) + "]";
+            iamProducerToString = "IAMProducer[" + URISupport.sanitizeUri(getEndpoint().getEndpointUri()) + "]";
         }
         return iamProducerToString;
     }
@@ -106,7 +105,7 @@ public class IAMProducer extends DefaultProducer {
         Message message = getMessageForResponse(exchange);
         message.setBody(result);
     }
-    
+
     private void createUser(AmazonIdentityManagement iamClient, Exchange exchange) {
         CreateUserRequest request = new CreateUserRequest();
         if (ObjectHelper.isNotEmpty(exchange.getIn().getHeader(IAMConstants.USERNAME))) {
@@ -123,7 +122,7 @@ public class IAMProducer extends DefaultProducer {
         Message message = getMessageForResponse(exchange);
         message.setBody(result);
     }
-    
+
     private void deleteUser(AmazonIdentityManagement iamClient, Exchange exchange) {
         DeleteUserRequest request = new DeleteUserRequest();
         if (ObjectHelper.isNotEmpty(exchange.getIn().getHeader(IAMConstants.USERNAME))) {
@@ -140,7 +139,7 @@ public class IAMProducer extends DefaultProducer {
         Message message = getMessageForResponse(exchange);
         message.setBody(result);
     }
-    
+
     private void listUsers(AmazonIdentityManagement iamClient, Exchange exchange) {
         ListUsersResult result;
         try {
@@ -152,4 +151,4 @@ public class IAMProducer extends DefaultProducer {
         Message message = getMessageForResponse(exchange);
         message.setBody(result);
     }
-}
\ No newline at end of file
+}
diff --git a/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/AmazonIAMClientMock.java b/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/AmazonIAMClientMock.java
index c21efdd..5ed1077 100644
--- a/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/AmazonIAMClientMock.java
+++ b/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/AmazonIAMClientMock.java
@@ -28,634 +28,602 @@ import com.amazonaws.services.identitymanagement.AmazonIdentityManagementClient;
 import com.amazonaws.services.identitymanagement.model.*;
 import com.amazonaws.services.identitymanagement.waiters.AmazonIdentityManagementWaiters;
 
-
 public class AmazonIAMClientMock extends AmazonIdentityManagementClient {
 
-	@Override
-	public void setEndpoint(String endpoint) {
-	}
+    @Override
+    public void setEndpoint(String endpoint) {
+    }
 
-	@Override
-	public void setRegion(Region region) {	
-	}
+    @Override
+    public void setRegion(Region region) {
+    }
 
-	@Override
-	public AddClientIDToOpenIDConnectProviderResult addClientIDToOpenIDConnectProvider(
-			AddClientIDToOpenIDConnectProviderRequest addClientIDToOpenIDConnectProviderRequest) {
+    @Override
+    public AddClientIDToOpenIDConnectProviderResult addClientIDToOpenIDConnectProvider(AddClientIDToOpenIDConnectProviderRequest addClientIDToOpenIDConnectProviderRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public AddRoleToInstanceProfileResult addRoleToInstanceProfile(
-			AddRoleToInstanceProfileRequest addRoleToInstanceProfileRequest) {
+    @Override
+    public AddRoleToInstanceProfileResult addRoleToInstanceProfile(AddRoleToInstanceProfileRequest addRoleToInstanceProfileRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public AddUserToGroupResult addUserToGroup(AddUserToGroupRequest addUserToGroupRequest) {
+    @Override
+    public AddUserToGroupResult addUserToGroup(AddUserToGroupRequest addUserToGroupRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public AttachGroupPolicyResult attachGroupPolicy(AttachGroupPolicyRequest attachGroupPolicyRequest) {
+    @Override
+    public AttachGroupPolicyResult attachGroupPolicy(AttachGroupPolicyRequest attachGroupPolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public AttachRolePolicyResult attachRolePolicy(AttachRolePolicyRequest attachRolePolicyRequest) {
+    @Override
+    public AttachRolePolicyResult attachRolePolicy(AttachRolePolicyRequest attachRolePolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public AttachUserPolicyResult attachUserPolicy(AttachUserPolicyRequest attachUserPolicyRequest) {
+    @Override
+    public AttachUserPolicyResult attachUserPolicy(AttachUserPolicyRequest attachUserPolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ChangePasswordResult changePassword(ChangePasswordRequest changePasswordRequest) {
+    @Override
+    public ChangePasswordResult changePassword(ChangePasswordRequest changePasswordRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public CreateAccessKeyResult createAccessKey(CreateAccessKeyRequest createAccessKeyRequest) {
+    @Override
+    public CreateAccessKeyResult createAccessKey(CreateAccessKeyRequest createAccessKeyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public CreateAccessKeyResult createAccessKey() {
+    @Override
+    public CreateAccessKeyResult createAccessKey() {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public CreateAccountAliasResult createAccountAlias(CreateAccountAliasRequest createAccountAliasRequest) {
+    @Override
+    public CreateAccountAliasResult createAccountAlias(CreateAccountAliasRequest createAccountAliasRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public CreateGroupResult createGroup(CreateGroupRequest createGroupRequest) {
+    @Override
+    public CreateGroupResult createGroup(CreateGroupRequest createGroupRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public CreateInstanceProfileResult createInstanceProfile(
-			CreateInstanceProfileRequest createInstanceProfileRequest) {
+    @Override
+    public CreateInstanceProfileResult createInstanceProfile(CreateInstanceProfileRequest createInstanceProfileRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public CreateLoginProfileResult createLoginProfile(CreateLoginProfileRequest createLoginProfileRequest) {
+    @Override
+    public CreateLoginProfileResult createLoginProfile(CreateLoginProfileRequest createLoginProfileRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public CreateOpenIDConnectProviderResult createOpenIDConnectProvider(
-			CreateOpenIDConnectProviderRequest createOpenIDConnectProviderRequest) {
+    @Override
+    public CreateOpenIDConnectProviderResult createOpenIDConnectProvider(CreateOpenIDConnectProviderRequest createOpenIDConnectProviderRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public CreatePolicyResult createPolicy(CreatePolicyRequest createPolicyRequest) {
+    @Override
+    public CreatePolicyResult createPolicy(CreatePolicyRequest createPolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public CreatePolicyVersionResult createPolicyVersion(CreatePolicyVersionRequest createPolicyVersionRequest) {
+    @Override
+    public CreatePolicyVersionResult createPolicyVersion(CreatePolicyVersionRequest createPolicyVersionRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public CreateRoleResult createRole(CreateRoleRequest createRoleRequest) {
+    @Override
+    public CreateRoleResult createRole(CreateRoleRequest createRoleRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public CreateSAMLProviderResult createSAMLProvider(CreateSAMLProviderRequest createSAMLProviderRequest) {
+    @Override
+    public CreateSAMLProviderResult createSAMLProvider(CreateSAMLProviderRequest createSAMLProviderRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public CreateServiceLinkedRoleResult createServiceLinkedRole(
-			CreateServiceLinkedRoleRequest createServiceLinkedRoleRequest) {
+    @Override
+    public CreateServiceLinkedRoleResult createServiceLinkedRole(CreateServiceLinkedRoleRequest createServiceLinkedRoleRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public CreateServiceSpecificCredentialResult createServiceSpecificCredential(
-			CreateServiceSpecificCredentialRequest createServiceSpecificCredentialRequest) {
+    @Override
+    public CreateServiceSpecificCredentialResult createServiceSpecificCredential(CreateServiceSpecificCredentialRequest createServiceSpecificCredentialRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public CreateUserResult createUser(CreateUserRequest createUserRequest) {
+    @Override
+    public CreateUserResult createUser(CreateUserRequest createUserRequest) {
         CreateUserResult result = new CreateUserResult();
         User user = new User();
         user.setUserName("test");
         result.setUser(user);
         return result;
-	}
+    }
 
-	@Override
-	public CreateVirtualMFADeviceResult createVirtualMFADevice(
-			CreateVirtualMFADeviceRequest createVirtualMFADeviceRequest) {
+    @Override
+    public CreateVirtualMFADeviceResult createVirtualMFADevice(CreateVirtualMFADeviceRequest createVirtualMFADeviceRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public DeactivateMFADeviceResult deactivateMFADevice(DeactivateMFADeviceRequest deactivateMFADeviceRequest) {
+    @Override
+    public DeactivateMFADeviceResult deactivateMFADevice(DeactivateMFADeviceRequest deactivateMFADeviceRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public DeleteAccessKeyResult deleteAccessKey(DeleteAccessKeyRequest deleteAccessKeyRequest) {
+    @Override
+    public DeleteAccessKeyResult deleteAccessKey(DeleteAccessKeyRequest deleteAccessKeyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public DeleteAccountAliasResult deleteAccountAlias(DeleteAccountAliasRequest deleteAccountAliasRequest) {
+    @Override
+    public DeleteAccountAliasResult deleteAccountAlias(DeleteAccountAliasRequest deleteAccountAliasRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public DeleteAccountPasswordPolicyResult deleteAccountPasswordPolicy(
-			DeleteAccountPasswordPolicyRequest deleteAccountPasswordPolicyRequest) {
+    @Override
+    public DeleteAccountPasswordPolicyResult deleteAccountPasswordPolicy(DeleteAccountPasswordPolicyRequest deleteAccountPasswordPolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public DeleteAccountPasswordPolicyResult deleteAccountPasswordPolicy() {
+    @Override
+    public DeleteAccountPasswordPolicyResult deleteAccountPasswordPolicy() {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public DeleteGroupResult deleteGroup(DeleteGroupRequest deleteGroupRequest) {
+    @Override
+    public DeleteGroupResult deleteGroup(DeleteGroupRequest deleteGroupRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public DeleteGroupPolicyResult deleteGroupPolicy(DeleteGroupPolicyRequest deleteGroupPolicyRequest) {
+    @Override
+    public DeleteGroupPolicyResult deleteGroupPolicy(DeleteGroupPolicyRequest deleteGroupPolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public DeleteInstanceProfileResult deleteInstanceProfile(
-			DeleteInstanceProfileRequest deleteInstanceProfileRequest) {
+    @Override
+    public DeleteInstanceProfileResult deleteInstanceProfile(DeleteInstanceProfileRequest deleteInstanceProfileRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public DeleteLoginProfileResult deleteLoginProfile(DeleteLoginProfileRequest deleteLoginProfileRequest) {
+    @Override
+    public DeleteLoginProfileResult deleteLoginProfile(DeleteLoginProfileRequest deleteLoginProfileRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public DeleteOpenIDConnectProviderResult deleteOpenIDConnectProvider(
-			DeleteOpenIDConnectProviderRequest deleteOpenIDConnectProviderRequest) {
+    @Override
+    public DeleteOpenIDConnectProviderResult deleteOpenIDConnectProvider(DeleteOpenIDConnectProviderRequest deleteOpenIDConnectProviderRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public DeletePolicyResult deletePolicy(DeletePolicyRequest deletePolicyRequest) {
+    @Override
+    public DeletePolicyResult deletePolicy(DeletePolicyRequest deletePolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public DeletePolicyVersionResult deletePolicyVersion(DeletePolicyVersionRequest deletePolicyVersionRequest) {
+    @Override
+    public DeletePolicyVersionResult deletePolicyVersion(DeletePolicyVersionRequest deletePolicyVersionRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public DeleteRoleResult deleteRole(DeleteRoleRequest deleteRoleRequest) {
+    @Override
+    public DeleteRoleResult deleteRole(DeleteRoleRequest deleteRoleRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public DeleteRolePolicyResult deleteRolePolicy(DeleteRolePolicyRequest deleteRolePolicyRequest) {
+    @Override
+    public DeleteRolePolicyResult deleteRolePolicy(DeleteRolePolicyRequest deleteRolePolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public DeleteSAMLProviderResult deleteSAMLProvider(DeleteSAMLProviderRequest deleteSAMLProviderRequest) {
+    @Override
+    public DeleteSAMLProviderResult deleteSAMLProvider(DeleteSAMLProviderRequest deleteSAMLProviderRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public DeleteSSHPublicKeyResult deleteSSHPublicKey(DeleteSSHPublicKeyRequest deleteSSHPublicKeyRequest) {
+    @Override
+    public DeleteSSHPublicKeyResult deleteSSHPublicKey(DeleteSSHPublicKeyRequest deleteSSHPublicKeyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public DeleteServerCertificateResult deleteServerCertificate(
-			DeleteServerCertificateRequest deleteServerCertificateRequest) {
+    @Override
+    public DeleteServerCertificateResult deleteServerCertificate(DeleteServerCertificateRequest deleteServerCertificateRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public DeleteServiceLinkedRoleResult deleteServiceLinkedRole(
-			DeleteServiceLinkedRoleRequest deleteServiceLinkedRoleRequest) {
+    @Override
+    public DeleteServiceLinkedRoleResult deleteServiceLinkedRole(DeleteServiceLinkedRoleRequest deleteServiceLinkedRoleRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public DeleteServiceSpecificCredentialResult deleteServiceSpecificCredential(
-			DeleteServiceSpecificCredentialRequest deleteServiceSpecificCredentialRequest) {
+    @Override
+    public DeleteServiceSpecificCredentialResult deleteServiceSpecificCredential(DeleteServiceSpecificCredentialRequest deleteServiceSpecificCredentialRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public DeleteSigningCertificateResult deleteSigningCertificate(
-			DeleteSigningCertificateRequest deleteSigningCertificateRequest) {
+    @Override
+    public DeleteSigningCertificateResult deleteSigningCertificate(DeleteSigningCertificateRequest deleteSigningCertificateRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public DeleteUserResult deleteUser(DeleteUserRequest deleteUserRequest) {
+    @Override
+    public DeleteUserResult deleteUser(DeleteUserRequest deleteUserRequest) {
         DeleteUserResult res = new DeleteUserResult();
         return res;
-	}
+    }
 
-	@Override
-	public DeleteUserPolicyResult deleteUserPolicy(DeleteUserPolicyRequest deleteUserPolicyRequest) {
+    @Override
+    public DeleteUserPolicyResult deleteUserPolicy(DeleteUserPolicyRequest deleteUserPolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public DeleteVirtualMFADeviceResult deleteVirtualMFADevice(
-			DeleteVirtualMFADeviceRequest deleteVirtualMFADeviceRequest) {
+    @Override
+    public DeleteVirtualMFADeviceResult deleteVirtualMFADevice(DeleteVirtualMFADeviceRequest deleteVirtualMFADeviceRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public DetachGroupPolicyResult detachGroupPolicy(DetachGroupPolicyRequest detachGroupPolicyRequest) {
+    @Override
+    public DetachGroupPolicyResult detachGroupPolicy(DetachGroupPolicyRequest detachGroupPolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public DetachRolePolicyResult detachRolePolicy(DetachRolePolicyRequest detachRolePolicyRequest) {
+    @Override
+    public DetachRolePolicyResult detachRolePolicy(DetachRolePolicyRequest detachRolePolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public DetachUserPolicyResult detachUserPolicy(DetachUserPolicyRequest detachUserPolicyRequest) {
+    @Override
+    public DetachUserPolicyResult detachUserPolicy(DetachUserPolicyRequest detachUserPolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public EnableMFADeviceResult enableMFADevice(EnableMFADeviceRequest enableMFADeviceRequest) {
+    @Override
+    public EnableMFADeviceResult enableMFADevice(EnableMFADeviceRequest enableMFADeviceRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GenerateCredentialReportResult generateCredentialReport(
-			GenerateCredentialReportRequest generateCredentialReportRequest) {
+    @Override
+    public GenerateCredentialReportResult generateCredentialReport(GenerateCredentialReportRequest generateCredentialReportRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GenerateCredentialReportResult generateCredentialReport() {
+    @Override
+    public GenerateCredentialReportResult generateCredentialReport() {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetAccessKeyLastUsedResult getAccessKeyLastUsed(GetAccessKeyLastUsedRequest getAccessKeyLastUsedRequest) {
+    @Override
+    public GetAccessKeyLastUsedResult getAccessKeyLastUsed(GetAccessKeyLastUsedRequest getAccessKeyLastUsedRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetAccountAuthorizationDetailsResult getAccountAuthorizationDetails(
-			GetAccountAuthorizationDetailsRequest getAccountAuthorizationDetailsRequest) {
+    @Override
+    public GetAccountAuthorizationDetailsResult getAccountAuthorizationDetails(GetAccountAuthorizationDetailsRequest getAccountAuthorizationDetailsRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetAccountAuthorizationDetailsResult getAccountAuthorizationDetails() {
+    @Override
+    public GetAccountAuthorizationDetailsResult getAccountAuthorizationDetails() {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetAccountPasswordPolicyResult getAccountPasswordPolicy(
-			GetAccountPasswordPolicyRequest getAccountPasswordPolicyRequest) {
+    @Override
+    public GetAccountPasswordPolicyResult getAccountPasswordPolicy(GetAccountPasswordPolicyRequest getAccountPasswordPolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetAccountPasswordPolicyResult getAccountPasswordPolicy() {
+    @Override
+    public GetAccountPasswordPolicyResult getAccountPasswordPolicy() {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetAccountSummaryResult getAccountSummary(GetAccountSummaryRequest getAccountSummaryRequest) {
+    @Override
+    public GetAccountSummaryResult getAccountSummary(GetAccountSummaryRequest getAccountSummaryRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetAccountSummaryResult getAccountSummary() {
+    @Override
+    public GetAccountSummaryResult getAccountSummary() {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetContextKeysForCustomPolicyResult getContextKeysForCustomPolicy(
-			GetContextKeysForCustomPolicyRequest getContextKeysForCustomPolicyRequest) {
+    @Override
+    public GetContextKeysForCustomPolicyResult getContextKeysForCustomPolicy(GetContextKeysForCustomPolicyRequest getContextKeysForCustomPolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetContextKeysForPrincipalPolicyResult getContextKeysForPrincipalPolicy(
-			GetContextKeysForPrincipalPolicyRequest getContextKeysForPrincipalPolicyRequest) {
+    @Override
+    public GetContextKeysForPrincipalPolicyResult getContextKeysForPrincipalPolicy(GetContextKeysForPrincipalPolicyRequest getContextKeysForPrincipalPolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetCredentialReportResult getCredentialReport(GetCredentialReportRequest getCredentialReportRequest) {
+    @Override
+    public GetCredentialReportResult getCredentialReport(GetCredentialReportRequest getCredentialReportRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetCredentialReportResult getCredentialReport() {
+    @Override
+    public GetCredentialReportResult getCredentialReport() {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetGroupResult getGroup(GetGroupRequest getGroupRequest) {
+    @Override
+    public GetGroupResult getGroup(GetGroupRequest getGroupRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetGroupPolicyResult getGroupPolicy(GetGroupPolicyRequest getGroupPolicyRequest) {
+    @Override
+    public GetGroupPolicyResult getGroupPolicy(GetGroupPolicyRequest getGroupPolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetInstanceProfileResult getInstanceProfile(GetInstanceProfileRequest getInstanceProfileRequest) {
+    @Override
+    public GetInstanceProfileResult getInstanceProfile(GetInstanceProfileRequest getInstanceProfileRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetLoginProfileResult getLoginProfile(GetLoginProfileRequest getLoginProfileRequest) {
+    @Override
+    public GetLoginProfileResult getLoginProfile(GetLoginProfileRequest getLoginProfileRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetOpenIDConnectProviderResult getOpenIDConnectProvider(
-			GetOpenIDConnectProviderRequest getOpenIDConnectProviderRequest) {
+    @Override
+    public GetOpenIDConnectProviderResult getOpenIDConnectProvider(GetOpenIDConnectProviderRequest getOpenIDConnectProviderRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetPolicyResult getPolicy(GetPolicyRequest getPolicyRequest) {
+    @Override
+    public GetPolicyResult getPolicy(GetPolicyRequest getPolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetPolicyVersionResult getPolicyVersion(GetPolicyVersionRequest getPolicyVersionRequest) {
+    @Override
+    public GetPolicyVersionResult getPolicyVersion(GetPolicyVersionRequest getPolicyVersionRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetRoleResult getRole(GetRoleRequest getRoleRequest) {
+    @Override
+    public GetRoleResult getRole(GetRoleRequest getRoleRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetRolePolicyResult getRolePolicy(GetRolePolicyRequest getRolePolicyRequest) {
+    @Override
+    public GetRolePolicyResult getRolePolicy(GetRolePolicyRequest getRolePolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetSAMLProviderResult getSAMLProvider(GetSAMLProviderRequest getSAMLProviderRequest) {
+    @Override
+    public GetSAMLProviderResult getSAMLProvider(GetSAMLProviderRequest getSAMLProviderRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetSSHPublicKeyResult getSSHPublicKey(GetSSHPublicKeyRequest getSSHPublicKeyRequest) {
+    @Override
+    public GetSSHPublicKeyResult getSSHPublicKey(GetSSHPublicKeyRequest getSSHPublicKeyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetServerCertificateResult getServerCertificate(GetServerCertificateRequest getServerCertificateRequest) {
+    @Override
+    public GetServerCertificateResult getServerCertificate(GetServerCertificateRequest getServerCertificateRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetServiceLinkedRoleDeletionStatusResult getServiceLinkedRoleDeletionStatus(
-			GetServiceLinkedRoleDeletionStatusRequest getServiceLinkedRoleDeletionStatusRequest) {
+    @Override
+    public GetServiceLinkedRoleDeletionStatusResult getServiceLinkedRoleDeletionStatus(GetServiceLinkedRoleDeletionStatusRequest getServiceLinkedRoleDeletionStatusRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetUserResult getUser(GetUserRequest getUserRequest) {
+    @Override
+    public GetUserResult getUser(GetUserRequest getUserRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetUserResult getUser() {
+    @Override
+    public GetUserResult getUser() {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public GetUserPolicyResult getUserPolicy(GetUserPolicyRequest getUserPolicyRequest) {
+    @Override
+    public GetUserPolicyResult getUserPolicy(GetUserPolicyRequest getUserPolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListAccessKeysResult listAccessKeys(ListAccessKeysRequest listAccessKeysRequest) {
+    @Override
+    public ListAccessKeysResult listAccessKeys(ListAccessKeysRequest listAccessKeysRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListAccessKeysResult listAccessKeys() {
-       ListAccessKeysResult result = new ListAccessKeysResult();
-       Collection<AccessKeyMetadata> accessKeyMetadata = new ArrayList<AccessKeyMetadata>();
-       AccessKeyMetadata meta = new AccessKeyMetadata();
-       meta.setAccessKeyId("1");
-       meta.setCreateDate(new Date());
-       meta.setStatus(StatusType.Active);
-       meta.setUserName("test");
-       accessKeyMetadata.add(meta);
-	   result.setAccessKeyMetadata(accessKeyMetadata);
-	   return result;
-	}
+    @Override
+    public ListAccessKeysResult listAccessKeys() {
+        ListAccessKeysResult result = new ListAccessKeysResult();
+        Collection<AccessKeyMetadata> accessKeyMetadata = new ArrayList<AccessKeyMetadata>();
+        AccessKeyMetadata meta = new AccessKeyMetadata();
+        meta.setAccessKeyId("1");
+        meta.setCreateDate(new Date());
+        meta.setStatus(StatusType.Active);
+        meta.setUserName("test");
+        accessKeyMetadata.add(meta);
+        result.setAccessKeyMetadata(accessKeyMetadata);
+        return result;
+    }
 
-	@Override
-	public ListAccountAliasesResult listAccountAliases(ListAccountAliasesRequest listAccountAliasesRequest) {
+    @Override
+    public ListAccountAliasesResult listAccountAliases(ListAccountAliasesRequest listAccountAliasesRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListAccountAliasesResult listAccountAliases() {
+    @Override
+    public ListAccountAliasesResult listAccountAliases() {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListAttachedGroupPoliciesResult listAttachedGroupPolicies(
-			ListAttachedGroupPoliciesRequest listAttachedGroupPoliciesRequest) {
+    @Override
+    public ListAttachedGroupPoliciesResult listAttachedGroupPolicies(ListAttachedGroupPoliciesRequest listAttachedGroupPoliciesRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListAttachedRolePoliciesResult listAttachedRolePolicies(
-			ListAttachedRolePoliciesRequest listAttachedRolePoliciesRequest) {
+    @Override
+    public ListAttachedRolePoliciesResult listAttachedRolePolicies(ListAttachedRolePoliciesRequest listAttachedRolePoliciesRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListAttachedUserPoliciesResult listAttachedUserPolicies(
-			ListAttachedUserPoliciesRequest listAttachedUserPoliciesRequest) {
+    @Override
+    public ListAttachedUserPoliciesResult listAttachedUserPolicies(ListAttachedUserPoliciesRequest listAttachedUserPoliciesRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListEntitiesForPolicyResult listEntitiesForPolicy(
-			ListEntitiesForPolicyRequest listEntitiesForPolicyRequest) {
+    @Override
+    public ListEntitiesForPolicyResult listEntitiesForPolicy(ListEntitiesForPolicyRequest listEntitiesForPolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListGroupPoliciesResult listGroupPolicies(ListGroupPoliciesRequest listGroupPoliciesRequest) {
+    @Override
+    public ListGroupPoliciesResult listGroupPolicies(ListGroupPoliciesRequest listGroupPoliciesRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListGroupsResult listGroups(ListGroupsRequest listGroupsRequest) {
+    @Override
+    public ListGroupsResult listGroups(ListGroupsRequest listGroupsRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListGroupsResult listGroups() {
+    @Override
+    public ListGroupsResult listGroups() {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListGroupsForUserResult listGroupsForUser(ListGroupsForUserRequest listGroupsForUserRequest) {
+    @Override
+    public ListGroupsForUserResult listGroupsForUser(ListGroupsForUserRequest listGroupsForUserRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListInstanceProfilesResult listInstanceProfiles(ListInstanceProfilesRequest listInstanceProfilesRequest) {
+    @Override
+    public ListInstanceProfilesResult listInstanceProfiles(ListInstanceProfilesRequest listInstanceProfilesRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListInstanceProfilesResult listInstanceProfiles() {
+    @Override
+    public ListInstanceProfilesResult listInstanceProfiles() {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListInstanceProfilesForRoleResult listInstanceProfilesForRole(
-			ListInstanceProfilesForRoleRequest listInstanceProfilesForRoleRequest) {
+    @Override
+    public ListInstanceProfilesForRoleResult listInstanceProfilesForRole(ListInstanceProfilesForRoleRequest listInstanceProfilesForRoleRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListMFADevicesResult listMFADevices(ListMFADevicesRequest listMFADevicesRequest) {
+    @Override
+    public ListMFADevicesResult listMFADevices(ListMFADevicesRequest listMFADevicesRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListMFADevicesResult listMFADevices() {
+    @Override
+    public ListMFADevicesResult listMFADevices() {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListOpenIDConnectProvidersResult listOpenIDConnectProviders(
-			ListOpenIDConnectProvidersRequest listOpenIDConnectProvidersRequest) {
+    @Override
+    public ListOpenIDConnectProvidersResult listOpenIDConnectProviders(ListOpenIDConnectProvidersRequest listOpenIDConnectProvidersRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListOpenIDConnectProvidersResult listOpenIDConnectProviders() {
+    @Override
+    public ListOpenIDConnectProvidersResult listOpenIDConnectProviders() {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListPoliciesResult listPolicies(ListPoliciesRequest listPoliciesRequest) {
+    @Override
+    public ListPoliciesResult listPolicies(ListPoliciesRequest listPoliciesRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListPoliciesResult listPolicies() {
+    @Override
+    public ListPoliciesResult listPolicies() {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListPolicyVersionsResult listPolicyVersions(ListPolicyVersionsRequest listPolicyVersionsRequest) {
+    @Override
+    public ListPolicyVersionsResult listPolicyVersions(ListPolicyVersionsRequest listPolicyVersionsRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListRolePoliciesResult listRolePolicies(ListRolePoliciesRequest listRolePoliciesRequest) {
+    @Override
+    public ListRolePoliciesResult listRolePolicies(ListRolePoliciesRequest listRolePoliciesRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListRolesResult listRoles(ListRolesRequest listRolesRequest) {
+    @Override
+    public ListRolesResult listRoles(ListRolesRequest listRolesRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListRolesResult listRoles() {
+    @Override
+    public ListRolesResult listRoles() {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListSAMLProvidersResult listSAMLProviders(ListSAMLProvidersRequest listSAMLProvidersRequest) {
+    @Override
+    public ListSAMLProvidersResult listSAMLProviders(ListSAMLProvidersRequest listSAMLProvidersRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListSAMLProvidersResult listSAMLProviders() {
+    @Override
+    public ListSAMLProvidersResult listSAMLProviders() {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListSSHPublicKeysResult listSSHPublicKeys(ListSSHPublicKeysRequest listSSHPublicKeysRequest) {
+    @Override
+    public ListSSHPublicKeysResult listSSHPublicKeys(ListSSHPublicKeysRequest listSSHPublicKeysRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListSSHPublicKeysResult listSSHPublicKeys() {
+    @Override
+    public ListSSHPublicKeysResult listSSHPublicKeys() {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListServerCertificatesResult listServerCertificates(
-			ListServerCertificatesRequest listServerCertificatesRequest) {
+    @Override
+    public ListServerCertificatesResult listServerCertificates(ListServerCertificatesRequest listServerCertificatesRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListServerCertificatesResult listServerCertificates() {
+    @Override
+    public ListServerCertificatesResult listServerCertificates() {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListServiceSpecificCredentialsResult listServiceSpecificCredentials(
-			ListServiceSpecificCredentialsRequest listServiceSpecificCredentialsRequest) {
+    @Override
+    public ListServiceSpecificCredentialsResult listServiceSpecificCredentials(ListServiceSpecificCredentialsRequest listServiceSpecificCredentialsRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListSigningCertificatesResult listSigningCertificates(
-			ListSigningCertificatesRequest listSigningCertificatesRequest) {
+    @Override
+    public ListSigningCertificatesResult listSigningCertificates(ListSigningCertificatesRequest listSigningCertificatesRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListSigningCertificatesResult listSigningCertificates() {
+    @Override
+    public ListSigningCertificatesResult listSigningCertificates() {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListUserPoliciesResult listUserPolicies(ListUserPoliciesRequest listUserPoliciesRequest) {
+    @Override
+    public ListUserPoliciesResult listUserPolicies(ListUserPoliciesRequest listUserPoliciesRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListUsersResult listUsers(ListUsersRequest listUsersRequest) {
+    @Override
+    public ListUsersResult listUsers(ListUsersRequest listUsersRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListUsersResult listUsers() {
+    @Override
+    public ListUsersResult listUsers() {
         ListUsersResult res = new ListUsersResult();
         List<User> list = new ArrayList<>();
         User user = new User();
@@ -663,183 +631,166 @@ public class AmazonIAMClientMock extends AmazonIdentityManagementClient {
         list.add(user);
         res.setUsers(list);
         return res;
-	}
+    }
 
-	@Override
-	public ListVirtualMFADevicesResult listVirtualMFADevices(
-			ListVirtualMFADevicesRequest listVirtualMFADevicesRequest) {
+    @Override
+    public ListVirtualMFADevicesResult listVirtualMFADevices(ListVirtualMFADevicesRequest listVirtualMFADevicesRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ListVirtualMFADevicesResult listVirtualMFADevices() {
+    @Override
+    public ListVirtualMFADevicesResult listVirtualMFADevices() {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public PutGroupPolicyResult putGroupPolicy(PutGroupPolicyRequest putGroupPolicyRequest) {
+    @Override
+    public PutGroupPolicyResult putGroupPolicy(PutGroupPolicyRequest putGroupPolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public PutRolePolicyResult putRolePolicy(PutRolePolicyRequest putRolePolicyRequest) {
+    @Override
+    public PutRolePolicyResult putRolePolicy(PutRolePolicyRequest putRolePolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public PutUserPolicyResult putUserPolicy(PutUserPolicyRequest putUserPolicyRequest) {
+    @Override
+    public PutUserPolicyResult putUserPolicy(PutUserPolicyRequest putUserPolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public RemoveClientIDFromOpenIDConnectProviderResult removeClientIDFromOpenIDConnectProvider(
-			RemoveClientIDFromOpenIDConnectProviderRequest removeClientIDFromOpenIDConnectProviderRequest) {
+    @Override
+    public RemoveClientIDFromOpenIDConnectProviderResult removeClientIDFromOpenIDConnectProvider(RemoveClientIDFromOpenIDConnectProviderRequest removeClientIDFromOpenIDConnectProviderRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public RemoveRoleFromInstanceProfileResult removeRoleFromInstanceProfile(
-			RemoveRoleFromInstanceProfileRequest removeRoleFromInstanceProfileRequest) {
+    @Override
+    public RemoveRoleFromInstanceProfileResult removeRoleFromInstanceProfile(RemoveRoleFromInstanceProfileRequest removeRoleFromInstanceProfileRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public RemoveUserFromGroupResult removeUserFromGroup(RemoveUserFromGroupRequest removeUserFromGroupRequest) {
+    @Override
+    public RemoveUserFromGroupResult removeUserFromGroup(RemoveUserFromGroupRequest removeUserFromGroupRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ResetServiceSpecificCredentialResult resetServiceSpecificCredential(
-			ResetServiceSpecificCredentialRequest resetServiceSpecificCredentialRequest) {
+    @Override
+    public ResetServiceSpecificCredentialResult resetServiceSpecificCredential(ResetServiceSpecificCredentialRequest resetServiceSpecificCredentialRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public ResyncMFADeviceResult resyncMFADevice(ResyncMFADeviceRequest resyncMFADeviceRequest) {
+    @Override
+    public ResyncMFADeviceResult resyncMFADevice(ResyncMFADeviceRequest resyncMFADeviceRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public SetDefaultPolicyVersionResult setDefaultPolicyVersion(
-			SetDefaultPolicyVersionRequest setDefaultPolicyVersionRequest) {
+    @Override
+    public SetDefaultPolicyVersionResult setDefaultPolicyVersion(SetDefaultPolicyVersionRequest setDefaultPolicyVersionRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public SimulateCustomPolicyResult simulateCustomPolicy(SimulateCustomPolicyRequest simulateCustomPolicyRequest) {
+    @Override
+    public SimulateCustomPolicyResult simulateCustomPolicy(SimulateCustomPolicyRequest simulateCustomPolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public SimulatePrincipalPolicyResult simulatePrincipalPolicy(
-			SimulatePrincipalPolicyRequest simulatePrincipalPolicyRequest) {
+    @Override
+    public SimulatePrincipalPolicyResult simulatePrincipalPolicy(SimulatePrincipalPolicyRequest simulatePrincipalPolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public UpdateAccessKeyResult updateAccessKey(UpdateAccessKeyRequest updateAccessKeyRequest) {
+    @Override
+    public UpdateAccessKeyResult updateAccessKey(UpdateAccessKeyRequest updateAccessKeyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public UpdateAccountPasswordPolicyResult updateAccountPasswordPolicy(
-			UpdateAccountPasswordPolicyRequest updateAccountPasswordPolicyRequest) {
+    @Override
+    public UpdateAccountPasswordPolicyResult updateAccountPasswordPolicy(UpdateAccountPasswordPolicyRequest updateAccountPasswordPolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public UpdateAssumeRolePolicyResult updateAssumeRolePolicy(
-			UpdateAssumeRolePolicyRequest updateAssumeRolePolicyRequest) {
+    @Override
+    public UpdateAssumeRolePolicyResult updateAssumeRolePolicy(UpdateAssumeRolePolicyRequest updateAssumeRolePolicyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public UpdateGroupResult updateGroup(UpdateGroupRequest updateGroupRequest) {
+    @Override
+    public UpdateGroupResult updateGroup(UpdateGroupRequest updateGroupRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public UpdateLoginProfileResult updateLoginProfile(UpdateLoginProfileRequest updateLoginProfileRequest) {
+    @Override
+    public UpdateLoginProfileResult updateLoginProfile(UpdateLoginProfileRequest updateLoginProfileRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public UpdateOpenIDConnectProviderThumbprintResult updateOpenIDConnectProviderThumbprint(
-			UpdateOpenIDConnectProviderThumbprintRequest updateOpenIDConnectProviderThumbprintRequest) {
+    @Override
+    public UpdateOpenIDConnectProviderThumbprintResult updateOpenIDConnectProviderThumbprint(UpdateOpenIDConnectProviderThumbprintRequest updateOpenIDConnectProviderThumbprintRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public UpdateRoleDescriptionResult updateRoleDescription(
-			UpdateRoleDescriptionRequest updateRoleDescriptionRequest) {
+    @Override
+    public UpdateRoleDescriptionResult updateRoleDescription(UpdateRoleDescriptionRequest updateRoleDescriptionRequest) {
         throw new UnsupportedOperationException();
-	}
-	
+    }
 
-
-	@Override
-	public UpdateSAMLProviderResult updateSAMLProvider(UpdateSAMLProviderRequest updateSAMLProviderRequest) {
+    @Override
+    public UpdateSAMLProviderResult updateSAMLProvider(UpdateSAMLProviderRequest updateSAMLProviderRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public UpdateSSHPublicKeyResult updateSSHPublicKey(UpdateSSHPublicKeyRequest updateSSHPublicKeyRequest) {
+    @Override
+    public UpdateSSHPublicKeyResult updateSSHPublicKey(UpdateSSHPublicKeyRequest updateSSHPublicKeyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public UpdateServerCertificateResult updateServerCertificate(
-			UpdateServerCertificateRequest updateServerCertificateRequest) {
+    @Override
+    public UpdateServerCertificateResult updateServerCertificate(UpdateServerCertificateRequest updateServerCertificateRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public UpdateServiceSpecificCredentialResult updateServiceSpecificCredential(
-			UpdateServiceSpecificCredentialRequest updateServiceSpecificCredentialRequest) {
+    @Override
+    public UpdateServiceSpecificCredentialResult updateServiceSpecificCredential(UpdateServiceSpecificCredentialRequest updateServiceSpecificCredentialRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public UpdateSigningCertificateResult updateSigningCertificate(
-			UpdateSigningCertificateRequest updateSigningCertificateRequest) {
+    @Override
+    public UpdateSigningCertificateResult updateSigningCertificate(UpdateSigningCertificateRequest updateSigningCertificateRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public UpdateUserResult updateUser(UpdateUserRequest updateUserRequest) {
+    @Override
+    public UpdateUserResult updateUser(UpdateUserRequest updateUserRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public UploadSSHPublicKeyResult uploadSSHPublicKey(UploadSSHPublicKeyRequest uploadSSHPublicKeyRequest) {
+    @Override
+    public UploadSSHPublicKeyResult uploadSSHPublicKey(UploadSSHPublicKeyRequest uploadSSHPublicKeyRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public UploadServerCertificateResult uploadServerCertificate(
-			UploadServerCertificateRequest uploadServerCertificateRequest) {
+    @Override
+    public UploadServerCertificateResult uploadServerCertificate(UploadServerCertificateRequest uploadServerCertificateRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public UploadSigningCertificateResult uploadSigningCertificate(
-			UploadSigningCertificateRequest uploadSigningCertificateRequest) {
+    @Override
+    public UploadSigningCertificateResult uploadSigningCertificate(UploadSigningCertificateRequest uploadSigningCertificateRequest) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public void shutdown() {
+    @Override
+    public void shutdown() {
         throw new UnsupportedOperationException();
-		
-	}
 
-	@Override
-	public ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request) {
+    }
+
+    @Override
+    public ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request) {
         throw new UnsupportedOperationException();
-	}
+    }
 
-	@Override
-	public AmazonIdentityManagementWaiters waiters() {
+    @Override
+    public AmazonIdentityManagementWaiters waiters() {
         throw new UnsupportedOperationException();
-	}
+    }
 }
diff --git a/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMComponentConfigurationTest.java b/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMComponentConfigurationTest.java
index 1c7e791..1fe4268 100644
--- a/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMComponentConfigurationTest.java
+++ b/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMComponentConfigurationTest.java
@@ -37,7 +37,7 @@ public class IAMComponentConfigurationTest extends CamelTestSupport {
     
     @Test
     public void createEndpointWithComponentAndEndpointElements() throws Exception {
-    	IAMComponent component = new IAMComponent(context);
+        IAMComponent component = new IAMComponent(context);
         component.setAccessKey("XXX");
         component.setSecretKey("YYY");
         component.setRegion(Regions.US_WEST_1.toString());
diff --git a/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMProducerSpringTest.java b/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMProducerSpringTest.java
index 16875b5..701b8a7 100644
--- a/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMProducerSpringTest.java
+++ b/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMProducerSpringTest.java
@@ -16,6 +16,11 @@
  */
 package org.apache.camel.component.aws.iam;
 
+import com.amazonaws.services.identitymanagement.model.CreateUserResult;
+import com.amazonaws.services.identitymanagement.model.DeleteUserResult;
+import com.amazonaws.services.identitymanagement.model.ListAccessKeysResult;
+import com.amazonaws.services.identitymanagement.model.ListUsersResult;
+
 import org.apache.camel.EndpointInject;
 import org.apache.camel.Exchange;
 import org.apache.camel.Processor;
@@ -24,34 +29,29 @@ import org.apache.camel.test.spring.CamelSpringTestSupport;
 import org.junit.Test;
 import org.springframework.context.support.ClassPathXmlApplicationContext;
 
-import com.amazonaws.services.identitymanagement.model.CreateUserResult;
-import com.amazonaws.services.identitymanagement.model.DeleteUserResult;
-import com.amazonaws.services.identitymanagement.model.ListAccessKeysResult;
-import com.amazonaws.services.identitymanagement.model.ListUsersResult;
-
 public class IAMProducerSpringTest extends CamelSpringTestSupport {
 
-	@EndpointInject(uri = "mock:result")
-	private MockEndpoint mock;
+    @EndpointInject(uri = "mock:result")
+    private MockEndpoint mock;
 
-	@Test
-	public void iamListAccessKeysTest() throws Exception {
+    @Test
+    public void iamListAccessKeysTest() throws Exception {
 
-		mock.expectedMessageCount(1);
-		Exchange exchange = template.request("direct:listKeys", new Processor() {
-			@Override
-			public void process(Exchange exchange) throws Exception {
-				exchange.getIn().setHeader(IAMConstants.OPERATION, IAMOperations.listAccessKeys);
-			}
-		});
+        mock.expectedMessageCount(1);
+        Exchange exchange = template.request("direct:listKeys", new Processor() {
+            @Override
+            public void process(Exchange exchange) throws Exception {
+                exchange.getIn().setHeader(IAMConstants.OPERATION, IAMOperations.listAccessKeys);
+            }
+        });
+
+        assertMockEndpointsSatisfied();
 
-		assertMockEndpointsSatisfied();
+        ListAccessKeysResult resultGet = (ListAccessKeysResult)exchange.getIn().getBody();
+        assertEquals(1, resultGet.getAccessKeyMetadata().size());
+        assertEquals("1", resultGet.getAccessKeyMetadata().get(0).getAccessKeyId());
+    }
 
-		ListAccessKeysResult resultGet = (ListAccessKeysResult) exchange.getIn().getBody();
-		assertEquals(1, resultGet.getAccessKeyMetadata().size());
-		assertEquals("1", resultGet.getAccessKeyMetadata().get(0).getAccessKeyId());
-	}
-	
     @Test
     public void iamCreateUserTest() throws Exception {
 
@@ -65,11 +65,11 @@ public class IAMProducerSpringTest extends CamelSpringTestSupport {
         });
 
         assertMockEndpointsSatisfied();
-        
-        CreateUserResult resultGet = (CreateUserResult) exchange.getIn().getBody();
+
+        CreateUserResult resultGet = (CreateUserResult)exchange.getIn().getBody();
         assertEquals("test", resultGet.getUser().getUserName());
     }
-    
+
     @Test
     public void iamDeleteUserTest() throws Exception {
 
@@ -83,32 +83,31 @@ public class IAMProducerSpringTest extends CamelSpringTestSupport {
         });
 
         assertMockEndpointsSatisfied();
-        
-        DeleteUserResult resultGet = (DeleteUserResult) exchange.getIn().getBody();
+
+        DeleteUserResult resultGet = (DeleteUserResult)exchange.getIn().getBody();
         assertNotNull(resultGet);
     }
-    
-	@Test
-	public void iamListUsersTest() throws Exception {
-
-		mock.expectedMessageCount(1);
-		Exchange exchange = template.request("direct:listUsers", new Processor() {
-			@Override
-			public void process(Exchange exchange) throws Exception {
-				exchange.getIn().setHeader(IAMConstants.OPERATION, IAMOperations.listUsers);
-			}
-		});
-
-		assertMockEndpointsSatisfied();
-
-		ListUsersResult resultGet = (ListUsersResult) exchange.getIn().getBody();
-		assertEquals(1, resultGet.getUsers().size());
-		assertEquals("test", resultGet.getUsers().get(0).getUserName());
-	}
-
-	@Override
-	protected ClassPathXmlApplicationContext createApplicationContext() {
-		return new ClassPathXmlApplicationContext(
-				"org/apache/camel/component/aws/iam/IAMComponentSpringTest-context.xml");
-	}
-}
\ No newline at end of file
+
+    @Test
+    public void iamListUsersTest() throws Exception {
+
+        mock.expectedMessageCount(1);
+        Exchange exchange = template.request("direct:listUsers", new Processor() {
+            @Override
+            public void process(Exchange exchange) throws Exception {
+                exchange.getIn().setHeader(IAMConstants.OPERATION, IAMOperations.listUsers);
+            }
+        });
+
+        assertMockEndpointsSatisfied();
+
+        ListUsersResult resultGet = (ListUsersResult)exchange.getIn().getBody();
+        assertEquals(1, resultGet.getUsers().size());
+        assertEquals("test", resultGet.getUsers().get(0).getUserName());
+    }
+
+    @Override
+    protected ClassPathXmlApplicationContext createApplicationContext() {
+        return new ClassPathXmlApplicationContext("org/apache/camel/component/aws/iam/IAMComponentSpringTest-context.xml");
+    }
+}
diff --git a/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMProducerTest.java b/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMProducerTest.java
index 1041dbd..4f9dada 100644
--- a/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMProducerTest.java
+++ b/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMProducerTest.java
@@ -16,6 +16,11 @@
  */
 package org.apache.camel.component.aws.iam;
 
+import com.amazonaws.services.identitymanagement.model.CreateUserResult;
+import com.amazonaws.services.identitymanagement.model.DeleteUserResult;
+import com.amazonaws.services.identitymanagement.model.ListAccessKeysResult;
+import com.amazonaws.services.identitymanagement.model.ListUsersResult;
+
 import org.apache.camel.EndpointInject;
 import org.apache.camel.Exchange;
 import org.apache.camel.Processor;
@@ -25,34 +30,29 @@ import org.apache.camel.impl.JndiRegistry;
 import org.apache.camel.test.junit4.CamelTestSupport;
 import org.junit.Test;
 
-import com.amazonaws.services.identitymanagement.model.CreateUserResult;
-import com.amazonaws.services.identitymanagement.model.DeleteUserResult;
-import com.amazonaws.services.identitymanagement.model.ListAccessKeysResult;
-import com.amazonaws.services.identitymanagement.model.ListUsersResult;
-
 public class IAMProducerTest extends CamelTestSupport {
 
-	@EndpointInject(uri = "mock:result")
-	private MockEndpoint mock;
+    @EndpointInject(uri = "mock:result")
+    private MockEndpoint mock;
+
+    @Test
+    public void iamListKeysTest() throws Exception {
 
-	@Test
-	public void iamListKeysTest() throws Exception {
+        mock.expectedMessageCount(1);
+        Exchange exchange = template.request("direct:listKeys", new Processor() {
+            @Override
+            public void process(Exchange exchange) throws Exception {
+                exchange.getIn().setHeader(IAMConstants.OPERATION, IAMOperations.listAccessKeys);
+            }
+        });
 
-		mock.expectedMessageCount(1);
-		Exchange exchange = template.request("direct:listKeys", new Processor() {
-			@Override
-			public void process(Exchange exchange) throws Exception {
-				exchange.getIn().setHeader(IAMConstants.OPERATION, IAMOperations.listAccessKeys);
-			}
-		});
+        assertMockEndpointsSatisfied();
 
-		assertMockEndpointsSatisfied();
+        ListAccessKeysResult resultGet = (ListAccessKeysResult)exchange.getIn().getBody();
+        assertEquals(1, resultGet.getAccessKeyMetadata().size());
+        assertEquals("1", resultGet.getAccessKeyMetadata().get(0).getAccessKeyId());
+    }
 
-		ListAccessKeysResult resultGet = (ListAccessKeysResult) exchange.getIn().getBody();
-		assertEquals(1, resultGet.getAccessKeyMetadata().size());
-		assertEquals("1", resultGet.getAccessKeyMetadata().get(0).getAccessKeyId());
-	}
-	
     @Test
     public void iamCreateUserTest() throws Exception {
 
@@ -66,11 +66,11 @@ public class IAMProducerTest extends CamelTestSupport {
         });
 
         assertMockEndpointsSatisfied();
-        
-        CreateUserResult resultGet = (CreateUserResult) exchange.getIn().getBody();
+
+        CreateUserResult resultGet = (CreateUserResult)exchange.getIn().getBody();
         assertEquals("test", resultGet.getUser().getUserName());
     }
-    
+
     @Test
     public void iamDeleteUserTest() throws Exception {
 
@@ -84,54 +84,50 @@ public class IAMProducerTest extends CamelTestSupport {
         });
 
         assertMockEndpointsSatisfied();
-        
-        DeleteUserResult resultGet = (DeleteUserResult) exchange.getIn().getBody();
+
+        DeleteUserResult resultGet = (DeleteUserResult)exchange.getIn().getBody();
         assertNotNull(resultGet);
     }
-    
-	@Test
-	public void iamListUsersTest() throws Exception {
-
-		mock.expectedMessageCount(1);
-		Exchange exchange = template.request("direct:listUsers", new Processor() {
-			@Override
-			public void process(Exchange exchange) throws Exception {
-				exchange.getIn().setHeader(IAMConstants.OPERATION, IAMOperations.listUsers);
-			}
-		});
-
-		assertMockEndpointsSatisfied();
-
-		ListUsersResult resultGet = (ListUsersResult) exchange.getIn().getBody();
-		assertEquals(1, resultGet.getUsers().size());
-		assertEquals("test", resultGet.getUsers().get(0).getUserName());
-	}
-
-	@Override
-	protected JndiRegistry createRegistry() throws Exception {
-		JndiRegistry registry = super.createRegistry();
-
-		AmazonIAMClientMock clientMock = new AmazonIAMClientMock();
-
-		registry.bind("amazonIAMClient", clientMock);
-
-		return registry;
-	}
-
-	@Override
-	protected RouteBuilder createRouteBuilder() throws Exception {
-		return new RouteBuilder() {
-			@Override
-			public void configure() throws Exception {
-				from("direct:listKeys").to("aws-iam://test?iamClient=#amazonIAMClient&operation=listAccessKeys")
-						.to("mock:result");
-				from("direct:createUser").to("aws-iam://test?iamClient=#amazonIAMClient&operation=createUser")
-				        .to("mock:result");
-				from("direct:deleteUser").to("aws-iam://test?iamClient=#amazonIAMClient&operation=deleteUser")
-		                .to("mock:result");
-				from("direct:listUsers").to("aws-iam://test?iamClient=#amazonIAMClient&operation=listUsers")
-                        .to("mock:result");
-			}
-		};
-	}
-}
\ No newline at end of file
+
+    @Test
+    public void iamListUsersTest() throws Exception {
+
+        mock.expectedMessageCount(1);
+        Exchange exchange = template.request("direct:listUsers", new Processor() {
+            @Override
+            public void process(Exchange exchange) throws Exception {
+                exchange.getIn().setHeader(IAMConstants.OPERATION, IAMOperations.listUsers);
+            }
+        });
+
+        assertMockEndpointsSatisfied();
+
+        ListUsersResult resultGet = (ListUsersResult)exchange.getIn().getBody();
+        assertEquals(1, resultGet.getUsers().size());
+        assertEquals("test", resultGet.getUsers().get(0).getUserName());
+    }
+
+    @Override
+    protected JndiRegistry createRegistry() throws Exception {
+        JndiRegistry registry = super.createRegistry();
+
+        AmazonIAMClientMock clientMock = new AmazonIAMClientMock();
+
+        registry.bind("amazonIAMClient", clientMock);
+
+        return registry;
+    }
+
+    @Override
+    protected RouteBuilder createRouteBuilder() throws Exception {
+        return new RouteBuilder() {
+            @Override
+            public void configure() throws Exception {
+                from("direct:listKeys").to("aws-iam://test?iamClient=#amazonIAMClient&operation=listAccessKeys").to("mock:result");
+                from("direct:createUser").to("aws-iam://test?iamClient=#amazonIAMClient&operation=createUser").to("mock:result");
+                from("direct:deleteUser").to("aws-iam://test?iamClient=#amazonIAMClient&operation=deleteUser").to("mock:result");
+                from("direct:listUsers").to("aws-iam://test?iamClient=#amazonIAMClient&operation=listUsers").to("mock:result");
+            }
+        };
+    }
+}


[camel] 04/04: CAMEL-12238 - Updated docs

Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 6c66a486b055cf0feca696c8ebfc9ec5ba1a86a7
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Tue Jul 24 13:33:08 2018 +0200

    CAMEL-12238 - Updated docs
---
 components/camel-aws/src/main/docs/aws-iam-component.adoc | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/components/camel-aws/src/main/docs/aws-iam-component.adoc b/components/camel-aws/src/main/docs/aws-iam-component.adoc
index 6eeec6c..1ccbed2 100644
--- a/components/camel-aws/src/main/docs/aws-iam-component.adoc
+++ b/components/camel-aws/src/main/docs/aws-iam-component.adoc
@@ -136,6 +136,8 @@ Camel-AWS IAM component provides the following operation on the producer side:
 
 - listAccessKeys
 - createUser
+- deleteUser
+- listUsers
 
 Dependencies
 


[camel] 01/04: CAMEL-12238 - Camel-AWS: Create an IAM component, deleteUser operation

Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 98d43a40fce89291cd1886f0323c5a7b55a9f77a
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Tue Jul 24 12:53:59 2018 +0200

    CAMEL-12238 - Camel-AWS: Create an IAM component, deleteUser operation
---
 .../camel/component/aws/iam/IAMOperations.java     |  3 ++-
 .../camel/component/aws/iam/IAMProducer.java       | 22 ++++++++++++++++++++++
 .../component/aws/iam/AmazonIAMClientMock.java     |  3 ++-
 .../component/aws/iam/IAMProducerSpringTest.java   | 18 ++++++++++++++++++
 .../camel/component/aws/iam/IAMProducerTest.java   | 21 +++++++++++++++++++++
 .../aws/iam/IAMComponentSpringTest-context.xml     |  5 +++++
 6 files changed, 70 insertions(+), 2 deletions(-)

diff --git a/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMOperations.java b/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMOperations.java
index 031abdd..da5b4ca 100644
--- a/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMOperations.java
+++ b/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMOperations.java
@@ -19,5 +19,6 @@ package org.apache.camel.component.aws.iam;
 public enum IAMOperations {
 
     listAccessKeys,
-    createUser
+    createUser,
+    deleteUser
 }
diff --git a/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMProducer.java b/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMProducer.java
index b4fabff..83f7998 100644
--- a/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMProducer.java
+++ b/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMProducer.java
@@ -20,6 +20,8 @@ import com.amazonaws.AmazonServiceException;
 import com.amazonaws.services.identitymanagement.AmazonIdentityManagement;
 import com.amazonaws.services.identitymanagement.model.CreateUserRequest;
 import com.amazonaws.services.identitymanagement.model.CreateUserResult;
+import com.amazonaws.services.identitymanagement.model.DeleteUserRequest;
+import com.amazonaws.services.identitymanagement.model.DeleteUserResult;
 import com.amazonaws.services.identitymanagement.model.ListAccessKeysResult;
 
 import org.apache.camel.Endpoint;
@@ -55,6 +57,9 @@ public class IAMProducer extends DefaultProducer {
         case createUser:
             createUser(getEndpoint().getIamClient(), exchange);
             break;
+        case deleteUser:
+            deleteUser(getEndpoint().getIamClient(), exchange);
+            break;
         default:
             throw new IllegalArgumentException("Unsupported operation");
         }
@@ -113,4 +118,21 @@ public class IAMProducer extends DefaultProducer {
         Message message = getMessageForResponse(exchange);
         message.setBody(result);
     }
+    
+    private void deleteUser(AmazonIdentityManagement iamClient, Exchange exchange) {
+        DeleteUserRequest request = new DeleteUserRequest();
+        if (ObjectHelper.isNotEmpty(exchange.getIn().getHeader(IAMConstants.USERNAME))) {
+            String userName = exchange.getIn().getHeader(IAMConstants.USERNAME, String.class);
+            request.withUserName(userName);
+        }
+        DeleteUserResult result;
+        try {
+            result = iamClient.deleteUser(request);
+        } catch (AmazonServiceException ase) {
+            LOG.trace("Delete user command returned the error code {}", ase.getErrorCode());
+            throw ase;
+        }
+        Message message = getMessageForResponse(exchange);
+        message.setBody(result);
+    }
 }
\ No newline at end of file
diff --git a/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/AmazonIAMClientMock.java b/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/AmazonIAMClientMock.java
index 2916623..abe78a2 100644
--- a/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/AmazonIAMClientMock.java
+++ b/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/AmazonIAMClientMock.java
@@ -268,7 +268,8 @@ public class AmazonIAMClientMock extends AmazonIdentityManagementClient {
 
 	@Override
 	public DeleteUserResult deleteUser(DeleteUserRequest deleteUserRequest) {
-        throw new UnsupportedOperationException();
+        DeleteUserResult res = new DeleteUserResult();
+        return res;
 	}
 
 	@Override
diff --git a/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMProducerSpringTest.java b/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMProducerSpringTest.java
index 5d66c321..d69ad43 100644
--- a/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMProducerSpringTest.java
+++ b/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMProducerSpringTest.java
@@ -25,6 +25,7 @@ import org.junit.Test;
 import org.springframework.context.support.ClassPathXmlApplicationContext;
 
 import com.amazonaws.services.identitymanagement.model.CreateUserResult;
+import com.amazonaws.services.identitymanagement.model.DeleteUserResult;
 import com.amazonaws.services.identitymanagement.model.ListAccessKeysResult;
 
 public class IAMProducerSpringTest extends CamelSpringTestSupport {
@@ -67,7 +68,24 @@ public class IAMProducerSpringTest extends CamelSpringTestSupport {
         CreateUserResult resultGet = (CreateUserResult) exchange.getIn().getBody();
         assertEquals("test", resultGet.getUser().getUserName());
     }
+    
+    @Test
+    public void iamDeleteUserTest() throws Exception {
 
+        mock.expectedMessageCount(1);
+        Exchange exchange = template.request("direct:deleteUser", new Processor() {
+            @Override
+            public void process(Exchange exchange) throws Exception {
+                exchange.getIn().setHeader(IAMConstants.OPERATION, IAMOperations.deleteUser);
+                exchange.getIn().setHeader(IAMConstants.USERNAME, "test");
+            }
+        });
+
+        assertMockEndpointsSatisfied();
+        
+        DeleteUserResult resultGet = (DeleteUserResult) exchange.getIn().getBody();
+        assertNotNull(resultGet);
+    }
 
 	@Override
 	protected ClassPathXmlApplicationContext createApplicationContext() {
diff --git a/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMProducerTest.java b/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMProducerTest.java
index a0175cf..b9aa180 100644
--- a/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMProducerTest.java
+++ b/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMProducerTest.java
@@ -26,6 +26,7 @@ import org.apache.camel.test.junit4.CamelTestSupport;
 import org.junit.Test;
 
 import com.amazonaws.services.identitymanagement.model.CreateUserResult;
+import com.amazonaws.services.identitymanagement.model.DeleteUserResult;
 import com.amazonaws.services.identitymanagement.model.ListAccessKeysResult;
 
 public class IAMProducerTest extends CamelTestSupport {
@@ -68,6 +69,24 @@ public class IAMProducerTest extends CamelTestSupport {
         CreateUserResult resultGet = (CreateUserResult) exchange.getIn().getBody();
         assertEquals("test", resultGet.getUser().getUserName());
     }
+    
+    @Test
+    public void iamDeleteUserTest() throws Exception {
+
+        mock.expectedMessageCount(1);
+        Exchange exchange = template.request("direct:deleteUser", new Processor() {
+            @Override
+            public void process(Exchange exchange) throws Exception {
+                exchange.getIn().setHeader(IAMConstants.OPERATION, IAMOperations.deleteUser);
+                exchange.getIn().setHeader(IAMConstants.USERNAME, "test");
+            }
+        });
+
+        assertMockEndpointsSatisfied();
+        
+        DeleteUserResult resultGet = (DeleteUserResult) exchange.getIn().getBody();
+        assertNotNull(resultGet);
+    }
 
 	@Override
 	protected JndiRegistry createRegistry() throws Exception {
@@ -89,6 +108,8 @@ public class IAMProducerTest extends CamelTestSupport {
 						.to("mock:result");
 				from("direct:createUser").to("aws-iam://test?iamClient=#amazonIAMClient&operation=createUser")
 				        .to("mock:result");
+				from("direct:deleteUser").to("aws-iam://test?iamClient=#amazonIAMClient&operation=deleteUser")
+		                .to("mock:result");
 			}
 		};
 	}
diff --git a/components/camel-aws/src/test/resources/org/apache/camel/component/aws/iam/IAMComponentSpringTest-context.xml b/components/camel-aws/src/test/resources/org/apache/camel/component/aws/iam/IAMComponentSpringTest-context.xml
index 39a2a8c..454e936 100644
--- a/components/camel-aws/src/test/resources/org/apache/camel/component/aws/iam/IAMComponentSpringTest-context.xml
+++ b/components/camel-aws/src/test/resources/org/apache/camel/component/aws/iam/IAMComponentSpringTest-context.xml
@@ -34,6 +34,11 @@
             <to uri="aws-iam://Test?iamClient=#amazonIAMClient&amp;operation=createUser"/>
             <to uri="mock:result"/>
         </route>
+        <route>
+            <from uri="direct:deleteUser"/>
+            <to uri="aws-iam://Test?iamClient=#amazonIAMClient&amp;operation=deleteUser"/>
+            <to uri="mock:result"/>
+        </route>
     </camelContext>
     
     <bean id="amazonIAMClient" class="org.apache.camel.component.aws.iam.AmazonIAMClientMock"/>


[camel] 02/04: CAMEL-12238 - Camel-AWS: Create an IAM component, listUsers operation

Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit d15d3ab61d186b255b0244bf176f6c1d9ed3d4a3
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Tue Jul 24 13:06:08 2018 +0200

    CAMEL-12238 - Camel-AWS: Create an IAM component, listUsers operation
---
 .../camel/component/aws/iam/IAMOperations.java      |  3 ++-
 .../apache/camel/component/aws/iam/IAMProducer.java | 17 +++++++++++++++++
 .../component/aws/iam/AmazonIAMClientMock.java      |  9 ++++++++-
 .../component/aws/iam/IAMProducerSpringTest.java    | 21 ++++++++++++++++++++-
 .../camel/component/aws/iam/IAMProducerTest.java    | 21 +++++++++++++++++++++
 .../aws/iam/IAMComponentSpringTest-context.xml      |  5 +++++
 6 files changed, 73 insertions(+), 3 deletions(-)

diff --git a/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMOperations.java b/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMOperations.java
index da5b4ca..7559ec7 100644
--- a/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMOperations.java
+++ b/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMOperations.java
@@ -20,5 +20,6 @@ public enum IAMOperations {
 
     listAccessKeys,
     createUser,
-    deleteUser
+    deleteUser,
+    listUsers
 }
diff --git a/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMProducer.java b/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMProducer.java
index 83f7998..4fcbaa0 100644
--- a/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMProducer.java
+++ b/components/camel-aws/src/main/java/org/apache/camel/component/aws/iam/IAMProducer.java
@@ -23,6 +23,8 @@ import com.amazonaws.services.identitymanagement.model.CreateUserResult;
 import com.amazonaws.services.identitymanagement.model.DeleteUserRequest;
 import com.amazonaws.services.identitymanagement.model.DeleteUserResult;
 import com.amazonaws.services.identitymanagement.model.ListAccessKeysResult;
+import com.amazonaws.services.identitymanagement.model.ListUsersRequest;
+import com.amazonaws.services.identitymanagement.model.ListUsersResult;
 
 import org.apache.camel.Endpoint;
 import org.apache.camel.Exchange;
@@ -60,6 +62,9 @@ public class IAMProducer extends DefaultProducer {
         case deleteUser:
             deleteUser(getEndpoint().getIamClient(), exchange);
             break;
+        case listUsers:
+            listUsers(getEndpoint().getIamClient(), exchange);
+            break;
         default:
             throw new IllegalArgumentException("Unsupported operation");
         }
@@ -135,4 +140,16 @@ public class IAMProducer extends DefaultProducer {
         Message message = getMessageForResponse(exchange);
         message.setBody(result);
     }
+    
+    private void listUsers(AmazonIdentityManagement iamClient, Exchange exchange) {
+        ListUsersResult result;
+        try {
+            result = iamClient.listUsers();
+        } catch (AmazonServiceException ase) {
+            LOG.trace("List users command returned the error code {}", ase.getErrorCode());
+            throw ase;
+        }
+        Message message = getMessageForResponse(exchange);
+        message.setBody(result);
+    }
 }
\ No newline at end of file
diff --git a/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/AmazonIAMClientMock.java b/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/AmazonIAMClientMock.java
index abe78a2..c21efdd 100644
--- a/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/AmazonIAMClientMock.java
+++ b/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/AmazonIAMClientMock.java
@@ -19,6 +19,7 @@ package org.apache.camel.component.aws.iam;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Date;
+import java.util.List;
 
 import com.amazonaws.AmazonWebServiceRequest;
 import com.amazonaws.ResponseMetadata;
@@ -655,7 +656,13 @@ public class AmazonIAMClientMock extends AmazonIdentityManagementClient {
 
 	@Override
 	public ListUsersResult listUsers() {
-        throw new UnsupportedOperationException();
+        ListUsersResult res = new ListUsersResult();
+        List<User> list = new ArrayList<>();
+        User user = new User();
+        user.setUserName("test");
+        list.add(user);
+        res.setUsers(list);
+        return res;
 	}
 
 	@Override
diff --git a/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMProducerSpringTest.java b/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMProducerSpringTest.java
index d69ad43..16875b5 100644
--- a/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMProducerSpringTest.java
+++ b/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMProducerSpringTest.java
@@ -27,6 +27,7 @@ import org.springframework.context.support.ClassPathXmlApplicationContext;
 import com.amazonaws.services.identitymanagement.model.CreateUserResult;
 import com.amazonaws.services.identitymanagement.model.DeleteUserResult;
 import com.amazonaws.services.identitymanagement.model.ListAccessKeysResult;
+import com.amazonaws.services.identitymanagement.model.ListUsersResult;
 
 public class IAMProducerSpringTest extends CamelSpringTestSupport {
 
@@ -34,7 +35,7 @@ public class IAMProducerSpringTest extends CamelSpringTestSupport {
 	private MockEndpoint mock;
 
 	@Test
-	public void mqListBrokersTest() throws Exception {
+	public void iamListAccessKeysTest() throws Exception {
 
 		mock.expectedMessageCount(1);
 		Exchange exchange = template.request("direct:listKeys", new Processor() {
@@ -86,6 +87,24 @@ public class IAMProducerSpringTest extends CamelSpringTestSupport {
         DeleteUserResult resultGet = (DeleteUserResult) exchange.getIn().getBody();
         assertNotNull(resultGet);
     }
+    
+	@Test
+	public void iamListUsersTest() throws Exception {
+
+		mock.expectedMessageCount(1);
+		Exchange exchange = template.request("direct:listUsers", new Processor() {
+			@Override
+			public void process(Exchange exchange) throws Exception {
+				exchange.getIn().setHeader(IAMConstants.OPERATION, IAMOperations.listUsers);
+			}
+		});
+
+		assertMockEndpointsSatisfied();
+
+		ListUsersResult resultGet = (ListUsersResult) exchange.getIn().getBody();
+		assertEquals(1, resultGet.getUsers().size());
+		assertEquals("test", resultGet.getUsers().get(0).getUserName());
+	}
 
 	@Override
 	protected ClassPathXmlApplicationContext createApplicationContext() {
diff --git a/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMProducerTest.java b/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMProducerTest.java
index b9aa180..1041dbd 100644
--- a/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMProducerTest.java
+++ b/components/camel-aws/src/test/java/org/apache/camel/component/aws/iam/IAMProducerTest.java
@@ -28,6 +28,7 @@ import org.junit.Test;
 import com.amazonaws.services.identitymanagement.model.CreateUserResult;
 import com.amazonaws.services.identitymanagement.model.DeleteUserResult;
 import com.amazonaws.services.identitymanagement.model.ListAccessKeysResult;
+import com.amazonaws.services.identitymanagement.model.ListUsersResult;
 
 public class IAMProducerTest extends CamelTestSupport {
 
@@ -87,6 +88,24 @@ public class IAMProducerTest extends CamelTestSupport {
         DeleteUserResult resultGet = (DeleteUserResult) exchange.getIn().getBody();
         assertNotNull(resultGet);
     }
+    
+	@Test
+	public void iamListUsersTest() throws Exception {
+
+		mock.expectedMessageCount(1);
+		Exchange exchange = template.request("direct:listUsers", new Processor() {
+			@Override
+			public void process(Exchange exchange) throws Exception {
+				exchange.getIn().setHeader(IAMConstants.OPERATION, IAMOperations.listUsers);
+			}
+		});
+
+		assertMockEndpointsSatisfied();
+
+		ListUsersResult resultGet = (ListUsersResult) exchange.getIn().getBody();
+		assertEquals(1, resultGet.getUsers().size());
+		assertEquals("test", resultGet.getUsers().get(0).getUserName());
+	}
 
 	@Override
 	protected JndiRegistry createRegistry() throws Exception {
@@ -110,6 +129,8 @@ public class IAMProducerTest extends CamelTestSupport {
 				        .to("mock:result");
 				from("direct:deleteUser").to("aws-iam://test?iamClient=#amazonIAMClient&operation=deleteUser")
 		                .to("mock:result");
+				from("direct:listUsers").to("aws-iam://test?iamClient=#amazonIAMClient&operation=listUsers")
+                        .to("mock:result");
 			}
 		};
 	}
diff --git a/components/camel-aws/src/test/resources/org/apache/camel/component/aws/iam/IAMComponentSpringTest-context.xml b/components/camel-aws/src/test/resources/org/apache/camel/component/aws/iam/IAMComponentSpringTest-context.xml
index 454e936..8d3cd52 100644
--- a/components/camel-aws/src/test/resources/org/apache/camel/component/aws/iam/IAMComponentSpringTest-context.xml
+++ b/components/camel-aws/src/test/resources/org/apache/camel/component/aws/iam/IAMComponentSpringTest-context.xml
@@ -39,6 +39,11 @@
             <to uri="aws-iam://Test?iamClient=#amazonIAMClient&amp;operation=deleteUser"/>
             <to uri="mock:result"/>
         </route>
+        <route>
+            <from uri="direct:listUsers"/>
+            <to uri="aws-iam://Test?iamClient=#amazonIAMClient&amp;operation=listUsers"/>
+            <to uri="mock:result"/>
+        </route>
     </camelContext>
     
     <bean id="amazonIAMClient" class="org.apache.camel.component.aws.iam.AmazonIAMClientMock"/>