You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jclouds.apache.org by na...@apache.org on 2013/07/02 18:28:49 UTC

[2/8] JCLOUDS-156: Cleanup Abiquo provider

http://git-wip-us.apache.org/repos/asf/incubator-jclouds-labs/blob/c5e108a8/abiquo/src/test/java/org/jclouds/abiquo/domain/infrastructure/RackLiveApiTest.java
----------------------------------------------------------------------
diff --git a/abiquo/src/test/java/org/jclouds/abiquo/domain/infrastructure/RackLiveApiTest.java b/abiquo/src/test/java/org/jclouds/abiquo/domain/infrastructure/RackLiveApiTest.java
index 9cdcff3..71f87f7 100644
--- a/abiquo/src/test/java/org/jclouds/abiquo/domain/infrastructure/RackLiveApiTest.java
+++ b/abiquo/src/test/java/org/jclouds/abiquo/domain/infrastructure/RackLiveApiTest.java
@@ -16,16 +16,15 @@
  */
 package org.jclouds.abiquo.domain.infrastructure;
 
-import static org.jclouds.abiquo.predicates.infrastructure.RackPredicates.name;
+import static com.google.common.collect.Iterables.filter;
+import static com.google.common.collect.Iterables.size;
 import static org.testng.Assert.assertEquals;
-import static org.testng.Assert.assertNotNull;
-import static org.testng.Assert.assertNull;
 
 import org.jclouds.abiquo.internal.BaseAbiquoApiLiveApiTest;
 import org.testng.annotations.Test;
 
 import com.abiquo.server.core.infrastructure.RackDto;
-import com.google.common.collect.Iterables;
+import com.google.common.base.Predicate;
 
 /**
  * Live integration tests for the {@link Rack} domain class.
@@ -47,21 +46,22 @@ public class RackLiveApiTest extends BaseAbiquoApiLiveApiTest {
 
    public void testListRacks() {
       Iterable<Rack> racks = env.datacenter.listRacks();
-      assertEquals(Iterables.size(racks), 1);
+      assertEquals(size(racks), 1);
 
-      racks = env.datacenter.listRacks(name(env.rack.getName()));
-      assertEquals(Iterables.size(racks), 1);
+      racks = filter(env.datacenter.listRacks(), name(env.rack.getName()));
+      assertEquals(size(racks), 1);
 
-      racks = env.datacenter.listRacks(name(env.rack.getName() + "FAIL"));
-      assertEquals(Iterables.size(racks), 0);
+      racks = filter(env.datacenter.listRacks(), name(env.rack.getName() + "FAIL"));
+      assertEquals(size(racks), 0);
    }
 
-   public void testFindRack() {
-      Rack rack = env.datacenter.findRack(name(env.rack.getName()));
-      assertNotNull(rack);
-
-      rack = env.datacenter.findRack(name(env.rack.getName() + "FAIL"));
-      assertNull(rack);
+   private static Predicate<Rack> name(final String name) {
+      return new Predicate<Rack>() {
+         @Override
+         public boolean apply(Rack input) {
+            return input.getName().equals(name);
+         }
+      };
    }
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-jclouds-labs/blob/c5e108a8/abiquo/src/test/java/org/jclouds/abiquo/domain/infrastructure/RemoteServiceLiveApiTest.java
----------------------------------------------------------------------
diff --git a/abiquo/src/test/java/org/jclouds/abiquo/domain/infrastructure/RemoteServiceLiveApiTest.java b/abiquo/src/test/java/org/jclouds/abiquo/domain/infrastructure/RemoteServiceLiveApiTest.java
index c837208..4c75f62 100644
--- a/abiquo/src/test/java/org/jclouds/abiquo/domain/infrastructure/RemoteServiceLiveApiTest.java
+++ b/abiquo/src/test/java/org/jclouds/abiquo/domain/infrastructure/RemoteServiceLiveApiTest.java
@@ -16,10 +16,11 @@
  */
 package org.jclouds.abiquo.domain.infrastructure;
 
-import static org.jclouds.abiquo.predicates.infrastructure.RemoteServicePredicates.type;
+import static com.google.common.collect.Iterables.filter;
+import static com.google.common.collect.Iterables.find;
+import static com.google.common.collect.Iterables.size;
 import static org.jclouds.abiquo.util.Assert.assertHasError;
 import static org.testng.Assert.assertEquals;
-import static org.testng.Assert.assertNotNull;
 import static org.testng.Assert.assertNull;
 import static org.testng.Assert.assertTrue;
 import static org.testng.Assert.fail;
@@ -35,7 +36,7 @@ import org.testng.annotations.Test;
 
 import com.abiquo.model.enumerator.RemoteServiceType;
 import com.abiquo.server.core.infrastructure.RemoteServiceDto;
-import com.google.common.collect.Iterables;
+import com.google.common.base.Predicate;
 
 /**
  * Live integration tests for the {@link RemoteService} domain class.
@@ -46,7 +47,7 @@ import com.google.common.collect.Iterables;
 public class RemoteServiceLiveApiTest extends BaseAbiquoApiLiveApiTest {
    public void testUpdate() {
       // Update the remote service
-      RemoteService rs = env.datacenter.findRemoteService(type(RemoteServiceType.VIRTUAL_FACTORY));
+      RemoteService rs = find(env.datacenter.listRemoteServices(), type(RemoteServiceType.VIRTUAL_FACTORY));
       rs.setUri(rs.getUri());
       rs.update();
 
@@ -58,7 +59,7 @@ public class RemoteServiceLiveApiTest extends BaseAbiquoApiLiveApiTest {
    }
 
    public void testDelete() {
-      RemoteService rs = env.datacenter.findRemoteService(type(RemoteServiceType.BPM_SERVICE));
+      RemoteService rs = find(env.datacenter.listRemoteServices(), type(RemoteServiceType.BPM_SERVICE));
       rs.delete();
 
       // Recover the deleted remote service
@@ -76,12 +77,12 @@ public class RemoteServiceLiveApiTest extends BaseAbiquoApiLiveApiTest {
    }
 
    public void testIsAvailableNonCheckeable() {
-      RemoteService rs = env.datacenter.findRemoteService(type(RemoteServiceType.DHCP_SERVICE));
+      RemoteService rs = find(env.datacenter.listRemoteServices(), type(RemoteServiceType.DHCP_SERVICE));
       assertTrue(rs.isAvailable());
    }
 
    public void testIsAvailable() {
-      RemoteService rs = env.datacenter.findRemoteService(type(RemoteServiceType.NODE_COLLECTOR));
+      RemoteService rs = find(env.datacenter.listRemoteServices(), type(RemoteServiceType.NODE_COLLECTOR));
       assertTrue(rs.isAvailable());
    }
 
@@ -98,15 +99,19 @@ public class RemoteServiceLiveApiTest extends BaseAbiquoApiLiveApiTest {
 
    public void testListRemoteServices() {
       Iterable<RemoteService> remoteServices = env.datacenter.listRemoteServices();
-      assertEquals(Iterables.size(remoteServices), env.remoteServices.size());
+      assertEquals(size(remoteServices), env.remoteServices.size());
 
-      remoteServices = env.datacenter.listRemoteServices(type(RemoteServiceType.NODE_COLLECTOR));
-      assertEquals(Iterables.size(remoteServices), 1);
+      remoteServices = filter(env.datacenter.listRemoteServices(), type(RemoteServiceType.NODE_COLLECTOR));
+      assertEquals(size(remoteServices), 1);
    }
 
-   public void testFindRemoteService() {
-      RemoteService remoteService = env.datacenter.findRemoteService(type(RemoteServiceType.NODE_COLLECTOR));
-      assertNotNull(remoteService);
+   private static Predicate<RemoteService> type(final RemoteServiceType type) {
+      return new Predicate<RemoteService>() {
+         @Override
+         public boolean apply(RemoteService input) {
+            return input.getType().equals(type);
+         }
+      };
    }
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-jclouds-labs/blob/c5e108a8/abiquo/src/test/java/org/jclouds/abiquo/domain/infrastructure/StorageDeviceLiveApiTest.java
----------------------------------------------------------------------
diff --git a/abiquo/src/test/java/org/jclouds/abiquo/domain/infrastructure/StorageDeviceLiveApiTest.java b/abiquo/src/test/java/org/jclouds/abiquo/domain/infrastructure/StorageDeviceLiveApiTest.java
index 1cf339f..c8cc8d6 100644
--- a/abiquo/src/test/java/org/jclouds/abiquo/domain/infrastructure/StorageDeviceLiveApiTest.java
+++ b/abiquo/src/test/java/org/jclouds/abiquo/domain/infrastructure/StorageDeviceLiveApiTest.java
@@ -16,16 +16,15 @@
  */
 package org.jclouds.abiquo.domain.infrastructure;
 
+import static com.google.common.collect.Iterables.filter;
+import static com.google.common.collect.Iterables.size;
 import static org.testng.Assert.assertEquals;
-import static org.testng.Assert.assertNotNull;
-import static org.testng.Assert.assertNull;
 
 import org.jclouds.abiquo.internal.BaseAbiquoApiLiveApiTest;
-import org.jclouds.abiquo.predicates.infrastructure.StorageDevicePredicates;
 import org.testng.annotations.Test;
 
 import com.abiquo.server.core.infrastructure.storage.StorageDeviceDto;
-import com.google.common.collect.Iterables;
+import com.google.common.base.Predicate;
 
 /**
  * Live integration tests for the {@link StorageDevice} domain class.
@@ -49,24 +48,22 @@ public class StorageDeviceLiveApiTest extends BaseAbiquoApiLiveApiTest {
 
    public void testListStorageDevices() {
       Iterable<StorageDevice> storageDevices = env.datacenter.listStorageDevices();
-      assertEquals(Iterables.size(storageDevices), 1);
+      assertEquals(size(storageDevices), 1);
 
-      storageDevices = env.datacenter.listStorageDevices(StorageDevicePredicates.name(env.storageDevice.getName()));
-      assertEquals(Iterables.size(storageDevices), 1);
+      storageDevices = filter(env.datacenter.listStorageDevices(), name(env.storageDevice.getName()));
+      assertEquals(size(storageDevices), 1);
 
-      storageDevices = env.datacenter.listStorageDevices(StorageDevicePredicates.name(env.storageDevice.getName()
-            + "FAIL"));
-      assertEquals(Iterables.size(storageDevices), 0);
+      storageDevices = filter(env.datacenter.listStorageDevices(), name(env.storageDevice.getName() + "FAIL"));
+      assertEquals(size(storageDevices), 0);
    }
 
-   public void testFindStorageDevice() {
-      StorageDevice storageDevice = env.datacenter.findStorageDevice(StorageDevicePredicates.name(env.storageDevice
-            .getName()));
-      assertNotNull(storageDevice);
-
-      storageDevice = env.datacenter.findStorageDevice(StorageDevicePredicates.name(env.storageDevice.getName()
-            + "FAIL"));
-      assertNull(storageDevice);
+   private static Predicate<StorageDevice> name(final String name) {
+      return new Predicate<StorageDevice>() {
+         @Override
+         public boolean apply(StorageDevice input) {
+            return input.getName().equals(name);
+         }
+      };
    }
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-jclouds-labs/blob/c5e108a8/abiquo/src/test/java/org/jclouds/abiquo/domain/infrastructure/StoragePoolLiveApiTest.java
----------------------------------------------------------------------
diff --git a/abiquo/src/test/java/org/jclouds/abiquo/domain/infrastructure/StoragePoolLiveApiTest.java b/abiquo/src/test/java/org/jclouds/abiquo/domain/infrastructure/StoragePoolLiveApiTest.java
index 2d49d95..7c2d2d9 100644
--- a/abiquo/src/test/java/org/jclouds/abiquo/domain/infrastructure/StoragePoolLiveApiTest.java
+++ b/abiquo/src/test/java/org/jclouds/abiquo/domain/infrastructure/StoragePoolLiveApiTest.java
@@ -16,16 +16,16 @@
  */
 package org.jclouds.abiquo.domain.infrastructure;
 
+import static com.google.common.collect.Iterables.filter;
+import static com.google.common.collect.Iterables.find;
+import static com.google.common.collect.Iterables.size;
 import static org.testng.Assert.assertEquals;
 import static org.testng.Assert.assertNotNull;
-import static org.testng.Assert.assertNull;
 
 import org.jclouds.abiquo.internal.BaseAbiquoApiLiveApiTest;
-import org.jclouds.abiquo.predicates.infrastructure.StoragePoolPredicates;
-import org.jclouds.abiquo.predicates.infrastructure.TierPredicates;
 import org.testng.annotations.Test;
 
-import com.google.common.collect.Iterables;
+import com.google.common.base.Predicate;
 
 /**
  * Live integration tests for the {@link StorageDevice} domain class.
@@ -43,8 +43,12 @@ public class StoragePoolLiveApiTest extends BaseAbiquoApiLiveApiTest {
 
    public void testUpdate() {
       try {
-         Tier tier3 = env.datacenter.findTier(TierPredicates.name("Default Tier 3"));
-         assertNotNull(tier3);
+         Tier tier3 = find(env.datacenter.listTiers(), new Predicate<Tier>() {
+            @Override
+            public boolean apply(Tier input) {
+               return input.getName().equals("Default Tier 3");
+            }
+         });
          env.storagePool.setTier(tier3);
          env.storagePool.update();
 
@@ -59,26 +63,26 @@ public class StoragePoolLiveApiTest extends BaseAbiquoApiLiveApiTest {
 
    public void testListStoragePool() {
       Iterable<StoragePool> storagePools = env.storageDevice.listStoragePools();
-      assertEquals(Iterables.size(storagePools), 1);
+      assertEquals(size(storagePools), 1);
 
-      storagePools = env.storageDevice.listStoragePools(StoragePoolPredicates.name(env.storagePool.getName()));
-      assertEquals(Iterables.size(storagePools), 1);
+      storagePools = filter(env.storageDevice.listStoragePools(), name(env.storagePool.getName()));
+      assertEquals(size(storagePools), 1);
 
-      storagePools = env.storageDevice.listStoragePools(StoragePoolPredicates.name(env.storagePool.getName() + "FAIL"));
-      assertEquals(Iterables.size(storagePools), 0);
-   }
-
-   public void testFindStoragePool() {
-      StoragePool storagePool = env.storageDevice
-            .findStoragePool(StoragePoolPredicates.name(env.storagePool.getName()));
-      assertNotNull(storagePool);
-
-      storagePool = env.storageDevice.findStoragePool(StoragePoolPredicates.name(env.storagePool.getName() + "FAIL"));
-      assertNull(storagePool);
+      storagePools = filter(env.storageDevice.listStoragePools(), name(env.storagePool.getName() + "FAIL"));
+      assertEquals(size(storagePools), 0);
    }
 
    public void testRefreshStoragePool() {
       env.storagePool.refresh();
    }
 
+   private static Predicate<StoragePool> name(final String name) {
+      return new Predicate<StoragePool>() {
+         @Override
+         public boolean apply(StoragePool input) {
+            return input.getName().equals(name);
+         }
+      };
+   }
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-jclouds-labs/blob/c5e108a8/abiquo/src/test/java/org/jclouds/abiquo/domain/infrastructure/TierLiveApiTest.java
----------------------------------------------------------------------
diff --git a/abiquo/src/test/java/org/jclouds/abiquo/domain/infrastructure/TierLiveApiTest.java b/abiquo/src/test/java/org/jclouds/abiquo/domain/infrastructure/TierLiveApiTest.java
index 1a139b6..c04b3b6 100644
--- a/abiquo/src/test/java/org/jclouds/abiquo/domain/infrastructure/TierLiveApiTest.java
+++ b/abiquo/src/test/java/org/jclouds/abiquo/domain/infrastructure/TierLiveApiTest.java
@@ -16,14 +16,16 @@
  */
 package org.jclouds.abiquo.domain.infrastructure;
 
+import static com.google.common.collect.Iterables.filter;
+import static com.google.common.collect.Iterables.find;
+import static com.google.common.collect.Iterables.size;
 import static org.testng.Assert.assertEquals;
 import static org.testng.Assert.assertNotNull;
 
 import org.jclouds.abiquo.internal.BaseAbiquoApiLiveApiTest;
-import org.jclouds.abiquo.predicates.infrastructure.TierPredicates;
 import org.testng.annotations.Test;
 
-import com.google.common.collect.Iterables;
+import com.google.common.base.Predicate;
 
 /**
  * Live integration tests for the {@link StorageDevice} domain class.
@@ -42,20 +44,28 @@ public class TierLiveApiTest extends BaseAbiquoApiLiveApiTest {
       tier.setName("Updated tier");
       tier.update();
 
-      // Recover the updated tier
-      Tier updated = env.datacenter.findTier(TierPredicates.name("Updated tier"));
-      assertEquals(updated.getName(), "Updated tier");
+      // Verify the tier has been updated
+      find(env.datacenter.listTiers(), name("Updated tier"));
 
-      // Set original name
+      // Restore the original name
       tier.setName(previousName);
       tier.update();
    }
 
    public void testListTiers() {
       Iterable<Tier> tiers = env.datacenter.listTiers();
-      assertEquals(Iterables.size(tiers), 4);
+      assertEquals(size(tiers), 4);
 
-      tiers = env.datacenter.listTiers(TierPredicates.name("FAIL"));
-      assertEquals(Iterables.size(tiers), 0);
+      tiers = filter(env.datacenter.listTiers(), name("FAIL"));
+      assertEquals(size(tiers), 0);
+   }
+
+   private static Predicate<Tier> name(final String name) {
+      return new Predicate<Tier>() {
+         @Override
+         public boolean apply(Tier input) {
+            return input.getName().equals(name);
+         }
+      };
    }
 }

http://git-wip-us.apache.org/repos/asf/incubator-jclouds-labs/blob/c5e108a8/abiquo/src/test/java/org/jclouds/abiquo/domain/network/ExternalNetworkLiveApiTest.java
----------------------------------------------------------------------
diff --git a/abiquo/src/test/java/org/jclouds/abiquo/domain/network/ExternalNetworkLiveApiTest.java b/abiquo/src/test/java/org/jclouds/abiquo/domain/network/ExternalNetworkLiveApiTest.java
index 69ca332..e0056dc 100644
--- a/abiquo/src/test/java/org/jclouds/abiquo/domain/network/ExternalNetworkLiveApiTest.java
+++ b/abiquo/src/test/java/org/jclouds/abiquo/domain/network/ExternalNetworkLiveApiTest.java
@@ -16,6 +16,7 @@
  */
 package org.jclouds.abiquo.domain.network;
 
+import static com.google.common.collect.Iterables.find;
 import static org.jclouds.abiquo.reference.AbiquoTestConstants.PREFIX;
 import static org.jclouds.abiquo.util.Assert.assertHasError;
 import static org.testng.Assert.assertEquals;
@@ -29,13 +30,13 @@ import javax.ws.rs.core.Response.Status;
 import org.jclouds.abiquo.domain.exception.AbiquoException;
 import org.jclouds.abiquo.domain.network.options.IpOptions;
 import org.jclouds.abiquo.internal.BaseAbiquoApiLiveApiTest;
-import org.jclouds.abiquo.predicates.network.IpPredicates;
-import org.jclouds.abiquo.predicates.network.NetworkPredicates;
+import org.jclouds.abiquo.predicates.IpPredicates;
 import org.testng.annotations.AfterClass;
 import org.testng.annotations.BeforeClass;
 import org.testng.annotations.Test;
 
 import com.abiquo.server.core.infrastructure.network.ExternalIpsDto;
+import com.google.common.base.Predicate;
 
 /**
  * Live integration tests for the {@link ExternalNetwork} domain class.
@@ -91,8 +92,12 @@ public class ExternalNetworkLiveApiTest extends BaseAbiquoApiLiveApiTest {
       assertEquals(externalNetwork.getSecondaryDNS(), "8.8.8.8");
 
       // Refresh the external network
-      ExternalNetwork en = env.enterprise.findExternalNetwork(env.datacenter,
-            NetworkPredicates.<ExternalIp> name(externalNetwork.getName()));
+      ExternalNetwork en = find(env.enterprise.listExternalNetworks(env.datacenter), new Predicate<ExternalNetwork>() {
+         @Override
+         public boolean apply(ExternalNetwork input) {
+            return input.getName().equals(externalNetwork.getName());
+         }
+      });
 
       assertEquals(en.getId(), externalNetwork.getId());
       assertEquals(en.getName(), "External network Updated");
@@ -141,7 +146,7 @@ public class ExternalNetworkLiveApiTest extends BaseAbiquoApiLiveApiTest {
    }
 
    public void testGetNetworkFromIp() {
-      ExternalIp ip = externalNetwork.findIp(IpPredicates.<ExternalIp> notUsed());
+      ExternalIp ip = find(externalNetwork.listIps(), IpPredicates.<ExternalIp> notUsed());
       ExternalNetwork network = ip.getNetwork();
 
       assertEquals(network.getId(), externalNetwork.getId());

http://git-wip-us.apache.org/repos/asf/incubator-jclouds-labs/blob/c5e108a8/abiquo/src/test/java/org/jclouds/abiquo/domain/network/PrivateNetworkLiveApiTest.java
----------------------------------------------------------------------
diff --git a/abiquo/src/test/java/org/jclouds/abiquo/domain/network/PrivateNetworkLiveApiTest.java b/abiquo/src/test/java/org/jclouds/abiquo/domain/network/PrivateNetworkLiveApiTest.java
index 20f9541..ac1fb2b 100644
--- a/abiquo/src/test/java/org/jclouds/abiquo/domain/network/PrivateNetworkLiveApiTest.java
+++ b/abiquo/src/test/java/org/jclouds/abiquo/domain/network/PrivateNetworkLiveApiTest.java
@@ -16,6 +16,7 @@
  */
 package org.jclouds.abiquo.domain.network;
 
+import static com.google.common.collect.Iterables.find;
 import static org.jclouds.abiquo.reference.AbiquoTestConstants.PREFIX;
 import static org.jclouds.abiquo.util.Assert.assertHasError;
 import static org.testng.Assert.assertEquals;
@@ -30,7 +31,7 @@ import org.jclouds.abiquo.domain.cloud.VirtualDatacenter;
 import org.jclouds.abiquo.domain.exception.AbiquoException;
 import org.jclouds.abiquo.domain.network.options.IpOptions;
 import org.jclouds.abiquo.internal.BaseAbiquoApiLiveApiTest;
-import org.jclouds.abiquo.predicates.network.IpPredicates;
+import org.jclouds.abiquo.predicates.IpPredicates;
 import org.testng.annotations.AfterClass;
 import org.testng.annotations.BeforeClass;
 import org.testng.annotations.Test;
@@ -131,7 +132,7 @@ public class PrivateNetworkLiveApiTest extends BaseAbiquoApiLiveApiTest {
    }
 
    public void testGetNetworkFromIp() {
-      PrivateIp ip = privateNetwork.findIp(IpPredicates.<PrivateIp> notUsed());
+      PrivateIp ip = find(privateNetwork.listIps(), IpPredicates.<PrivateIp> notUsed());
       PrivateNetwork network = ip.getNetwork();
 
       assertEquals(network.getId(), privateNetwork.getId());

http://git-wip-us.apache.org/repos/asf/incubator-jclouds-labs/blob/c5e108a8/abiquo/src/test/java/org/jclouds/abiquo/domain/network/PublicNetworkLiveApiTest.java
----------------------------------------------------------------------
diff --git a/abiquo/src/test/java/org/jclouds/abiquo/domain/network/PublicNetworkLiveApiTest.java b/abiquo/src/test/java/org/jclouds/abiquo/domain/network/PublicNetworkLiveApiTest.java
index f221e14..203aba6 100644
--- a/abiquo/src/test/java/org/jclouds/abiquo/domain/network/PublicNetworkLiveApiTest.java
+++ b/abiquo/src/test/java/org/jclouds/abiquo/domain/network/PublicNetworkLiveApiTest.java
@@ -16,6 +16,7 @@
  */
 package org.jclouds.abiquo.domain.network;
 
+import static com.google.common.collect.Iterables.find;
 import static org.jclouds.abiquo.reference.AbiquoTestConstants.PREFIX;
 import static org.jclouds.abiquo.util.Assert.assertHasError;
 import static org.testng.Assert.assertEquals;
@@ -29,7 +30,7 @@ import javax.ws.rs.core.Response.Status;
 import org.jclouds.abiquo.domain.exception.AbiquoException;
 import org.jclouds.abiquo.domain.network.options.IpOptions;
 import org.jclouds.abiquo.internal.BaseAbiquoApiLiveApiTest;
-import org.jclouds.abiquo.predicates.network.IpPredicates;
+import org.jclouds.abiquo.predicates.IpPredicates;
 import org.testng.annotations.AfterClass;
 import org.testng.annotations.BeforeClass;
 import org.testng.annotations.Test;
@@ -135,7 +136,7 @@ public class PublicNetworkLiveApiTest extends BaseAbiquoApiLiveApiTest {
    }
 
    public void testGetNetworkFromIp() {
-      PublicIp ip = publicNetwork.findIp(IpPredicates.<PublicIp> notUsed());
+      PublicIp ip = find(publicNetwork.listIps(), IpPredicates.<PublicIp> notUsed());
       PublicNetwork network = ip.getNetwork();
 
       assertEquals(network.getId(), publicNetwork.getId());

http://git-wip-us.apache.org/repos/asf/incubator-jclouds-labs/blob/c5e108a8/abiquo/src/test/java/org/jclouds/abiquo/domain/network/UnmanagedNetworkLiveApiTest.java
----------------------------------------------------------------------
diff --git a/abiquo/src/test/java/org/jclouds/abiquo/domain/network/UnmanagedNetworkLiveApiTest.java b/abiquo/src/test/java/org/jclouds/abiquo/domain/network/UnmanagedNetworkLiveApiTest.java
index 239caca..96981b3 100644
--- a/abiquo/src/test/java/org/jclouds/abiquo/domain/network/UnmanagedNetworkLiveApiTest.java
+++ b/abiquo/src/test/java/org/jclouds/abiquo/domain/network/UnmanagedNetworkLiveApiTest.java
@@ -16,6 +16,7 @@
  */
 package org.jclouds.abiquo.domain.network;
 
+import static com.google.common.collect.Iterables.find;
 import static org.jclouds.abiquo.reference.AbiquoTestConstants.PREFIX;
 import static org.jclouds.abiquo.util.Assert.assertHasError;
 import static org.testng.Assert.assertEquals;
@@ -30,13 +31,13 @@ import javax.ws.rs.core.Response.Status;
 import org.jclouds.abiquo.domain.exception.AbiquoException;
 import org.jclouds.abiquo.domain.network.options.IpOptions;
 import org.jclouds.abiquo.internal.BaseAbiquoApiLiveApiTest;
-import org.jclouds.abiquo.predicates.network.IpPredicates;
-import org.jclouds.abiquo.predicates.network.NetworkPredicates;
+import org.jclouds.abiquo.predicates.IpPredicates;
 import org.testng.annotations.AfterClass;
 import org.testng.annotations.BeforeClass;
 import org.testng.annotations.Test;
 
 import com.abiquo.server.core.infrastructure.network.UnmanagedIpsDto;
+import com.google.common.base.Predicate;
 
 /**
  * Live integration tests for the {@link UnmanagedNetwork} domain class.
@@ -93,8 +94,13 @@ public class UnmanagedNetworkLiveApiTest extends BaseAbiquoApiLiveApiTest {
       assertEquals(unmanagedNetwork.getSecondaryDNS(), "8.8.8.8");
 
       // Refresh the unmanaged network
-      UnmanagedNetwork en = env.enterprise.findUnmanagedNetwork(env.datacenter,
-            NetworkPredicates.<UnmanagedIp> name(unmanagedNetwork.getName()));
+      UnmanagedNetwork en = find(env.enterprise.listUnmanagedNetworks(env.datacenter),
+            new Predicate<UnmanagedNetwork>() {
+               @Override
+               public boolean apply(UnmanagedNetwork input) {
+                  return input.getName().equals(unmanagedNetwork.getName());
+               }
+            });
 
       assertEquals(en.getId(), unmanagedNetwork.getId());
       assertEquals(en.getName(), "Unmanaged network Updated");
@@ -143,7 +149,7 @@ public class UnmanagedNetworkLiveApiTest extends BaseAbiquoApiLiveApiTest {
    }
 
    public void testGetNetworkFromIp() {
-      UnmanagedIp ip = unmanagedNetwork.findIp(IpPredicates.<UnmanagedIp> notUsed());
+      UnmanagedIp ip = find(unmanagedNetwork.listIps(), IpPredicates.<UnmanagedIp> notUsed(), null);
       // Unmanaged networks do not have IPs until attached to VMs
       assertNull(ip);
    }

http://git-wip-us.apache.org/repos/asf/incubator-jclouds-labs/blob/c5e108a8/abiquo/src/test/java/org/jclouds/abiquo/environment/CloudTestEnvironment.java
----------------------------------------------------------------------
diff --git a/abiquo/src/test/java/org/jclouds/abiquo/environment/CloudTestEnvironment.java b/abiquo/src/test/java/org/jclouds/abiquo/environment/CloudTestEnvironment.java
index 86fdd48..4a3579c 100644
--- a/abiquo/src/test/java/org/jclouds/abiquo/environment/CloudTestEnvironment.java
+++ b/abiquo/src/test/java/org/jclouds/abiquo/environment/CloudTestEnvironment.java
@@ -17,6 +17,7 @@
 package org.jclouds.abiquo.environment;
 
 import static com.google.common.base.Preconditions.checkNotNull;
+import static com.google.common.collect.Iterables.find;
 import static org.jclouds.abiquo.reference.AbiquoTestConstants.PREFIX;
 import static org.testng.Assert.assertFalse;
 import static org.testng.Assert.assertNotNull;
@@ -33,14 +34,12 @@ import org.jclouds.abiquo.domain.cloud.VirtualDatacenter;
 import org.jclouds.abiquo.domain.cloud.VirtualMachine;
 import org.jclouds.abiquo.domain.cloud.VirtualMachineTemplate;
 import org.jclouds.abiquo.domain.enterprise.Enterprise;
-import org.jclouds.abiquo.domain.network.PrivateIp;
 import org.jclouds.abiquo.domain.network.PrivateNetwork;
 import org.jclouds.abiquo.features.CloudApi;
 import org.jclouds.abiquo.features.services.EventService;
-import org.jclouds.abiquo.predicates.enterprise.EnterprisePredicates;
-import org.jclouds.abiquo.predicates.network.NetworkPredicates;
 import org.testng.collections.Lists;
 
+import com.google.common.base.Predicate;
 import com.google.common.collect.Ordering;
 import com.google.common.primitives.Longs;
 
@@ -127,7 +126,12 @@ public class CloudTestEnvironment extends InfrastructureTestEnvironment {
    }
 
    protected void findDefaultEnterprise() {
-      defaultEnterprise = context.getAdministrationService().findEnterprise(EnterprisePredicates.name("Abiquo"));
+      defaultEnterprise = find(context.getAdministrationService().listEnterprises(), new Predicate<Enterprise>() {
+         @Override
+         public boolean apply(Enterprise input) {
+            return input.getName().equals("Abiquo");
+         }
+      });
    }
 
    protected void createVirtualDatacenter() {
@@ -142,8 +146,12 @@ public class CloudTestEnvironment extends InfrastructureTestEnvironment {
       virtualDatacenter.save();
       assertNotNull(virtualDatacenter.getId());
 
-      privateNetwork = virtualDatacenter
-            .findPrivateNetwork(NetworkPredicates.<PrivateIp> name(privateNetwork.getName()));
+      privateNetwork = find(virtualDatacenter.listPrivateNetworks(), new Predicate<PrivateNetwork>() {
+         @Override
+         public boolean apply(PrivateNetwork input) {
+            return input.getName().equals(privateNetwork.getName());
+         }
+      });
    }
 
    protected void createVirtualAppliance() {

http://git-wip-us.apache.org/repos/asf/incubator-jclouds-labs/blob/c5e108a8/abiquo/src/test/java/org/jclouds/abiquo/environment/InfrastructureTestEnvironment.java
----------------------------------------------------------------------
diff --git a/abiquo/src/test/java/org/jclouds/abiquo/environment/InfrastructureTestEnvironment.java b/abiquo/src/test/java/org/jclouds/abiquo/environment/InfrastructureTestEnvironment.java
index b8101fc..0c2add5 100644
--- a/abiquo/src/test/java/org/jclouds/abiquo/environment/InfrastructureTestEnvironment.java
+++ b/abiquo/src/test/java/org/jclouds/abiquo/environment/InfrastructureTestEnvironment.java
@@ -38,7 +38,6 @@ import org.jclouds.abiquo.domain.enterprise.User;
 import org.jclouds.abiquo.domain.infrastructure.Datacenter;
 import org.jclouds.abiquo.domain.infrastructure.Datastore;
 import org.jclouds.abiquo.domain.infrastructure.Machine;
-import org.jclouds.abiquo.domain.infrastructure.ManagedRack;
 import org.jclouds.abiquo.domain.infrastructure.NetworkInterface;
 import org.jclouds.abiquo.domain.infrastructure.Rack;
 import org.jclouds.abiquo.domain.infrastructure.RemoteService;
@@ -55,17 +54,10 @@ import org.jclouds.abiquo.features.ConfigApi;
 import org.jclouds.abiquo.features.EnterpriseApi;
 import org.jclouds.abiquo.features.InfrastructureApi;
 import org.jclouds.abiquo.features.services.AdministrationService;
-import org.jclouds.abiquo.predicates.enterprise.RolePredicates;
-import org.jclouds.abiquo.predicates.enterprise.UserPredicates;
-import org.jclouds.abiquo.predicates.infrastructure.RemoteServicePredicates;
-import org.jclouds.abiquo.predicates.infrastructure.StorageDeviceMetadataPredicates;
-import org.jclouds.abiquo.predicates.infrastructure.StoragePoolPredicates;
-import org.jclouds.abiquo.predicates.infrastructure.TierPredicates;
 import org.jclouds.abiquo.util.Config;
 
 import com.abiquo.model.enumerator.HypervisorType;
-import com.abiquo.model.enumerator.RemoteServiceType;
-import com.google.common.collect.Iterables;
+import com.google.common.base.Predicate;
 import com.google.common.io.LineProcessor;
 import com.google.common.io.Resources;
 
@@ -124,8 +116,6 @@ public class InfrastructureTestEnvironment implements TestEnvironment {
 
    public Role anotherRole;
 
-   public ManagedRack ucsRack;
-
    public InfrastructureTestEnvironment(final AbiquoContext context) {
       super();
       this.context = context;
@@ -173,7 +163,6 @@ public class InfrastructureTestEnvironment implements TestEnvironment {
       deleteStoragePool();
       deleteStorageDevice();
       deleteMachine();
-      deleteUcsRack();
       deleteRack();
       deleteDatacenter();
       deleteEnterprise();
@@ -209,14 +198,26 @@ public class InfrastructureTestEnvironment implements TestEnvironment {
       HypervisorType type = HypervisorType.valueOf(Config.get("abiquo.hypervisor.type"));
       String user = Config.get("abiquo.hypervisor.user");
       String pass = Config.get("abiquo.hypervisor.pass");
+      final String vswitchName = Config.get("abiquo.hypervisor.vswitch");
+      final String datastoreName = Config.get("abiquo.hypervisor.datastore");
 
       machine = datacenter.discoverSingleMachine(ip, type, user, pass);
 
       NetworkServiceType nst = datacenter.defaultNetworkServiceType();
-      NetworkInterface vswitch = machine.findAvailableVirtualSwitch(Config.get("abiquo.hypervisor.vswitch"));
+      NetworkInterface vswitch = find(machine.getNetworkInterfaces(), new Predicate<NetworkInterface>() {
+         @Override
+         public boolean apply(NetworkInterface input) {
+            return input.getName().equals(vswitchName);
+         }
+      });
       vswitch.setNetworkServiceType(nst);
 
-      Datastore datastore = machine.findDatastore(Config.get("abiquo.hypervisor.datastore"));
+      Datastore datastore = find(machine.getDatastores(), new Predicate<Datastore>() {
+         @Override
+         public boolean apply(Datastore input) {
+            return input.getName().equals(datastoreName);
+         }
+      });
       datastore.setEnabled(true);
 
       machine.setRack(rack);
@@ -230,27 +231,19 @@ public class InfrastructureTestEnvironment implements TestEnvironment {
       assertNotNull(rack.getId());
    }
 
-   public void createUcsRack() {
-      String ip = Config.get("abiquo.ucs.address");
-      Integer port = Integer.parseInt(Config.get("abiquo.ucs.port"));
-      String user = Config.get("abiquo.ucs.user");
-      String pass = Config.get("abiquo.ucs.pass");
-
-      ucsRack = ManagedRack.builder(context.getApiContext(), datacenter).ipAddress(ip).port(port).user(user)
-            .name("ucs rack").password(pass).build();
-
-      ucsRack.save();
-      assertNotNull(ucsRack.getId());
-   }
-
    protected void createStorageDevice() {
       String ip = Config.get("abiquo.storage.address");
-      String type = Config.get("abiquo.storage.type");
+      final String type = Config.get("abiquo.storage.type");
       String user = Config.get("abiquo.storage.user");
       String pass = Config.get("abiquo.storage.pass");
 
       List<StorageDeviceMetadata> devices = datacenter.listSupportedStorageDevices();
-      StorageDeviceMetadata metadata = Iterables.find(devices, StorageDeviceMetadataPredicates.type(type));
+      StorageDeviceMetadata metadata = find(devices, new Predicate<StorageDeviceMetadata>() {
+         @Override
+         public boolean apply(StorageDeviceMetadata input) {
+            return input.getType().equals(type);
+         }
+      });
 
       storageDevice = StorageDevice.builder(context.getApiContext(), datacenter) //
             .name(PREFIX + "Storage Device")//
@@ -266,10 +259,20 @@ public class InfrastructureTestEnvironment implements TestEnvironment {
    }
 
    protected void createStoragePool() {
-      String pool = Config.get("abiquo.storage.pool");
+      final String pool = Config.get("abiquo.storage.pool");
 
-      storagePool = storageDevice.findRemoteStoragePool(StoragePoolPredicates.name(pool));
-      tier = datacenter.findTier(TierPredicates.name("Default Tier 1"));
+      storagePool = find(storageDevice.listRemoteStoragePools(), new Predicate<StoragePool>() {
+         @Override
+         public boolean apply(StoragePool input) {
+            return input.getName().equals(pool);
+         }
+      });
+      tier = find(datacenter.listTiers(), new Predicate<Tier>() {
+         @Override
+         public boolean apply(Tier input) {
+            return input.getName().equals("Default Tier 1");
+         }
+      });
 
       storagePool.setTier(tier);
       storagePool.save();
@@ -278,8 +281,9 @@ public class InfrastructureTestEnvironment implements TestEnvironment {
    }
 
    protected void createUsers() {
-      Role userRole = administrationService.findRole(RolePredicates.name("USER"));
-      Role enterpriseAdminRole = administrationService.findRole(RolePredicates.name("ENTERPRISE_ADMIN"));
+      Iterable<Role> roles = administrationService.listRoles();
+      Role userRole = find(roles, role("USER"));
+      Role enterpriseAdminRole = find(roles, role("ENTERPRISE_ADMIN"));
 
       user = User.builder(context.getApiContext(), enterprise, userRole).name(randomName(), randomName())
             .nick("jclouds").authType("ABIQUO").description(randomName()).email(randomName() + "@abiquo.com")
@@ -370,14 +374,14 @@ public class InfrastructureTestEnvironment implements TestEnvironment {
          String nick = user.getNick();
          user.delete();
          // Nick is unique in an enterprise
-         assertNull(enterprise.findUser(UserPredicates.nick(nick)));
+         assertNull(find(enterprise.listUsers(), nick(nick), null));
       }
 
       if (enterpriseAdmin != null) {
          String nick = enterpriseAdmin.getNick();
          enterpriseAdmin.delete();
          // Nick is unique in an enterprise
-         assertNull(enterprise.findUser(UserPredicates.nick(nick)));
+         assertNull(find(enterprise.listUsers(), nick(nick), null));
       }
    }
 
@@ -422,14 +426,6 @@ public class InfrastructureTestEnvironment implements TestEnvironment {
       }
    }
 
-   protected void deleteUcsRack() {
-      if (ucsRack != null && datacenter != null) {
-         Integer idRack = ucsRack.getId();
-         ucsRack.delete();
-         assertNull(infrastructureApi.getManagedRack(datacenter.unwrap(), idRack));
-      }
-   }
-
    protected void deleteDatacenter() {
       if (datacenter != null) {
          // Remove limits first
@@ -479,7 +475,21 @@ public class InfrastructureTestEnvironment implements TestEnvironment {
       });
    }
 
-   public RemoteService findRemoteService(final RemoteServiceType type) {
-      return find(remoteServices, RemoteServicePredicates.type(type));
+   private static Predicate<Role> role(final String role) {
+      return new Predicate<Role>() {
+         @Override
+         public boolean apply(Role input) {
+            return input.getName().equals(role);
+         }
+      };
+   }
+
+   private static Predicate<User> nick(final String nick) {
+      return new Predicate<User>() {
+         @Override
+         public boolean apply(User input) {
+            return input.getNick().equals(nick);
+         }
+      };
    }
 }

http://git-wip-us.apache.org/repos/asf/incubator-jclouds-labs/blob/c5e108a8/abiquo/src/test/java/org/jclouds/abiquo/events/handlers/BlockingEventHandlerTest.java
----------------------------------------------------------------------
diff --git a/abiquo/src/test/java/org/jclouds/abiquo/events/handlers/BlockingEventHandlerTest.java b/abiquo/src/test/java/org/jclouds/abiquo/events/handlers/BlockingEventHandlerTest.java
deleted file mode 100644
index 0c1c89b..0000000
--- a/abiquo/src/test/java/org/jclouds/abiquo/events/handlers/BlockingEventHandlerTest.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.abiquo.events.handlers;
-
-import static org.testng.Assert.assertFalse;
-import static org.testng.Assert.assertNull;
-import static org.testng.Assert.assertTrue;
-
-import java.util.concurrent.Executors;
-import java.util.concurrent.TimeUnit;
-
-import org.jclouds.abiquo.events.monitor.MonitorEvent;
-import org.jclouds.abiquo.events.monitor.MonitorEvent.Type;
-import org.testng.annotations.Test;
-
-/**
- * Unit tests for the {@link BlockingEventHandler} handler.
- * 
- * @author Ignasi Barrera
- */
-@Test(groups = "unit", testName = "BlockingEventHandlerTest")
-public class BlockingEventHandlerTest {
-   @Test(expectedExceptions = IllegalArgumentException.class)
-   public void testConstructorWithoutObjects() {
-      new BlockingEventHandler<Object>();
-   }
-
-   @Test(expectedExceptions = NullPointerException.class)
-   public void testConstructorWithNullObjects() {
-      new BlockingEventHandler<Object>((Object[]) null);
-   }
-
-   @Test(expectedExceptions = IllegalArgumentException.class)
-   public void testConstructorWithtEmptyObjects() {
-      new BlockingEventHandler<Object>(new Object[] {});
-   }
-
-   public void testHandles() {
-      Object object = new Object();
-      BlockingEventHandler<Object> handler = new BlockingEventHandler<Object>(object);
-
-      assertTrue(handler.handles(new MonitorEvent<Object>(Type.COMPLETED, object)));
-      assertFalse(handler.handles(new MonitorEvent<Object>(Type.COMPLETED, new Object())));
-   }
-
-   public void testReleaseDoesNothingIfNotLocked() {
-      Object object = new Object();
-      BlockingEventHandler<Object> handler = new BlockingEventHandler<Object>(object);
-      handler.release(object);
-   }
-
-   public void testRelease() {
-      final Object object = new Object();
-      final BlockingEventHandler<Object> handler = new BlockingEventHandler<Object>(object);
-
-      // Unlock the handler (in a separate thread) after a certain delay
-      Executors.newSingleThreadScheduledExecutor().schedule(new Runnable() {
-         @Override
-         public void run() {
-            handler.release(object);
-            assertTrue(handler.lockedObjects.isEmpty());
-         }
-
-      }, 500L, TimeUnit.MILLISECONDS);
-
-      handler.lock();
-   }
-
-   public void testHandle() {
-      final Object object = new Object();
-      final BlockingEventHandler<Object> handler = new BlockingEventHandler<Object>(object);
-
-      // Unlock the handler (in a separate thread) after a certain delay
-      Executors.newSingleThreadScheduledExecutor().schedule(new Runnable() {
-         @Override
-         public void run() {
-            handler.handle(new MonitorEvent<Object>(Type.COMPLETED, object));
-            assertTrue(handler.lockedObjects.isEmpty());
-         }
-
-      }, 500L, TimeUnit.MILLISECONDS);
-
-      handler.lock();
-   }
-
-   public void testLockDoesNothingIfNoObjects() {
-      Object object = new Object();
-      BlockingEventHandler<Object> handler = new BlockingEventHandler<Object>(object);
-      handler.lockedObjects.clear();
-
-      handler.lock(); // Lock should do nothing
-
-      assertNull(handler.completeSignal);
-   }
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds-labs/blob/c5e108a8/abiquo/src/test/java/org/jclouds/abiquo/features/InfrastructureApiTest.java
----------------------------------------------------------------------
diff --git a/abiquo/src/test/java/org/jclouds/abiquo/features/InfrastructureApiTest.java b/abiquo/src/test/java/org/jclouds/abiquo/features/InfrastructureApiTest.java
index 04bb6ac..3064935 100644
--- a/abiquo/src/test/java/org/jclouds/abiquo/features/InfrastructureApiTest.java
+++ b/abiquo/src/test/java/org/jclouds/abiquo/features/InfrastructureApiTest.java
@@ -35,7 +35,6 @@ import org.jclouds.abiquo.domain.infrastructure.options.MachineOptions;
 import org.jclouds.abiquo.domain.infrastructure.options.StoragePoolOptions;
 import org.jclouds.abiquo.domain.network.options.IpOptions;
 import org.jclouds.abiquo.domain.network.options.NetworkOptions;
-import org.jclouds.abiquo.domain.options.search.FilterOptions;
 import org.jclouds.fallbacks.MapHttp4xxCodesToExceptions;
 import org.jclouds.http.functions.ParseXMLWithJAXB;
 import org.jclouds.http.functions.ReleasePayloadAndReturn;
@@ -53,24 +52,16 @@ import com.abiquo.server.core.cloud.VirtualMachineWithNodeExtendedDto;
 import com.abiquo.server.core.cloud.VirtualMachinesWithNodeExtendedDto;
 import com.abiquo.server.core.enterprise.DatacentersLimitsDto;
 import com.abiquo.server.core.enterprise.EnterpriseDto;
-import com.abiquo.server.core.infrastructure.BladeLocatorLedDto;
 import com.abiquo.server.core.infrastructure.DatacenterDto;
 import com.abiquo.server.core.infrastructure.DatacentersDto;
-import com.abiquo.server.core.infrastructure.FsmsDto;
-import com.abiquo.server.core.infrastructure.LogicServerDto;
-import com.abiquo.server.core.infrastructure.LogicServersDto;
 import com.abiquo.server.core.infrastructure.MachineDto;
 import com.abiquo.server.core.infrastructure.MachineIpmiStateDto;
 import com.abiquo.server.core.infrastructure.MachineStateDto;
 import com.abiquo.server.core.infrastructure.MachinesDto;
-import com.abiquo.server.core.infrastructure.OrganizationDto;
-import com.abiquo.server.core.infrastructure.OrganizationsDto;
 import com.abiquo.server.core.infrastructure.RackDto;
 import com.abiquo.server.core.infrastructure.RacksDto;
 import com.abiquo.server.core.infrastructure.RemoteServiceDto;
 import com.abiquo.server.core.infrastructure.RemoteServicesDto;
-import com.abiquo.server.core.infrastructure.UcsRackDto;
-import com.abiquo.server.core.infrastructure.UcsRacksDto;
 import com.abiquo.server.core.infrastructure.network.ExternalIpDto;
 import com.abiquo.server.core.infrastructure.network.ExternalIpsDto;
 import com.abiquo.server.core.infrastructure.network.PublicIpDto;
@@ -317,325 +308,6 @@ public class InfrastructureApiTest extends BaseAbiquoApiTest<InfrastructureApi>
       checkFilters(request);
    }
 
-   /*********************** Managed Rack ***********************/
-
-   public void testListManagedRacks() throws SecurityException, NoSuchMethodException, IOException {
-      Invokable<?, ?> method = method(InfrastructureApi.class, "listManagedRacks", DatacenterDto.class);
-      GeneratedHttpRequest request = processor.apply(Invocation.create(method,
-            ImmutableList.<Object> of(InfrastructureResources.datacenterPut())));
-
-      assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters/1/racks HTTP/1.1");
-      assertNonPayloadHeadersEqual(request, "Accept: " + UcsRacksDto.BASE_MEDIA_TYPE + "\n");
-      assertPayloadEquals(request, null, null, false);
-
-      assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class);
-      assertSaxResponseParserClassEquals(method, null);
-      assertFallbackClassEquals(method, null);
-
-      checkFilters(request);
-   }
-
-   public void testCreateManagedRack() throws SecurityException, NoSuchMethodException, IOException {
-      Invokable<?, ?> method = method(InfrastructureApi.class, "createManagedRack", DatacenterDto.class,
-            UcsRackDto.class);
-      GeneratedHttpRequest request = processor.apply(Invocation.create(
-            method,
-            ImmutableList.<Object> of(InfrastructureResources.datacenterPut(),
-                  InfrastructureResources.managedRackPost())));
-
-      assertRequestLineEquals(request, "POST http://localhost/api/admin/datacenters/1/racks HTTP/1.1");
-      assertNonPayloadHeadersEqual(request, "Accept: " + UcsRackDto.BASE_MEDIA_TYPE + "\n");
-      assertPayloadEquals(request, withHeader(InfrastructureResources.managedRackPostPayload()), UcsRackDto.class,
-            UcsRackDto.BASE_MEDIA_TYPE, false);
-
-      assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class);
-      assertSaxResponseParserClassEquals(method, null);
-      assertFallbackClassEquals(method, null);
-
-      checkFilters(request);
-   }
-
-   public void testGetManagedRack() throws SecurityException, NoSuchMethodException, IOException {
-      Invokable<?, ?> method = method(InfrastructureApi.class, "getManagedRack", DatacenterDto.class, Integer.class);
-      GeneratedHttpRequest request = processor.apply(Invocation.create(method,
-            ImmutableList.<Object> of(InfrastructureResources.datacenterPut(), 1)));
-
-      assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters/1/racks/1 HTTP/1.1");
-      assertNonPayloadHeadersEqual(request, "Accept: " + UcsRackDto.BASE_MEDIA_TYPE + "\n");
-      assertPayloadEquals(request, null, null, false);
-
-      assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class);
-      assertSaxResponseParserClassEquals(method, null);
-      assertFallbackClassEquals(method, NullOnNotFoundOr404.class);
-
-      checkFilters(request);
-   }
-
-   public void testUpdateManagedRack() throws SecurityException, NoSuchMethodException, IOException {
-      Invokable<?, ?> method = method(InfrastructureApi.class, "updateManagedRack", UcsRackDto.class);
-
-      GeneratedHttpRequest request = processor.apply(Invocation.create(method,
-            ImmutableList.<Object> of(InfrastructureResources.managedRackPut())));
-
-      assertRequestLineEquals(request, "PUT http://localhost/api/admin/datacenters/1/racks/1 HTTP/1.1");
-      assertNonPayloadHeadersEqual(request, "Accept: " + UcsRackDto.BASE_MEDIA_TYPE + "\n");
-      assertPayloadEquals(request, withHeader(InfrastructureResources.managedRackPutPayload()), UcsRackDto.class,
-            UcsRackDto.BASE_MEDIA_TYPE, false);
-
-      assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class);
-      assertSaxResponseParserClassEquals(method, null);
-      assertFallbackClassEquals(method, null);
-
-      checkFilters(request);
-   }
-
-   public void testListServiceProfiles() throws SecurityException, NoSuchMethodException, IOException {
-      Invokable<?, ?> method = method(InfrastructureApi.class, "listServiceProfiles", UcsRackDto.class);
-      GeneratedHttpRequest request = processor.apply(Invocation.create(method,
-            ImmutableList.<Object> of(InfrastructureResources.managedRackPut())));
-
-      assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters/1/racks/1/logicservers HTTP/1.1");
-      assertNonPayloadHeadersEqual(request, "Accept: " + LogicServersDto.BASE_MEDIA_TYPE + "\n");
-      assertPayloadEquals(request, null, null, false);
-
-      assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class);
-      assertSaxResponseParserClassEquals(method, null);
-      assertFallbackClassEquals(method, null);
-
-      checkFilters(request);
-   }
-
-   public void testListServiceProfilesWithOptions() throws SecurityException, NoSuchMethodException, IOException {
-      FilterOptions options = FilterOptions.builder().startWith(1).limit(2).build();
-
-      Invokable<?, ?> method = method(InfrastructureApi.class, "listServiceProfiles", UcsRackDto.class,
-            FilterOptions.class);
-      GeneratedHttpRequest request = processor.apply(Invocation.create(method,
-            ImmutableList.<Object> of(InfrastructureResources.managedRackPut(), options)));
-
-      assertRequestLineEquals(request,
-            "GET http://localhost/api/admin/datacenters/1/racks/1/logicservers?startwith=1&limit=2 HTTP/1.1");
-      assertNonPayloadHeadersEqual(request, "Accept: " + LogicServersDto.BASE_MEDIA_TYPE + "\n");
-      assertPayloadEquals(request, null, null, false);
-
-      assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class);
-      assertSaxResponseParserClassEquals(method, null);
-      assertFallbackClassEquals(method, null);
-
-      checkFilters(request);
-   }
-
-   public void testListOrganizations() throws SecurityException, NoSuchMethodException, IOException {
-      Invokable<?, ?> method = method(InfrastructureApi.class, "listOrganizations", UcsRackDto.class);
-      GeneratedHttpRequest request = processor.apply(Invocation.create(method,
-            ImmutableList.<Object> of(InfrastructureResources.managedRackPut())));
-
-      assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters/1/racks/1/organizations HTTP/1.1");
-      assertNonPayloadHeadersEqual(request, "Accept: " + OrganizationsDto.BASE_MEDIA_TYPE + "\n");
-      assertPayloadEquals(request, null, null, false);
-
-      assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class);
-      assertSaxResponseParserClassEquals(method, null);
-      assertFallbackClassEquals(method, null);
-
-      checkFilters(request);
-   }
-
-   public void testListOrganizationsWithOptions() throws SecurityException, NoSuchMethodException, IOException {
-      FilterOptions options = FilterOptions.builder().has("org").build();
-
-      Invokable<?, ?> method = method(InfrastructureApi.class, "listOrganizations", UcsRackDto.class,
-            FilterOptions.class);
-      GeneratedHttpRequest request = processor.apply(Invocation.create(method,
-            ImmutableList.<Object> of(InfrastructureResources.managedRackPut(), options)));
-
-      assertRequestLineEquals(request,
-            "GET http://localhost/api/admin/datacenters/1/racks/1/organizations?has=org HTTP/1.1");
-      assertNonPayloadHeadersEqual(request, "Accept: " + OrganizationsDto.BASE_MEDIA_TYPE + "\n");
-      assertPayloadEquals(request, null, null, false);
-
-      assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class);
-      assertSaxResponseParserClassEquals(method, null);
-      assertFallbackClassEquals(method, null);
-
-      checkFilters(request);
-   }
-
-   public void testListServiceProfileTemplates() throws SecurityException, NoSuchMethodException, IOException {
-      Invokable<?, ?> method = method(InfrastructureApi.class, "listServiceProfileTemplates", UcsRackDto.class);
-      GeneratedHttpRequest request = processor.apply(Invocation.create(method,
-            ImmutableList.<Object> of(InfrastructureResources.managedRackPut())));
-
-      assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters/1/racks/1/lstemplates HTTP/1.1");
-      assertNonPayloadHeadersEqual(request, "Accept: " + LogicServersDto.BASE_MEDIA_TYPE + "\n");
-      assertPayloadEquals(request, null, null, false);
-
-      assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class);
-      assertSaxResponseParserClassEquals(method, null);
-      assertFallbackClassEquals(method, null);
-
-      checkFilters(request);
-   }
-
-   public void testListServiceProfileTemplatesWithOptions() throws SecurityException, NoSuchMethodException,
-         IOException {
-      FilterOptions options = FilterOptions.builder().ascendant(true).build();
-
-      Invokable<?, ?> method = method(InfrastructureApi.class, "listServiceProfileTemplates", UcsRackDto.class,
-            FilterOptions.class);
-      GeneratedHttpRequest request = processor.apply(Invocation.create(method,
-            ImmutableList.<Object> of(InfrastructureResources.managedRackPut(), options)));
-
-      assertRequestLineEquals(request,
-            "GET http://localhost/api/admin/datacenters/1/racks/1/lstemplates?asc=true HTTP/1.1");
-      assertNonPayloadHeadersEqual(request, "Accept: " + LogicServersDto.BASE_MEDIA_TYPE + "\n");
-      assertPayloadEquals(request, null, null, false);
-
-      assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class);
-      assertSaxResponseParserClassEquals(method, null);
-      assertFallbackClassEquals(method, null);
-
-      checkFilters(request);
-   }
-
-   public void testAssociateLogicServer() throws SecurityException, NoSuchMethodException, IOException {
-      Invokable<?, ?> method = method(InfrastructureApi.class, "associateLogicServer", UcsRackDto.class,
-            LogicServerDto.class, OrganizationDto.class, String.class);
-      GeneratedHttpRequest request = processor.apply(Invocation.create(
-            method,
-            ImmutableList.<Object> of(InfrastructureResources.managedRackPut(),
-                  InfrastructureResources.logicServerPut(), InfrastructureResources.organizationPut(), "blade")));
-
-      assertRequestLineEquals(
-            request,
-            "POST http://localhost/api/admin/datacenters/1/racks/1/logicservers/associate?bladeDn=blade&lsName=server&org=org-root/org-Finance HTTP/1.1");
-      assertNonPayloadHeadersEqual(request, "");
-      assertPayloadEquals(request, null, null, false);
-
-      assertResponseParserClassEquals(method, request, ReleasePayloadAndReturn.class);
-      assertSaxResponseParserClassEquals(method, null);
-      assertFallbackClassEquals(method, null);
-
-      checkFilters(request);
-   }
-
-   public void testAssociateTemplate() throws SecurityException, NoSuchMethodException, IOException {
-      Invokable<?, ?> method = method(InfrastructureApi.class, "associateTemplate", UcsRackDto.class,
-            LogicServerDto.class, OrganizationDto.class, String.class, String.class);
-      GeneratedHttpRequest request = processor.apply(Invocation.create(method, ImmutableList.<Object> of(
-            InfrastructureResources.managedRackPut(), InfrastructureResources.logicServerPut(),
-            InfrastructureResources.organizationPut(), "newname", "blade")));
-
-      assertRequestLineEquals(
-            request,
-            "POST http://localhost/api/admin/datacenters/1/racks/1/logicservers/associatetemplate?newName=newname&bladeDn=blade&lsName=server&org=org-root/org-Finance HTTP/1.1");
-      assertNonPayloadHeadersEqual(request, "");
-      assertPayloadEquals(request, null, null, false);
-
-      assertResponseParserClassEquals(method, request, ReleasePayloadAndReturn.class);
-      assertSaxResponseParserClassEquals(method, null);
-      assertFallbackClassEquals(method, null);
-
-      checkFilters(request);
-   }
-
-   public void testCloneAndAssociateLogicServer() throws SecurityException, NoSuchMethodException, IOException {
-      Invokable<?, ?> method = method(InfrastructureApi.class, "cloneAndAssociateLogicServer", UcsRackDto.class,
-            LogicServerDto.class, OrganizationDto.class, String.class, String.class);
-      GeneratedHttpRequest request = processor.apply(Invocation.create(method, ImmutableList.<Object> of(
-            InfrastructureResources.managedRackPut(), InfrastructureResources.logicServerPut(),
-            InfrastructureResources.organizationPut(), "newname", "blade")));
-
-      assertRequestLineEquals(
-            request,
-            "POST http://localhost/api/admin/datacenters/1/racks/1/logicservers/assocclone?newName=newname&bladeDn=blade&lsName=server&org=org-root/org-Finance HTTP/1.1");
-      assertNonPayloadHeadersEqual(request, "");
-      assertPayloadEquals(request, null, null, false);
-
-      assertResponseParserClassEquals(method, request, ReleasePayloadAndReturn.class);
-      assertSaxResponseParserClassEquals(method, null);
-      assertFallbackClassEquals(method, null);
-
-      checkFilters(request);
-   }
-
-   public void testDissociateLogicServer() throws SecurityException, NoSuchMethodException, IOException {
-      Invokable<?, ?> method = method(InfrastructureApi.class, "dissociateLogicServer", UcsRackDto.class,
-            LogicServerDto.class);
-      GeneratedHttpRequest request = processor.apply(Invocation.create(
-            method,
-            ImmutableList.<Object> of(InfrastructureResources.managedRackPut(),
-                  InfrastructureResources.logicServerPut(), InfrastructureResources.organizationPut())));
-
-      assertRequestLineEquals(request,
-            "POST http://localhost/api/admin/datacenters/1/racks/1/logicservers/dissociate?lsName=server HTTP/1.1");
-      assertNonPayloadHeadersEqual(request, "");
-      assertPayloadEquals(request, null, null, false);
-
-      assertResponseParserClassEquals(method, request, ReleasePayloadAndReturn.class);
-      assertSaxResponseParserClassEquals(method, null);
-      assertFallbackClassEquals(method, null);
-
-      checkFilters(request);
-   }
-
-   public void testCloneLogicServer() throws SecurityException, NoSuchMethodException, IOException {
-      Invokable<?, ?> method = method(InfrastructureApi.class, "cloneLogicServer", UcsRackDto.class,
-            LogicServerDto.class, OrganizationDto.class, String.class);
-      GeneratedHttpRequest request = processor.apply(Invocation.create(
-            method,
-            ImmutableList.<Object> of(InfrastructureResources.managedRackPut(),
-                  InfrastructureResources.logicServerPut(), InfrastructureResources.organizationPut(), "name")));
-
-      assertRequestLineEquals(
-            request,
-            "POST http://localhost/api/admin/datacenters/1/racks/1/logicservers/clone?newName=name&lsName=server&org=org-root/org-Finance HTTP/1.1");
-      assertNonPayloadHeadersEqual(request, "");
-      assertPayloadEquals(request, null, null, false);
-
-      assertResponseParserClassEquals(method, request, ReleasePayloadAndReturn.class);
-      assertSaxResponseParserClassEquals(method, null);
-      assertFallbackClassEquals(method, null);
-
-      checkFilters(request);
-   }
-
-   public void testDeleteLogicServer() throws SecurityException, NoSuchMethodException, IOException {
-      Invokable<?, ?> method = method(InfrastructureApi.class, "deleteLogicServer", UcsRackDto.class,
-            LogicServerDto.class);
-      GeneratedHttpRequest request = processor.apply(Invocation.create(
-            method,
-            ImmutableList.<Object> of(InfrastructureResources.managedRackPut(),
-                  InfrastructureResources.logicServerPut())));
-
-      assertRequestLineEquals(request,
-            "POST http://localhost/api/admin/datacenters/1/racks/1/logicservers/delete?lsName=server HTTP/1.1");
-      assertNonPayloadHeadersEqual(request, "");
-      assertPayloadEquals(request, null, null, false);
-
-      assertResponseParserClassEquals(method, request, ReleasePayloadAndReturn.class);
-      assertSaxResponseParserClassEquals(method, null);
-      assertFallbackClassEquals(method, null);
-
-      checkFilters(request);
-   }
-
-   public void testListFsms() throws SecurityException, NoSuchMethodException, IOException {
-      Invokable<?, ?> method = method(InfrastructureApi.class, "listFsms", UcsRackDto.class, String.class);
-      GeneratedHttpRequest request = processor.apply(Invocation.create(method,
-            ImmutableList.<Object> of(InfrastructureResources.managedRackPut(), "dn")));
-
-      assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters/1/racks/1/fsm?dn=dn HTTP/1.1");
-      assertNonPayloadHeadersEqual(request, "Accept: " + FsmsDto.BASE_MEDIA_TYPE + "\n");
-      assertPayloadEquals(request, null, null, false);
-
-      assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class);
-      assertSaxResponseParserClassEquals(method, null);
-      assertFallbackClassEquals(method, null);
-
-      checkFilters(request);
-   }
-
    /*********************** Remote Service **********************/
 
    public void testListRemoteServices() throws SecurityException, NoSuchMethodException, IOException {
@@ -1130,109 +802,6 @@ public class InfrastructureApiTest extends BaseAbiquoApiTest<InfrastructureApi>
       checkFilters(request);
    }
 
-   /*********************** Blade ***********************/
-
-   public void testPowerOff() throws SecurityException, NoSuchMethodException, IOException {
-      Invokable<?, ?> method = method(InfrastructureApi.class, "powerOff", MachineDto.class);
-      GeneratedHttpRequest request = processor.apply(Invocation.create(method,
-            ImmutableList.<Object> of(InfrastructureResources.machinePut())));
-
-      assertRequestLineEquals(request,
-            "PUT http://localhost/api/admin/datacenters/1/racks/1/machines/1/action/poweroff HTTP/1.1");
-      assertNonPayloadHeadersEqual(request, "");
-      assertPayloadEquals(request, null, null, false);
-
-      assertResponseParserClassEquals(method, request, ReleasePayloadAndReturn.class);
-      assertSaxResponseParserClassEquals(method, null);
-      assertFallbackClassEquals(method, null);
-
-      checkFilters(request);
-   }
-
-   public void testPowerOn() throws SecurityException, NoSuchMethodException, IOException {
-      Invokable<?, ?> method = method(InfrastructureApi.class, "powerOn", MachineDto.class);
-      GeneratedHttpRequest request = processor.apply(Invocation.create(method,
-            ImmutableList.<Object> of(InfrastructureResources.machinePut())));
-
-      assertRequestLineEquals(request,
-            "PUT http://localhost/api/admin/datacenters/1/racks/1/machines/1/action/poweron HTTP/1.1");
-      assertNonPayloadHeadersEqual(request, "");
-      assertPayloadEquals(request, null, null, false);
-
-      assertResponseParserClassEquals(method, request, ReleasePayloadAndReturn.class);
-      assertSaxResponseParserClassEquals(method, null);
-      assertFallbackClassEquals(method, null);
-
-      checkFilters(request);
-   }
-
-   public void testGetLogicServer() throws SecurityException, NoSuchMethodException, IOException {
-      Invokable<?, ?> method = method(InfrastructureApi.class, "getLogicServer", MachineDto.class);
-      GeneratedHttpRequest request = processor.apply(Invocation.create(method,
-            ImmutableList.<Object> of(InfrastructureResources.machinePut())));
-
-      assertRequestLineEquals(request,
-            "GET http://localhost/api/admin/datacenters/1/racks/1/machines/1/logicserver HTTP/1.1");
-      assertNonPayloadHeadersEqual(request, "Accept: " + LogicServerDto.BASE_MEDIA_TYPE + "\n");
-      assertPayloadEquals(request, null, null, false);
-
-      assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class);
-      assertSaxResponseParserClassEquals(method, null);
-      assertFallbackClassEquals(method, null);
-
-      checkFilters(request);
-   }
-
-   public void testLedOn() throws SecurityException, NoSuchMethodException, IOException {
-      Invokable<?, ?> method = method(InfrastructureApi.class, "ledOn", MachineDto.class);
-      GeneratedHttpRequest request = processor.apply(Invocation.create(method,
-            ImmutableList.<Object> of(InfrastructureResources.machinePut())));
-
-      assertRequestLineEquals(request,
-            "POST http://localhost/api/admin/datacenters/1/racks/1/machines/1/action/ledon HTTP/1.1");
-      assertNonPayloadHeadersEqual(request, "");
-      assertPayloadEquals(request, null, null, false);
-
-      assertResponseParserClassEquals(method, request, ReleasePayloadAndReturn.class);
-      assertSaxResponseParserClassEquals(method, null);
-      assertFallbackClassEquals(method, null);
-
-      checkFilters(request);
-   }
-
-   public void testLedOff() throws SecurityException, NoSuchMethodException, IOException {
-      Invokable<?, ?> method = method(InfrastructureApi.class, "ledOff", MachineDto.class);
-      GeneratedHttpRequest request = processor.apply(Invocation.create(method,
-            ImmutableList.<Object> of(InfrastructureResources.machinePut())));
-
-      assertRequestLineEquals(request,
-            "POST http://localhost/api/admin/datacenters/1/racks/1/machines/1/action/ledoff HTTP/1.1");
-      assertNonPayloadHeadersEqual(request, "");
-      assertPayloadEquals(request, null, null, false);
-
-      assertResponseParserClassEquals(method, request, ReleasePayloadAndReturn.class);
-      assertSaxResponseParserClassEquals(method, null);
-      assertFallbackClassEquals(method, null);
-
-      checkFilters(request);
-   }
-
-   public void testGetLocatorLed() throws SecurityException, NoSuchMethodException, IOException {
-      Invokable<?, ?> method = method(InfrastructureApi.class, "getLocatorLed", MachineDto.class);
-      GeneratedHttpRequest request = processor.apply(Invocation.create(method,
-            ImmutableList.<Object> of(InfrastructureResources.machinePut())));
-
-      assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters/1/racks/1/machines/1/led HTTP/1.1");
-      assertNonPayloadHeadersEqual(request, "Accept: " + BladeLocatorLedDto.BASE_MEDIA_TYPE + "\n");
-      assertPayloadEquals(request, null, null, false);
-
-      assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class);
-      assertSaxResponseParserClassEquals(method, null);
-      assertFallbackClassEquals(method, null);
-
-      checkFilters(request);
-   }
-
    /*********************** Storage Device ***********************/
 
    public void testListStorageDevices() throws SecurityException, NoSuchMethodException, IOException {