@Override protected void decode(ChannelHandlerContext ctx, ByteBuf msg, List<Object> out) throws Exception { buffer.append(msg.toString(charset)); if ( buffer.toString().contains("<START>>") && buffer.toString().contains(";END") ) { int eifStart = buffer.indexOf("<START>>"); int eifEnd = buffer.lastIndexOf(";END"); final StringBuilder eif = new StringBuilder(buffer.substring(eifStart,eifEnd+4)); buffer.delete(eifStart,eifEnd+4); List<Event> e = EifParser.translateEifToOpenNMS(nodeDao, eif); if (e != null) { Log eifEvents = new Log(); e.forEach(event -> eifEvents.addEvent(event)); out.add(eifEvents); } } }
@Override protected void decode(ChannelHandlerContext ctx, ByteBuf msg, List<Object> out) throws Exception { buffer.append(msg.toString(charset)); if ( buffer.toString().contains("<START>>") && buffer.toString().contains(";END") ) { int eifStart = buffer.indexOf("<START>>"); int eifEnd = buffer.lastIndexOf(";END"); final StringBuilder eif = new StringBuilder(buffer.substring(eifStart,eifEnd+4)); buffer.delete(eifStart,eifEnd+4); List<Event> e = EifParser.translateEifToOpenNMS(nodeDao, eif); if (e != null) { Log eifEvents = new Log(); e.forEach(event -> eifEvents.addEvent(event)); out.add(eifEvents); } } }
protected static Log toNewSuspectEvents(DiscoveryJob job, PingSweepSummary summary) { final Log eventLog = new Log(); for (Entry<InetAddress, Double> entry : summary.getResponses().entrySet()) { EventBuilder eb = new EventBuilder(EventConstants.NEW_SUSPECT_INTERFACE_EVENT_UEI, Discovery.DAEMON_NAME); eb.setInterface(entry.getKey()); eb.addParam("RTT", entry.getValue()); if (job.getForeignSource() != null) { eb.addParam(EventConstants.PARM_FOREIGN_SOURCE, job.getForeignSource()); } if (job.getLocation() != null) { eb.addParam(EventConstants.PARM_LOCATION, job.getLocation()); } eventLog.addEvent(eb.getEvent()); } return eventLog; }
protected static Log toNewSuspectEvents(DiscoveryJob job, PingSweepSummary summary) { final Log eventLog = new Log(); for (Entry<InetAddress, Double> entry : summary.getResponses().entrySet()) { EventBuilder eb = new EventBuilder(EventConstants.NEW_SUSPECT_INTERFACE_EVENT_UEI, Discovery.DAEMON_NAME); eb.setInterface(entry.getKey()); eb.addParam("RTT", entry.getValue()); if (job.getForeignSource() != null) { eb.addParam(EventConstants.PARM_FOREIGN_SOURCE, job.getForeignSource()); } if (job.getLocation() != null) { eb.addParam(EventConstants.PARM_LOCATION, job.getLocation()); } eventLog.addEvent(eb.getEvent()); } return eventLog; }