xenadmin/XenAdmin/Controls
Danilo Del Busso bba9f43c31
CA-376887: Refactor thread management for ArchiveMaintainer (#3148)
* Tidy up `ArchiveMaintainer`: use naming conventions
* Tidy up `ArchiveMaintainer`: use `var` when possible
* Tidy up `ArchiveMaintainer`: fix typos
* Tidy up `ArchiveMaintainer`: move action methods in own region
* Tidy up `ArchiveMaintainer`: apply code formatting
* Tidy up `ArchiveMaintainer`: remove unused constant/using
* Tidy up `ArchiveMaintainer`: group methods into regions
* Tidy up `ArchiveMaintainer`: remove xmldocs
* Tidy up `ArchiveMaintainer`: miscellaneous changes
* Tidy up `ArchiveMaintainer`: move `NextArchiveDown` to correct `region`
* CA-376887: Use multiple threads to load performance tab data
This commit removes the ad-hoc use of `Thread` and instead relies on `ThreadPool` and `CancellationToken`s to handle multi-threading. To achieve this, `ArchiveMaintainer` instances are now tied to only one `XenObject`. If a user navigates to another Performance tab, a new instance of `ArchiveMaintainer` is used. This enables XenCenter to quietly cancel ongoing data fetching operations, and start a new one without affecting the UI. UI elements are simply updated to point to the new `ArchiveMaintainer` while the old one is being  closed.
Please note that follow up commits to clean up `ArchiveMaintiner` and this implementation are coming. They have been separated to make reviews easier
* CA-376887: Move initial load logic to separate method in `ArchiveMaintainer`
* CA-376887: Rename `Update` to `StartUpdateLoop` in `ArchiveMaintainer`
* CA-376887: Fix use of `Dispose` in `PerformancePage` and collapse `Stop`/`Pause` into one method
* CA-376887: Remove unused `FirstTime` variable
* Tidy up `ArchiveMaintainer`: use `switch` when possible and improve logging
* Tidy up `ArchiveMaintainer`: Move variables inline
* Tidy up `ArchiveMaintainer`: Standardize fields/properties
* Tidy up `ArchiveMaintainer`: Normalize whitespace
* CA-376887: Ensure only one thread is spawned for each `ArchiveMaintainer`
- Ensures resources are disposed of
- Fixes issues whereby quickly starting and stopping threads for the same `XenObject` `ArchiveMantainer` would cause threads from not exiting
* Improve formatting and whitespace in `ArchiveMaintainer`
* Improve logging of exceptions in `ArchiveMaintainer:Get`
* Fix `ServerNow` calls in `ArchiveMaintainer`
* Deregister `ArchiveMaintainer` events when a new one is reassigned.
Also rename methods
* Apply code review suggestions

Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
2023-09-07 10:03:43 +01:00
..
AD Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
Ballooning CA-375532, CA-336510, and CP-41825: Add warnings when user selects too many vCPUs (#3119) 2023-06-08 11:24:39 +01:00
CheckableDataGridView CP-43000: Separate support and license warnings in License Manager 2023-07-19 15:54:19 +01:00
ComboBoxes More fixes including CA-381728, CA-381618, CA-381225 (#3205) 2023-08-21 13:35:49 +01:00
Common Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
ConsoleTab Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
CustomDataGraph CA-376887: Refactor thread management for ArchiveMaintainer (#3148) 2023-09-07 10:03:43 +01:00
CustomGridView Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
CustomListPanel Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
DataGridViewEx Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
Folders Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
GPU Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
MainWindowControls CA-380738 and other icon fixes: 2023-08-09 13:53:21 +01:00
NetworkingTab Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
SummaryPanel CP-43000: Rename IsummaryPanelView to ISummaryPanelView 2023-07-19 15:54:25 +01:00
Tags Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
TreeViews Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
Wlb Stop retrieving values from Messages.resx by passing hardcoded strings to the Messages.ResourceManager. 2023-08-29 20:57:21 +01:00
XenSearch Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
AffinityPicker.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
AffinityPicker.Designer.cs Fixes issue where the Finish page of the NewVM wizard was not showing the selected home server correctly. 2022-10-07 09:19:10 +01:00
AffinityPicker.ja.resx L10N : Translation Updates 2019-06-09 17:04:28 +01:00
AffinityPicker.resx
AffinityPicker.zh-CN.resx L10N : Dundee translation checkins Iteration 01 2016-03-21 16:45:35 +05:30
BondDetails.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
BondDetails.Designer.cs Reduced accessibility of controls to private. Moved some of the wizard cancelling 2019-01-08 12:01:46 +00:00
BondDetails.ja.resx L10N : Dundee translation checkins Iteration 01 2016-03-21 16:45:35 +05:30
BondDetails.resx CA-188553: [PAR-80] Creating a VLAN with MTU 9000 should be disabled 2015-12-21 18:09:48 +00:00
BondDetails.zh-CN.resx L10N : Translation updates and bug fixes 2017-07-19 15:09:10 +05:30
BootOrderListBox.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
ChevronButton.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
ChevronButton.Designer.cs CA-136768: Fixed bad layout of buttons at the top of the snapshots tab page. Also fixed text alignment on the chevron button. 2016-07-20 00:04:06 +01:00
ChevronButton.ja.resx L10N: Ely:Translation check-ins 2016-09-15 16:47:31 +05:30
ChevronButton.resx CA-136768: Fixed bad layout of buttons at the top of the snapshots tab page. Also fixed text alignment on the chevron button. 2016-07-20 00:04:06 +01:00
ChevronButton.zh-CN.resx L10N: Ely:Translation check-ins 2016-09-15 16:47:31 +05:30
ChevronToggleButton.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
ClientIdControl.cs CP-43265: Added new dialog to configure updates for servers. 2023-07-28 09:36:54 +01:00
ClientIdControl.Designer.cs CP-41474: Added setting on the Options dialog to import a client ID for downloading hotfixes for LCM servers. 2023-06-13 14:48:23 +01:00
ClientIdControl.ja.resx CP-41474: Added setting on the Options dialog to import a client ID for downloading hotfixes for LCM servers. 2023-06-13 14:48:23 +01:00
ClientIdControl.resx CP-41474: Added setting on the Options dialog to import a client ID for downloading hotfixes for LCM servers. 2023-06-13 14:48:23 +01:00
ClientIdControl.zh-CN.resx CP-41474: Added setting on the Options dialog to import a client ID for downloading hotfixes for LCM servers. 2023-06-13 14:48:23 +01:00
ColorsHelper.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
ColorsHelper.Designer.cs
ColorsHelper.ja.resx L10N:Translations check-ins 2017-01-12 13:22:48 +00:00
ColorsHelper.resx
ColorsHelper.zh-CN.resx L10N:Translations check-ins 2017-01-06 12:46:19 +00:00
ConnectionWrapperWithMoreStuff.cs CP-43102: Removed Dundee code. 2023-06-13 14:48:23 +01:00
ConsolePanel.cs Renamed method to match C# conventions. 2023-08-03 13:46:52 +01:00
ConsolePanel.Designer.cs Fixed issue where the error message was not displayed if connection to the host console was not possible. 2016-07-03 17:45:49 +01:00
ConsolePanel.ja.resx L10N: Ely:Translation check-ins 2016-09-15 16:47:31 +05:30
ConsolePanel.resx Fixed issue where the error message was not displayed if connection to the host console was not possible. 2016-07-03 17:45:49 +01:00
ConsolePanel.zh-CN.resx L10N: Ely:Translation check-ins 2016-09-15 16:47:31 +05:30
CustomTreeNode.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
CustomTreeView.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
CustomTreeView.Designer.cs
CustomTreeView.ja.resx L10N : Dundee translation checkins Iteration 01 2016-03-21 16:45:35 +05:30
CustomTreeView.resx
CustomTreeView.zh-CN.resx L10N : Dundee translation checkins Iteration 01 2016-03-21 16:45:35 +05:30
DataGridViewDropDownSplitButtonCell.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
DataGridViewEnableableComboBoxCell.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
DataGridViewTextAndImageCell.cs CP-43266: Added new notifications page to list updates from CDN. 2023-07-31 11:33:25 +01:00
DateTimeMinutes15.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
DecentGroupBox.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
DeprecationBanner.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
DeprecationBanner.Designer.cs Use the DEPRECATION_URL as the default value for the Details link of the DeprecationBanner 2021-09-23 10:44:43 +01:00
DeprecationBanner.ja.resx L10N : Dundee translation checkins Iteration 01 2016-03-21 16:45:35 +05:30
DeprecationBanner.resx
DeprecationBanner.zh-CN.resx L10N : Dundee translation checkins Iteration 01 2016-03-21 16:45:35 +05:30
DiskSpinner.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
DiskSpinner.Designer.cs CP-29522, CA-302477: Added TB option to the NumericUpdown of the NewDiskDialog and fixed validation on the VDISizeLocationPage. 2019-10-14 09:24:36 +01:00
DiskSpinner.ja.resx CP-29522, CA-302477: Added TB option to the NumericUpdown of the NewDiskDialog and fixed validation on the VDISizeLocationPage. 2019-10-14 09:24:36 +01:00
DiskSpinner.resx Corrected message and tab indices. 2019-10-14 09:24:36 +01:00
DiskSpinner.zh-CN.resx CP-29522, CA-302477: Added TB option to the NumericUpdown of the NewDiskDialog and fixed validation on the VDISizeLocationPage. 2019-10-14 09:24:36 +01:00
DoubleBufferedListView.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
DoubleBufferedPanel.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
DoubleBufferedPanel.Designer.cs
DropDownButton.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
DropDownButton.Designer.cs
DropDownButton.ja.resx L10N : Dundee translation checkins Iteration 01 2016-03-21 16:45:35 +05:30
DropDownButton.resx
DropDownButton.zh-CN.resx L10N : Dundee translation checkins Iteration 01 2016-03-21 16:45:35 +05:30
EmptyPanel.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
EmptyPanel.Designer.cs
FilterDatesToolStripDropDownButton.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
FilterLocationToolStripDropDownButton.cs CP-43266: Added new notifications page to list updates from CDN. 2023-07-31 11:33:25 +01:00
FilterSeveritiesToolStripDropDownButton.cs CP-43266: Added new notifications page to list updates from CDN. 2023-07-31 11:33:25 +01:00
FilterStatusToolStripDropDownButton.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
FlickerFreeListBox.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
FlickerFreePanel.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
FlickerFreePanel.Designer.cs
GradientPanel.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
HaNtolControl.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
HaNtolIndicator.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
HaNtolIndicator.Designer.cs CA-294292: Layout modifications to fix error message truncation issues. 2018-09-27 12:43:04 +01:00
HaNtolIndicator.ja.resx L10N: Translation updates along with Interface resync 2018-09-28 14:00:14 +01:00
HaNtolIndicator.resx CA-294292: Layout modifications to fix error message truncation issues. 2018-09-27 12:43:04 +01:00
HaNtolIndicator.zh-CN.resx L10N: Translation updates along with Interface resync 2018-09-28 14:00:14 +01:00
HaNtolIndicatorSimple.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
HaNtolIndicatorSimple.Designer.cs
HaNtolIndicatorSimple.ja.resx L10N : Resx resync and Translation Updates 2022-01-05 11:38:40 +00:00
HaNtolIndicatorSimple.resx CP-31105: Replaced the hardcoded name patterns in the resource files with format placeholders. 2021-03-31 11:50:32 +01:00
HaNtolIndicatorSimple.zh-CN.resx L10N : Resx resync and Translation Updates 2022-01-05 11:38:40 +00:00
HelpButton.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
HelpButton.Designer.cs
HelpButton.ja.resx L10N:Translations check-ins 2017-01-06 12:46:19 +00:00
HelpButton.resx
HelpButton.zh-CN.resx L10N:Translations check-ins 2017-01-06 12:46:19 +00:00
ListViewColumnSorter.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
ListViewEx.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
LunPerVdiPicker.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
LunPerVdiPicker.Designer.cs
LunPerVdiPicker.ja.resx L10N : Dundee translation checkins Iteration 01 2016-03-21 16:45:35 +05:30
LunPerVdiPicker.resx
LunPerVdiPicker.zh-CN.resx L10N : Dundee translation checkins Iteration 01 2016-03-21 16:45:35 +05:30
MenuStripEx.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
MultipleDvdIsoList.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
MultipleDvdIsoList.Designer.cs Fixes to the OO design of ISODropDownBox and CHChanger classes. Register template events on the Page_InstalaltionMedia. 2021-05-21 00:39:03 +01:00
MultipleDvdIsoList.ja.resx L10N : CA-207272 truncation issue fix 2019-07-23 11:27:21 +01:00
MultipleDvdIsoList.resx Fixed regression introduced in previous commit. Also, the MultipleDvdIsoList on the 2016-07-06 08:55:28 +01:00
MultipleDvdIsoList.zh-CN.resx L10N : CA-207272 truncation issue fix 2019-07-23 11:27:21 +01:00
NativeConstants.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
NonReopeningContextMenuStrip.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
PanelNoFocusScroll.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
PanelWithBorder.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
PDSection.cs CA-380723: Do not allow sync if an update repo is not configured. 2023-08-07 15:15:38 +01:00
PDSection.Designer.cs CA-380723: Do not allow sync if an update repo is not configured. 2023-08-07 15:15:38 +01:00
PDSection.ja.resx L10N : translation update and Resx resync 2019-05-28 21:53:56 +01:00
PDSection.resx Added option for three columns on the GeneralTabPage panels. Refactored methods adding entries. 2023-07-19 15:54:13 +01:00
PDSection.zh-CN.resx L10N : translation update and Resx resync 2019-05-28 21:53:56 +01:00
PoolHostPicker.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
PoolHostPicker.Designer.cs CP-19607: More event handlers that needed to be deregistered 2017-01-31 14:35:59 +00:00
PoolHostPicker.ja.resx L10N : Dundee translation checkins Iteration 01 2016-03-21 16:45:35 +05:30
PoolHostPicker.resx
PoolHostPicker.zh-CN.resx L10N : Dundee translation checkins Iteration 01 2016-03-21 16:45:35 +05:30
PvsCacheStorageRow.cs Show update status for pools and hosts on the General tabPage: 2023-07-31 11:33:25 +01:00
PvsCacheStorageRow.Designer.cs CA-235381: XenCenter should not allow users to edit the PVS cache storage if it is in use 2016-12-13 11:09:23 +00:00
PvsCacheStorageRow.ja.resx L10N:Translations check-ins 2016-12-21 16:20:30 +00:00
PvsCacheStorageRow.resx CA-235381: XenCenter should not allow users to edit the PVS cache storage if it is in use 2016-12-13 11:09:23 +00:00
PvsCacheStorageRow.zh-CN.resx L10N:Translations check-ins 2016-12-21 16:20:30 +00:00
SectionHeaderLabel.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
SectionHeaderLabel.Designer.cs
ShadowPanel.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
ShadowPanel.ja.resx L10N:Translations check-ins 2016-12-21 16:20:30 +00:00
ShadowPanel.resx
ShadowPanel.zh-CN.resx L10N:Translations check-ins 2016-12-21 16:20:30 +00:00
SimpleProgressBar.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
SimpleProgressBar.Designer.cs
SmartScrollTextBox.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
SnapshotTreeView.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
SnapshotTreeView.designer.cs
SnapshotTreeView.ja.resx L10N:Translations check-ins 2016-12-21 16:20:30 +00:00
SnapshotTreeView.resx
SnapshotTreeView.zh-CN.resx L10N:Translations check-ins 2016-12-21 16:20:30 +00:00
SpinnerIcon.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
SRListBox.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
SrPicker.cs CA-375173: Create the VDI and VBD records before closing the new disk dialog. Also: 2023-02-28 15:36:13 +00:00
SrPickerItem.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
ToolStripEx.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
ToolTipContainer.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
ToolTipContainer.Designer.cs
ToolTipContainer.ja.resx L10N : Dundee translation checkins Iteration 01 2016-03-21 16:45:35 +05:30
ToolTipContainer.resx
ToolTipContainer.zh-CN.resx L10N : Dundee translation checkins Iteration 01 2016-03-21 16:45:35 +05:30
TransparentPanel.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
TransparentTrackBar.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
TransparentTrackBar.Designer.cs
TransparentTrackBar.ja.resx L10N:Translations check-ins 2016-12-21 16:20:30 +00:00
TransparentTrackBar.resx
TransparentTrackBar.zh-CN.resx L10N : Dundee translation checkins Iteration 01 2016-03-21 16:45:35 +05:30
UpsellPage.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
UpsellPage.Designer.cs CP-15401: Move hidden check out of designer 2016-01-22 17:02:59 +08:00
UpsellPage.ja.resx L10N : Dundee translation checkins Iteration 01 2016-03-21 16:45:35 +05:30
UpsellPage.resx
UpsellPage.zh-CN.resx L10N : Translation Update and Resync 2019-11-11 15:23:40 +00:00
VerticalTabs.cs CP-40842: Remove CIS upload from Server Status Report wizard (#3087) 2023-02-13 13:47:21 +00:00
VisualMenuItem.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
XenTabControl.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
XenTabControl.Designer.cs
XenTabControl.ja.resx L10N:Translations check-ins 2016-12-21 16:20:30 +00:00
XenTabControl.resx
XenTabControl.zh-CN.resx L10N : Dundee translation checkins Iteration 01 2016-03-21 16:45:35 +05:30
XenTabPage.cs More fixes including CA-381728, CA-381618, CA-381225 (#3205) 2023-08-21 13:35:49 +01:00
XenTabPage.Designer.cs
XenTabPage.ja.resx L10N:Translations check-ins 2016-12-21 16:20:30 +00:00
XenTabPage.resx
XenTabPage.zh-CN.resx L10N : Dundee translation checkins Iteration 01 2016-03-21 16:45:35 +05:30