public async Task AddAsync(WOLTarget target) { using (var conn = await OpenAppServiceAsync()) { if (conn == null) { return; } var values = new ValueSet { [nameof(Keys.Command)] = nameof(AppCommands.Add), [nameof(Keys.PhysicalAddress)] = target.Physical, [nameof(Keys.IpAddress)] = target.Address, [nameof(Keys.PortNo)] = target.Port, [nameof(Keys.DelaySec)] = target.Delay, [nameof(Keys.Comment)] = target.Comment }; var response = await conn.SendMessageAsync(values); if (response.Status == AppServiceResponseStatus.Success) { var targetListStr = response.Message[nameof(Keys.TargetList)] as string; RefreshTargetList(targetListStr); var resourceLoader = ResourceLoader.GetForCurrentView(); var status = response.Message[nameof(Keys.StatusMessage)] as string; if (!string.IsNullOrEmpty(status)) { StatusMessage = resourceLoader.GetString(status); } } } }
public TargetEditorPageViewModel(TargetEditorModel targetEditor) { WOLTargets = new ObservableCollection <WOLTarget>(); EditorModel = targetEditor; AddMacCommand = new DelegateCommand(async() => { WOLTarget target = new WOLTarget() { Physical = PhysicalToEdit, Comment = CommentToEdit, Address = AddressToEdit, Port = PortToEdit, Delay = DelayToEdit }; await EditorModel.AddAsync(target); }); RemoveMacCommand = new DelegateCommand(async() => { WOLTarget target = new WOLTarget() { Physical = PhysicalToEdit }; await EditorModel.RemoveAsync(target); }); WakeNowCommand = new DelegateCommand(async() => { WOLTarget target = new WOLTarget() { Physical = PhysicalToEdit, Address = AddressToEdit, Port = PortToEdit }; await EditorModel.WakeNowAsync(target); }); }
public async Task RemoveAsync(WOLTarget target) { using (var conn = await OpenAppServiceAsync()) { if (conn == null) { return; } var values = new ValueSet { [nameof(Keys.Command)] = nameof(AppCommands.Remove), [nameof(Keys.PhysicalAddress)] = target.Physical, }; var response = await conn.SendMessageAsync(values); if (response.Status == AppServiceResponseStatus.Success) { var targetListStr = response.Message[nameof(Keys.TargetList)] as string; RefreshTargetList(targetListStr); } } }