package org.infosec.ismp.agent.winsensor.strategy.entity; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.Table; import org.infosec.ismp.agent.winsensor.strategy.BaseStrategy; /** * @author Rocky * @version create time:Oct 20, 2010 4:14:34 PM * */ @Entity @Table(name="host_resource_strategy") public class HostResourceStrategyBO extends BaseStrategy { private static final long serialVersionUID = 7457306069465845004L; /* * The URL send hostResource to sensor server. */ @Column(name="send_url", length=255) private String url; /* * The interval that sensor client send hostResource to sensor server. Unit: second. */ @Column(name="send_interval") private int interval; public String getUrl() { return url; } public void setUrl(String url) { this.url = url; } public int getInterval() { return interval; } public void setInterval(int interval) { this.interval = interval; } @Override public boolean equals(Object obj) { if (obj == this) { return true; } if (obj == null) { return false; } if (!(obj instanceof HostResourceStrategyBO)) { return false; } HostResourceStrategyBO hostResourceStrategy = (HostResourceStrategyBO) obj; if (hostResourceStrategy.getIp().equals(getIp()) && hostResourceStrategy.getSensorId().equals(getSensorId()) && (hostResourceStrategy.getIssued() == getIssued()) && (hostResourceStrategy.getCovered() == getCovered())) { return true; } return false; } @Override public int hashCode() { final int constant = 37; int total = 17; total = constant * total + ((getIp() == null) ? 0 : getIp().hashCode()); total = constant * total + ((getSensorId() == null) ? 0 : getSensorId().hashCode()); total = constant * total + getIssued(); total = constant * total + getCovered(); return total; } @Override public String toString() { StringBuffer value = new StringBuffer(this.getClass().toString()); value.append(" sensorId: " + getSensorId()); value.append(" ipAddress: " + getIp()); value.append(" Issued: " + getIssued()); value.append("covered: " + getCovered()); return value.toString(); } }