private void completeEventListAndAddToEvents(
      Events events, List<Event> eventList, LatencyInterface latIface)
      throws ThresholdingException {
    for (Event event : eventList) {
      event.setNodeid((long) latIface.getNodeId());
      event.setInterfaceAddress(latIface.getInetAddress());
      event.setService(latIface.getServiceName());

      events.addEvent(event);
    }
  }
  /**
   * {@inheritDoc}
   *
   * <p>Perform threshold checking.
   */
  public int check(ThresholdNetworkInterface iface, EventProxy eproxy, Map<?, ?> parameters) {
    LatencyInterface latIface = new LatencyInterface(iface, m_svcName);
    LatencyParameters latParms = new LatencyParameters(parameters, m_svcName);

    try {

      // Get configuration parameters
      //
      // NodeId attribute
      if (log().isDebugEnabled())
        log()
            .debug(
                "check: service= "
                    + m_svcName
                    + " interface= "
                    + latIface.getHostAddress()
                    + " nodeId= "
                    + latIface.getNodeId()
                    + " thresholding-group="
                    + latParms.getGroupName()
                    + " interval="
                    + latParms.getInterval()
                    + "ms");

      // RRD Repository attribute
      //
      // Create empty Events object to hold any threshold
      // events generated during the thresholding check...
      Events events = checkRrdDir(latIface, latParms);

      // Send created events
      //
      sendEvents(eproxy, events);

      // return the status of the threshold check
      //
      return THRESHOLDING_SUCCEEDED;

    } catch (ThresholdingException e) {
      log().error(e.getMessage());
      return e.getFailureCode();
    } catch (EventProxyException e) {
      log().error("check: Failed sending threshold events via event proxy...", e);
      return THRESHOLDING_FAILED;
    }
  }