示例#1
0
        public Device(
            IRemoteDeviceFactory remoteDeviceFactory,
            IMetaPubSub metaMessenger,
            DeviceDTO dto)
        {
            _remoteDeviceFactory = remoteDeviceFactory;
            _metaMessenger       = metaMessenger;

            PropertyChanged += Device_PropertyChanged;

            _metaMessenger.TrySubscribeOnServer <HideezMiddleware.IPC.Messages.DeviceConnectionStateChangedMessage>(OnDeviceConnectionStateChanged);
            _metaMessenger.TrySubscribeOnServer <HideezMiddleware.IPC.Messages.DeviceInitializedMessage>(OnDeviceInitialized);
            _metaMessenger.TrySubscribeOnServer <HideezMiddleware.IPC.Messages.DeviceFinishedMainFlowMessage>(OnDeviceFinishedMainFlow);
            _metaMessenger.TrySubscribeOnServer <HideezMiddleware.IPC.Messages.DeviceOperationCancelledMessage>(OnOperationCancelled);
            _metaMessenger.TrySubscribeOnServer <HideezMiddleware.IPC.Messages.DeviceProximityChangedMessage>(OnDeviceProximityChanged);
            _metaMessenger.TrySubscribeOnServer <HideezMiddleware.IPC.Messages.DeviceBatteryChangedMessage>(OnDeviceBatteryChanged);
            _metaMessenger.TrySubscribeOnServer <HideezMiddleware.IPC.Messages.DeviceProximityLockEnabledMessage>(OnDeviceProximityLockEnabled);
            _metaMessenger.TrySubscribeOnServer <HideezMiddleware.IPC.Messages.LockDeviceStorageMessage>(OnLockDeviceStorage);
            _metaMessenger.TrySubscribeOnServer <HideezMiddleware.IPC.Messages.LiftDeviceStorageLockMessage>(OnLiftDeviceStorageLock);
            _metaMessenger.Subscribe <SendPinMessage>(OnPinReceived);
            _metaMessenger.Subscribe <SessionSwitchMessage>(OnSessionSwitch);

            RegisterDependencies();

            LoadFrom(dto);
        }
        public DeviceManager(IMetaPubSub metaMessenger, IWindowsManager windowsManager, IRemoteDeviceFactory remoteDeviceFactory)
        {
            _windowsManager      = windowsManager;
            _remoteDeviceFactory = remoteDeviceFactory;
            _metaMessenger       = metaMessenger;

            _metaMessenger.TrySubscribeOnServer <DevicesCollectionChangedMessage>(OnDevicesCollectionChanged);
            _metaMessenger.TrySubscribeOnServer <DeviceConnectionStateChangedMessage>(OnDeviceConnectionStateChanged);

            _metaMessenger.Subscribe <DisconnectedFromServerEvent>(OnDisconnectedFromService, null);
        }
 public DeviceManager(IMetaPubSub metaMessenger, IWindowsManager windowsManager, IRemoteDeviceFactory remoteDeviceFactory, IEnumerable <DeviceDTO> devices)
     : this(metaMessenger, windowsManager, remoteDeviceFactory)
 {
     foreach (var device in devices)
     {
         AddDevice(device);
     }
 }