You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucenenet.apache.org by ni...@apache.org on 2016/12/06 15:11:56 UTC
[21/58] lucenenet git commit: QueryParser.Flexible: Fixed support for
localized messages to make all TestNLS tests pass
QueryParser.Flexible: Fixed support for localized messages to make all TestNLS tests pass
Project: http://git-wip-us.apache.org/repos/asf/lucenenet/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucenenet/commit/c6ee3d5f
Tree: http://git-wip-us.apache.org/repos/asf/lucenenet/tree/c6ee3d5f
Diff: http://git-wip-us.apache.org/repos/asf/lucenenet/diff/c6ee3d5f
Branch: refs/heads/master
Commit: c6ee3d5f4acb779bcd094b2438cb920f573eaea7
Parents: 6e7a733
Author: Shad Storhaug <sh...@shadstorhaug.com>
Authored: Sun Dec 4 17:13:01 2016 +0700
Committer: Shad Storhaug <sh...@shadstorhaug.com>
Committed: Sun Dec 4 17:13:01 2016 +0700
----------------------------------------------------------------------
.../QueryParserMessagesBundle.Designer.cs | 225 +++++++++++++++++++
.../Messages/QueryParserMessagesBundle.resx | 177 +++++++++++++++
.../Flexible/Core/Nodes/QueryNodeImpl.cs | 5 +-
.../Flexible/Messages/MessageImpl.cs | 2 +-
.../Flexible/Messages/NLS.cs | 30 ++-
.../Lucene.Net.QueryParser.csproj | 14 +-
.../Properties/Resources.Designer.cs | 225 -------------------
.../Properties/Resources.resx | 177 ---------------
.../Messages/MessagesTestBundle.Designer.cs | 63 ------
.../Flexible/Messages/MessagesTestBundle.cs | 26 ++-
.../Messages/MessagesTestBundle.ja-JP.resx | 126 -----------
.../Flexible/Messages/MessagesTestBundle.resx | 126 -----------
.../MessagesTestBundleBundle.Designer.cs | 81 +++++++
.../Messages/MessagesTestBundleBundle.ja.resx | 126 +++++++++++
.../Messages/MessagesTestBundleBundle.resx | 126 +++++++++++
.../Flexible/Messages/TestNLS.cs | 178 +++++++--------
.../Lucene.Net.Tests.QueryParser.csproj | 13 +-
17 files changed, 886 insertions(+), 834 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucenenet/blob/c6ee3d5f/src/Lucene.Net.QueryParser/Flexible/Core/Messages/QueryParserMessagesBundle.Designer.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.QueryParser/Flexible/Core/Messages/QueryParserMessagesBundle.Designer.cs b/src/Lucene.Net.QueryParser/Flexible/Core/Messages/QueryParserMessagesBundle.Designer.cs
new file mode 100644
index 0000000..2809585
--- /dev/null
+++ b/src/Lucene.Net.QueryParser/Flexible/Core/Messages/QueryParserMessagesBundle.Designer.cs
@@ -0,0 +1,225 @@
+\ufeff//------------------------------------------------------------------------------
+// <auto-generated>
+// This code was generated by a tool.
+// Runtime Version:4.0.30319.42000
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+// </auto-generated>
+//------------------------------------------------------------------------------
+
+namespace Lucene.Net.QueryParsers.Flexible.Core.Messages {
+ using System;
+
+
+ /// <summary>
+ /// A strongly-typed resource class, for looking up localized strings, etc.
+ /// </summary>
+ // This class was auto-generated by the StronglyTypedResourceBuilder
+ // class via a tool like ResGen or Visual Studio.
+ // To add or remove a member, edit your .ResX file then rerun ResGen
+ // with the /str option, or rebuild your VS project.
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+ internal class QueryParserMessagesBundle {
+
+ private static global::System.Resources.ResourceManager resourceMan;
+
+ private static global::System.Globalization.CultureInfo resourceCulture;
+
+ [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ internal QueryParserMessagesBundle() {
+ }
+
+ /// <summary>
+ /// Returns the cached ResourceManager instance used by this class.
+ /// </summary>
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Resources.ResourceManager ResourceManager {
+ get {
+ if (object.ReferenceEquals(resourceMan, null)) {
+ global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Lucene.Net.QueryParsers.Flexible.Core.Messages.QueryParserMessagesBundle", typeof(QueryParserMessagesBundle).Assembly);
+ resourceMan = temp;
+ }
+ return resourceMan;
+ }
+ }
+
+ /// <summary>
+ /// Overrides the current thread's CurrentUICulture property for all
+ /// resource lookups using this strongly typed resource class.
+ /// </summary>
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Globalization.CultureInfo Culture {
+ get {
+ return resourceCulture;
+ }
+ set {
+ resourceCulture = value;
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Could not parse text "{0}" using {1}.
+ /// </summary>
+ internal static string COULD_NOT_PARSE_NUMBER {
+ get {
+ return ResourceManager.GetString("COULD_NOT_PARSE_NUMBER", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to .
+ /// </summary>
+ internal static string EMPTY_MESSAGE {
+ get {
+ return ResourceManager.GetString("EMPTY_MESSAGE", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Syntax Error: {0}.
+ /// </summary>
+ internal static string INVALID_SYNTAX {
+ get {
+ return ResourceManager.GetString("INVALID_SYNTAX", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Syntax Error, cannot parse {0}: {1}.
+ /// </summary>
+ internal static string INVALID_SYNTAX_CANNOT_PARSE {
+ get {
+ return ResourceManager.GetString("INVALID_SYNTAX_CANNOT_PARSE", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Term can not end with escape character..
+ /// </summary>
+ internal static string INVALID_SYNTAX_ESCAPE_CHARACTER {
+ get {
+ return ResourceManager.GetString("INVALID_SYNTAX_ESCAPE_CHARACTER", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Non-hex character in Unicode escape sequence: {0}.
+ /// </summary>
+ internal static string INVALID_SYNTAX_ESCAPE_NONE_HEX_UNICODE {
+ get {
+ return ResourceManager.GetString("INVALID_SYNTAX_ESCAPE_NONE_HEX_UNICODE", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Truncated unicode escape sequence..
+ /// </summary>
+ internal static string INVALID_SYNTAX_ESCAPE_UNICODE_TRUNCATION {
+ get {
+ return ResourceManager.GetString("INVALID_SYNTAX_ESCAPE_UNICODE_TRUNCATION", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Fractional edit distances are not allowed..
+ /// </summary>
+ internal static string INVALID_SYNTAX_FUZZY_EDITS {
+ get {
+ return ResourceManager.GetString("INVALID_SYNTAX_FUZZY_EDITS", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to The similarity value for a fuzzy search must be between 0.0 and 1.0..
+ /// </summary>
+ internal static string INVALID_SYNTAX_FUZZY_LIMITS {
+ get {
+ return ResourceManager.GetString("INVALID_SYNTAX_FUZZY_LIMITS", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Leading wildcard is not allowed: {0}.
+ /// </summary>
+ internal static string LEADING_WILDCARD_NOT_ALLOWED {
+ get {
+ return ResourceManager.GetString("LEADING_WILDCARD_NOT_ALLOWED", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Cannot convert query to lucene syntax: {0} error: {1}.
+ /// </summary>
+ internal static string LUCENE_QUERY_CONVERSION_ERROR {
+ get {
+ return ResourceManager.GetString("LUCENE_QUERY_CONVERSION_ERROR", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to This node does not support this action..
+ /// </summary>
+ internal static string NODE_ACTION_NOT_SUPPORTED {
+ get {
+ return ResourceManager.GetString("NODE_ACTION_NOT_SUPPORTED", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Number class not supported by NumericRangeQueryNode: {0}.
+ /// </summary>
+ internal static string NUMBER_CLASS_NOT_SUPPORTED_BY_NUMERIC_RANGE_QUERY {
+ get {
+ return ResourceManager.GetString("NUMBER_CLASS_NOT_SUPPORTED_BY_NUMERIC_RANGE_QUERY", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Field "{0}" is numeric and cannot have an empty value..
+ /// </summary>
+ internal static string NUMERIC_CANNOT_BE_EMPTY {
+ get {
+ return ResourceManager.GetString("NUMERIC_CANNOT_BE_EMPTY", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Parameter {1} with value {0} not supported..
+ /// </summary>
+ internal static string PARAMETER_VALUE_NOT_SUPPORTED {
+ get {
+ return ResourceManager.GetString("PARAMETER_VALUE_NOT_SUPPORTED", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Too many boolean clauses, the maximum supported is {0}: {1}.
+ /// </summary>
+ internal static string TOO_MANY_BOOLEAN_CLAUSES {
+ get {
+ return ResourceManager.GetString("TOO_MANY_BOOLEAN_CLAUSES", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Unsupported NumericField.DataType: {0}.
+ /// </summary>
+ internal static string UNSUPPORTED_NUMERIC_DATA_TYPE {
+ get {
+ return ResourceManager.GetString("UNSUPPORTED_NUMERIC_DATA_TYPE", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Wildcard is not supported for query: {0}.
+ /// </summary>
+ internal static string WILDCARD_NOT_SUPPORTED {
+ get {
+ return ResourceManager.GetString("WILDCARD_NOT_SUPPORTED", resourceCulture);
+ }
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/lucenenet/blob/c6ee3d5f/src/Lucene.Net.QueryParser/Flexible/Core/Messages/QueryParserMessagesBundle.resx
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.QueryParser/Flexible/Core/Messages/QueryParserMessagesBundle.resx b/src/Lucene.Net.QueryParser/Flexible/Core/Messages/QueryParserMessagesBundle.resx
new file mode 100644
index 0000000..c6680ce
--- /dev/null
+++ b/src/Lucene.Net.QueryParser/Flexible/Core/Messages/QueryParserMessagesBundle.resx
@@ -0,0 +1,177 @@
+\ufeff<?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=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <resheader name="writer">
+ <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <data name="COULD_NOT_PARSE_NUMBER" xml:space="preserve">
+ <value>Could not parse text "{0}" using {1}</value>
+ </data>
+ <data name="EMPTY_MESSAGE" xml:space="preserve">
+ <value />
+ </data>
+ <data name="INVALID_SYNTAX" xml:space="preserve">
+ <value>Syntax Error: {0}</value>
+ <comment><REPLACEMENT arg="{0}" value="detailed_message"/></comment>
+ </data>
+ <data name="INVALID_SYNTAX_CANNOT_PARSE" xml:space="preserve">
+ <value>Syntax Error, cannot parse {0}: {1}</value>
+ <comment><REPLACEMENT arg="{0}" value="invalid_query"/><REPLACEMENT arg="{1}" value="detailed_message"/></comment>
+ </data>
+ <data name="INVALID_SYNTAX_ESCAPE_CHARACTER" xml:space="preserve">
+ <value>Term can not end with escape character.</value>
+ </data>
+ <data name="INVALID_SYNTAX_ESCAPE_NONE_HEX_UNICODE" xml:space="preserve">
+ <value>Non-hex character in Unicode escape sequence: {0}</value>
+ </data>
+ <data name="INVALID_SYNTAX_ESCAPE_UNICODE_TRUNCATION" xml:space="preserve">
+ <value>Truncated unicode escape sequence.</value>
+ </data>
+ <data name="INVALID_SYNTAX_FUZZY_EDITS" xml:space="preserve">
+ <value>Fractional edit distances are not allowed.</value>
+ </data>
+ <data name="INVALID_SYNTAX_FUZZY_LIMITS" xml:space="preserve">
+ <value>The similarity value for a fuzzy search must be between 0.0 and 1.0.</value>
+ </data>
+ <data name="LEADING_WILDCARD_NOT_ALLOWED" xml:space="preserve">
+ <value>Leading wildcard is not allowed: {0}</value>
+ </data>
+ <data name="LUCENE_QUERY_CONVERSION_ERROR" xml:space="preserve">
+ <value>Cannot convert query to lucene syntax: {0} error: {1}</value>
+ <comment><REPLACEMENT arg="{0}" value="query"/><REPLACEMENT arg="{1}" value="error/class"/></comment>
+ </data>
+ <data name="NODE_ACTION_NOT_SUPPORTED" xml:space="preserve">
+ <value>This node does not support this action.</value>
+ </data>
+ <data name="NUMBER_CLASS_NOT_SUPPORTED_BY_NUMERIC_RANGE_QUERY" xml:space="preserve">
+ <value>Number class not supported by NumericRangeQueryNode: {0}</value>
+ </data>
+ <data name="NUMERIC_CANNOT_BE_EMPTY" xml:space="preserve">
+ <value>Field "{0}" is numeric and cannot have an empty value.</value>
+ </data>
+ <data name="PARAMETER_VALUE_NOT_SUPPORTED" xml:space="preserve">
+ <value>Parameter {1} with value {0} not supported.</value>
+ </data>
+ <data name="TOO_MANY_BOOLEAN_CLAUSES" xml:space="preserve">
+ <value>Too many boolean clauses, the maximum supported is {0}: {1}</value>
+ </data>
+ <data name="UNSUPPORTED_NUMERIC_DATA_TYPE" xml:space="preserve">
+ <value>Unsupported NumericField.DataType: {0}</value>
+ </data>
+ <data name="WILDCARD_NOT_SUPPORTED" xml:space="preserve">
+ <value>Wildcard is not supported for query: {0}</value>
+ </data>
+</root>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/lucenenet/blob/c6ee3d5f/src/Lucene.Net.QueryParser/Flexible/Core/Nodes/QueryNodeImpl.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.QueryParser/Flexible/Core/Nodes/QueryNodeImpl.cs b/src/Lucene.Net.QueryParser/Flexible/Core/Nodes/QueryNodeImpl.cs
index b7d7c39..9d48fcb 100644
--- a/src/Lucene.Net.QueryParser/Flexible/Core/Nodes/QueryNodeImpl.cs
+++ b/src/Lucene.Net.QueryParser/Flexible/Core/Nodes/QueryNodeImpl.cs
@@ -6,6 +6,7 @@ using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
+using System.Resources;
using System.Text;
using System.Threading.Tasks;
@@ -89,7 +90,9 @@ namespace Lucene.Net.QueryParsers.Flexible.Core.Nodes
// .getBundle("org.apache.lucene.queryParser.messages.QueryParserMessages");
//String message = bundle.getObject("Q0008E.NODE_ACTION_NOT_SUPPORTED")
// .toString();
- string message = Lucene.Net.QueryParsers.Properties.Resources.NODE_ACTION_NOT_SUPPORTED;
+ //ResourceManager bundle = QueryParserMessages.NODE_ACTION_NOT_SUPPORTED;
+ ResourceManager bundle = new ResourceManager(typeof(QueryParserMessagesBundle));
+ string message = bundle.GetString(QueryParserMessages.NODE_ACTION_NOT_SUPPORTED);
throw new ArgumentException(message);
http://git-wip-us.apache.org/repos/asf/lucenenet/blob/c6ee3d5f/src/Lucene.Net.QueryParser/Flexible/Messages/MessageImpl.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.QueryParser/Flexible/Messages/MessageImpl.cs b/src/Lucene.Net.QueryParser/Flexible/Messages/MessageImpl.cs
index a26d024..a854af6 100644
--- a/src/Lucene.Net.QueryParser/Flexible/Messages/MessageImpl.cs
+++ b/src/Lucene.Net.QueryParser/Flexible/Messages/MessageImpl.cs
@@ -44,7 +44,7 @@ namespace Lucene.Net.QueryParsers.Flexible.Messages
public virtual string GetLocalizedMessage()
{
- return GetLocalizedMessage(CultureInfo.InvariantCulture);
+ return GetLocalizedMessage(CultureInfo.CurrentUICulture);
}
http://git-wip-us.apache.org/repos/asf/lucenenet/blob/c6ee3d5f/src/Lucene.Net.QueryParser/Flexible/Messages/NLS.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.QueryParser/Flexible/Messages/NLS.cs b/src/Lucene.Net.QueryParser/Flexible/Messages/NLS.cs
index 30f31d8..e1053c1 100644
--- a/src/Lucene.Net.QueryParser/Flexible/Messages/NLS.cs
+++ b/src/Lucene.Net.QueryParser/Flexible/Messages/NLS.cs
@@ -54,18 +54,18 @@ namespace Lucene.Net.QueryParsers.Flexible.Messages
{
string str = GetLocalizedMessage(key, locale);
- // LUCENENET TODO: Figure out what the equivalent of this is
- //if (args.Length > 0)
- //{
- // str = MessageFormat.Format(str, args);
- //}
+ if (args.Length > 0)
+ {
+ //str = MessageFormat.Format(str, args);
+ str = string.Format(locale, str, args);
+ }
return str;
}
public static string GetLocalizedMessage(string key, params object[] args)
{
- return GetLocalizedMessage(key, CultureInfo.InvariantCulture, args);
+ return GetLocalizedMessage(key, CultureInfo.CurrentUICulture, args);
}
/**
@@ -103,7 +103,7 @@ namespace Lucene.Net.QueryParsers.Flexible.Messages
for (IEnumerator<string> it = bundles.Keys.GetEnumerator(); it.MoveNext();)
{
Type clazz = bundles[it.Current];
- ResourceManager resourceBundle = new ResourceManager(clazz);
+ ResourceManager resourceBundle = new ResourceManager(GetResourceType(clazz));
if (resourceBundle != null)
{
try
@@ -220,7 +220,7 @@ namespace Lucene.Net.QueryParsers.Flexible.Messages
// Test if the message is present in the resource bundle
try
{
- ResourceManager resourceBundle = new ResourceManager(clazz);
+ ResourceManager resourceBundle = new ResourceManager(GetResourceType(clazz));
if (resourceBundle != null)
{
object obj = resourceBundle.GetObject(key);
@@ -267,6 +267,20 @@ namespace Lucene.Net.QueryParsers.Flexible.Messages
//}
}
+ /// <summary>
+ /// LUCENENET specific method for converting the NLS type to the .NET resource type.
+ /// In Java, these were one and the same, but in .NET it is not possible to create resources
+ /// in Visual Studio with the same class name as a resource class because the resource generation process already
+ /// creates a backing class with the same name as the resource. So, by convention the resources must be
+ /// named <messages class name>Bundle in order to be found by NLS.
+ /// </summary>
+ /// <param name="clazz">The type of the NLS class where the field strings are located that identify resources.</param>
+ /// <returns>The type of resources (the class name + "Resources" suffix), as a .NET <see cref="Type"/> instance.</returns>
+ private static Type GetResourceType(Type clazz)
+ {
+ return Type.GetType(clazz.Namespace + "." + clazz.Name + "Bundle, " + clazz.Assembly.FullName);
+ }
+
// /*
// * Make a class field accessible
// */
http://git-wip-us.apache.org/repos/asf/lucenenet/blob/c6ee3d5f/src/Lucene.Net.QueryParser/Lucene.Net.QueryParser.csproj
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.QueryParser/Lucene.Net.QueryParser.csproj b/src/Lucene.Net.QueryParser/Lucene.Net.QueryParser.csproj
index db43c85..a264871 100644
--- a/src/Lucene.Net.QueryParser/Lucene.Net.QueryParser.csproj
+++ b/src/Lucene.Net.QueryParser/Lucene.Net.QueryParser.csproj
@@ -63,6 +63,11 @@
<Compile Include="Flexible\Core\Config\FieldConfigListener.cs" />
<Compile Include="Flexible\Core\Config\QueryConfigHandler.cs" />
<Compile Include="Flexible\Core\Messages\QueryParserMessages.cs" />
+ <Compile Include="Flexible\Core\Messages\QueryParserMessagesBundle.Designer.cs">
+ <AutoGen>True</AutoGen>
+ <DesignTime>True</DesignTime>
+ <DependentUpon>QueryParserMessagesBundle.resx</DependentUpon>
+ </Compile>
<Compile Include="Flexible\Core\Nodes\NoTokenFoundQueryNode.cs" />
<Compile Include="Flexible\Core\Nodes\AndQueryNode.cs" />
<Compile Include="Flexible\Core\Nodes\AnyQueryNode.cs" />
@@ -182,11 +187,6 @@
<Compile Include="Flexible\Standard\QueryParserUtil.cs" />
<Compile Include="Flexible\Standard\StandardQueryParser.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
- <Compile Include="Properties\Resources.Designer.cs">
- <AutoGen>True</AutoGen>
- <DesignTime>True</DesignTime>
- <DependentUpon>Resources.resx</DependentUpon>
- </Compile>
<Compile Include="Simple\SimpleQueryParser.cs" />
<Compile Include="Surround\Parser\CharStream.cs" />
<Compile Include="Surround\Parser\FastCharStream.cs" />
@@ -227,9 +227,9 @@
</ProjectReference>
</ItemGroup>
<ItemGroup>
- <EmbeddedResource Include="Properties\Resources.resx">
+ <EmbeddedResource Include="Flexible\Core\Messages\QueryParserMessagesBundle.resx">
<Generator>ResXFileCodeGenerator</Generator>
- <LastGenOutput>Resources.Designer.cs</LastGenOutput>
+ <LastGenOutput>QueryParserMessagesBundle.Designer.cs</LastGenOutput>
</EmbeddedResource>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
http://git-wip-us.apache.org/repos/asf/lucenenet/blob/c6ee3d5f/src/Lucene.Net.QueryParser/Properties/Resources.Designer.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.QueryParser/Properties/Resources.Designer.cs b/src/Lucene.Net.QueryParser/Properties/Resources.Designer.cs
deleted file mode 100644
index b3a8fe9..0000000
--- a/src/Lucene.Net.QueryParser/Properties/Resources.Designer.cs
+++ /dev/null
@@ -1,225 +0,0 @@
-\ufeff//------------------------------------------------------------------------------
-// <auto-generated>
-// This code was generated by a tool.
-// Runtime Version:4.0.30319.42000
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-// </auto-generated>
-//------------------------------------------------------------------------------
-
-namespace Lucene.Net.QueryParsers.Properties {
- using System;
-
-
- /// <summary>
- /// A strongly-typed resource class, for looking up localized strings, etc.
- /// </summary>
- // This class was auto-generated by the StronglyTypedResourceBuilder
- // class via a tool like ResGen or Visual Studio.
- // To add or remove a member, edit your .ResX file then rerun ResGen
- // with the /str option, or rebuild your VS project.
- [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
- [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
- [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
- internal class Resources {
-
- private static global::System.Resources.ResourceManager resourceMan;
-
- private static global::System.Globalization.CultureInfo resourceCulture;
-
- [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
- internal Resources() {
- }
-
- /// <summary>
- /// Returns the cached ResourceManager instance used by this class.
- /// </summary>
- [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
- internal static global::System.Resources.ResourceManager ResourceManager {
- get {
- if (object.ReferenceEquals(resourceMan, null)) {
- global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Lucene.Net.QueryParsers.Properties.Resources", typeof(Resources).Assembly);
- resourceMan = temp;
- }
- return resourceMan;
- }
- }
-
- /// <summary>
- /// Overrides the current thread's CurrentUICulture property for all
- /// resource lookups using this strongly typed resource class.
- /// </summary>
- [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
- internal static global::System.Globalization.CultureInfo Culture {
- get {
- return resourceCulture;
- }
- set {
- resourceCulture = value;
- }
- }
-
- /// <summary>
- /// Looks up a localized string similar to Could not parse text "{0}" using {1}.
- /// </summary>
- internal static string COULD_NOT_PARSE_NUMBER {
- get {
- return ResourceManager.GetString("COULD_NOT_PARSE_NUMBER", resourceCulture);
- }
- }
-
- /// <summary>
- /// Looks up a localized string similar to .
- /// </summary>
- internal static string EMPTY_MESSAGE {
- get {
- return ResourceManager.GetString("EMPTY_MESSAGE", resourceCulture);
- }
- }
-
- /// <summary>
- /// Looks up a localized string similar to Syntax Error: {0}.
- /// </summary>
- internal static string INVALID_SYNTAX {
- get {
- return ResourceManager.GetString("INVALID_SYNTAX", resourceCulture);
- }
- }
-
- /// <summary>
- /// Looks up a localized string similar to Syntax Error, cannot parse {0}: {1}.
- /// </summary>
- internal static string INVALID_SYNTAX_CANNOT_PARSE {
- get {
- return ResourceManager.GetString("INVALID_SYNTAX_CANNOT_PARSE", resourceCulture);
- }
- }
-
- /// <summary>
- /// Looks up a localized string similar to Term can not end with escape character..
- /// </summary>
- internal static string INVALID_SYNTAX_ESCAPE_CHARACTER {
- get {
- return ResourceManager.GetString("INVALID_SYNTAX_ESCAPE_CHARACTER", resourceCulture);
- }
- }
-
- /// <summary>
- /// Looks up a localized string similar to Non-hex character in Unicode escape sequence: {0}.
- /// </summary>
- internal static string INVALID_SYNTAX_ESCAPE_NONE_HEX_UNICODE {
- get {
- return ResourceManager.GetString("INVALID_SYNTAX_ESCAPE_NONE_HEX_UNICODE", resourceCulture);
- }
- }
-
- /// <summary>
- /// Looks up a localized string similar to Truncated unicode escape sequence..
- /// </summary>
- internal static string INVALID_SYNTAX_ESCAPE_UNICODE_TRUNCATION {
- get {
- return ResourceManager.GetString("INVALID_SYNTAX_ESCAPE_UNICODE_TRUNCATION", resourceCulture);
- }
- }
-
- /// <summary>
- /// Looks up a localized string similar to Fractional edit distances are not allowed..
- /// </summary>
- internal static string INVALID_SYNTAX_FUZZY_EDITS {
- get {
- return ResourceManager.GetString("INVALID_SYNTAX_FUZZY_EDITS", resourceCulture);
- }
- }
-
- /// <summary>
- /// Looks up a localized string similar to The similarity value for a fuzzy search must be between 0.0 and 1.0..
- /// </summary>
- internal static string INVALID_SYNTAX_FUZZY_LIMITS {
- get {
- return ResourceManager.GetString("INVALID_SYNTAX_FUZZY_LIMITS", resourceCulture);
- }
- }
-
- /// <summary>
- /// Looks up a localized string similar to Leading wildcard is not allowed: {0}.
- /// </summary>
- internal static string LEADING_WILDCARD_NOT_ALLOWED {
- get {
- return ResourceManager.GetString("LEADING_WILDCARD_NOT_ALLOWED", resourceCulture);
- }
- }
-
- /// <summary>
- /// Looks up a localized string similar to Cannot convert query to lucene syntax: {0} error: {1}.
- /// </summary>
- internal static string LUCENE_QUERY_CONVERSION_ERROR {
- get {
- return ResourceManager.GetString("LUCENE_QUERY_CONVERSION_ERROR", resourceCulture);
- }
- }
-
- /// <summary>
- /// Looks up a localized string similar to This node does not support this action..
- /// </summary>
- internal static string NODE_ACTION_NOT_SUPPORTED {
- get {
- return ResourceManager.GetString("NODE_ACTION_NOT_SUPPORTED", resourceCulture);
- }
- }
-
- /// <summary>
- /// Looks up a localized string similar to Number class not supported by NumericRangeQueryNode: {0}.
- /// </summary>
- internal static string NUMBER_CLASS_NOT_SUPPORTED_BY_NUMERIC_RANGE_QUERY {
- get {
- return ResourceManager.GetString("NUMBER_CLASS_NOT_SUPPORTED_BY_NUMERIC_RANGE_QUERY", resourceCulture);
- }
- }
-
- /// <summary>
- /// Looks up a localized string similar to Field "{0}" is numeric and cannot have an empty value..
- /// </summary>
- internal static string NUMERIC_CANNOT_BE_EMPTY {
- get {
- return ResourceManager.GetString("NUMERIC_CANNOT_BE_EMPTY", resourceCulture);
- }
- }
-
- /// <summary>
- /// Looks up a localized string similar to Parameter {1} with value {0} not supported..
- /// </summary>
- internal static string PARAMETER_VALUE_NOT_SUPPORTED {
- get {
- return ResourceManager.GetString("PARAMETER_VALUE_NOT_SUPPORTED", resourceCulture);
- }
- }
-
- /// <summary>
- /// Looks up a localized string similar to Too many boolean clauses, the maximum supported is {0}: {1}.
- /// </summary>
- internal static string TOO_MANY_BOOLEAN_CLAUSES {
- get {
- return ResourceManager.GetString("TOO_MANY_BOOLEAN_CLAUSES", resourceCulture);
- }
- }
-
- /// <summary>
- /// Looks up a localized string similar to Unsupported NumericField.DataType: {0}.
- /// </summary>
- internal static string UNSUPPORTED_NUMERIC_DATA_TYPE {
- get {
- return ResourceManager.GetString("UNSUPPORTED_NUMERIC_DATA_TYPE", resourceCulture);
- }
- }
-
- /// <summary>
- /// Looks up a localized string similar to Wildcard is not supported for query: {0}.
- /// </summary>
- internal static string WILDCARD_NOT_SUPPORTED {
- get {
- return ResourceManager.GetString("WILDCARD_NOT_SUPPORTED", resourceCulture);
- }
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/lucenenet/blob/c6ee3d5f/src/Lucene.Net.QueryParser/Properties/Resources.resx
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.QueryParser/Properties/Resources.resx b/src/Lucene.Net.QueryParser/Properties/Resources.resx
deleted file mode 100644
index c6680ce..0000000
--- a/src/Lucene.Net.QueryParser/Properties/Resources.resx
+++ /dev/null
@@ -1,177 +0,0 @@
-\ufeff<?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=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <data name="COULD_NOT_PARSE_NUMBER" xml:space="preserve">
- <value>Could not parse text "{0}" using {1}</value>
- </data>
- <data name="EMPTY_MESSAGE" xml:space="preserve">
- <value />
- </data>
- <data name="INVALID_SYNTAX" xml:space="preserve">
- <value>Syntax Error: {0}</value>
- <comment><REPLACEMENT arg="{0}" value="detailed_message"/></comment>
- </data>
- <data name="INVALID_SYNTAX_CANNOT_PARSE" xml:space="preserve">
- <value>Syntax Error, cannot parse {0}: {1}</value>
- <comment><REPLACEMENT arg="{0}" value="invalid_query"/><REPLACEMENT arg="{1}" value="detailed_message"/></comment>
- </data>
- <data name="INVALID_SYNTAX_ESCAPE_CHARACTER" xml:space="preserve">
- <value>Term can not end with escape character.</value>
- </data>
- <data name="INVALID_SYNTAX_ESCAPE_NONE_HEX_UNICODE" xml:space="preserve">
- <value>Non-hex character in Unicode escape sequence: {0}</value>
- </data>
- <data name="INVALID_SYNTAX_ESCAPE_UNICODE_TRUNCATION" xml:space="preserve">
- <value>Truncated unicode escape sequence.</value>
- </data>
- <data name="INVALID_SYNTAX_FUZZY_EDITS" xml:space="preserve">
- <value>Fractional edit distances are not allowed.</value>
- </data>
- <data name="INVALID_SYNTAX_FUZZY_LIMITS" xml:space="preserve">
- <value>The similarity value for a fuzzy search must be between 0.0 and 1.0.</value>
- </data>
- <data name="LEADING_WILDCARD_NOT_ALLOWED" xml:space="preserve">
- <value>Leading wildcard is not allowed: {0}</value>
- </data>
- <data name="LUCENE_QUERY_CONVERSION_ERROR" xml:space="preserve">
- <value>Cannot convert query to lucene syntax: {0} error: {1}</value>
- <comment><REPLACEMENT arg="{0}" value="query"/><REPLACEMENT arg="{1}" value="error/class"/></comment>
- </data>
- <data name="NODE_ACTION_NOT_SUPPORTED" xml:space="preserve">
- <value>This node does not support this action.</value>
- </data>
- <data name="NUMBER_CLASS_NOT_SUPPORTED_BY_NUMERIC_RANGE_QUERY" xml:space="preserve">
- <value>Number class not supported by NumericRangeQueryNode: {0}</value>
- </data>
- <data name="NUMERIC_CANNOT_BE_EMPTY" xml:space="preserve">
- <value>Field "{0}" is numeric and cannot have an empty value.</value>
- </data>
- <data name="PARAMETER_VALUE_NOT_SUPPORTED" xml:space="preserve">
- <value>Parameter {1} with value {0} not supported.</value>
- </data>
- <data name="TOO_MANY_BOOLEAN_CLAUSES" xml:space="preserve">
- <value>Too many boolean clauses, the maximum supported is {0}: {1}</value>
- </data>
- <data name="UNSUPPORTED_NUMERIC_DATA_TYPE" xml:space="preserve">
- <value>Unsupported NumericField.DataType: {0}</value>
- </data>
- <data name="WILDCARD_NOT_SUPPORTED" xml:space="preserve">
- <value>Wildcard is not supported for query: {0}</value>
- </data>
-</root>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/lucenenet/blob/c6ee3d5f/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundle.Designer.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundle.Designer.cs b/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundle.Designer.cs
deleted file mode 100644
index 0ce0aa7..0000000
--- a/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundle.Designer.cs
+++ /dev/null
@@ -1,63 +0,0 @@
-\ufeff//------------------------------------------------------------------------------
-// <auto-generated>
-// This code was generated by a tool.
-// Runtime Version:4.0.30319.42000
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-// </auto-generated>
-//------------------------------------------------------------------------------
-
-namespace Lucene.Net.QueryParsers.Flexible.Messages {
- using System;
-
-
- /// <summary>
- /// A strongly-typed resource class, for looking up localized strings, etc.
- /// </summary>
- // This class was auto-generated by the StronglyTypedResourceBuilder
- // class via a tool like ResGen or Visual Studio.
- // To add or remove a member, edit your .ResX file then rerun ResGen
- // with the /str option, or rebuild your VS project.
- [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
- [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
- [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
- internal class MessagesTestBundle {
-
- private static global::System.Resources.ResourceManager resourceMan;
-
- private static global::System.Globalization.CultureInfo resourceCulture;
-
- [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
- internal MessagesTestBundle() {
- }
-
- /// <summary>
- /// Returns the cached ResourceManager instance used by this class.
- /// </summary>
- [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
- internal static global::System.Resources.ResourceManager ResourceManager {
- get {
- if (object.ReferenceEquals(resourceMan, null)) {
- global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Lucene.Net.QueryParsers.Flexible.Messages.MessagesTestBundle", typeof(MessagesTestBundle).Assembly);
- resourceMan = temp;
- }
- return resourceMan;
- }
- }
-
- /// <summary>
- /// Overrides the current thread's CurrentUICulture property for all
- /// resource lookups using this strongly typed resource class.
- /// </summary>
- [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
- internal static global::System.Globalization.CultureInfo Culture {
- get {
- return resourceCulture;
- }
- set {
- resourceCulture = value;
- }
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/lucenenet/blob/c6ee3d5f/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundle.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundle.cs b/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundle.cs
index a495f3d..c1344e3 100644
--- a/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundle.cs
+++ b/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundle.cs
@@ -6,7 +6,27 @@ using System.Threading.Tasks;
namespace Lucene.Net.QueryParsers.Flexible.Messages
{
- //public class MessagesTestBundle
- //{
- //}
+ public class MessagesTestBundle : NLS
+ {
+ private static readonly string BUNDLE_NAME = typeof(MessagesTestBundle).Name;
+
+ private MessagesTestBundle()
+ {
+ // should never be instantiated
+ }
+
+ static MessagesTestBundle()
+ {
+ // register all string ids with NLS class and initialize static string
+ // values
+ NLS.InitializeMessages(BUNDLE_NAME, typeof(MessagesTestBundle));
+ }
+
+ // static string must match the strings in the property files.
+ public static String Q0001E_INVALID_SYNTAX;
+ public static String Q0004E_INVALID_SYNTAX_ESCAPE_UNICODE_TRUNCATION;
+
+ // this message is missing from the properties file
+ public static String Q0005E_MESSAGE_NOT_IN_BUNDLE;
+ }
}
http://git-wip-us.apache.org/repos/asf/lucenenet/blob/c6ee3d5f/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundle.ja-JP.resx
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundle.ja-JP.resx b/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundle.ja-JP.resx
deleted file mode 100644
index 9378bcb..0000000
--- a/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundle.ja-JP.resx
+++ /dev/null
@@ -1,126 +0,0 @@
-\ufeff<?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=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <data name="Q0001E_INVALID_SYNTAX" xml:space="preserve">
- <value>\u69cb\u6587\u30a8\u30e9\u30fc: {0}</value>
- </data>
- <data name="Q0004E_INVALID_SYNTAX_ESCAPE_UNICODE_TRUNCATION" xml:space="preserve">
- <value>\u5207\u308a\u6368\u3066\u3089\u308c\u305f\u30e6\u30cb\u30b3\u30fc\u30c9\u30fb\u30a8\u30b9\u30b1\u30fc\u30d7\u30fb\u30b7\u30fc\u30b1\u30f3\u30b9\u3002</value>
- </data>
-</root>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/lucenenet/blob/c6ee3d5f/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundle.resx
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundle.resx b/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundle.resx
deleted file mode 100644
index 7d4fa31..0000000
--- a/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundle.resx
+++ /dev/null
@@ -1,126 +0,0 @@
-\ufeff<?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=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <data name="Q0001E_INVALID_SYNTAX" xml:space="preserve">
- <value>Syntax Error: {0}</value>
- </data>
- <data name="Q0004E_INVALID_SYNTAX_ESCAPE_UNICODE_TRUNCATION" xml:space="preserve">
- <value>Truncated unicode escape sequence.</value>
- </data>
-</root>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/lucenenet/blob/c6ee3d5f/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundleBundle.Designer.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundleBundle.Designer.cs b/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundleBundle.Designer.cs
new file mode 100644
index 0000000..ec703e9
--- /dev/null
+++ b/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundleBundle.Designer.cs
@@ -0,0 +1,81 @@
+\ufeff//------------------------------------------------------------------------------
+// <auto-generated>
+// This code was generated by a tool.
+// Runtime Version:4.0.30319.42000
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+// </auto-generated>
+//------------------------------------------------------------------------------
+
+namespace Lucene.Net.QueryParsers.Flexible.Messages {
+ using System;
+
+
+ /// <summary>
+ /// A strongly-typed resource class, for looking up localized strings, etc.
+ /// </summary>
+ // This class was auto-generated by the StronglyTypedResourceBuilder
+ // class via a tool like ResGen or Visual Studio.
+ // To add or remove a member, edit your .ResX file then rerun ResGen
+ // with the /str option, or rebuild your VS project.
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+ internal class MessagesTestBundleBundle {
+
+ private static global::System.Resources.ResourceManager resourceMan;
+
+ private static global::System.Globalization.CultureInfo resourceCulture;
+
+ [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ internal MessagesTestBundleBundle() {
+ }
+
+ /// <summary>
+ /// Returns the cached ResourceManager instance used by this class.
+ /// </summary>
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Resources.ResourceManager ResourceManager {
+ get {
+ if (object.ReferenceEquals(resourceMan, null)) {
+ global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Lucene.Net.QueryParsers.Flexible.Messages.MessagesTestBundleBundle", typeof(MessagesTestBundleBundle).Assembly);
+ resourceMan = temp;
+ }
+ return resourceMan;
+ }
+ }
+
+ /// <summary>
+ /// Overrides the current thread's CurrentUICulture property for all
+ /// resource lookups using this strongly typed resource class.
+ /// </summary>
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Globalization.CultureInfo Culture {
+ get {
+ return resourceCulture;
+ }
+ set {
+ resourceCulture = value;
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Syntax Error: {0}.
+ /// </summary>
+ internal static string Q0001E_INVALID_SYNTAX {
+ get {
+ return ResourceManager.GetString("Q0001E_INVALID_SYNTAX", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Truncated unicode escape sequence..
+ /// </summary>
+ internal static string Q0004E_INVALID_SYNTAX_ESCAPE_UNICODE_TRUNCATION {
+ get {
+ return ResourceManager.GetString("Q0004E_INVALID_SYNTAX_ESCAPE_UNICODE_TRUNCATION", resourceCulture);
+ }
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/lucenenet/blob/c6ee3d5f/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundleBundle.ja.resx
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundleBundle.ja.resx b/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundleBundle.ja.resx
new file mode 100644
index 0000000..0e2fc13
--- /dev/null
+++ b/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundleBundle.ja.resx
@@ -0,0 +1,126 @@
+\ufeff<?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=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <resheader name="writer">
+ <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <data name="Q0001E_INVALID_SYNTAX" xml:space="preserve">
+ <value>\u69cb\u6587\u30a8\u30e9\u30fc: {0}</value>
+ </data>
+ <data name="Q0004E_INVALID_SYNTAX_ESCAPE_UNICODE_TRUNCATION" xml:space="preserve">
+ <value>\u5207\u308a\u6368\u3066\u3089\u308c\u305f\u30e6\u30cb\u30b3\u30fc\u30c9\u30fb\u30a8\u30b9\u30b1\u30fc\u30d7\u30fb\u30b7\u30fc\u30b1\u30f3\u30b9\u3002</value>
+ </data>
+</root>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/lucenenet/blob/c6ee3d5f/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundleBundle.resx
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundleBundle.resx b/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundleBundle.resx
new file mode 100644
index 0000000..7d4fa31
--- /dev/null
+++ b/src/Lucene.Net.Tests.QueryParser/Flexible/Messages/MessagesTestBundleBundle.resx
@@ -0,0 +1,126 @@
+\ufeff<?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=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <resheader name="writer">
+ <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <data name="Q0001E_INVALID_SYNTAX" xml:space="preserve">
+ <value>Syntax Error: {0}</value>
+ </data>
+ <data name="Q0004E_INVALID_SYNTAX_ESCAPE_UNICODE_TRUNCATION" xml:space="preserve">
+ <value>Truncated unicode escape sequence.</value>
+ </data>
+</root>
\ No newline at end of file