package org.infosec.ismp.manager.topo; import org.infosec.ismp.collectd.SnmpGetterModel; import org.infosec.ismp.manager.rmi.tm.discover.service.agent.CDPService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; /** * CDPService的RMI接口实现类 * @author jiel * */ @Component public class CDPServiceImpl implements CDPService { private SnmpGetterLocator locator; @Autowired(required=true) public void setLocator(SnmpGetterLocator locator) { this.locator = locator; } /** * 获取cdp信息 * @param ip * IP * @param port * 端口 * @param oid * oid * @param community * 团体名 * @param outTime * 超时时间 * @param agentIp * agent的IP * @param agentPort * agent的端口 * @return cdp信息 */ @Override public String cdpGet(String ip, int port, String oid, String community, int outTime) throws Exception { String getType = "String"; SnmpGetterModel model = locator.snmpGetter(getType,"testDomain", ip, port, oid, community,outTime, 2); if(model!=null){ return model.getSnmpString(); } return null; } /** * 获取cdp信息--表中的一列 * @param ip * IP * @param port * 端口 * @param oid * oid * @param community * 团体名 * @param outTime * 超时时间 * @param agentIp * agent的IP * @param agentPort * agent的端口 * @return cdp信息 */ @Override public String[] cdpGetColumn(String ip, int port, String oid, String community, int outTime) throws Exception { String getType = "Column"; SnmpGetterModel model = locator.snmpGetter(getType,"testDomain", ip, port, oid, community,outTime, 2); if(model!=null){ return model.getSnmpColumn(); } return null; } /** * 获取cdp信息--表中的所有列 * @param ip * IP * @param port * 端口 * @param oid * oid * @param community * 团体名 * @param outTime * 超时时间 * @param agentIp * agent的IP * @param agentPort * agent的端口 * @return cdp信息 */ @Override public String[][] cdpGetTable(String ip, int port, String oid, String community, int outTime) throws Exception { String getType = "Table"; SnmpGetterModel model = locator.snmpGetter(getType,"testDomain", ip, port, oid, community,outTime, 2); if(model!=null){ return model.getSnmpTable(); } return null; } }