this.configStore = configStore;
this.serverInfo = serverInfo;
this.threadPool = threadPool;
asyncKeys = new ConcurrentHashMap<Object, DownloadResults>();
this.serverInstanceDatas = serverInstanceDatas;
if (artifactManager == null) artifactManager = new DefaultArtifactManager();
setUpServerInstances(serverInstanceDatas, serverInfo, artifactManager, servers, writeableRepo, live);
this.persistentConfigurationLists = persistentConfigurationLists == null ? Collections.<PersistentConfigurationList>emptyList() : persistentConfigurationLists;
this.bundleContext = bundleContext;
if (configManager == null) {
throw new IllegalArgumentException("No default server instance set up");