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:00 UTC

[2/4] Prefer isEmpty() for collections rather than size()

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/common/azure/src/main/java/org/jclouds/azure/storage/domain/AzureStorageError.java
----------------------------------------------------------------------
diff --git a/common/azure/src/main/java/org/jclouds/azure/storage/domain/AzureStorageError.java b/common/azure/src/main/java/org/jclouds/azure/storage/domain/AzureStorageError.java
index 9843fb9..ec57979 100644
--- a/common/azure/src/main/java/org/jclouds/azure/storage/domain/AzureStorageError.java
+++ b/common/azure/src/main/java/org/jclouds/azure/storage/domain/AzureStorageError.java
@@ -22,7 +22,7 @@ import com.google.common.collect.Maps;
 
 /**
  * When an Azure Storage request is in error, the client receives an error response.
- * 
+ *
  * @see <a href="http://msdn.microsoft.com/en-us/library/dd573365.aspx" />
  */
 public class AzureStorageError {
@@ -46,7 +46,7 @@ public class AzureStorageError {
          sb.append(", stringSigned='").append(stringSigned).append('\'');
       if (getSignature() != null)
          sb.append(", signature='").append(getSignature()).append('\'');
-      if (details.size() != 0)
+      if (!details.isEmpty())
          sb.append(", context='").append(details.toString()).append('\'').append('}');
       return sb.toString();
    }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/compute/src/main/java/org/jclouds/compute/domain/SecurityGroup.java
----------------------------------------------------------------------
diff --git a/compute/src/main/java/org/jclouds/compute/domain/SecurityGroup.java b/compute/src/main/java/org/jclouds/compute/domain/SecurityGroup.java
index 811a84d..7170f27 100644
--- a/compute/src/main/java/org/jclouds/compute/domain/SecurityGroup.java
+++ b/compute/src/main/java/org/jclouds/compute/domain/SecurityGroup.java
@@ -37,18 +37,18 @@ public class SecurityGroup extends ComputeMetadataImpl {
 
    private final Set<IpPermission> ipPermissions;
    private final String ownerId;
-   
+
    public SecurityGroup(String providerId, String name, String id, @Nullable Location location, URI uri,
                         Map<String, String> userMetadata, Set<String> tags,
                         Iterable<IpPermission> ipPermissions,
-                        @Nullable String ownerId) { 
+                        @Nullable String ownerId) {
       super(ComputeType.SECURITYGROUP, providerId, name, id, location, uri, userMetadata, tags);
       this.ipPermissions = ImmutableSet.copyOf(checkNotNull(ipPermissions, "ipPermissions"));
       this.ownerId = ownerId;
    }
 
    /**
-    * 
+    *
     * @return The set of @{link IpPermission}s for this security group
     */
    public Set<IpPermission> getIpPermissions() {
@@ -62,11 +62,11 @@ public class SecurityGroup extends ComputeMetadataImpl {
    public String getOwnerId() {
       return ownerId;
    }
-   
+
    @Override
    protected ToStringHelper string() {
       ToStringHelper helper = computeToStringPrefix();
-      if (ipPermissions.size() > 0)
+      if (!ipPermissions.isEmpty())
          helper.add("ipPermissions", ipPermissions);
       return addComputeToStringSuffix(helper);
    }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/compute/src/main/java/org/jclouds/compute/domain/internal/ComputeMetadataImpl.java
----------------------------------------------------------------------
diff --git a/compute/src/main/java/org/jclouds/compute/domain/internal/ComputeMetadataImpl.java b/compute/src/main/java/org/jclouds/compute/domain/internal/ComputeMetadataImpl.java
index 74882d3..15657f2 100644
--- a/compute/src/main/java/org/jclouds/compute/domain/internal/ComputeMetadataImpl.java
+++ b/compute/src/main/java/org/jclouds/compute/domain/internal/ComputeMetadataImpl.java
@@ -105,20 +105,20 @@ public class ComputeMetadataImpl extends ResourceMetadataImpl<ComputeType> imple
    public int hashCode() {
       return Objects.hashCode(super.hashCode(), id);
    }
-   
+
    protected ToStringHelper computeToStringPrefix() {
       return MoreObjects.toStringHelper("").omitNullValues().add("id", getId()).add("providerId", getProviderId())
                .add("uri", getUri()).add("name", getName()).add("uri", getUri()).add("location", getLocation());
    }
 
    protected ToStringHelper addComputeToStringSuffix(ToStringHelper helper) {
-      if (getTags().size() > 0)
+      if (!getTags().isEmpty())
          helper.add("tags", getTags());
-      if (getUserMetadata().size() > 0)
+      if (!getUserMetadata().isEmpty())
          helper.add("userMetadata", getUserMetadata());
       return helper;
    }
-   
+
    protected ToStringHelper string() {
       return addComputeToStringSuffix(computeToStringPrefix());
    }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/compute/src/main/java/org/jclouds/compute/domain/internal/HardwareImpl.java
----------------------------------------------------------------------
diff --git a/compute/src/main/java/org/jclouds/compute/domain/internal/HardwareImpl.java b/compute/src/main/java/org/jclouds/compute/domain/internal/HardwareImpl.java
index 40b3cf3..e554241 100644
--- a/compute/src/main/java/org/jclouds/compute/domain/internal/HardwareImpl.java
+++ b/compute/src/main/java/org/jclouds/compute/domain/internal/HardwareImpl.java
@@ -109,7 +109,7 @@ public class HardwareImpl extends ComputeMetadataImpl implements Hardware {
    protected ToStringHelper string() {
       ToStringHelper helper = computeToStringPrefix();
       helper.add("processors", processors).add("ram", ram);
-      if (volumes.size() > 0)
+      if (!volumes.isEmpty())
          helper.add("volumes", volumes);
       helper.add("hypervisor", hypervisor);
       helper.add("supportsImage", supportsImage);

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/compute/src/main/java/org/jclouds/compute/domain/internal/NodeMetadataImpl.java
----------------------------------------------------------------------
diff --git a/compute/src/main/java/org/jclouds/compute/domain/internal/NodeMetadataImpl.java b/compute/src/main/java/org/jclouds/compute/domain/internal/NodeMetadataImpl.java
index e2ed8fc..cf4eae8 100644
--- a/compute/src/main/java/org/jclouds/compute/domain/internal/NodeMetadataImpl.java
+++ b/compute/src/main/java/org/jclouds/compute/domain/internal/NodeMetadataImpl.java
@@ -167,9 +167,9 @@ public class NodeMetadataImpl extends ComputeMetadataImpl implements NodeMetadat
       ToStringHelper helper = computeToStringPrefix();
       helper.add("group", getGroup()).add("imageId", getImageId()).add("os", getOperatingSystem())
                .add("status", formatStatus(this)).add("loginPort", getLoginPort()).add("hostname", getHostname());
-      if (getPrivateAddresses().size() > 0)
+      if (!getPrivateAddresses().isEmpty())
          helper.add("privateAddresses", getPrivateAddresses());
-      if (getPublicAddresses().size() > 0)
+      if (!getPublicAddresses().isEmpty())
          helper.add("publicAddresses", getPublicAddresses());
       helper.add("hardware", getHardware()).add("loginUser", credentials != null ? credentials.identity : null);
       return addComputeToStringSuffix(helper);

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/compute/src/main/java/org/jclouds/compute/domain/internal/TemplateBuilderImpl.java
----------------------------------------------------------------------
diff --git a/compute/src/main/java/org/jclouds/compute/domain/internal/TemplateBuilderImpl.java b/compute/src/main/java/org/jclouds/compute/domain/internal/TemplateBuilderImpl.java
index 83ba8e7..944d38f 100644
--- a/compute/src/main/java/org/jclouds/compute/domain/internal/TemplateBuilderImpl.java
+++ b/compute/src/main/java/org/jclouds/compute/domain/internal/TemplateBuilderImpl.java
@@ -164,7 +164,7 @@ public class TemplateBuilderImpl implements TemplateBuilder {
          }
 
       };
-   } 
+   }
 
    final Predicate<ComputeMetadata> locationPredicate = new NullEqualToIsParentOrIsGrandparentOfCurrentLocation(new Supplier<Location>() {
 
@@ -172,7 +172,7 @@ public class TemplateBuilderImpl implements TemplateBuilder {
       public Location get() {
          return location;
       }
-      
+
    });
 
    private final Predicate<Image> idPredicate = new Predicate<Image>() {
@@ -345,7 +345,7 @@ public class TemplateBuilderImpl implements TemplateBuilder {
          return "imageName(" + imageName + ")";
       }
    };
-   
+
    private final Predicate<Image> imageDescriptionPredicate = new Predicate<Image>() {
       @Override
       public boolean apply(Image input) {
@@ -366,7 +366,7 @@ public class TemplateBuilderImpl implements TemplateBuilder {
          return "imageDescription(" + imageDescription + ")";
       }
    };
-   
+
    private final Predicate<Hardware> hardwareIdPredicate = new Predicate<Hardware>() {
       @Override
       public boolean apply(Hardware input) {
@@ -386,7 +386,7 @@ public class TemplateBuilderImpl implements TemplateBuilder {
          return "hardwareId(" + hardwareId + ")";
       }
    };
-   
+
    private final Predicate<Hardware> hypervisorPredicate = new Predicate<Hardware>() {
       @Override
       public boolean apply(Hardware input) {
@@ -471,7 +471,7 @@ public class TemplateBuilderImpl implements TemplateBuilder {
             : Predicates.<Hardware> and(predicates);
       return hardwarePredicate;
    }
-   
+
    static final Ordering<Hardware> DEFAULT_SIZE_ORDERING = new Ordering<Hardware>() {
       public int compare(Hardware left, Hardware right) {
          return ComparisonChain.start().compare(getCores(left), getCores(right)).compare(left.getRam(), right.getRam())
@@ -651,9 +651,9 @@ public class TemplateBuilderImpl implements TemplateBuilder {
       public String apply(Image arg0) {
          return arg0.getId();
       }
-      
+
    };
-   
+
 
    private static final Function<Hardware, String> hardwareToId = new Function<Hardware, String>() {
 
@@ -661,7 +661,7 @@ public class TemplateBuilderImpl implements TemplateBuilder {
       public String apply(Hardware arg0) {
          return arg0.getId();
       }
-      
+
    };
    /**
     * {@inheritDoc}
@@ -679,9 +679,9 @@ public class TemplateBuilderImpl implements TemplateBuilder {
          options = optionsProvider.get();
       logger.debug(">> searching params(%s)", this);
       Set<? extends Image> images = getImages();
-      checkState(images.size() > 0, "no images present!");
+      checkState(!images.isEmpty(), "no images present!");
       Set<? extends Hardware> hardwaresToSearch = hardwares.get();
-      checkState(hardwaresToSearch.size() > 0, "no hardware profiles present!");
+      checkState(!hardwaresToSearch.isEmpty(), "no hardware profiles present!");
 
       Image image = null;
       if (imageId != null) {
@@ -689,19 +689,19 @@ public class TemplateBuilderImpl implements TemplateBuilder {
          if (currentLocationWiderThan(image.getLocation()))
             this.location = image.getLocation();
       }
-      
+
       Hardware hardware = null;
       if (hardwareId != null) {
          hardware = findHardwareWithId(hardwaresToSearch);
          if (currentLocationWiderThan(hardware.getLocation()))
             this.location = hardware.getLocation();
       }
-      
+
       // if the user hasn't specified a location id, or an image or hardware
       // with location, let's search scoped to the implicit one
       if (location == null)
          location = defaultLocation.get();
-      
+
       if (image == null) {
          Iterable<? extends Image> supportedImages = findSupportedImages(images);
          if (hardware == null)
@@ -776,7 +776,7 @@ public class TemplateBuilderImpl implements TemplateBuilder {
 
    protected Hardware resolveHardware(Set<? extends Hardware> hardwarel, final Iterable<? extends Image> images) {
       Ordering<Hardware> hardwareOrdering = hardwareSorter();
-      
+
       Iterable<Predicate<Image>> supportsImagePredicates = Iterables.transform(hardwarel,
                new Function<Hardware, Predicate<Image>>() {
 
@@ -786,7 +786,7 @@ public class TemplateBuilderImpl implements TemplateBuilder {
                   }
 
                });
-      
+
       Predicate<Image> supportsImagePredicate = Iterables.size(supportsImagePredicates) == 1 ? Iterables
                .getOnlyElement(supportsImagePredicates) : Predicates.<Image>or(supportsImagePredicates);
 
@@ -823,7 +823,7 @@ public class TemplateBuilderImpl implements TemplateBuilder {
    }
 
    /**
-    * 
+    *
     * @param hardware
     * @param supportedImages
     * @throws NoSuchElementException
@@ -855,7 +855,7 @@ public class TemplateBuilderImpl implements TemplateBuilder {
          return null;
       }
    }
-   
+
    /**
     * Like Ordering, but handle the case where there are multiple valid maximums
     */
@@ -910,7 +910,7 @@ public class TemplateBuilderImpl implements TemplateBuilder {
          osPredicates.add(os64BitPredicate);
       if (osArch != null)
          osPredicates.add(osArchPredicate);
-      if (osPredicates.size() > 0)
+      if (!osPredicates.isEmpty())
          predicates.add(new Predicate<Image>() {
 
             @Override
@@ -976,7 +976,7 @@ public class TemplateBuilderImpl implements TemplateBuilder {
       this.imageDescription = descriptionRegex;
       return this;
    }
-   
+
    /**
     * {@inheritDoc}
     */
@@ -1076,7 +1076,7 @@ public class TemplateBuilderImpl implements TemplateBuilder {
       this.hypervisor = null;
       return this;
    }
-   
+
    /**
     * {@inheritDoc}
     */
@@ -1085,7 +1085,7 @@ public class TemplateBuilderImpl implements TemplateBuilder {
       this.hypervisor = hypervisor;
       return this;
    }
-   
+
    /**
     * {@inheritDoc}
     */
@@ -1099,8 +1099,8 @@ public class TemplateBuilderImpl implements TemplateBuilder {
    @VisibleForTesting
    boolean nothingChangedExceptOptions() {
       return osFamily == null && location == null && imageId == null && hardwareId == null && hypervisor == null
-            && osName == null && imagePredicate == null && imageChooser == null && osDescription == null 
-            && imageVersion == null && osVersion == null && osArch == null && os64Bit == null && imageName == null 
+            && osName == null && imagePredicate == null && imageChooser == null && osDescription == null
+            && imageVersion == null && osVersion == null && osArch == null && os64Bit == null && imageName == null
             && imageDescription == null && minCores == 0 && minRam == 0 && minDisk == 0 && !biggest && !fastest;
    }
 

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/compute/src/main/java/org/jclouds/compute/internal/BaseComputeService.java
----------------------------------------------------------------------
diff --git a/compute/src/main/java/org/jclouds/compute/internal/BaseComputeService.java b/compute/src/main/java/org/jclouds/compute/internal/BaseComputeService.java
index 0f620c3..3ba198c 100644
--- a/compute/src/main/java/org/jclouds/compute/internal/BaseComputeService.java
+++ b/compute/src/main/java/org/jclouds/compute/internal/BaseComputeService.java
@@ -218,7 +218,7 @@ public class BaseComputeService implements ComputeService {
       Function<NodeMetadata, NodeMetadata> fn = persistNodeCredentials.always(template.getOptions().getRunScript());
       badNodes = Maps2.transformKeys(badNodes, fn);
       goodNodes = ImmutableSet.copyOf(Iterables.transform(goodNodes, fn));
-      if (executionExceptions.size() > 0 || badNodes.size() > 0) {
+      if (!executionExceptions.isEmpty() || !badNodes.isEmpty()) {
          throw new RunNodesException(group, count, template, goodNodes, executionExceptions, badNodes);
       }
       return goodNodes;
@@ -270,13 +270,13 @@ public class BaseComputeService implements ComputeService {
 
             }, userExecutor, null, logger, "destroyNodesMatching(" + filter + ")"));
       logger.debug("<< destroyed(%d)", destroyNodes.size());
-      
+
       cleanUpIncidentalResourcesOfDeadNodes(destroyNodes);
       return destroyNodes;
    }
 
    /**
-    * 
+    *
     * @param id
     * @return node that was deleted or null if it wasn't found
     */
@@ -298,7 +298,7 @@ public class BaseComputeService implements ComputeService {
             }
          }
       }, timeouts.nodeTerminated, 1000, MILLISECONDS);
-      
+
       boolean successful = tester.apply(id) && (node.get() == null || nodeTerminated.apply(node));
       if (successful)
          credentialStore.remove("node#" + id);
@@ -309,7 +309,7 @@ public class BaseComputeService implements ComputeService {
    protected void cleanUpIncidentalResourcesOfDeadNodes(Set<? extends NodeMetadata> deadNodes) {
       // no-op; to be overridden
    }
-   
+
    Iterable<? extends NodeMetadata> nodesMatchingFilterAndNotTerminated(Predicate<NodeMetadata> filter) {
       return filter(detailsOnAllNodes(), and(checkNotNull(filter, "filter"), not(TERMINATED)));
    }
@@ -321,7 +321,7 @@ public class BaseComputeService implements ComputeService {
    Iterable<? extends NodeMetadata> nodesMatchingFilterAndNotTerminatedExceptionIfNotFound(
          Predicate<NodeMetadata> filter) {
       Iterable<? extends NodeMetadata> nodes = nodesMatchingFilterAndNotTerminated(filter);
-      if (Iterables.size(nodes) == 0)
+      if (Iterables.isEmpty(nodes))
          throw new NoSuchElementException("no nodes matched filter: " + filter);
       return nodes;
    }
@@ -578,7 +578,7 @@ public class BaseComputeService implements ComputeService {
 
       Iterable<? extends RunScriptOnNode> scriptRunners = transformNodesIntoInitializedScriptRunners(
             nodesMatchingFilterAndNotTerminatedExceptionIfNotFound(filter), runScript, options, badNodes);
-      if (Iterables.size(scriptRunners) > 0) {
+      if (!Iterables.isEmpty(scriptRunners)) {
          for (RunScriptOnNode runner : scriptRunners) {
             responses.put(runner.getNode(), userExecutor.submit(new RunScriptOnNodeAndAddToGoodMapOrPutExceptionIntoBadMap(
                   runner, goodNodes, badNodes)));
@@ -594,7 +594,7 @@ public class BaseComputeService implements ComputeService {
       badNodes = Maps2.transformKeys(badNodes, fn);
       goodNodes = Maps2.transformKeys(goodNodes, fn);
 
-      if (exceptions.size() > 0 || badNodes.size() > 0) {
+      if (!exceptions.isEmpty() || !badNodes.isEmpty()) {
          throw new RunScriptOnNodesException(runScript, options, goodNodes, exceptions, badNodes);
       }
       return goodNodes;
@@ -649,7 +649,7 @@ public class BaseComputeService implements ComputeService {
    public ListenableFuture<ExecResponse> submitScriptOnNode(String id, String runScript, RunScriptOptions options) {
       return submitScriptOnNode(id, Statements.literal(checkNotNull(runScript, "runScript")), options);
    }
-   
+
    /**
     * {@inheritDoc}
     */
@@ -733,7 +733,7 @@ public class BaseComputeService implements ComputeService {
       }
 
    }
-   
+
    /**
     * {@inheritDoc}
     */

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/compute/src/main/java/org/jclouds/compute/options/TemplateOptions.java
----------------------------------------------------------------------
diff --git a/compute/src/main/java/org/jclouds/compute/options/TemplateOptions.java b/compute/src/main/java/org/jclouds/compute/options/TemplateOptions.java
index d7c6716..2a8b6d2 100644
--- a/compute/src/main/java/org/jclouds/compute/options/TemplateOptions.java
+++ b/compute/src/main/java/org/jclouds/compute/options/TemplateOptions.java
@@ -68,7 +68,7 @@ public class TemplateOptions extends RunScriptOptions implements Cloneable {
          to.inboundPorts(this.getInboundPorts());
       if (this.getRunScript() != null)
          to.runScript(this.getRunScript());
-      if (this.getGroups().size() > 0)
+      if (!this.getGroups().isEmpty())
          to.securityGroups(this.getGroups());
       if (this.getPrivateKey() != null)
          to.installPrivateKey(this.getPrivateKey());
@@ -76,9 +76,9 @@ public class TemplateOptions extends RunScriptOptions implements Cloneable {
          to.authorizePublicKey(this.getPublicKey());
       if (this.getPort() != -1)
          to.blockOnPort(this.getPort(), this.getSeconds());
-      if (this.getUserMetadata().size() > 0)
+      if (!this.getUserMetadata().isEmpty())
          to.userMetadata(this.getUserMetadata());
-      if (this.getTags().size() > 0)
+      if (!this.getTags().isEmpty())
          to.tags(getTags());
       if (!this.getNodeNames().isEmpty())
          to.nodeNames(getNodeNames());
@@ -353,7 +353,7 @@ public class TemplateOptions extends RunScriptOptions implements Cloneable {
    private static final Set<Integer> DEFAULT_INBOUND_PORTS = ImmutableSet.of(22);
 
    public static final TemplateOptions NONE = new ImmutableTemplateOptions(new TemplateOptions());
-   
+
    protected Set<Integer> inboundPorts = DEFAULT_INBOUND_PORTS;
 
    protected Statement script;
@@ -406,7 +406,7 @@ public class TemplateOptions extends RunScriptOptions implements Cloneable {
          toString.add("privateKeyPresent", true);
       if (!blockUntilRunning)
          toString.add("blockUntilRunning", blockUntilRunning);
-      if (tags.size() != 0)
+      if (!tags.isEmpty())
          toString.add("tags", tags);
       if (!nodeNames.isEmpty())
          toString.add("nodeNames", nodeNames);
@@ -465,16 +465,16 @@ public class TemplateOptions extends RunScriptOptions implements Cloneable {
    /**
     * This script will be executed as the root user upon system startup. This
     * script gets a prologue, so no #!/bin/bash required, path set up, etc
-    * 
+    *
     */
    public TemplateOptions runScript(String script) {
       return runScript(Statements.exec(script));
    }
-   
+
    /**
     * This script will be executed as the root user upon system startup. This
     * script gets a prologue, so no #!/bin/bash required, path set up, etc
-    * 
+    *
     */
    public TemplateOptions runScript(Statement script) {
       this.script = checkNotNull(script, "script");
@@ -682,7 +682,7 @@ public class TemplateOptions extends RunScriptOptions implements Cloneable {
          TemplateOptions options = new TemplateOptions();
          return options.runScript(script);
       }
-      
+
       /**
        * @see TemplateOptions#runScript(String)
        */
@@ -694,7 +694,7 @@ public class TemplateOptions extends RunScriptOptions implements Cloneable {
       /**
        * please use alternative that uses the {@link org.jclouds.io.Payload}
        * object
-       * 
+       *
        * @see org.jclouds.io.Payloads
        * @see #installPrivateKey(Payload)
        */
@@ -706,7 +706,7 @@ public class TemplateOptions extends RunScriptOptions implements Cloneable {
       /**
        * please use alternative that uses the {@link org.jclouds.io.Payload}
        * object
-       * 
+       *
        * @see #authorizePublicKey(String)
        */
       public static TemplateOptions authorizePublicKey(String rsaKey) {
@@ -736,13 +736,13 @@ public class TemplateOptions extends RunScriptOptions implements Cloneable {
       }
 
    }
-   
+
    /**
     * <h4>Note</h4> As of version 1.1.0, this option is incompatible with
     * {@link TemplateOptions#runScript(Statement)} and
     * {@link RunScriptOptions#blockOnComplete(boolean)}, as all current
     * implementations utilize ssh in order to execute scripts.
-    * 
+    *
     * @param blockUntilRunning
     *           (default true) whether to block until the nodes in this template
     *           are in {@link Status#RUNNING} state
@@ -755,7 +755,7 @@ public class TemplateOptions extends RunScriptOptions implements Cloneable {
    }
 
    /**
-    * 
+    *
     * @param userMetadata
     *           user-defined metadata to assign to this server
     */
@@ -765,7 +765,7 @@ public class TemplateOptions extends RunScriptOptions implements Cloneable {
    }
 
    /**
-    * 
+    *
     * @param key
     *           key to place into the metadata map
     * @param value
@@ -782,7 +782,7 @@ public class TemplateOptions extends RunScriptOptions implements Cloneable {
    public Map<String, String> getUserMetadata() {
       return userMetadata;
    }
-   
+
    @Override
    public TemplateOptions blockOnPort(int port, int seconds) {
       return TemplateOptions.class.cast(super.blockOnPort(port, seconds));

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/compute/src/main/java/org/jclouds/compute/stub/config/StubComputeServiceAdapter.java
----------------------------------------------------------------------
diff --git a/compute/src/main/java/org/jclouds/compute/stub/config/StubComputeServiceAdapter.java b/compute/src/main/java/org/jclouds/compute/stub/config/StubComputeServiceAdapter.java
index 7484d3f..0823fd5 100644
--- a/compute/src/main/java/org/jclouds/compute/stub/config/StubComputeServiceAdapter.java
+++ b/compute/src/main/java/org/jclouds/compute/stub/config/StubComputeServiceAdapter.java
@@ -141,7 +141,7 @@ public class StubComputeServiceAdapter implements JCloudsNativeComputeServiceAda
       NodeMetadata node = builder.build();
       nodes.put(node.getId(), node);
 
-      if (template.getOptions().getGroups().size() > 0) {
+      if (!template.getOptions().getGroups().isEmpty()) {
          final String groupId = Iterables.getFirst(template.getOptions().getGroups(), "0");
          Optional<SecurityGroup> secGroup = Iterables.tryFind(securityGroupExtension.get().listSecurityGroups(),
                                                               new Predicate<SecurityGroup>() {
@@ -155,7 +155,7 @@ public class StubComputeServiceAdapter implements JCloudsNativeComputeServiceAda
             groupsForNodes.put(node.getId(), secGroup.get());
          }
       }
-      
+
       setStateOnNodeAfterDelay(Status.RUNNING, node, 100);
       return new NodeWithInitialCredentials(node);
    }
@@ -184,12 +184,12 @@ public class StubComputeServiceAdapter implements JCloudsNativeComputeServiceAda
          }
       return images.build();
    }
-   
+
    @Override
    public Image getImage(String id) {
       return find(listImages(), ImagePredicates.idEquals(id), null);
    }
-   
+
    @Override
    public Iterable<NodeMetadata> listNodes() {
       return nodes.values();
@@ -219,7 +219,7 @@ public class StubComputeServiceAdapter implements JCloudsNativeComputeServiceAda
       setStateOnNodeAfterDelay(Status.PENDING, node, 0);
       setStateOnNodeAfterDelay(Status.TERMINATED, node, 50);
       groupsForNodes.removeAll(id);
-      
+
       ioExecutor.execute(new Runnable() {
 
          @Override

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/compute/src/main/java/org/jclouds/compute/stub/extensions/StubSecurityGroupExtension.java
----------------------------------------------------------------------
diff --git a/compute/src/main/java/org/jclouds/compute/stub/extensions/StubSecurityGroupExtension.java b/compute/src/main/java/org/jclouds/compute/stub/extensions/StubSecurityGroupExtension.java
index 9cbe6e6..9f65647 100644
--- a/compute/src/main/java/org/jclouds/compute/stub/extensions/StubSecurityGroupExtension.java
+++ b/compute/src/main/java/org/jclouds/compute/stub/extensions/StubSecurityGroupExtension.java
@@ -61,7 +61,7 @@ public class StubSecurityGroupExtension implements SecurityGroupExtension {
    public StubSecurityGroupExtension(ConcurrentMap<String, SecurityGroup> groups,
                                      @Named(Constants.PROPERTY_IO_WORKER_THREADS) ListeningExecutorService ioExecutor,
                                      Supplier<Location> location,
-                                     @Named("GROUP_ID") Provider<Integer> groupIdProvider, 
+                                     @Named("GROUP_ID") Provider<Integer> groupIdProvider,
                                      JustProvider locationSupplier,
                                      Multimap<String, SecurityGroup> groupsForNodes) {
       this.groups = groups;
@@ -96,7 +96,7 @@ public class StubSecurityGroupExtension implements SecurityGroupExtension {
    public SecurityGroup getSecurityGroupById(String id) {
       return groups.get(id);
    }
-   
+
    @Override
    public SecurityGroup createSecurityGroup(String name, Location location) {
       SecurityGroupBuilder builder = new SecurityGroupBuilder();
@@ -149,13 +149,13 @@ public class StubSecurityGroupExtension implements SecurityGroupExtension {
       ipBuilder.ipProtocol(protocol);
       ipBuilder.fromPort(startPort);
       ipBuilder.toPort(endPort);
-      if (tenantIdGroupNamePairs.size() > 0) {
+      if (!tenantIdGroupNamePairs.isEmpty()) {
          ipBuilder.tenantIdGroupNamePairs(tenantIdGroupNamePairs);
       }
-      if (Iterables.size(ipRanges) > 0) {
+      if (!Iterables.isEmpty(ipRanges)) {
          ipBuilder.cidrBlocks(ipRanges);
       }
-      if (Iterables.size(groupIds) > 0) {
+      if (!Iterables.isEmpty(groupIds)) {
          ipBuilder.groupIds(groupIds);
       }
 
@@ -175,7 +175,7 @@ public class StubSecurityGroupExtension implements SecurityGroupExtension {
 
       return newGroup;
    }
-      
+
    @Override
    public SecurityGroup removeIpPermission(IpPermission ipPermission, SecurityGroup group) {
       SecurityGroupBuilder builder = SecurityGroupBuilder.fromSecurityGroup(checkNotNull(group, "group"));
@@ -183,7 +183,7 @@ public class StubSecurityGroupExtension implements SecurityGroupExtension {
       builder.ipPermissions();
 
       builder.ipPermissions(filter(group.getIpPermissions(), not(equalTo(ipPermission))));
-                            
+
       SecurityGroup newGroup = builder.build();
 
       if (groups.containsKey(newGroup.getId())) {
@@ -194,7 +194,7 @@ public class StubSecurityGroupExtension implements SecurityGroupExtension {
 
       return newGroup;
    }
-   
+
 
    @Override
    public SecurityGroup removeIpPermission(IpProtocol protocol, int startPort, int endPort,
@@ -206,13 +206,13 @@ public class StubSecurityGroupExtension implements SecurityGroupExtension {
       ipBuilder.ipProtocol(protocol);
       ipBuilder.fromPort(startPort);
       ipBuilder.toPort(endPort);
-      if (tenantIdGroupNamePairs.size() > 0) {
+      if (!tenantIdGroupNamePairs.isEmpty()) {
          ipBuilder.tenantIdGroupNamePairs(tenantIdGroupNamePairs);
       }
-      if (Iterables.size(ipRanges) > 0) {
+      if (!Iterables.isEmpty(ipRanges)) {
          ipBuilder.cidrBlocks(ipRanges);
       }
-      if (Iterables.size(groupIds) > 0) {
+      if (!Iterables.isEmpty(groupIds)) {
          ipBuilder.groupIds(groupIds);
       }
 
@@ -223,7 +223,7 @@ public class StubSecurityGroupExtension implements SecurityGroupExtension {
       builder.ipPermissions();
 
       builder.ipPermissions(filter(group.getIpPermissions(), not(equalTo(perm))));
-      
+
       SecurityGroup newGroup = builder.build();
 
       if (groups.containsKey(newGroup.getId())) {

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/compute/src/main/java/org/jclouds/compute/util/ComputeServiceUtils.java
----------------------------------------------------------------------
diff --git a/compute/src/main/java/org/jclouds/compute/util/ComputeServiceUtils.java b/compute/src/main/java/org/jclouds/compute/util/ComputeServiceUtils.java
index 89e7362..0cddf5a 100644
--- a/compute/src/main/java/org/jclouds/compute/util/ComputeServiceUtils.java
+++ b/compute/src/main/java/org/jclouds/compute/util/ComputeServiceUtils.java
@@ -61,7 +61,7 @@ import com.google.common.collect.TreeRangeSet;
 import com.google.common.primitives.Ints;
 
 public class ComputeServiceUtils {
-   
+
    /**
     * status as a string which optionally includes the backend status
     */
@@ -70,12 +70,12 @@ public class ComputeServiceUtils {
          return resource.getStatus().toString();
       return String.format("%s[%s]", resource.getStatus(), resource.getBackendStatus());
    }
-   
+
    public static final Pattern DELIMITED_BY_HYPHEN_ENDING_IN_HYPHEN_HEX = Pattern.compile("(.+)-[0-9a-f]+");
 
    /**
     * build a shell script that invokes the contents of the http request in bash.
-    * 
+    *
     * @return a shell script that will invoke the http request
     */
    public static Statement execHttpResponse(HttpRequest request) {
@@ -88,7 +88,7 @@ public class ComputeServiceUtils {
 
    /**
     * build a shell script that invokes the contents of the http request in bash.
-    * 
+    *
     * @return a shell script that will invoke the http request
     */
    public static Statement extractTargzIntoDirectory(HttpRequest targz, String directory) {
@@ -102,7 +102,7 @@ public class ComputeServiceUtils {
 
    /**
     * build a shell script that invokes the contents of the http request in bash.
-    * 
+    *
     * @return a shell script that will invoke the http request
     */
    public static Statement extractZipIntoDirectory(HttpRequest zip, String directory) {
@@ -177,7 +177,7 @@ public class ComputeServiceUtils {
          }
       });
    }
-   
+
    /**
     * For cloud apis that have a pattern of using empty strings as tags, return a map that contains
     * that.
@@ -204,7 +204,7 @@ public class ComputeServiceUtils {
    public static Map<String, String> metadataAndTagsAsCommaDelimitedValue(TemplateOptions options) {
       Builder<String, String> builder = ImmutableMap.<String, String> builder();
       builder.putAll(options.getUserMetadata());
-      if (options.getTags().size() > 0)
+      if (!options.getTags().isEmpty())
          builder.put("jclouds_tags", Joiner.on(',').join(options.getTags()));
       return builder.build();
    }
@@ -266,11 +266,11 @@ public class ComputeServiceUtils {
       Set<Integer> sortedPorts = ImmutableSortedSet.copyOf(Ints.asList(ports));
 
       RangeSet<Integer> ranges = TreeRangeSet.create();
-      
+
       for (Integer port : sortedPorts) {
          ranges.add(Range.closedOpen(port, port + 1));
       }
-      
+
       Map<Integer, Integer> portRanges = Maps.newHashMap();
 
       for (Range<Integer> r : ranges.asRanges()) {

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/compute/src/test/java/org/jclouds/compute/internal/BaseComputeServiceLiveTest.java
----------------------------------------------------------------------
diff --git a/compute/src/test/java/org/jclouds/compute/internal/BaseComputeServiceLiveTest.java b/compute/src/test/java/org/jclouds/compute/internal/BaseComputeServiceLiveTest.java
index 82a0ea2..a883328 100644
--- a/compute/src/test/java/org/jclouds/compute/internal/BaseComputeServiceLiveTest.java
+++ b/compute/src/test/java/org/jclouds/compute/internal/BaseComputeServiceLiveTest.java
@@ -156,7 +156,7 @@ public abstract class BaseComputeServiceLiveTest extends BaseComputeServiceConte
       // wait a maximum of 60 seconds for port 8080 to open.
       openSocketFinder = context.utils().injector().getInstance(OpenSocketFinder.class);
    }
-   
+
    @Override
    protected void initializeContext() {
       super.initializeContext();
@@ -203,7 +203,7 @@ public abstract class BaseComputeServiceLiveTest extends BaseComputeServiceConte
       Template defaultTemplate = view.getComputeService().templateBuilder().build();
       assertEquals(view.getComputeService().getImage(defaultTemplate.getImage().getId()), defaultTemplate.getImage());
    }
-   
+
    // since surefire and eclipse don't otherwise guarantee the order, we are
    // starting this one alphabetically before create2nodes..
    @Test(enabled = true, dependsOnMethods = { "testCompareSizes" })
@@ -476,7 +476,7 @@ public abstract class BaseComputeServiceLiveTest extends BaseComputeServiceConte
          }
       }
    }
-   
+
    @Test(enabled = true, dependsOnMethods = "testCreateAnotherNodeWithANewContextToEnsureSharedMemIsntRequired")
    public void testCredentialsCache() throws Exception {
       initializeContext();
@@ -606,12 +606,12 @@ public abstract class BaseComputeServiceLiveTest extends BaseComputeServiceConte
    public void testListNodesByIds() throws Exception {
       Set<String> nodeIds = copyOf(transform(nodes,
          new Function<NodeMetadata, String>() {
-                                                
+
             @Override
             public String apply(NodeMetadata from) {
                return from.getId();
             }
-            
+
          }));
 
       SortedSet<NodeMetadata> listedNodes = ImmutableSortedSet.copyOf(client.listNodesByIds(nodeIds));
@@ -635,7 +635,7 @@ public abstract class BaseComputeServiceLiveTest extends BaseComputeServiceConte
          // assert nodeMetadata.getName() != null : nodeMetadata;
          if (nodeMetadata.getStatus() == Status.RUNNING) {
             assert nodeMetadata.getPublicAddresses() != null : nodeMetadata;
-            assert nodeMetadata.getPublicAddresses().size() > 0 || nodeMetadata.getPrivateAddresses().size() > 0 : nodeMetadata;
+            assert !nodeMetadata.getPublicAddresses().isEmpty() || !nodeMetadata.getPrivateAddresses().isEmpty() : nodeMetadata;
             assertNotNull(nodeMetadata.getPrivateAddresses());
          }
       }
@@ -674,7 +674,7 @@ public abstract class BaseComputeServiceLiveTest extends BaseComputeServiceConte
       ExecResponse exec = client.runScriptOnNode(node.getId(), process, runAsRoot(false).wrapInInitScript(false));
       stats.backgroundProcessMilliseconds = watch.elapsed(TimeUnit.MILLISECONDS);
       watch.reset().start();
-      
+
       HostAndPort socket = null;
       try {
          socket = openSocketFinder.findOpenSocketOnNode(node, 8080, 600, TimeUnit.SECONDS);
@@ -709,7 +709,7 @@ public abstract class BaseComputeServiceLiveTest extends BaseComputeServiceConte
    protected void createAndRunAServiceInGroup(String group) throws RunNodesException {
       // note that some cloud providers do not support mixed case tag names
       ImmutableMap<String, String> userMetadata = ImmutableMap.<String, String> of("test", group);
-      
+
       ImmutableSet<String> tags = ImmutableSet. of(group);
       Stopwatch watch = Stopwatch.createStarted();
 

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/collect/AdvanceUntilEmptyIterable.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/collect/AdvanceUntilEmptyIterable.java b/core/src/main/java/org/jclouds/collect/AdvanceUntilEmptyIterable.java
index b78d953..0ae224f 100644
--- a/core/src/main/java/org/jclouds/collect/AdvanceUntilEmptyIterable.java
+++ b/core/src/main/java/org/jclouds/collect/AdvanceUntilEmptyIterable.java
@@ -31,7 +31,7 @@ import com.google.common.collect.UnmodifiableIterator;
 
 /**
  * continues to supply iterables until the last was empty
- * 
+ *
  * @param <E>
  */
 @Beta
@@ -40,7 +40,7 @@ public class AdvanceUntilEmptyIterable<E> extends FluentIterable<FluentIterable<
    public static <E> AdvanceUntilEmptyIterable<E> create(Supplier<FluentIterable<E>> nextIterable) {
       return new AdvanceUntilEmptyIterable<E>(nextIterable);
    }
-   
+
    private final AdvanceUntilEmptyIterator<E> iterator;
 
    protected AdvanceUntilEmptyIterable(Supplier<FluentIterable<E>> nextIterable) {
@@ -73,7 +73,7 @@ public class AdvanceUntilEmptyIterable<E> extends FluentIterable<FluentIterable<
             } finally {
                unread = false;
             }
-         else if (current.size() > 0)
+         else if (!current.isEmpty())
             return current = nextIterable.get();
          else
             return endOfData();
@@ -108,17 +108,17 @@ public class AdvanceUntilEmptyIterable<E> extends FluentIterable<FluentIterable<
          return MoreObjects.toStringHelper("").omitNullValues().add("current", current).add("unread", unread).toString();
       }
    }
-   
+
    /**
     * Combines all the pages into a single unmodifiable iterable. ex.
-    * 
+    *
     * <pre>
     * FluentIterable<StorageMetadata> blobs = blobstore.list(...).concat();
     * for (StorageMetadata blob : blobs) {
     *     process(blob);
     * }
     * </pre>
-    * 
+    *
     * @see Iterators#concat
     */
    public FluentIterable<E> concat() {

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/collect/internal/Arg0ToPagedIterable.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/collect/internal/Arg0ToPagedIterable.java b/core/src/main/java/org/jclouds/collect/internal/Arg0ToPagedIterable.java
index c704400..55abe54 100644
--- a/core/src/main/java/org/jclouds/collect/internal/Arg0ToPagedIterable.java
+++ b/core/src/main/java/org/jclouds/collect/internal/Arg0ToPagedIterable.java
@@ -34,7 +34,7 @@ public abstract class Arg0ToPagedIterable<T, I extends Arg0ToPagedIterable<T, I>
 
    @Override
    protected Function<Object, IterableWithMarker<T>> markerToNextForArgs(List<Object> args) {
-      Optional<Object> arg0 = Optional.fromNullable(args.size() > 0 ? args.get(0) : null);
+      Optional<Object> arg0 = Optional.fromNullable(!args.isEmpty() ? args.get(0) : null);
       return markerToNextForArg0(arg0);
    }
 

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/collect/internal/CallerArg0ToPagedIterable.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/collect/internal/CallerArg0ToPagedIterable.java b/core/src/main/java/org/jclouds/collect/internal/CallerArg0ToPagedIterable.java
index f80c00f..ce92b43 100644
--- a/core/src/main/java/org/jclouds/collect/internal/CallerArg0ToPagedIterable.java
+++ b/core/src/main/java/org/jclouds/collect/internal/CallerArg0ToPagedIterable.java
@@ -43,7 +43,7 @@ public abstract class CallerArg0ToPagedIterable<T, I extends CallerArg0ToPagedIt
          return PagedIterables.of(input);
 
       Optional<String> arg0Option = Optional.absent();
-      if (request.getCaller().get().getArgs().size() > 0) {
+      if (!request.getCaller().get().getArgs().isEmpty()) {
          Object arg0 = request.getCaller().get().getArgs().get(0);
          if (arg0 != null)
             arg0Option = Optional.of(arg0.toString());

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/concurrent/FutureIterables.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/concurrent/FutureIterables.java b/core/src/main/java/org/jclouds/concurrent/FutureIterables.java
index f28ea64..e2d049d 100644
--- a/core/src/main/java/org/jclouds/concurrent/FutureIterables.java
+++ b/core/src/main/java/org/jclouds/concurrent/FutureIterables.java
@@ -52,15 +52,15 @@ import com.google.inject.Inject;
  */
 @Beta
 public class FutureIterables {
-   
+
    @Inject(optional = true)
    @Named(Constants.PROPERTY_MAX_RETRIES)
    private static int maxRetries = 5;
-   
+
    @Inject(optional = true)
    @Named(Constants.PROPERTY_RETRY_DELAY_START)
    private static long delayStart = 50L;
-   
+
    @Inject(optional = true)
    private static BackoffLimitedRetryHandler retryHandler = BackoffLimitedRetryHandler.INSTANCE;
 
@@ -69,7 +69,7 @@ public class FutureIterables {
                String logPrefix) {
       return transformParallel(fromIterable, function, exec, maxTime, logger, logPrefix, retryHandler, maxRetries);
    }
-   
+
    @SuppressWarnings("unchecked")
    public static <F, T> Iterable<T> transformParallel(Iterable<F> fromIterable,
          Function<? super F, ListenableFuture<? extends T>> function, ListeningExecutorService exec, @Nullable Long maxTime, Logger logger,
@@ -77,7 +77,7 @@ public class FutureIterables {
       Map<F, Exception> exceptions = newHashMap();
       Map<F, ListenableFuture<? extends T>> responses = newHashMap();
       for (int i = 0; i < maxRetries; i++) {
-         
+
          for (F from : fromIterable) {
             ListenableFuture<? extends T> to = function.apply(from);
             responses.put(from, to);
@@ -87,7 +87,7 @@ public class FutureIterables {
          } catch (TimeoutException te) {
             throw propagate(te);
          }
-         if (exceptions.size() > 0 && !any(exceptions.values(), containsThrowable(AuthorizationException.class))) {
+         if (!exceptions.isEmpty() && !any(exceptions.values(), containsThrowable(AuthorizationException.class))) {
             fromIterable = exceptions.keySet();
             retryHandler.imposeBackoffExponentialDelay(delayStart, 2, i + 1, maxRetries,
                   String.format("error %s: %s: %s", logPrefix, fromIterable, exceptions));
@@ -96,18 +96,18 @@ public class FutureIterables {
          }
       }
       //make sure we propagate any authorization exception so that we don't lock out accounts
-      if (exceptions.size() > 0)
+      if (!exceptions.isEmpty())
          return propagateAuthorizationOrOriginalException(new TransformParallelException(Map.class.cast(responses),
                exceptions, logPrefix));
-      
+
       return unwrap(responses.values());
    }
-   
+
    public static <F> Map<F, Exception> awaitCompletion(Map<F, ? extends ListenableFuture<?>> responses,
          ListeningExecutorService exec, @Nullable Long maxTime, final Logger logger, final String logPrefix)
          throws TimeoutException {
       final ConcurrentMap<F, Exception> errorMap = newConcurrentMap();
-      if (responses.size() == 0)
+      if (responses.isEmpty())
          return errorMap;
       final int total = responses.size();
       final CountDownLatch doneSignal = new CountDownLatch(total);
@@ -116,7 +116,7 @@ public class FutureIterables {
       final long start = System.currentTimeMillis();
       for (final Entry<F, ? extends ListenableFuture<?>> future : responses.entrySet()) {
          future.getValue().addListener(new Runnable() {
-            
+
             @Override
             public void run() {
                try {
@@ -130,7 +130,7 @@ public class FutureIterables {
 	               doneSignal.countDown();
                }
             }
-            
+
             @Override
             public String toString() {
                return "callGetOnFuture(" + future.getKey() + "," + future.getValue() + ")";
@@ -164,7 +164,7 @@ public class FutureIterables {
       }
       return errorMap;
    }
-   
+
    private static <T> Iterable<T> unwrap(Iterable<ListenableFuture<? extends T>> values) {
       return transform(values, new Function<ListenableFuture<? extends T>, T>() {
          @Override
@@ -178,20 +178,20 @@ public class FutureIterables {
             }
             return null;
          }
-         
+
          @Override
          public String toString() {
             return "callGetOnFuture()";
          }
       });
    }
-   
+
    private static void logException(Logger logger, String logPrefix, int total, int complete, int errors, long start,
          Exception e) {
       String message = message(logPrefix, total, complete, errors, start);
       logger.error(e, message);
    }
-   
+
    private static String message(String prefix, int size, int complete, int errors, long start) {
       return String.format("%s, completed: %d/%d, errors: %d, rate: %dms/op", prefix, complete, size, errors,
             (long) ((System.currentTimeMillis() - start) / ((double) size)));

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/concurrent/config/ExecutorServiceModule.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/concurrent/config/ExecutorServiceModule.java b/core/src/main/java/org/jclouds/concurrent/config/ExecutorServiceModule.java
index ac1359b..dd7dd08 100644
--- a/core/src/main/java/org/jclouds/concurrent/config/ExecutorServiceModule.java
+++ b/core/src/main/java/org/jclouds/concurrent/config/ExecutorServiceModule.java
@@ -44,9 +44,9 @@ import com.google.inject.Provides;
 
 /**
  * Configures {@link ListeningExecutorService}.
- * 
+ *
  * Note that this uses threads.
- * 
+ *
  * <p>
  * This extends the underlying Future to expose a description (the task's toString) and the submission context (stack
  * trace). The submission stack trace is appended to relevant stack traces on exceptions that are returned, so the user
@@ -68,7 +68,7 @@ public class ExecutorServiceModule extends AbstractModule {
       @Override
       public void close() throws IOException {
          List<Runnable> runnables = service.shutdownNow();
-         if (runnables.size() > 0)
+         if (!runnables.isEmpty())
             logger.warn("when shutting down executor %s, runnables outstanding: %s", service, runnables);
       }
    }
@@ -80,12 +80,12 @@ public class ExecutorServiceModule extends AbstractModule {
       this.userExecutorFromConstructor = null;
       this.ioExecutorFromConstructor = null;
    }
-   
+
    public ExecutorServiceModule(@Named(PROPERTY_USER_THREADS) ExecutorService userExecutor,
          @Named(PROPERTY_IO_WORKER_THREADS) ExecutorService ioExecutor) {
       this(listeningDecorator(userExecutor), listeningDecorator(ioExecutor));
    }
-   
+
    public ExecutorServiceModule(@Named(PROPERTY_USER_THREADS) ListeningExecutorService userExecutor,
          @Named(PROPERTY_IO_WORKER_THREADS) ListeningExecutorService ioExecutor) {
       this.userExecutorFromConstructor = WithSubmissionTrace.wrap(userExecutor);

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/domain/internal/LocationImpl.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/domain/internal/LocationImpl.java b/core/src/main/java/org/jclouds/domain/internal/LocationImpl.java
index 5af7b2d..db290e3 100644
--- a/core/src/main/java/org/jclouds/domain/internal/LocationImpl.java
+++ b/core/src/main/java/org/jclouds/domain/internal/LocationImpl.java
@@ -62,9 +62,9 @@ public class LocationImpl implements Location {
             .add("description", description);
       if (parent != null)
          helper.add("parent", parent.getId());
-      if (iso3166Codes.size() > 0)
+      if (!iso3166Codes.isEmpty())
          helper.add("iso3166Codes", iso3166Codes);
-      if (metadata.size() > 0)
+      if (!metadata.isEmpty())
          helper.add("metadata", metadata);
       return helper.toString();
    }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/functions/JoinOnComma.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/functions/JoinOnComma.java b/core/src/main/java/org/jclouds/functions/JoinOnComma.java
index a6c4bef..e26329a 100644
--- a/core/src/main/java/org/jclouds/functions/JoinOnComma.java
+++ b/core/src/main/java/org/jclouds/functions/JoinOnComma.java
@@ -42,7 +42,7 @@ public class JoinOnComma implements Function<Object, String> {
       }
       checkArgument(o instanceof Iterable<?>, "you must pass an iterable or array");
       Iterable<?> toJoin = (Iterable<?>) o;
-      checkArgument(Iterables.size(toJoin) > 0, "you must pass an iterable or array with elements");
+      checkArgument(!Iterables.isEmpty(toJoin), "you must pass an iterable or array with elements");
       return Joiner.on(',').join(toJoin);
    }
 }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/functions/OnlyElementOrNull.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/functions/OnlyElementOrNull.java b/core/src/main/java/org/jclouds/functions/OnlyElementOrNull.java
index 7f88ebb..49fba9b 100644
--- a/core/src/main/java/org/jclouds/functions/OnlyElementOrNull.java
+++ b/core/src/main/java/org/jclouds/functions/OnlyElementOrNull.java
@@ -26,7 +26,7 @@ public class OnlyElementOrNull<T> implements Function<Iterable<T>, T> {
 
    @Override
    public T apply(Iterable<T> arg0) {
-      if (arg0 == null || Iterables.size(arg0) == 0)
+      if (arg0 == null || Iterables.isEmpty(arg0))
          return null;
       return Iterables.getOnlyElement(arg0);
    }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/http/HttpMessage.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/http/HttpMessage.java b/core/src/main/java/org/jclouds/http/HttpMessage.java
index 7719215..424a687 100644
--- a/core/src/main/java/org/jclouds/http/HttpMessage.java
+++ b/core/src/main/java/org/jclouds/http/HttpMessage.java
@@ -62,7 +62,7 @@ public class HttpMessage extends PayloadEnclosingImpl {
          this.payload = payload;
          return self();
       }
-      
+
       /**
        * @see HttpMessage#getPayload()
        * @deprecated see payload(ByteSource.wrap(byte[]))
@@ -80,7 +80,7 @@ public class HttpMessage extends PayloadEnclosingImpl {
          this.payload = Payloads.newByteSourcePayload(checkNotNull(payload, "payload"));
          return self();
       }
-      
+
       /**
        * @see HttpMessage#getPayload()
        * @deprecated see payload(Files.asByteSource(File))
@@ -90,7 +90,7 @@ public class HttpMessage extends PayloadEnclosingImpl {
          this.payload = Payloads.newFilePayload(checkNotNull(payload, "payload"));
          return self();
       }
-      
+
       /**
        * @see HttpMessage#getPayload()
        */
@@ -98,7 +98,7 @@ public class HttpMessage extends PayloadEnclosingImpl {
          this.payload = Payloads.newInputStreamPayload(checkNotNull(payload, "payload"));
          return self();
       }
-      
+
       /**
        * @see HttpMessage#getPayload()
        * @deprecated see payload(ByteSource.wrap(String.getBytes()))
@@ -111,7 +111,7 @@ public class HttpMessage extends PayloadEnclosingImpl {
 
       /**
        * replaces all headers with the the supplied multimap.
-       * 
+       *
        * @see HttpMessage#getHeaders()
        */
       public T headers(Multimap<String, String> headers) {
@@ -119,10 +119,10 @@ public class HttpMessage extends PayloadEnclosingImpl {
          this.headers.putAll(checkNotNull(headers, "headers"));
          return self();
       }
-      
+
       /**
        * replace all headers that have the same keys as the input multimap
-       * 
+       *
        * @see HttpMessage#getHeaders()
        */
       public T replaceHeaders(Multimap<String, String> headers) {
@@ -132,10 +132,10 @@ public class HttpMessage extends PayloadEnclosingImpl {
          this.headers.putAll(Multimaps2.replaceEntries(oldHeaders, headers));
          return self();
       }
-      
+
       /**
        * replace all headers that have the same keys as the input multimap
-       * 
+       *
        * @see HttpMessage#getHeaders()
        */
       public T removeHeader(String name) {
@@ -145,11 +145,11 @@ public class HttpMessage extends PayloadEnclosingImpl {
          this.headers.putAll(Multimaps2.withoutKey(oldHeaders, name));
          return self();
       }
-      
+
       /**
        * Note that if there's an existing header of the same name, this will only add the new value,
        * not replace it.
-       * 
+       *
        * @see HttpMessage#getHeaders()
        */
       public T addHeader(String name, String ... values) {
@@ -159,7 +159,7 @@ public class HttpMessage extends PayloadEnclosingImpl {
 
       /**
        * Replace header.
-       * 
+       *
        * @see HttpMessage#getHeaders()
        */
       public T replaceHeader(String name, String ... values) {
@@ -167,7 +167,7 @@ public class HttpMessage extends PayloadEnclosingImpl {
          checkNotNull(values, "values of %s", name);
          return replaceHeaders(ImmutableMultimap.<String, String> builder().putAll(name, values).build());
       }
-      
+
       public HttpMessage build() {
          return new HttpMessage(headers.build(), payload);
       }
@@ -202,8 +202,8 @@ public class HttpMessage extends PayloadEnclosingImpl {
     */
    public String getFirstHeaderOrNull(String string) {
       Collection<String> values = headers.get(string);
-      if (values.size() == 0) {
-         Multimap<String, String> lowerCaseHeaders = Multimaps2.transformKeys(getHeaders(), new ToLowerCase()); 
+      if (values.isEmpty()) {
+         Multimap<String, String> lowerCaseHeaders = Multimaps2.transformKeys(getHeaders(), new ToLowerCase());
          values = lowerCaseHeaders.get(string.toLowerCase());
       }
       return (values.size() >= 1) ? values.iterator().next() : null;

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/http/Uris.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/http/Uris.java b/core/src/main/java/org/jclouds/http/Uris.java
index 39e521c..aaf05d8 100644
--- a/core/src/main/java/org/jclouds/http/Uris.java
+++ b/core/src/main/java/org/jclouds/http/Uris.java
@@ -46,25 +46,25 @@ import com.google.common.collect.Multimap;
 /**
  * Functions on {@code String}s and {@link URI}s. Strings can be level 1 <a
  * href="http://tools.ietf.org/html/rfc6570">RFC6570</a> form.
- * 
+ *
  * ex.
- * 
+ *
  * <pre>
  *  https://api.github.com/repos/{user}
  * </pre>
- * 
+ *
  * <h4>Reminder</h4>
- * 
+ *
  * Unresolved <a href="http://tools.ietf.org/html/rfc6570">RFC6570</a> templates are not supported by
  * {@link URI#create(String)} and result in an {@link IllegalArgumentException}.
- * 
+ *
  * <h4>Limitations</h4>
- * 
+ *
  * In order to reduce complexity not needed in jclouds, this doesn't support {@link URI#getUserInfo()},
  * {@link URI#getFragment()}, or {@code matrix} params. Matrix params can be achieved via adding {@code ;} refs in the
  * http path directly. Moreover, since jclouds only uses level 1 templates, this doesn't support the additional forms
  * noted in the RFC.
- * 
+ *
  * @since 1.6
  */
 @Beta
@@ -88,13 +88,13 @@ public final class Uris {
 
    /**
     * Mutable URI builder that can be in level 1 <a href="http://tools.ietf.org/html/rfc6570">RFC6570</a> template form.
-    * 
+    *
     * ex.
-    * 
+    *
     * <pre>
     *  https://api.github.com/repos/{user}
     * </pre>
-    * 
+    *
     */
    public static final class UriBuilder {
       // colon for urns, semicolon & equals for matrix params
@@ -114,7 +114,7 @@ public final class Uris {
          this.skipPathEncoding = ImmutableSet.copyOf(checkNotNull(skipPathEncoding, "skipPathEncoding"));
          return this;
       }
-      
+
       /**
        * @param scheme
        *           scheme to set or replace
@@ -207,10 +207,10 @@ public final class Uris {
       /**
        * <a href="http://tools.ietf.org/html/rfc6570">RFC6570</a> templates have variables defined in curly braces.
        * Curly brace characters are unparsable via {@link URI#create} and result in an {@link IllegalArgumentException}.
-       * 
+       *
        * This implementation temporarily replaces curly braces with double parenthesis so that it can reuse
        * {@link URI#create}.
-       * 
+       *
        * @param uri
        *           template which may have template parameters inside
        */
@@ -307,7 +307,7 @@ public final class Uris {
             b.append(':').append(port);
          if (path != null)
             b.append(urlEncode(UriTemplates.expand(path, variables), skipPathEncoding));
-         if (query.size() > 0)
+         if (!query.isEmpty())
             b.append('?').append(encodeQueryLine(query));
          return b.toString();
       }
@@ -326,7 +326,7 @@ public final class Uris {
             b.append(':').append(port);
          if (path != null)
             b.append(path);
-         if (query.size() > 0)
+         if (!query.isEmpty())
             b.append('?').append(buildQueryLine(query));
          return b.toString();
       }
@@ -376,8 +376,8 @@ public final class Uris {
 
    /**
     * Mutable and permits null values. Url decodes all mutations except {@link Multimap#putAll(Multimap)}
-    * 
-    * 
+    *
+    *
     */
    static final class DecodingMultimap extends ForwardingMultimap<String, Object> {
 

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/http/functions/UnwrapOnlyJsonValueInSet.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/http/functions/UnwrapOnlyJsonValueInSet.java b/core/src/main/java/org/jclouds/http/functions/UnwrapOnlyJsonValueInSet.java
index d80b944..2b47399 100644
--- a/core/src/main/java/org/jclouds/http/functions/UnwrapOnlyJsonValueInSet.java
+++ b/core/src/main/java/org/jclouds/http/functions/UnwrapOnlyJsonValueInSet.java
@@ -39,7 +39,7 @@ public class UnwrapOnlyJsonValueInSet<T> implements Function<HttpResponse, T> {
    @Override
    public T apply(HttpResponse arg0) {
       Set<T> set = json.apply(arg0);
-      if (set == null || set.size() == 0)
+      if (set == null || set.isEmpty())
          return null;
       return Iterables.getOnlyElement(set);
    }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/http/options/GetOptions.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/http/options/GetOptions.java b/core/src/main/java/org/jclouds/http/options/GetOptions.java
index a999620..278a40a 100644
--- a/core/src/main/java/org/jclouds/http/options/GetOptions.java
+++ b/core/src/main/java/org/jclouds/http/options/GetOptions.java
@@ -41,8 +41,8 @@ import com.google.common.collect.Multimap;
  * <p/>
  * <code>
  * import static org.jclouds.http.options.GetOptions.Builder.*
- * 
- * 
+ *
+ *
  * // this will get the first megabyte of an object.
  * blob = client.get("objectName",range(0,1024));
  * <code>
@@ -92,11 +92,11 @@ public class GetOptions extends BaseHttpRequestOptions {
    /**
     * For use in the header Range
     * <p />
-    * 
+    *
     * @see GetOptions#range(long, long)
     */
    public String getRange() {
-      return (ranges.size() > 0) ? String.format("bytes=%s", Joiner.on(",").join(ranges)) : null;
+      return (!ranges.isEmpty()) ? String.format("bytes=%s", Joiner.on(",").join(ranges)) : null;
    }
 
    /**
@@ -117,7 +117,7 @@ public class GetOptions extends BaseHttpRequestOptions {
     * <p />
     * Return the object only if it has been modified since the specified time, otherwise return a
     * 304 (not modified).
-    * 
+    *
     * @see #ifModifiedSince(Date)
     */
    public String getIfModifiedSince() {
@@ -142,7 +142,7 @@ public class GetOptions extends BaseHttpRequestOptions {
     * <p />
     * Return the object only if it has not been modified since the specified time, otherwise return
     * a 412 (precondition failed).
-    * 
+    *
     * @see #ifUnmodifiedSince(Date)
     */
    public String getIfUnmodifiedSince() {
@@ -151,10 +151,10 @@ public class GetOptions extends BaseHttpRequestOptions {
 
    /**
     * The object's eTag hash should match the parameter <code>eTag</code>.
-    * 
+    *
     * <p />
     * Not compatible with {@link #ifETagDoesntMatch(byte[])} or {@link #ifModifiedSince(Date)}
-    * 
+    *
     * @param eTag
     *           hash representing the payload
     */
@@ -170,7 +170,7 @@ public class GetOptions extends BaseHttpRequestOptions {
     * <p />
     * Return the object only if its payload tag (ETag) is the same as the eTag specified, otherwise
     * return a 412 (precondition failed).
-    * 
+    *
     * @see #ifETagMatches(String)
     */
    public String getIfMatch() {
@@ -181,7 +181,7 @@ public class GetOptions extends BaseHttpRequestOptions {
     * The object should not have a eTag hash corresponding with the parameter <code>eTag</code>.
     * <p />
     * Not compatible with {@link #ifETagMatches(String)} or {@link #ifUnmodifiedSince(Date)}
-    * 
+    *
     * @param eTag
     *           hash representing the payload
     */
@@ -197,7 +197,7 @@ public class GetOptions extends BaseHttpRequestOptions {
     * <p />
     * Return the object only if its payload tag (ETag) is different from the one specified,
     * otherwise return a 304 (not modified).
-    * 
+    *
     * @see #ifETagDoesntMatch(String)
     */
    public String getIfNoneMatch() {

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/location/functions/RegionToEndpoint.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/location/functions/RegionToEndpoint.java b/core/src/main/java/org/jclouds/location/functions/RegionToEndpoint.java
index 50c4357..ac1edf1 100644
--- a/core/src/main/java/org/jclouds/location/functions/RegionToEndpoint.java
+++ b/core/src/main/java/org/jclouds/location/functions/RegionToEndpoint.java
@@ -46,7 +46,7 @@ public class RegionToEndpoint implements Function<Object, URI> {
    public URI apply(@Nullable Object from) {
       checkArgument(from != null && from instanceof String, "you must specify a region, as a String argument");
       Map<String, Supplier<URI>> regionToEndpoint = regionToEndpointSupplier.get();
-      checkState(regionToEndpoint.size() > 0, "no region name to endpoint mappings configured!");
+      checkState(!regionToEndpoint.isEmpty(), "no region name to endpoint mappings configured!");
       checkArgument(regionToEndpoint.containsKey(from),
                "requested location %s, which is not in the configured locations: %s", from, regionToEndpoint);
       return regionToEndpoint.get(from).get();

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/location/functions/ZoneToEndpoint.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/location/functions/ZoneToEndpoint.java b/core/src/main/java/org/jclouds/location/functions/ZoneToEndpoint.java
index a308dbe..b1ce51e 100644
--- a/core/src/main/java/org/jclouds/location/functions/ZoneToEndpoint.java
+++ b/core/src/main/java/org/jclouds/location/functions/ZoneToEndpoint.java
@@ -46,7 +46,7 @@ public class ZoneToEndpoint implements Function<Object, URI> {
    public URI apply(@Nullable Object from) {
       checkArgument(from != null && from instanceof String, "you must specify a zone, as a String argument");
       Map<String, Supplier<URI>> zoneToEndpoint = zoneToEndpointSupplier.get();
-      checkState(zoneToEndpoint.size() > 0, "no zone name to endpoint mappings configured!");
+      checkState(!zoneToEndpoint.isEmpty(), "no zone name to endpoint mappings configured!");
       checkArgument(zoneToEndpoint.containsKey(from),
                "requested location %s, which is not in the configured locations: %s", from, zoneToEndpoint);
       return zoneToEndpoint.get(from).get();

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/location/predicates/fromconfig/AnyOrConfiguredRegionId.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/location/predicates/fromconfig/AnyOrConfiguredRegionId.java b/core/src/main/java/org/jclouds/location/predicates/fromconfig/AnyOrConfiguredRegionId.java
index 2100f2f..2eec4be 100644
--- a/core/src/main/java/org/jclouds/location/predicates/fromconfig/AnyOrConfiguredRegionId.java
+++ b/core/src/main/java/org/jclouds/location/predicates/fromconfig/AnyOrConfiguredRegionId.java
@@ -27,7 +27,7 @@ import org.jclouds.location.predicates.RegionIdFilter;
 import org.jclouds.location.suppliers.fromconfig.RegionIdsFromConfiguration;
 
 /**
- * 
+ *
  * If there are regions configured in {@link RegionIdsFromConfiguration}, return
  * true if that set contains the input param. If there aren't, return true.
  */
@@ -44,11 +44,11 @@ public class AnyOrConfiguredRegionId implements RegionIdFilter {
    @Override
    public boolean apply(String input) {
       Set<String> idsInConfig = idsInConfigSupplier.get();
-      if (idsInConfig.size() == 0)
+      if (idsInConfig.isEmpty())
          return true;
       return idsInConfig.contains(input);
    }
-   
+
    @Override
    public String toString() {
       return "anyOrConfiguredRegionId(" + idsInConfigSupplier + ")";

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/location/predicates/fromconfig/AnyOrConfiguredZoneId.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/location/predicates/fromconfig/AnyOrConfiguredZoneId.java b/core/src/main/java/org/jclouds/location/predicates/fromconfig/AnyOrConfiguredZoneId.java
index 514a1ba..cefc11e 100644
--- a/core/src/main/java/org/jclouds/location/predicates/fromconfig/AnyOrConfiguredZoneId.java
+++ b/core/src/main/java/org/jclouds/location/predicates/fromconfig/AnyOrConfiguredZoneId.java
@@ -27,7 +27,7 @@ import org.jclouds.location.predicates.ZoneIdFilter;
 import org.jclouds.location.suppliers.fromconfig.ZoneIdsFromConfiguration;
 
 /**
- * 
+ *
  * If there are zones configured in {@link ZoneIdsFromConfiguration}, return
  * true if that set contains the input param. If there aren't, return true.
  */
@@ -44,11 +44,11 @@ public class AnyOrConfiguredZoneId implements ZoneIdFilter {
    @Override
    public boolean apply(String input) {
       Set<String> idsInConfig = idsInConfigSupplier.get();
-      if (idsInConfig.size() == 0)
+      if (idsInConfig.isEmpty())
          return true;
       return idsInConfig.contains(input);
    }
-   
+
    @Override
    public String toString() {
       return "anyOrConfiguredZoneId(" + idsInConfigSupplier + ")";

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/location/suppliers/all/RegionToProvider.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/location/suppliers/all/RegionToProvider.java b/core/src/main/java/org/jclouds/location/suppliers/all/RegionToProvider.java
index 6b828ee..8d8c819 100644
--- a/core/src/main/java/org/jclouds/location/suppliers/all/RegionToProvider.java
+++ b/core/src/main/java/org/jclouds/location/suppliers/all/RegionToProvider.java
@@ -56,7 +56,7 @@ public class RegionToProvider implements LocationsSupplier {
       Builder<Location> locations = ImmutableSet.builder();
       Location provider = Iterables.getOnlyElement(justProvider.get());
       Set<String> regions = regionsSupplier.get();
-      checkState(regions.size() > 0, "no regions found for provider %s, using supplier %s", provider, regionsSupplier);
+      checkState(!regions.isEmpty(), "no regions found for provider %s, using supplier %s", provider, regionsSupplier);
       Map<String, Supplier<Set<String>>> isoCodesById = isoCodesByIdSupplier.get();
       for (String region : regions) {
          LocationBuilder builder = new LocationBuilder().scope(LocationScope.REGION).id(region).description(region)

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/location/suppliers/all/RegionToProviderOrJustProvider.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/location/suppliers/all/RegionToProviderOrJustProvider.java b/core/src/main/java/org/jclouds/location/suppliers/all/RegionToProviderOrJustProvider.java
index ac49b59..759255b 100644
--- a/core/src/main/java/org/jclouds/location/suppliers/all/RegionToProviderOrJustProvider.java
+++ b/core/src/main/java/org/jclouds/location/suppliers/all/RegionToProviderOrJustProvider.java
@@ -55,7 +55,7 @@ public class RegionToProviderOrJustProvider implements Supplier<Set<? extends Lo
       Location provider = Iterables.getOnlyElement(justProvider.get());
       Set<String> regions = regionsSupplier.get();
       Map<String, Supplier<Set<String>>> isoCodesById = isoCodesByIdSupplier.get();
-      if (regions.size() == 0)
+      if (regions.isEmpty())
          return locations.add(provider).build();
       else
          for (String region : regions) {

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/location/suppliers/all/ZoneToProvider.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/location/suppliers/all/ZoneToProvider.java b/core/src/main/java/org/jclouds/location/suppliers/all/ZoneToProvider.java
index 5b9994b..f0a5a1b 100644
--- a/core/src/main/java/org/jclouds/location/suppliers/all/ZoneToProvider.java
+++ b/core/src/main/java/org/jclouds/location/suppliers/all/ZoneToProvider.java
@@ -61,7 +61,7 @@ public class ZoneToProvider implements LocationsSupplier {
    public Set<? extends Location> get() {
       Location provider = Iterables.getOnlyElement(justProvider.get());
       Set<String> zoneIds = zoneIdsSupplier.get();
-      checkState(zoneIds.size() > 0, "no zones found for provider %s, using supplier %s", provider, zoneIdsSupplier);
+      checkState(!zoneIds.isEmpty(), "no zones found for provider %s, using supplier %s", provider, zoneIdsSupplier);
       Map<String, Supplier<Set<String>>> isoCodesById = isoCodesByIdSupplier.get();
 
       Builder<Location> locations = ImmutableSet.builder();

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/location/suppliers/all/ZoneToRegionToProviderOrJustProvider.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/location/suppliers/all/ZoneToRegionToProviderOrJustProvider.java b/core/src/main/java/org/jclouds/location/suppliers/all/ZoneToRegionToProviderOrJustProvider.java
index 4de5ac6..a657636 100644
--- a/core/src/main/java/org/jclouds/location/suppliers/all/ZoneToRegionToProviderOrJustProvider.java
+++ b/core/src/main/java/org/jclouds/location/suppliers/all/ZoneToRegionToProviderOrJustProvider.java
@@ -70,7 +70,7 @@ public class ZoneToRegionToProviderOrJustProvider implements LocationsSupplier {
    public Set<? extends Location> get() {
       Set<? extends Location> regionsOrJustProvider = regionToProviderOrJustProvider.get();
       Set<String> zoneIds = zoneIdsSupplier.get();
-      if (zoneIds.size() == 0)
+      if (zoneIds.isEmpty())
          return regionsOrJustProvider;
       Map<String, Location> zoneIdToParent = setParentOfZoneToRegionOrProvider(zoneIds, regionsOrJustProvider);
       Map<String, Supplier<Set<String>>> isoCodesById = isoCodesByIdSupplier.get();
@@ -121,7 +121,7 @@ public class ZoneToRegionToProviderOrJustProvider implements LocationsSupplier {
       }
 
       SetView<String> orphans = Sets.difference(zoneIds, zoneIdToParent.keySet());
-      if (orphans.size() > 0) {
+      if (!orphans.isEmpty()) {
          // any unmatched zones should have their parents set to the provider
          checkState(
                   provider != null,
@@ -130,7 +130,7 @@ public class ZoneToRegionToProviderOrJustProvider implements LocationsSupplier {
          for (String orphanedZoneId : orphans)
             zoneIdToParent.put(orphanedZoneId, provider);
       }
-      
+
       checkState(zoneIdToParent.keySet().containsAll(zoneIds), "orphaned zones: %s ", Sets.difference(zoneIds,
                zoneIdToParent.keySet()));
       return zoneIdToParent;

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/location/suppliers/fromconfig/RegionIdToZoneIdsFromConfiguration.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/location/suppliers/fromconfig/RegionIdToZoneIdsFromConfiguration.java b/core/src/main/java/org/jclouds/location/suppliers/fromconfig/RegionIdToZoneIdsFromConfiguration.java
index 744ac2e..029fed4 100644
--- a/core/src/main/java/org/jclouds/location/suppliers/fromconfig/RegionIdToZoneIdsFromConfiguration.java
+++ b/core/src/main/java/org/jclouds/location/suppliers/fromconfig/RegionIdToZoneIdsFromConfiguration.java
@@ -40,7 +40,7 @@ import com.google.common.collect.ImmutableMap.Builder;
 import com.google.common.collect.ImmutableSet;
 
 /**
- * 
+ *
  * looks for properties bound to the naming convention jclouds.location.region.{@code regionId}
  * .zones
  */
@@ -67,7 +67,7 @@ public class RegionIdToZoneIdsFromConfiguration implements RegionIdToZoneIdsSupp
    @Override
    public Map<String, Supplier<Set<String>>> get() {
       Set<String> regions = regionsSupplier.get();
-      if (regions.size() == 0) {
+      if (regions.isEmpty()) {
          logger.debug("no regions configured for provider %s", provider);
          return ImmutableMap.of();
       }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/logging/config/BindLoggersAnnotatedWithResource.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/logging/config/BindLoggersAnnotatedWithResource.java b/core/src/main/java/org/jclouds/logging/config/BindLoggersAnnotatedWithResource.java
index 868deaf..1104091 100644
--- a/core/src/main/java/org/jclouds/logging/config/BindLoggersAnnotatedWithResource.java
+++ b/core/src/main/java/org/jclouds/logging/config/BindLoggersAnnotatedWithResource.java
@@ -108,7 +108,7 @@ public class BindLoggersAnnotatedWithResource implements TypeListener {
 
         Class<? super I> type = injectableType.getRawType();
         Set<Field> loggerFields = getLoggerFieldsAnnotatedWithResource(type);
-        if (loggerFields.size() == 0)
+        if (loggerFields.isEmpty())
             return;
 
         Logger logger = loggerFactory.getLogger(type.getName());

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/reflect/Invocation.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/reflect/Invocation.java b/core/src/main/java/org/jclouds/reflect/Invocation.java
index b05d780..039e6c8 100644
--- a/core/src/main/java/org/jclouds/reflect/Invocation.java
+++ b/core/src/main/java/org/jclouds/reflect/Invocation.java
@@ -43,13 +43,13 @@ public final class Invocation {
 
    /**
     * invocation without arguments.
-    * 
+    *
     * @throws IllegalArgumentException
     *            if in invokable requires arguments
     */
    public static Invocation create(Invokable<?, ?> invokable) {
       checkArgument(
-            invokable.getParameters().size() == 0 || (invokable.getParameters().size() == 1 && invokable.isVarArgs()),
+            invokable.getParameters().isEmpty() || (invokable.getParameters().size() == 1 && invokable.isVarArgs()),
             "please specify arguments to %s", invokable);
       return create(invokable, ImmutableList.of());
    }
@@ -71,7 +71,7 @@ public final class Invocation {
 
    /**
     * arguments applied to {@link #getInvokable()} during {@link Invokable#invoke(Object, Object...)}
-    * 
+    *
     * @param args
     *           as these represent parameters, can contain nulls
     */

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/rest/binders/BindMapToStringPayload.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/rest/binders/BindMapToStringPayload.java b/core/src/main/java/org/jclouds/rest/binders/BindMapToStringPayload.java
index e0b11d0..0a949c6 100644
--- a/core/src/main/java/org/jclouds/rest/binders/BindMapToStringPayload.java
+++ b/core/src/main/java/org/jclouds/rest/binders/BindMapToStringPayload.java
@@ -44,7 +44,7 @@ public class BindMapToStringPayload implements MapBinder {
       checkArgument(invoked.isAnnotationPresent(Payload.class),
             "method %s must have @Payload annotation to use this binder", invoked);
       String payload = invoked.getAnnotation(Payload.class).value();
-      if (postParams.size() > 0) {
+      if (!postParams.isEmpty()) {
          payload = urlDecode(expand(payload, postParams));
       }
       return (R) request.toBuilder().payload(payload).build();

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/rest/internal/RestAnnotationProcessor.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/rest/internal/RestAnnotationProcessor.java b/core/src/main/java/org/jclouds/rest/internal/RestAnnotationProcessor.java
index a106868..9f1461a 100644
--- a/core/src/main/java/org/jclouds/rest/internal/RestAnnotationProcessor.java
+++ b/core/src/main/java/org/jclouds/rest/internal/RestAnnotationProcessor.java
@@ -274,7 +274,7 @@ public class RestAnnotationProcessor implements Function<Invocation, HttpRequest
             payload = Payloads.newStringPayload(stringPayload);
       }
 
-      if (queryParams.size() > 0) {
+      if (!queryParams.isEmpty()) {
          uriBuilder.query(queryParams);
       }
 
@@ -291,12 +291,12 @@ public class RestAnnotationProcessor implements Function<Invocation, HttpRequest
       List<? extends Part> parts = getParts(invocation, ImmutableMultimap.<String, Object> builder()
             .putAll(tokenValues).putAll(formParams).build());
 
-      if (parts.size() > 0) {
-         if (formParams.size() > 0) {
+      if (!parts.isEmpty()) {
+         if (!formParams.isEmpty()) {
             parts = newLinkedList(concat(transform(formParams.entries(), ENTRY_TO_PART), parts));
          }
          payload = new MultipartForm(MultipartForm.BOUNDARY, parts);
-      } else if (formParams.size() > 0) {
+      } else if (!formParams.isEmpty()) {
          payload = Payloads.newUrlEncodedFormPayload(transformValues(formParams, NullableToStringFunction.INSTANCE));
       } else if (headers.containsKey(CONTENT_TYPE) && !HttpRequest.NON_PAYLOAD_METHODS.contains(requestMethod)) {
          if (payload == null)

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/core/src/main/java/org/jclouds/suppliers/SupplyKeyMatchingValueOrNull.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/jclouds/suppliers/SupplyKeyMatchingValueOrNull.java b/core/src/main/java/org/jclouds/suppliers/SupplyKeyMatchingValueOrNull.java
index e96bb03..2cbdb85 100644
--- a/core/src/main/java/org/jclouds/suppliers/SupplyKeyMatchingValueOrNull.java
+++ b/core/src/main/java/org/jclouds/suppliers/SupplyKeyMatchingValueOrNull.java
@@ -51,7 +51,7 @@ public class SupplyKeyMatchingValueOrNull<K, V> implements Supplier<K> {
       // eagerly get all the values, so we can see which is default
       Map<K, V> map = Maps.transformValues(supplier.get(), Suppliers.<V> supplierFunction());
       K region = ImmutableBiMap.copyOf(map).inverse().get(uri);
-      if (region == null && map.size() > 0) {
+      if (region == null && !map.isEmpty()) {
          region = Iterables.get(map.keySet(), 0);
          logger.warn("failed to find key for value %s in %s; choosing first: %s", uri, map, region);
       }

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/binders/BindLaunchSpecificationToFormParams.java
----------------------------------------------------------------------
diff --git a/providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/binders/BindLaunchSpecificationToFormParams.java b/providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/binders/BindLaunchSpecificationToFormParams.java
index 6326a18..c3f271a 100644
--- a/providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/binders/BindLaunchSpecificationToFormParams.java
+++ b/providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/binders/BindLaunchSpecificationToFormParams.java
@@ -54,11 +54,11 @@ public class BindLaunchSpecificationToFormParams implements Binder, Function<Lau
          builder.put("LaunchSpecification.Placement.AvailabilityZone", launchSpec.getAvailabilityZone());
 
       AWSRunInstancesOptions options = new AWSRunInstancesOptions();
-      if (launchSpec.getBlockDeviceMappings().size() > 0)
+      if (!launchSpec.getBlockDeviceMappings().isEmpty())
          options.withBlockDeviceMappings(launchSpec.getBlockDeviceMappings());
-      if (launchSpec.getSecurityGroupNames().size() > 0)
+      if (!launchSpec.getSecurityGroupNames().isEmpty())
          options.withSecurityGroups(launchSpec.getSecurityGroupNames());
-      if (launchSpec.getSecurityGroupIds().size() > 0)
+      if (!launchSpec.getSecurityGroupIds().isEmpty())
          options.withSecurityGroupIds(launchSpec.getSecurityGroupIds());
       options.asType(checkNotNull(launchSpec.getInstanceType(), "instanceType"));
       if (launchSpec.getSubnetId() != null)

http://git-wip-us.apache.org/repos/asf/jclouds/blob/e711275f/providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/compute/AWSEC2ComputeService.java
----------------------------------------------------------------------
diff --git a/providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/compute/AWSEC2ComputeService.java b/providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/compute/AWSEC2ComputeService.java
index 472b414..86b1ff0 100644
--- a/providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/compute/AWSEC2ComputeService.java
+++ b/providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/compute/AWSEC2ComputeService.java
@@ -122,7 +122,7 @@ public class AWSEC2ComputeService extends EC2ComputeService {
       // http://docs.amazonwebservices.com/AWSEC2/latest/UserGuide/index.html?using_cluster_computing.html
       String placementGroup = String.format("jclouds#%s#%s", group, region);
       try {
-         if (client.getPlacementGroupApi().get().describePlacementGroupsInRegion(region, placementGroup).size() > 0) {
+         if (!client.getPlacementGroupApi().get().describePlacementGroupsInRegion(region, placementGroup).isEmpty()) {
             logger.debug(">> deleting placementGroup(%s)", placementGroup);
             try {
                client.getPlacementGroupApi().get().deletePlacementGroupInRegion(region, placementGroup);