mirror of
https://code.briarproject.org/briar/briar.git
synced 2026-02-12 18:59:06 +01:00
Wrapped the system clock in an interface so it can be replaced in tests.
This commit is contained in:
@@ -2,8 +2,10 @@ package net.sf.briar.api.plugins.duplex;
|
||||
|
||||
import java.util.concurrent.Executor;
|
||||
|
||||
import net.sf.briar.clock.Clock;
|
||||
|
||||
public interface DuplexPluginFactory {
|
||||
|
||||
DuplexPlugin createPlugin(Executor pluginExecutor,
|
||||
DuplexPlugin createPlugin(Executor pluginExecutor, Clock clock,
|
||||
DuplexPluginCallback callback);
|
||||
}
|
||||
|
||||
@@ -2,8 +2,10 @@ package net.sf.briar.api.plugins.simplex;
|
||||
|
||||
import java.util.concurrent.Executor;
|
||||
|
||||
import net.sf.briar.clock.Clock;
|
||||
|
||||
public interface SimplexPluginFactory {
|
||||
|
||||
SimplexPlugin createPlugin(Executor pluginExecutor,
|
||||
SimplexPlugin createPlugin(Executor pluginExecutor, Clock clock,
|
||||
SimplexPluginCallback callback);
|
||||
}
|
||||
|
||||
11
api/net/sf/briar/clock/Clock.java
Normal file
11
api/net/sf/briar/clock/Clock.java
Normal file
@@ -0,0 +1,11 @@
|
||||
package net.sf.briar.clock;
|
||||
|
||||
/**
|
||||
* An interface for time-related system functions that allows them to be
|
||||
* replaced for testing.
|
||||
*/
|
||||
public interface Clock {
|
||||
|
||||
/** @see {@link java.lang.System#currentTimeMillis()} */
|
||||
long currentTimeMillis();
|
||||
}
|
||||
9
api/net/sf/briar/clock/SystemClock.java
Normal file
9
api/net/sf/briar/clock/SystemClock.java
Normal file
@@ -0,0 +1,9 @@
|
||||
package net.sf.briar.clock;
|
||||
|
||||
/** Default clock implementation. */
|
||||
public class SystemClock implements Clock {
|
||||
|
||||
public long currentTimeMillis() {
|
||||
return System.currentTimeMillis();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user