* CP-16922: UI changes to PvsPage to replace the single configure button with a separate enable and disable one, per the design doc
* CP-16922: Intermediate checkin - command + dialog implemented, but PVS page has some layout problems.
* CP-16922: Implement GUI for enabling PVS read caching and marking/unmarking VMs for prepopulation
Fix the broken layout by reverting MainWindow.resx (which shouldn't have changed) back to the previous commit. Also removed duplicate properties button code.
* CP-16922: PVS Page changes, to properly display all VMs (not just ones with proxy), only populating proxy columns if there is a proxy set.
* CP-16922: Use a CommandButton for the enable button, connected to the same command as the VM main menu button, and using the table selection as its selection manager.
* CP-16922: Delete the old enable button click behaviour (because it now has a proper command), was causing the dialog to show up twice
* CP-16922: Properly list VMs by hiding those that should be hidden (in addition to non-VMs, also hide the __gui__ prefix and others covered by Show function). Also fixes a bug in NewVMGroupVMsPage discovered when fixing this - it would show VMs that should be hidden if you used the search bar.
* CP-16922: Use ButtonText on the Command to set the text on the PVS enable button
* CP-16922: Add the disable PVS read-caching command, and its associated proxy destroy action. Both based off enable equivalents (main difference is no dialog for now). Not used yet but will be in main window menu + disable button
* CP-16922: Add disable PVS read-caching to the main window menu (under enable), with the disable command attached to it
* CP-16922: Add support for disabling PVS read-caching for selected hosts via the PVS tab page by converting the disable button into a CommandButton in the same way as the enable button, using its own command + selection manager (because Selection Managers only bind to one control)
* CP-16922: Design - adding the "read caching enabled" column from the design, so that we display both whether caching is enabled and whether the VM is currently cached. If it's disabled all other values are missing.
* CP-16922: Add the PVS site column per the design to show the site a VM's PVS Proxy is on if it has a proxy
* CP-16922: Add an event handler for VMs changing so that newly provisioned VMs immediately show up in the PVS tab page
* CP-16922: Support for properly remembering the selection when the VM list is refreshed. A new method returns the list of VMs for the selected rows, and we can then check if the VM for the row being added is in this list. If there was no previous selection then we still select the first row by default.
* CP-16922: Remove prepopulate, which is being removed from the design. The next XAPI version will remove it, so just pass False as prepopulate for now, and remove the option from the dialog and PVS tab page.
* CP-16922: Improve UI appearance for a missing Storage Repository. Per the design, if there is no SR show the message None (memory only) instead of an empty cell
* CP-16922: Improved sorting behaviour. All columns (except VM name, which always uses it) use the VM tag as a sorting fallback (since they all have duplicates). New default sort which sorts by caching enabled first (yes before no), and then VM tag as a tiebreaker. Support for remembering the current sort on refresh, ie when a value changes.
* CP-16922: Refactoring to use a VM extension method to get the PVSProxy (or null if none exists) for a VM. This was used in the PVS Page + commands which are now much simpler.
* CP-16922: Move where the SelectionChanged event handler is set when refreshing the PVS table, so that the command buttons are updated correctly.
* CP-16922: Improvements to PVS read-caching dialog. Set accept/cancel buttons properly + adjust tab values, so focus acts as expected
* CP-16922: Remove the images from the menu for Enable/Disable PVS read-caching, most commands in the menu don't have one
* CP-16922: Sorting out the strings for the actions + ParallelAction calls, and moving them into the resx. Also reverting wrong MainWindow.resx changes.
* CAR-2184: XAPI changes. I've made the minimal possible changes to PvsPage to ensure it compiles, but it's had a lot of feature work (CP-16922) that supersedes this, these small changes should keep that merge painless.
* CAR-2184 XAPI: Reverse the unrelated changes, only keep the PVS ones.
* CP-16922: Merge latest XAPI changes, notably changes to Pvs_site.create
* CP-16922: Change tab show/hide logic for PVS tab, show it even if there are no PVS sites.
* CP-16922: Implement GUI for enabling PVS read caching
Design changes - remove the storage repo column and replace it with status, which is populated with a friendly version of the pvs_proxy_status enum. Also populate site list using site.name_label
Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
* CP-16922: Implement GUI for enabling PVS read caching
Adjusting the CanExecute of Enable PVS read-caching command to require at least one PVS site to be created. Since the PVS tab can show up without any sites, we need this because we can't create a proxy without a site.
* CP-16922: Code review changes.
Tidied up messages, and ensured actions run async properly, and without exiting before their task.
* CP-16922: Code review changes.
Update dialog resx, wider combobox on dialog, update action descriptions before setting RelatedTask, add friendly message body for PVS error notifications.
Leaving the new pool's name field empty, forcing user to enter a name before the Next button is enabled.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
The bad message was in the dialog created in the BugToolWizard after selecting servers. Since this method is the only one using the ActionProgressDialog(String) constructor, I've modified that ctor to hide the subaction label - which makes sense because there is no action in that ctor (to set a subaction) and no other appropriate label.
Shorten the ellipsise to the first 40 characters instead of 45, which allows the ellipsis, quotation and question marks to fit correctly onto the line.
Changed the ellipsise length from 45 to 90 characters. This means that the first row of text becomes variable length, so I've reworked the dialog to support this and work like others: icon/rows of text in table cells, right aligned flow panel for buttons.
Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
Add the Live Patching tab as a new part of PropertiesDialog, shown for pools and standalone hosts. Tab contains one checkbox which toggles the live_patching_disabled XenServer API property. Not yet implemented: license check ("The option should only be shown if the pool is licensed")
Signed-off-by: Callum McIntyre <callumiandavid.mcintyre@citrix.com>
- Added Control Domain memory entry in the host memory control on Memory tab.
- Control domain memory is editable for Ely and greater hosts.
- Can be changed from a dialog that requires host to be in maintenance mode and triggers a host reboot after the memory is changed.
- This dialog is available from Server main menu and from the host memory tab.
- Also removed unused unit controls on host and VM memory bars.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
in the calculation of the never-expiring licence ("greater than 3653 days" in
LicenceAlert and LicenceStatus vs "greater than or equal to 3653 days" elsewhere).
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Removed unused properties.
Added new string resource to set the pvs farm dialog's title.
Extended XenAPI's PVS_farm class to override Name property to allow for simpler sorting code.
Removed embedded icon in resource file; dialog now inherits the application's icon.
Signed-off-by: Frezzle <frederico.mazzone@citrix.com>
Added event handlers for changes made to PVS server; it may end up calling Rebuild() twice but that's not a problem.
Signed-off-by: Frezzle <frederico.mazzone@citrix.com>
Bugs fixed:
* OK button not re-enabling when switching back to using existing credentials in Health Check Enrollment dialog
* Using empty credentials to authenticate with Citrix Insight Services does not disable OK button in Health Check Enrollment dialog
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
FolderBrowser dialogs. Fixed text which caused label to look unaligned. Prevent
crash when attempting to launch the DownloadAppliance dialog with "http://" as URI.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
* [CA-214953] Multiple connection dialogs while attempting to connect
ConnectingToServerDialog now keeps track of the dialogs for each connection and focuses on them if they already exist, instead of creating new ones.
Signed-off-by: Frezzle <frederico.mazzone@citrix.com>
* [CA-214953] Multiple connection dialogs while attempting to connect
Moved code to handle open connection dialogs to XenConnectionUI, instead of being done inside ConnectingToServerDialog.
Only one error message appears now upon connection failure.
If connection dialog was minimized, and user double-clicks again to connect, it now returns to normal state on the screen as well as taking focus.
Signed-off-by: Frezzle <frederico.mazzone@citrix.com>
Added Registry.ProxyAuthenticationEnabled boolean property to enable/disable proxy authentication UI controls in Connection Options page.
Cleaned up event handler logic in Connection Options page to return from multiple/unnecessary calls to event handlers when manually changing controls through code.
Signed-off-by: Frezzle <frederico.mazzone@citrix.com>
- removed unnecessary casts
- no need to catch exception only to rethrow it; do not interrupt the call stack by using "throw ex"
- redundant check and value setting
Assigned Proxy property in all WebClient, WebRequest and HttpWebRequest instances.
Removed "proxy not supported" message from Download Appliance dialog, since the download does work with a proxy.
Signed-off-by: Frezzle <frederico.mazzone@citrix.com>
- For Dundee and newer hosts: the feature is restricted only if the "restrict_ssl_legacy_switch" flag exists and it is set to true
- For pre-Dundee hosts: the feature is restricted if the "restrict_ssl_legacy_switch" is absent or it is present and set to true
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Moved MD5Hash function from EncryptionUtils to HTTP class.
Replaced unnecessary new string/List-related functions with existing methods.
Removed redundant string.IsNullOrEmpty() call.
Changed duplicate hotkey in Connection Options page.
Signed-off-by: Frezzle <frederico.mazzone@citrix.com>
Now transfers proxy credentials in encrypted format and checks for default empty credentials when loading them for first time.
Fixed a break in unit test in HTTP.ReadHttpHeaders().
Signed-off-by: Frederico Mazzone <fredericom@citrite.net>
Removed last bits of code relating to "Bypass proxy server for local addresses" option.
New proxy settings are sent from XenCenter to health check service and used to configure the proxy using GetProxyFromSettings().
Health check service now correctly saves its proxy settings and updates the static Proxy property for the Session class; done in new ReconfigureConnectionSettings().
Signed-off-by: Frederico Mazzone <fredericom@citrite.net>
Added 2 textboxes for proxy username and password; encrypted when saved and decrypted when loaded.
Added 2 checkboxes; one for bypassing proxy for xenserver connections, one for providing proxy credentials.
Removed checkbox for bypassing proxy for local addresses.
Controls are no longer enabled/disabled when the related proxy option is selected/deselected.
Making changes to a control (e.g. username, bypass checkbox, etc) selects the 'Use this proxy server' option automatically.
Removed "Bypass proxy server for local addresses" option.
Basic and Digest authentication implemented. Tested with FreeProxy (Basic+Digest), CCProxy (Basic) and AnalogX Proxy (no authentication); each were tested with correct credentials, incorrect credentials and missing credentials; all gave expected results.
Signed-off-by: Frederico Mazzone <fredericom@citrite.net>
All event handlers are now unsubscribed when AttachDiskDialog is closed, allowing its memory to be garbage collected.
Image for each VDI now references an existing image instead of creating a new object.
Signed-off-by: Frederico Mazzone <fredericom@citrite.net>
Made textbox bigger in health check policy dialog.
Made textbox bigger in the 'Authentication with Citrix Insight Services'
section of the health check enrollment dialog.
Adjusted some control properties to correct the position of OK/Cancel
buttons.
Changed 'User name:' labels to 'Username:' in health check enrollment
dialog.
Changed Chinese and Japanese resource files to match English changes.
Signed-off-by: Frederico Mazzone <fredericom@citrite.net>
Significant improvements has been done in "schedule snapshot" policy wizard
for loading messages, hence we do not require recentAlerts field.
Signed-off-by: Sharath Babu <Sharath.Babu@citrix.com>
1. Changed the Messages to remove ambiguity between scheduled snapshots and
snapshot schedules
2. Made some functions as properties in IVMPolicy
3. Removed some redundant code
Signed-off-by: Koushik Chakravarty <Koushik.Chakravarty@citrix.com>
* Changed the installer to use the (yet) manually generated MHT file that encapsulates all the source files of the HomePage, so we don't have to have the installer to deploy every single file, so have changed the installer as well. This also makes branding easier.
* Added the license to the LegalNoticesDialog
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
I used the year the code was added to XenCenter: it may be older than that,
but I couldn't easily find out the exact date.
I also made the LegalNoticesDialog resizable, because it's silly trying to
read the legal notices in a teeny tiny window.
Fixed bug: "Depending on your workflow you can add a VIF to a VM with a duplicate MAC address without warning."
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- The license restriction for vss snapshots already exists in trunk. This commit just amends the message displayed when the feature is not available.
Cherry picked from cream-indigo:
CA-190395: Replace the usage of FEATURE_NOT_AVAILABLE_NEED_ENTERPRISE_OR_PLATINUM_PLURAL
Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
- changed the licenseStatus_ItemUpdated event handler to invoke on the main thread, as this is the only case when a background thread needs to update the storedRows list..All the other reads and writes are taken place on the main (UI) thread
- removed the storedRowsLock as it is not needed since we do all the updates to storedRows on one thread.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
1. Check the Xenserver platform version and display the host disk read/write
threshold and metric weighting for Dundee or later XenServer.
2. Update the metric weighting page to make it autosize-able.
Signed-off-by: Hui Zhang <hui.zhang@citrix.com>
Revert "Merge pull request #708 from GaborApatiNagy/master_windows_update"
This reverts commit fe03f1382f, reversing
changes made to 423065a2c8.
Conflicts:
XenAdminTests/TabsAndMenus/MainMenuGeorge.cs
- removed the call that assigns vif.VM property, as this property is already assigned in ToProxy()
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- Add Trim() to the instances where we check if the username is null or empty and also where we use it for authentication
- This applies to both XenServer username and Citrix username
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Fixed the checkbox logic - selected state is now preserved on search or update/refresh. All rows (that can be selected) are selected by default.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Fixed when to enable the Command, the screen uses the connection (works for standalone hosts)
Using CollectionChanged instead of BatchCollectionChanged
Removed unnecessary Invoke
Removed values from the VmUpgradeState enum
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Implementing Upgrading VMs to Windows Update
New screen features:
-Create skeleton of the Upgrade VM dialog
-Implement a Go To Console link (just a link that opens a vm console)
-Implement logic to show the right status for a VM (includes rules to
get the states). Includes updating the dialog whenever the status changes.
-Add status texts to Messages, proper text on the UI
-Add stub methods to VM class in XenAPI-Extensions to r/w states from
Guest Agent
-UI: Implement rules what vms to display, checkbox rules, read only vms,
and when to enable the Upgrade button
-Implement Upgrade button (writes state for GA, mounts ISO) + maximum
parallel executions/actions
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- Button enabled only when "New XS credentials" radio button is ticked and username and password textboxes are not empty
- Button and the textboxes are disabled while the test is in progress
- When test credentials fails, log userName, not UserDisplayName
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- renamed srSpace and srInitialSpace variables
- removed unnecessary checks for thin provisioned sr
- fixed some error on NewDiskDialog.SMConfig property (smconfig was wrongly populated based on controls enablement; the conversion to long was made before converting to bytes
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Moving GetVirtualisationWarningMessages back to VM
Also added EVACUATE_HOST_INSTALL_MGMNT_PROMPT what is shown on the EvacuateHostDialog when a 'new' VM is given and Management Agent can be installed
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- when the user changes the disk size (or initial allocation), the selection in the SR list should not change and the list should not be automatically resorted
- users should not be allowed to create disks larger than the SR size (the SR is disabled and an explicit reason is displayed)
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
When creating a new VM, we no longer use vm.provision to create VM's disks, but instead we create the disks ourselves using vdi.create; this way we can specify the initial and incremental allocations for the new disks.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Removed PV_DRIVERS_NOT_INSTALLED=0 from the VirtualisationStatus [Flags]enum - 0 will mean the same (to avoid bugs with enum.HasFlag(0) is always true)
Extracted common code to VMLifeCycleCommand.GetCantExecuteNoToolsOrDriversReasonCore() method (instead of defining overridden GetCantExecuteReasonCore() method at this level, because not all child classes need this...)
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Removed Optimized state and using I/O & Management instead (even for old VMs)
Changed messages to be different for old and new VMs instead of saying Tools or I/O drivers for instance
Removed the extra enum property from the VM class that had been added for search
Fixed code in GroupingTypes class (possible KeyNotFoundException)
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Extended the enum, aimed for minimal changes, also using Flags on the enum now
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
- If an upload is marked as failed, then display it in the UI (but only as long as there is no successful upload done after that)
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Changed all the health check actions to perform the necessary role checks
- HealthCheckAuthenticationAction: changed so it does not save the tokens, so no role checks required in this action (all the checks are performed in SaveHealthCheckSettingsAction)
- GetHealthCheckAnalysisActions: added role checks
On the Health Check Overview dialog, a pool is displayed as read-only if connected as a user with roles that don't permit changing the health check settings:
- the following actions are not available: enroll, edit settings, disable health check, request upload, get analysis result
Adds tab indexing to the control for allocation and changes label names.
Corrects mistake that led to exception being thrown when the Disk Size is decreased in the the New Disk Dialog.
Created ThinProvisioningParametersControl user control using existing code to have the thin provisioning settings at one place. It needs to be initialized by providing an SR and it will expose its internal state via NewSMConfig property that we need at other places.
This does not include refactoring of existing code or replacing existing code to use this new control, but the new Conversion dialog is using this. Next step would be to remove existing code and start using this new ThinProvisioningParametersControl instead.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>