public async Task <List <Models.User> > GetCart() { UserListHelper helper = UserListHelper.Instance; List <Models.User> list = helper.UserList; return(list); }
private SocketMessage Process(string id, SocketMessage msg) { try { TopicMessage b_msg; switch (msg.Type) { case (byte)Net.Model.MessageType.Leave: UserListHelper.Remove(id); break; case (byte)Net.Model.MessageType.EnqueueRequest: b_msg = SerializeHelper.ProtolBufDeserialize <TopicMessage>(msg.Content); UserListHelper.GetOrAdd(id, b_msg.Topic); TopicQueueHelper.Enqueue(b_msg); return(new SocketMessage((byte)Net.Model.MessageType.EnqueueResponse, null)); case (byte)Net.Model.MessageType.DequeueRequest: b_msg = SerializeHelper.ProtolBufDeserialize <TopicMessage>(msg.Content); UserListHelper.GetOrAdd(id, b_msg.Topic); var data = TopicQueueHelper.Dequque(b_msg.Topic); if (data != null) { return(new SocketMessage((byte)Net.Model.MessageType.DequeueResponse, SerializeHelper.ProtolBufSerialize(data))); } else { var rmsg = new TopicMessage(b_msg.Topic, null); return(new SocketMessage((byte)Net.Model.MessageType.DequeueResponse, SerializeHelper.ProtolBufSerialize(rmsg))); } case (byte)Net.Model.MessageType.Ping: return(new SocketMessage((byte)Net.Model.MessageType.Pong, null)); default: _server.CloseClientSocket(id); break; } } catch (Exception ex) { OnError?.BeginInvoke(id, ex, null, null); } return(null); }