コード例 #1
0
        public void Disconnect(DisconnectRequest disconnectRequest)
        {
            //removing client from callbacks:
            IFlightControlCallback callback = OperationContext.Current.GetCallbackChannel <IFlightControlCallback>();

            callbacks.Remove(callback);
        }
コード例 #2
0
        public ConnectResponse Connect(ConnectRequest connectRequest)
        {
            //adding client to callbacks:
            IFlightControlCallback callback = OperationContext.Current.GetCallbackChannel <IFlightControlCallback>();

            if (!callbacks.Contains(callback))
            {
                callbacks.Add(callback);
                //var res = new ConnectResponse { IsSuccess = true, Message = "connection succeded", Airport = serviceLogic.GetAirportState() };
                //Debug.WriteLine(res.IsSuccess + " " + res.Message);
                //returning that the login succeeded and the airport current state:
                return(new ConnectResponse {
                    IsSuccess = true, Message = "connection succeded", Airport = serviceLogic.GetAirportState()
                });
            }
            else // client didnt added to callbacks - connection failed:
            {
                return(new ConnectResponse {
                    IsSuccess = false, Message = "connection failed", Airport = null
                });
            }
        }