package com.ldbc.driver.control; import com.ldbc.driver.temporal.TemporalUtil; import com.ldbc.driver.temporal.TimeSource; public class LocalControlService implements ControlService { private final TemporalUtil temporalUtil = new TemporalUtil(); private final DriverConfiguration configuration; private final LoggingServiceFactory loggingServiceFactory; private final TimeSource timeSource; private long workloadStartTimeAsMilli; public LocalControlService( long workloadStartTimeAsMilli, DriverConfiguration configuration, LoggingServiceFactory loggingServiceFactory, TimeSource timeSource ) { this.workloadStartTimeAsMilli = workloadStartTimeAsMilli; this.configuration = configuration; this.loggingServiceFactory = loggingServiceFactory; this.timeSource = timeSource; } @Override public DriverConfiguration configuration() { return configuration; } @Override public LoggingServiceFactory loggingServiceFactory() { return loggingServiceFactory; } @Override public TimeSource timeSource() { return timeSource; } @Override public void setWorkloadStartTimeAsMilli( long workloadStartTimeAsMilli ) { this.workloadStartTimeAsMilli = workloadStartTimeAsMilli; } @Override public long workloadStartTimeAsMilli() { return workloadStartTimeAsMilli; } @Override public void shutdown() { } @Override public String toString() { return "Workload Start Time:\t" + temporalUtil.milliTimeToDateTimeString( workloadStartTimeAsMilli ) + "\n" + configuration.toString(); } }