private void processAggregatedMessage(Message aggregatedMessage, Message currentMessage) { long avRunTime = aggregatedMessage.getRunTime() / aggregatedMessage.getRunNum(); long avStartTime = (aggregatedMessage.getStartTime() + (currentMessage.getStartTime() + currentMessage.getRunTime())) / 2; // first message start time + last message end time / 2 Message writenMessage = new Message( aggregatedMessage.getThreadName(), 200, aggregatedMessage.getRunNum(), avStartTime, avRunTime, currentMessage.getConcurrentConnections()); writer.writeStats(writenMessage); // we need to now actually write this averaged value out }