You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jclouds.apache.org by jd...@apache.org on 2014/08/20 20:08:02 UTC

[4/4] git commit: Prefer isEmpty() for collections rather than size()

Prefer isEmpty() for collections rather than size()


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

Branch: refs/heads/master
Commit: e711275fb132c8c2f0155400de01275653ad70e7
Parents: 192785d
Author: Jeremy Daggett <je...@rackspace.com>
Authored: Wed Aug 13 13:16:43 2014 -0700
Committer: Jeremy Daggett <jd...@apache.org>
Committed: Wed Aug 20 11:07:48 2014 -0700

----------------------------------------------------------------------
 .../binders/BindUserMetadataToHeaders.java      | 10 +--
 .../internal/BYONComputeServiceAdapter.java     |  6 +-
 .../options/CreateServerOptions.java            | 12 ++--
 .../CloudServersClientLiveTest.java             |  4 +-
 .../cloudsigma/functions/BaseDriveToMap.java    |  6 +-
 ...yValuesDelimitedByBlankLinesToDriveInfo.java |  2 +-
 ...aluesDelimitedByBlankLinesToProfileInfo.java |  2 +-
 ...ValuesDelimitedByBlankLinesToServerInfo.java |  2 +-
 ...luesDelimitedByBlankLinesToStaticIPInfo.java |  2 +-
 ...eyValuesDelimitedByBlankLinesToVLANInfo.java |  2 +-
 ...ValuesDelimitedByBlankLinesToListOfMaps.java |  2 +-
 .../cloudsigma/functions/MapToDriveInfo.java    |  2 +-
 .../cloudsigma/functions/MapToProfileInfo.java  |  4 +-
 .../cloudsigma/functions/MapToServerInfo.java   |  2 +-
 .../cloudsigma/functions/MapToStaticIPInfo.java |  4 +-
 .../cloudsigma/functions/MapToVLANInfo.java     |  4 +-
 .../cloudsigma/functions/ServerToMap.java       |  4 +-
 .../cloudsigma/predicates/DriveClaimed.java     |  2 +-
 ...tSecurityGroupPairsToIndexedQueryParams.java |  2 +-
 .../BindCIDRsToCommaDelimitedQueryParam.java    |  2 +-
 .../BindIdListToCommaDelimitedQueryParam.java   |  2 +-
 .../CloudStackComputeServiceAdapter.java        | 12 ++--
 .../functions/CreateFirewallRulesForIP.java     |  4 +-
 .../CreatePortForwardingRulesForIP.java         |  2 +-
 .../functions/CreateSecurityGroupIfNeeded.java  |  2 +-
 .../predicates/CorrectHypervisorForZone.java    |  2 +-
 .../compute/CloudStackExperimentLiveTest.java   |  4 +-
 .../cloudstack/features/AddressApiLiveTest.java |  2 +-
 .../features/DomainUserApiLiveTest.java         |  2 +-
 .../features/FirewallApiLiveTest.java           |  4 +-
 .../features/GlobalHostApiLiveTest.java         |  4 +-
 .../features/GlobalStoragePoolApiLiveTest.java  |  2 +-
 .../features/GlobalUserApiLiveTest.java         |  2 +-
 .../features/GlobalVlanApiLiveTest.java         |  8 +--
 .../features/VirtualMachineApiLiveTest.java     |  4 +-
 .../cloudwatch/features/AlarmApiLiveTest.java   |  6 +-
 .../cloudwatch/features/MetricApiLiveTest.java  |  8 +--
 .../BindIpPermissionsToIndexedFormParams.java   |  2 +-
 .../jclouds/ec2/compute/EC2ComputeService.java  | 18 +++---
 .../extensions/EC2SecurityGroupExtension.java   | 48 +++++++-------
 .../ec2/compute/options/EC2TemplateOptions.java | 22 +++----
 ...curityGroupsAsNeededAndReturnRunOptions.java |  4 +-
 .../EC2CreateNodesInGroupThenAddToSet.java      |  6 +-
 .../org/jclouds/ec2/domain/SecurityGroup.java   |  2 +-
 .../jclouds/ec2/predicates/VolumeAttached.java  |  4 +-
 .../jclouds/ec2/predicates/VolumeDetached.java  |  2 +-
 .../DescribeAvailabilityZonesInRegion.java      |  2 +-
 .../org/jclouds/ec2/util/IpPermissions.java     |  2 +-
 .../org/jclouds/ec2/EBSBootEC2ApiLiveTest.java  |  6 +-
 .../elasticstack/functions/BaseDriveToMap.java  |  4 +-
 .../functions/CreateDriveRequestToMap.java      |  2 +-
 ...yValuesDelimitedByBlankLinesToDriveInfo.java |  2 +-
 ...ValuesDelimitedByBlankLinesToServerInfo.java |  2 +-
 ...ValuesDelimitedByBlankLinesToListOfMaps.java |  2 +-
 .../elasticstack/functions/MapToDriveInfo.java  |  2 +-
 .../elasticstack/functions/MapToServerInfo.java |  2 +-
 .../elasticstack/functions/ServerToMap.java     |  4 +-
 .../elasticstack/predicates/DriveClaimed.java   |  2 +-
 ...ationIdToURIFromAccessForTypeAndVersion.java |  7 ++-
 .../v2_0/compute/NovaComputeServiceAdapter.java |  6 +-
 .../extensions/NovaSecurityGroupExtension.java  |  8 +--
 .../nova/v2_0/domain/SecurityGroup.java         | 28 ++++-----
 .../nova/v2_0/options/CreateServerOptions.java  | 12 ++--
 .../v1/domain/LoadBalancer.java                 | 12 ++--
 .../v1/functions/ParseAlgorithms.java           | 10 +--
 .../v1/functions/ParseLoadBalancer.java         |  6 +-
 .../v1/functions/ParseLoadBalancers.java        |  2 +-
 .../v1/functions/ParseNestedBoolean.java        |  6 +-
 .../v1/functions/ParseNestedString.java         |  2 +-
 .../v1/functions/ParseNode.java                 | 10 +--
 .../v1/functions/ParseSessionPersistence.java   |  6 +-
 .../v1/features/LoadBalancerApiLiveTest.java    |  4 +-
 .../v1/features/NodeApiLiveTest.java            |  2 +-
 .../route53/features/HostedZoneApiLiveTest.java |  4 +-
 .../jclouds/s3/config/S3RestClientModule.java   |  2 +-
 .../jclouds/s3/internal/StubS3AsyncClient.java  |  5 +-
 .../BindAttributeNamesToIndexedFormParams.java  |  2 +-
 .../jclouds/sqs/options/CreateQueueOptions.java | 10 +--
 .../sqs/options/ReceiveMessageOptions.java      | 20 +++---
 .../aws/binders/BindMapToIndexedFormParams.java |  2 +-
 .../binders/BindTableToIndexedFormParams.java   |  2 +-
 .../java/org/jclouds/aws/util/AWSUtils.java     |  6 +-
 .../ParallelMultipartUploadStrategy.java        |  2 +-
 ...stantiateVAppTemplateParamsToXmlPayload.java |  4 +-
 .../compute/functions/HardwareForVApp.java      |  2 +-
 ...EnvelopeOrThrowIllegalArgumentException.java |  2 +-
 ...edIntoNameThenCustomizeDeployAndPowerOn.java | 18 +++---
 .../strategy/VCloudComputeServiceAdapter.java   | 10 +--
 .../vcloud/compute/util/VCloudComputeUtils.java | 10 +--
 .../vcloud/config/VCloudHttpApiModule.java      |  4 +-
 .../vcloud/domain/network/FirewallService.java  |  6 +-
 .../jclouds/vcloud/domain/network/IpScope.java  | 18 +++---
 .../vcloud/domain/network/NatService.java       | 10 +--
 .../domain/network/internal/OrgNetworkImpl.java |  4 +-
 .../functions/DefaultNetworkNameInTemplate.java |  2 +-
 .../location/OrgAndVDCToLocationSupplier.java   |  2 +-
 .../options/InstantiateVAppTemplateOptions.java |  8 +--
 ...thNameMatchingConfigurationKeyOrDefault.java |  2 +-
 ...oudResourceAllocationSettingDataHandler.java |  4 +-
 .../jclouds/blobstore/LocalAsyncBlobStore.java  |  2 +-
 .../MarkersDeleteDirectoryStrategy.java         |  6 +-
 .../strategy/internal/PutBlobsStrategyImpl.java |  2 +-
 .../azure/storage/domain/AzureStorageError.java |  4 +-
 .../jclouds/compute/domain/SecurityGroup.java   | 10 +--
 .../domain/internal/ComputeMetadataImpl.java    |  8 +--
 .../compute/domain/internal/HardwareImpl.java   |  2 +-
 .../domain/internal/NodeMetadataImpl.java       |  4 +-
 .../domain/internal/TemplateBuilderImpl.java    | 48 +++++++-------
 .../compute/internal/BaseComputeService.java    | 20 +++---
 .../compute/options/TemplateOptions.java        | 32 +++++-----
 .../stub/config/StubComputeServiceAdapter.java  | 10 +--
 .../extensions/StubSecurityGroupExtension.java  | 24 +++----
 .../compute/util/ComputeServiceUtils.java       | 18 +++---
 .../internal/BaseComputeServiceLiveTest.java    | 16 ++---
 .../collect/AdvanceUntilEmptyIterable.java      | 12 ++--
 .../collect/internal/Arg0ToPagedIterable.java   |  2 +-
 .../internal/CallerArg0ToPagedIterable.java     |  2 +-
 .../org/jclouds/concurrent/FutureIterables.java | 32 +++++-----
 .../config/ExecutorServiceModule.java           | 10 +--
 .../jclouds/domain/internal/LocationImpl.java   |  4 +-
 .../java/org/jclouds/functions/JoinOnComma.java |  2 +-
 .../jclouds/functions/OnlyElementOrNull.java    |  2 +-
 .../main/java/org/jclouds/http/HttpMessage.java | 30 ++++-----
 core/src/main/java/org/jclouds/http/Uris.java   | 34 +++++-----
 .../functions/UnwrapOnlyJsonValueInSet.java     |  2 +-
 .../org/jclouds/http/options/GetOptions.java    | 22 +++----
 .../location/functions/RegionToEndpoint.java    |  2 +-
 .../location/functions/ZoneToEndpoint.java      |  2 +-
 .../fromconfig/AnyOrConfiguredRegionId.java     |  6 +-
 .../fromconfig/AnyOrConfiguredZoneId.java       |  6 +-
 .../suppliers/all/RegionToProvider.java         |  2 +-
 .../all/RegionToProviderOrJustProvider.java     |  2 +-
 .../location/suppliers/all/ZoneToProvider.java  |  2 +-
 .../ZoneToRegionToProviderOrJustProvider.java   |  6 +-
 .../RegionIdToZoneIdsFromConfiguration.java     |  4 +-
 .../BindLoggersAnnotatedWithResource.java       |  2 +-
 .../java/org/jclouds/reflect/Invocation.java    |  6 +-
 .../rest/binders/BindMapToStringPayload.java    |  2 +-
 .../rest/internal/RestAnnotationProcessor.java  |  8 +--
 .../suppliers/SupplyKeyMatchingValueOrNull.java |  2 +-
 .../BindLaunchSpecificationToFormParams.java    |  6 +-
 .../aws/ec2/compute/AWSEC2ComputeService.java   |  2 +-
 .../aws/ec2/compute/AWSEC2TemplateOptions.java  | 16 ++---
 .../AWSEC2ComputeServiceContextModule.java      | 10 +--
 .../AWSEC2SecurityGroupExtension.java           | 14 ++---
 .../AWSEC2CreateSecurityGroupIfNeeded.java      |  4 +-
 ...curityGroupsAsNeededAndReturnRunOptions.java |  6 +-
 .../compute/AWSEC2ComputeServiceLiveTest.java   |  2 +-
 .../ec2/features/SpotInstanceApiLiveTest.java   |  4 +-
 .../binders/BindPartIdsAndETagsToRequest.java   |  2 +-
 .../ParallelMultipartUploadStrategy.java        | 66 ++++++++++----------
 .../ParseAzureBlobErrorFromXmlContent.java      |  2 +-
 .../v3/features/GeoRegionGroupApiLiveTest.java  |  6 +-
 .../v3/features/GeoServiceApiLiveTest.java      |  4 +-
 .../dynect/v3/features/RecordApiLiveTest.java   |  2 +-
 .../compute/GleSYSComputeServiceAdapter.java    | 12 ++--
 .../glesys/features/ArchiveApiLiveTest.java     | 16 ++---
 .../glesys/features/ServerApiLiveTest.java      | 42 ++++++-------
 .../ParseCredentialsFromJsonResponse.java       |  2 +-
 .../SoftLayerComputeServiceAdapter.java         |  2 +-
 .../features/DirectionalGroupApiLiveTest.java   |  2 +-
 .../org/jclouds/scriptbuilder/InitScript.java   | 16 ++---
 .../jclouds/scriptbuilder/ScriptBuilder.java    |  4 +-
 .../scriptbuilder/domain/AppendFile.java        |  2 +-
 .../scriptbuilder/statements/login/UserAdd.java | 12 ++--
 165 files changed, 616 insertions(+), 620 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/atmos/src/main/java/org/jclouds/atmos/binders/BindUserMetadataToHeaders.java
----------------------------------------------------------------------
diff --git a/apis/atmos/src/main/java/org/jclouds/atmos/binders/BindUserMetadataToHeaders.java b/apis/atmos/src/main/java/org/jclouds/atmos/binders/BindUserMetadataToHeaders.java
index 8259495..8ccf2c3 100644
--- a/apis/atmos/src/main/java/org/jclouds/atmos/binders/BindUserMetadataToHeaders.java
+++ b/apis/atmos/src/main/java/org/jclouds/atmos/binders/BindUserMetadataToHeaders.java
@@ -35,7 +35,7 @@ import com.google.common.collect.Multimaps;
 
 @Singleton
 public class BindUserMetadataToHeaders implements Binder, Function<UserMetadata, Map<String, String>> {
-   
+
    @SuppressWarnings("unchecked")
    @Override
    public <R extends HttpRequest> R bindToRequest(R request, Object input) {
@@ -48,19 +48,19 @@ public class BindUserMetadataToHeaders implements Binder, Function<UserMetadata,
    @Override
    public Map<String, String> apply(UserMetadata md) {
       Builder<String, String> headers = ImmutableMap.builder();
-      if (md.getMetadata().size() > 0) {
+      if (!md.getMetadata().isEmpty()) {
          String header = Joiner.on(',').withKeyValueSeparator("=").join(md.getMetadata());
          headers.put("x-emc-meta", header);
       }
-      if (md.getListableMetadata().size() > 0) {
+      if (!md.getListableMetadata().isEmpty()) {
          String header = Joiner.on(',').withKeyValueSeparator("=").join(md.getListableMetadata());
          headers.put("x-emc-listable-meta", header);
       }
-      if (md.getTags().size() > 0) {
+      if (!md.getTags().isEmpty()) {
          String header = Joiner.on(',').join(md.getTags());
          headers.put("x-emc-tags", header);
       }
-      if (md.getListableTags().size() > 0) {
+      if (!md.getListableTags().isEmpty()) {
          String header = Joiner.on(',').join(md.getListableTags());
          headers.put("x-emc-listable-tags", header);
       }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/byon/src/main/java/org/jclouds/byon/internal/BYONComputeServiceAdapter.java
----------------------------------------------------------------------
diff --git a/apis/byon/src/main/java/org/jclouds/byon/internal/BYONComputeServiceAdapter.java b/apis/byon/src/main/java/org/jclouds/byon/internal/BYONComputeServiceAdapter.java
index aa178fd..680eee9 100644
--- a/apis/byon/src/main/java/org/jclouds/byon/internal/BYONComputeServiceAdapter.java
+++ b/apis/byon/src/main/java/org/jclouds/byon/internal/BYONComputeServiceAdapter.java
@@ -98,7 +98,7 @@ public class BYONComputeServiceAdapter implements JCloudsNativeComputeServiceAda
                      return arg0.getLocationId();
                   }
                }), Predicates.notNull()));
-      if (zones.size() == 0)
+      if (zones.isEmpty())
          return locations.add(provider).build();
       else
          for (String zone : zones) {
@@ -110,7 +110,7 @@ public class BYONComputeServiceAdapter implements JCloudsNativeComputeServiceAda
 
    @Override
    public NodeMetadata getNode(String id) {
-      
+
       Node node = null;
       try {
          node = nodes.get().getUnchecked(id);
@@ -124,7 +124,7 @@ public class BYONComputeServiceAdapter implements JCloudsNativeComputeServiceAda
    public Image getImage(final String id) {
       throw new UnsupportedOperationException();
    }
-   
+
    @Override
    public void destroyNode(final String id) {
       throw new UnsupportedOperationException();

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudservers/src/main/java/org/jclouds/cloudservers/options/CreateServerOptions.java
----------------------------------------------------------------------
diff --git a/apis/cloudservers/src/main/java/org/jclouds/cloudservers/options/CreateServerOptions.java b/apis/cloudservers/src/main/java/org/jclouds/cloudservers/options/CreateServerOptions.java
index 7c3ceb8..c6e0cc2 100644
--- a/apis/cloudservers/src/main/java/org/jclouds/cloudservers/options/CreateServerOptions.java
+++ b/apis/cloudservers/src/main/java/org/jclouds/cloudservers/options/CreateServerOptions.java
@@ -92,9 +92,9 @@ public class CreateServerOptions implements MapBinder {
       ServerRequest server = new ServerRequest(checkNotNull(postParams.get("name"), "name parameter not present").toString(),
                Integer.parseInt(checkNotNull(postParams.get("imageId"), "imageId parameter not present").toString()),
                Integer.parseInt(checkNotNull(postParams.get("flavorId"), "flavorId parameter not present").toString()));
-      if (metadata.size() > 0)
+      if (!metadata.isEmpty())
          server.metadata = metadata;
-      if (files.size() > 0)
+      if (!files.isEmpty())
          server.personality = files;
       if (sharedIpGroupId != null)
          server.sharedIpGroupId = this.sharedIpGroupId;
@@ -130,16 +130,16 @@ public class CreateServerOptions implements MapBinder {
     * group. Any server in a group can share one or more public IPs with any other server in the
     * group. With the exception of the first server in a shared IP group, servers must be launched
     * into shared IP groups. A server may only be a member of one shared IP group.
-    * 
+    *
     * <p/>
     * Servers in the same shared IP group can share public IPs for various high availability and
     * load balancing configurations. To launch an HA server, include the optional sharedIpGroupId
     * element and the server will be launched into that shared IP group.
     * <p />
-    * 
+    *
     * Note: sharedIpGroupId is an optional parameter and for optimal performance, should ONLY be
     * specified when intending to share IPs between servers.
-    * 
+    *
     * @see #withSharedIp(String)
     */
    public CreateServerOptions withSharedIpGroup(int id) {
@@ -177,7 +177,7 @@ public class CreateServerOptions implements MapBinder {
     * specify that the target server network configuration be modified). Shared IP addresses can be
     * used with many standard heartbeat facilities (e.g. keepalived) that monitor for failure and
     * manage IP failover.
-    * 
+    *
     * <p/>
     * If you intend to use a shared IP on the server being created and have no need for a separate
     * public IP address, you may launch the server into a shared IP group and specify an IP address

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudservers/src/test/java/org/jclouds/cloudservers/CloudServersClientLiveTest.java
----------------------------------------------------------------------
diff --git a/apis/cloudservers/src/test/java/org/jclouds/cloudservers/CloudServersClientLiveTest.java b/apis/cloudservers/src/test/java/org/jclouds/cloudservers/CloudServersClientLiveTest.java
index aa9c2ba..c9240f9 100644
--- a/apis/cloudservers/src/test/java/org/jclouds/cloudservers/CloudServersClientLiveTest.java
+++ b/apis/cloudservers/src/test/java/org/jclouds/cloudservers/CloudServersClientLiveTest.java
@@ -94,8 +94,8 @@ public class CloudServersClientLiveTest extends BaseComputeServiceContextLiveTes
    public void testLimits() throws Exception {
       Limits response = client.getLimits();
       assert null != response;
-      assertTrue(response.getAbsolute().size() > 0);
-      assertTrue(response.getRate().size() > 0);
+      assertTrue(!response.getAbsolute().isEmpty());
+      assertTrue(!response.getRate().isEmpty());
    }
 
    public void testListServers() throws Exception {

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/BaseDriveToMap.java
----------------------------------------------------------------------
diff --git a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/BaseDriveToMap.java b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/BaseDriveToMap.java
index 4fe8876..47e9d2a 100644
--- a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/BaseDriveToMap.java
+++ b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/BaseDriveToMap.java
@@ -39,11 +39,11 @@ public class BaseDriveToMap implements Function<Drive, Map<String, String>> {
       builder.put("size", from.getSize() + "");
       if (from.getClaimType() != ClaimType.EXCLUSIVE)
          builder.put("claim:type", from.getClaimType().toString());
-      if (from.getTags().size() != 0)
+      if (!from.getTags().isEmpty())
           builder.put("tags", Joiner.on(' ').join(from.getTags()));
-      if (from.getReaders().size() != 0)
+      if (!from.getReaders().isEmpty())
          builder.put("readers", Joiner.on(' ').join(from.getReaders()));
-      if (from.getUse().size() != 0)
+      if (!from.getUse().isEmpty())
          builder.put("use", Joiner.on(' ').join(from.getUse()));
       return builder.build();
    }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/KeyValuesDelimitedByBlankLinesToDriveInfo.java
----------------------------------------------------------------------
diff --git a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/KeyValuesDelimitedByBlankLinesToDriveInfo.java b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/KeyValuesDelimitedByBlankLinesToDriveInfo.java
index 5753a52..e247adc 100644
--- a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/KeyValuesDelimitedByBlankLinesToDriveInfo.java
+++ b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/KeyValuesDelimitedByBlankLinesToDriveInfo.java
@@ -39,7 +39,7 @@ public class KeyValuesDelimitedByBlankLinesToDriveInfo implements Function<HttpR
    @Override
    public DriveInfo apply(HttpResponse response) {
       Set<DriveInfo> drives = setParser.apply(response);
-      if (drives.size() == 0)
+      if (drives.isEmpty())
          return null;
       return Iterables.get(drives, 0);
    }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/KeyValuesDelimitedByBlankLinesToProfileInfo.java
----------------------------------------------------------------------
diff --git a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/KeyValuesDelimitedByBlankLinesToProfileInfo.java b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/KeyValuesDelimitedByBlankLinesToProfileInfo.java
index 9e1e61b..282787e 100644
--- a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/KeyValuesDelimitedByBlankLinesToProfileInfo.java
+++ b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/KeyValuesDelimitedByBlankLinesToProfileInfo.java
@@ -39,7 +39,7 @@ public class KeyValuesDelimitedByBlankLinesToProfileInfo implements Function<Htt
    @Override
    public ProfileInfo apply(HttpResponse response) {
       Set<ProfileInfo> drives = setParser.apply(response);
-      if (drives.size() == 0)
+      if (drives.isEmpty())
          return null;
       return Iterables.get(drives, 0);
    }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/KeyValuesDelimitedByBlankLinesToServerInfo.java
----------------------------------------------------------------------
diff --git a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/KeyValuesDelimitedByBlankLinesToServerInfo.java b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/KeyValuesDelimitedByBlankLinesToServerInfo.java
index e22a420..0f68bb2 100644
--- a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/KeyValuesDelimitedByBlankLinesToServerInfo.java
+++ b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/KeyValuesDelimitedByBlankLinesToServerInfo.java
@@ -39,7 +39,7 @@ public class KeyValuesDelimitedByBlankLinesToServerInfo implements Function<Http
    @Override
    public ServerInfo apply(HttpResponse response) {
       Set<ServerInfo> drives = setParser.apply(response);
-      if (drives.size() == 0)
+      if (drives.isEmpty())
          return null;
       return Iterables.get(drives, 0);
    }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/KeyValuesDelimitedByBlankLinesToStaticIPInfo.java
----------------------------------------------------------------------
diff --git a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/KeyValuesDelimitedByBlankLinesToStaticIPInfo.java b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/KeyValuesDelimitedByBlankLinesToStaticIPInfo.java
index b02f16b..7e81d84 100644
--- a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/KeyValuesDelimitedByBlankLinesToStaticIPInfo.java
+++ b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/KeyValuesDelimitedByBlankLinesToStaticIPInfo.java
@@ -39,7 +39,7 @@ public class KeyValuesDelimitedByBlankLinesToStaticIPInfo implements Function<Ht
    @Override
    public StaticIPInfo apply(HttpResponse response) {
       Set<StaticIPInfo> drives = setParser.apply(response);
-      if (drives.size() == 0)
+      if (drives.isEmpty())
          return null;
       return Iterables.get(drives, 0);
    }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/KeyValuesDelimitedByBlankLinesToVLANInfo.java
----------------------------------------------------------------------
diff --git a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/KeyValuesDelimitedByBlankLinesToVLANInfo.java b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/KeyValuesDelimitedByBlankLinesToVLANInfo.java
index fba64be..85b2b2b 100644
--- a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/KeyValuesDelimitedByBlankLinesToVLANInfo.java
+++ b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/KeyValuesDelimitedByBlankLinesToVLANInfo.java
@@ -39,7 +39,7 @@ public class KeyValuesDelimitedByBlankLinesToVLANInfo implements Function<HttpRe
    @Override
    public VLANInfo apply(HttpResponse response) {
       Set<VLANInfo> drives = setParser.apply(response);
-      if (drives.size() == 0)
+      if (drives.isEmpty())
          return null;
       return Iterables.get(drives, 0);
    }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/ListOfKeyValuesDelimitedByBlankLinesToListOfMaps.java
----------------------------------------------------------------------
diff --git a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/ListOfKeyValuesDelimitedByBlankLinesToListOfMaps.java b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/ListOfKeyValuesDelimitedByBlankLinesToListOfMaps.java
index 0ded8ac..92d8331 100644
--- a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/ListOfKeyValuesDelimitedByBlankLinesToListOfMaps.java
+++ b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/ListOfKeyValuesDelimitedByBlankLinesToListOfMaps.java
@@ -45,7 +45,7 @@ public class ListOfKeyValuesDelimitedByBlankLinesToListOfMaps implements Functio
                   }
                }
             }
-            if (map.size() != 0)
+            if (!map.isEmpty())
                maps.add(map);
          }
       }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/MapToDriveInfo.java
----------------------------------------------------------------------
diff --git a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/MapToDriveInfo.java b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/MapToDriveInfo.java
index ff59bab..ef5fc58 100644
--- a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/MapToDriveInfo.java
+++ b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/MapToDriveInfo.java
@@ -42,7 +42,7 @@ public class MapToDriveInfo implements Function<Map<String, String>, DriveInfo>
 
    @Override
    public DriveInfo apply(Map<String, String> from) {
-      if (from.size() == 0)
+      if (from.isEmpty())
          return null;
       DriveInfo.Builder builder = new DriveInfo.Builder();
       builder.name(from.get("name"));

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/MapToProfileInfo.java
----------------------------------------------------------------------
diff --git a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/MapToProfileInfo.java b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/MapToProfileInfo.java
index 5b364cf..50d24e4 100644
--- a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/MapToProfileInfo.java
+++ b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/MapToProfileInfo.java
@@ -35,9 +35,7 @@ public class MapToProfileInfo implements Function<Map<String, String>, ProfileIn
 
    @Override
    public ProfileInfo apply(Map<String, String> from) {
-      if (from.size() == 0)
-         return null;
-      if (from.size() == 0)
+      if (from.isEmpty())
          return null;
       ProfileInfo.Builder builder = new ProfileInfo.Builder();
       builder.uuid(from.get("uuid"));

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/MapToServerInfo.java
----------------------------------------------------------------------
diff --git a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/MapToServerInfo.java b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/MapToServerInfo.java
index d539743..245e011 100644
--- a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/MapToServerInfo.java
+++ b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/MapToServerInfo.java
@@ -51,7 +51,7 @@ public class MapToServerInfo implements Function<Map<String, String>, ServerInfo
 
    @Override
    public ServerInfo apply(Map<String, String> from) {
-      if (from.size() == 0)
+      if (from.isEmpty())
          return null;
       ServerInfo.Builder builder = new ServerInfo.Builder();
       builder.name(from.get("name"));

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/MapToStaticIPInfo.java
----------------------------------------------------------------------
diff --git a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/MapToStaticIPInfo.java b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/MapToStaticIPInfo.java
index 7d66dd9..0a18cfa 100644
--- a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/MapToStaticIPInfo.java
+++ b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/MapToStaticIPInfo.java
@@ -35,9 +35,7 @@ public class MapToStaticIPInfo implements Function<Map<String, String>, StaticIP
 
    @Override
    public StaticIPInfo apply(Map<String, String> from) {
-      if (from.size() == 0)
-         return null;
-      if (from.size() == 0)
+      if (from.isEmpty())
          return null;
       StaticIPInfo.Builder builder = new StaticIPInfo.Builder();
       builder.ip(from.get("resource"));

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/MapToVLANInfo.java
----------------------------------------------------------------------
diff --git a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/MapToVLANInfo.java b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/MapToVLANInfo.java
index 51c43e3..6b404e3 100644
--- a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/MapToVLANInfo.java
+++ b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/MapToVLANInfo.java
@@ -34,9 +34,7 @@ public class MapToVLANInfo implements Function<Map<String, String>, VLANInfo> {
 
    @Override
    public VLANInfo apply(Map<String, String> from) {
-      if (from.size() == 0)
-         return null;
-      if (from.size() == 0)
+      if (from.isEmpty())
          return null;
       VLANInfo.Builder builder = new VLANInfo.Builder();
       builder.uuid(from.get("resource"));

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/ServerToMap.java
----------------------------------------------------------------------
diff --git a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/ServerToMap.java b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/ServerToMap.java
index ced6c20..c529db3 100644
--- a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/ServerToMap.java
+++ b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/functions/ServerToMap.java
@@ -45,7 +45,7 @@ public class ServerToMap implements Function<Server, Map<String, String>> {
          builder.put("smp", "auto");
       builder.put("mem", from.getMem() + "");
       builder.put("persistent", from.isPersistent() + "");
-      if (from.getBootDeviceIds().size() != 0)
+      if (!from.getBootDeviceIds().isEmpty())
          builder.put("boot", Joiner.on(' ').join(from.getBootDeviceIds()));
       for (Entry<String, ? extends Device> entry : from.getDevices().entrySet()) {
          builder.put(entry.getKey(), entry.getValue().getDriveUuid());
@@ -67,7 +67,7 @@ public class ServerToMap implements Function<Server, Map<String, String>> {
          builder.put("vnc:password", from.getVnc().getPassword());
       if (from.getVnc().isTls())
          builder.put("vnc:tls", "on");
-      if (from.getUse().size() != 0)
+      if (!from.getUse().isEmpty())
          builder.put("use", Joiner.on(' ').join(from.getUse()));
       return builder.build();
    }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/predicates/DriveClaimed.java
----------------------------------------------------------------------
diff --git a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/predicates/DriveClaimed.java b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/predicates/DriveClaimed.java
index d651ff4..ce1b95b 100644
--- a/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/predicates/DriveClaimed.java
+++ b/apis/cloudsigma/src/main/java/org/jclouds/cloudsigma/predicates/DriveClaimed.java
@@ -47,7 +47,7 @@ public class DriveClaimed implements Predicate<DriveInfo> {
       if (drive == null)
          return false;
       logger.trace("%s: looking for drive claims: currently: %s", drive.getUuid(), drive.getClaimed());
-      return drive.getClaimed().size() > 0;
+      return !drive.getClaimed().isEmpty();
    }
 
    private DriveInfo refresh(DriveInfo drive) {

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudstack/src/main/java/org/jclouds/cloudstack/binders/BindAccountSecurityGroupPairsToIndexedQueryParams.java
----------------------------------------------------------------------
diff --git a/apis/cloudstack/src/main/java/org/jclouds/cloudstack/binders/BindAccountSecurityGroupPairsToIndexedQueryParams.java b/apis/cloudstack/src/main/java/org/jclouds/cloudstack/binders/BindAccountSecurityGroupPairsToIndexedQueryParams.java
index 3665263..b99e644 100644
--- a/apis/cloudstack/src/main/java/org/jclouds/cloudstack/binders/BindAccountSecurityGroupPairsToIndexedQueryParams.java
+++ b/apis/cloudstack/src/main/java/org/jclouds/cloudstack/binders/BindAccountSecurityGroupPairsToIndexedQueryParams.java
@@ -41,7 +41,7 @@ public class BindAccountSecurityGroupPairsToIndexedQueryParams implements Binder
    public <R extends HttpRequest> R bindToRequest(R request, Object input) {
       checkArgument(input instanceof Multimap<?, ?>, "this binder is only valid for Multimaps!");
       Multimap<String, String> pairs = (Multimap<String, String>) checkNotNull(input, "account group pairs");
-      checkArgument(pairs.size() > 0, "you must specify at least one account, group pair");
+      checkArgument(!pairs.isEmpty(), "you must specify at least one account, group pair");
 
       Multimap<String, String> existingParams = queryParser().apply(request.getEndpoint().getQuery());
       Builder<String, String> map = ImmutableMultimap.<String, String> builder().putAll(existingParams);

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudstack/src/main/java/org/jclouds/cloudstack/binders/BindCIDRsToCommaDelimitedQueryParam.java
----------------------------------------------------------------------
diff --git a/apis/cloudstack/src/main/java/org/jclouds/cloudstack/binders/BindCIDRsToCommaDelimitedQueryParam.java b/apis/cloudstack/src/main/java/org/jclouds/cloudstack/binders/BindCIDRsToCommaDelimitedQueryParam.java
index 225a8d7..28adf91 100644
--- a/apis/cloudstack/src/main/java/org/jclouds/cloudstack/binders/BindCIDRsToCommaDelimitedQueryParam.java
+++ b/apis/cloudstack/src/main/java/org/jclouds/cloudstack/binders/BindCIDRsToCommaDelimitedQueryParam.java
@@ -35,7 +35,7 @@ public class BindCIDRsToCommaDelimitedQueryParam implements Binder {
    public <R extends HttpRequest> R bindToRequest(R request, Object input) {
       checkArgument(input instanceof Iterable<?>, "this binder is only valid for Iterables!");
       Iterable<String> cidrs = (Iterable<String>) checkNotNull(input, "cidr list");
-      checkArgument(Iterables.size(cidrs) > 0, "you must specify at least one cidr range");
+      checkArgument(!Iterables.isEmpty(cidrs), "you must specify at least one cidr range");
       return (R) request.toBuilder().replaceQueryParam("cidrlist", Joiner.on(',').join(cidrs)).build();
    }
 }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudstack/src/main/java/org/jclouds/cloudstack/binders/BindIdListToCommaDelimitedQueryParam.java
----------------------------------------------------------------------
diff --git a/apis/cloudstack/src/main/java/org/jclouds/cloudstack/binders/BindIdListToCommaDelimitedQueryParam.java b/apis/cloudstack/src/main/java/org/jclouds/cloudstack/binders/BindIdListToCommaDelimitedQueryParam.java
index 57cf321..f4b3813 100644
--- a/apis/cloudstack/src/main/java/org/jclouds/cloudstack/binders/BindIdListToCommaDelimitedQueryParam.java
+++ b/apis/cloudstack/src/main/java/org/jclouds/cloudstack/binders/BindIdListToCommaDelimitedQueryParam.java
@@ -35,7 +35,7 @@ public class BindIdListToCommaDelimitedQueryParam implements Binder {
    public <R extends HttpRequest> R bindToRequest(R request, Object input) {
       checkArgument(input instanceof Iterable<?>, "this binder is only valid for Iterables!");
       Iterable<Long> numbers = (Iterable<Long>) checkNotNull(input, "list of Longs");
-      checkArgument(Iterables.size(numbers) > 0, "you must specify at least one element");
+      checkArgument(!Iterables.isEmpty(numbers), "you must specify at least one element");
       return (R) request.toBuilder().replaceQueryParam("ids", Joiner.on(',').join(numbers)).build();
    }
 }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudstack/src/main/java/org/jclouds/cloudstack/compute/strategy/CloudStackComputeServiceAdapter.java
----------------------------------------------------------------------
diff --git a/apis/cloudstack/src/main/java/org/jclouds/cloudstack/compute/strategy/CloudStackComputeServiceAdapter.java b/apis/cloudstack/src/main/java/org/jclouds/cloudstack/compute/strategy/CloudStackComputeServiceAdapter.java
index 9c596e4..29f5c85 100644
--- a/apis/cloudstack/src/main/java/org/jclouds/cloudstack/compute/strategy/CloudStackComputeServiceAdapter.java
+++ b/apis/cloudstack/src/main/java/org/jclouds/cloudstack/compute/strategy/CloudStackComputeServiceAdapter.java
@@ -164,7 +164,7 @@ public class CloudStackComputeServiceAdapter implements
       } else if (templateOptions.getDomainId() != null) {
           options.domainId(templateOptions.getDomainId());
       }
-      
+
       OptionsConverter optionsConverter = optionsConverters.get(zone.getNetworkType());
       options = optionsConverter.apply(templateOptions, networks, zoneId, options);
 
@@ -174,7 +174,7 @@ public class CloudStackComputeServiceAdapter implements
          options.ipOnDefaultNetwork(templateOptions.getIpOnDefaultNetwork());
       }
 
-      if (templateOptions.getIpsToNetworks().size() > 0) {
+      if (!templateOptions.getIpsToNetworks().isEmpty()) {
          options.ipsToNetworks(templateOptions.getIpsToNetworks());
       }
 
@@ -211,8 +211,8 @@ public class CloudStackComputeServiceAdapter implements
       if (supportsSecurityGroups().apply(zone)) {
          List<Integer> inboundPorts = Ints.asList(templateOptions.getInboundPorts());
 
-         if (templateOptions.getSecurityGroupIds().size() == 0
-             && inboundPorts.size() > 0
+         if (templateOptions.getSecurityGroupIds().isEmpty()
+             && !inboundPorts.isEmpty()
              && templateOptions.shouldGenerateSecurityGroup()) {
             String securityGroupName = namingConvention.create().sharedNameForGroup(group);
             SecurityGroup sg = securityGroupCache.getUnchecked(ZoneSecurityGroupNamePortsCidrs.builder()
@@ -223,7 +223,7 @@ public class CloudStackComputeServiceAdapter implements
             options.securityGroupId(sg.getId());
          }
       }
-      
+
       String templateId = template.getImage().getId();
       String serviceOfferingId = template.getHardware().getId();
 
@@ -241,7 +241,7 @@ public class CloudStackComputeServiceAdapter implements
          assert vm.getPassword() != null : vm;
          credentialsBuilder.password(vm.getPassword());
       }
-      
+
       try {
           if (templateOptions.shouldSetupStaticNat()) {
              Capabilities capabilities = client.getConfigurationApi().listCapabilities();

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudstack/src/main/java/org/jclouds/cloudstack/functions/CreateFirewallRulesForIP.java
----------------------------------------------------------------------
diff --git a/apis/cloudstack/src/main/java/org/jclouds/cloudstack/functions/CreateFirewallRulesForIP.java b/apis/cloudstack/src/main/java/org/jclouds/cloudstack/functions/CreateFirewallRulesForIP.java
index 14b68b5..dd15e19 100644
--- a/apis/cloudstack/src/main/java/org/jclouds/cloudstack/functions/CreateFirewallRulesForIP.java
+++ b/apis/cloudstack/src/main/java/org/jclouds/cloudstack/functions/CreateFirewallRulesForIP.java
@@ -65,11 +65,11 @@ public class CreateFirewallRulesForIP {
    public Set<FirewallRule> apply(PublicIPAddress ip, Iterable<Integer> ports) {
       return apply(ip, "tcp", ports);
    }
-    
+
    public Set<FirewallRule> apply(PublicIPAddress ip, String protocol, Iterable<Integer> ports) {
       checkState(ip.getVirtualMachineId() != null,
             "ip %s should be static NATed to a virtual machine before applying rules", ip);
-      if (Iterables.size(ports) == 0)
+      if (Iterables.isEmpty(ports))
          return ImmutableSet.<FirewallRule> of();
       Builder<AsyncCreateResponse> responses = ImmutableSet.builder();
       for (int port : ports) {

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudstack/src/main/java/org/jclouds/cloudstack/functions/CreatePortForwardingRulesForIP.java
----------------------------------------------------------------------
diff --git a/apis/cloudstack/src/main/java/org/jclouds/cloudstack/functions/CreatePortForwardingRulesForIP.java b/apis/cloudstack/src/main/java/org/jclouds/cloudstack/functions/CreatePortForwardingRulesForIP.java
index c98e331..dd09f77 100644
--- a/apis/cloudstack/src/main/java/org/jclouds/cloudstack/functions/CreatePortForwardingRulesForIP.java
+++ b/apis/cloudstack/src/main/java/org/jclouds/cloudstack/functions/CreatePortForwardingRulesForIP.java
@@ -68,7 +68,7 @@ public class CreatePortForwardingRulesForIP {
    public Set<IPForwardingRule> apply(PublicIPAddress ip, String protocol, Iterable<Integer> ports) {
       checkState(ip.getVirtualMachineId() != null,
             "ip %s should be static NATed to a virtual machine before applying rules", ip);
-      if (Iterables.size(ports) == 0)
+      if (Iterables.isEmpty(ports))
          return ImmutableSet.<IPForwardingRule> of();
       Builder<AsyncCreateResponse> responses = ImmutableSet.builder();
       for (int port : ports) {

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudstack/src/main/java/org/jclouds/cloudstack/functions/CreateSecurityGroupIfNeeded.java
----------------------------------------------------------------------
diff --git a/apis/cloudstack/src/main/java/org/jclouds/cloudstack/functions/CreateSecurityGroupIfNeeded.java b/apis/cloudstack/src/main/java/org/jclouds/cloudstack/functions/CreateSecurityGroupIfNeeded.java
index 5f7ad33..8360977 100644
--- a/apis/cloudstack/src/main/java/org/jclouds/cloudstack/functions/CreateSecurityGroupIfNeeded.java
+++ b/apis/cloudstack/src/main/java/org/jclouds/cloudstack/functions/CreateSecurityGroupIfNeeded.java
@@ -75,7 +75,7 @@ public class CreateSecurityGroupIfNeeded implements Function<ZoneSecurityGroupNa
 
          logger.debug("<< created securityGroup(%s)", securityGroup);
          ImmutableSet<String> cidrs;
-         if (input.getCidrs().size() > 0) {
+         if (!input.getCidrs().isEmpty()) {
             cidrs = ImmutableSet.copyOf(input.getCidrs());
          } else {
             cidrs = ImmutableSet.of("0.0.0.0/0");

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudstack/src/main/java/org/jclouds/cloudstack/predicates/CorrectHypervisorForZone.java
----------------------------------------------------------------------
diff --git a/apis/cloudstack/src/main/java/org/jclouds/cloudstack/predicates/CorrectHypervisorForZone.java b/apis/cloudstack/src/main/java/org/jclouds/cloudstack/predicates/CorrectHypervisorForZone.java
index 0bc04a9..e518763 100644
--- a/apis/cloudstack/src/main/java/org/jclouds/cloudstack/predicates/CorrectHypervisorForZone.java
+++ b/apis/cloudstack/src/main/java/org/jclouds/cloudstack/predicates/CorrectHypervisorForZone.java
@@ -76,7 +76,7 @@ public class CorrectHypervisorForZone implements Function<String, Predicate<Temp
       } catch (NullPointerException e) {
          throw new IllegalArgumentException("unknown zone: " + zoneId);
       }
-      if (acceptableHypervisorsInZone.size() == 0)
+      if (acceptableHypervisorsInZone.isEmpty())
          return Predicates.alwaysFalse();
       return new Predicate<Template>() {
 

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudstack/src/test/java/org/jclouds/cloudstack/compute/CloudStackExperimentLiveTest.java
----------------------------------------------------------------------
diff --git a/apis/cloudstack/src/test/java/org/jclouds/cloudstack/compute/CloudStackExperimentLiveTest.java b/apis/cloudstack/src/test/java/org/jclouds/cloudstack/compute/CloudStackExperimentLiveTest.java
index 938cc77..7affab0 100644
--- a/apis/cloudstack/src/test/java/org/jclouds/cloudstack/compute/CloudStackExperimentLiveTest.java
+++ b/apis/cloudstack/src/test/java/org/jclouds/cloudstack/compute/CloudStackExperimentLiveTest.java
@@ -76,7 +76,7 @@ public class CloudStackExperimentLiveTest extends BaseCloudStackApiLiveTest {
       Network network = null;
       Set<? extends NodeMetadata> nodes = null;
       try {
-         assert view.getComputeService().listAssignableLocations().size() > 0;
+         assert !view.getComputeService().listAssignableLocations().isEmpty();
 
          Template template = view.getComputeService().templateBuilder().build();
 
@@ -103,7 +103,7 @@ public class CloudStackExperimentLiveTest extends BaseCloudStackApiLiveTest {
          // launch the VM
          nodes = view.getComputeService().createNodesInGroup(group, 1, template);
 
-         assert nodes.size() > 0;
+         assert !nodes.isEmpty();
 
       } catch (RunNodesException e) {
          Logger.getAnonymousLogger().log(Level.SEVERE, "error creating nodes", e);

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/AddressApiLiveTest.java
----------------------------------------------------------------------
diff --git a/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/AddressApiLiveTest.java b/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/AddressApiLiveTest.java
index 4a37fb0..dc685a6 100644
--- a/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/AddressApiLiveTest.java
+++ b/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/AddressApiLiveTest.java
@@ -42,7 +42,7 @@ public class AddressApiLiveTest extends BaseCloudStackApiLiveTest {
 
    @BeforeGroups(groups = "live")
    void networksEnabled() {
-      networksEnabled = client.getNetworkApi().listNetworks().size() > 0;
+      networksEnabled = !client.getNetworkApi().listNetworks().isEmpty();
    }
 
    private PublicIPAddress ip = null;

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/DomainUserApiLiveTest.java
----------------------------------------------------------------------
diff --git a/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/DomainUserApiLiveTest.java b/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/DomainUserApiLiveTest.java
index cb56476..2deb76c 100644
--- a/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/DomainUserApiLiveTest.java
+++ b/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/DomainUserApiLiveTest.java
@@ -43,7 +43,7 @@ public class DomainUserApiLiveTest extends BaseCloudStackApiLiveTest {
 
       Set<User> users = domainAdminClient.getUserClient().listUsers();
 
-      assert users.size() > 0;
+      assert !users.isEmpty();
       assert users.contains(user); // contains the current user
 
       for (User user : users) {

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/FirewallApiLiveTest.java
----------------------------------------------------------------------
diff --git a/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/FirewallApiLiveTest.java b/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/FirewallApiLiveTest.java
index edce600..a96fad8 100644
--- a/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/FirewallApiLiveTest.java
+++ b/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/FirewallApiLiveTest.java
@@ -143,7 +143,7 @@ public class FirewallApiLiveTest extends BaseCloudStackApiLiveTest {
       Set<FirewallRule> rules = client.getFirewallApi().listFirewallRules();
 
       assert rules != null;
-      assertTrue(rules.size() > 0);
+      assertTrue(!rules.isEmpty());
 
       for (FirewallRule rule : rules) {
          checkFirewallRule(rule);
@@ -172,7 +172,7 @@ public class FirewallApiLiveTest extends BaseCloudStackApiLiveTest {
       Set<FirewallRule> rules = client.getFirewallApi().listEgressFirewallRules();
 
       assert rules != null;
-      assertTrue(rules.size() > 0);
+      assertTrue(!rules.isEmpty());
 
       for (FirewallRule rule : rules) {
          checkEgressFirewallRule(rule);

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/GlobalHostApiLiveTest.java
----------------------------------------------------------------------
diff --git a/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/GlobalHostApiLiveTest.java b/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/GlobalHostApiLiveTest.java
index 445f30e..1ed94fd 100644
--- a/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/GlobalHostApiLiveTest.java
+++ b/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/GlobalHostApiLiveTest.java
@@ -41,7 +41,7 @@ public class GlobalHostApiLiveTest extends BaseCloudStackApiLiveTest {
       skipIfNotGlobalAdmin();
 
       Set<Host> hosts = globalAdminClient.getHostClient().listHosts();
-      assert hosts.size() > 0 : hosts;
+      assert !hosts.isEmpty() : hosts;
 
       for (Host host : hosts) {
          checkHost(host);
@@ -68,7 +68,7 @@ public class GlobalHostApiLiveTest extends BaseCloudStackApiLiveTest {
       skipIfNotGlobalAdmin();
 
       Set<Cluster> clusters = globalAdminClient.getHostClient().listClusters();
-      assert clusters.size() > 0 : clusters;
+      assert !clusters.isEmpty() : clusters;
 
       for (Cluster cluster : clusters) {
          checkCluster(cluster);

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/GlobalStoragePoolApiLiveTest.java
----------------------------------------------------------------------
diff --git a/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/GlobalStoragePoolApiLiveTest.java b/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/GlobalStoragePoolApiLiveTest.java
index 68dd450..9d0bdfa 100644
--- a/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/GlobalStoragePoolApiLiveTest.java
+++ b/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/GlobalStoragePoolApiLiveTest.java
@@ -41,7 +41,7 @@ public class GlobalStoragePoolApiLiveTest extends BaseCloudStackApiLiveTest {
 
       Set<StoragePool> result = globalAdminClient.getStoragePoolClient().listStoragePools();
       assertNotNull(result);
-      assertTrue(result.size() > 0);
+      assertTrue(!result.isEmpty());
       for (StoragePool pool : result) {
          assertNotNull(pool.getId());
          assertFalse(Strings.isNullOrEmpty(pool.getName()));

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/GlobalUserApiLiveTest.java
----------------------------------------------------------------------
diff --git a/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/GlobalUserApiLiveTest.java b/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/GlobalUserApiLiveTest.java
index 44575e5..cccfa62 100644
--- a/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/GlobalUserApiLiveTest.java
+++ b/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/GlobalUserApiLiveTest.java
@@ -89,7 +89,7 @@ public class GlobalUserApiLiveTest extends BaseCloudStackApiLiveTest {
       CloudStackApi client = context.getApi();
       Set<Account> accounts = client.getAccountApi().listAccounts();
 
-      assert accounts.size() > 0;
+      assert !accounts.isEmpty();
 
       context.close();
    }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/GlobalVlanApiLiveTest.java
----------------------------------------------------------------------
diff --git a/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/GlobalVlanApiLiveTest.java b/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/GlobalVlanApiLiveTest.java
index b3ddf35..34fe5be 100644
--- a/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/GlobalVlanApiLiveTest.java
+++ b/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/GlobalVlanApiLiveTest.java
@@ -98,17 +98,17 @@ public class GlobalVlanApiLiveTest extends BaseCloudStackApiLiveTest {
                                                            return network.getNetworkOfferingId().equals(offering.getId());
                                                         }
                                                      });
-         
-         if (suitableNetworks.size() > 0) {
+
+         if (!suitableNetworks.isEmpty()) {
             network = Iterables.get(suitableNetworks, 0);
             usingExistingNetwork = true;
-         
+
          } else if (network == null) {
             network = client.getNetworkApi().createNetworkInZone(zone.getId(),
                                                                  offering.getId(), "net-" + prefix, "jclouds test " + prefix);
             usingExistingNetwork = false;
          }
-         
+
          range = globalAdminClient.getVlanClient().createVlanIPRange("172.19.1.1", "172.19.1.199", CreateVlanIPRangeOptions.Builder
                                                                      .accountInDomain(user.getAccount(), user.getDomainId())
                                                                      .forVirtualNetwork(true)

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/VirtualMachineApiLiveTest.java
----------------------------------------------------------------------
diff --git a/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/VirtualMachineApiLiveTest.java b/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/VirtualMachineApiLiveTest.java
index a0dc153..2ca160c 100644
--- a/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/VirtualMachineApiLiveTest.java
+++ b/apis/cloudstack/src/test/java/org/jclouds/cloudstack/features/VirtualMachineApiLiveTest.java
@@ -84,7 +84,7 @@ public class VirtualMachineApiLiveTest extends BaseCloudStackApiLiveTest {
    public static VirtualMachine createVirtualMachine(CloudStackApi client, String defaultTemplate,
          Predicate<String> jobComplete, Predicate<VirtualMachine> virtualMachineRunning) {
       Set<Network> networks = client.getNetworkApi().listNetworks(isDefault(true));
-      if (networks.size() > 0) {
+      if (!networks.isEmpty()) {
          Network network = get(filter(networks, new Predicate<Network>() {
             @Override
             public boolean apply(Network network) {
@@ -367,7 +367,7 @@ public class VirtualMachineApiLiveTest extends BaseCloudStackApiLiveTest {
       // assert vm.getRootDeviceType() != null : vm;
       if (vm.getJobId() != null)
          assert vm.getJobStatus() != null : vm;
-      assert vm.getNICs() != null && vm.getNICs().size() > 0 : vm;
+      assert vm.getNICs() != null && !vm.getNICs().isEmpty() : vm;
       for (NIC nic : vm.getNICs()) {
          assert nic.getId() != null : vm;
          assert nic.getNetworkId() != null : vm;

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudwatch/src/test/java/org/jclouds/cloudwatch/features/AlarmApiLiveTest.java
----------------------------------------------------------------------
diff --git a/apis/cloudwatch/src/test/java/org/jclouds/cloudwatch/features/AlarmApiLiveTest.java b/apis/cloudwatch/src/test/java/org/jclouds/cloudwatch/features/AlarmApiLiveTest.java
index cdc171e..961af7d 100644
--- a/apis/cloudwatch/src/test/java/org/jclouds/cloudwatch/features/AlarmApiLiveTest.java
+++ b/apis/cloudwatch/src/test/java/org/jclouds/cloudwatch/features/AlarmApiLiveTest.java
@@ -58,7 +58,7 @@ public class AlarmApiLiveTest extends BaseCloudWatchApiLiveTest {
    protected void beforeClass() throws Exception {
       IterableWithMarker<Metric> metrics = metricApi().list(new ListMetricsOptions().metricName(metricName));
 
-      if (Iterables.size(metrics) == 0) {
+      if (Iterables.isEmpty(metrics)) {
          metricApi().putMetricsInNamespace(ImmutableSet.of(
                MetricDatum.builder()
                           .metricName(metricName)
@@ -92,7 +92,7 @@ public class AlarmApiLiveTest extends BaseCloudWatchApiLiveTest {
    @AfterClass
    protected void afterClass() throws Exception {
       IterableWithMarker<Alarm> alarms = api().list(new ListAlarmsOptions().alarmName(alarmName)).get(0);
-      if (Iterables.size(alarms) > 0) {
+      if (!Iterables.isEmpty(alarms)) {
          api().delete(ImmutableSet.of(alarmName));
       }
    }
@@ -249,7 +249,7 @@ public class AlarmApiLiveTest extends BaseCloudWatchApiLiveTest {
 
       success = retry(new Predicate<ListAlarmsOptions>() {
          public boolean apply(ListAlarmsOptions options) {
-            return Iterables.size(api().list(options).get(0)) == 0;
+            return Iterables.isEmpty(api().list(options).get(0));
          }
       }, 5, 1, MINUTES).apply(dmo);
 

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/cloudwatch/src/test/java/org/jclouds/cloudwatch/features/MetricApiLiveTest.java
----------------------------------------------------------------------
diff --git a/apis/cloudwatch/src/test/java/org/jclouds/cloudwatch/features/MetricApiLiveTest.java b/apis/cloudwatch/src/test/java/org/jclouds/cloudwatch/features/MetricApiLiveTest.java
index 7b26a60..2c84832 100644
--- a/apis/cloudwatch/src/test/java/org/jclouds/cloudwatch/features/MetricApiLiveTest.java
+++ b/apis/cloudwatch/src/test/java/org/jclouds/cloudwatch/features/MetricApiLiveTest.java
@@ -166,7 +166,7 @@ public class MetricApiLiveTest extends BaseCloudWatchApiLiveTest {
                                                  .unit(Unit.PERCENT).build();
                GetMetricStatisticsResponse response = api().getMetricStatistics(options);
 
-               if (response.size() > 0) {
+               if (!response.isEmpty()) {
                   checkNotNull(response.getLabel());
 
                   for (Datapoint datapoint : response) {
@@ -200,13 +200,13 @@ public class MetricApiLiveTest extends BaseCloudWatchApiLiveTest {
 
       performDefaultMetricsTests(response);
 
-      if (Iterables.size(response) > 0) {
+      if (!Iterables.isEmpty(response)) {
          Metric metric = response.iterator().next();
 
          testMetricName = metric.getMetricName();
          testNamespace = metric.getNamespace();
 
-         if (metric.getDimensions().size() > 0) {
+         if (!metric.getDimensions().isEmpty()) {
             Dimension dimension = metric.getDimensions().iterator().next();
 
             testDimensionName = dimension.getName();
@@ -217,7 +217,7 @@ public class MetricApiLiveTest extends BaseCloudWatchApiLiveTest {
             for (Metric metric1 : response) {
                Set<Dimension> dimensions = metric1.getDimensions();
 
-               if (dimensions.size() > 0) {
+               if (!dimensions.isEmpty()) {
                   Dimension dimension = metric.getDimensions().iterator().next();
 
                   testDimensionName = dimension.getName();

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/ec2/src/main/java/org/jclouds/ec2/binders/BindIpPermissionsToIndexedFormParams.java
----------------------------------------------------------------------
diff --git a/apis/ec2/src/main/java/org/jclouds/ec2/binders/BindIpPermissionsToIndexedFormParams.java b/apis/ec2/src/main/java/org/jclouds/ec2/binders/BindIpPermissionsToIndexedFormParams.java
index f8030e9..2418d86 100644
--- a/apis/ec2/src/main/java/org/jclouds/ec2/binders/BindIpPermissionsToIndexedFormParams.java
+++ b/apis/ec2/src/main/java/org/jclouds/ec2/binders/BindIpPermissionsToIndexedFormParams.java
@@ -39,7 +39,7 @@ public class BindIpPermissionsToIndexedFormParams implements Binder {
       for (IpPermission perm : (Iterable<IpPermission>) input)
          formBuilder.putAll(IpPermissions.buildFormParametersForIndex(index++, perm));
       ImmutableMultimap<String, String> forms = formBuilder.build();
-      return forms.size() == 0 ? request : (R) request.toBuilder().replaceFormParams(forms).build();
+      return forms.isEmpty() ? request : (R) request.toBuilder().replaceFormParams(forms).build();
    }
 
 }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/ec2/src/main/java/org/jclouds/ec2/compute/EC2ComputeService.java
----------------------------------------------------------------------
diff --git a/apis/ec2/src/main/java/org/jclouds/ec2/compute/EC2ComputeService.java b/apis/ec2/src/main/java/org/jclouds/ec2/compute/EC2ComputeService.java
index 682786e..3265325 100644
--- a/apis/ec2/src/main/java/org/jclouds/ec2/compute/EC2ComputeService.java
+++ b/apis/ec2/src/main/java/org/jclouds/ec2/compute/EC2ComputeService.java
@@ -164,7 +164,7 @@ public class EC2ComputeService extends BaseComputeService {
          return in.getProviderId();
       }
    };
-   
+
    private Set<NodeMetadata> addTagsAndNamesToInstancesInRegion(Map<String, String> common, Set<String> nodeNames,
                                                                 Set<? extends NodeMetadata> input, String region,
                                                                 String group) {
@@ -219,8 +219,8 @@ public class EC2ComputeService extends BaseComputeService {
       checkNotNull(emptyToNull(region), "region must be defined");
       checkNotNull(emptyToNull(group), "group must be defined");
       String groupName = namingConvention.create().sharedNameForGroup(group);
-      
-      if (client.getSecurityGroupApi().get().describeSecurityGroupsInRegion(region, groupName).size() > 0) {
+
+      if (!client.getSecurityGroupApi().get().describeSecurityGroupsInRegion(region, groupName).isEmpty()) {
          logger.debug(">> deleting securityGroup(%s)", groupName);
          client.getSecurityGroupApi().get().deleteSecurityGroupInRegion(region, groupName);
          // TODO: test this clear happens
@@ -240,7 +240,7 @@ public class EC2ComputeService extends BaseComputeService {
          Predicate<String> keyNameMatcher = namingConvention.create().containsGroup(group);
          String oldKeyNameRegex = String.format("jclouds#%s#%s#%s", group, region, "[0-9a-f]+").replace('#', delimiter);
          // old keypair pattern too verbose as it has an unnecessary region qualifier
-         
+
          if (keyNameMatcher.apply(keyName) || keyName.matches(oldKeyNameRegex)) {
             Set<String> instancesUsingKeyPair = extractIdsFromInstances(concat(client.getInstanceApi().get()
                   .describeInstancesInRegionWithFilter(region, ImmutableMultimap.<String, String>builder()
@@ -248,7 +248,7 @@ public class EC2ComputeService extends BaseComputeService {
                           .put("instance-state-name", InstanceState.SHUTTING_DOWN.toString())
                           .put("key-name", keyPair.getKeyName()).build())));
 
-            if (instancesUsingKeyPair.size() > 0) {
+            if (!instancesUsingKeyPair.isEmpty()) {
                logger.debug("<< inUse keyPair(%s), by (%s)", keyPair.getKeyName(), instancesUsingKeyPair);
             } else {
                logger.debug(">> deleting keyPair(%s)", keyPair.getKeyName());
@@ -292,12 +292,12 @@ public class EC2ComputeService extends BaseComputeService {
       // For issue #445, tries to delete security groups first: ec2 throws exception if in use, but
       // deleting a key pair does not.
       // This is "belt-and-braces" because deleteKeyPair also does extractIdsFromInstances & usingKeyPairAndNotDead
-      // for us to check if any instances are using the key-pair before we delete it. 
-      // There is (probably?) still a race if someone is creating instances at the same time as deleting them: 
-      // we may delete the key-pair just when the node-being-created was about to rely on the incidental 
+      // for us to check if any instances are using the key-pair before we delete it.
+      // There is (probably?) still a race if someone is creating instances at the same time as deleting them:
+      // we may delete the key-pair just when the node-being-created was about to rely on the incidental
       // resources existing.
 
-      // Also in #445, in aws-ec2 the deleteSecurityGroup sometimes fails after terminating the final VM using a 
+      // Also in #445, in aws-ec2 the deleteSecurityGroup sometimes fails after terminating the final VM using a
       // given security group, if called very soon after the VM's state reports terminated. Empirically, it seems that
       // waiting a small time (e.g. enabling logging or debugging!) then the tests pass. We therefore retry.
       // TODO: this could be moved to a config module, also the narrative above made more concise

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/ec2/src/main/java/org/jclouds/ec2/compute/extensions/EC2SecurityGroupExtension.java
----------------------------------------------------------------------
diff --git a/apis/ec2/src/main/java/org/jclouds/ec2/compute/extensions/EC2SecurityGroupExtension.java b/apis/ec2/src/main/java/org/jclouds/ec2/compute/extensions/EC2SecurityGroupExtension.java
index 789a7b6..612b529 100644
--- a/apis/ec2/src/main/java/org/jclouds/ec2/compute/extensions/EC2SecurityGroupExtension.java
+++ b/apis/ec2/src/main/java/org/jclouds/ec2/compute/extensions/EC2SecurityGroupExtension.java
@@ -77,7 +77,7 @@ public class EC2SecurityGroupExtension implements SecurityGroupExtension {
                                     @Memoized Supplier<Set<? extends Location>> locations,
                                     @Named("SECURITY") LoadingCache<RegionAndName, String> groupCreator,
                                     GroupNamingConvention.Factory namingConvention) {
-                                    
+
       this.client = checkNotNull(client, "client");
       this.userExecutor = checkNotNull(userExecutor, "userExecutor");
       this.regions = checkNotNull(regions, "regions");
@@ -111,24 +111,24 @@ public class EC2SecurityGroupExtension implements SecurityGroupExtension {
                                                  groupConverter);
       return ImmutableSet.copyOf(groups);
    }
-   
+
    @Override
    public Set<SecurityGroup> listSecurityGroupsForNode(String id) {
       checkNotNull(id, "id");
       String[] parts = AWSUtils.parseHandle(id);
       String region = parts[0];
       String instanceId = parts[1];
-      
+
       RunningInstance instance = getOnlyElement(Iterables.concat(client.getInstanceApi().get().describeInstancesInRegion(region, instanceId)));
 
       if (instance == null) {
          return ImmutableSet.of();
       }
-      
+
       Set<String> groupNames = instance.getGroupNames();
       Set<? extends org.jclouds.ec2.domain.SecurityGroup> rawGroups =
          client.getSecurityGroupApi().get().describeSecurityGroupsInRegion(region, Iterables.toArray(groupNames, String.class));
-      
+
       return ImmutableSet.copyOf(transform(filter(rawGroups, notNull()), groupConverter));
    }
 
@@ -141,7 +141,7 @@ public class EC2SecurityGroupExtension implements SecurityGroupExtension {
 
       Set<? extends org.jclouds.ec2.domain.SecurityGroup> rawGroups =
          client.getSecurityGroupApi().get().describeSecurityGroupsInRegion(region, groupId);
-      
+
       return getOnlyElement(transform(filter(rawGroups, notNull()), groupConverter));
    }
 
@@ -154,7 +154,7 @@ public class EC2SecurityGroupExtension implements SecurityGroupExtension {
          return null;
       }
    }
-   
+
    public SecurityGroup createSecurityGroup(String name, String region) {
       String markerGroup = namingConvention.create().sharedNameForGroup(name);
       RegionNameAndIngressRules regionAndName = new RegionNameAndIngressRules(region, markerGroup, new int[] {},
@@ -171,8 +171,8 @@ public class EC2SecurityGroupExtension implements SecurityGroupExtension {
       String[] parts = AWSUtils.parseHandle(id);
       String region = parts[0];
       String groupName = parts[1];
-      
-      if (client.getSecurityGroupApi().get().describeSecurityGroupsInRegion(region, groupName).size() > 0) {
+
+      if (!client.getSecurityGroupApi().get().describeSecurityGroupsInRegion(region, groupName).isEmpty()) {
          client.getSecurityGroupApi().get().deleteSecurityGroupInRegion(region, groupName);
          // TODO: test this clear happens
          groupCreator.invalidate(new RegionNameAndIngressRules(region, groupName, null, false));
@@ -188,7 +188,7 @@ public class EC2SecurityGroupExtension implements SecurityGroupExtension {
       String region = AWSUtils.getRegionFromLocationOrNull(group.getLocation());
       String name = group.getName();
 
-      if (ipPermission.getCidrBlocks().size() > 0) {
+      if (!ipPermission.getCidrBlocks().isEmpty()) {
          for (String cidr : ipPermission.getCidrBlocks()) {
             client.getSecurityGroupApi().get().
                authorizeSecurityGroupIngressInRegion(region,
@@ -200,7 +200,7 @@ public class EC2SecurityGroupExtension implements SecurityGroupExtension {
          }
       }
 
-      if (ipPermission.getTenantIdGroupNamePairs().size() > 0) {
+      if (!ipPermission.getTenantIdGroupNamePairs().isEmpty()) {
          for (String userId : ipPermission.getTenantIdGroupNamePairs().keySet()) {
             for (String groupName : ipPermission.getTenantIdGroupNamePairs().get(userId)) {
                client.getSecurityGroupApi().get().
@@ -222,7 +222,7 @@ public class EC2SecurityGroupExtension implements SecurityGroupExtension {
       String region = AWSUtils.getRegionFromLocationOrNull(group.getLocation());
       String name = group.getName();
 
-      if (Iterables.size(ipRanges) > 0) {
+      if (!Iterables.isEmpty(ipRanges)) {
          for (String cidr : ipRanges) {
             client.getSecurityGroupApi().get().
                authorizeSecurityGroupIngressInRegion(region,
@@ -234,7 +234,7 @@ public class EC2SecurityGroupExtension implements SecurityGroupExtension {
          }
       }
 
-      if (tenantIdGroupNamePairs.size() > 0) {
+      if (!tenantIdGroupNamePairs.isEmpty()) {
          for (String userId : tenantIdGroupNamePairs.keySet()) {
             for (String groupName : tenantIdGroupNamePairs.get(userId)) {
                client.getSecurityGroupApi().get().
@@ -244,16 +244,16 @@ public class EC2SecurityGroupExtension implements SecurityGroupExtension {
             }
          }
       }
-      
+
       return getSecurityGroupById(new RegionAndName(region, group.getName()).slashEncode());
    }
-      
+
    @Override
    public SecurityGroup removeIpPermission(IpPermission ipPermission, SecurityGroup group) {
       String region = AWSUtils.getRegionFromLocationOrNull(group.getLocation());
       String name = group.getName();
 
-      if (ipPermission.getCidrBlocks().size() > 0) {
+      if (!ipPermission.getCidrBlocks().isEmpty()) {
          for (String cidr : ipPermission.getCidrBlocks()) {
             client.getSecurityGroupApi().get().
                revokeSecurityGroupIngressInRegion(region,
@@ -265,7 +265,7 @@ public class EC2SecurityGroupExtension implements SecurityGroupExtension {
          }
       }
 
-      if (ipPermission.getTenantIdGroupNamePairs().size() > 0) {
+      if (!ipPermission.getTenantIdGroupNamePairs().isEmpty()) {
          for (String userId : ipPermission.getTenantIdGroupNamePairs().keySet()) {
             for (String groupName : ipPermission.getTenantIdGroupNamePairs().get(userId)) {
                client.getSecurityGroupApi().get().
@@ -287,7 +287,7 @@ public class EC2SecurityGroupExtension implements SecurityGroupExtension {
       String region = AWSUtils.getRegionFromLocationOrNull(group.getLocation());
       String name = group.getName();
 
-      if (Iterables.size(ipRanges) > 0) {
+      if (!Iterables.isEmpty(ipRanges)) {
          for (String cidr : ipRanges) {
             client.getSecurityGroupApi().get().
                revokeSecurityGroupIngressInRegion(region,
@@ -299,7 +299,7 @@ public class EC2SecurityGroupExtension implements SecurityGroupExtension {
          }
       }
 
-      if (tenantIdGroupNamePairs.size() > 0) {
+      if (!tenantIdGroupNamePairs.isEmpty()) {
          for (String userId : tenantIdGroupNamePairs.keySet()) {
             for (String groupName : tenantIdGroupNamePairs.get(userId)) {
                client.getSecurityGroupApi().get().
@@ -309,7 +309,7 @@ public class EC2SecurityGroupExtension implements SecurityGroupExtension {
             }
          }
       }
-      
+
       return getSecurityGroupById(new RegionAndName(region, group.getName()).slashEncode());
    }
 
@@ -336,23 +336,23 @@ public class EC2SecurityGroupExtension implements SecurityGroupExtension {
    protected Iterable<? extends org.jclouds.ec2.domain.SecurityGroup> pollSecurityGroups() {
       Iterable<? extends Set<? extends org.jclouds.ec2.domain.SecurityGroup>> groups
          = transform(regions.get(), allSecurityGroupsInRegion());
-      
+
       return concat(groups);
    }
 
-   
+
    protected Iterable<? extends org.jclouds.ec2.domain.SecurityGroup> pollSecurityGroupsByRegion(String region) {
       return allSecurityGroupsInRegion().apply(region);
    }
 
    protected Function<String, Set<? extends org.jclouds.ec2.domain.SecurityGroup>> allSecurityGroupsInRegion() {
       return new Function<String, Set<? extends org.jclouds.ec2.domain.SecurityGroup>>() {
-         
+
          @Override
          public Set<? extends org.jclouds.ec2.domain.SecurityGroup> apply(String from) {
             return client.getSecurityGroupApi().get().describeSecurityGroupsInRegion(from);
          }
-         
+
       };
    }
 

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/ec2/src/main/java/org/jclouds/ec2/compute/options/EC2TemplateOptions.java
----------------------------------------------------------------------
diff --git a/apis/ec2/src/main/java/org/jclouds/ec2/compute/options/EC2TemplateOptions.java b/apis/ec2/src/main/java/org/jclouds/ec2/compute/options/EC2TemplateOptions.java
index 9a2f968..3e5f34c 100644
--- a/apis/ec2/src/main/java/org/jclouds/ec2/compute/options/EC2TemplateOptions.java
+++ b/apis/ec2/src/main/java/org/jclouds/ec2/compute/options/EC2TemplateOptions.java
@@ -70,11 +70,11 @@ public class EC2TemplateOptions extends TemplateOptions implements Cloneable {
       super.copyTo(to);
       if (to instanceof EC2TemplateOptions) {
          EC2TemplateOptions eTo = EC2TemplateOptions.class.cast(to);
-         if (getGroups().size() > 0)
+         if (!getGroups().isEmpty())
             eTo.securityGroups(getGroups());
          if (getKeyPair() != null)
             eTo.keyPair(getKeyPair());
-         if (getBlockDeviceMappings().size() > 0)
+         if (!getBlockDeviceMappings().isEmpty())
             eTo.blockDeviceMappings(getBlockDeviceMappings());
          if (!shouldAutomaticallyCreateKeyPair())
             eTo.noKeyPair();
@@ -119,15 +119,15 @@ public class EC2TemplateOptions extends TemplateOptions implements Cloneable {
    @Override
    public ToStringHelper string() {
       ToStringHelper toString = super.string();
-      if (groupNames.size() != 0)
+      if (!groupNames.isEmpty())
          toString.add("groupNames", groupNames);
       if (noKeyPair)
          toString.add("noKeyPair", noKeyPair);
       toString.add("keyPair", keyPair);
-      if (userData != null && userData.size() > 0)
+      if (userData != null && !userData.isEmpty())
          toString.add("userDataCksum", Hashing.crc32().hashBytes(Bytes.toArray(userData)));
       ImmutableSet<BlockDeviceMapping> mappings = blockDeviceMappings.build();
-      if (mappings.size() != 0)
+      if (!mappings.isEmpty())
          toString.add("blockDeviceMappings", mappings);
       if (maxCount != null && maxCount.intValue() > 0)
          toString.add("maxCount", maxCount);
@@ -139,7 +139,7 @@ public class EC2TemplateOptions extends TemplateOptions implements Cloneable {
    public static final EC2TemplateOptions NONE = new EC2TemplateOptions();
 
    /**
-    * 
+    *
     * @see EC2TemplateOptions#securityGroups(Iterable<String>)
     */
    public EC2TemplateOptions securityGroups(String... groupNames) {
@@ -150,7 +150,7 @@ public class EC2TemplateOptions extends TemplateOptions implements Cloneable {
     * Specifies the security groups to be used for nodes with this template
     */
    public EC2TemplateOptions securityGroups(Iterable<String> groupNames) {
-      checkArgument(Iterables.size(groupNames) > 0, "you must specify at least one security group");
+      checkArgument(!Iterables.isEmpty(groupNames), "you must specify at least one security group");
       for (String groupId : groupNames)
          checkNotNull(emptyToNull(groupId), "all security groups must be non-empty");
       this.groupNames = ImmutableSet.copyOf(groupNames);
@@ -425,7 +425,7 @@ public class EC2TemplateOptions extends TemplateOptions implements Cloneable {
          EC2TemplateOptions options = new EC2TemplateOptions();
          return options.runScript(script);
       }
-      
+
       public static EC2TemplateOptions runScript(String script) {
          EC2TemplateOptions options = new EC2TemplateOptions();
          return options.runScript(script);
@@ -477,7 +477,7 @@ public class EC2TemplateOptions extends TemplateOptions implements Cloneable {
    public EC2TemplateOptions authorizePublicKey(String publicKey) {
       return EC2TemplateOptions.class.cast(super.authorizePublicKey(publicKey));
    }
-   
+
    /**
     * {@inheritDoc}
     */
@@ -485,7 +485,7 @@ public class EC2TemplateOptions extends TemplateOptions implements Cloneable {
    public EC2TemplateOptions installPrivateKey(String privateKey) {
       return EC2TemplateOptions.class.cast(super.installPrivateKey(privateKey));
    }
-   
+
    /**
     * {@inheritDoc}
     */
@@ -629,7 +629,7 @@ public class EC2TemplateOptions extends TemplateOptions implements Cloneable {
    public EC2TemplateOptions blockOnComplete(boolean blockOnComplete) {
       return EC2TemplateOptions.class.cast(super.blockOnComplete(blockOnComplete));
    }
-   
+
    /**
     * @return groupNames the user specified to run instances with, or zero
     *         length set to create an implicit group

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/ec2/src/main/java/org/jclouds/ec2/compute/strategy/CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptions.java
----------------------------------------------------------------------
diff --git a/apis/ec2/src/main/java/org/jclouds/ec2/compute/strategy/CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptions.java b/apis/ec2/src/main/java/org/jclouds/ec2/compute/strategy/CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptions.java
index 454172c..2965efa 100644
--- a/apis/ec2/src/main/java/org/jclouds/ec2/compute/strategy/CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptions.java
+++ b/apis/ec2/src/main/java/org/jclouds/ec2/compute/strategy/CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptions.java
@@ -90,7 +90,7 @@ public class CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptions {
 
          Set<BlockDeviceMapping> blockDeviceMappings = EC2TemplateOptions.class.cast(template.getOptions())
                   .getBlockDeviceMappings();
-         if (blockDeviceMappings.size() > 0) {
+         if (!blockDeviceMappings.isEmpty()) {
             checkState("ebs".equals(template.getImage().getUserMetadata().get("rootDeviceType")),
                      "BlockDeviceMapping only available on ebs boot");
             instanceOptions.withBlockDeviceMappings(blockDeviceMappings);
@@ -188,7 +188,7 @@ public class CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptions {
    }
 
    protected boolean userSpecifiedTheirOwnGroups(TemplateOptions options) {
-      return options instanceof EC2TemplateOptions && EC2TemplateOptions.class.cast(options).getGroups().size() > 0;
+      return options instanceof EC2TemplateOptions && !EC2TemplateOptions.class.cast(options).getGroups().isEmpty();
    }
 
    // allows us to mock this method

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/ec2/src/main/java/org/jclouds/ec2/compute/strategy/EC2CreateNodesInGroupThenAddToSet.java
----------------------------------------------------------------------
diff --git a/apis/ec2/src/main/java/org/jclouds/ec2/compute/strategy/EC2CreateNodesInGroupThenAddToSet.java b/apis/ec2/src/main/java/org/jclouds/ec2/compute/strategy/EC2CreateNodesInGroupThenAddToSet.java
index e41c0f8..35a7aa5 100644
--- a/apis/ec2/src/main/java/org/jclouds/ec2/compute/strategy/EC2CreateNodesInGroupThenAddToSet.java
+++ b/apis/ec2/src/main/java/org/jclouds/ec2/compute/strategy/EC2CreateNodesInGroupThenAddToSet.java
@@ -130,7 +130,7 @@ public class EC2CreateNodesInGroupThenAddToSet implements CreateNodesInGroupThen
       Template mutableTemplate = template.clone();
 
       Set<RunningInstance> started = runInstancesAndWarnOnInvisible(group, count, mutableTemplate);
-      if (started.size() == 0) {
+      if (started.isEmpty()) {
          logger.warn("<< unable to start instances(%s)", mutableTemplate);
          return ImmutableMap.of();
       }
@@ -151,7 +151,7 @@ public class EC2CreateNodesInGroupThenAddToSet implements CreateNodesInGroupThen
       Set<RunningInstance> started = createKeyPairAndSecurityGroupsAsNeededThenRunInstances(group, count,
             mutableTemplate);
       Set<RegionAndName> startedIds = ImmutableSet.copyOf(transform(started, instanceToRegionAndName));
-      if (startedIds.size() == 0) {
+      if (startedIds.isEmpty()) {
          return ImmutableSet.copyOf(started);
       }
       logger.debug("<< started instances(%s)", startedIds);
@@ -161,7 +161,7 @@ public class EC2CreateNodesInGroupThenAddToSet implements CreateNodesInGroupThen
 
       // add an exception for each of the nodes we cannot customize
       Set<RegionAndName> invisibleIds = difference(startedIds, visibleIds);
-      if (invisibleIds.size() > 0) {
+      if (!invisibleIds.isEmpty()) {
          logger.warn("<< not api visible instances(%s)", invisibleIds);
       }
       return started;

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/ec2/src/main/java/org/jclouds/ec2/domain/SecurityGroup.java
----------------------------------------------------------------------
diff --git a/apis/ec2/src/main/java/org/jclouds/ec2/domain/SecurityGroup.java b/apis/ec2/src/main/java/org/jclouds/ec2/domain/SecurityGroup.java
index 00b61c1..a45a16f 100644
--- a/apis/ec2/src/main/java/org/jclouds/ec2/domain/SecurityGroup.java
+++ b/apis/ec2/src/main/java/org/jclouds/ec2/domain/SecurityGroup.java
@@ -214,7 +214,7 @@ public class SecurityGroup extends ForwardingSet<IpPermission> {
    protected ToStringHelper string() {
       return MoreObjects.toStringHelper(this).omitNullValues().add("region", region).add("id", id).add("name", name)
             .add("ownerId", ownerId).add("description", description)
-            .add("ipPermissions", ipPermissions.size() == 0 ? null : ipPermissions);
+            .add("ipPermissions", ipPermissions.isEmpty() ? null : ipPermissions);
    }
 
    @Override

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/ec2/src/main/java/org/jclouds/ec2/predicates/VolumeAttached.java
----------------------------------------------------------------------
diff --git a/apis/ec2/src/main/java/org/jclouds/ec2/predicates/VolumeAttached.java b/apis/ec2/src/main/java/org/jclouds/ec2/predicates/VolumeAttached.java
index 8eb4303..bfed24b 100644
--- a/apis/ec2/src/main/java/org/jclouds/ec2/predicates/VolumeAttached.java
+++ b/apis/ec2/src/main/java/org/jclouds/ec2/predicates/VolumeAttached.java
@@ -30,7 +30,7 @@ import com.google.common.collect.Sets;
 import com.google.inject.Inject;
 
 /**
- * 
+ *
  * Tests to see if a volume is attached.
  */
 @Singleton
@@ -49,7 +49,7 @@ public class VolumeAttached implements Predicate<Attachment> {
       logger.trace("looking for volume %s", attachment.getVolumeId());
       Volume volume = Iterables.getOnlyElement(client.describeVolumesInRegion(attachment
                .getRegion(), attachment.getVolumeId()));
-      if (volume.getAttachments().size() == 0) {
+      if (volume.getAttachments().isEmpty()) {
          return false;
       }
       Attachment lastAttachment = Sets.newTreeSet(volume.getAttachments()).last();

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/ec2/src/main/java/org/jclouds/ec2/predicates/VolumeDetached.java
----------------------------------------------------------------------
diff --git a/apis/ec2/src/main/java/org/jclouds/ec2/predicates/VolumeDetached.java b/apis/ec2/src/main/java/org/jclouds/ec2/predicates/VolumeDetached.java
index 55995bb..c166de2 100644
--- a/apis/ec2/src/main/java/org/jclouds/ec2/predicates/VolumeDetached.java
+++ b/apis/ec2/src/main/java/org/jclouds/ec2/predicates/VolumeDetached.java
@@ -51,7 +51,7 @@ public class VolumeDetached implements Predicate<Attachment> {
               .getRegion(), attachment.getVolumeId()));
 
       /*If attachment size is 0 volume is detached for sure.*/
-      if (volume.getAttachments().size() == 0) {
+      if (volume.getAttachments().isEmpty()) {
          return true;
       }
 

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/ec2/src/main/java/org/jclouds/ec2/suppliers/DescribeAvailabilityZonesInRegion.java
----------------------------------------------------------------------
diff --git a/apis/ec2/src/main/java/org/jclouds/ec2/suppliers/DescribeAvailabilityZonesInRegion.java b/apis/ec2/src/main/java/org/jclouds/ec2/suppliers/DescribeAvailabilityZonesInRegion.java
index f97e962..5a2b846 100644
--- a/apis/ec2/src/main/java/org/jclouds/ec2/suppliers/DescribeAvailabilityZonesInRegion.java
+++ b/apis/ec2/src/main/java/org/jclouds/ec2/suppliers/DescribeAvailabilityZonesInRegion.java
@@ -70,7 +70,7 @@ public class DescribeAvailabilityZonesInRegion implements RegionIdToZoneIdsSuppl
                }
 
             }));
-            if (zones.size() > 0)
+            if (!zones.isEmpty())
                map.put(region, zones);
          } catch (HttpResponseException e) {
             // TODO: this should be in retry handler, not here.

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/apis/ec2/src/main/java/org/jclouds/ec2/util/IpPermissions.java
----------------------------------------------------------------------
diff --git a/apis/ec2/src/main/java/org/jclouds/ec2/util/IpPermissions.java b/apis/ec2/src/main/java/org/jclouds/ec2/util/IpPermissions.java
index 99e2524..5b26f48 100644
--- a/apis/ec2/src/main/java/org/jclouds/ec2/util/IpPermissions.java
+++ b/apis/ec2/src/main/java/org/jclouds/ec2/util/IpPermissions.java
@@ -41,7 +41,7 @@ public class IpPermissions extends IpPermission {
 
    protected IpPermissions(IpProtocol ipProtocol, int fromPort, int toPort,
          Multimap<String, String> userIdGroupPairs, Iterable<String> groupIds, Iterable<String> ipRanges) {
-      super(ipProtocol, fromPort, toPort, userIdGroupPairs, groupIds, userIdGroupPairs.size() == 0 ? ipRanges
+      super(ipProtocol, fromPort, toPort, userIdGroupPairs, groupIds, userIdGroupPairs.isEmpty() ? ipRanges
             : ImmutableSet.<String> of());
    }