@Override public String getValue(InstanceInfo instanceInfo) { return instanceInfo.getVipAddress(); } });
@Override protected String getValue(InstanceInfo data) { return data.getVipAddress(); } }
@Override public int compare(InstanceInfo o1, InstanceInfo o2) { if (o1 != null && o2 != null && o1.getVipAddress() != null && o2.getVipAddress() != null) { return o2.getVipAddress().compareTo(o1.getVipAddress()); } if (o1 != null && o1.getVipAddress() != null) { return -1; } if (o2 != null && o2.getVipAddress() != null) { return 1; } return 0; } });
@Override public int compare(InstanceInfo o1, InstanceInfo o2) { if (o1 != null && o2 != null && o1.getVipAddress() != null && o2.getVipAddress() != null) { return o1.getVipAddress().compareTo(o2.getVipAddress()); } if (o1 != null && o1.getVipAddress() != null) { return 1; } if (o2 != null && o2.getVipAddress() != null) { return -1; } return 0; } });
private void refresh() { final Map<String, InstanceInfo> regCache = registryCache.getCache(); List<RegistryItem> registryItemsCurrent = new ArrayList<>(); for (Map.Entry<String, InstanceInfo> instanceInfo : regCache.entrySet()) { registryItemsCurrent.add(new RegistryItem(instanceInfo.getKey(), instanceInfo.getValue().getApp(), instanceInfo.getValue().getVipAddress(), instanceInfo.getValue().getStatus().name())); } if (isCurrentSnapshotSafeToRefresh(registryItemsCurrent.size())) { registryItemsRef.set(registryItemsCurrent); } }
@Override public Interest<InstanceInfo> build() { return Interests.forSecureVips(SampleInstanceInfo.ZuulServer.build().getVipAddress()); } },
@Override public Interest<InstanceInfo> build() { return Interests.forVips(SampleInstanceInfo.ZuulServer.build().getVipAddress()); } },
@Override public Interest<InstanceInfo> build() { return Interests.forVips(SampleInstanceInfo.DiscoveryServer.build().getVipAddress()); } },
@Override public Interest<InstanceInfo> build() { return Interests.forSecureVips(SampleInstanceInfo.DiscoveryServer.build().getVipAddress()); } },
@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; } }
private Collection<InstanceInfo> applyFiltering(Collection<InstanceInfo> instanceInfoList) { if (searchTerm != null && !searchTerm.isEmpty()) { List<InstanceInfo> result = new ArrayList<>(); for (InstanceInfo instanceInfo : instanceInfoList) { final String app = instanceInfo.getApp(); if (containsIn(instanceInfo.getApp()) || containsIn(instanceInfo.getVipAddress()) || (instanceInfo.getStatus() != null && containsIn(instanceInfo.getStatus().name()))) { result.add(instanceInfo); } } numFilteredRecords = result.size(); return result; } else { numFilteredRecords = instanceInfoList.size(); return instanceInfoList; } }
@Override public InstanceInfo next() { int cidx = idx.incrementAndGet(); String name = baseName + '_' + cidx; NetworkAddress publicAddress = publicAddresses.next(); NetworkAddress privateAddress = privateAddresses.next(); DataCenterInfo dataCenter = new AwsDataCenterInfo.Builder() .withAwsDataCenter(templateDataCenter) .withInstanceId(String.format("i-%s-%08d", baseName, cidx)) .withPublicHostName(publicAddress.getHostName()) .withPublicIPv4(publicAddress.getIpAddress()) .withPrivateHostName(privateAddress.getHostName()) .withPrivateIPv4(privateAddress.getIpAddress()) .build(); return new InstanceInfo.Builder() .withId("id#" + name) .withApp(template.getApp()) .withAppGroup(template.getAppGroup()) .withAsg(template.getAsg()) .withHealthCheckUrls(template.getHealthCheckUrls()) .withHomePageUrl(template.getHomePageUrl()) .withPorts(template.getPorts()) .withSecureVipAddress(template.getSecureVipAddress()) .withStatus(template.getStatus()) .withStatusPageUrl(template.getStatusPageUrl()) .withVipAddress(template.getVipAddress()) .withMetaData(template.getMetaData()) .withDataCenterInfo(dataCenter) .build(); }