/// <summary> /// Create new server /// </summary> /// <param name="slots"></param> /// <param name="port">if port == 0 then random port will be used</param> /// <returns></returns> public IVirtualServer CreateServer(int slots = 10, int port = 0) { // add server on remote side var server = _meta.newServer(); var vs = new VirtualServer(server, this); // setup server vs.Port = (port == 0) ? GetNextAvailablePort() : port; vs.Slots = slots; // add to cache _servers.Add(vs.Id, vs); return(vs); }