12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- using fis.media.Library.Media.EventArgs;
- using fis.media.Library.Media.Members;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace fis.media.Library.Media.Rooms
- {
- public abstract class Room : IRoom
- {
- protected Room(RoomTypeEnum roomTypeEnum)
- {
- RoomTypeEnum= roomTypeEnum;
- }
- public string RoomId { get; set; }
- public List<AbstractMember> Members { get; set; }
- public RoomTypeEnum RoomTypeEnum { get; }
- public event EventHandler<ErrorArgs> ErrorAccurred;
- public event Action OnRoomClosed;
- public event EventHandler<AbstractMember> MemberJoined;
- public event EventHandler<AbstractMember> MemberLeaved;
- public virtual void Close()
- {
- Dispose();
- }
- public void Dispose()
- {
- DoDispose();
- }
- protected virtual bool DoDispose()
- {
- return true;
- }
- public virtual int EnterRoom(AbstractMember member)
- {
- Members.Add(member);
- return 1;
- }
- public virtual int KickMember(AbstractMember member)
- {
- throw new NotImplementedException();
- }
- }
- }
|