1
0
tinklu-paslaugos/Lab1/ChatRoom/ChatRoomState.cs

45 lines
815 B
C#

namespace ChatRoom;
public class Client
{
public int id;
public string name;
public int strikes = 0;
public DateTime? blockedUntil = null;
}
public enum MessageStatus
{
WaitingForModerator,
GivenToModerator,
Approved,
Rejected
}
public class Message
{
public int id;
public int clientId;
public string contents;
public bool needsToBeCensored;
public MessageStatus status = MessageStatus.WaitingForModerator;
}
public class ChatRoomState
{
/// <summary>
/// Access lock.
/// </summary>
public readonly object accessLock = new object();
/// <summary>
/// Last unique ID value generated.
/// </summary>
public int lastUniqueId;
public List<Client> clients = new List<Client>();
public List<Message> messages = new List<Message>();
}