package org.infosec.ismp.manager.db.task; import org.apache.commons.lang.builder.EqualsBuilder; import org.apache.commons.lang.builder.HashCodeBuilder; import org.apache.commons.lang.builder.ToStringBuilder; import org.infosec.ismp.manager.agent.AgentTaskNode; import org.infosec.ismp.manager.agent.task.AgentTodoTask; import org.infosec.ismp.manager.agent.task.AgentTodoTask.AgentTodoType; /** * * @author guoxianwei * @date 2010-12-14 下午04:43:44 * 数据库信息采集服务节点信息 */ public class DatabaseNode implements AgentTaskNode { private static final long serialVersionUID = -57284319158347534L; private String m_nodeid; private String m_url;//数据库URL private Integer m_port; private String m_username; private String m_password; private String m_dbtype; private String m_version; private Long m_interval; private String m_dbname; private Boolean m_halfWhenDown; @Override public AgentTodoTask convertToTask() { return new AgentAddDatabaseTask(this); } @Override public String getNodeid() { return m_nodeid; } @Override public AgentTodoType getType() { return AgentTodoType.JDBC; } public String getUrl() { return m_url; } public Integer getPort() { return m_port; } public String getUsername() { return m_username; } public String getPassword() { return m_password; } public String getVersion() { return m_version; } public String getDbname() { return m_dbname; } public Long getInterval() { return m_interval; } public String getDbtype() { return m_dbtype; } public Boolean isHalfWhenDown() { return m_halfWhenDown; } public void setDbtype(String dbtype) { m_dbtype = dbtype; } public void setHalfWhenDown(Boolean halfWhenDown) { m_halfWhenDown = halfWhenDown; } public void setNodeid(String nodeid) { m_nodeid = nodeid; } public void setUrl(String url) { m_url = url; } public void setPort(Integer port) { m_port = port; } public void setUsername(String username) { m_username = username; } public void setPassword(String password) { m_password = password; } public void setVersion(String version) { m_version = version; } public void setDbname(String dbname) { m_dbname = dbname; } public void setInterval(Long interval) { m_interval = interval; } public boolean equals(Object other) { if (!(other instanceof DatabaseNode)) { return false; } DatabaseNode rhs = (DatabaseNode) other; return new EqualsBuilder().appendSuper(super.equals(other)).append( m_nodeid, rhs.m_nodeid).append(m_url, rhs.m_url).append(m_port, rhs.m_port).append(m_dbname, rhs.m_dbname).append(m_dbtype, rhs.m_dbtype).append(m_version, rhs.m_version).isEquals(); } public int hashCode() { return new HashCodeBuilder(61, 15).appendSuper(super.hashCode()) .append(m_nodeid).append(m_url).append(m_port).append(m_dbname) .append(m_dbtype).append(m_version).toHashCode(); } public String toString() { return new ToStringBuilder(this).appendSuper(super.toString()).append( "m_nodeid", m_nodeid).append("m_url", m_url).append("m_port", m_port).append("m_dbname", m_dbname).append("m_dbtype", m_dbtype).append("m_version", m_version).toString(); } }