private void removeFloatingIpFromNodeifAny(RegionAndId regionAndId) { try { removeFloatingIpFromNodeAndDeallocate.apply(regionAndId); } catch (RuntimeException e) { logger.warn(e, "<< error removing and deallocating ip from node(%s): %s", regionAndId, e.getMessage()); } }
@Override public RegionAndId apply(RegionAndId id) { if (isNeutronLinked()) { for (FloatingIpForServer floatingIpForServer : floatingIpCache.getUnchecked(id)) { logger.debug(">> deallocating floatingIp(%s)", floatingIpForServer); getFloatingIPApi(id.getRegion()).delete(floatingIpForServer.floatingIpId()); } } else { // try nova FloatingIPApi floatingIpApi = novaApi.getFloatingIPApi(id.getRegion()).get(); for (FloatingIpForServer floatingIpForServer : floatingIpCache.getUnchecked(id)) { logger.debug(">> removing floatingIp(%s) from node(%s)", floatingIpForServer, id); floatingIpApi.removeFromServer(floatingIpForServer.ip(), id.getId()); logger.debug(">> deallocating floatingIp(%s)", floatingIpForServer); floatingIpApi.delete(floatingIpForServer.floatingIpId()); } } floatingIpCache.invalidate(id); return id; }
@Override public RegionAndId apply(RegionAndId id) { if (isNeutronLinked()) { for (FloatingIpForServer floatingIpForServer : floatingIpCache.getUnchecked(id)) { logger.debug(">> deallocating floatingIp(%s)", floatingIpForServer); getFloatingIPApi(id.getRegion()).delete(floatingIpForServer.floatingIpId()); } } else { // try nova FloatingIPApi floatingIpApi = novaApi.getFloatingIPApi(id.getRegion()).get(); for (FloatingIpForServer floatingIpForServer : floatingIpCache.getUnchecked(id)) { logger.debug(">> removing floatingIp(%s) from node(%s)", floatingIpForServer, id); floatingIpApi.removeFromServer(floatingIpForServer.ip(), id.getId()); logger.debug(">> deallocating floatingIp(%s)", floatingIpForServer); floatingIpApi.delete(floatingIpForServer.floatingIpId()); } } floatingIpCache.invalidate(id); return id; }
private void removeFloatingIpFromNodeifAny(RegionAndId regionAndId) { try { removeFloatingIpFromNodeAndDeallocate.apply(regionAndId); } catch (RuntimeException e) { logger.warn(e, "<< error removing and deallocating ip from node(%s): %s", regionAndId, e.getMessage()); } }
@Override public void destroyNode(String id) { ZoneAndId zoneAndId = ZoneAndId.fromSlashEncoded(id); if (novaApi.getFloatingIPExtensionForZone(zoneAndId.getZone()).isPresent()) { try { removeFloatingIpFromNodeAndDeallocate.apply(zoneAndId); } catch (RuntimeException e) { logger.warn(e, "<< error removing and deallocating ip from node(%s): %s", id, e.getMessage()); } } novaApi.getServerApiForZone(zoneAndId.getZone()).delete(zoneAndId.getId()); }
@Override public void destroyNode(String id) { ZoneAndId zoneAndId = ZoneAndId.fromSlashEncoded(id); if (novaApi.getFloatingIPExtensionForZone(zoneAndId.getZone()).isPresent()) { try { removeFloatingIpFromNodeAndDeallocate.apply(zoneAndId); } catch (RuntimeException e) { logger.warn(e, "<< error removing and deallocating ip from node(%s): %s", id, e.getMessage()); } } novaApi.getServerApiForZone(zoneAndId.getZone()).delete(zoneAndId.getId()); }
@Override public void destroyNode(String id) { ZoneAndId zoneAndId = ZoneAndId.fromSlashEncoded(id); if (novaApi.getFloatingIPExtensionForZone(zoneAndId.getZone()).isPresent()) { try { removeFloatingIpFromNodeAndDeallocate.apply(zoneAndId); } catch (RuntimeException e) { logger.warn(e, "<< error removing and deallocating ip from node(%s): %s", id, e.getMessage()); } } novaApi.getServerApiForZone(zoneAndId.getZone()).delete(zoneAndId.getId()); }
removeFloatingIpFromNodeAndDeallocate.apply(regionAndId); } catch (RuntimeException e) { logger.warn(e, "<< error removing and deallocating ip from node(%s): %s", id, e.getMessage());