public static TimeRangeTracker create(Type type, TimeRangeTracker trt) {
    switch (type) {
      case NON_SYNC:
        return new NonSyncTimeRangeTracker(trt);
      case SYNC:
        return new SyncTimeRangeTracker(trt);
      default:
        throw new UnsupportedOperationException("The type:" + type + " is unsupported");
    }
  }
Stores minimum and maximum timestamp values, it is [minimumTimestamp, maximumTimestamp] in
interval notation. Use this class at write-time ONLY. Too much synchronization to use at read
time Use {@link TimeRange} at read time instead of this. See toTimeRange() to make TimeRange to
use. MemStores use this class to track minimum and maximum timestamps. The TimeRangeTracker made
by the MemStore is passed to the StoreFile for it to write out as part a flush in the the file
metadata. If no memstore involved -- i.e. a compaction -- then the StoreFile will calculate its
own TimeRangeTracker as it appends. The StoreFile serialized TimeRangeTracker is used at read
time via an instance of {@link TimeRange} to test if Cells fit the StoreFile TimeRange.
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/TimeRangeTracker.java