log = new ActivityLog(arguments.logWindowSizeLines);
this.configManager = new ConfigManager(this, configProvider, arguments.configCheckMs);
this.additionalUITabs = (additionalUITabs != null) ? ImmutableList.copyOf(additionalUITabs) : ImmutableList.<UITab>of();
this.processOperations = new StandardProcessOperations(this);
monitorRunningInstance = new MonitorRunningInstance(this);
cleanupManager = new CleanupManager(this);
indexCache = new IndexCache(log);
processMonitor = new ProcessMonitor(this);
autoInstanceManagement = new RepeatingActivityImpl(log, activityQueue, QueueGroups.MAIN, new AutomaticInstanceManagement(this), getAutoInstanceManagementPeriod());
remoteInstanceRequestClient = new RemoteInstanceRequestClientImpl(arguments.remoteConnectionConfiguration);