private Result ProcessDisconnect(Tokenizer tokenizer, Channel channel) { if (!channel.IsClosed) { channel.Disconnect(); _channel.Remove(channel.Id); } return(new Result()); }
private Result ProcessShutdown(Tokenizer tokenizer, Channel channel) { channel.CheckAdmin(); // don't disconnect system user; need it to save database for (int i = 1; i < _channel.Count; i++) { Channel d = (Channel)_channel[i]; if (d != null) { d.Disconnect(); } } _channel.Clear(); string token = tokenizer.GetString(); switch (token) { case "IMMEDIATELY": Close(-1); break; case "COMPACT": Close(1); break; default: tokenizer.Back(); Close(0); break; } ProcessDisconnect(tokenizer, channel); return(new Result()); }
public void close(Channel myChannel) { this.db.Execute("shutdown", myChannel); myChannel.Disconnect(); }
private Result ProcessDisconnect(Tokenizer tokenizer, Channel channel) { if (!channel.IsClosed) { channel.Disconnect(); _channel.Remove(channel.Id); } return new Result(); }