/** * Copyright 2010 Tristan Tarrant * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package net.dataforte.cassandra.pool; /** * Represents a connection to a Cassandra host * * @author Tristan Tarrant */ public class CassandraHost { String host; long lastUsed; boolean good; public CassandraHost(String host) { this.host = host; good = true; } public String getHost() { return host; } public void timestamp() { lastUsed = System.currentTimeMillis(); } public long getLastUsed() { return lastUsed; } public boolean isGood() { return good; } public void setGood(boolean good) { this.good = good; } public String toString() { return "[" + host + ",status=" + good + ",timestamp=" + lastUsed + "]"; } @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((host == null) ? 0 : host.hashCode()); return result; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; CassandraHost other = (CassandraHost) obj; if (host == null) { if (other.host != null) return false; } else if (!host.equals(other.host)) return false; return true; } }