Ejemplo n.º 1
0
        protected void serverStateChanged(bool added, IDevice2 dev)
        {
            if (_discoveryServiceRunning)
            {
                Message msg = new ServerInformation(Name, _devices.GetEnumerator());

                for (int i = 0; i < _connections.Count; i++)
                {
                    Connection c = (Connection)_connections[i];

                    if (!c.IsConnected())
                    {
                        _connections.RemoveAt(i);
                        i--;
                        continue;
                    }

                    if (c.LocalPort == SERVER_INFO_PORT)
                    {
                        c.Send(msg);
                    }
                }
            }
            else
            {
                if (dev == null)
                {
                    return;
                }

                Message msg;
                if (added)
                {
                    msg = new RegisterDevice(dev.Name, dev.Port);
                }
                else
                {
                    msg = new UnregisterDevice(dev.Port);
                }

                try
                {
                    _discoveryConnection.Send(msg);
                }
                catch (Exception)
                {
                    // problem sending message to discovery service
                }
            }
        }
 private void OnUnregisterDevice(UnregisterDevice msg)
 {
     _sender = Sender;
     Become(Unregistered);
 }
Ejemplo n.º 3
0
 private void OnUnregisterDevice(UnregisterDevice msg)
 {
     Become(Unregistered);
 }