package camelinaction; import org.apache.camel.api.management.mbean.ManagedRouteMBean; import org.slf4j.Logger; import org.slf4j.LoggerFactory; /** * A reported to report which of the current inflight exchanges has been taking the longest time (the oldest). */ public class OldestDurationReporter implements Runnable { private static final Logger LOG = LoggerFactory.getLogger(OldestDurationReporter.class); private final ManagedRouteMBean route; public OldestDurationReporter(ManagedRouteMBean route) { this.route = route; } @Override public void run() { Long duration = route.getOldestInflightDuration(); if (duration != null) { LOG.info("Oldest inflight duration {} ms.", duration); } else { LOG.info("No inflight messages"); } } }