package com.netflix.evcache.pool; public class ServerGroup implements Comparable<ServerGroup> { private final String zone; private final String name; public ServerGroup(String zone, String name) { super(); this.zone = zone; this.name = name; } public String getZone() { return zone; } public String getName() { return name; } @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((name == null) ? 0 : name.hashCode()); result = prime * result + ((zone == null) ? 0 : zone.hashCode()); return result; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (!(obj instanceof ServerGroup)) return false; ServerGroup other = (ServerGroup) obj; if (name == null) { if (other.name != null) return false; } else if (!name.equals(other.name)) return false; if (zone == null) { if (other.zone != null) return false; } else if (!zone.equals(other.zone)) return false; return true; } @Override public String toString() { return "Server Group [zone=" + zone + (name.equals(zone) ? "" : ", name=" + name) + "]"; } @Override public int compareTo(ServerGroup o) { return toString().compareTo(o.toString()); } }