List of usage examples for org.eclipse.jgit.util SystemReader SystemReader
SystemReader
From source file:com.google.gerrit.testutil.TestTimeUtil.java
License:Apache License
/** * Set the clock step used by {@link com.google.gerrit.common.TimeUtil}. * * @param clockStep amount to increment clock by on each lookup. * @param clockStepUnit time unit for {@code clockStep}. */// w w w. j a v a 2s .c om public static synchronized void setClockStep(long clockStep, TimeUnit clockStepUnit) { checkState(clockMs != null, "call resetWithClockStep first"); clockStepMs = MILLISECONDS.convert(clockStep, clockStepUnit); DateTimeUtils.setCurrentMillisProvider(new MillisProvider() { @Override public long getMillis() { return clockMs.getAndAdd(clockStepMs); } }); SystemReader.setInstance(null); final SystemReader defaultReader = SystemReader.getInstance(); SystemReader r = new SystemReader() { @Override public String getHostname() { return defaultReader.getHostname(); } @Override public String getenv(String variable) { return defaultReader.getenv(variable); } @Override public String getProperty(String key) { return defaultReader.getProperty(key); } @Override public FileBasedConfig openUserConfig(Config parent, FS fs) { return defaultReader.openUserConfig(parent, fs); } @Override public FileBasedConfig openSystemConfig(Config parent, FS fs) { return defaultReader.openSystemConfig(parent, fs); } @Override public long getCurrentTime() { return clockMs.getAndAdd(clockStepMs); } @Override public int getTimezone(long when) { return defaultReader.getTimezone(when); } }; SystemReader.setInstance(r); }