CP-14647: Intermediate check-in #5

This should cover everything except updating the tests to use more recent
servers.
This commit is contained in:
Stephen Turner 2015-10-28 18:12:31 +00:00
parent ce609e31ff
commit 8ea7e73b55
40 changed files with 121 additions and 2880 deletions

View File

@ -166,10 +166,8 @@ namespace XenAdmin.Commands
foreach (Host host in _hosts)
{
// only allowed to add standalone hosts.
if (Helpers.GetPool(host.Connection) != null || host.RestrictPooling)
{
if (Helpers.GetPool(host.Connection) != null)
return false;
}
}
return true;
}

View File

@ -103,11 +103,6 @@ namespace XenAdmin.Commands
{
string hostName = Helpers.GetName(host.Connection);
if (host.RestrictPooling)
{
hostName = String.Format(Messages.HOST_MENU_ADD_SERVER, hostName);
}
AddHostToPoolCommand cmd = new AddHostToPoolCommand(Command.MainWindowCommandInterface, new Host[] { host }, Helpers.GetPool(connection), true);
CommandToolStripMenuItem hostMenuItem = new CommandToolStripMenuItem(cmd, hostName.EscapeAmpersands(), Resources._000_TreeConnected_h32bit_16);

View File

@ -114,22 +114,13 @@ namespace XenAdmin.Commands
private bool CanExecute(Host host)
{
return host != null && host.Connection != null && host.Connection.IsConnected && Helpers.GetPool(host.Connection) == null && !host.RestrictPooling;
return host != null && host.Connection != null && host.Connection.IsConnected && Helpers.GetPool(host.Connection) == null;
}
public override string MenuText
{
get
{
foreach (SelectedItem item in GetSelection())
{
Host host = item.XenObject as Host;
if (host != null && host.Connection != null && host.Connection.IsConnected && Helpers.GetPool(host.Connection) == null && host.RestrictPooling)
{
return Messages.HOST_MENU_ADD_TO_POOL_LICENSE_RESTRICTION;
}
}
return Messages.HOST_MENU_ADD_TO_POOL;
}
}

View File

@ -59,8 +59,6 @@ namespace XenAdmin.Controls.NetworkingTab
}
private IXenObject _xenObject = null;
private bool QoSRestricted = false;
public IXenObject XenObject
{
get
@ -116,10 +114,6 @@ namespace XenAdmin.Controls.NetworkingTab
// update the list when we get new metrics
_xenObject.Connection.Cache.RegisterBatchCollectionChanged<VM_guest_metrics>(VM_guest_metrics_BatchCollectionChanged);
// Check if QoS is enabled for this VM
Host currentHost = Helpers.GetMaster(_xenObject.Connection);
QoSRestricted = currentHost != null && currentHost.RestrictQoS;
AddNetworkButton.Text = Messages.VM_NETWORK_TAB_ADD_BUTTON_LABEL;
EditNetworkButton.Text = Messages.VM_NETWORK_TAB_EDIT_BUTTON_LABEL;
RemoveNetworkButton.Text = Messages.VM_NETWORK_TAB_REMOVE_BUTTON_LABEL;

View File

@ -1,95 +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 System.Windows.Forms;
namespace XenAdmin.Dialogs
{
public partial class SetStorageLinkLicenseServerDialog : XenDialogBase
{
public SetStorageLinkLicenseServerDialog(string address, int port)
{
InitializeComponent();
Host = address;
Port = port;
UpdateEnablement();
}
public string Host
{
get
{
return txtHost.Text.Trim();
}
set
{
txtHost.Text = value;
}
}
public int Port
{
get
{
if (Util.IsValidPort(txtPort.Text.Trim()))
{
return int.Parse(txtPort.Text.Trim());
}
return 27000;
}
set
{
txtPort.Text = value.ToString();
}
}
private void HostnameTextBox_TextChanged(object sender, EventArgs e)
{
UpdateEnablement();
}
private void PortNumTextBox_TextChanged(object sender, EventArgs e)
{
UpdateEnablement();
}
private void UpdateEnablement()
{
btnOK.Enabled = txtHost.Text.Trim().Length > 0 && Util.IsValidPort(txtPort.Text.Trim());
}
private void btn_Click(object sender, EventArgs e)
{
Close();
}
}
}

View File

@ -1,138 +0,0 @@
namespace XenAdmin.Dialogs
{
partial class SetStorageLinkLicenseServerDialog
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(SetStorageLinkLicenseServerDialog));
this.table = new System.Windows.Forms.TableLayoutPanel();
this.txtPort = new System.Windows.Forms.TextBox();
this.lblPort = new System.Windows.Forms.Label();
this.lblHost = new System.Windows.Forms.Label();
this.txtHost = new System.Windows.Forms.TextBox();
this.flow = new System.Windows.Forms.FlowLayoutPanel();
this.btnCancel = new System.Windows.Forms.Button();
this.btnOK = new System.Windows.Forms.Button();
this.lblMain = new System.Windows.Forms.Label();
this.table.SuspendLayout();
this.flow.SuspendLayout();
this.SuspendLayout();
//
// table
//
resources.ApplyResources(this.table, "table");
this.table.Controls.Add(this.txtPort, 1, 2);
this.table.Controls.Add(this.lblPort, 0, 2);
this.table.Controls.Add(this.lblHost, 0, 1);
this.table.Controls.Add(this.txtHost, 1, 1);
this.table.Controls.Add(this.flow, 0, 3);
this.table.Controls.Add(this.lblMain, 0, 0);
this.table.Name = "table";
//
// txtPort
//
resources.ApplyResources(this.txtPort, "txtPort");
this.txtPort.Name = "txtPort";
this.txtPort.TextChanged += new System.EventHandler(this.PortNumTextBox_TextChanged);
//
// lblPort
//
resources.ApplyResources(this.lblPort, "lblPort");
this.lblPort.Name = "lblPort";
//
// lblHost
//
resources.ApplyResources(this.lblHost, "lblHost");
this.lblHost.Name = "lblHost";
//
// txtHost
//
resources.ApplyResources(this.txtHost, "txtHost");
this.txtHost.Name = "txtHost";
this.txtHost.TextChanged += new System.EventHandler(this.HostnameTextBox_TextChanged);
//
// flow
//
resources.ApplyResources(this.flow, "flow");
this.table.SetColumnSpan(this.flow, 2);
this.flow.Controls.Add(this.btnCancel);
this.flow.Controls.Add(this.btnOK);
this.flow.Name = "flow";
//
// btnCancel
//
resources.ApplyResources(this.btnCancel, "btnCancel");
this.btnCancel.CausesValidation = false;
this.btnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
this.btnCancel.Name = "btnCancel";
this.btnCancel.UseVisualStyleBackColor = true;
this.btnCancel.Click += new System.EventHandler(this.btn_Click);
//
// btnOK
//
resources.ApplyResources(this.btnOK, "btnOK");
this.btnOK.DialogResult = System.Windows.Forms.DialogResult.OK;
this.btnOK.Name = "btnOK";
this.btnOK.UseVisualStyleBackColor = true;
this.btnOK.Click += new System.EventHandler(this.btn_Click);
//
// lblMain
//
resources.ApplyResources(this.lblMain, "lblMain");
this.table.SetColumnSpan(this.lblMain, 2);
this.lblMain.Name = "lblMain";
//
// SetStorageLinkLicenseServerDialog
//
this.AcceptButton = this.btnOK;
resources.ApplyResources(this, "$this");
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
this.CancelButton = this.btnCancel;
this.Controls.Add(this.table);
this.HelpButton = false;
this.Name = "SetStorageLinkLicenseServerDialog";
this.table.ResumeLayout(false);
this.table.PerformLayout();
this.flow.ResumeLayout(false);
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.TableLayoutPanel table;
private System.Windows.Forms.Label lblMain;
private System.Windows.Forms.FlowLayoutPanel flow;
private System.Windows.Forms.Button btnCancel;
private System.Windows.Forms.Button btnOK;
private System.Windows.Forms.Label lblHost;
private System.Windows.Forms.Label lblPort;
private System.Windows.Forms.TextBox txtHost;
private System.Windows.Forms.TextBox txtPort;
}
}

View File

@ -1,480 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<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>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="mscorlib" name="mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="table.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="table.AutoSizeMode" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
<value>GrowAndShrink</value>
</data>
<data name="table.ColumnCount" type="System.Int32, mscorlib">
<value>2</value>
</data>
<data name="txtPort.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="txtPort.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="txtPort.Location" type="System.Drawing.Point, System.Drawing">
<value>86, 72</value>
</data>
<data name="txtPort.MaxLength" type="System.Int32, mscorlib">
<value>255</value>
</data>
<data name="txtPort.Size" type="System.Drawing.Size, System.Drawing">
<value>344, 23</value>
</data>
<data name="txtPort.TabIndex" type="System.Int32, mscorlib">
<value>36</value>
</data>
<data name="txtPort.Text" xml:space="preserve">
<value>27000</value>
</data>
<data name="&gt;&gt;txtPort.Name" xml:space="preserve">
<value>txtPort</value>
</data>
<data name="&gt;&gt;txtPort.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;txtPort.Parent" xml:space="preserve">
<value>table</value>
</data>
<data name="&gt;&gt;txtPort.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="lblPort.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="lblPort.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="lblPort.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="lblPort.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="lblPort.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 69</value>
</data>
<data name="lblPort.Size" type="System.Drawing.Size, System.Drawing">
<value>77, 29</value>
</data>
<data name="lblPort.TabIndex" type="System.Int32, mscorlib">
<value>33</value>
</data>
<data name="lblPort.Text" xml:space="preserve">
<value>ポート番号(&amp;P):</value>
</data>
<data name="lblPort.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleLeft</value>
</data>
<data name="&gt;&gt;lblPort.Name" xml:space="preserve">
<value>lblPort</value>
</data>
<data name="&gt;&gt;lblPort.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="&gt;&gt;lblPort.Parent" xml:space="preserve">
<value>table</value>
</data>
<data name="&gt;&gt;lblPort.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="lblHost.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="lblHost.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="lblHost.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="lblHost.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="lblHost.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 40</value>
</data>
<data name="lblHost.Size" type="System.Drawing.Size, System.Drawing">
<value>77, 29</value>
</data>
<data name="lblHost.TabIndex" type="System.Int32, mscorlib">
<value>32</value>
</data>
<data name="lblHost.Text" xml:space="preserve">
<value>名前(&amp;N):</value>
</data>
<data name="lblHost.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleLeft</value>
</data>
<data name="&gt;&gt;lblHost.Name" xml:space="preserve">
<value>lblHost</value>
</data>
<data name="&gt;&gt;lblHost.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="&gt;&gt;lblHost.Parent" xml:space="preserve">
<value>table</value>
</data>
<data name="&gt;&gt;lblHost.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="txtHost.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="txtHost.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="txtHost.Location" type="System.Drawing.Point, System.Drawing">
<value>86, 43</value>
</data>
<data name="txtHost.MaxLength" type="System.Int32, mscorlib">
<value>255</value>
</data>
<data name="txtHost.Size" type="System.Drawing.Size, System.Drawing">
<value>344, 23</value>
</data>
<data name="txtHost.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="&gt;&gt;txtHost.Name" xml:space="preserve">
<value>txtHost</value>
</data>
<data name="&gt;&gt;txtHost.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;txtHost.Parent" xml:space="preserve">
<value>table</value>
</data>
<data name="&gt;&gt;txtHost.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="flow.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Right</value>
</data>
<data name="flow.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="flow.AutoSizeMode" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
<value>GrowAndShrink</value>
</data>
<data name="btnCancel.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Right</value>
</data>
<data name="btnCancel.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="btnCancel.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="btnCancel.Location" type="System.Drawing.Point, System.Drawing">
<value>84, 3</value>
</data>
<data name="btnCancel.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 23</value>
</data>
<data name="btnCancel.TabIndex" type="System.Int32, mscorlib">
<value>12</value>
</data>
<data name="btnCancel.Text" xml:space="preserve">
<value>キャンセル</value>
</data>
<data name="&gt;&gt;btnCancel.Name" xml:space="preserve">
<value>btnCancel</value>
</data>
<data name="&gt;&gt;btnCancel.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;btnCancel.Parent" xml:space="preserve">
<value>flow</value>
</data>
<data name="&gt;&gt;btnCancel.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="btnOK.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Right</value>
</data>
<data name="btnOK.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="btnOK.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="btnOK.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 3</value>
</data>
<data name="btnOK.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 23</value>
</data>
<data name="btnOK.TabIndex" type="System.Int32, mscorlib">
<value>11</value>
</data>
<data name="btnOK.Text" xml:space="preserve">
<value>OK</value>
</data>
<data name="&gt;&gt;btnOK.Name" xml:space="preserve">
<value>btnOK</value>
</data>
<data name="&gt;&gt;btnOK.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;btnOK.Parent" xml:space="preserve">
<value>flow</value>
</data>
<data name="&gt;&gt;btnOK.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="flow.FlowDirection" type="System.Windows.Forms.FlowDirection, System.Windows.Forms">
<value>RightToLeft</value>
</data>
<data name="flow.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="flow.Location" type="System.Drawing.Point, System.Drawing">
<value>268, 112</value>
</data>
<data name="flow.Size" type="System.Drawing.Size, System.Drawing">
<value>162, 29</value>
</data>
<data name="flow.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="&gt;&gt;flow.Name" xml:space="preserve">
<value>flow</value>
</data>
<data name="&gt;&gt;flow.Type" xml:space="preserve">
<value>System.Windows.Forms.FlowLayoutPanel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;flow.Parent" xml:space="preserve">
<value>table</value>
</data>
<data name="&gt;&gt;flow.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="lblMain.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="lblMain.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="lblMain.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="lblMain.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 0</value>
</data>
<data name="lblMain.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 0, 3, 10</value>
</data>
<data name="lblMain.Size" type="System.Drawing.Size, System.Drawing">
<value>427, 30</value>
</data>
<data name="lblMain.TabIndex" type="System.Int32, mscorlib">
<value>19</value>
</data>
<data name="lblMain.Text" xml:space="preserve">
<value>選択した StorageLink サーバーに新しいライセンスを割り当てるには、ライセンス サーバーの情報を入力して [OK] をクリックします。</value>
</data>
<data name="lblMain.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleLeft</value>
</data>
<data name="&gt;&gt;lblMain.Name" xml:space="preserve">
<value>lblMain</value>
</data>
<data name="&gt;&gt;lblMain.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="&gt;&gt;lblMain.Parent" xml:space="preserve">
<value>table</value>
</data>
<data name="&gt;&gt;lblMain.ZOrder" xml:space="preserve">
<value>5</value>
</data>
<data name="table.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="table.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="table.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 12</value>
</data>
<data name="table.RowCount" type="System.Int32, mscorlib">
<value>4</value>
</data>
<data name="table.Size" type="System.Drawing.Size, System.Drawing">
<value>433, 144</value>
</data>
<data name="table.TabIndex" type="System.Int32, mscorlib">
<value>25</value>
</data>
<data name="&gt;&gt;table.Name" xml:space="preserve">
<value>table</value>
</data>
<data name="&gt;&gt;table.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="&gt;&gt;table.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;table.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="table.LayoutSettings" type="System.Windows.Forms.TableLayoutSettings, System.Windows.Forms">
<value>&lt;?xml version="1.0" encoding="utf-16"?&gt;&lt;TableLayoutSettings&gt;&lt;Controls&gt;&lt;Control Name="txtPort" Row="2" RowSpan="1" Column="1" ColumnSpan="1" /&gt;&lt;Control Name="lblPort" Row="2" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="lblHost" Row="1" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="txtHost" Row="1" RowSpan="1" Column="1" ColumnSpan="1" /&gt;&lt;Control Name="flow" Row="3" RowSpan="1" Column="0" ColumnSpan="2" /&gt;&lt;Control Name="lblMain" Row="0" RowSpan="1" Column="0" ColumnSpan="2" /&gt;&lt;/Controls&gt;&lt;Columns Styles="AutoSize,0,Percent,100" /&gt;&lt;Rows Styles="AutoSize,0,AutoSize,0,AutoSize,0,Percent,100,Absolute,20" /&gt;&lt;/TableLayoutSettings&gt;</value>
</data>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>96, 96</value>
</data>
<data name="$this.AutoSizeMode" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
<value>GrowAndShrink</value>
</data>
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>457, 168</value>
</data>
<data name="$this.Font" type="System.Drawing.Font, System.Drawing">
<value>Tahoma, 8pt</value>
</data>
<data name="$this.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>5, 5, 5, 5</value>
</data>
<data name="$this.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>12, 12, 12, 12</value>
</data>
<data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
<value>CenterParent</value>
</data>
<data name="$this.Text" xml:space="preserve">
<value>ライセンス サーバーの設定</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>SetStorageLinkLicenseServerDialog</value>
</data>
<data name="&gt;&gt;$this.Type" xml:space="preserve">
<value>XenAdmin.Dialogs.XenDialogBase, XenCenterMain, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
</data>
</root>

View File

@ -1,480 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<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>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="mscorlib" name="mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="table.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="table.AutoSizeMode" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
<value>GrowAndShrink</value>
</data>
<data name="table.ColumnCount" type="System.Int32, mscorlib">
<value>2</value>
</data>
<data name="txtPort.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="txtPort.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="txtPort.Location" type="System.Drawing.Point, System.Drawing">
<value>86, 72</value>
</data>
<data name="txtPort.MaxLength" type="System.Int32, mscorlib">
<value>255</value>
</data>
<data name="txtPort.Size" type="System.Drawing.Size, System.Drawing">
<value>344, 23</value>
</data>
<data name="txtPort.TabIndex" type="System.Int32, mscorlib">
<value>36</value>
</data>
<data name="txtPort.Text" xml:space="preserve">
<value>27000</value>
</data>
<data name="&gt;&gt;txtPort.Name" xml:space="preserve">
<value>txtPort</value>
</data>
<data name="&gt;&gt;txtPort.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;txtPort.Parent" xml:space="preserve">
<value>table</value>
</data>
<data name="&gt;&gt;txtPort.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="lblPort.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="lblPort.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="lblPort.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="lblPort.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="lblPort.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 69</value>
</data>
<data name="lblPort.Size" type="System.Drawing.Size, System.Drawing">
<value>77, 29</value>
</data>
<data name="lblPort.TabIndex" type="System.Int32, mscorlib">
<value>33</value>
</data>
<data name="lblPort.Text" xml:space="preserve">
<value>&amp;Port number:</value>
</data>
<data name="lblPort.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleLeft</value>
</data>
<data name="&gt;&gt;lblPort.Name" xml:space="preserve">
<value>lblPort</value>
</data>
<data name="&gt;&gt;lblPort.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="&gt;&gt;lblPort.Parent" xml:space="preserve">
<value>table</value>
</data>
<data name="&gt;&gt;lblPort.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="lblHost.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="lblHost.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="lblHost.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="lblHost.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="lblHost.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 40</value>
</data>
<data name="lblHost.Size" type="System.Drawing.Size, System.Drawing">
<value>77, 29</value>
</data>
<data name="lblHost.TabIndex" type="System.Int32, mscorlib">
<value>32</value>
</data>
<data name="lblHost.Text" xml:space="preserve">
<value>&amp;Name:</value>
</data>
<data name="lblHost.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleLeft</value>
</data>
<data name="&gt;&gt;lblHost.Name" xml:space="preserve">
<value>lblHost</value>
</data>
<data name="&gt;&gt;lblHost.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="&gt;&gt;lblHost.Parent" xml:space="preserve">
<value>table</value>
</data>
<data name="&gt;&gt;lblHost.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="txtHost.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="txtHost.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="txtHost.Location" type="System.Drawing.Point, System.Drawing">
<value>86, 43</value>
</data>
<data name="txtHost.MaxLength" type="System.Int32, mscorlib">
<value>255</value>
</data>
<data name="txtHost.Size" type="System.Drawing.Size, System.Drawing">
<value>344, 23</value>
</data>
<data name="txtHost.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="&gt;&gt;txtHost.Name" xml:space="preserve">
<value>txtHost</value>
</data>
<data name="&gt;&gt;txtHost.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;txtHost.Parent" xml:space="preserve">
<value>table</value>
</data>
<data name="&gt;&gt;txtHost.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="flow.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Right</value>
</data>
<data name="flow.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="flow.AutoSizeMode" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
<value>GrowAndShrink</value>
</data>
<data name="btnCancel.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Right</value>
</data>
<data name="btnCancel.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="btnCancel.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="btnCancel.Location" type="System.Drawing.Point, System.Drawing">
<value>84, 3</value>
</data>
<data name="btnCancel.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 23</value>
</data>
<data name="btnCancel.TabIndex" type="System.Int32, mscorlib">
<value>12</value>
</data>
<data name="btnCancel.Text" xml:space="preserve">
<value>Cancel</value>
</data>
<data name="&gt;&gt;btnCancel.Name" xml:space="preserve">
<value>btnCancel</value>
</data>
<data name="&gt;&gt;btnCancel.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;btnCancel.Parent" xml:space="preserve">
<value>flow</value>
</data>
<data name="&gt;&gt;btnCancel.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="btnOK.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Right</value>
</data>
<data name="btnOK.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="btnOK.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="btnOK.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 3</value>
</data>
<data name="btnOK.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 23</value>
</data>
<data name="btnOK.TabIndex" type="System.Int32, mscorlib">
<value>11</value>
</data>
<data name="btnOK.Text" xml:space="preserve">
<value>OK</value>
</data>
<data name="&gt;&gt;btnOK.Name" xml:space="preserve">
<value>btnOK</value>
</data>
<data name="&gt;&gt;btnOK.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;btnOK.Parent" xml:space="preserve">
<value>flow</value>
</data>
<data name="&gt;&gt;btnOK.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="flow.FlowDirection" type="System.Windows.Forms.FlowDirection, System.Windows.Forms">
<value>RightToLeft</value>
</data>
<data name="flow.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="flow.Location" type="System.Drawing.Point, System.Drawing">
<value>268, 112</value>
</data>
<data name="flow.Size" type="System.Drawing.Size, System.Drawing">
<value>162, 29</value>
</data>
<data name="flow.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="&gt;&gt;flow.Name" xml:space="preserve">
<value>flow</value>
</data>
<data name="&gt;&gt;flow.Type" xml:space="preserve">
<value>System.Windows.Forms.FlowLayoutPanel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;flow.Parent" xml:space="preserve">
<value>table</value>
</data>
<data name="&gt;&gt;flow.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="lblMain.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="lblMain.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="lblMain.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="lblMain.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 0</value>
</data>
<data name="lblMain.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 0, 3, 10</value>
</data>
<data name="lblMain.Size" type="System.Drawing.Size, System.Drawing">
<value>427, 30</value>
</data>
<data name="lblMain.TabIndex" type="System.Int32, mscorlib">
<value>19</value>
</data>
<data name="lblMain.Text" xml:space="preserve">
<value>To assign a new license to the StorageLink server you selected, enter the license server details, and then click OK.</value>
</data>
<data name="lblMain.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleLeft</value>
</data>
<data name="&gt;&gt;lblMain.Name" xml:space="preserve">
<value>lblMain</value>
</data>
<data name="&gt;&gt;lblMain.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="&gt;&gt;lblMain.Parent" xml:space="preserve">
<value>table</value>
</data>
<data name="&gt;&gt;lblMain.ZOrder" xml:space="preserve">
<value>5</value>
</data>
<data name="table.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="table.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="table.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 12</value>
</data>
<data name="table.RowCount" type="System.Int32, mscorlib">
<value>4</value>
</data>
<data name="table.Size" type="System.Drawing.Size, System.Drawing">
<value>433, 144</value>
</data>
<data name="table.TabIndex" type="System.Int32, mscorlib">
<value>25</value>
</data>
<data name="&gt;&gt;table.Name" xml:space="preserve">
<value>table</value>
</data>
<data name="&gt;&gt;table.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="&gt;&gt;table.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;table.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="table.LayoutSettings" type="System.Windows.Forms.TableLayoutSettings, System.Windows.Forms">
<value>&lt;?xml version="1.0" encoding="utf-16"?&gt;&lt;TableLayoutSettings&gt;&lt;Controls&gt;&lt;Control Name="txtPort" Row="2" RowSpan="1" Column="1" ColumnSpan="1" /&gt;&lt;Control Name="lblPort" Row="2" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="lblHost" Row="1" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="txtHost" Row="1" RowSpan="1" Column="1" ColumnSpan="1" /&gt;&lt;Control Name="flow" Row="3" RowSpan="1" Column="0" ColumnSpan="2" /&gt;&lt;Control Name="lblMain" Row="0" RowSpan="1" Column="0" ColumnSpan="2" /&gt;&lt;/Controls&gt;&lt;Columns Styles="AutoSize,0,Percent,100" /&gt;&lt;Rows Styles="AutoSize,0,AutoSize,0,AutoSize,0,Percent,100,Absolute,20" /&gt;&lt;/TableLayoutSettings&gt;</value>
</data>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>96, 96</value>
</data>
<data name="$this.AutoSizeMode" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
<value>GrowAndShrink</value>
</data>
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>457, 168</value>
</data>
<data name="$this.Font" type="System.Drawing.Font, System.Drawing">
<value>Tahoma, 8pt</value>
</data>
<data name="$this.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>5, 5, 5, 5</value>
</data>
<data name="$this.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>12, 12, 12, 12</value>
</data>
<data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
<value>CenterParent</value>
</data>
<data name="$this.Text" xml:space="preserve">
<value>Set License Server</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>SetStorageLinkLicenseServerDialog</value>
</data>
<data name="&gt;&gt;$this.Type" xml:space="preserve">
<value>XenAdmin.Dialogs.XenDialogBase, XenCenterMain, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
</data>
</root>

View File

@ -1,480 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<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>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="mscorlib" name="mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="table.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="table.AutoSizeMode" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
<value>GrowAndShrink</value>
</data>
<data name="table.ColumnCount" type="System.Int32, mscorlib">
<value>2</value>
</data>
<data name="txtPort.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="txtPort.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="txtPort.Location" type="System.Drawing.Point, System.Drawing">
<value>86, 72</value>
</data>
<data name="txtPort.MaxLength" type="System.Int32, mscorlib">
<value>255</value>
</data>
<data name="txtPort.Size" type="System.Drawing.Size, System.Drawing">
<value>344, 23</value>
</data>
<data name="txtPort.TabIndex" type="System.Int32, mscorlib">
<value>36</value>
</data>
<data name="txtPort.Text" xml:space="preserve">
<value>27000</value>
</data>
<data name="&gt;&gt;txtPort.Name" xml:space="preserve">
<value>txtPort</value>
</data>
<data name="&gt;&gt;txtPort.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;txtPort.Parent" xml:space="preserve">
<value>table</value>
</data>
<data name="&gt;&gt;txtPort.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="lblPort.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="lblPort.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="lblPort.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="lblPort.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="lblPort.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 69</value>
</data>
<data name="lblPort.Size" type="System.Drawing.Size, System.Drawing">
<value>77, 29</value>
</data>
<data name="lblPort.TabIndex" type="System.Int32, mscorlib">
<value>33</value>
</data>
<data name="lblPort.Text" xml:space="preserve">
<value>端口号(&amp;P):</value>
</data>
<data name="lblPort.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleLeft</value>
</data>
<data name="&gt;&gt;lblPort.Name" xml:space="preserve">
<value>lblPort</value>
</data>
<data name="&gt;&gt;lblPort.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="&gt;&gt;lblPort.Parent" xml:space="preserve">
<value>table</value>
</data>
<data name="&gt;&gt;lblPort.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="lblHost.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="lblHost.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="lblHost.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="lblHost.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="lblHost.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 40</value>
</data>
<data name="lblHost.Size" type="System.Drawing.Size, System.Drawing">
<value>77, 29</value>
</data>
<data name="lblHost.TabIndex" type="System.Int32, mscorlib">
<value>32</value>
</data>
<data name="lblHost.Text" xml:space="preserve">
<value>名称(&amp;N):</value>
</data>
<data name="lblHost.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleLeft</value>
</data>
<data name="&gt;&gt;lblHost.Name" xml:space="preserve">
<value>lblHost</value>
</data>
<data name="&gt;&gt;lblHost.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="&gt;&gt;lblHost.Parent" xml:space="preserve">
<value>table</value>
</data>
<data name="&gt;&gt;lblHost.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="txtHost.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="txtHost.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="txtHost.Location" type="System.Drawing.Point, System.Drawing">
<value>86, 43</value>
</data>
<data name="txtHost.MaxLength" type="System.Int32, mscorlib">
<value>255</value>
</data>
<data name="txtHost.Size" type="System.Drawing.Size, System.Drawing">
<value>344, 23</value>
</data>
<data name="txtHost.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="&gt;&gt;txtHost.Name" xml:space="preserve">
<value>txtHost</value>
</data>
<data name="&gt;&gt;txtHost.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;txtHost.Parent" xml:space="preserve">
<value>table</value>
</data>
<data name="&gt;&gt;txtHost.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="flow.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Right</value>
</data>
<data name="flow.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="flow.AutoSizeMode" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
<value>GrowAndShrink</value>
</data>
<data name="btnCancel.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Right</value>
</data>
<data name="btnCancel.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="btnCancel.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="btnCancel.Location" type="System.Drawing.Point, System.Drawing">
<value>84, 3</value>
</data>
<data name="btnCancel.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 23</value>
</data>
<data name="btnCancel.TabIndex" type="System.Int32, mscorlib">
<value>12</value>
</data>
<data name="btnCancel.Text" xml:space="preserve">
<value>取消</value>
</data>
<data name="&gt;&gt;btnCancel.Name" xml:space="preserve">
<value>btnCancel</value>
</data>
<data name="&gt;&gt;btnCancel.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;btnCancel.Parent" xml:space="preserve">
<value>flow</value>
</data>
<data name="&gt;&gt;btnCancel.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="btnOK.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Right</value>
</data>
<data name="btnOK.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="btnOK.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="btnOK.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 3</value>
</data>
<data name="btnOK.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 23</value>
</data>
<data name="btnOK.TabIndex" type="System.Int32, mscorlib">
<value>11</value>
</data>
<data name="btnOK.Text" xml:space="preserve">
<value>确定</value>
</data>
<data name="&gt;&gt;btnOK.Name" xml:space="preserve">
<value>btnOK</value>
</data>
<data name="&gt;&gt;btnOK.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;btnOK.Parent" xml:space="preserve">
<value>flow</value>
</data>
<data name="&gt;&gt;btnOK.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="flow.FlowDirection" type="System.Windows.Forms.FlowDirection, System.Windows.Forms">
<value>RightToLeft</value>
</data>
<data name="flow.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="flow.Location" type="System.Drawing.Point, System.Drawing">
<value>268, 112</value>
</data>
<data name="flow.Size" type="System.Drawing.Size, System.Drawing">
<value>162, 29</value>
</data>
<data name="flow.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="&gt;&gt;flow.Name" xml:space="preserve">
<value>flow</value>
</data>
<data name="&gt;&gt;flow.Type" xml:space="preserve">
<value>System.Windows.Forms.FlowLayoutPanel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;flow.Parent" xml:space="preserve">
<value>table</value>
</data>
<data name="&gt;&gt;flow.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="lblMain.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="lblMain.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="lblMain.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="lblMain.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 0</value>
</data>
<data name="lblMain.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 0, 3, 10</value>
</data>
<data name="lblMain.Size" type="System.Drawing.Size, System.Drawing">
<value>427, 30</value>
</data>
<data name="lblMain.TabIndex" type="System.Int32, mscorlib">
<value>19</value>
</data>
<data name="lblMain.Text" xml:space="preserve">
<value>要为所选 StorageLink 服务器分配新许可证,请输入许可证服务器详细信息,然后单击“确定”。</value>
</data>
<data name="lblMain.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleLeft</value>
</data>
<data name="&gt;&gt;lblMain.Name" xml:space="preserve">
<value>lblMain</value>
</data>
<data name="&gt;&gt;lblMain.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="&gt;&gt;lblMain.Parent" xml:space="preserve">
<value>table</value>
</data>
<data name="&gt;&gt;lblMain.ZOrder" xml:space="preserve">
<value>5</value>
</data>
<data name="table.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="table.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt</value>
</data>
<data name="table.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 12</value>
</data>
<data name="table.RowCount" type="System.Int32, mscorlib">
<value>4</value>
</data>
<data name="table.Size" type="System.Drawing.Size, System.Drawing">
<value>433, 144</value>
</data>
<data name="table.TabIndex" type="System.Int32, mscorlib">
<value>25</value>
</data>
<data name="&gt;&gt;table.Name" xml:space="preserve">
<value>table</value>
</data>
<data name="&gt;&gt;table.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="&gt;&gt;table.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;table.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="table.LayoutSettings" type="System.Windows.Forms.TableLayoutSettings, System.Windows.Forms">
<value>&lt;?xml version="1.0" encoding="utf-16"?&gt;&lt;TableLayoutSettings&gt;&lt;Controls&gt;&lt;Control Name="txtPort" Row="2" RowSpan="1" Column="1" ColumnSpan="1" /&gt;&lt;Control Name="lblPort" Row="2" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="lblHost" Row="1" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="txtHost" Row="1" RowSpan="1" Column="1" ColumnSpan="1" /&gt;&lt;Control Name="flow" Row="3" RowSpan="1" Column="0" ColumnSpan="2" /&gt;&lt;Control Name="lblMain" Row="0" RowSpan="1" Column="0" ColumnSpan="2" /&gt;&lt;/Controls&gt;&lt;Columns Styles="AutoSize,0,Percent,100" /&gt;&lt;Rows Styles="AutoSize,0,AutoSize,0,AutoSize,0,Percent,100,Absolute,20" /&gt;&lt;/TableLayoutSettings&gt;</value>
</data>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>96, 96</value>
</data>
<data name="$this.AutoSizeMode" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
<value>GrowAndShrink</value>
</data>
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>457, 168</value>
</data>
<data name="$this.Font" type="System.Drawing.Font, System.Drawing">
<value>Tahoma, 8pt</value>
</data>
<data name="$this.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>5, 5, 5, 5</value>
</data>
<data name="$this.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>12, 12, 12, 12</value>
</data>
<data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
<value>CenterParent</value>
</data>
<data name="$this.Text" xml:space="preserve">
<value>设置许可证服务器</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>SetStorageLinkLicenseServerDialog</value>
</data>
<data name="&gt;&gt;$this.Type" xml:space="preserve">
<value>XenAdmin.Dialogs.XenDialogBase, XenCenterMain, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
</data>
</root>

View File

@ -48,7 +48,6 @@ namespace XenAdmin.Dialogs
{
private VIF ExistingVif;
private int Device;
private readonly bool qosRestricted;
private readonly bool vSwitchController;
public VIFDialog(IXenConnection Connection, VIF ExistingVif, int Device)
@ -62,10 +61,6 @@ namespace XenAdmin.Dialogs
if (ExistingVif != null)
changeToPropertiesTitle();
// Check if QoS is enabled for this VM
Host currentHost = Helpers.GetMaster(connection);
qosRestricted = currentHost != null && currentHost.RestrictQoS;
// Check if vSwitch Controller is configured for the pool (CA-46299)
Pool pool = Helpers.GetPoolOfOne(connection);
vSwitchController = pool != null && pool.vSwitchController;
@ -111,7 +106,7 @@ namespace XenAdmin.Dialogs
private void LoadDetails()
{
if (qosRestricted || vSwitchController)
if (vSwitchController)
{
flowLayoutPanelQoS.Enabled = checkboxQoS.Enabled = checkboxQoS.Checked = false;
panelLicenseRestriction.Visible = true;
@ -318,20 +313,17 @@ namespace XenAdmin.Dialogs
if (ExistingVif.device != Device.ToString())
return true;
if (!qosRestricted)
if (ExistingVif.RateLimited)
{
if (ExistingVif.RateLimited)
{
if (!checkboxQoS.Checked)
return true;
if (ExistingVif.qos_algorithm_params[VIF.KBPS_QOS_PARAMS_KEY] != promptTextBoxQoS.Text)
return true;
}
else if (string.IsNullOrEmpty(ExistingVif.qos_algorithm_type))
{
if (checkboxQoS.Checked)
return true;
}
if (!checkboxQoS.Checked)
return true;
if (ExistingVif.qos_algorithm_params[VIF.KBPS_QOS_PARAMS_KEY] != promptTextBoxQoS.Text)
return true;
}
else if (string.IsNullOrEmpty(ExistingVif.qos_algorithm_type))
{
if (checkboxQoS.Checked)
return true;
}
return false;

View File

@ -54,8 +54,6 @@ namespace XenAdmin.Network
X509Chain chain,
SslPolicyErrors sslPolicyErrors)
{
//this causes log spamming when using with StorageLink web service.
//log.Debug("Validating server cert");
if (sslPolicyErrors == SslPolicyErrors.None)
{
log.Debug("SslPolicyErrors is set to None, exiting validation");
@ -85,8 +83,6 @@ namespace XenAdmin.Network
if (kvp.Value == certificate.GetCertHashString())
{
//this causes log spamming when using with StorageLink web service.
//log.Debug("Match found with existing cert");
return true;
}
else if (!XenAdmin.Properties.Settings.Default.WarnChangedCertificate && Registry.AlwaysShowSSLCertificates == SSLCertificateTypes.None)

View File

@ -242,6 +242,11 @@ namespace XenAdmin.Network
// changes type, for example.
AddError(owner, connection, Messages.SERVER_API_INCOMPATIBLE, Messages.SOLUTION_UNKNOWN);
}
else if (error is ServerNotSupported)
{
// Server version is too old for this version of XenCenter
AddError(owner, connection, Messages.SERVER_TOO_OLD, Messages.SERVER_TOO_OLD_SOLUTION);
}
else
{
if (((XenConnection)connection).SupressErrors)

View File

@ -626,151 +626,5 @@ namespace XenAdmin
return false;
return true;
}
#region CSLG credentials
/// <summary>
/// Reads all of the stored CSLG credentials keyed by the opaque ref of the standalone host or pool
/// that the credentials are for.
/// </summary>
private static Dictionary<string, CslgCredentials> ReadCslgCredentials()
{
Dictionary<string, CslgCredentials> output = new Dictionary<string, CslgCredentials>();
if (Properties.Settings.Default.CslgCredentials != null)
{
foreach (string cred in Properties.Settings.Default.CslgCredentials)
{
string[] creds = cred.Split(SEPARATOR);
if (creds.Length == 4)
{
output.Add(creds[0], new CslgCredentials(creds[1], creds[2], creds[3]));
}
}
}
return output;
}
/// <summary>
/// Returns the CSLG credentials for the specified connection. Returns null if no credentials are stored.
/// </summary>
public static CslgCredentials GetCslgCredentials(IXenConnection connection)
{
Program.AssertOnEventThread();
Util.ThrowIfParameterNull(connection, "connection");
Pool pool = Helpers.GetPoolOfOne(connection);
if (pool != null)
{
Dictionary<string, CslgCredentials> credentials = ReadCslgCredentials();
if (credentials.ContainsKey(pool.opaque_ref))
{
return credentials[pool.opaque_ref];
}
}
return null;
}
/// <summary>
/// Sets the CSLG credentials for the specified connection.
/// </summary>
/// <param name="connection">The connection that the credentials are for.</param>
/// <param name="credentials">The credentials to be stored.</param>
public static void SetCslgCredentials(IXenConnection connection, CslgCredentials credentials)
{
Program.AssertOnEventThread();
Util.ThrowIfParameterNull(connection, "connection");
Util.ThrowIfParameterNull(credentials, "credentials");
Pool pool = Helpers.GetPoolOfOne(connection);
if (pool != null)
{
Dictionary<string, CslgCredentials> allStoredCredentials = ReadCslgCredentials();
allStoredCredentials[pool.opaque_ref] = credentials;
SaveCslgCredentials(allStoredCredentials);
}
}
private static void SaveCslgCredentials(Dictionary<string, CslgCredentials> credentials)
{
List<string> toStore = new List<string>();
foreach (string opaque_ref in credentials.Keys)
{
string cslgHost = credentials[opaque_ref].Host ?? string.Empty;
string username = credentials[opaque_ref].Username ?? string.Empty;
string passwordSecret = credentials[opaque_ref].PasswordSecret ?? string.Empty;
toStore.Add(String.Join(SEPARATOR.ToString(), new[] { opaque_ref, cslgHost, username, passwordSecret }));
}
Properties.Settings.Default.CslgCredentials = toStore.ToArray();
TrySaveSettings();
}
/// <summary>
/// A class for storing the Citrix StorageLink Gateway credentials for a particular pool.
/// </summary>
public class CslgCredentials
{
private readonly string _username;
private readonly string _passwordSecret;
private readonly string _host;
/// <summary>
/// Initializes a new instance of the <see cref="CslgCredentials"/> class.
/// </summary>
/// <param name="host">The host for which the credentials are for.</param>
/// <param name="username">The username.</param>
/// <param name="passwordSecret">The password secret.</param>
public CslgCredentials(string host, string username, string passwordSecret)
{
_host = host;
_username = username;
_passwordSecret = passwordSecret;
}
public string Host
{
get
{
return _host;
}
}
public string Username
{
get
{
return _username;
}
}
public string PasswordSecret
{
get
{
return _passwordSecret;
}
}
public override bool Equals(object obj)
{
CslgCredentials other = obj as CslgCredentials;
return other != null && other.Host == Host && other.Username == Username && other.PasswordSecret == PasswordSecret;
}
public override int GetHashCode()
{
return (Host + " " + Username + " " + PasswordSecret).GetHashCode();
}
}
#endregion
}
}

View File

@ -28,15 +28,15 @@ namespace XenAdmin.SettingsPanels
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(CPUMemoryEditPage));
this.licenseRestrictionTip = new System.Windows.Forms.ToolTip(this.components);
this.lblSliderHighest = new System.Windows.Forms.Label();
this.lblSliderNormal = new System.Windows.Forms.Label();
this.lblSliderLowest = new System.Windows.Forms.Label();
this.lblPriority = new System.Windows.Forms.Label();
this.transparentTrackBar1 = new XenAdmin.Controls.TransparentTrackBar();
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
this.labelInvalidVCPUWarning = new System.Windows.Forms.Label();
this.comboBoxTopology = new XenAdmin.Controls.CPUTopologyComboBox();
this.labelTopology = new System.Windows.Forms.Label();
this.MemWarningLabel = new System.Windows.Forms.Label();
this.panel2 = new System.Windows.Forms.Panel();
@ -49,8 +49,6 @@ namespace XenAdmin.SettingsPanels
this.nudVCPUs = new System.Windows.Forms.NumericUpDown();
this.VCPUWarningLabel = new System.Windows.Forms.Label();
this.label1 = new System.Windows.Forms.Label();
this.comboBoxTopology = new XenAdmin.Controls.CPUTopologyComboBox();
this.transparentTrackBar1 = new XenAdmin.Controls.TransparentTrackBar();
this.tableLayoutPanel1.SuspendLayout();
this.panel2.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.nudMemory)).BeginInit();
@ -62,26 +60,29 @@ namespace XenAdmin.SettingsPanels
//
resources.ApplyResources(this.lblSliderHighest, "lblSliderHighest");
this.lblSliderHighest.Name = "lblSliderHighest";
this.licenseRestrictionTip.SetToolTip(this.lblSliderHighest, resources.GetString("lblSliderHighest.ToolTip"));
//
// lblSliderNormal
//
resources.ApplyResources(this.lblSliderNormal, "lblSliderNormal");
this.lblSliderNormal.Name = "lblSliderNormal";
this.licenseRestrictionTip.SetToolTip(this.lblSliderNormal, resources.GetString("lblSliderNormal.ToolTip"));
//
// lblSliderLowest
//
resources.ApplyResources(this.lblSliderLowest, "lblSliderLowest");
this.lblSliderLowest.Name = "lblSliderLowest";
this.licenseRestrictionTip.SetToolTip(this.lblSliderLowest, resources.GetString("lblSliderLowest.ToolTip"));
//
// lblPriority
//
resources.ApplyResources(this.lblPriority, "lblPriority");
this.tableLayoutPanel1.SetColumnSpan(this.lblPriority, 2);
this.lblPriority.Name = "lblPriority";
this.licenseRestrictionTip.SetToolTip(this.lblPriority, resources.GetString("lblPriority.ToolTip"));
//
// transparentTrackBar1
//
resources.ApplyResources(this.transparentTrackBar1, "transparentTrackBar1");
this.transparentTrackBar1.BackColor = System.Drawing.Color.Transparent;
this.transparentTrackBar1.Name = "transparentTrackBar1";
this.transparentTrackBar1.TabStop = false;
//
// tableLayoutPanel1
//
@ -109,6 +110,15 @@ namespace XenAdmin.SettingsPanels
this.labelInvalidVCPUWarning.ForeColor = System.Drawing.Color.Red;
this.labelInvalidVCPUWarning.Name = "labelInvalidVCPUWarning";
//
// comboBoxTopology
//
this.tableLayoutPanel1.SetColumnSpan(this.comboBoxTopology, 2);
this.comboBoxTopology.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
resources.ApplyResources(this.comboBoxTopology, "comboBoxTopology");
this.comboBoxTopology.FormattingEnabled = true;
this.comboBoxTopology.Name = "comboBoxTopology";
this.comboBoxTopology.SelectedIndexChanged += new System.EventHandler(this.comboBoxTopology_SelectedIndexChanged);
//
// labelTopology
//
resources.ApplyResources(this.labelTopology, "labelTopology");
@ -217,23 +227,6 @@ namespace XenAdmin.SettingsPanels
this.tableLayoutPanel1.SetColumnSpan(this.label1, 3);
this.label1.Name = "label1";
//
// comboBoxTopology
//
this.tableLayoutPanel1.SetColumnSpan(this.comboBoxTopology, 2);
this.comboBoxTopology.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
resources.ApplyResources(this.comboBoxTopology, "comboBoxTopology");
this.comboBoxTopology.FormattingEnabled = true;
this.comboBoxTopology.Name = "comboBoxTopology";
this.comboBoxTopology.SelectedIndexChanged += new System.EventHandler(this.comboBoxTopology_SelectedIndexChanged);
//
// transparentTrackBar1
//
resources.ApplyResources(this.transparentTrackBar1, "transparentTrackBar1");
this.transparentTrackBar1.BackColor = System.Drawing.Color.Transparent;
this.transparentTrackBar1.Name = "transparentTrackBar1";
this.transparentTrackBar1.TabStop = false;
this.licenseRestrictionTip.SetToolTip(this.transparentTrackBar1, resources.GetString("transparentTrackBar1.ToolTip"));
//
// CPUMemoryEditPage
//
resources.ApplyResources(this, "$this");
@ -242,7 +235,6 @@ namespace XenAdmin.SettingsPanels
this.Controls.Add(this.tableLayoutPanel1);
this.DoubleBuffered = true;
this.ForeColor = System.Drawing.SystemColors.ControlText;
this.MinimumSize = new System.Drawing.Size(500, 500);
this.Name = "CPUMemoryEditPage";
this.tableLayoutPanel1.ResumeLayout(false);
this.tableLayoutPanel1.PerformLayout();
@ -258,7 +250,6 @@ namespace XenAdmin.SettingsPanels
#endregion
private System.Windows.Forms.ToolTip licenseRestrictionTip;
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
public System.Windows.Forms.NumericUpDown nudMemory;
private System.Windows.Forms.Label lblMB;

View File

@ -234,15 +234,6 @@ namespace XenAdmin.SettingsPanels
Host currentHost = Helpers.GetMaster(this.vm.Connection);
if (currentHost != null)
{
bool QosRestricted = currentHost.RestrictQoS;
transparentTrackBar1.Enabled = !QosRestricted;
licenseRestrictionTip.Active = QosRestricted;
lblSliderLowest.Enabled = !QosRestricted;
lblSliderNormal.Enabled = !QosRestricted;
lblSliderHighest.Enabled = !QosRestricted;
lblPriority.Enabled = !QosRestricted;
panel1.Enabled = !QosRestricted;
// Show the performance warning about vCPUs > pCPUs.
// Don't show if the VM isn't running, since we don't know which server it will
// run on (and so can't count the number of pCPUs).

View File

@ -117,9 +117,6 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="licenseRestrictionTip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="lblSliderHighest.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Right</value>
@ -819,12 +816,6 @@
<data name="$this.Size" type="System.Drawing.Size, System.Drawing">
<value>500, 500</value>
</data>
<data name="&gt;&gt;licenseRestrictionTip.Name" xml:space="preserve">
<value>licenseRestrictionTip</value>
</data>
<data name="&gt;&gt;licenseRestrictionTip.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolTip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>CPUMemoryEditPage</value>
</data>

View File

@ -117,9 +117,6 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="licenseRestrictionTip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="lblSliderHighest.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Right</value>
@ -144,9 +141,6 @@
<data name="lblSliderHighest.Text" xml:space="preserve">
<value>Highest</value>
</data>
<data name="lblSliderHighest.ToolTip" xml:space="preserve">
<value>This field is disabled due to license restrictions on the server.</value>
</data>
<data name="&gt;&gt;lblSliderHighest.Name" xml:space="preserve">
<value>lblSliderHighest</value>
</data>
@ -180,9 +174,6 @@
<data name="lblSliderNormal.Text" xml:space="preserve">
<value>Normal</value>
</data>
<data name="lblSliderNormal.ToolTip" xml:space="preserve">
<value>This field is disabled due to license restrictions on the server.</value>
</data>
<data name="&gt;&gt;lblSliderNormal.Name" xml:space="preserve">
<value>lblSliderNormal</value>
</data>
@ -216,9 +207,6 @@
<data name="lblSliderLowest.Text" xml:space="preserve">
<value>Lowest</value>
</data>
<data name="lblSliderLowest.ToolTip" xml:space="preserve">
<value>This field is disabled due to license restrictions on the server.</value>
</data>
<data name="&gt;&gt;lblSliderLowest.Name" xml:space="preserve">
<value>lblSliderLowest</value>
</data>
@ -486,9 +474,6 @@
<data name="transparentTrackBar1.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="transparentTrackBar1.ToolTip" xml:space="preserve">
<value>This field is disabled due to license restrictions on the server.</value>
</data>
<data name="&gt;&gt;transparentTrackBar1.Name" xml:space="preserve">
<value>transparentTrackBar1</value>
</data>
@ -792,9 +777,6 @@
<data name="lblPriority.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleLeft</value>
</data>
<data name="lblPriority.ToolTip" xml:space="preserve">
<value>This field is disabled due to license restrictions on the server.</value>
</data>
<data name="&gt;&gt;lblPriority.Name" xml:space="preserve">
<value>lblPriority</value>
</data>
@ -816,14 +798,11 @@
<data name="$this.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>0, 0, 0, 0</value>
</data>
<data name="$this.Size" type="System.Drawing.Size, System.Drawing">
<data name="$this.MinimumSize" type="System.Drawing.Size, System.Drawing">
<value>500, 500</value>
</data>
<data name="&gt;&gt;licenseRestrictionTip.Name" xml:space="preserve">
<value>licenseRestrictionTip</value>
</data>
<data name="&gt;&gt;licenseRestrictionTip.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolTip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<data name="$this.Size" type="System.Drawing.Size, System.Drawing">
<value>500, 500</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>CPUMemoryEditPage</value>

View File

@ -117,9 +117,6 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="licenseRestrictionTip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="lblSliderHighest.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Right</value>
@ -819,12 +816,6 @@
<data name="$this.Size" type="System.Drawing.Size, System.Drawing">
<value>500, 500</value>
</data>
<data name="&gt;&gt;licenseRestrictionTip.Name" xml:space="preserve">
<value>licenseRestrictionTip</value>
</data>
<data name="&gt;&gt;licenseRestrictionTip.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolTip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>CPUMemoryEditPage</value>
</data>

View File

@ -46,7 +46,6 @@ namespace XenAdmin.SettingsPanels
{
private XenAPI.Network network;
private Host host;
private bool nolicenseRestriction = false;
private bool _ValidToSave = true;
private readonly ToolTip InvalidParamToolTip;
@ -299,8 +298,6 @@ namespace XenAdmin.SettingsPanels
if (network == null || host == null)
return;
nolicenseRestriction = host != null && !host.RestrictVLAN;
populateHostNicList();
//set minimum value for VLAN
@ -370,7 +367,7 @@ namespace XenAdmin.SettingsPanels
numUpDownVLAN.Visible = true;
HostVLanLabel.Visible = true;
HostPNICList.Visible = true;
nicHelpLabel.Visible = nolicenseRestriction;
nicHelpLabel.Visible = true;
groupBoxBondMode.Visible = false;
numUpDownVLAN.Enabled = false;
@ -439,9 +436,6 @@ namespace XenAdmin.SettingsPanels
HostPNICList.Items.Add(Messages.NETWORKPANEL_INTERNAL);
if (!nolicenseRestriction)
return;
foreach (PIF pif in network.Connection.Cache.PIFs)
{
if (!Properties.Settings.Default.ShowHiddenVMs &&

View File

@ -208,13 +208,7 @@ namespace XenAdmin.SettingsPanels
{
DiskPriorityPanel.Visible = true;
label1.Visible = true;
if (master.RestrictQoS)
{
PriorityToolTipContainer.SetToolTip(Messages.FIELD_DISABLED);
DiskPriorityPanel.Enabled = false;
}
else
DiskPriorityPanel.Enabled = true;
DiskPriorityPanel.Enabled = true;
}
}

View File

@ -156,10 +156,12 @@ namespace XenAdmin.TabPages
dataGridViewVDIs.SuspendLayout();
try
{
storageLinkVolumeColumn.Visible = data.ShowStorageLink;
// Update existing rows
foreach (var vdiRow in data.VdiRowsToUpdate)
{
vdiRow.RefreshRowDetails();
vdiRow.RefreshRowDetails(data.ShowStorageLink);
}
// Remove rows for deleted VDIs
@ -171,7 +173,7 @@ namespace XenAdmin.TabPages
// Add rows for new VDIs
foreach (var vdi in data.VdisToAdd)
{
VDIRow newRow = new VDIRow(vdi);
VDIRow newRow = new VDIRow(vdi, data.ShowStorageLink);
dataGridViewVDIs.Rows.Add(newRow);
}
}
@ -502,8 +504,11 @@ namespace XenAdmin.TabPages
{
public VDI VDI { get; private set; }
public VDIRow(VDI vdi)
private bool showStorageLink = false;
public VDIRow(VDI vdi, bool showStorageLink)
{
this.showStorageLink = showStorageLink;
VDI = vdi;
for (int i = 0; i < 5; i++)
{
@ -532,8 +537,9 @@ namespace XenAdmin.TabPages
}
}
public void RefreshRowDetails()
public void RefreshRowDetails(bool showSL)
{
showStorageLink = showSL;
for (int i = 0; i < 5; i++)
{
Cells[i].Value = GetCellText(i);
@ -546,12 +552,15 @@ namespace XenAdmin.TabPages
public List<VDIRow> VdiRowsToUpdate { get; private set; }
public List<VDIRow> VdiRowsToRemove { get; private set; }
public List<VDI> VdisToAdd { get; private set; }
public bool ShowStorageLink { get; private set; }
public VDIsData(List<VDIRow> vdiRowsToUpdate, List<VDIRow> vdiRowsToRemove, List<VDI> vdisToAdd) : this()
public VDIsData(List<VDIRow> vdiRowsToUpdate, List<VDIRow> vdiRowsToRemove, List<VDI> vdisToAdd,
bool showStorageLink) : this()
{
VdiRowsToUpdate = vdiRowsToUpdate;
VdiRowsToRemove = vdiRowsToRemove;
VdisToAdd = vdisToAdd;
ShowStorageLink = showStorageLink;
}
}
@ -603,6 +612,8 @@ namespace XenAdmin.TabPages
!vdi.IsAnIntermediateStorageMotionSnapshot)
.ToList();
bool showStorageLink = vdis.Find(v => v.sm_config.ContainsKey("SVID")) != null;
var vdiRowsToRemove =
currentVDIRows.Where(vdiRow => !vdis.Contains(vdiRow.VDI)).OrderByDescending(row => row.Index).ToList();
@ -610,7 +621,7 @@ namespace XenAdmin.TabPages
var vdisToAdd = vdis.Except(vdiRowsToUpdate.ConvertAll(vdiRow => vdiRow.VDI)).ToList();
return new VDIsData(vdiRowsToUpdate, vdiRowsToRemove, vdisToAdd);
return new VDIsData(vdiRowsToUpdate, vdiRowsToRemove, vdisToAdd, showStorageLink);
}
private void DoWork(object sender, DoWorkEventArgs e)

View File

@ -53,6 +53,7 @@ namespace XenAdmin.TabPages
private static readonly log4net.ILog log = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
private readonly ContextMenu _TheContextMenu = new ContextMenu();
private readonly DataGridViewColumn storageLinkColumn;
private bool QoSRestricted = false;
private VM vm;
@ -63,6 +64,8 @@ namespace XenAdmin.TabPages
_TheContextMenu.MenuItems.Add(AddButton.Text, AddButton_Click);
storageLinkColumn = ColumnSRVolume;
TitleLabel.ForeColor = Program.HeaderGradientForeColor;
TitleLabel.Font = Program.HeaderGradientFont;
multipleDvdIsoList1.linkLabel1.LinkColor = Color.FromArgb(0, 0, 255);
@ -111,19 +114,18 @@ namespace XenAdmin.TabPages
multipleDvdIsoList1.VM = vm;
if (vm != null)
{
vm.PropertyChanged += vm_PropertyChanged;
Host currentHost = Helpers.GetMaster(vm.Connection);
QoSRestricted = currentHost != null && currentHost.RestrictQoS;
}
BuildList();
// set all columns to be preferred width but allow user to resize.
foreach (DataGridViewTextBoxColumn col in dataGridViewStorage.Columns)
col.Width = col.GetPreferredWidth(DataGridViewAutoSizeColumnMode.AllCells, false);
{
if (col != storageLinkColumn)
{
col.Width = col.GetPreferredWidth(DataGridViewAutoSizeColumnMode.AllCells, false);
}
}
}
}
@ -209,6 +211,8 @@ namespace XenAdmin.TabPages
if (vm == null)
return;
bool storageLinkColumnVisible = false;
List<bool> devices_in_use = new List<bool>();
foreach (VBD vbd in vm.Connection.ResolveAll(vm.VBDs))
{
@ -225,6 +229,8 @@ namespace XenAdmin.TabPages
if (sr == null || sr.IsToolsSR)
continue;
storageLinkColumnVisible = vdi.sm_config.ContainsKey("SVID");
vdi.PropertyChanged -= new PropertyChangedEventHandler(vdi_PropertyChanged);
vdi.PropertyChanged += new PropertyChangedEventHandler(vdi_PropertyChanged);
@ -247,6 +253,8 @@ namespace XenAdmin.TabPages
HelpersGUI.ResizeLastGridViewColumn(ColumnDevicePath);
}
storageLinkColumn.Visible = storageLinkColumnVisible;
dataGridViewStorage.Sort(dataGridViewStorage.SortedColumn, dataGridViewStorage.SortOrder == SortOrder.Ascending ? ListSortDirection.Ascending : ListSortDirection.Descending);
IEnumerable<VBD> vbdsSelected = from VBDRow row in vbdSavedItems select row.VBD;

View File

@ -112,26 +112,26 @@
<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>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="labelBlurb.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Bottom, Left, Right</value>
</data>
<data name="labelBlurb.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="labelBlurb.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 33</value>
</data>
<data name="labelBlurb.Size" type="System.Drawing.Size, System.Drawing">
<value>563, 263</value>
</data>
<assembly alias="mscorlib" name="mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="labelBlurb.TabIndex" type="System.Int32, mscorlib">
<value>3</value>
</data>
@ -140,7 +140,7 @@
Before you begin, ensure that the following requirements are satisfied for all servers and virtual machines in the pool:
• Shared storage must be available, including at least one iSCSI, NFS or Fibre Channel LUN of 356MB or greater. This LUN will be used for the heartbeat SR. If you are using a StorageLink SR, then you should manually provision a separate iSCSI, NFS or Fibre Channel LUN to use for the heartbeat.
• Shared storage must be available, including at least one iSCSI, NFS or Fibre Channel LUN of 356MB or greater. This LUN will be used for the heartbeat SR.
• All the virtual machines you want to protect with HA must be agile.
@ -153,7 +153,7 @@ To continue, click Next.</value>
<value>labelBlurb</value>
</data>
<data name="&gt;&gt;labelBlurb.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;labelBlurb.Parent" xml:space="preserve">
<value>$this</value>
@ -183,7 +183,7 @@ To continue, click Next.</value>
<value>labelTitle</value>
</data>
<data name="&gt;&gt;labelTitle.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;labelTitle.Parent" xml:space="preserve">
<value>$this</value>
@ -191,7 +191,7 @@ To continue, click Next.</value>
<data name="&gt;&gt;labelTitle.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<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">

View File

@ -42,14 +42,11 @@ namespace XenAdmin.Wizards.NewNetworkWizard_Pages
this.flowLayoutPanel1 = new System.Windows.Forms.FlowLayoutPanel();
this.warningsTable = new System.Windows.Forms.TableLayoutPanel();
this.iconWarningChinOption = new System.Windows.Forms.PictureBox();
this.iconWarningExternalOption = new System.Windows.Forms.PictureBox();
this.labelWarningExternalOption = new System.Windows.Forms.Label();
this.labelWarningChinOption = new System.Windows.Forms.Label();
this.toolTip = new System.Windows.Forms.ToolTip(this.components);
this.flowLayoutPanel1.SuspendLayout();
this.warningsTable.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.iconWarningChinOption)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.iconWarningExternalOption)).BeginInit();
this.SuspendLayout();
//
// lblNetTypeSel
@ -122,8 +119,6 @@ namespace XenAdmin.Wizards.NewNetworkWizard_Pages
//
resources.ApplyResources(this.warningsTable, "warningsTable");
this.warningsTable.Controls.Add(this.iconWarningChinOption, 0, 1);
this.warningsTable.Controls.Add(this.iconWarningExternalOption, 0, 0);
this.warningsTable.Controls.Add(this.labelWarningExternalOption, 1, 0);
this.warningsTable.Controls.Add(this.labelWarningChinOption, 1, 1);
this.warningsTable.Name = "warningsTable";
//
@ -134,18 +129,6 @@ namespace XenAdmin.Wizards.NewNetworkWizard_Pages
this.iconWarningChinOption.Name = "iconWarningChinOption";
this.iconWarningChinOption.TabStop = false;
//
// iconWarningExternalOption
//
resources.ApplyResources(this.iconWarningExternalOption, "iconWarningExternalOption");
this.iconWarningExternalOption.Image = global::XenAdmin.Properties.Resources._000_Info3_h32bit_16;
this.iconWarningExternalOption.Name = "iconWarningExternalOption";
this.iconWarningExternalOption.TabStop = false;
//
// labelWarningExternalOption
//
resources.ApplyResources(this.labelWarningExternalOption, "labelWarningExternalOption");
this.labelWarningExternalOption.Name = "labelWarningExternalOption";
//
// labelWarningChinOption
//
resources.ApplyResources(this.labelWarningChinOption, "labelWarningChinOption");
@ -166,7 +149,6 @@ namespace XenAdmin.Wizards.NewNetworkWizard_Pages
this.warningsTable.ResumeLayout(false);
this.warningsTable.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.iconWarningChinOption)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.iconWarningExternalOption)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
@ -186,9 +168,7 @@ namespace XenAdmin.Wizards.NewNetworkWizard_Pages
private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel1;
private System.Windows.Forms.ToolTip toolTip;
private System.Windows.Forms.TableLayoutPanel warningsTable;
private System.Windows.Forms.PictureBox iconWarningExternalOption;
private System.Windows.Forms.PictureBox iconWarningChinOption;
private System.Windows.Forms.Label labelWarningExternalOption;
private System.Windows.Forms.Label labelWarningChinOption;
}

View File

@ -81,22 +81,6 @@ namespace XenAdmin.Wizards.NewNetworkWizard_Pages
if (master == null)
return;
if (master.RestrictVLAN)
{
rbtnExternalNetwork.Checked = false;
rbtnExternalNetwork.Enabled = labelExternalNetwork.Enabled = false;
labelWarningExternalOption.Text = Messages.EXTERNAL_NETWORKS_REQUIRE_STANDARD;
iconWarningExternalOption.Visible = labelWarningExternalOption.Visible = true;
rbtnInternalNetwork.Checked = true;
}
else
{
rbtnExternalNetwork.Enabled = labelExternalNetwork.Enabled = true;
iconWarningExternalOption.Visible = labelWarningExternalOption.Visible = false;
}
Pool pool = Helpers.GetPoolOfOne(connection);
if (!pool.vSwitchController)
@ -106,15 +90,12 @@ namespace XenAdmin.Wizards.NewNetworkWizard_Pages
labelWarningChinOption.Text =
Helpers.FeatureForbidden(connection, Host.RestrictVSwitchController) ?
string.Format(Messages.FEATURE_NOT_AVAILABLE_NEED_COWLEY_ENTERPRISE_OR_PLATINUM_PLURAL, Messages.CHINS) :
string.Format(Messages.FEATURE_NOT_AVAILABLE_NEED_ENTERPRISE_OR_PLATINUM_PLURAL, Messages.CHINS) :
Messages.CHINS_NEED_VSWITCHCONTROLLER;
iconWarningChinOption.Visible = labelWarningChinOption.Visible = true;
if (master.RestrictVLAN)
rbtnInternalNetwork.Checked = true;
else
rbtnExternalNetwork.Checked = true;
rbtnExternalNetwork.Checked = true;
}
else
{

View File

@ -464,7 +464,7 @@ This type of network requires the vSwitch Controller to be running.</value>
<value />
</data>
<data name="iconWarningChinOption.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 25</value>
<value>3, 3</value>
</data>
<data name="iconWarningChinOption.Size" type="System.Drawing.Size, System.Drawing">
<value>16, 16</value>
@ -487,78 +487,6 @@ This type of network requires the vSwitch Controller to be running.</value>
<data name="&gt;&gt;iconWarningChinOption.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="iconWarningExternalOption.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Left</value>
</data>
<data name="iconWarningExternalOption.ErrorImage" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="iconWarningExternalOption.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="iconWarningExternalOption.InitialImage" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
</data>
<data name="iconWarningExternalOption.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 3</value>
</data>
<data name="iconWarningExternalOption.Size" type="System.Drawing.Size, System.Drawing">
<value>16, 16</value>
</data>
<data name="iconWarningExternalOption.SizeMode" type="System.Windows.Forms.PictureBoxSizeMode, System.Windows.Forms">
<value>AutoSize</value>
</data>
<data name="iconWarningExternalOption.TabIndex" type="System.Int32, mscorlib">
<value>8</value>
</data>
<data name="&gt;&gt;iconWarningExternalOption.Name" xml:space="preserve">
<value>iconWarningExternalOption</value>
</data>
<data name="&gt;&gt;iconWarningExternalOption.Type" xml:space="preserve">
<value>System.Windows.Forms.PictureBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;iconWarningExternalOption.Parent" xml:space="preserve">
<value>warningsTable</value>
</data>
<data name="&gt;&gt;iconWarningExternalOption.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="labelWarningExternalOption.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Left</value>
</data>
<data name="labelWarningExternalOption.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="labelWarningExternalOption.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="labelWarningExternalOption.Location" type="System.Drawing.Point, System.Drawing">
<value>25, 4</value>
</data>
<data name="labelWarningExternalOption.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 3, 3, 3</value>
</data>
<data name="labelWarningExternalOption.Size" type="System.Drawing.Size, System.Drawing">
<value>45, 13</value>
</data>
<data name="labelWarningExternalOption.TabIndex" type="System.Int32, mscorlib">
<value>9</value>
</data>
<data name="labelWarningExternalOption.Text" xml:space="preserve">
<value>warning</value>
</data>
<data name="&gt;&gt;labelWarningExternalOption.Name" xml:space="preserve">
<value>labelWarningExternalOption</value>
</data>
<data name="&gt;&gt;labelWarningExternalOption.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="&gt;&gt;labelWarningExternalOption.Parent" xml:space="preserve">
<value>warningsTable</value>
</data>
<data name="&gt;&gt;labelWarningExternalOption.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="labelWarningChinOption.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Left</value>
</data>
@ -569,7 +497,7 @@ This type of network requires the vSwitch Controller to be running.</value>
<value>NoControl</value>
</data>
<data name="labelWarningChinOption.Location" type="System.Drawing.Point, System.Drawing">
<value>25, 26</value>
<value>25, 4</value>
</data>
<data name="labelWarningChinOption.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 3, 3, 3</value>
@ -593,7 +521,7 @@ This type of network requires the vSwitch Controller to be running.</value>
<value>warningsTable</value>
</data>
<data name="&gt;&gt;labelWarningChinOption.ZOrder" xml:space="preserve">
<value>3</value>
<value>1</value>
</data>
<data name="warningsTable.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 269</value>
@ -605,7 +533,7 @@ This type of network requires the vSwitch Controller to be running.</value>
<value>2</value>
</data>
<data name="warningsTable.Size" type="System.Drawing.Size, System.Drawing">
<value>73, 44</value>
<value>73, 22</value>
</data>
<data name="warningsTable.TabIndex" type="System.Int32, mscorlib">
<value>10</value>
@ -623,7 +551,7 @@ This type of network requires the vSwitch Controller to be running.</value>
<value>9</value>
</data>
<data name="warningsTable.LayoutSettings" type="System.Windows.Forms.TableLayoutSettings, System.Windows.Forms">
<value>&lt;?xml version="1.0" encoding="utf-16"?&gt;&lt;TableLayoutSettings&gt;&lt;Controls&gt;&lt;Control Name="iconWarningChinOption" Row="1" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="iconWarningExternalOption" Row="0" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="labelWarningExternalOption" Row="0" RowSpan="1" Column="1" ColumnSpan="1" /&gt;&lt;Control Name="labelWarningChinOption" Row="1" RowSpan="1" Column="1" ColumnSpan="1" /&gt;&lt;/Controls&gt;&lt;Columns Styles="AutoSize,0,Percent,100" /&gt;&lt;Rows Styles="AutoSize,0,AutoSize,0" /&gt;&lt;/TableLayoutSettings&gt;</value>
<value>&lt;?xml version="1.0" encoding="utf-16"?&gt;&lt;TableLayoutSettings&gt;&lt;Controls&gt;&lt;Control Name="iconWarningChinOption" Row="1" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="labelWarningChinOption" Row="1" RowSpan="1" Column="1" ColumnSpan="1" /&gt;&lt;/Controls&gt;&lt;Columns Styles="AutoSize,0,Percent,100" /&gt;&lt;Rows Styles="AutoSize,0,AutoSize,0" /&gt;&lt;/TableLayoutSettings&gt;</value>
</data>
<data name="flowLayoutPanel1.FlowDirection" type="System.Windows.Forms.FlowDirection, System.Windows.Forms">
<value>TopDown</value>

View File

@ -665,7 +665,6 @@ namespace XenAdmin.Wizards
srDescriptor.Description,
m_srWizardType.Type,
m_srWizardType.ContentType,
!master.RestrictPoolAttachedStorage,
srDescriptor.DeviceConfig,
srDescriptor.SMConfig));
}
@ -688,7 +687,6 @@ namespace XenAdmin.Wizards
srDescriptor.Description,
m_srWizardType.Type,
m_srWizardType.ContentType,
!master.RestrictPoolAttachedStorage,
srDescriptor.DeviceConfig));
}
else

View File

@ -3285,12 +3285,6 @@
<Compile Include="Dialogs\NewPoolDialog.Designer.cs">
<DependentUpon>NewPoolDialog.cs</DependentUpon>
</Compile>
<Compile Include="Dialogs\SetStorageLinkLicenseServerDialog.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="Dialogs\SetStorageLinkLicenseServerDialog.designer.cs">
<DependentUpon>SetStorageLinkLicenseServerDialog.cs</DependentUpon>
</Compile>
<Compile Include="Dialogs\VIFDialog.cs">
<SubType>Form</SubType>
</Compile>
@ -5313,15 +5307,6 @@
<EmbeddedResource Include="Dialogs\SelectHostDialog.zh-CN.resx">
<DependentUpon>SelectHostDialog.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Dialogs\SetStorageLinkLicenseServerDialog.ja.resx">
<DependentUpon>SetStorageLinkLicenseServerDialog.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Dialogs\SetStorageLinkLicenseServerDialog.resx">
<DependentUpon>SetStorageLinkLicenseServerDialog.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Dialogs\SetStorageLinkLicenseServerDialog.zh-CN.resx">
<DependentUpon>SetStorageLinkLicenseServerDialog.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Dialogs\ThreeButtonDialog.ja.resx">
<DependentUpon>ThreeButtonDialog.cs</DependentUpon>
</EmbeddedResource>
@ -5572,9 +5557,11 @@
</EmbeddedResource>
<EmbeddedResource Include="SettingsPanels\CPUMemoryEditPage.ja.resx">
<DependentUpon>CPUMemoryEditPage.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="SettingsPanels\CPUMemoryEditPage.zh-CN.resx">
<DependentUpon>CPUMemoryEditPage.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="SettingsPanels\CustomFieldsDisplayPage.ja.resx">
<DependentUpon>CustomFieldsDisplayPage.cs</DependentUpon>

View File

@ -1,59 +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.Windows.Forms;
using NUnit.Framework;
using XenAdmin.Dialogs;
namespace XenAdminTests.DialogTests.boston.SetStorageLinkLicenseServerDialogTests
{
[TestFixture, Category(TestCategories.UICategoryA)]
public class SetStorageLinkLicenseServerDialogTests : DialogTest<SetStorageLinkLicenseServerDialog>
{
protected override SetStorageLinkLicenseServerDialog NewDialog()
{
return new SetStorageLinkLicenseServerDialog("address", 8014);
}
protected override void RunAfter()
{
Button ok = TestUtils.GetButton(dialog, "btnOK");
Assert.IsTrue(ok.Enabled);
TextBox tb = TestUtils.GetTextBox(dialog, "txtHost");
const string hostname = "hostname here";
MW(delegate { tb.Text = hostname; });
Assert.AreEqual(hostname, tb.Text);
MW(ok.PerformClick);
}
}
}

View File

@ -289,7 +289,6 @@
<Compile Include="DialogTests\ReconnectAsDialogTests.cs" />
<Compile Include="DialogTests\RestoreVMsDialogTests.cs" />
<Compile Include="DialogTests\ScreenShotDialogTest.cs" />
<Compile Include="DialogTests\SetStorageLinkLicenseServerDialogTests.cs" />
<Compile Include="DialogTests\UpsellDialogTests.cs" />
<Compile Include="DialogTests\WlbCredentialsDialogTests.cs" />
<Compile Include="DialogTests\WlbEditScheduledTaskTests.cs" />

View File

@ -52,7 +52,7 @@ namespace XenAdmin.Actions
public SrIntroduceAction(IXenConnection connection,
String srUuid, String srName, String srDescription, SR.SRTypes srType,
String srContentType, bool srIsShared, Dictionary<String, String> dconf)
String srContentType, Dictionary<String, String> dconf)
: base(connection, string.Format(Messages.ACTION_SR_ATTACHING_TITLE, srName, Helpers.GetName(connection)))
{
_srUuid = srUuid;
@ -60,7 +60,7 @@ namespace XenAdmin.Actions
_srDescription = srDescription;
_srContentType = srContentType;
_srType = srType;
_srIsShared = srIsShared;
_srIsShared = true; // used to depend on restrict_pool_attached_storage flag: now always true
_dconf = dconf;
}

View File

@ -63,7 +63,7 @@ namespace XenAdmin.Actions
"pbd.unplug");
public SrCreateAction(IXenConnection connection, Host host, string srName,
string srDescription, SR.SRTypes srType, string srContentType, bool srIsShared,
string srDescription, SR.SRTypes srType, string srContentType,
Dictionary<string, string> dconf, Dictionary<string, string> smconf)
: base(connection, string.Format(Messages.ACTION_SR_CREATING_TITLE,
XenAPI.SR.getFriendlyTypeName(srType), srName, Helpers.GetName(connection)))
@ -74,7 +74,7 @@ namespace XenAdmin.Actions
_srDescription = srDescription;
_srType = srType;
_srContentType = srContentType;
_srIsShared = srIsShared;
_srIsShared = true; // used to depend on restrict_pool_attached_storage flag: now always true
_dconf = dconf;
_smconf = smconf;

View File

@ -14144,15 +14144,6 @@ namespace XenAdmin {
}
}
/// <summary>
/// Looks up a localized string similar to External networks require a Standard Edition license..
/// </summary>
public static string EXTERNAL_NETWORKS_REQUIRE_STANDARD {
get {
return ResourceManager.GetString("EXTERNAL_NETWORKS_REQUIRE_STANDARD", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to External command exited with Exit Code: {0}.
/// </summary>
@ -14261,15 +14252,6 @@ namespace XenAdmin {
}
}
/// <summary>
/// Looks up a localized string similar to {0} require a XenServer 5.6 Feature Pack 1 or later Enterprise or Platinum Edition license..
/// </summary>
public static string FEATURE_NOT_AVAILABLE_NEED_COWLEY_ENTERPRISE_OR_PLATINUM_PLURAL {
get {
return ResourceManager.GetString("FEATURE_NOT_AVAILABLE_NEED_COWLEY_ENTERPRISE_OR_PLATINUM_PLURAL", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to {0} require an Enterprise\nor Platinum Edition license..
/// </summary>
@ -14279,42 +14261,6 @@ namespace XenAdmin {
}
}
/// <summary>
/// Looks up a localized string similar to {0} requires XenServer 5.5 or later.
/// </summary>
public static string FEATURE_NOT_AVAILABLE_NEED_GEORGE {
get {
return ResourceManager.GetString("FEATURE_NOT_AVAILABLE_NEED_GEORGE", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to {0} requires XenServer 5.6 or later.
/// </summary>
public static string FEATURE_NOT_AVAILABLE_NEED_MR {
get {
return ResourceManager.GetString("FEATURE_NOT_AVAILABLE_NEED_MR", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to {0} require a XenServer 5.6\nor later Enterprise or Platinum Edition license..
/// </summary>
public static string FEATURE_NOT_AVAILABLE_NEED_MR_ENTERPRISE_OR_PLATINUM_PLURAL {
get {
return ResourceManager.GetString("FEATURE_NOT_AVAILABLE_NEED_MR_ENTERPRISE_OR_PLATINUM_PLURAL", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to {0} require XenServer 5.6 or later.
/// </summary>
public static string FEATURE_NOT_AVAILABLE_NEED_MR_PLURAL {
get {
return ResourceManager.GetString("FEATURE_NOT_AVAILABLE_NEED_MR_PLURAL", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to &amp;Next Section.
/// </summary>
@ -21336,16 +21282,6 @@ namespace XenAdmin {
}
}
/// <summary>
/// Looks up a localized string similar to This version of XenCenter does not support XenServer 4.0 or 4.1.
///Install an earlier version..
/// </summary>
public static string MIAMI_NOT_SUPPORTED {
get {
return ResourceManager.GetString("MIAMI_NOT_SUPPORTED", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Migrate.
/// </summary>
@ -28984,6 +28920,24 @@ namespace XenAdmin {
}
}
/// <summary>
/// Looks up a localized string similar to This version of XenCenter supports XenServer 6.0 onwards..
/// </summary>
public static string SERVER_TOO_OLD {
get {
return ResourceManager.GetString("SERVER_TOO_OLD", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Use an earlier version of XenCenter to manage this server..
/// </summary>
public static string SERVER_TOO_OLD_SOLUTION {
get {
return ResourceManager.GetString("SERVER_TOO_OLD_SOLUTION", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to server &apos;{0}&apos;.
/// </summary>
@ -30689,60 +30643,6 @@ namespace XenAdmin {
}
}
/// <summary>
/// Looks up a localized string similar to Fibre Channel.
/// </summary>
public static string STORAGELINK_PROTOCOLCAPABILITIES_FIBRE_CHANNEL {
get {
return ResourceManager.GetString("STORAGELINK_PROTOCOLCAPABILITIES_FIBRE_CHANNEL", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to iSCSI.
/// </summary>
public static string STORAGELINK_PROTOCOLCAPABILITIES_ISCSI {
get {
return ResourceManager.GetString("STORAGELINK_PROTOCOLCAPABILITIES_ISCSI", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Deduplication.
/// </summary>
public static string STORAGELINK_PROVISIONINGOPTIONS_DEDUPLICATION {
get {
return ResourceManager.GetString("STORAGELINK_PROVISIONINGOPTIONS_DEDUPLICATION", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to None.
/// </summary>
public static string STORAGELINK_PROVISIONINGOPTIONS_NONE {
get {
return ResourceManager.GetString("STORAGELINK_PROVISIONINGOPTIONS_NONE", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Thick.
/// </summary>
public static string STORAGELINK_PROVISIONINGTYPE_THICK {
get {
return ResourceManager.GetString("STORAGELINK_PROVISIONINGTYPE_THICK", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Thin.
/// </summary>
public static string STORAGELINK_PROVISIONINGTYPE_THIN {
get {
return ResourceManager.GetString("STORAGELINK_PROVISIONINGTYPE_THIN", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to There is a StorageLink Gateway SR that needs to be reattached..
/// </summary>
@ -30752,123 +30652,6 @@ namespace XenAdmin {
}
}
/// <summary>
/// Looks up a localized string similar to Clone.
/// </summary>
public static string STORAGELINK_STORAGESYSTEMCAPABILITIES_CLONE {
get {
return ResourceManager.GetString("STORAGELINK_STORAGESYSTEMCAPABILITIES_CLONE", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Clone of Snapshot.
/// </summary>
public static string STORAGELINK_STORAGESYSTEMCAPABILITIES_CLONE_OF_SNAPSHOT {
get {
return ResourceManager.GetString("STORAGELINK_STORAGESYSTEMCAPABILITIES_CLONE_OF_SNAPSHOT", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Deduplication.
/// </summary>
public static string STORAGELINK_STORAGESYSTEMCAPABILITIES_DEDUPLICATION {
get {
return ResourceManager.GetString("STORAGELINK_STORAGESYSTEMCAPABILITIES_DEDUPLICATION", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Snapshots.
/// </summary>
public static string STORAGELINK_STORAGESYSTEMCAPABILITIES_DIFF_SNAPSHOT {
get {
return ResourceManager.GetString("STORAGELINK_STORAGESYSTEMCAPABILITIES_DIFF_SNAPSHOT", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Fibre Channel.
/// </summary>
public static string STORAGELINK_STORAGESYSTEMCAPABILITIES_FIBRE_CHANNEL {
get {
return ResourceManager.GetString("STORAGELINK_STORAGESYSTEMCAPABILITIES_FIBRE_CHANNEL", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to iSCSI.
/// </summary>
public static string STORAGELINK_STORAGESYSTEMCAPABILITIES_ISCSI {
get {
return ResourceManager.GetString("STORAGELINK_STORAGESYSTEMCAPABILITIES_ISCSI", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Thick Provisioning.
/// </summary>
public static string STORAGELINK_STORAGESYSTEMCAPABILITIES_PROVISION_FULL {
get {
return ResourceManager.GetString("STORAGELINK_STORAGESYSTEMCAPABILITIES_PROVISION_FULL", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Thin Provisioning.
/// </summary>
public static string STORAGELINK_STORAGESYSTEMCAPABILITIES_PROVISION_THIN {
get {
return ResourceManager.GetString("STORAGELINK_STORAGESYSTEMCAPABILITIES_PROVISION_THIN", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Remote Replication.
/// </summary>
public static string STORAGELINK_STORAGESYSTEMCAPABILITIES_REMOTE_REPLICATION {
get {
return ResourceManager.GetString("STORAGELINK_STORAGESYSTEMCAPABILITIES_REMOTE_REPLICATION", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Volume Resize.
/// </summary>
public static string STORAGELINK_STORAGESYSTEMCAPABILITIES_RESIZE {
get {
return ResourceManager.GetString("STORAGELINK_STORAGESYSTEMCAPABILITIES_RESIZE", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Snapshot of Snapshot.
/// </summary>
public static string STORAGELINK_STORAGESYSTEMCAPABILITIES_SNAPSHOT_OF_SNAPSHOT {
get {
return ResourceManager.GetString("STORAGELINK_STORAGESYSTEMCAPABILITIES_SNAPSHOT_OF_SNAPSHOT", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Testing Connection to StorageLink server {0}.
/// </summary>
public static string STORAGELINK_TEST_CONNECTION {
get {
return ResourceManager.GetString("STORAGELINK_TEST_CONNECTION", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Unable to connect to StorageLink server on {0}..
/// </summary>
public static string STORAGELINK_UNABLE_TO_CONNECT {
get {
return ResourceManager.GetString("STORAGELINK_UNABLE_TO_CONNECT", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to StorageLink SR status.
/// </summary>

View File

@ -4704,9 +4704,6 @@ CD をイジェクトしてから再試行してください。</value>
<data name="EXTERNAL_NETWORK" xml:space="preserve">
<value>外部ネットワーク</value>
</data>
<data name="EXTERNAL_NETWORKS_REQUIRE_STANDARD" xml:space="preserve">
<value>外部ネットワークを使用するには、Standard Edition のライセンスが必要です。</value>
</data>
<data name="EXTERNAL_PLUGIN_BAD_EXIT" xml:space="preserve">
<value>外部コマンドが終了しました。終了コード: {0}</value>
</data>
@ -4743,24 +4740,9 @@ CD をイジェクトしてから再試行してください。</value>
<data name="FEATURE_DISABLED_IN_REGISTER" xml:space="preserve">
<value>機能がレジストリで無効になっています。</value>
</data>
<data name="FEATURE_NOT_AVAILABLE_NEED_COWLEY_ENTERPRISE_OR_PLATINUM_PLURAL" xml:space="preserve">
<value>{0} を使用するには XenServer 5.6 Feature Pack 1 以降の Enterprise Edition または Platinum Edition のライセンスが必要です。</value>
</data>
<data name="FEATURE_NOT_AVAILABLE_NEED_ENTERPRISE_OR_PLATINUM_PLURAL" xml:space="preserve">
<value>{0} を使用するには Enterprise Edition\nまたは Platinum Edition のライセンスが必要です。</value>
</data>
<data name="FEATURE_NOT_AVAILABLE_NEED_GEORGE" xml:space="preserve">
<value>{0} には XenServer 5.5 またはそれ以降のバージョンが必要です</value>
</data>
<data name="FEATURE_NOT_AVAILABLE_NEED_MR" xml:space="preserve">
<value>{0} には XenServer 5.6 またはそれ以降のバージョンが必要です</value>
</data>
<data name="FEATURE_NOT_AVAILABLE_NEED_MR_ENTERPRISE_OR_PLATINUM_PLURAL" xml:space="preserve">
<value>{0} を使用するには XenServer 5.6 以降の Enterprise Edition\nまたは Platinum Edition のライセンスが必要です。</value>
</data>
<data name="FEATURE_NOT_AVAILABLE_NEED_MR_PLURAL" xml:space="preserve">
<value>{0} には XenServer 5.6 またはそれ以降のバージョンが必要です</value>
</data>
<data name="FETCH_EARLIER_DATA" xml:space="preserve">
<value>次のセクション(&amp;N)</value>
</data>
@ -10098,111 +10080,12 @@ StorageLink Gateway を使用する VM の XenServer 6.0 へのアップグレ
<data name="STATUS_REPORT_ZIP_FAILED" xml:space="preserve">
<value>サーバーの状態レポートのパッケージ化時にエラーが発生しました。一部のレポートが作成されていない場合があります</value>
</data>
<data name="STORAGELINKPOOL" xml:space="preserve">
<value>StorageLink ストレージ プール</value>
</data>
<data name="STORAGELINKPOOLS" xml:space="preserve">
<value>StorageLink ストレージ プール</value>
</data>
<data name="STORAGELINKPOOL_GENERAL_TAB_TITLE" xml:space="preserve">
<value>ストレージ プールの全般プロパティ</value>
</data>
<data name="STORAGELINKREPOSITORY_GENERAL_TAB_TITLE" xml:space="preserve">
<value>ストレージ リポジトリの全般プロパティ</value>
</data>
<data name="STORAGELINKSERVER" xml:space="preserve">
<value>StorageLink サーバー</value>
</data>
<data name="STORAGELINKSERVERS" xml:space="preserve">
<value>StorageLink サーバー</value>
</data>
<data name="STORAGELINKSERVER_GENERAL_TAB_TITLE" xml:space="preserve">
<value>StorageLink サーバーの全般プロパティ</value>
</data>
<data name="STORAGELINKSRS" xml:space="preserve">
<value>StorageLink ストレージ リポジトリ</value>
</data>
<data name="STORAGELINKSYSTEM" xml:space="preserve">
<value>StorageLink ストレージ システム</value>
</data>
<data name="STORAGELINKSYSTEMS" xml:space="preserve">
<value>StorageLink ストレージ システム</value>
</data>
<data name="STORAGELINKSYSTEM_GENERAL_TAB_TITLE" xml:space="preserve">
<value>ストレージ システムの全般プロパティ</value>
</data>
<data name="STORAGELINK_IN_USE" xml:space="preserve">
<value>ストレージ システムの使用</value>
</data>
<data name="STORAGELINK_POOL_DISK_SPACE" xml:space="preserve">
<value>{1} の {0} 空き</value>
</data>
<data name="STORAGELINK_POOL_SIZE_USED" xml:space="preserve">
<value>{0} 使用 / {1} 合計</value>
</data>
<data name="STORAGELINK_PROTOCOLCAPABILITIES_FIBRE_CHANNEL" xml:space="preserve">
<value>ファイバ チャネル</value>
</data>
<data name="STORAGELINK_PROTOCOLCAPABILITIES_ISCSI" xml:space="preserve">
<value>iSCSI</value>
</data>
<data name="STORAGELINK_PROVISIONINGOPTIONS_DEDUPLICATION" xml:space="preserve">
<value>重複排除</value>
</data>
<data name="STORAGELINK_PROVISIONINGOPTIONS_NONE" xml:space="preserve">
<value>なし</value>
</data>
<data name="STORAGELINK_PROVISIONINGTYPE_THICK" xml:space="preserve">
<value>シック</value>
</data>
<data name="STORAGELINK_PROVISIONINGTYPE_THIN" xml:space="preserve">
<value>シン</value>
</data>
<data name="STORAGELINK_SCANNING_FOR_SRS" xml:space="preserve">
<value>'{0}' 上の SR のスキャン</value>
</data>
<data name="STORAGELINK_SR_NEEDS_REATTACH" xml:space="preserve">
<value>再接続が必要な StorageLink Gateway SR があります。</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_CLONE" xml:space="preserve">
<value>複製</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_CLONE_OF_SNAPSHOT" xml:space="preserve">
<value>スナップショットの複製</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_DEDUPLICATION" xml:space="preserve">
<value>重複排除</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_DIFF_SNAPSHOT" xml:space="preserve">
<value>スナップショット</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_FIBRE_CHANNEL" xml:space="preserve">
<value>ファイバ チャネル</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_ISCSI" xml:space="preserve">
<value>iSCSI</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_PROVISION_FULL" xml:space="preserve">
<value>シック プロビジョニング</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_PROVISION_THIN" xml:space="preserve">
<value>シン プロビジョニング</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_REMOTE_REPLICATION" xml:space="preserve">
<value>リモート複製</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_RESIZE" xml:space="preserve">
<value>ボリュームのサイズ変更</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_SNAPSHOT_OF_SNAPSHOT" xml:space="preserve">
<value>スナップショットのスナップショット</value>
</data>
<data name="STORAGELINK_TEST_CONNECTION" xml:space="preserve">
<value>StorageLink サーバー {0} との接続をテストしています</value>
</data>
<data name="STORAGELINK_UNABLE_TO_CONNECT" xml:space="preserve">
<value>{0} 上の StorageLink サーバーに接続できません</value>
</data>
<data name="STORAGELINK_UPGRADE_TEST" xml:space="preserve">
<value>StorageLink SR 状態</value>
</data>

View File

@ -4975,9 +4975,6 @@ Would you like to eject these ISOs before continuing?</value>
<data name="EXTERNAL_NETWORK" xml:space="preserve">
<value>External network</value>
</data>
<data name="EXTERNAL_NETWORKS_REQUIRE_STANDARD" xml:space="preserve">
<value>External networks require a Standard Edition license.</value>
</data>
<data name="EXTERNAL_PLUGIN_BAD_EXIT" xml:space="preserve">
<value>External command exited with Exit Code: {0}</value>
</data>
@ -5014,24 +5011,9 @@ Would you like to eject these ISOs before continuing?</value>
<data name="FEATURE_DISABLED_IN_REGISTER" xml:space="preserve">
<value>Feature disabled in the registry</value>
</data>
<data name="FEATURE_NOT_AVAILABLE_NEED_COWLEY_ENTERPRISE_OR_PLATINUM_PLURAL" xml:space="preserve">
<value>{0} require a XenServer 5.6 Feature Pack 1 or later Enterprise or Platinum Edition license.</value>
</data>
<data name="FEATURE_NOT_AVAILABLE_NEED_ENTERPRISE_OR_PLATINUM_PLURAL" xml:space="preserve">
<value>{0} require an Enterprise\nor Platinum Edition license.</value>
</data>
<data name="FEATURE_NOT_AVAILABLE_NEED_GEORGE" xml:space="preserve">
<value>{0} requires XenServer 5.5 or later</value>
</data>
<data name="FEATURE_NOT_AVAILABLE_NEED_MR" xml:space="preserve">
<value>{0} requires XenServer 5.6 or later</value>
</data>
<data name="FEATURE_NOT_AVAILABLE_NEED_MR_ENTERPRISE_OR_PLATINUM_PLURAL" xml:space="preserve">
<value>{0} require a XenServer 5.6\nor later Enterprise or Platinum Edition license.</value>
</data>
<data name="FEATURE_NOT_AVAILABLE_NEED_MR_PLURAL" xml:space="preserve">
<value>{0} require XenServer 5.6 or later</value>
</data>
<data name="FETCH_EARLIER_DATA" xml:space="preserve">
<value>&amp;Next Section</value>
</data>
@ -7435,10 +7417,6 @@ To fix a corrupt configuration file revert changes to {0} or delete the file to
<data name="MESSAGE_ALERT_TITLE" xml:space="preserve">
<value>{0}: {1}</value>
</data>
<data name="MIAMI_NOT_SUPPORTED" xml:space="preserve">
<value>This version of XenCenter does not support XenServer 4.0 or 4.1.
Install an earlier version.</value>
</data>
<data name="MIGRATE" xml:space="preserve">
<value>Migrate</value>
</data>
@ -10100,6 +10078,12 @@ Upgrading VMs using StorageLink Gateway to XenServer 6.0 is only supported if th
<data name="SERVER_TIME" xml:space="preserve">
<value>The current time on the pool master is: {0}</value>
</data>
<data name="SERVER_TOO_OLD" xml:space="preserve">
<value>This version of XenCenter supports XenServer 6.0 onwards.</value>
</data>
<data name="SERVER_TOO_OLD_SOLUTION" xml:space="preserve">
<value>Use an earlier version of XenCenter to manage this server.</value>
</data>
<data name="SERVER_X" xml:space="preserve">
<value>server '{0}'</value>
</data>
@ -10602,66 +10586,9 @@ The upper limit: SR size / {2}</value>
<data name="STORAGELINK_POOL_DISK_SPACE" xml:space="preserve">
<value>{0} free of {1}</value>
</data>
<data name="STORAGELINK_PROTOCOLCAPABILITIES_FIBRE_CHANNEL" xml:space="preserve">
<value>Fibre Channel</value>
</data>
<data name="STORAGELINK_PROTOCOLCAPABILITIES_ISCSI" xml:space="preserve">
<value>iSCSI</value>
</data>
<data name="STORAGELINK_PROVISIONINGOPTIONS_DEDUPLICATION" xml:space="preserve">
<value>Deduplication</value>
</data>
<data name="STORAGELINK_PROVISIONINGOPTIONS_NONE" xml:space="preserve">
<value>None</value>
</data>
<data name="STORAGELINK_PROVISIONINGTYPE_THICK" xml:space="preserve">
<value>Thick</value>
</data>
<data name="STORAGELINK_PROVISIONINGTYPE_THIN" xml:space="preserve">
<value>Thin</value>
</data>
<data name="STORAGELINK_SR_NEEDS_REATTACH" xml:space="preserve">
<value>There is a StorageLink Gateway SR that needs to be reattached.</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_CLONE" xml:space="preserve">
<value>Clone</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_CLONE_OF_SNAPSHOT" xml:space="preserve">
<value>Clone of Snapshot</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_DEDUPLICATION" xml:space="preserve">
<value>Deduplication</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_DIFF_SNAPSHOT" xml:space="preserve">
<value>Snapshots</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_FIBRE_CHANNEL" xml:space="preserve">
<value>Fibre Channel</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_ISCSI" xml:space="preserve">
<value>iSCSI</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_PROVISION_FULL" xml:space="preserve">
<value>Thick Provisioning</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_PROVISION_THIN" xml:space="preserve">
<value>Thin Provisioning</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_REMOTE_REPLICATION" xml:space="preserve">
<value>Remote Replication</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_RESIZE" xml:space="preserve">
<value>Volume Resize</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_SNAPSHOT_OF_SNAPSHOT" xml:space="preserve">
<value>Snapshot of Snapshot</value>
</data>
<data name="STORAGELINK_TEST_CONNECTION" xml:space="preserve">
<value>Testing Connection to StorageLink server {0}</value>
</data>
<data name="STORAGELINK_UNABLE_TO_CONNECT" xml:space="preserve">
<value>Unable to connect to StorageLink server on {0}.</value>
</data>
<data name="STORAGELINK_UPGRADE_TEST" xml:space="preserve">
<value>StorageLink SR status</value>
</data>

View File

@ -4703,9 +4703,6 @@ XenServer 可以重新启动服务器并将服务器的 CPU 级别降至池中
<data name="EXTERNAL_NETWORK" xml:space="preserve">
<value>外部网络</value>
</data>
<data name="EXTERNAL_NETWORKS_REQUIRE_STANDARD" xml:space="preserve">
<value>外部网络需要使用 Standard Edition 许可证。</value>
</data>
<data name="EXTERNAL_PLUGIN_BAD_EXIT" xml:space="preserve">
<value>外部命令已退出,退出代码为: {0}</value>
</data>
@ -4742,24 +4739,9 @@ XenServer 可以重新启动服务器并将服务器的 CPU 级别降至池中
<data name="FEATURE_DISABLED_IN_REGISTER" xml:space="preserve">
<value>功能已在注册表中禁用</value>
</data>
<data name="FEATURE_NOT_AVAILABLE_NEED_COWLEY_ENTERPRISE_OR_PLATINUM_PLURAL" xml:space="preserve">
<value>{0} 需要使用 XenServer 5.6 Feature Pack 1 或更高版本的 Enterprise 或 Platinum Edition 许可证。</value>
</data>
<data name="FEATURE_NOT_AVAILABLE_NEED_ENTERPRISE_OR_PLATINUM_PLURAL" xml:space="preserve">
<value>{0} 需要使用 Enterprise\n或 Enterprise Edition 许可证。</value>
</data>
<data name="FEATURE_NOT_AVAILABLE_NEED_GEORGE" xml:space="preserve">
<value>{0} 需要使用 XenServer 5.5 或更高版本</value>
</data>
<data name="FEATURE_NOT_AVAILABLE_NEED_MR" xml:space="preserve">
<value>{0} 需要使用 XenServer 5.6 或更高版本</value>
</data>
<data name="FEATURE_NOT_AVAILABLE_NEED_MR_ENTERPRISE_OR_PLATINUM_PLURAL" xml:space="preserve">
<value>{0} 需要使用 XenServer 5.6\n或更高版本的 Enterprise 或 Platinum Edition 许可证。</value>
</data>
<data name="FEATURE_NOT_AVAILABLE_NEED_MR_PLURAL" xml:space="preserve">
<value>{0} 需要使用 XenServer 5.6 或更高版本</value>
</data>
<data name="FETCH_EARLIER_DATA" xml:space="preserve">
<value>下一部分(&amp;N)</value>
</data>
@ -10100,111 +10082,12 @@ XenServer 可以重新启动服务器并将其 CPU 降至主服务器的级别
<data name="STATUS_REPORT_ZIP_FAILED" xml:space="preserve">
<value>打包服务器状态报告时出错。可能只能获取部分报告</value>
</data>
<data name="STORAGELINKPOOL" xml:space="preserve">
<value>StorageLink 存储池</value>
</data>
<data name="STORAGELINKPOOLS" xml:space="preserve">
<value>StorageLink 存储池</value>
</data>
<data name="STORAGELINKPOOL_GENERAL_TAB_TITLE" xml:space="preserve">
<value>存储池常规属性</value>
</data>
<data name="STORAGELINKREPOSITORY_GENERAL_TAB_TITLE" xml:space="preserve">
<value>存储库常规属性</value>
</data>
<data name="STORAGELINKSERVER" xml:space="preserve">
<value>StorageLink 服务器</value>
</data>
<data name="STORAGELINKSERVERS" xml:space="preserve">
<value>StorageLink 服务器</value>
</data>
<data name="STORAGELINKSERVER_GENERAL_TAB_TITLE" xml:space="preserve">
<value>StorageLink 服务器常规属性</value>
</data>
<data name="STORAGELINKSRS" xml:space="preserve">
<value>StorageLink 存储库</value>
</data>
<data name="STORAGELINKSYSTEM" xml:space="preserve">
<value>StorageLink 存储系统</value>
</data>
<data name="STORAGELINKSYSTEMS" xml:space="preserve">
<value>StorageLink 存储系统</value>
</data>
<data name="STORAGELINKSYSTEM_GENERAL_TAB_TITLE" xml:space="preserve">
<value>存储系统常规属性</value>
</data>
<data name="STORAGELINK_IN_USE" xml:space="preserve">
<value>正在使用存储系统</value>
</data>
<data name="STORAGELINK_POOL_DISK_SPACE" xml:space="preserve">
<value>可用空间 {0},总空间 {1}</value>
</data>
<data name="STORAGELINK_POOL_SIZE_USED" xml:space="preserve">
<value>{0} 已用空间,总计 {1}</value>
</data>
<data name="STORAGELINK_PROTOCOLCAPABILITIES_FIBRE_CHANNEL" xml:space="preserve">
<value>光纤通道</value>
</data>
<data name="STORAGELINK_PROTOCOLCAPABILITIES_ISCSI" xml:space="preserve">
<value>iSCSI</value>
</data>
<data name="STORAGELINK_PROVISIONINGOPTIONS_DEDUPLICATION" xml:space="preserve">
<value>重复数据删除</value>
</data>
<data name="STORAGELINK_PROVISIONINGOPTIONS_NONE" xml:space="preserve">
<value>无</value>
</data>
<data name="STORAGELINK_PROVISIONINGTYPE_THICK" xml:space="preserve">
<value>复杂</value>
</data>
<data name="STORAGELINK_PROVISIONINGTYPE_THIN" xml:space="preserve">
<value>精简</value>
</data>
<data name="STORAGELINK_SCANNING_FOR_SRS" xml:space="preserve">
<value>正在“{0}”上扫描 SR</value>
</data>
<data name="STORAGELINK_SR_NEEDS_REATTACH" xml:space="preserve">
<value>存在需要重新连接的 StorageLink Gateway SR。</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_CLONE" xml:space="preserve">
<value>克隆</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_CLONE_OF_SNAPSHOT" xml:space="preserve">
<value>快照克隆</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_DEDUPLICATION" xml:space="preserve">
<value>重复数据删除</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_DIFF_SNAPSHOT" xml:space="preserve">
<value>快照</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_FIBRE_CHANNEL" xml:space="preserve">
<value>光纤通道</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_ISCSI" xml:space="preserve">
<value>iSCSI</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_PROVISION_FULL" xml:space="preserve">
<value>复杂置备</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_PROVISION_THIN" xml:space="preserve">
<value>精简置备</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_REMOTE_REPLICATION" xml:space="preserve">
<value>远程复制</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_RESIZE" xml:space="preserve">
<value>调整卷大小</value>
</data>
<data name="STORAGELINK_STORAGESYSTEMCAPABILITIES_SNAPSHOT_OF_SNAPSHOT" xml:space="preserve">
<value>快照的快照</value>
</data>
<data name="STORAGELINK_TEST_CONNECTION" xml:space="preserve">
<value>正在进行与 StorageLink 服务器 {0} 的连接测试</value>
</data>
<data name="STORAGELINK_UNABLE_TO_CONNECT" xml:space="preserve">
<value>无法连接 {0} 上的 StorageLink 服务器。</value>
</data>
<data name="STORAGELINK_UPGRADE_TEST" xml:space="preserve">
<value>StorageLink SR 状态</value>
</data>

View File

@ -256,28 +256,6 @@ namespace XenAdmin.Network
get { return cacheIsPopulated; }
}
/// <summary>
/// Whether the connection is restricted by license -- i.e. whether one of the hosts in this pool
/// is XenExpress. This uses the cache if that has been populated, but for the short time between
/// connections and the cache being populated, it uses the Restricted flag.
/// </summary>
private bool IsRestricted
{
get
{
if (cacheIsPopulated)
{
foreach (XenAPI.Host h in Cache.Hosts)
{
if (h.RestrictConnection)
return true;
}
return false;
}
return Restricted;
}
}
private bool cacheUpdaterRunning = false;
private bool updatesWaiting = false;
@ -1337,22 +1315,6 @@ namespace XenAdmin.Network
}
}
// Check if the host being connected to has a XenExpress license
foreach (Host newHost in ObjectChange.GetHosts(eventQueue))
{
if (newHost.RestrictConnection)
{
Restricted = true;
foreach (IXenConnection existingConnection in ConnectionsManager.XenConnections)
{
XenConnection connection = existingConnection as XenConnection;
Trace.Assert(connection != null);
if (connection.IsConnected && connection.IsRestricted)
throw new ExpressRestriction(newHost.Name, existingConnection.Hostname);
}
}
}
task.Connected = true;
FriendlyName =
@ -1497,7 +1459,7 @@ namespace XenAdmin.Network
{
EndConnect(true, task);
log.Info(error.Message);
OnConnectionResult(false, "", error);
OnConnectionResult(false, error.Message, error);
}
else if (task.Cancelled)
{
@ -2114,7 +2076,7 @@ namespace XenAdmin.Network
{
get
{
return Messages.MIAMI_NOT_SUPPORTED;
return Messages.SERVER_TOO_OLD;
}
}
}

View File

@ -92,9 +92,6 @@ namespace XenAdmin.Core
if (Connecting(slaveHost)) // also implies slaveHost != null
return Reason.Connecting;
if (LicenseRestriction(slaveHost))
return Reason.LicenseRestriction;
if (IsAPool(slaveConnection))
return Reason.IsAPool;
@ -247,11 +244,6 @@ namespace XenAdmin.Core
return Helpers.GetPool(connection) != null;
}
private static bool LicenseRestriction(Host host)
{
return host.RestrictPooling;
}
// If CompatibleCPUs(slave, master, false) is true, the CPUs can be pooled without masking first.
// If CompatibleCPUs(slave, master, true) is true but CompatibleCPUs(slave, master, false) is false,
// the CPUs can be pooled but only if they are masked first.

View File

@ -271,26 +271,6 @@ namespace XenAPI
return h._RestrictVSwitchController;
}
public bool RestrictPooling
{
get { return BoolKeyPreferTrue(license_params, "restrict_pooling"); }
}
public bool RestrictConnection
{
get { return BoolKeyPreferTrue(license_params, "restrict_connection"); }
}
public bool RestrictQoS
{
get { return BoolKeyPreferTrue(license_params, "restrict_qos"); }
}
public bool RestrictVLAN
{
get { return BoolKeyPreferTrue(license_params, "restrict_vlan"); }
}
public static bool RestrictVMProtection(Host h)
{
return h._RestrictVMProtection;
@ -331,11 +311,6 @@ namespace XenAPI
get { return BoolKeyPreferTrue(license_params, "restrict_storage_xen_motion"); }
}
public bool RestrictPoolAttachedStorage
{
get { return BoolKeyPreferTrue(license_params, "restrict_pool_attached_storage"); }
}
public virtual bool IsFreeLicense()
{
return edition == "free";

View File

@ -177,86 +177,6 @@ namespace XenAPI
return string.Format("XC_PLUGIN_SECRET_{0}_{1}_{2}", obj.Connection.Username, plugin_name, Helpers.GetUuid(obj));
}
public void ClearStorageLinkCredentials()
{
var otherConfig = new Dictionary<string, string>(other_config);
otherConfig.Remove("storagelink_host");
otherConfig.Remove("storagelink_user");
otherConfig.Remove("storagelink_password_secret");
Pool.set_other_config(Connection.Session, opaque_ref, otherConfig);
}
public void SetStorageLinkCredentials(string host, string username, string password)
{
var otherConfig = new Dictionary<string, string>(other_config);
if (host == null)
{
otherConfig.Remove("storagelink_host");
}
else
{
otherConfig["storagelink_host"] = host;
}
if (username == null)
{
otherConfig.Remove("storagelink_user");
}
else
{
otherConfig["storagelink_user"] = username;
}
if (password == null)
{
otherConfig.Remove("storagelink_password_secret");
}
else if (otherConfig.ContainsKey("storagelink_password_secret"))
{
try
{
string secretRef = Secret.get_by_uuid(Connection.Session, otherConfig["storagelink_password_secret"]);
Secret.set_value(Connection.Session, secretRef, password);
}
catch (Failure)
{
otherConfig["storagelink_password_secret"] = Secret.CreateSecret(Connection.Session, password);
}
catch (WebException)
{
otherConfig["storagelink_password_secret"] = Secret.CreateSecret(Connection.Session, password);
}
}
else
{
otherConfig["storagelink_password_secret"] = Secret.CreateSecret(Connection.Session, password);
}
Pool.set_other_config(Connection.Session, opaque_ref, otherConfig);
}
public string StorageLinkHost
{
get
{
string host;
other_config.TryGetValue("storagelink_host", out host);
return host;
}
}
public string StorageLinkUsername
{
get
{
string user;
other_config.TryGetValue("storagelink_user", out user);
return user;
}
}
// Whether the vSwitch Controller appears to be configured.
// (Note that we can't tell whether it's actually working properly through the API).
public bool vSwitchController