public void FillSessionStatus(MqttSessionStatus status) { status.ClientId = ClientId; status.CreatedTimestamp = _createdTimestamp; status.PendingApplicationMessagesCount = ApplicationMessagesQueue.Count; status.Items = Items; }
public Task <IList <IMqttSessionStatus> > GetSessionStatusAsync() { var result = new List <IMqttSessionStatus>(); lock (_clientSessions) { foreach (var session in _clientSessions.Values) { var sessionStatus = new MqttSessionStatus(session, this); session.FillSessionStatus(sessionStatus); result.Add(sessionStatus); } } return(Task.FromResult((IList <IMqttSessionStatus>)result)); }
public Task <IList <IMqttClientStatus> > GetClientStatusAsync() { var result = new List <IMqttClientStatus>(); lock (_clientConnections) { foreach (var connection in _clientConnections.Values) { var clientStatus = new MqttClientStatus(connection); connection.FillClientStatus(clientStatus); var sessionStatus = new MqttSessionStatus(connection.Session, this); connection.Session.FillSessionStatus(sessionStatus); clientStatus.Session = sessionStatus; result.Add(clientStatus); } } return(Task.FromResult((IList <IMqttClientStatus>)result)); }