...and EC2-related elsewhere. Also moved *Client -> *Api, and moved everything from .../services to .../features, and threw in a bunch of Optionals to fit the EC2Api approach.
And a very big tip of the hat to nacx for figuring out the generics stuff my brain just could not handle. =) You can merge this Pull Request by running: git pull https://github.com/abayer/jclouds-1 jclouds-150 Or you can view, comment on it, or merge it online at: https://github.com/jclouds/jclouds/pull/49 -- Commit Summary -- * JCLOUDS-150 - Removal of async from AWS - specifically EC2 -- File Changes -- M apis/ec2/src/main/clojure/org/jclouds/ec2/ami2.clj (6) M apis/ec2/src/main/clojure/org/jclouds/ec2/elastic_ip2.clj (4) M apis/ec2/src/main/clojure/org/jclouds/ec2/security_group2.clj (4) M apis/ec2/src/main/java/org/jclouds/ec2/EC2Api.java (81) M apis/ec2/src/main/java/org/jclouds/ec2/EC2ApiMetadata.java (27) D apis/ec2/src/main/java/org/jclouds/ec2/EC2AsyncApi.java (78) D apis/ec2/src/main/java/org/jclouds/ec2/EC2AsyncClient.java (87) D apis/ec2/src/main/java/org/jclouds/ec2/EC2Client.java (84) M apis/ec2/src/main/java/org/jclouds/ec2/compute/EC2ComputeService.java (16) M apis/ec2/src/main/java/org/jclouds/ec2/compute/extensions/EC2ImageExtension.java (14) M apis/ec2/src/main/java/org/jclouds/ec2/compute/extensions/EC2SecurityGroupExtension.java (34) M apis/ec2/src/main/java/org/jclouds/ec2/compute/functions/CreateUniqueKeyPair.java (10) M apis/ec2/src/main/java/org/jclouds/ec2/compute/functions/PasswordCredentialsFromWindowsInstance.java (10) M apis/ec2/src/main/java/org/jclouds/ec2/compute/functions/PresentInstances.java (8) M apis/ec2/src/main/java/org/jclouds/ec2/compute/loaders/CreateSecurityGroupIfNeeded.java (12) M apis/ec2/src/main/java/org/jclouds/ec2/compute/loaders/LoadPublicIpForInstanceOrNull.java (8) M apis/ec2/src/main/java/org/jclouds/ec2/compute/loaders/RegionAndIdToImage.java (8) M apis/ec2/src/main/java/org/jclouds/ec2/compute/predicates/SecurityGroupPresent.java (8) M apis/ec2/src/main/java/org/jclouds/ec2/compute/strategy/DescribeImagesParallel.java (42) M apis/ec2/src/main/java/org/jclouds/ec2/compute/strategy/EC2CreateNodesInGroupThenAddToSet.java (12) M apis/ec2/src/main/java/org/jclouds/ec2/compute/strategy/EC2DestroyNodeStrategy.java (12) M apis/ec2/src/main/java/org/jclouds/ec2/compute/strategy/EC2GetImageStrategy.java (8) M apis/ec2/src/main/java/org/jclouds/ec2/compute/strategy/EC2GetNodeMetadataStrategy.java (8) M apis/ec2/src/main/java/org/jclouds/ec2/compute/strategy/EC2ListNodesStrategy.java (10) M apis/ec2/src/main/java/org/jclouds/ec2/compute/strategy/EC2RebootNodeStrategy.java (10) M apis/ec2/src/main/java/org/jclouds/ec2/compute/strategy/EC2ResumeNodeStrategy.java (10) M apis/ec2/src/main/java/org/jclouds/ec2/compute/strategy/EC2SuspendNodeStrategy.java (10) A apis/ec2/src/main/java/org/jclouds/ec2/config/BaseEC2HttpApiModule.java (78) A apis/ec2/src/main/java/org/jclouds/ec2/config/EC2HttpApiModule.java (67) D apis/ec2/src/main/java/org/jclouds/ec2/config/EC2RestClientModule.java (134) R apis/ec2/src/main/java/org/jclouds/ec2/features/AMIApi.java (205) R apis/ec2/src/main/java/org/jclouds/ec2/features/AvailabilityZoneAndRegionApi.java (26) R apis/ec2/src/main/java/org/jclouds/ec2/features/ElasticBlockStoreApi.java (226) R apis/ec2/src/main/java/org/jclouds/ec2/features/ElasticIPAddressApi.java (72) R apis/ec2/src/main/java/org/jclouds/ec2/features/InstanceApi.java (322) R apis/ec2/src/main/java/org/jclouds/ec2/features/KeyPairApi.java (59) R apis/ec2/src/main/java/org/jclouds/ec2/features/SecurityGroupApi.java (95) M apis/ec2/src/main/java/org/jclouds/ec2/features/SubnetApi.java (44) D apis/ec2/src/main/java/org/jclouds/ec2/features/SubnetAsyncApi.java (83) M apis/ec2/src/main/java/org/jclouds/ec2/features/TagApi.java (78) D apis/ec2/src/main/java/org/jclouds/ec2/features/TagAsyncApi.java (138) M apis/ec2/src/main/java/org/jclouds/ec2/features/WindowsApi.java (159) D apis/ec2/src/main/java/org/jclouds/ec2/features/WindowsAsyncApi.java (65) M apis/ec2/src/main/java/org/jclouds/ec2/options/BundleInstanceS3StorageOptions.java (2) M apis/ec2/src/main/java/org/jclouds/ec2/options/CreateImageOptions.java (4) M apis/ec2/src/main/java/org/jclouds/ec2/options/CreateSnapshotOptions.java (4) M apis/ec2/src/main/java/org/jclouds/ec2/options/DescribeAvailabilityZonesOptions.java (4) M apis/ec2/src/main/java/org/jclouds/ec2/options/DescribeImagesOptions.java (4) M apis/ec2/src/main/java/org/jclouds/ec2/options/DescribeRegionsOptions.java (2) M apis/ec2/src/main/java/org/jclouds/ec2/options/DescribeSnapshotsOptions.java (4) M apis/ec2/src/main/java/org/jclouds/ec2/options/DetachVolumeOptions.java (4) M apis/ec2/src/main/java/org/jclouds/ec2/options/RegisterImageBackedByEbsOptions.java (2) M apis/ec2/src/main/java/org/jclouds/ec2/options/RegisterImageOptions.java (2) M apis/ec2/src/main/java/org/jclouds/ec2/options/RunInstancesOptions.java (2) M apis/ec2/src/main/java/org/jclouds/ec2/predicates/InstanceHasIpAddress.java (8) M apis/ec2/src/main/java/org/jclouds/ec2/predicates/InstanceStateRunning.java (8) M apis/ec2/src/main/java/org/jclouds/ec2/predicates/InstanceStateStopped.java (6) M apis/ec2/src/main/java/org/jclouds/ec2/predicates/InstanceStateTerminated.java (8) M apis/ec2/src/main/java/org/jclouds/ec2/predicates/SnapshotCompleted.java (6) M apis/ec2/src/main/java/org/jclouds/ec2/predicates/VolumeAttached.java (6) M apis/ec2/src/main/java/org/jclouds/ec2/predicates/VolumeAvailable.java (6) M apis/ec2/src/main/java/org/jclouds/ec2/predicates/VolumeDetached.java (6) D apis/ec2/src/main/java/org/jclouds/ec2/services/AMIAsyncClient.java (192) D apis/ec2/src/main/java/org/jclouds/ec2/services/AvailabilityZoneAndRegionClient.java (57) D apis/ec2/src/main/java/org/jclouds/ec2/services/ElasticBlockStoreAsyncClient.java (239) D apis/ec2/src/main/java/org/jclouds/ec2/services/ElasticIPAddressAsyncClient.java (113) D apis/ec2/src/main/java/org/jclouds/ec2/services/InstanceAsyncClient.java (361) D apis/ec2/src/main/java/org/jclouds/ec2/services/KeyPairClient.java (87) D apis/ec2/src/main/java/org/jclouds/ec2/services/SecurityGroupAsyncClient.java (145) D apis/ec2/src/main/java/org/jclouds/ec2/services/WindowsAsyncClient.java (112) D apis/ec2/src/main/java/org/jclouds/ec2/services/WindowsClient.java (116) M apis/ec2/src/main/java/org/jclouds/ec2/suppliers/DescribeAvailabilityZonesInRegion.java (10) M apis/ec2/src/main/java/org/jclouds/ec2/suppliers/DescribeRegionsForRegionURIs.java (10) R apis/ec2/src/test/java/org/jclouds/ec2/CloudApplicationArchitecturesEC2ApiLiveTest.java (92) R apis/ec2/src/test/java/org/jclouds/ec2/EBSBootEC2ApiLiveTest.java (102) D apis/ec2/src/test/java/org/jclouds/ec2/EC2AsyncClientTest.java (75) M apis/ec2/src/test/java/org/jclouds/ec2/binders/BindS3UploadPolicyAndSignatureTest.java (6) M apis/ec2/src/test/java/org/jclouds/ec2/compute/EC2ComputeServiceLiveTest.java (44) M apis/ec2/src/test/java/org/jclouds/ec2/compute/EC2TemplateBuilderLiveTest.java (10) M apis/ec2/src/test/java/org/jclouds/ec2/compute/functions/CreateUniqueKeyPairTest.java (21) M apis/ec2/src/test/java/org/jclouds/ec2/compute/functions/PresentInstancesTest.java (11) M apis/ec2/src/test/java/org/jclouds/ec2/compute/internal/BaseEC2ComputeServiceContextExpectTest.java (4) M apis/ec2/src/test/java/org/jclouds/ec2/compute/loaders/CreateSecurityGroupIfNeededTest.java (8) M apis/ec2/src/test/java/org/jclouds/ec2/compute/loaders/LoadPublicIpForInstanceOrNullTest.java (23) M apis/ec2/src/test/java/org/jclouds/ec2/compute/loaders/RegionAndIdToImageTest.java (23) M apis/ec2/src/test/java/org/jclouds/ec2/compute/strategy/EC2CreateNodesInGroupThenAddToSetTest.java (20) M apis/ec2/src/test/java/org/jclouds/ec2/compute/strategy/EC2DestroyNodeStrategyTest.java (39) M apis/ec2/src/test/java/org/jclouds/ec2/config/EC2RestClientModuleExpectTest.java (4) R apis/ec2/src/test/java/org/jclouds/ec2/features/AMIApiLiveTest.java (32) R apis/ec2/src/test/java/org/jclouds/ec2/features/AMIApiTest.java (36) R apis/ec2/src/test/java/org/jclouds/ec2/features/AvailabilityZoneAndRegionApiLiveTest.java (22) R apis/ec2/src/test/java/org/jclouds/ec2/features/AvailabilityZoneAndRegionApiTest.java (18) R apis/ec2/src/test/java/org/jclouds/ec2/features/BaseEC2ApiTest.java (23) R apis/ec2/src/test/java/org/jclouds/ec2/features/EC2ElasticBlockStoreApiExpectTest.java (14) R apis/ec2/src/test/java/org/jclouds/ec2/features/ElasticBlockStoreApiLiveTest.java (26) R apis/ec2/src/test/java/org/jclouds/ec2/features/ElasticBlockStoreApiTest.java (36) R apis/ec2/src/test/java/org/jclouds/ec2/features/ElasticIPAddressApiLiveTest.java (23) R apis/ec2/src/test/java/org/jclouds/ec2/features/ElasticIPAddressApiTest.java (18) R apis/ec2/src/test/java/org/jclouds/ec2/features/InstanceApiLiveTest.java (22) R apis/ec2/src/test/java/org/jclouds/ec2/features/InstanceApiTest.java (56) R apis/ec2/src/test/java/org/jclouds/ec2/features/KeyPairApiLiveTest.java (22) R apis/ec2/src/test/java/org/jclouds/ec2/features/KeyPairApiTest.java (14) R apis/ec2/src/test/java/org/jclouds/ec2/features/SecurityGroupApiLiveTest.java (30) R apis/ec2/src/test/java/org/jclouds/ec2/features/SecurityGroupApiTest.java (24) R apis/ec2/src/test/java/org/jclouds/ec2/features/WindowsApiTest.java (16) M apis/ec2/src/test/java/org/jclouds/ec2/internal/BaseEC2ApiExpectTest.java (15) D apis/ec2/src/test/java/org/jclouds/ec2/internal/BaseEC2ClientExpectTest.java (64) M apis/ec2/src/test/java/org/jclouds/ec2/predicates/VolumeDetachedTest.java (6) M apis/ec2/src/test/java/org/jclouds/ec2/suppliers/DescribeAvailabilityZonesInRegionTest.java (23) R apis/openstack-nova-ec2/src/main/java/org/jclouds/openstack/nova/ec2/NovaEC2Api.java (19) M apis/openstack-nova-ec2/src/main/java/org/jclouds/openstack/nova/ec2/NovaEC2ApiMetadata.java (15) D apis/openstack-nova-ec2/src/main/java/org/jclouds/openstack/nova/ec2/NovaEC2AsyncClient.java (38) A apis/openstack-nova-ec2/src/main/java/org/jclouds/openstack/nova/ec2/config/NovaEC2HttpApiModule.java (81) D apis/openstack-nova-ec2/src/main/java/org/jclouds/openstack/nova/ec2/config/NovaEC2RestClientModule.java (118) R apis/openstack-nova-ec2/src/main/java/org/jclouds/openstack/nova/ec2/features/NovaEC2KeyPairApi.java (37) M apis/openstack-nova-ec2/src/main/java/org/jclouds/openstack/nova/ec2/loaders/NovaCreateSecurityGroupIfNeeded.java (6) D apis/openstack-nova-ec2/src/main/java/org/jclouds/openstack/nova/ec2/services/NovaEC2KeyPairAsyncClient.java (61) R apis/openstack-nova-ec2/src/test/java/org/jclouds/openstack/nova/ec2/features/NovaEC2AMIApiExpectTest.java (14) R apis/openstack-nova-ec2/src/test/java/org/jclouds/openstack/nova/ec2/features/NovaEC2AMIApiLiveTest.java (10) R apis/openstack-nova-ec2/src/test/java/org/jclouds/openstack/nova/ec2/features/NovaEC2AvailabilityZoneAndRegionApiLiveTest.java (10) R apis/openstack-nova-ec2/src/test/java/org/jclouds/openstack/nova/ec2/features/NovaEC2ElasticBlockStoreApiLiveTest.java (10) R apis/openstack-nova-ec2/src/test/java/org/jclouds/openstack/nova/ec2/features/NovaEC2ElasticBlockStoreExpectApiTest.java (14) R apis/openstack-nova-ec2/src/test/java/org/jclouds/openstack/nova/ec2/features/NovaEC2ElasticIPAddressApiLiveTest.java (10) R apis/openstack-nova-ec2/src/test/java/org/jclouds/openstack/nova/ec2/features/NovaEC2InstanceApiExpectTest.java (12) R apis/openstack-nova-ec2/src/test/java/org/jclouds/openstack/nova/ec2/features/NovaEC2InstanceApiLiveTest.java (10) R apis/openstack-nova-ec2/src/test/java/org/jclouds/openstack/nova/ec2/features/NovaEC2KeyPairApiExpectTest.java (18) R apis/openstack-nova-ec2/src/test/java/org/jclouds/openstack/nova/ec2/features/NovaEC2KeyPairApiLiveTest.java (15) A apis/openstack-nova-ec2/src/test/java/org/jclouds/openstack/nova/ec2/features/NovaEC2SecurityGroupApiLiveTest.java (32) R apis/openstack-nova-ec2/src/test/java/org/jclouds/openstack/nova/ec2/internal/BaseNovaEC2RestApiExpectTest.java (19) D apis/openstack-nova-ec2/src/test/java/org/jclouds/openstack/nova/ec2/services/NovaEC2AvailabilityZoneAndRegionClientLiveTest.java (32) A providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/AWSEC2Api.java (120) M providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/AWSEC2ApiMetadata.java (15) D providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/AWSEC2AsyncClient.java (86) D providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/AWSEC2Client.java (81) M providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/compute/AWSEC2ComputeService.java (10) M providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/compute/extensions/AWSEC2SecurityGroupExtension.java (14) M providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/compute/functions/PresentSpotRequestsAndInstances.java (8) M providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/compute/loaders/AWSEC2CreateSecurityGroupIfNeeded.java (20) M providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/compute/strategy/AWSEC2CreateNodesInGroupThenAddToSet.java (8) M providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/compute/strategy/AWSEC2DestroyNodeStrategy.java (10) M providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/compute/strategy/AWSEC2GetNodeMetadataStrategy.java (8) M providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/compute/strategy/AWSEC2ListNodesStrategy.java (10) A providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/config/AWSEC2HttpApiModule.java (98) D providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/config/AWSEC2RestClientModule.java (159) R providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/features/AWSAMIApi.java (57) R providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/features/AWSInstanceApi.java (18) R providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/features/AWSKeyPairApi.java (37) R providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/features/AWSSecurityGroupApi.java (47) R providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/features/MonitoringApi.java (35) R providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/features/PlacementGroupApi.java (59) R providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/features/SpotInstanceApi.java (86) M providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/functions/CreatePlacementGroupIfNeeded.java (10) M providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/functions/ImportOrReturnExistingKeypair.java (12) M providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/options/AWSRunInstancesOptions.java (2) M providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/options/CreateSecurityGroupOptions.java (2) M providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/options/DescribeSpotPriceHistoryOptions.java (2) M providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/options/RequestSpotInstancesOptions.java (2) M providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/predicates/PlacementGroupAvailable.java (8) M providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/predicates/PlacementGroupDeleted.java (8) M providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/predicates/SpotInstanceRequestActive.java (8) D providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/services/AWSAMIClient.java (85) D providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/services/AWSInstanceClient.java (43) D providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/services/AWSKeyPairAsyncClient.java (61) D providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/services/AWSSecurityGroupClient.java (51) D providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/services/MonitoringClient.java (64) D providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/services/PlacementGroupClient.java (89) D providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/services/SpotInstanceAsyncClient.java (128) D providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/AWSEC2AsyncClientTest.java (79) M providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/compute/AWSEC2ComputeServiceLiveTest.java (37) M providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/compute/AWSEC2TemplateBuilderLiveTest.java (12) M providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/compute/extensions/AWSEC2ImageExtensionLiveTest.java (6) M providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/compute/functions/PresentSpotRequestsAndInstancesTest.java (31) M providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/compute/internal/BaseAWSEC2ComputeServiceExpectTest.java (10) M providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/compute/loaders/AWSEC2CreateSecurityGroupIfNeededTest.java (4) R providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/features/AWSAMIApiLiveTest.java (10) R providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/features/AWSAMIApiTest.java (44) R providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/features/AWSInstanceApiLiveTest.java (15) R providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/features/AWSInstanceApiTest.java (54) R providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/features/AWSKeyPairApiLiveTest.java (22) R providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/features/AWSKeyPairApiTest.java (18) R providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/features/AWSSecurityGroupApiLiveTest.java (18) R providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/features/AWSSecurityGroupApiTest.java (26) R providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/features/BaseAWSEC2ApiTest.java (16) R providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/features/MonitoringApiLiveTest.java (13) R providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/features/MonitoringApiTest.java (12) R providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/features/PlacementGroupApiLiveTest.java (36) R providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/features/PlacementGroupApiTest.java (18) R providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/features/SpotInstanceApiLiveTest.java (34) R providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/features/SpotInstanceApiTest.java (14) M providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/features/TagSecurityGroupLiveTest.java (8) M providers/aws-ec2/src/test/java/org/jclouds/aws/ec2/functions/ImportOrReturnExistingKeypairTest.java (49) -- Patch Links -- https://github.com/jclouds/jclouds/pull/49.patch https://github.com/jclouds/jclouds/pull/49.diff
