package com.liveramp.hank.coordinator;
import java.io.IOException;
import java.util.SortedSet;
import java.util.TreeSet;
public abstract class AbstractHost implements Host {
@Override
public int compareTo(Host o) {
return getAddress().compareTo(o.getAddress());
}
@Override
public SortedSet<HostDomain> getAssignedDomainsSorted() throws IOException {
return new TreeSet<HostDomain>(getAssignedDomains());
}
@Override
public HostDomain getHostDomain(Domain domain) {
// TODO: this should be done with a map and caching
try {
for (HostDomain hostDomain : getAssignedDomains()) {
if (hostDomain.getDomain().equals(domain)) {
return hostDomain;
}
}
} catch (IOException e) {
throw new RuntimeException(e);
}
return null;
}
@Override
public String toString() {
return String.format("AbstractHost [address=%s]", getAddress());
}
}