Machines { public static boolean warnIfLocalhost(Collection<? extends Location> locations, String message) { if (locations.size()==1) { Location l = locations.iterator().next(); if (l instanceof LocalhostMachineProvisioningLocation || l instanceof LocalhostMachine) { log.warn(message); return true; } } return false; }  static Maybe<String> getSubnetHostname(Location where); static Maybe<String> getSubnetIp(Location where); @Nonnull @SuppressWarnings("unchecked") static Maybe<T> findUniqueElement(Iterable<?> items, Class<T> type); static Maybe<MachineLocation> findUniqueMachineLocation(Iterable<? extends Location> locations); static Maybe<T> findUniqueMachineLocation(Iterable<? extends Location> locations, Class<T> clazz); static Maybe<String> findSubnetHostname(Iterable<? extends Location> ll); static Maybe<String> findSubnetHostname(Entity entity); static Maybe<String> findSubnetOrPublicHostname(Entity entity); static Maybe<String> findSubnetOrPrivateIp(Entity entity); static Maybe<String> findSubnetIp(Entity entity); static Maybe<String> findSubnetIp(Iterable<? extends Location> ll); static boolean warnIfLocalhost(Collection<? extends Location> locations, String message);  }
@Test public void testWarnIfLocalhost() throws Exception { assertFalse(Machines.warnIfLocalhost(ImmutableList.of(create(sshMachineSpec)), "my message")); assertTrue(Machines.warnIfLocalhost(ImmutableList.of(create(localMachineSpec)), "my message")); }