@Override public DataCenterInfo getValue(InstanceInfo instanceInfo) { return instanceInfo.getDataCenterInfo(); } });
private static String extractInstanceId(InstanceInfo instanceInfo) { if (instanceInfo != null && instanceInfo.getDataCenterInfo() != null && AwsDataCenterInfo.class.isAssignableFrom(instanceInfo.getDataCenterInfo().getClass())) { final AwsDataCenterInfo dataCenterInfo = (AwsDataCenterInfo) instanceInfo.getDataCenterInfo(); return dataCenterInfo.getInstanceId(); } return instanceInfo.getId(); }
public static String extractHostname(InstanceInfo instanceInfo) { if (AwsDataCenterInfo.class.isAssignableFrom(instanceInfo.getDataCenterInfo().getClass())) { final AwsDataCenterInfo dataCenterInfo = (AwsDataCenterInfo) instanceInfo.getDataCenterInfo(); return dataCenterInfo.getPublicAddress().getHostName(); } return ""; }
public static Iterator<ServiceEndpoint> iteratorFrom(final InstanceInfo instanceInfo) { final List<NetworkAddress> addresses = instanceInfo.getDataCenterInfo().getAddresses(); final HashSet<ServicePort> ports = instanceInfo.getPorts(); if (ports == null || ports.isEmpty() || addresses == null || addresses.isEmpty()) {
@Override public JsonElement serialize(InstanceInfo instanceInfo, Type typeOfSrc, JsonSerializationContext context) { JsonObject result = new JsonObject(); if (AwsDataCenterInfo.class.isAssignableFrom(instanceInfo.getDataCenterInfo().getClass())) { final AwsDataCenterInfo dataCenterInfo = (AwsDataCenterInfo) instanceInfo.getDataCenterInfo(); result.addProperty("instId", dataCenterInfo.getInstanceId()); if(dataCenterInfo.getPublicAddress() != null) { result.addProperty("ip", dataCenterInfo.getPublicAddress().getIpAddress()); result.addProperty("hostname", dataCenterInfo.getPublicAddress().getHostName()); } result.addProperty("zone", dataCenterInfo.getZone()); result.addProperty("reg", dataCenterInfo.getRegion()); } result.addProperty("appId", instanceInfo.getApp()); result.addProperty("status", instanceInfo.getStatus().name()); result.addProperty("vip", instanceInfo.getVipAddress()); return result; } }
public static Iterator<InstanceInfo> collectionOf(final String baseName, final InstanceInfo template) { final AwsDataCenterInfo templateDataCenter = (AwsDataCenterInfo) template.getDataCenterInfo(); final AtomicInteger idx = new AtomicInteger(); final Iterator<NetworkAddress> publicAddresses = SampleNetworkAddress.collectionOfIPv4("20.20", baseName + ".public.net", null);