public override bool OnFinish() { try { Cursor.Current = Cursors.WaitCursor; _destinationPanel.Enabled = false; _exportProgressBar.Minimum = 0; _exportProgressBar.Value = 0; _exportProgressBar.Maximum = this.Context.ImportChannels.Count; _exportProgressBar.Visible = true; Application.DoEvents(); using (SchedulerServiceAgent tvSchedulerAgent = new SchedulerServiceAgent()) using (GuideServiceAgent tvGuideAgent = new GuideServiceAgent()) { _channelMembersByName.Clear(); _channelGroupsByName.Clear(); ChannelGroup[] allGroups = tvSchedulerAgent.GetAllChannelGroups(this.Context.ChannelType, false); foreach (ChannelGroup channelGroup in allGroups) { _channelGroupsByName[channelGroup.GroupName] = channelGroup; } int count = 0; foreach (ImportChannelsContext.ImportChannel importChannel in this.Context.ImportChannels) { _exportingFileLabel.Text = importChannel.Channel.DisplayName; Application.DoEvents(); ImportChannel(tvGuideAgent, tvSchedulerAgent, importChannel); _exportProgressBar.Value = ++count; } foreach (string groupName in _channelGroupsByName.Keys) { if (_channelMembersByName.ContainsKey(groupName)) { tvSchedulerAgent.SetChannelGroupMembers( _channelGroupsByName[groupName].ChannelGroupId, _channelMembersByName[groupName].ToArray()); } } Channels.ChannelLinks.Save(); } return(true); } catch (Exception ex) { Cursor.Current = Cursors.Default; MessageBox.Show(this, ex.Message, null, MessageBoxButtons.OK, MessageBoxIcon.Error); _destinationPanel.Enabled = true; _exportProgressBar.Visible = false; } finally { _exportingFileLabel.Text = String.Empty; Cursor.Current = Cursors.Default; } return(false); }
public override bool OnFinish() { try { Cursor.Current = Cursors.WaitCursor; _destinationPanel.Enabled = false; _exportProgressBar.Minimum = 0; _exportProgressBar.Value = 0; _exportProgressBar.Maximum = this.Context.ImportChannels.Count; _exportProgressBar.Visible = true; Application.DoEvents(); using (SchedulerServiceAgent tvSchedulerAgent = new SchedulerServiceAgent()) using (GuideServiceAgent tvGuideAgent = new GuideServiceAgent()) { _channelMembersByName.Clear(); _channelGroupsByName.Clear(); ChannelGroup[] allGroups = tvSchedulerAgent.GetAllChannelGroups(this.Context.ChannelType, false); foreach (ChannelGroup channelGroup in allGroups) { _channelGroupsByName[channelGroup.GroupName] = channelGroup; } int count = 0; foreach (ImportChannelsContext.ImportChannel importChannel in this.Context.ImportChannels) { _exportingFileLabel.Text = importChannel.Channel.DisplayName; Application.DoEvents(); ImportChannel(tvGuideAgent, tvSchedulerAgent, importChannel); _exportProgressBar.Value = ++count; } foreach (string groupName in _channelGroupsByName.Keys) { if (_channelMembersByName.ContainsKey(groupName)) { tvSchedulerAgent.SetChannelGroupMembers( _channelGroupsByName[groupName].ChannelGroupId, _channelMembersByName[groupName].ToArray()); } } Channels.ChannelLinks.Save(); } return true; } catch (Exception ex) { Cursor.Current = Cursors.Default; MessageBox.Show(this, ex.Message, null, MessageBoxButtons.OK, MessageBoxIcon.Error); _destinationPanel.Enabled = true; _exportProgressBar.Visible = false; } finally { _exportingFileLabel.Text = String.Empty; Cursor.Current = Cursors.Default; } return false; }