public Shade(string name, ShadesConsumer consumer) { State = ShadeState.Unknown; Name = name; m_Consumer = consumer; m_Consumer.SessionLost += Consumer_SessionLost; m_Consumer.Signals.ErrorReceived += Signals_ErrorReceived; }
public async Task CloseAsync() { // Do nothing if already closed if (State == ShadeState.Closed && State == ShadeState.Closing) { return; } State = ShadeState.Closing; var result = await m_Consumer.CloseAsync(); if (result.Status == AllJoynStatus.Ok) { State = ShadeState.Closed; } else { State = ShadeState.Error; } }
public async Task OpenAsync() { // Do nothing if already open if (State == ShadeState.Open && State == ShadeState.Opening) { return; } State = ShadeState.Opening; var result = await m_Consumer.OpenAsync(); if (result.Status == AllJoynStatus.Ok) { State = ShadeState.Open; } else { State = ShadeState.Error; } }
private async void Signals_ErrorReceived(ShadesSignals sender, ShadesErrorReceivedEventArgs args) { await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.High, () => { State = ShadeState.Error; }); }
public ShadeStateChangedEventArgs(ShadeState shadeState) { ShadeState = shadeState; }