int port = args.getDynamicPort();
BootClusterConfig cluster = resin.findCluster(clusterId);
if (cluster == null) {
throw new ConfigException(L().l("'{0}' is an unknown cluster",
clusterId));
}
server = cluster.createServer();
serverId = args.getDynamicServerId();
server.setId(serverId);
server.setAddress(address);
server.setPort(port);
cluster.addServer(server);
}
else {
WatchdogClient client = resin.findClient(serverId);
if (client != null)
server = client.getConfig();
else
server = resin.findServer(serverId);
}
WatchdogChild watchdog = _watchdogMap.get(server.getId());
if (watchdog != null) {
if (watchdog.isActive()) {
throw new ConfigException(L().l("server '{0}' cannot be started because a running instance already exists. stop or restart the old server first.",
server.getId()));
}
watchdog = _watchdogMap.remove(server.getId());