package org.rakam.report.realtime;
import io.airlift.configuration.Config;
import io.airlift.units.Duration;
import io.airlift.units.MinDuration;
public class RealTimeConfig {
private boolean enabled;
private Duration windowInterval = Duration.valueOf("120s");
private Duration slideInterval = Duration.valueOf("5s");
@Config("real-time.enabled")
public RealTimeConfig setRealtimeModuleEnabled(boolean enabled) {
this.enabled = enabled;
return this;
}
public boolean isRealtimeModuleEnabled() {
return enabled;
}
public Duration getWindowInterval()
{
return windowInterval;
}
@Config("realtime.window.interval")
public RealTimeConfig setWindowInterval(String windowInterval)
{
this.windowInterval = Duration.valueOf(windowInterval);
return this;
}
@MinDuration("1s")
public Duration getSlideInterval()
{
return slideInterval;
}
@Config("realtime.window.interval")
public RealTimeConfig setSlideInterval(String slideInterval)
{
this.slideInterval = Duration.valueOf(slideInterval);
return this;
}
}