mirror of
https://github.com/xcp-ng/xenadmin.git
synced 2025-01-20 07:19:18 +01:00
Merge pull request #60 from xenserver/xs64bit
Merge all changes from xs64bit to master
This commit is contained in:
commit
533857e6c2
@ -68,12 +68,14 @@ namespace XenAdmin.Alerts
|
||||
|
||||
public void IncludeConnection(IXenConnection newConnection)
|
||||
{
|
||||
if (!connections.Contains(newConnection))
|
||||
connections.Add(newConnection);
|
||||
}
|
||||
|
||||
public void IncludeHosts(IEnumerable<Host> newHosts)
|
||||
{
|
||||
hosts.AddRange(newHosts);
|
||||
var notContained = newHosts.Where(h => !hosts.Contains(h));
|
||||
hosts.AddRange(notContained);
|
||||
}
|
||||
|
||||
public void CopyConnectionsAndHosts(XenServerUpdateAlert alert)
|
||||
|
@ -89,8 +89,8 @@ namespace XenAdmin.Commands
|
||||
|
||||
protected override bool CanExecuteCore(SelectedItemCollection selection)
|
||||
{
|
||||
//Removed for clearwater
|
||||
if (selection.Any(s => Helpers.ClearwaterOrGreater(s.Connection)))
|
||||
//Clearwater doesn't has WLB
|
||||
if (selection.Any(s => Helpers.IsClearwater(s.Connection)))
|
||||
return false;
|
||||
|
||||
if (selection.Count == 1)
|
||||
|
@ -107,8 +107,8 @@ namespace XenAdmin.Commands
|
||||
|
||||
protected override bool CanExecuteCore(SelectedItemCollection selection)
|
||||
{
|
||||
//Removed for clearwater
|
||||
if(selection.Any(s=>Helpers.ClearwaterOrGreater(s.Connection)))
|
||||
//Clearwater doesn't has WLB
|
||||
if (selection.Any(s => Helpers.IsClearwater(s.Connection)))
|
||||
return false;
|
||||
|
||||
if (selection.Count == 1)
|
||||
|
@ -1,60 +0,0 @@
|
||||
/* Copyright (c) Citrix Systems Inc.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms,
|
||||
* with or without modification, are permitted provided
|
||||
* that the following conditions are met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above
|
||||
* copyright notice, this list of conditions and the
|
||||
* following disclaimer.
|
||||
* * Redistributions in binary form must reproduce the above
|
||||
* copyright notice, this list of conditions and the
|
||||
* following disclaimer in the documentation and/or other
|
||||
* materials provided with the distribution.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
|
||||
* CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
|
||||
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
||||
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
using System;
|
||||
using XenAPI;
|
||||
using XenAdmin.Diagnostics.Problems;
|
||||
using XenAdmin.Core;
|
||||
using XenAdmin.Diagnostics.Problems.PoolProblem;
|
||||
|
||||
namespace XenAdmin.Diagnostics.Checks
|
||||
{
|
||||
public class HostHasWlbCheck : Check
|
||||
{
|
||||
public HostHasWlbCheck(Host host) : base(host)
|
||||
{
|
||||
}
|
||||
|
||||
public override Problem RunCheck()
|
||||
{
|
||||
Pool pool = Helpers.GetPoolOfOne(Host.Connection);
|
||||
if(pool == null)
|
||||
return null;
|
||||
|
||||
return Helpers.WlbConfigured(Host.Connection) || Helpers.WlbEnabledAndConfigured(Host.Connection) ? new PoolHasWlbRemovalWarning(this, pool) : null;
|
||||
}
|
||||
|
||||
public override string Description
|
||||
{
|
||||
get { return String.Format(Messages.HOST_X, Host.Name); }
|
||||
}
|
||||
}
|
||||
}
|
@ -1,61 +0,0 @@
|
||||
/* Copyright (c) Citrix Systems Inc.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms,
|
||||
* with or without modification, are permitted provided
|
||||
* that the following conditions are met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above
|
||||
* copyright notice, this list of conditions and the
|
||||
* following disclaimer.
|
||||
* * Redistributions in binary form must reproduce the above
|
||||
* copyright notice, this list of conditions and the
|
||||
* following disclaimer in the documentation and/or other
|
||||
* materials provided with the distribution.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
|
||||
* CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
|
||||
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
||||
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
using System;
|
||||
using XenAdmin.Diagnostics.Checks;
|
||||
using XenAPI;
|
||||
|
||||
namespace XenAdmin.Diagnostics.Problems.PoolProblem
|
||||
{
|
||||
public class PoolHasWlbRemovalWarning : WarningWithInformationUrl
|
||||
{
|
||||
private Pool StoredPool { get; set; }
|
||||
public PoolHasWlbRemovalWarning(Check check, Pool pool) : base(check)
|
||||
{
|
||||
StoredPool = pool;
|
||||
}
|
||||
|
||||
public override string Title
|
||||
{
|
||||
get { return String.Format(Messages.POOL_X, StoredPool.Name); }
|
||||
}
|
||||
|
||||
public override string Description
|
||||
{
|
||||
get { return String.Format(Messages.RPU_WIZARD_WLB_REMOVAL, StoredPool.Name); }
|
||||
}
|
||||
|
||||
public override Uri UriToLaunch
|
||||
{
|
||||
get { return new Uri(InvisibleMessages.WLB_DEPRECATION_URL); }
|
||||
}
|
||||
}
|
||||
}
|
@ -62,7 +62,7 @@ namespace XenAdmin.Diagnostics.Problems.PoolProblem
|
||||
return new DelegatedAsyncAction(Pool.Connection, Messages.HELP_MESSAGE_DISABLE_WLB, "", "",
|
||||
ss =>
|
||||
{
|
||||
var action = new DisableWLBAction(Pool, true);
|
||||
var action = new DisableWLBAction(Pool, false);
|
||||
action.RunExternal(ss);
|
||||
int count = 0;
|
||||
while (Helpers.WlbEnabled(Pool.Connection) && count < 10)
|
||||
|
@ -221,6 +221,11 @@ namespace XenAdmin.Dialogs
|
||||
}
|
||||
}
|
||||
|
||||
public bool HelperUrlRequired
|
||||
{
|
||||
get { return XenObject == null ? false : Helpers.ClearwaterOrGreater(XenObject.Connection); } // CA-115256
|
||||
}
|
||||
|
||||
public Status RowStatus
|
||||
{
|
||||
get
|
||||
|
@ -200,12 +200,12 @@ namespace XenAdmin.Dialogs
|
||||
Program.Invoke(this, delegate
|
||||
{
|
||||
LicenseDataGridViewRow lRow = row as LicenseDataGridViewRow;
|
||||
if(lRow == null)
|
||||
if(lRow == null || lRow.XenObject == null)
|
||||
return;
|
||||
|
||||
summaryPanel.Title = lRow.XenObject.Name;
|
||||
summaryPanel.HelperUrl = Messages.LICENSE_MANAGER_BUY_LICENSE_LINK_TEXT;
|
||||
summaryPanel.HelperUrlVisible = true;
|
||||
summaryPanel.HelperUrlVisible = lRow.HelperUrlRequired;
|
||||
summaryPanel.WarningVisible = lRow.WarningRequired;
|
||||
summaryPanel.WarningText = lRow.WarningText;
|
||||
summaryPanel.SummaryText = summaryComponent;
|
||||
|
@ -35,14 +35,11 @@ namespace XenAdmin.Dialogs.Wlb
|
||||
this.wlbMetricWeightingPage = new XenAdmin.SettingsPanels.WlbMetricWeightingPage();
|
||||
this.wlbHostExclusionPage = new XenAdmin.SettingsPanels.WlbHostExclusionPage();
|
||||
this.wlbAdvancedSettingsPage = new XenAdmin.SettingsPanels.WlbAdvancedSettingsPage();
|
||||
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.deprecationBanner = new XenAdmin.Controls.DeprecationBanner();
|
||||
this.ContentPanel.SuspendLayout();
|
||||
this.splitContainer.Panel1.SuspendLayout();
|
||||
this.splitContainer.Panel2.SuspendLayout();
|
||||
this.splitContainer.SuspendLayout();
|
||||
this.blueBorder.SuspendLayout();
|
||||
this.tableLayoutPanel1.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// ContentPanel
|
||||
@ -166,35 +163,18 @@ namespace XenAdmin.Dialogs.Wlb
|
||||
this.wlbAdvancedSettingsPage.MinimumSize = new System.Drawing.Size(560, 560);
|
||||
this.wlbAdvancedSettingsPage.Name = "wlbAdvancedSettingsPage";
|
||||
//
|
||||
// tableLayoutPanel1
|
||||
//
|
||||
resources.ApplyResources(this.tableLayoutPanel1, "tableLayoutPanel1");
|
||||
this.tableLayoutPanel1.Controls.Add(this.deprecationBanner, 1, 0);
|
||||
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
|
||||
//
|
||||
// deprecationBanner
|
||||
//
|
||||
resources.ApplyResources(this.deprecationBanner, "deprecationBanner");
|
||||
this.deprecationBanner.BackColor = System.Drawing.Color.LightCoral;
|
||||
this.deprecationBanner.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.deprecationBanner.Name = "deprecationBanner";
|
||||
//
|
||||
// WlbConfigurationDialog
|
||||
//
|
||||
resources.ApplyResources(this, "$this");
|
||||
this.Controls.Add(this.tableLayoutPanel1);
|
||||
this.Name = "WlbConfigurationDialog";
|
||||
this.Controls.SetChildIndex(this.cancelButton, 0);
|
||||
this.Controls.SetChildIndex(this.okButton, 0);
|
||||
this.Controls.SetChildIndex(this.tableLayoutPanel1, 0);
|
||||
this.Controls.SetChildIndex(this.splitContainer, 0);
|
||||
this.ContentPanel.ResumeLayout(false);
|
||||
this.splitContainer.Panel1.ResumeLayout(false);
|
||||
this.splitContainer.Panel2.ResumeLayout(false);
|
||||
this.splitContainer.ResumeLayout(false);
|
||||
this.blueBorder.ResumeLayout(false);
|
||||
this.tableLayoutPanel1.ResumeLayout(false);
|
||||
this.tableLayoutPanel1.PerformLayout();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
@ -209,7 +189,5 @@ namespace XenAdmin.Dialogs.Wlb
|
||||
private XenAdmin.SettingsPanels.WlbMetricWeightingPage wlbMetricWeightingPage;
|
||||
private XenAdmin.SettingsPanels.WlbHostExclusionPage wlbHostExclusionPage;
|
||||
private XenAdmin.SettingsPanels.WlbAdvancedSettingsPage wlbAdvancedSettingsPage;
|
||||
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
|
||||
private XenAdmin.Controls.DeprecationBanner deprecationBanner;
|
||||
}
|
||||
}
|
||||
|
@ -54,19 +54,9 @@ namespace XenAdmin.Dialogs.Wlb
|
||||
InitializeComponent();
|
||||
|
||||
Text = String.Format(Messages.WLB_CONFIGURATION_DIALOG, Helpers.GetName(_pool));
|
||||
SetupDeprecationBanner();
|
||||
Build();
|
||||
}
|
||||
|
||||
private void SetupDeprecationBanner()
|
||||
{
|
||||
deprecationBanner.AppliesToVersion = Messages.XENSERVER_6_2;
|
||||
deprecationBanner.FeatureName = Messages.WLB;
|
||||
deprecationBanner.BannerType = DeprecationBanner.Type.Removal;
|
||||
deprecationBanner.LinkUri = new Uri(InvisibleMessages.WLB_DEPRECATION_URL);
|
||||
deprecationBanner.Visible = true;
|
||||
}
|
||||
|
||||
private void Build()
|
||||
{
|
||||
_poolConfiguration = RetrieveWLBConfiguration();
|
||||
|
@ -433,7 +433,7 @@ namespace XenAdmin
|
||||
if (action.Exception != null && !(action.Exception is CancelledException))
|
||||
{
|
||||
if (meddlingAction == null)
|
||||
SetStatusBar(XenAdmin.Properties.Resources._000_error_h32bit_16, action.Exception.Message);
|
||||
SetStatusBar(Properties.Resources._000_error_h32bit_16, action.Exception.Message);
|
||||
|
||||
IXenObject model =
|
||||
(IXenObject)action.VM ??
|
||||
@ -447,11 +447,13 @@ namespace XenAdmin
|
||||
}
|
||||
else if (meddlingAction == null)
|
||||
{
|
||||
SetStatusBar(null,
|
||||
action.IsCompleted ? null :
|
||||
!string.IsNullOrEmpty(action.Description) ? action.Description :
|
||||
!string.IsNullOrEmpty(action.Title) ? action.Title :
|
||||
null);
|
||||
SetStatusBar(null, action.IsCompleted
|
||||
? null
|
||||
: !string.IsNullOrEmpty(action.Description)
|
||||
? action.Description
|
||||
: !string.IsNullOrEmpty(action.Title)
|
||||
? action.Title
|
||||
: null);
|
||||
}
|
||||
|
||||
int errors = ConnectionsManager.History.Count(a => a.IsCompleted && !a.Succeeded);
|
||||
@ -1320,9 +1322,10 @@ namespace XenAdmin
|
||||
ShowTab(ha_upsell ? TabPageHAUpsell : TabPageHA, !multi && !SearchMode && isPoolSelected && has_ha_license_flag);
|
||||
ShowTab(TabPageSnapshots, !multi && !SearchMode && george_or_greater && isRealVMSelected);
|
||||
|
||||
//Disable the WLB tab from Clearwater onwards
|
||||
if(SelectionManager.Selection.All(s=>!Helpers.ClearwaterOrGreater(s.Connection)))
|
||||
ShowTab(wlb_upsell ? TabPageWLBUpsell : TabPageWLB, !multi && !SearchMode && isPoolSelected && george_or_greater);
|
||||
//Any Clearwater XenServer, or an unlicensed >=Creedence XenServer, the WLB tab and any WLB menu items disappear completely.
|
||||
if(!(SelectionManager.Selection.All(s => Helpers.IsClearwater(s.Connection)) ||
|
||||
(wlb_upsell && SelectionManager.Selection.All(s => Helpers.CreedenceOrGreater(s.Connection)))))
|
||||
ShowTab(TabPageWLB, !multi && !SearchMode && isPoolSelected && george_or_greater);
|
||||
|
||||
ShowTab(TabPageAD, !multi && !SearchMode && (isPoolSelected || isHostSelected && isHostLive) && george_or_greater);
|
||||
|
||||
|
@ -36,7 +36,6 @@ namespace XenAdmin.SettingsPanels
|
||||
//
|
||||
resources.ApplyResources(this.picker, "picker");
|
||||
this.picker.Name = "picker";
|
||||
this.picker.VisibleChanged += new System.EventHandler(this.picker_VisibleChanged);
|
||||
//
|
||||
// HomeServerEditPage
|
||||
//
|
||||
|
@ -135,17 +135,5 @@ namespace XenAdmin.SettingsPanels
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private void picker_VisibleChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (vm != null)
|
||||
{
|
||||
Host currentAffinity = vm.Connection.Resolve(vm.affinity);
|
||||
picker.SetAffinity(vm.Connection, currentAffinity,
|
||||
vm.HasNoDisksAndNoLocalCD
|
||||
? null
|
||||
: vm.GetStorageHost(false));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -105,6 +105,9 @@ namespace XenAdmin.TabPages
|
||||
|
||||
private void Rebuild()
|
||||
{
|
||||
if (!Visible)
|
||||
return;
|
||||
|
||||
log.Debug("Rebuilding alertList");
|
||||
Thread t = new Thread(_Rebuild);
|
||||
t.Name = "Building alert list";
|
||||
|
@ -144,6 +144,9 @@ namespace XenAdmin.TabPages
|
||||
|
||||
private void BuildRowList()
|
||||
{
|
||||
if (!Visible)
|
||||
return;
|
||||
|
||||
try
|
||||
{
|
||||
dataGridView.SuspendLayout();
|
||||
|
@ -182,6 +182,9 @@ namespace XenAdmin.TabPages
|
||||
{
|
||||
Program.AssertOnEventThread();
|
||||
|
||||
if (!Visible)
|
||||
return;
|
||||
|
||||
if (checksQueue > 0)
|
||||
return;
|
||||
|
||||
|
@ -95,20 +95,9 @@ namespace XenAdmin.TabPages
|
||||
pdSectionConfiguration.fixFirstColumnWidth(200);
|
||||
pictureBoxWarningTriangle.Image = SystemIcons.Warning.ToBitmap();
|
||||
|
||||
SetUpDeprecationBanner();
|
||||
|
||||
RefreshControls();
|
||||
}
|
||||
|
||||
private void SetUpDeprecationBanner()
|
||||
{
|
||||
Banner.AppliesToVersion = Messages.XENSERVER_6_2;
|
||||
Banner.BannerType = DeprecationBanner.Type.Removal;
|
||||
Banner.FeatureName = Messages.WLB;
|
||||
Banner.LinkUri = new Uri(InvisibleMessages.WLB_DEPRECATION_URL);
|
||||
Banner.Visible = true;
|
||||
}
|
||||
|
||||
#region ControlEvents
|
||||
|
||||
private void buttonConfigure_Click(object sender, EventArgs e)
|
||||
|
@ -112,187 +112,194 @@
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name=">>$this.Type" xml:space="preserve">
|
||||
<value>XenAdmin.Controls.XenTabPage, XenCenterMain, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
|
||||
</data>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="networkComboBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>104, 3</value>
|
||||
</data>
|
||||
<data name=">>networkComboBox.Name" xml:space="preserve">
|
||||
<value>networkComboBox</value>
|
||||
</data>
|
||||
<data name=">>label1.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>label3.ZOrder" xml:space="preserve">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name="label3.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>558, 65</value>
|
||||
</data>
|
||||
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="label1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>3, 0, 10, 0</value>
|
||||
</data>
|
||||
<data name=">>networkComboBox.Parent" xml:space="preserve">
|
||||
<value>tableLayoutPanel2</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel1.LayoutSettings" type="System.Windows.Forms.TableLayoutSettings, System.Windows.Forms">
|
||||
<value><?xml version="1.0" encoding="utf-16"?><TableLayoutSettings><Controls><Control Name="tableLayoutPanel2" Row="1" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="label3" Row="0" RowSpan="1" Column="0" ColumnSpan="1" /></Controls><Columns Styles="AutoSize,0,Absolute,20" /><Rows Styles="Percent,27.71084,Percent,72.28915,Absolute,20,Absolute,20" /></TableLayoutSettings></value>
|
||||
</data>
|
||||
<assembly alias="mscorlib" name="mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="tableLayoutPanel1.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="tableLayoutPanel1.ColumnCount" type="System.Int32, mscorlib">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel2.TabIndex" type="System.Int32, mscorlib">
|
||||
<data name="tableLayoutPanel2.ColumnCount" type="System.Int32, mscorlib">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel2.RowCount" type="System.Int32, mscorlib">
|
||||
<value>1</value>
|
||||
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="label1.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||
<value>Left</value>
|
||||
</data>
|
||||
<data name="label1.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>True</value>
|
||||
</data>
|
||||
<data name="label1.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
||||
<value>NoControl</value>
|
||||
</data>
|
||||
<data name=">>label3.Parent" xml:space="preserve">
|
||||
<value>tableLayoutPanel1</value>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="label1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>3, 8</value>
|
||||
</data>
|
||||
<data name="$this.Text" xml:space="preserve">
|
||||
<value>CrossPoolMigrateTransferNetworkPage</value>
|
||||
</data>
|
||||
<data name=">>tableLayoutPanel2.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.TableLayoutPanel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name="networkComboBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>432, 21</value>
|
||||
</data>
|
||||
<data name="label1.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||
<value>Left</value>
|
||||
<data name="label1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>3, 0, 10, 0</value>
|
||||
</data>
|
||||
<data name="label1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>88, 13</value>
|
||||
<value>115, 17</value>
|
||||
</data>
|
||||
<data name="label3.Text" xml:space="preserve">
|
||||
<value>Select a storage network on the destination pool or standalone server that will be used for the live migration of the
|
||||
VM’s virtual disks.
|
||||
|
||||
For optimal performance and reliability during VM migration, ensure that the network used for the live storage migration
|
||||
is not being used for management or virtual machine traffic. </value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>614, 332</value>
|
||||
</data>
|
||||
<data name=">>tableLayoutPanel1.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>tableLayoutPanel1.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.TableLayoutPanel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>label1.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>tableLayoutPanel2.Parent" xml:space="preserve">
|
||||
<value>tableLayoutPanel1</value>
|
||||
</data>
|
||||
<data name="networkComboBox.IntegralHeight" type="System.Boolean, mscorlib">
|
||||
<value>False</value>
|
||||
</data>
|
||||
<data name=">>networkComboBox.ZOrder" xml:space="preserve">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name=">>tableLayoutPanel1.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>label3.Name" xml:space="preserve">
|
||||
<value>label3</value>
|
||||
</data>
|
||||
<data name=">>label1.Parent" xml:space="preserve">
|
||||
<value>tableLayoutPanel2</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel1.RowCount" type="System.Int32, mscorlib">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name="label3.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>3, 0</value>
|
||||
</data>
|
||||
<data name=">>networkComboBox.Type" xml:space="preserve">
|
||||
<value>XenAdmin.Controls.NetworkComboBox, XenCenterMain, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
|
||||
</data>
|
||||
<data name=">>tableLayoutPanel2.ZOrder" xml:space="preserve">
|
||||
<data name="label1.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="label1.Text" xml:space="preserve">
|
||||
<value>Storage n&etwork:</value>
|
||||
</data>
|
||||
<data name="$this.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>614, 332</value>
|
||||
</data>
|
||||
<data name=">>label1.Name" xml:space="preserve">
|
||||
<value>label1</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel2.ColumnCount" type="System.Int32, mscorlib">
|
||||
<value>2</value>
|
||||
<data name=">>label1.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name="label1.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>label3.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
</data>
|
||||
<data name=">>tableLayoutPanel2.Name" xml:space="preserve">
|
||||
<data name=">>label1.Parent" xml:space="preserve">
|
||||
<value>tableLayoutPanel2</value>
|
||||
</data>
|
||||
<data name="label1.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>True</value>
|
||||
<data name=">>label1.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="label3.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
||||
<value>NoControl</value>
|
||||
<data name="networkComboBox.IntegralHeight" type="System.Boolean, mscorlib">
|
||||
<value>False</value>
|
||||
</data>
|
||||
<data name="networkComboBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>131, 3</value>
|
||||
</data>
|
||||
<data name="networkComboBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>432, 24</value>
|
||||
</data>
|
||||
<data name="networkComboBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>11</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel2.LayoutSettings" type="System.Windows.Forms.TableLayoutSettings, System.Windows.Forms">
|
||||
<value><?xml version="1.0" encoding="utf-16"?><TableLayoutSettings><Controls><Control Name="label1" Row="0" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="networkComboBox" Row="0" RowSpan="1" Column="1" ColumnSpan="1" /></Controls><Columns Styles="AutoSize,0,Percent,100" /><Rows Styles="Percent,100" /></TableLayoutSettings></value>
|
||||
<data name=">>networkComboBox.Name" xml:space="preserve">
|
||||
<value>networkComboBox</value>
|
||||
</data>
|
||||
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
|
||||
<value>96, 96</value>
|
||||
<data name=">>networkComboBox.Type" xml:space="preserve">
|
||||
<value>XenAdmin.Controls.NetworkComboBox, XenCenterMain, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
|
||||
</data>
|
||||
<data name=">>networkComboBox.Parent" xml:space="preserve">
|
||||
<value>tableLayoutPanel2</value>
|
||||
</data>
|
||||
<data name=">>networkComboBox.ZOrder" xml:space="preserve">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel2.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>3, 108</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel2.RowCount" type="System.Int32, mscorlib">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel2.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>608, 28</value>
|
||||
<value>608, 33</value>
|
||||
</data>
|
||||
<data name=">>tableLayoutPanel1.Name" xml:space="preserve">
|
||||
<data name="tableLayoutPanel2.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name=">>tableLayoutPanel2.Name" xml:space="preserve">
|
||||
<value>tableLayoutPanel2</value>
|
||||
</data>
|
||||
<data name=">>tableLayoutPanel2.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.TableLayoutPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>tableLayoutPanel2.Parent" xml:space="preserve">
|
||||
<value>tableLayoutPanel1</value>
|
||||
</data>
|
||||
<data name="label1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>3, 7</value>
|
||||
<data name=">>tableLayoutPanel2.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>$this.Name" xml:space="preserve">
|
||||
<value>CrossPoolMigrateTransferNetworkPage</value>
|
||||
<data name="tableLayoutPanel2.LayoutSettings" type="System.Windows.Forms.TableLayoutSettings, System.Windows.Forms">
|
||||
<value><?xml version="1.0" encoding="utf-16"?><TableLayoutSettings><Controls><Control Name="label1" Row="0" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="networkComboBox" Row="0" RowSpan="1" Column="1" ColumnSpan="1" /></Controls><Columns Styles="AutoSize,0,Percent,100" /><Rows Styles="Percent,100" /></TableLayoutSettings></value>
|
||||
</data>
|
||||
<data name="label3.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>True</value>
|
||||
</data>
|
||||
<data name="label3.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
</data>
|
||||
<data name="label3.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
||||
<value>NoControl</value>
|
||||
</data>
|
||||
<data name="label3.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>3, 0</value>
|
||||
</data>
|
||||
<data name="label3.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>0, 0, 0, 20</value>
|
||||
</data>
|
||||
<data name="label3.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>762, 105</value>
|
||||
</data>
|
||||
<data name="label3.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>14</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel2.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>3, 95</value>
|
||||
<data name="label3.Text" xml:space="preserve">
|
||||
<value>Select a storage network on the destination pool or standalone server that will be used for the live migration of the VM’s virtual disks.
|
||||
|
||||
For optimal performance and reliability during VM migration, ensure that the network used for the live storage migration is not being used for management or virtual machine traffic. </value>
|
||||
</data>
|
||||
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<data name=">>label3.Name" xml:space="preserve">
|
||||
<value>label3</value>
|
||||
</data>
|
||||
<data name=">>label3.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>label3.Parent" xml:space="preserve">
|
||||
<value>tableLayoutPanel1</value>
|
||||
</data>
|
||||
<data name=">>label3.ZOrder" xml:space="preserve">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel1.RowCount" type="System.Int32, mscorlib">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>768, 415</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel1.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>tableLayoutPanel1.Name" xml:space="preserve">
|
||||
<value>tableLayoutPanel1</value>
|
||||
</data>
|
||||
<data name=">>tableLayoutPanel1.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.TableLayoutPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>tableLayoutPanel1.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>tableLayoutPanel1.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel1.LayoutSettings" type="System.Windows.Forms.TableLayoutSettings, System.Windows.Forms">
|
||||
<value><?xml version="1.0" encoding="utf-16"?><TableLayoutSettings><Controls><Control Name="tableLayoutPanel2" Row="1" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="label3" Row="0" RowSpan="1" Column="0" ColumnSpan="1" /></Controls><Columns Styles="Percent,100" /><Rows Styles="AutoSize,0,Percent,100" /></TableLayoutSettings></value>
|
||||
</data>
|
||||
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
|
||||
<value>120, 120</value>
|
||||
</data>
|
||||
<data name="$this.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>4, 4, 4, 4</value>
|
||||
</data>
|
||||
<data name="$this.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>768, 415</value>
|
||||
</data>
|
||||
<data name="$this.Text" xml:space="preserve">
|
||||
<value>CrossPoolMigrateTransferNetworkPage</value>
|
||||
</data>
|
||||
<data name=">>$this.Name" xml:space="preserve">
|
||||
<value>CrossPoolMigrateTransferNetworkPage</value>
|
||||
</data>
|
||||
<data name=">>$this.Type" xml:space="preserve">
|
||||
<value>XenAdmin.Controls.XenTabPage, XenCenterMain, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
|
||||
</data>
|
||||
</root>
|
@ -79,7 +79,7 @@ namespace XenAdmin.Wizards
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
pageNetworkType = new NetWTypeSelect {Banner = Banner};
|
||||
pageNetworkType = new NetWTypeSelect();
|
||||
pageName = new NetWName();
|
||||
pageNetworkDetails = new NetWDetails();
|
||||
pageBondDetails = new NetWBondDetails();
|
||||
|
@ -61,8 +61,6 @@ namespace XenAdmin.Wizards.NewNetworkWizard_Pages
|
||||
Update(Connection);
|
||||
}
|
||||
|
||||
public DeprecationBanner Banner { set; private get; }
|
||||
|
||||
public NetworkTypes SelectedNetworkType
|
||||
{
|
||||
get
|
||||
@ -120,18 +118,6 @@ namespace XenAdmin.Wizards.NewNetworkWizard_Pages
|
||||
}
|
||||
}
|
||||
|
||||
public void SetDeprecationBanner(bool visible)
|
||||
{
|
||||
if(Banner != null)
|
||||
{
|
||||
Banner.AppliesToVersion = Messages.XENSERVER_6_2;
|
||||
Banner.BannerType = DeprecationBanner.Type.Deprecation;
|
||||
Banner.FeatureName = Messages.DVSCS;
|
||||
Banner.LinkUri = new Uri(InvisibleMessages.DVSC_DEPRECATION_URL);
|
||||
Banner.Visible = visible;
|
||||
}
|
||||
}
|
||||
|
||||
private void RemoveFromToolTip(ToolTipContainer container, Panel panel)
|
||||
{
|
||||
// We have to remove the controls from the panel (rather than just
|
||||
@ -155,18 +141,5 @@ namespace XenAdmin.Wizards.NewNetworkWizard_Pages
|
||||
|
||||
Controls.Remove(container);
|
||||
}
|
||||
|
||||
public override void PageLoaded(PageLoadedDirection direction)
|
||||
{
|
||||
Pool pool = Helpers.GetPoolOfOne(Connection);
|
||||
SetDeprecationBanner(pool.vSwitchController);
|
||||
base.PageLoaded(direction);
|
||||
}
|
||||
|
||||
public override void PageLeave(PageLoadedDirection direction, ref bool cancel)
|
||||
{
|
||||
SetDeprecationBanner(false);
|
||||
base.PageLeave(direction, ref cancel);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -196,7 +196,7 @@
|
||||
<value>NoControl</value>
|
||||
</data>
|
||||
<data name="rbtnBondedNetwork.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>20, 236</value>
|
||||
<value>20, 200</value>
|
||||
</data>
|
||||
<data name="rbtnBondedNetwork.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>170, 19</value>
|
||||
@ -257,7 +257,7 @@
|
||||
<value>NoControl</value>
|
||||
</data>
|
||||
<data name="label3.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>38, 258</value>
|
||||
<value>38, 222</value>
|
||||
</data>
|
||||
<data name="label3.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>334, 31</value>
|
||||
@ -294,7 +294,7 @@
|
||||
<value>19, 20</value>
|
||||
</data>
|
||||
<data name="labelCHIN.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>331, 65</value>
|
||||
<value>331, 39</value>
|
||||
</data>
|
||||
<data name="labelCHIN.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>6</value>
|
||||
@ -302,9 +302,7 @@
|
||||
<data name="labelCHIN.Text" xml:space="preserve">
|
||||
<value>XenServer プールの外部に接続しないネットワークを作成します。
|
||||
これにより、同一プール内の VM どうしを接続できます。
|
||||
vSwitch コントローラが実行されている必要があります。
|
||||
この機能は XenServer 6.2 で廃止され、
|
||||
今後のバージョンで削除される予定です。</value>
|
||||
vSwitch コントローラが実行されている必要があります。</value>
|
||||
</data>
|
||||
<data name=">>labelCHIN.Name" xml:space="preserve">
|
||||
<value>labelCHIN</value>
|
||||
@ -370,7 +368,7 @@ vSwitch コントローラが実行されている必要があります。
|
||||
<value>19, 134</value>
|
||||
</data>
|
||||
<data name="toolTipContainerCHIN.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>380, 96</value>
|
||||
<value>380, 76</value>
|
||||
</data>
|
||||
<data name="toolTipContainerCHIN.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>5</value>
|
||||
@ -406,7 +404,7 @@ vSwitch コントローラが実行されている必要があります。
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="panelCHIN.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>380, 72</value>
|
||||
<value>380, 52</value>
|
||||
</data>
|
||||
<data name="panelCHIN.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>9</value>
|
||||
@ -574,7 +572,7 @@ vSwitch コントローラが実行されている必要があります。
|
||||
<value>0, 32, 0, 0</value>
|
||||
</data>
|
||||
<data name="$this.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>416, 309</value>
|
||||
<value>416, 281</value>
|
||||
</data>
|
||||
<data name="$this.Text" xml:space="preserve">
|
||||
<value>種類の選択</value>
|
||||
|
@ -196,7 +196,7 @@
|
||||
<value>NoControl</value>
|
||||
</data>
|
||||
<data name="rbtnBondedNetwork.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>20, 233</value>
|
||||
<value>20, 208</value>
|
||||
</data>
|
||||
<data name="rbtnBondedNetwork.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>117, 17</value>
|
||||
@ -257,7 +257,7 @@ This can be used as a private connection between VMs on the same host.</value>
|
||||
<value>NoControl</value>
|
||||
</data>
|
||||
<data name="label3.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>38, 253</value>
|
||||
<value>38, 228</value>
|
||||
</data>
|
||||
<data name="label3.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>320, 26</value>
|
||||
@ -294,7 +294,7 @@ This will create a single higher performing channel.</value>
|
||||
<value>19, 20</value>
|
||||
</data>
|
||||
<data name="labelCHIN.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>331, 65</value>
|
||||
<value>331, 39</value>
|
||||
</data>
|
||||
<data name="labelCHIN.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>6</value>
|
||||
@ -302,9 +302,7 @@ This will create a single higher performing channel.</value>
|
||||
<data name="labelCHIN.Text" xml:space="preserve">
|
||||
<value>Create a network that does not leave the XenServer pool.
|
||||
This can be used as a private connection between VMs in the pool.
|
||||
This type of network requires the vSwitch Controller to be running.
|
||||
This feature is deprecated in XenServer 6.2 and may be removed
|
||||
in future versions.</value>
|
||||
This type of network requires the vSwitch Controller to be running.</value>
|
||||
</data>
|
||||
<data name=">>labelCHIN.Name" xml:space="preserve">
|
||||
<value>labelCHIN</value>
|
||||
@ -370,7 +368,7 @@ in future versions.</value>
|
||||
<value>19, 134</value>
|
||||
</data>
|
||||
<data name="toolTipContainerCHIN.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>380, 92</value>
|
||||
<value>380, 72</value>
|
||||
</data>
|
||||
<data name="toolTipContainerCHIN.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>5</value>
|
||||
@ -406,7 +404,7 @@ in future versions.</value>
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="panelCHIN.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>380, 92</value>
|
||||
<value>380, 72</value>
|
||||
</data>
|
||||
<data name="panelCHIN.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>9</value>
|
||||
@ -574,7 +572,7 @@ in future versions.</value>
|
||||
<value>0, 32, 0, 0</value>
|
||||
</data>
|
||||
<data name="$this.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>416, 297</value>
|
||||
<value>416, 269</value>
|
||||
</data>
|
||||
<data name="$this.Text" xml:space="preserve">
|
||||
<value>Select Type</value>
|
||||
|
@ -196,7 +196,7 @@
|
||||
<value>NoControl</value>
|
||||
</data>
|
||||
<data name="rbtnBondedNetwork.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>20, 250</value>
|
||||
<value>20, 204</value>
|
||||
</data>
|
||||
<data name="rbtnBondedNetwork.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>117, 17</value>
|
||||
@ -257,7 +257,7 @@
|
||||
<value>NoControl</value>
|
||||
</data>
|
||||
<data name="label3.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>38, 274</value>
|
||||
<value>38, 228</value>
|
||||
</data>
|
||||
<data name="label3.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>320, 26</value>
|
||||
@ -294,7 +294,7 @@
|
||||
<value>19, 20</value>
|
||||
</data>
|
||||
<data name="labelCHIN.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>331, 65</value>
|
||||
<value>331, 39</value>
|
||||
</data>
|
||||
<data name="labelCHIN.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>6</value>
|
||||
@ -302,9 +302,7 @@
|
||||
<data name="labelCHIN.Text" xml:space="preserve">
|
||||
<value>创建不离开 XenServer 池的网络。
|
||||
此网络可用作池中两个 VM 之间的专用连接。
|
||||
此类网络需要运行 vSwitch Controller。
|
||||
此功能在 XenServer 6.2 中已弃用,在将来
|
||||
的版本中可能会删除。</value>
|
||||
此类网络需要运行 vSwitch Controller。</value>
|
||||
</data>
|
||||
<data name=">>labelCHIN.Name" xml:space="preserve">
|
||||
<value>labelCHIN</value>
|
||||
@ -370,7 +368,7 @@
|
||||
<value>19, 134</value>
|
||||
</data>
|
||||
<data name="toolTipContainerCHIN.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>380, 110</value>
|
||||
<value>380, 90</value>
|
||||
</data>
|
||||
<data name="toolTipContainerCHIN.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>5</value>
|
||||
@ -406,7 +404,7 @@
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="panelCHIN.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>380, 110</value>
|
||||
<value>380, 90</value>
|
||||
</data>
|
||||
<data name="panelCHIN.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>9</value>
|
||||
@ -574,7 +572,7 @@
|
||||
<value>0, 32, 0, 0</value>
|
||||
</data>
|
||||
<data name="$this.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>416, 309</value>
|
||||
<value>416, 281</value>
|
||||
</data>
|
||||
<data name="$this.Text" xml:space="preserve">
|
||||
<value>选择类型</value>
|
||||
|
@ -376,7 +376,7 @@ namespace XenAdmin.Wizards.PatchingWizard
|
||||
}
|
||||
|
||||
bool result = _worker != null && !_worker.IsBusy && !problemsFound;
|
||||
panelErrorsFound.Visible = !result;
|
||||
panelErrorsFound.Visible = problemsFound;
|
||||
return result;
|
||||
}
|
||||
|
||||
|
@ -137,6 +137,7 @@ namespace XenAdmin.Wizards.PatchingWizard
|
||||
if(!host.CanApplyHotfixes)
|
||||
{
|
||||
row.Enabled = false;
|
||||
row.Cells[3].ToolTipText = Messages.PATCHINGWIZARD_SELECTSERVERPAGE_HOST_UNLICENSED;
|
||||
return;
|
||||
}
|
||||
|
||||
@ -154,7 +155,10 @@ namespace XenAdmin.Wizards.PatchingWizard
|
||||
if (host.isOEM)
|
||||
row.Enabled = false;
|
||||
if (Patch.IsAppliedTo(host,ConnectionsManager.XenConnectionsCopy))
|
||||
{
|
||||
row.Enabled = false;
|
||||
row.Cells[3].ToolTipText = Messages.PATCHINGWIZARD_SELECTSERVERPAGE_PATCH_ALREADY_APPLIED;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -691,9 +695,12 @@ namespace XenAdmin.Wizards.PatchingWizard
|
||||
else
|
||||
_poolIconHostCheckCell = new DataGridViewCheckBoxCell();
|
||||
|
||||
|
||||
_nameCell = new DataGridViewNameCell();
|
||||
_versionCell = new DataGridViewTextBoxCell();
|
||||
|
||||
|
||||
|
||||
Cells.AddRange(new[] { _expansionCell, _poolCheckBoxCell, _poolIconHostCheckCell, _nameCell, _versionCell });
|
||||
|
||||
this.UpdateDetails();
|
||||
|
@ -160,10 +160,6 @@ namespace XenAdmin.Wizards.RollingUpgradeWizard
|
||||
if(host == null)
|
||||
continue;
|
||||
|
||||
//WLB warning
|
||||
if (!Helpers.ClearwaterOrGreater(host.Connection))
|
||||
checkGroup.Add(new HostHasWlbCheck(host));
|
||||
|
||||
checkGroup.Add(new HAOffCheck(host));
|
||||
}
|
||||
|
||||
|
21
XenAdmin/Wlb/WlbReports/WorkloadReports.Designer.cs
generated
21
XenAdmin/Wlb/WlbReports/WorkloadReports.Designer.cs
generated
@ -40,8 +40,6 @@
|
||||
this.subscriptionView1 = new XenAdmin.Controls.Wlb.WlbReportSubscriptionView();
|
||||
this.contextMenuReports = new System.Windows.Forms.ContextMenuStrip(this.components);
|
||||
this.runReportToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.deprecationBanner = new XenAdmin.Controls.DeprecationBanner();
|
||||
this.splitContainerLeftPane.Panel1.SuspendLayout();
|
||||
this.splitContainerLeftPane.Panel2.SuspendLayout();
|
||||
this.splitContainerLeftPane.SuspendLayout();
|
||||
@ -49,7 +47,6 @@
|
||||
this.splitContainer1.Panel2.SuspendLayout();
|
||||
this.splitContainer1.SuspendLayout();
|
||||
this.contextMenuReports.SuspendLayout();
|
||||
this.tableLayoutPanel1.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// splitContainerLeftPane
|
||||
@ -149,25 +146,11 @@
|
||||
this.runReportToolStripMenuItem.Name = "runReportToolStripMenuItem";
|
||||
resources.ApplyResources(this.runReportToolStripMenuItem, "runReportToolStripMenuItem");
|
||||
//
|
||||
// tableLayoutPanel1
|
||||
//
|
||||
resources.ApplyResources(this.tableLayoutPanel1, "tableLayoutPanel1");
|
||||
this.tableLayoutPanel1.Controls.Add(this.deprecationBanner, 1, 0);
|
||||
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
|
||||
//
|
||||
// deprecationBanner
|
||||
//
|
||||
resources.ApplyResources(this.deprecationBanner, "deprecationBanner");
|
||||
this.deprecationBanner.BackColor = System.Drawing.Color.LightCoral;
|
||||
this.deprecationBanner.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.deprecationBanner.Name = "deprecationBanner";
|
||||
//
|
||||
// WorkloadReports
|
||||
//
|
||||
resources.ApplyResources(this, "$this");
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
|
||||
this.Controls.Add(this.splitContainer1);
|
||||
this.Controls.Add(this.tableLayoutPanel1);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Sizable;
|
||||
this.HelpButton = true;
|
||||
this.Icon = global::XenAdmin.Properties.Resources.AppIcon;
|
||||
@ -184,8 +167,6 @@
|
||||
this.splitContainer1.Panel2.PerformLayout();
|
||||
this.splitContainer1.ResumeLayout(false);
|
||||
this.contextMenuReports.ResumeLayout(false);
|
||||
this.tableLayoutPanel1.ResumeLayout(false);
|
||||
this.tableLayoutPanel1.PerformLayout();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
@ -203,7 +184,5 @@
|
||||
private XenAdmin.Controls.Wlb.WlbReportSubscriptionView subscriptionView1;
|
||||
private System.Windows.Forms.ContextMenuStrip contextMenuReports;
|
||||
private System.Windows.Forms.ToolStripMenuItem runReportToolStripMenuItem;
|
||||
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
|
||||
private XenAdmin.Controls.DeprecationBanner deprecationBanner;
|
||||
}
|
||||
}
|
||||
|
@ -69,6 +69,7 @@ namespace XenAdmin
|
||||
|
||||
private List<string> _midnightRideReports = new List<string>(new []
|
||||
{
|
||||
Messages.WLBREPORT_POOL_AUDIT_HISTORY,
|
||||
Messages.WLBREPORT_POOL_OPTIMIZATION_HISTORY
|
||||
});
|
||||
|
||||
@ -115,7 +116,6 @@ namespace XenAdmin
|
||||
InitializeComponent();
|
||||
_reportFile = reportFile;
|
||||
_runReport = run;
|
||||
SetupDeprecationBanner();
|
||||
}
|
||||
|
||||
#endregion
|
||||
@ -127,15 +127,6 @@ namespace XenAdmin
|
||||
|
||||
#region Private Methods
|
||||
|
||||
private void SetupDeprecationBanner()
|
||||
{
|
||||
deprecationBanner.FeatureName = Messages.WLB;
|
||||
deprecationBanner.AppliesToVersion = Messages.XENSERVER_6_2;
|
||||
deprecationBanner.BannerType = DeprecationBanner.Type.Removal;
|
||||
deprecationBanner.LinkUri = new Uri(InvisibleMessages.WLB_DEPRECATION_URL);
|
||||
deprecationBanner.Visible = true;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Populates the treeview with ReportInfo and SubscriptionInfo nodes
|
||||
/// </summary>
|
||||
|
@ -2312,7 +2312,6 @@
|
||||
<Compile Include="OrganizationalView.cs" />
|
||||
<Compile Include="Controls\SrPickerItem.cs" />
|
||||
<Compile Include="Controls\SummaryPanel\ISummaryPanelView.cs" />
|
||||
<Compile Include="Diagnostics\Checks\HostHasWlbCheck.cs" />
|
||||
<Compile Include="Diagnostics\Checks\HostMaintenanceModeCheck.cs" />
|
||||
<Compile Include="Diagnostics\Checks\UpgradingFromTampaAndOlderCheck.cs" />
|
||||
<Compile Include="Diagnostics\Checks\HostHasWssCheck.cs" />
|
||||
@ -2321,7 +2320,6 @@
|
||||
<Compile Include="Diagnostics\Problems\ConnectionProblem\VmprActivatedWarning.cs" />
|
||||
<Compile Include="Diagnostics\Problems\HostProblem\HostHasWssWarning.cs" />
|
||||
<Compile Include="Diagnostics\Problems\PoolProblem\MissingMultipleFCSRsProblem.cs" />
|
||||
<Compile Include="Diagnostics\Problems\PoolProblem\PoolHasWlbRemovalProblem.cs" />
|
||||
<Compile Include="Diagnostics\Problems\WarningWithInformationUrl.cs" />
|
||||
<Compile Include="Dialogs\ConnectionRefusedDialog.cs">
|
||||
<SubType>Form</SubType>
|
||||
|
@ -146,6 +146,11 @@ namespace XenAdminTests
|
||||
return GetFieldDeep<NavigationView>(o, name);
|
||||
}
|
||||
|
||||
public static NotificationsView GetNotificationsView(object o, string name)
|
||||
{
|
||||
return GetFieldDeep<NotificationsView>(o, name);
|
||||
}
|
||||
|
||||
public static DataGridViewEx GetDataGridViewEx(object o, string name)
|
||||
{
|
||||
return GetFieldDeep<DataGridViewEx>(o, name);
|
||||
|
@ -36,6 +36,7 @@ using System.Windows.Forms;
|
||||
|
||||
using NUnit.Framework;
|
||||
using XenAdmin;
|
||||
using XenAdmin.Controls.MainWindowControls;
|
||||
using XenAdmin.Core;
|
||||
using XenAdmin.TabPages;
|
||||
using XenAdmin.Controls;
|
||||
@ -168,6 +169,13 @@ namespace XenAdminTests.TabsAndMenus
|
||||
var rows = GetVisibleRows();
|
||||
Assert.AreEqual(1, rows.Count, "No connection item found.");
|
||||
Assert.IsFalse(showAllButton.Enabled);
|
||||
MW(() =>
|
||||
{
|
||||
TestUtils.GetToolStripItem(MainWindowWrapper.Item,
|
||||
"navigationPane.buttonNotifySmall").PerformClick();
|
||||
TestUtils.GetNotificationsView(MainWindowWrapper.Item,
|
||||
"navigationPane.notificationsView").SelectNotificationsSubMode(NotificationsSubMode.Events);
|
||||
});
|
||||
|
||||
// this should clear all items as they are all completed.
|
||||
MW(() => TestUtils.GetToolStripMenuItem(MainWindowWrapper.Item,
|
||||
|
@ -56,7 +56,7 @@ namespace XenAdminTests.UnitTests.AlertTests
|
||||
XenServerPatchAlert alert = new XenServerPatchAlert(p);
|
||||
alert.IncludeConnection(connA.Object);
|
||||
alert.IncludeConnection(connB.Object);
|
||||
alert.IncludeHosts(new List<Host>() { hostA.Object, hostB.Object });
|
||||
alert.IncludeHosts(new List<Host> { hostA.Object, hostB.Object });
|
||||
|
||||
IUnitTestVerifier validator = new VerifyGetters(alert);
|
||||
|
||||
@ -184,9 +184,11 @@ namespace XenAdminTests.UnitTests.AlertTests
|
||||
|
||||
hostA = new Mock<Host>(MockBehavior.Strict);
|
||||
hostA.Setup(n => n.Name).Returns("HostAName");
|
||||
hostA.Setup(n => n.Equals(It.IsAny<object>())).Returns((object o) => ReferenceEquals(o, hostA.Object));
|
||||
|
||||
hostB = new Mock<Host>(MockBehavior.Strict);
|
||||
hostB.Setup(n => n.Name).Returns("HostBName");
|
||||
hostB.Setup(n => n.Equals(It.IsAny<object>())).Returns((object o) => ReferenceEquals(o, hostB.Object));
|
||||
}
|
||||
|
||||
[TearDown]
|
||||
|
@ -184,9 +184,11 @@ namespace XenAdminTests.UnitTests.AlertTests
|
||||
|
||||
hostA = new Mock<Host>(MockBehavior.Strict);
|
||||
hostA.Setup(n => n.Name).Returns("HostAName");
|
||||
hostA.Setup(n => n.Equals(It.IsAny<object>())).Returns((object o) => ReferenceEquals(o, hostA.Object));
|
||||
|
||||
hostB = new Mock<Host>(MockBehavior.Strict);
|
||||
hostB.Setup(n => n.Name).Returns("HostBName");
|
||||
hostB.Setup(n => n.Equals(It.IsAny<object>())).Returns((object o) => ReferenceEquals(o, hostB.Object));
|
||||
}
|
||||
|
||||
[TearDown]
|
||||
|
@ -99,7 +99,9 @@ namespace XenAdmin.Actions
|
||||
{
|
||||
_pool = value;
|
||||
SetAppliesTo(Pool);
|
||||
if(Pool!=null&&Pool.Connection!=null&&Helpers.GetPool(Pool.Connection)==null&& Pool.Connection.Cache.Hosts.Length == 1)
|
||||
if (Pool != null && Pool.Connection != null &&
|
||||
Helpers.GetPool(Pool.Connection) == null &&
|
||||
Pool.Connection.Cache.Hosts.Length == 1)
|
||||
{
|
||||
SetAppliesTo(Pool.Connection.Cache.Hosts[0]);
|
||||
}
|
||||
@ -291,7 +293,16 @@ namespace XenAdmin.Actions
|
||||
public string Description
|
||||
{
|
||||
get { return _description; }
|
||||
set { if (_description != value) { _description = value; if (LogDescriptionChanges) log.Debug(_description); OnChanged(); } }
|
||||
set
|
||||
{
|
||||
if (_description != value)
|
||||
{
|
||||
_description = value;
|
||||
if (LogDescriptionChanges)
|
||||
log.Debug(_description);
|
||||
OnChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public bool IsCompleted
|
||||
|
@ -129,13 +129,10 @@ namespace XenAdmin.Actions
|
||||
catch (Failure f)
|
||||
{
|
||||
// Need to check if the patch already exists.
|
||||
// If it does, and we're upload multiple patches
|
||||
// (ie from the wizard) then we don't care about
|
||||
// throwing the error
|
||||
// If it does then we use it and ignore the PATCH_ALREADY_EXISTS error (CA-110209).
|
||||
if (f.ErrorDescription != null
|
||||
&& f.ErrorDescription.Count > 1
|
||||
&& f.ErrorDescription[0] == XenAPI.Failure.PATCH_ALREADY_EXISTS
|
||||
&& embeddedHosts.Count + retailHosts.Count > 1)
|
||||
&& f.ErrorDescription[0] == XenAPI.Failure.PATCH_ALREADY_EXISTS)
|
||||
{
|
||||
string uuid = f.ErrorDescription[1];
|
||||
Session session = host.Connection.DuplicateSession();
|
||||
|
18
XenModel/InvisibleMessages.Designer.cs
generated
18
XenModel/InvisibleMessages.Designer.cs
generated
@ -105,15 +105,6 @@ namespace XenAdmin {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to http://support.citrix.com/article/CTX137336.
|
||||
/// </summary>
|
||||
public static string DVSC_DEPRECATION_URL {
|
||||
get {
|
||||
return ResourceManager.GetString("DVSC_DEPRECATION_URL", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to http://www.citrix.com/xenserver.
|
||||
/// </summary>
|
||||
@ -384,15 +375,6 @@ namespace XenAdmin {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to http://support.citrix.com/article/CTX137333.
|
||||
/// </summary>
|
||||
public static string WLB_DEPRECATION_URL {
|
||||
get {
|
||||
return ResourceManager.GetString("WLB_DEPRECATION_URL", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to http://support.citrix.com/article/CTX137334.
|
||||
/// </summary>
|
||||
|
@ -132,9 +132,6 @@
|
||||
<data name="COMMUNITY_URL" xml:space="preserve">
|
||||
<value>http://xenserver.org/</value>
|
||||
</data>
|
||||
<data name="DVSC_DEPRECATION_URL" xml:space="preserve">
|
||||
<value>http://support.citrix.com/article/CTX137336</value>
|
||||
</data>
|
||||
<data name="HOMEPAGE" xml:space="preserve">
|
||||
<value>http://www.citrix.com/xenserver</value>
|
||||
</data>
|
||||
@ -225,9 +222,6 @@
|
||||
<data name="VMPR_DEPRECATION_URL" xml:space="preserve">
|
||||
<value>http://support.citrix.com/article/CTX137335</value>
|
||||
</data>
|
||||
<data name="WLB_DEPRECATION_URL" xml:space="preserve">
|
||||
<value>http://support.citrix.com/article/CTX137333</value>
|
||||
</data>
|
||||
<data name="WSS_DEPRECATION_URL" xml:space="preserve">
|
||||
<value>http://support.citrix.com/article/CTX137334</value>
|
||||
</data>
|
||||
|
@ -132,9 +132,6 @@
|
||||
<data name="COMMUNITY_URL" xml:space="preserve">
|
||||
<value>http://xenserver.org/</value>
|
||||
</data>
|
||||
<data name="DVSC_DEPRECATION_URL" xml:space="preserve">
|
||||
<value>http://support.citrix.com/article/CTX137336</value>
|
||||
</data>
|
||||
<data name="HOMEPAGE" xml:space="preserve">
|
||||
<value>http://www.citrix.com/xenserver</value>
|
||||
</data>
|
||||
@ -225,9 +222,6 @@
|
||||
<data name="VMPR_DEPRECATION_URL" xml:space="preserve">
|
||||
<value>http://support.citrix.com/article/CTX137335</value>
|
||||
</data>
|
||||
<data name="WLB_DEPRECATION_URL" xml:space="preserve">
|
||||
<value>http://support.citrix.com/article/CTX137333</value>
|
||||
</data>
|
||||
<data name="WSS_DEPRECATION_URL" xml:space="preserve">
|
||||
<value>http://support.citrix.com/article/CTX137334</value>
|
||||
</data>
|
||||
|
@ -132,9 +132,6 @@
|
||||
<data name="COMMUNITY_URL" xml:space="preserve">
|
||||
<value>http://xenserver.org/</value>
|
||||
</data>
|
||||
<data name="DVSC_DEPRECATION_URL" xml:space="preserve">
|
||||
<value>http://support.citrix.com/article/CTX137336</value>
|
||||
</data>
|
||||
<data name="HOMEPAGE" xml:space="preserve">
|
||||
<value>http://www.citrix.com/xenserver</value>
|
||||
</data>
|
||||
@ -225,9 +222,6 @@
|
||||
<data name="VMPR_DEPRECATION_URL" xml:space="preserve">
|
||||
<value>http://support.citrix.com/article/CTX137335</value>
|
||||
</data>
|
||||
<data name="WLB_DEPRECATION_URL" xml:space="preserve">
|
||||
<value>http://support.citrix.com/article/CTX137333</value>
|
||||
</data>
|
||||
<data name="WSS_DEPRECATION_URL" xml:space="preserve">
|
||||
<value>http://support.citrix.com/article/CTX137334</value>
|
||||
</data>
|
||||
|
49
XenModel/Messages.Designer.cs
generated
49
XenModel/Messages.Designer.cs
generated
@ -5988,7 +5988,7 @@ namespace XenAdmin {
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Pool '{0}' must be removed from WLB.
|
||||
/// Looks up a localized string similar to Pool '{0}' cannot have WLB enabled.
|
||||
/// </summary>
|
||||
public static string CHECK_WLB_ENABLED {
|
||||
get {
|
||||
@ -6086,15 +6086,6 @@ namespace XenAdmin {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Checking the presence of WLB.
|
||||
/// </summary>
|
||||
public static string CHECKING_WLB_STATUS {
|
||||
get {
|
||||
return ResourceManager.GetString("CHECKING_WLB_STATUS", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Checking the possible presence of WSS appliances.
|
||||
/// </summary>
|
||||
@ -8733,15 +8724,6 @@ namespace XenAdmin {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Deconfigure WLB.
|
||||
/// </summary>
|
||||
public static string DECONFIGURE_WLB {
|
||||
get {
|
||||
return ResourceManager.GetString("DECONFIGURE_WLB", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Disconnecting Workload Balancing..
|
||||
/// </summary>
|
||||
@ -15161,7 +15143,7 @@ namespace XenAdmin {
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Remove.
|
||||
/// Looks up a localized string similar to Pause WLB.
|
||||
/// </summary>
|
||||
public static string HELP_MESSAGE_DISABLE_WLB {
|
||||
get {
|
||||
@ -24026,6 +24008,24 @@ namespace XenAdmin {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Subscription Advantage required.
|
||||
/// </summary>
|
||||
public static string PATCHINGWIZARD_SELECTSERVERPAGE_HOST_UNLICENSED {
|
||||
get {
|
||||
return ResourceManager.GetString("PATCHINGWIZARD_SELECTSERVERPAGE_HOST_UNLICENSED", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Update already applied.
|
||||
/// </summary>
|
||||
public static string PATCHINGWIZARD_SELECTSERVERPAGE_PATCH_ALREADY_APPLIED {
|
||||
get {
|
||||
return ResourceManager.GetString("PATCHINGWIZARD_SELECTSERVERPAGE_PATCH_ALREADY_APPLIED", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Select Servers.
|
||||
/// </summary>
|
||||
@ -26589,15 +26589,6 @@ namespace XenAdmin {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to '{0}': WLB has been removed in XenServer 6.2.
|
||||
/// </summary>
|
||||
public static string RPU_WIZARD_WLB_REMOVAL {
|
||||
get {
|
||||
return ResourceManager.GetString("RPU_WIZARD_WLB_REMOVAL", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to '{0}': The use of WSS servers has been removed in XenServer 6.2.
|
||||
/// </summary>
|
||||
|
@ -2159,14 +2159,11 @@ CPU 使用率が {3} を超えるとアラートが送信されます。</value>
|
||||
<data name="CHECKING_VMPR_STATUS" xml:space="preserve">
|
||||
<value>VM 保護ポリシーの存在を確認しています</value>
|
||||
</data>
|
||||
<data name="CHECKING_WLB_STATUS" xml:space="preserve">
|
||||
<value>WLB の存在を確認しています</value>
|
||||
</data>
|
||||
<data name="CHECKING_WSS_STATUS" xml:space="preserve">
|
||||
<value>WSS アプライアンスの存在を確認しています</value>
|
||||
</data>
|
||||
<data name="CHECK_WLB_ENABLED" xml:space="preserve">
|
||||
<value>プール '{0}' を WLB から除外する必要があります</value>
|
||||
<value>プール '{0}' 中の WLB 機能をアクティブにすることができません</value>
|
||||
</data>
|
||||
<data name="CHIN" xml:space="preserve">
|
||||
<value>サーバー間のプライベート ネットワーク</value>
|
||||
@ -3071,9 +3068,6 @@ VM {2} をエクスポートしてもよろしいですか?</value>
|
||||
<data name="DEBIAN_SARGE_31" xml:space="preserve">
|
||||
<value>Debian Sarge 3.1</value>
|
||||
</data>
|
||||
<data name="DECONFIGURE_WLB" xml:space="preserve">
|
||||
<value>WLB の設定解除</value>
|
||||
</data>
|
||||
<data name="DECONFIGURING_WLB" xml:space="preserve">
|
||||
<value>ワークロード バランスを切断しています。</value>
|
||||
</data>
|
||||
@ -5247,7 +5241,7 @@ VM の再起動優先度をクリアしてもよろしいですか?</value>
|
||||
<value>ヘルプ</value>
|
||||
</data>
|
||||
<data name="HELP_MESSAGE_DISABLE_WLB" xml:space="preserve">
|
||||
<value>削除</value>
|
||||
<value>サスペンド</value>
|
||||
</data>
|
||||
<data name="HIDE_DETAILS" xml:space="preserve">
|
||||
<value>詳細を非表示</value>
|
||||
@ -9040,9 +9034,6 @@ StorageLink Gateway を使用する VM の XenServer 6.0 へのアップグレ
|
||||
<data name="RPU_WIZARD_VMPR_VMPP_DEPRECATION" xml:space="preserve">
|
||||
<value>'{0}': VM 保護ポリシーは、XenServer 6.2 から削除されています</value>
|
||||
</data>
|
||||
<data name="RPU_WIZARD_WLB_REMOVAL" xml:space="preserve">
|
||||
<value>'{0}': WLB は、XenServer 6.2 から削除されています</value>
|
||||
</data>
|
||||
<data name="RPU_WIZARD_WSS_DEPRECATED" xml:space="preserve">
|
||||
<value>'{0}': WSS サーバーのサポートは、XenServer 6.2 から削除されています</value>
|
||||
</data>
|
||||
|
@ -2210,14 +2210,11 @@ Do you want to assign it to the policy '{2}' instead?</value>
|
||||
<data name="CHECKING_VMPR_STATUS" xml:space="preserve">
|
||||
<value>Checking the presence of VM Protection Policies</value>
|
||||
</data>
|
||||
<data name="CHECKING_WLB_STATUS" xml:space="preserve">
|
||||
<value>Checking the presence of WLB</value>
|
||||
</data>
|
||||
<data name="CHECKING_WSS_STATUS" xml:space="preserve">
|
||||
<value>Checking the possible presence of WSS appliances</value>
|
||||
</data>
|
||||
<data name="CHECK_WLB_ENABLED" xml:space="preserve">
|
||||
<value>Pool '{0}' must be removed from WLB</value>
|
||||
<value>Pool '{0}' cannot have WLB enabled</value>
|
||||
</data>
|
||||
<data name="CHIN" xml:space="preserve">
|
||||
<value>Cross-server private network</value>
|
||||
@ -3134,9 +3131,6 @@ Please reconnect the host and try again.</value>
|
||||
<data name="DEBIAN_SARGE_31" xml:space="preserve">
|
||||
<value>Debian Sarge 3.1</value>
|
||||
</data>
|
||||
<data name="DECONFIGURE_WLB" xml:space="preserve">
|
||||
<value>Deconfigure WLB</value>
|
||||
</data>
|
||||
<data name="DECONFIGURING_WLB" xml:space="preserve">
|
||||
<value>Disconnecting Workload Balancing.</value>
|
||||
</data>
|
||||
@ -5326,7 +5320,7 @@ Click Configure HA to alter the settings displayed below.</value>
|
||||
<value>Help</value>
|
||||
</data>
|
||||
<data name="HELP_MESSAGE_DISABLE_WLB" xml:space="preserve">
|
||||
<value>Remove</value>
|
||||
<value>Pause WLB</value>
|
||||
</data>
|
||||
<data name="HIDE_DETAILS" xml:space="preserve">
|
||||
<value>Hide Details</value>
|
||||
@ -8316,6 +8310,12 @@ It is strongly recommended that you Cancel and apply the latest version of the p
|
||||
<data name="PATCHINGWIZARD_SELECTPATCHPAGE_UPDATESEXT" xml:space="preserve">
|
||||
<value>XenServer Updates|*.xsupdate;*.xsoem</value>
|
||||
</data>
|
||||
<data name="PATCHINGWIZARD_SELECTSERVERPAGE_HOST_UNLICENSED" xml:space="preserve">
|
||||
<value>Subscription Advantage required</value>
|
||||
</data>
|
||||
<data name="PATCHINGWIZARD_SELECTSERVERPAGE_PATCH_ALREADY_APPLIED" xml:space="preserve">
|
||||
<value>Update already applied</value>
|
||||
</data>
|
||||
<data name="PATCHINGWIZARD_SELECTSERVERPAGE_TEXT" xml:space="preserve">
|
||||
<value>Select Servers</value>
|
||||
</data>
|
||||
@ -9253,9 +9253,6 @@ Upgrading VMs using StorageLink Gateway to XenServer 6.0 is only supported if th
|
||||
<data name="RPU_WIZARD_VMPR_VMPP_DEPRECATION" xml:space="preserve">
|
||||
<value>'{0}': VM Protection Policies have been removed in XenServer 6.2</value>
|
||||
</data>
|
||||
<data name="RPU_WIZARD_WLB_REMOVAL" xml:space="preserve">
|
||||
<value>'{0}': WLB has been removed in XenServer 6.2</value>
|
||||
</data>
|
||||
<data name="RPU_WIZARD_WSS_DEPRECATED" xml:space="preserve">
|
||||
<value>'{0}': The use of WSS servers has been removed in XenServer 6.2</value>
|
||||
</data>
|
||||
|
@ -2159,14 +2159,11 @@ XenServer 可以重新启动服务器并将服务器的 CPU 级别降至池中
|
||||
<data name="CHECKING_VMPR_STATUS" xml:space="preserve">
|
||||
<value>正在检查是否存在 VM 保护策略</value>
|
||||
</data>
|
||||
<data name="CHECKING_WLB_STATUS" xml:space="preserve">
|
||||
<value>正在检查是否存在 WLB</value>
|
||||
</data>
|
||||
<data name="CHECKING_WSS_STATUS" xml:space="preserve">
|
||||
<value>正在检查是否可能存在 WSS 设备</value>
|
||||
</data>
|
||||
<data name="CHECK_WLB_ENABLED" xml:space="preserve">
|
||||
<value>必须从 WLB 中删除池“{0}”</value>
|
||||
<value>池“{0}”中的WLB功能不能被激活</value>
|
||||
</data>
|
||||
<data name="CHIN" xml:space="preserve">
|
||||
<value>跨服务器专用网络</value>
|
||||
@ -3071,9 +3068,6 @@ XenServer 可以重新启动服务器并将服务器的 CPU 级别降至池中
|
||||
<data name="DEBIAN_SARGE_31" xml:space="preserve">
|
||||
<value>Debian Sarge 3.1</value>
|
||||
</data>
|
||||
<data name="DECONFIGURE_WLB" xml:space="preserve">
|
||||
<value>取消配置 WLB</value>
|
||||
</data>
|
||||
<data name="DECONFIGURING_WLB" xml:space="preserve">
|
||||
<value>断开 Workload Balancing 的连接。</value>
|
||||
</data>
|
||||
@ -5245,7 +5239,7 @@ XenServer 可以重新启动服务器并将服务器的 CPU 级别降至池中
|
||||
<value>帮助</value>
|
||||
</data>
|
||||
<data name="HELP_MESSAGE_DISABLE_WLB" xml:space="preserve">
|
||||
<value>删除</value>
|
||||
<value>暂停</value>
|
||||
</data>
|
||||
<data name="HIDE_DETAILS" xml:space="preserve">
|
||||
<value>隐藏详细信息</value>
|
||||
@ -9042,9 +9036,6 @@ XenServer 可以重新启动服务器并将其 CPU 降至主服务器的级别
|
||||
<data name="RPU_WIZARD_VMPR_VMPP_DEPRECATION" xml:space="preserve">
|
||||
<value>{0}: 已在 XenServer 6.2 中删除 VM 保护策略</value>
|
||||
</data>
|
||||
<data name="RPU_WIZARD_WLB_REMOVAL" xml:space="preserve">
|
||||
<value>{0}: 已在 XenServer 6.2 中删除 WLB</value>
|
||||
</data>
|
||||
<data name="RPU_WIZARD_WSS_DEPRECATED" xml:space="preserve">
|
||||
<value>{0}: 已在 XenServer 6.2 中删除对 WSS 服务器的使用</value>
|
||||
</data>
|
||||
|
@ -127,6 +127,8 @@ namespace XenAdmin.Network
|
||||
GetServerTime();
|
||||
|
||||
// Now that we've successfully received a heartbeat, reset our 'second chance' for the server to timeout
|
||||
if (retrying)
|
||||
log.DebugFormat("Heartbeat for {0} has come back", session == null ? "null" : session.Url);
|
||||
retrying = false;
|
||||
}
|
||||
catch (TargetInvocationException exn)
|
||||
|
@ -31,7 +31,6 @@
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Globalization;
|
||||
using System.Net;
|
||||
using System.Reflection;
|
||||
@ -39,7 +38,6 @@ using System.Threading;
|
||||
using CookComputing.XmlRpc;
|
||||
using XenAdmin.Actions;
|
||||
using XenAdmin.Core;
|
||||
using XenAdmin.ServerDBs;
|
||||
using XenAPI;
|
||||
using System.Diagnostics;
|
||||
|
||||
@ -996,10 +994,9 @@ namespace XenAdmin.Network
|
||||
}
|
||||
|
||||
log.InfoFormat("Connected to {0} ({1}:{2})", FriendlyName, taskHostname, task_port);
|
||||
string name =
|
||||
string.IsNullOrEmpty(FriendlyName) || FriendlyName == taskHostname ?
|
||||
taskHostname :
|
||||
string.Format("{0} ({1})", FriendlyName, taskHostname);
|
||||
string name = string.IsNullOrEmpty(FriendlyName) || FriendlyName == taskHostname
|
||||
? taskHostname
|
||||
: string.Format("{0} ({1})", FriendlyName, taskHostname);
|
||||
string title = string.Format(Messages.CONNECTING_NOTICE_TITLE, name);
|
||||
string msg = string.Format(Messages.CONNECTING_NOTICE_TEXT, name);
|
||||
log.Info(msg);
|
||||
@ -1481,11 +1478,10 @@ namespace XenAdmin.Network
|
||||
|
||||
ExpressRestriction e = (ExpressRestriction)error;
|
||||
string msg = string.Format(Messages.CONNECTION_RESTRICTED_MESSAGE, e.HostName, e.ExistingHostName);
|
||||
log.Info(msg);
|
||||
// Add an informational log message saying why the connection attempt failed
|
||||
ActionBase action = new ActionBase(
|
||||
string.Format(Messages.CONNECTION_RESTRICTED_NOTICE_TITLE, e.HostName),
|
||||
msg, false, true, Messages.CONNECTION_RESTRICTED_NOTICE_TITLE);
|
||||
log.Info(msg);
|
||||
string title = string.Format(Messages.CONNECTION_RESTRICTED_NOTICE_TITLE, e.HostName);
|
||||
ActionBase action = new ActionBase(title, msg, false, true, msg);
|
||||
SetPoolAndHostInAction(action, pool, PoolOpaqueRef);
|
||||
|
||||
OnConnectionResult(false, Messages.CONNECTION_RESTRICTED_MESSAGE, error);
|
||||
@ -1511,14 +1507,25 @@ namespace XenAdmin.Network
|
||||
{
|
||||
// We never connected
|
||||
string reason = GetReason(error);
|
||||
log.WarnFormat("IXenConnection: failed to connect to {0}: {1}", this.HostnameWithPort, reason);
|
||||
|
||||
// Create a new log message to say the connection attempt failed
|
||||
string title = string.Format(Messages.CONNECTION_FAILED_TITLE, HostnameWithPort);
|
||||
ActionBase n = new ActionBase(title, reason, false, true, title);
|
||||
SetPoolAndHostInAction(n, pool, PoolOpaqueRef);
|
||||
log.WarnFormat("IXenConnection: failed to connect to {0}: {1}", HostnameWithPort, reason);
|
||||
|
||||
Failure f = error as Failure;
|
||||
if (f != null && f.ErrorDescription[0] == Failure.HOST_IS_SLAVE)
|
||||
{
|
||||
//do not log an event in this case
|
||||
}
|
||||
else if (error is ConnectionExists)
|
||||
{
|
||||
//do not log an event in this case
|
||||
}
|
||||
else
|
||||
{
|
||||
// Create a new log message to say the connection attempt failed
|
||||
string title = string.Format(Messages.CONNECTION_FAILED_TITLE, HostnameWithPort);
|
||||
ActionBase n = new ActionBase(title, reason, false, true, reason);
|
||||
SetPoolAndHostInAction(n, pool, PoolOpaqueRef);
|
||||
}
|
||||
|
||||
// We only want to continue the master search in certain circumstances
|
||||
if (FindingNewMaster && (error is WebException || (f != null && f.ErrorDescription[0] != Failure.RBAC_PERMISSION_DENIED)))
|
||||
{
|
||||
@ -1662,7 +1669,7 @@ namespace XenAdmin.Network
|
||||
|
||||
string title = string.Format(Messages.CONNECTION_LOST_NOTICE_TITLE,
|
||||
LastConnectionFullName);
|
||||
ActionBase n = new ActionBase(title, description, false, true, title);
|
||||
ActionBase n = new ActionBase(title, description, false, true, description);
|
||||
SetPoolAndHostInAction(n, pool, poolopaqueref);
|
||||
OnConnectionLost();
|
||||
}
|
||||
@ -1814,10 +1821,9 @@ namespace XenAdmin.Network
|
||||
private void ReconnectMaster()
|
||||
{
|
||||
// Add an informational entry to the log
|
||||
ActionBase action = new ActionBase(
|
||||
string.Format(Messages.CONNECTION_FINDING_MASTER_TITLE, LastConnectionFullName),
|
||||
string.Format(Messages.CONNECTION_FINDING_MASTER_DESCRIPTION, LastConnectionFullName, Hostname),
|
||||
false, true);
|
||||
string title = string.Format(Messages.CONNECTION_FINDING_MASTER_TITLE, LastConnectionFullName);
|
||||
string descr = string.Format(Messages.CONNECTION_FINDING_MASTER_DESCRIPTION, LastConnectionFullName, Hostname);
|
||||
ActionBase action = new ActionBase(title, descr, false, true);
|
||||
SetPoolAndHostInAction(action, null, PoolOpaqueRef);
|
||||
log.DebugFormat("Looking for master for {0} on {1}...", LastConnectionFullName, Hostname);
|
||||
|
||||
|
@ -419,6 +419,36 @@ namespace XenAdmin.Core
|
||||
Helpers.HostBuildNumber(host) == CUSTOM_BUILD_NUMBER;
|
||||
}
|
||||
|
||||
/// <param name="conn">May be null, in which case true is returned.</param>
|
||||
public static bool CreedenceOrGreater(IXenConnection conn)
|
||||
{
|
||||
return conn == null ? true : CreedenceOrGreater(Helpers.GetMaster(conn));
|
||||
}
|
||||
|
||||
/// Creedence is ver. 1.9.0
|
||||
/// <param name="host">May be null, in which case true is returned.</param>
|
||||
public static bool CreedenceOrGreater(Host host)
|
||||
{
|
||||
if (host == null)
|
||||
return true;
|
||||
|
||||
string platform_version = HostPlatformVersion(host);
|
||||
return
|
||||
platform_version != null && productVersionCompare(platform_version, "1.8.900") >= 0 ||
|
||||
HostBuildNumber(host) == CUSTOM_BUILD_NUMBER;
|
||||
}
|
||||
|
||||
/// Clearwater is ver. 1.7.0
|
||||
/// <param name="conn">May be null, in which case true is returned.</param>
|
||||
public static bool IsClearwater(IXenConnection conn)
|
||||
{
|
||||
if(conn == null) return true;
|
||||
else {
|
||||
Host host = Helpers.GetMaster(conn);
|
||||
return (ClearwaterOrGreater(host) && !CreedenceOrGreater(host));
|
||||
}
|
||||
}
|
||||
|
||||
/// <param name="conn">May be null, in which case true is returned.</param>
|
||||
public static bool ClearwaterOrGreater(IXenConnection conn)
|
||||
{
|
||||
@ -452,7 +482,7 @@ namespace XenAdmin.Core
|
||||
|
||||
string platform_version = HostPlatformVersion(host);
|
||||
return
|
||||
platform_version != null && productVersionCompare(platform_version, "1.8.50") >= 0 ||
|
||||
platform_version != null && productVersionCompare(platform_version, "1.9.50") >= 0 ||
|
||||
HostBuildNumber(host) == CUSTOM_BUILD_NUMBER;
|
||||
}
|
||||
|
||||
@ -469,7 +499,8 @@ namespace XenAdmin.Core
|
||||
/// <returns>true when wlb is enabled, otherwise false</returns>
|
||||
public static bool WlbEnabled(IXenConnection connection)
|
||||
{
|
||||
if (ClearwaterOrGreater(connection))
|
||||
//Clearwater doesn't has WLB
|
||||
if (IsClearwater(connection))
|
||||
return false;
|
||||
|
||||
Pool pool = GetPoolOfOne(connection);
|
||||
@ -486,7 +517,8 @@ namespace XenAdmin.Core
|
||||
|
||||
public static bool WlbConfigured(IXenConnection conn)
|
||||
{
|
||||
if (ClearwaterOrGreater(conn))
|
||||
//Clearwater doesn't has WLB
|
||||
if (IsClearwater(conn))
|
||||
return false;
|
||||
|
||||
Pool p = GetPoolOfOne(conn);
|
||||
|
Loading…
Reference in New Issue
Block a user