public void Say(string message) { if (string.IsNullOrEmpty(message)) { throw new ArgumentException(Resources.Client_Join_Cannot_be_empty_or_null, "message"); } IMessageCallback messageCallback = new MessageCallback(this._messageStatus); switch (this._roomVersion) { case RoomVersion.Base: RoomPrx room = RoomPrxHelper.checkedCast(this._roomAccess.RoomProxy.ice_context(this._context)); room.begin_Say(message).whenCompleted(messageCallback.SayCallback, messageCallback.FailureCallback); break; case RoomVersion.V1: RoomAdmPrx roomAdm = RoomAdmPrxHelper.checkedCast(this._roomAccess.RoomProxy.ice_context(this._context), "V1"); roomAdm.begin_Say(message).whenCompleted(messageCallback.SayCallback, messageCallback.FailureCallback); break; case RoomVersion.V2: RoomV2Prx roomV2 = RoomV2PrxHelper.checkedCast(this._roomAccess.RoomProxy.ice_context(this._context), "V2"); roomV2.begin_Say(message, DateTime.Now.Ticks).whenCompleted(messageCallback.SayCallback, messageCallback.FailureCallback); break; } }
public void Leave() { try { switch (this._roomVersion) { case RoomVersion.Base: RoomPrx room = RoomPrxHelper.checkedCast(this._roomAccess.RoomProxy.ice_context(this._context)); room.LeaveRoom(); break; case RoomVersion.V1: RoomAdmPrx roomAdm = RoomAdmPrxHelper.checkedCast(this._roomAccess.RoomProxy.ice_context(this._context), "V1"); roomAdm.LeaveRoom(); break; case RoomVersion.V2: RoomV2Prx roomV2 = RoomV2PrxHelper.checkedCast(this._roomAccess.RoomProxy.ice_context(this._context), "V2"); roomV2.LeaveRoom(); break; } } finally { this._jobQueue.Destroy(); this._jobQueue.Join(); this._jobQueue = null; } }
private RoomPrx CreateNewRoomProxies(string nick, string topic, ListenerPrx listener) { RoomI room = new RoomI(topic); room.AddListener(nick, listener); RoomPrx roomPrx = RoomPrxHelper.uncheckedCast(this.Adapter.addWithUUID(room)); RoomAdmI roomAdm = new RoomAdmI(topic); roomAdm.AddListener(nick, listener); RoomAdmTie_ roomAdmTie = new RoomAdmTie_(roomAdm); this.Adapter.addFacet(roomAdmTie, roomPrx.ice_getIdentity(), "V1"); RoomV2I roomV2 = new RoomV2I(topic); roomV2.AddListener(nick, listener); this.Adapter.addFacet(roomV2, roomPrx.ice_getIdentity(), "V2"); this._rooms.Add(topic, roomPrx); return(roomPrx); }
public override RoomAccess Join(string nick, string topic, Ice.Identity listenerIdentity, Ice.Current current) { lock (this) { if (string.IsNullOrEmpty(nick)) { throw new IChatException("Nick cannot be null"); } if (string.IsNullOrEmpty(topic)) { throw new IChatException("Topic cannot be null"); } ListenerPrx listener = ListenerPrxHelper.uncheckedCast(current.con.createProxy(listenerIdentity)); RoomPrx roomProxy = RoomFactory.Instance.GetRoom(nick, topic, listener); Console.WriteLine("Nick: {0}, topic: {1}, listenerIdentity: {2}, {3}", nick, topic, listenerIdentity.name, listenerIdentity.category); return(new RoomAccess(roomProxy, topic)); } }
public static void write__(IceInternal.BasicStream os__, RoomPrx v__) { os__.writeProxy(v__); }