@Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getStackName() == null) ? 0 : getStackName().hashCode()); hashCode = prime * hashCode + ((getStackId() == null) ? 0 : getStackId().hashCode()); hashCode = prime * hashCode + ((getLogicalResourceId() == null) ? 0 : getLogicalResourceId().hashCode()); hashCode = prime * hashCode + ((getPhysicalResourceId() == null) ? 0 : getPhysicalResourceId().hashCode()); hashCode = prime * hashCode + ((getResourceType() == null) ? 0 : getResourceType().hashCode()); hashCode = prime * hashCode + ((getTimestamp() == null) ? 0 : getTimestamp().hashCode()); hashCode = prime * hashCode + ((getResourceStatus() == null) ? 0 : getResourceStatus().hashCode()); hashCode = prime * hashCode + ((getResourceStatusReason() == null) ? 0 : getResourceStatusReason().hashCode()); hashCode = prime * hashCode + ((getDescription() == null) ? 0 : getDescription().hashCode()); hashCode = prime * hashCode + ((getDriftInformation() == null) ? 0 : getDriftInformation().hashCode()); return hashCode; }
public StackResource unmarshall(StaxUnmarshallerContext context) throws Exception { StackResource stackResource = new StackResource(); int originalDepth = context.getCurrentDepth(); int targetDepth = originalDepth + 1; stackResource.setStackName(StringStaxUnmarshaller.getInstance().unmarshall(context)); continue; stackResource.setStackId(StringStaxUnmarshaller.getInstance().unmarshall(context)); continue; stackResource.setLogicalResourceId(StringStaxUnmarshaller.getInstance().unmarshall(context)); continue; stackResource.setPhysicalResourceId(StringStaxUnmarshaller.getInstance().unmarshall(context)); continue; stackResource.setResourceType(StringStaxUnmarshaller.getInstance().unmarshall(context)); continue; stackResource.setTimestamp(DateStaxUnmarshallerFactory.getInstance("iso8601").unmarshall(context)); continue; stackResource.setResourceStatus(StringStaxUnmarshaller.getInstance().unmarshall(context)); continue; stackResource.setResourceStatusReason(StringStaxUnmarshaller.getInstance().unmarshall(context)); continue; stackResource.setDescription(StringStaxUnmarshaller.getInstance().unmarshall(context));
private String autoDetectStackName(String instanceId) { Assert.notNull(instanceId, "No valid instance id defined"); DescribeStackResourcesResult describeStackResourcesResult = this.amazonCloudFormationClient.describeStackResources(new DescribeStackResourcesRequest().withPhysicalResourceId(instanceId)); if (describeStackResourcesResult != null && describeStackResourcesResult.getStackResources() != null && !describeStackResourcesResult.getStackResources().isEmpty()) { return describeStackResourcesResult.getStackResources().get(0).getStackName(); } if (this.amazonEc2Client != null) { DescribeTagsResult describeTagsResult = this.amazonEc2Client.describeTags(new DescribeTagsRequest().withFilters( new Filter("resource-id", Collections.singletonList(instanceId)), new Filter("resource-type", Collections.singletonList("instance")), new Filter("key", Collections.singletonList("aws:cloudformation:stack-name")))); if (describeTagsResult != null && describeTagsResult.getTags() != null && !describeTagsResult.getTags().isEmpty()) { return describeTagsResult.getTags().get(0).getValue(); } } return null; } }
public String findPhysicalResourceId(String stackName, String logicalResourceId) { Optional<StackResource> physicalResource = getStackResources(stackName).stream() .filter(r -> r.getLogicalResourceId().equals(logicalResourceId)) .findAny(); if (physicalResource.isPresent() == false) { logger.warn("WARN: physical resource {} for stack {} is not found", logicalResourceId, stackName); } return physicalResource.map(StackResource::getPhysicalResourceId).orElse(null); }
public StackResource unmarshall(StaxUnmarshallerContext context) throws Exception { StackResource stackResource = new StackResource(); int originalDepth = context.getCurrentDepth(); int targetDepth = originalDepth + 1; stackResource.setStackName(StringStaxUnmarshaller.getInstance().unmarshall(context)); continue; stackResource.setStackId(StringStaxUnmarshaller.getInstance().unmarshall(context)); continue; stackResource.setLogicalResourceId(StringStaxUnmarshaller.getInstance().unmarshall(context)); continue; stackResource.setPhysicalResourceId(StringStaxUnmarshaller.getInstance().unmarshall(context)); continue; stackResource.setResourceType(StringStaxUnmarshaller.getInstance().unmarshall(context)); continue; stackResource.setTimestamp(DateStaxUnmarshallerFactory.getInstance("iso8601").unmarshall(context)); continue; stackResource.setResourceStatus(StringStaxUnmarshaller.getInstance().unmarshall(context)); continue; stackResource.setResourceStatusReason(StringStaxUnmarshaller.getInstance().unmarshall(context)); continue; stackResource.setDescription(StringStaxUnmarshaller.getInstance().unmarshall(context));
private String autoDetectStackName(String instanceId) { Assert.notNull(instanceId, "No valid instance id defined"); DescribeStackResourcesResult describeStackResourcesResult = this.amazonCloudFormationClient.describeStackResources(new DescribeStackResourcesRequest().withPhysicalResourceId(instanceId)); if (describeStackResourcesResult != null && describeStackResourcesResult.getStackResources() != null && !describeStackResourcesResult.getStackResources().isEmpty()) { return describeStackResourcesResult.getStackResources().get(0).getStackName(); } if (this.amazonEc2Client != null) { DescribeTagsResult describeTagsResult = this.amazonEc2Client.describeTags(new DescribeTagsRequest().withFilters( new Filter("resource-id", Collections.singletonList(instanceId)), new Filter("resource-type", Collections.singletonList("instance")), new Filter("key", Collections.singletonList("aws:cloudformation:stack-name")))); if (describeTagsResult != null && describeTagsResult.getTags() != null && !describeTagsResult.getTags().isEmpty()) { return describeTagsResult.getTags().get(0).getValue(); } } return null; } }
return false; StackResource other = (StackResource) obj; if (other.getStackName() == null ^ this.getStackName() == null) return false; if (other.getStackName() != null && other.getStackName().equals(this.getStackName()) == false) return false; if (other.getStackId() == null ^ this.getStackId() == null) return false; if (other.getStackId() != null && other.getStackId().equals(this.getStackId()) == false) return false; if (other.getLogicalResourceId() == null ^ this.getLogicalResourceId() == null) return false; if (other.getLogicalResourceId() != null && other.getLogicalResourceId().equals(this.getLogicalResourceId()) == false) return false; if (other.getPhysicalResourceId() == null ^ this.getPhysicalResourceId() == null) return false; if (other.getPhysicalResourceId() != null && other.getPhysicalResourceId().equals(this.getPhysicalResourceId()) == false) return false; if (other.getResourceType() == null ^ this.getResourceType() == null) return false; if (other.getResourceType() != null && other.getResourceType().equals(this.getResourceType()) == false) return false; if (other.getTimestamp() == null ^ this.getTimestamp() == null) return false; if (other.getTimestamp() != null && other.getTimestamp().equals(this.getTimestamp()) == false) return false; if (other.getResourceStatus() == null ^ this.getResourceStatus() == null) return false; if (other.getResourceStatus() != null && other.getResourceStatus().equals(this.getResourceStatus()) == false)
StringBuilder sb = new StringBuilder(); sb.append("{"); if (getStackName() != null) sb.append("StackName: ").append(getStackName()).append(","); if (getStackId() != null) sb.append("StackId: ").append(getStackId()).append(","); if (getLogicalResourceId() != null) sb.append("LogicalResourceId: ").append(getLogicalResourceId()).append(","); if (getPhysicalResourceId() != null) sb.append("PhysicalResourceId: ").append(getPhysicalResourceId()).append(","); if (getResourceType() != null) sb.append("ResourceType: ").append(getResourceType()).append(","); if (getTimestamp() != null) sb.append("Timestamp: ").append(getTimestamp()).append(","); if (getResourceStatus() != null) sb.append("ResourceStatus: ").append(getResourceStatus()).append(","); if (getResourceStatusReason() != null) sb.append("ResourceStatusReason: ").append(getResourceStatusReason()).append(","); if (getDescription() != null) sb.append("Description: ").append(getDescription()).append(","); if (getDriftInformation() != null) sb.append("DriftInformation: ").append(getDriftInformation()); sb.append("}"); return sb.toString();
@Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getStackName() == null) ? 0 : getStackName().hashCode()); hashCode = prime * hashCode + ((getStackId() == null) ? 0 : getStackId().hashCode()); hashCode = prime * hashCode + ((getLogicalResourceId() == null) ? 0 : getLogicalResourceId().hashCode()); hashCode = prime * hashCode + ((getPhysicalResourceId() == null) ? 0 : getPhysicalResourceId().hashCode()); hashCode = prime * hashCode + ((getResourceType() == null) ? 0 : getResourceType().hashCode()); hashCode = prime * hashCode + ((getTimestamp() == null) ? 0 : getTimestamp().hashCode()); hashCode = prime * hashCode + ((getResourceStatus() == null) ? 0 : getResourceStatus().hashCode()); hashCode = prime * hashCode + ((getResourceStatusReason() == null) ? 0 : getResourceStatusReason().hashCode()); hashCode = prime * hashCode + ((getDescription() == null) ? 0 : getDescription().hashCode()); hashCode = prime * hashCode + ((getDriftInformation() == null) ? 0 : getDriftInformation().hashCode()); return hashCode; }
return false; StackResource other = (StackResource) obj; if (other.getStackName() == null ^ this.getStackName() == null) return false; if (other.getStackName() != null && other.getStackName().equals(this.getStackName()) == false) return false; if (other.getStackId() == null ^ this.getStackId() == null) return false; if (other.getStackId() != null && other.getStackId().equals(this.getStackId()) == false) return false; if (other.getLogicalResourceId() == null ^ this.getLogicalResourceId() == null) return false; if (other.getLogicalResourceId() != null && other.getLogicalResourceId().equals(this.getLogicalResourceId()) == false) return false; if (other.getPhysicalResourceId() == null ^ this.getPhysicalResourceId() == null) return false; if (other.getPhysicalResourceId() != null && other.getPhysicalResourceId().equals(this.getPhysicalResourceId()) == false) return false; if (other.getResourceType() == null ^ this.getResourceType() == null) return false; if (other.getResourceType() != null && other.getResourceType().equals(this.getResourceType()) == false) return false; if (other.getTimestamp() == null ^ this.getTimestamp() == null) return false; if (other.getTimestamp() != null && other.getTimestamp().equals(this.getTimestamp()) == false) return false; if (other.getResourceStatus() == null ^ this.getResourceStatus() == null) return false; if (other.getResourceStatus() != null && other.getResourceStatus().equals(this.getResourceStatus()) == false)
StringBuilder sb = new StringBuilder(); sb.append("{"); if (getStackName() != null) sb.append("StackName: ").append(getStackName()).append(","); if (getStackId() != null) sb.append("StackId: ").append(getStackId()).append(","); if (getLogicalResourceId() != null) sb.append("LogicalResourceId: ").append(getLogicalResourceId()).append(","); if (getPhysicalResourceId() != null) sb.append("PhysicalResourceId: ").append(getPhysicalResourceId()).append(","); if (getResourceType() != null) sb.append("ResourceType: ").append(getResourceType()).append(","); if (getTimestamp() != null) sb.append("Timestamp: ").append(getTimestamp()).append(","); if (getResourceStatus() != null) sb.append("ResourceStatus: ").append(getResourceStatus()).append(","); if (getResourceStatusReason() != null) sb.append("ResourceStatusReason: ").append(getResourceStatusReason()).append(","); if (getDescription() != null) sb.append("Description: ").append(getDescription()).append(","); if (getDriftInformation() != null) sb.append("DriftInformation: ").append(getDriftInformation()); sb.append("}"); return sb.toString();