public FireDepartmentMetrics merge(FireDepartmentMetrics other)
  {
    Preconditions.checkNotNull(other, "Cannot merge a null FireDepartmentMetrics");
    FireDepartmentMetrics otherSnapshot = other.snapshot();
    processedCount.addAndGet(otherSnapshot.processed());
    processedWithErrorsCount.addAndGet(otherSnapshot.processedWithErrors());
    thrownAwayCount.addAndGet(otherSnapshot.thrownAway());
    rowOutputCount.addAndGet(otherSnapshot.rowOutput());
    unparseableCount.addAndGet(otherSnapshot.unparseable());
    dedupCount.addAndGet(otherSnapshot.dedup());
    numPersists.addAndGet(otherSnapshot.numPersists());
    persistTimeMillis.addAndGet(otherSnapshot.persistTimeMillis());
    persistBackPressureMillis.addAndGet(otherSnapshot.persistBackPressureMillis());
    failedPersists.addAndGet(otherSnapshot.failedPersists());
    failedHandoffs.addAndGet(otherSnapshot.failedHandoffs());
    mergeTimeMillis.addAndGet(otherSnapshot.mergeTimeMillis());
    mergeCpuTime.addAndGet(otherSnapshot.mergeCpuTime());
    persistCpuTime.addAndGet(otherSnapshot.persistCpuTime());
    handOffCount.addAndGet(otherSnapshot.handOffCount());
    sinkCount.addAndGet(otherSnapshot.sinkCount());
    messageMaxTimestamp.set(Math.max(messageMaxTimestamp(), otherSnapshot.messageMaxTimestamp()));
    messageGap.set(Math.max(messageGap(), otherSnapshot.messageGap()));
    return this;
  }
public FireDepartmentMetrics merge ( FireDepartmentMetrics other ) { Preconditions . checkNotNull ( other , "Cannot merge a null FireDepartmentMetrics" ) ; FireDepartmentMetrics otherSnapshot = other . snapshot ( ) ; processedCount . addAndGet ( otherSnapshot . processed ( ) ) ; processedWithErrorsCount . addAndGet ( otherSnapshot . processedWithErrors ( ) ) ; thrownAwayCount . addAndGet ( otherSnapshot . thrownAway ( ) ) ; rowOutputCount . addAndGet ( otherSnapshot . rowOutput ( ) ) ; unparseableCount . addAndGet ( otherSnapshot . unparseable ( ) ) ; dedupCount . addAndGet ( otherSnapshot . dedup ( ) ) ; numPersists . addAndGet ( otherSnapshot . numPersists ( ) ) ; persistTimeMillis . addAndGet ( otherSnapshot . persistTimeMillis ( ) ) ; persistBackPressureMillis . addAndGet ( otherSnapshot . persistBackPressureMillis ( ) ) ; failedPersists . addAndGet ( otherSnapshot . failedPersists ( ) ) ; failedHandoffs . addAndGet ( otherSnapshot . failedHandoffs ( ) ) ; mergeTimeMillis . addAndGet ( otherSnapshot . mergeTimeMillis ( ) ) ; mergeCpuTime . addAndGet ( otherSnapshot . mergeCpuTime ( ) ) ; persistCpuTime . addAndGet ( otherSnapshot . persistCpuTime ( ) ) ; handOffCount . addAndGet ( otherSnapshot . handOffCount ( ) ) ; sinkCount . addAndGet ( otherSnapshot . sinkCount ( ) ) ; messageMaxTimestamp . set ( Math . max ( messageMaxTimestamp ( ) , otherSnapshot . messageMaxTimestamp ( ) ) ) ; messageGap . set ( Math . max ( messageGap ( ) , otherSnapshot . messageGap ( ) ) ) ; return this ; }
merge other FireDepartmentMetrics, will modify this object's data

@return this object