lucenenet-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ccurr...@apache.org
Subject svn commit: r1362240 [5/7] - in /incubator/lucene.net/trunk: build/scripts/ build/scripts/All/ build/scripts/Analyzers/ build/scripts/Contrib-Core/ build/scripts/Contrib/ build/scripts/Core/ build/scripts/FastVectorHighlighter/ build/scripts/Highlighte...
Date Mon, 16 Jul 2012 20:36:33 GMT
Modified: incubator/lucene.net/trunk/src/contrib/Spatial/Contrib.Spatial.csproj
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/contrib/Spatial/Contrib.Spatial.csproj?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/contrib/Spatial/Contrib.Spatial.csproj (original)
+++ incubator/lucene.net/trunk/src/contrib/Spatial/Contrib.Spatial.csproj Mon Jul 16 20:36:26 2012
@@ -26,14 +26,11 @@
     <ProductVersion>9.0.21022</ProductVersion>
     <SchemaVersion>2.0</SchemaVersion>
     <ProjectGuid>{35C347F4-24B2-4BE5-8117-A0E3001551CE}</ProjectGuid>
-    <OutputType>Library</OutputType>
     <AppDesignerFolder>Properties</AppDesignerFolder>
     <RootNamespace>Lucene.Net.Spatial</RootNamespace>
     <AssemblyName>Lucene.Net.Contrib.Spatial</AssemblyName>
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
     <FileAlignment>512</FileAlignment>
-    <FileUpgradeFlags>
-    </FileUpgradeFlags>
+    <FileUpgradeFlags></FileUpgradeFlags>
     <OldToolsVersion>3.5</OldToolsVersion>
     <UpgradeBackupLocation />
     <PublishUrl>publish\</PublishUrl>
@@ -53,27 +50,60 @@
     <BootstrapperEnabled>true</BootstrapperEnabled>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
+    <Framework>$(TargetFrameworkVersion.Replace("v", "NET").Replace(".", ""))</Framework>
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>..\..\..\build\bin\contrib\Spatial\$(Configuration.Replace("35", ""))\$(Framework)\</OutputPath>
+    <DefineConstants>DEBUG;TRACE;$(Framework)</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <DocumentationFile></DocumentationFile>
+    <NoWarn>618</NoWarn>
+    <OutputType>Library</OutputType>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug35|AnyCPU' ">
+    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+    <Framework>$(TargetFrameworkVersion.Replace("v", "NET").Replace(".", ""))</Framework>
     <DebugSymbols>true</DebugSymbols>
     <DebugType>full</DebugType>
     <Optimize>false</Optimize>
-    <OutputPath>..\..\..\build\bin\contrib\Spatial\Debug\</OutputPath>
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <OutputPath>..\..\..\build\bin\contrib\Spatial\$(Configuration.Replace("35", ""))\$(Framework)\</OutputPath>
+    <DefineConstants>DEBUG;TRACE;$(Framework)</DefineConstants>
     <ErrorReport>prompt</ErrorReport>
     <WarningLevel>4</WarningLevel>
-    <DocumentationFile>
-    </DocumentationFile>
+    <DocumentationFile></DocumentationFile>
     <NoWarn>618</NoWarn>
+    <OutputType>Library</OutputType>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
+    <Framework>$(TargetFrameworkVersion.Replace("v", "NET").Replace(".", ""))</Framework>
     <DebugType>pdbonly</DebugType>
     <Optimize>true</Optimize>
-    <OutputPath>..\..\..\build\bin\contrib\Spatial\Release\</OutputPath>
-    <DefineConstants>TRACE</DefineConstants>
+    <OutputPath>..\..\..\build\bin\contrib\Spatial\$(Configuration.Replace("35", ""))\$(Framework)\</OutputPath>
+    <DefineConstants>TRACE;$(Framework)</DefineConstants>
     <ErrorReport>prompt</ErrorReport>
     <WarningLevel>4</WarningLevel>
-    <DocumentationFile>..\..\..\build\bin\contrib\Spatial\Release\Lucene.Net.Contrib.Spatial.XML</DocumentationFile>
+    <DocumentationFile>..\..\..\build\bin\contrib\Spatial\$(Configuration.Replace("35", ""))\$(Framework)\Lucene.Net.Contrib.Spatial.XML</DocumentationFile>
     <NoWarn>618</NoWarn>
     <DebugSymbols>true</DebugSymbols>
+    <OutputType>Library</OutputType>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release35|AnyCPU' ">
+    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+    <Framework>$(TargetFrameworkVersion.Replace("v", "NET").Replace(".", ""))</Framework>
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>..\..\..\build\bin\contrib\Spatial\$(Configuration.Replace("35", ""))\$(Framework)\</OutputPath>
+    <DefineConstants>TRACE;$(Framework)</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <DocumentationFile>..\..\..\build\bin\contrib\Spatial\$(Configuration.Replace("35", ""))\$(Framework)\Lucene.Net.Contrib.Spatial.XML</DocumentationFile>
+    <NoWarn>618</NoWarn>
+    <DebugSymbols>true</DebugSymbols>
+    <OutputType>Library</OutputType>
   </PropertyGroup>
   <PropertyGroup>
     <SignAssembly>true</SignAssembly>
@@ -84,9 +114,10 @@
   <ItemGroup>
     <Reference Include="Spatial4n.Core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=9f9456e1ca16d45e, processorArchitecture=MSIL">
       <SpecificVersion>False</SpecificVersion>
-      <HintPath>..\..\..\lib\Spatial4n\Spatial4n.Core.dll</HintPath>
+      <HintPath>..\..\..\lib\Spatial4n\$(Framework)\Spatial4n.Core.dll</HintPath>
     </Reference>
     <Reference Include="System" />
+    <Reference Condition="'$(Framework)' == 'NET35'" Include="System.Core" />
     <Reference Include="System.Data" />
   </ItemGroup>
   <ItemGroup>

Modified: incubator/lucene.net/trunk/src/contrib/Spatial/Prefix/PrefixTreeStrategy.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/contrib/Spatial/Prefix/PrefixTreeStrategy.cs?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/contrib/Spatial/Prefix/PrefixTreeStrategy.cs (original)
+++ incubator/lucene.net/trunk/src/contrib/Spatial/Prefix/PrefixTreeStrategy.cs Mon Jul 16 20:36:26 2012
@@ -16,7 +16,11 @@
  */
 
 using System;
+#if !NET35
 using System.Collections.Concurrent;
+#else
+using Lucene.Net.Support.Compatibility;
+#endif
 using System.Collections.Generic;
 using Lucene.Net.Analysis;
 using Lucene.Net.Analysis.Tokenattributes;

Modified: incubator/lucene.net/trunk/src/contrib/Spatial/Prefix/Tree/Node.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/contrib/Spatial/Prefix/Tree/Node.cs?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/contrib/Spatial/Prefix/Tree/Node.cs (original)
+++ incubator/lucene.net/trunk/src/contrib/Spatial/Prefix/Tree/Node.cs Mon Jul 16 20:36:26 2012
@@ -142,7 +142,12 @@ namespace Lucene.Net.Spatial.Prefix.Tree
 			var point = shapeFilter as Point;
 			if (point != null)
 			{
+#if !NET35
 				return new ReadOnlyCollectionBuilder<Node>(new[] {GetSubCell(point)}).ToReadOnlyCollection();
+#else
+                return new List<Node>(new[]{GetSubCell(point)}).AsReadOnly();
+#endif
+
 			}
 
 			var cells = GetSubCells();

Modified: incubator/lucene.net/trunk/src/contrib/Spatial/Prefix/Tree/SpatialPrefixTree.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/contrib/Spatial/Prefix/Tree/SpatialPrefixTree.cs?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/contrib/Spatial/Prefix/Tree/SpatialPrefixTree.cs (original)
+++ incubator/lucene.net/trunk/src/contrib/Spatial/Prefix/Tree/SpatialPrefixTree.cs Mon Jul 16 20:36:26 2012
@@ -258,7 +258,11 @@ namespace Lucene.Net.Spatial.Prefix.Tree
 			Node cell = GetNode(p, detailLevel);
 			if (!inclParents)
 			{
+#if !NET35
 				return new ReadOnlyCollectionBuilder<Node>(new[] { cell }).ToReadOnlyCollection();
+#else
+                return new List<Node>(new[] { cell }).AsReadOnly();
+#endif
 			}
 
 			String endToken = cell.GetTokenString();

Modified: incubator/lucene.net/trunk/src/contrib/Spatial/Util/CompatibilityExtensions.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/contrib/Spatial/Util/CompatibilityExtensions.cs?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/contrib/Spatial/Util/CompatibilityExtensions.cs (original)
+++ incubator/lucene.net/trunk/src/contrib/Spatial/Util/CompatibilityExtensions.cs Mon Jul 16 20:36:26 2012
@@ -16,8 +16,11 @@
  */
 
 using System;
+#if NET35
+using Lucene.Net.Support.Compatibility;
+#else
 using System.Collections.Concurrent;
-using System.Collections.Generic;
+#endif
 using System.Diagnostics;
 using Lucene.Net.Analysis.Tokenattributes;
 using Lucene.Net.Index;

Modified: incubator/lucene.net/trunk/src/contrib/Spatial/Util/ShapeFieldCacheProvider.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/contrib/Spatial/Util/ShapeFieldCacheProvider.cs?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/contrib/Spatial/Util/ShapeFieldCacheProvider.cs (original)
+++ incubator/lucene.net/trunk/src/contrib/Spatial/Util/ShapeFieldCacheProvider.cs Mon Jul 16 20:36:26 2012
@@ -18,6 +18,7 @@
 using System;
 using System.Runtime.CompilerServices;
 using Lucene.Net.Index;
+using Lucene.Net.Support;
 using Spatial4n.Core.Shapes;
 
 namespace Lucene.Net.Spatial.Util
@@ -27,8 +28,14 @@ namespace Lucene.Net.Spatial.Util
 		//private Logger log = Logger.getLogger(getClass().getName());
 
 		// it may be a List<T> or T
+#if !NET35
 		private readonly ConditionalWeakTable<IndexReader, ShapeFieldCache<T>> sidx =
 			new ConditionalWeakTable<IndexReader, ShapeFieldCache<T>>(); // WeakHashMap
+#else
+	    private readonly WeakDictionary<IndexReader, ShapeFieldCache<T>> sidx =
+	        new WeakDictionary<IndexReader, ShapeFieldCache<T>>();
+#endif
+
 
 		protected readonly int defaultSize;
 		protected readonly String shapeField;

Modified: incubator/lucene.net/trunk/src/contrib/SpellChecker/Contrib.SpellChecker.csproj
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/contrib/SpellChecker/Contrib.SpellChecker.csproj?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/contrib/SpellChecker/Contrib.SpellChecker.csproj (original)
+++ incubator/lucene.net/trunk/src/contrib/SpellChecker/Contrib.SpellChecker.csproj Mon Jul 16 20:36:26 2012
@@ -27,39 +27,56 @@
     <ProjectGuid>{FF45EE91-9CA3-443D-8231-75E9FA1AF40E}</ProjectGuid>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ApplicationIcon>
-    </ApplicationIcon>
-    <AssemblyKeyContainerName>
-    </AssemblyKeyContainerName>
+    <ApplicationIcon></ApplicationIcon>
+    <AssemblyKeyContainerName></AssemblyKeyContainerName>
     <AssemblyName>Lucene.Net.Contrib.SpellChecker</AssemblyName>
     <AssemblyOriginatorKeyFile>Lucene.Net.snk</AssemblyOriginatorKeyFile>
     <DefaultClientScript>JScript</DefaultClientScript>
     <DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
     <DefaultTargetSchema>IE50</DefaultTargetSchema>
     <DelaySign>false</DelaySign>
-    <OutputType>Library</OutputType>
     <RootNamespace>SpellChecker.Net</RootNamespace>
     <RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
-    <StartupObject>
-    </StartupObject>
-    <FileUpgradeFlags>
-    </FileUpgradeFlags>
-    <UpgradeBackupLocation>
-    </UpgradeBackupLocation>
+    <StartupObject></StartupObject>
+    <FileUpgradeFlags></FileUpgradeFlags>
+    <UpgradeBackupLocation></UpgradeBackupLocation>
     <OldToolsVersion>3.5</OldToolsVersion>
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
     <TargetFrameworkProfile />
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <OutputPath>..\..\..\build\bin\contrib\SpellChecker\Debug\</OutputPath>
+    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
+    <Framework>$(TargetFrameworkVersion.Replace("v", "NET").Replace(".", ""))</Framework>
+    <OutputPath>..\..\..\build\bin\contrib\SpellChecker\$(Configuration.Replace("35", ""))\$(Framework)\</OutputPath>
+    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
+    <BaseAddress>285212672</BaseAddress>
+    <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
+    <ConfigurationOverrideFile></ConfigurationOverrideFile>
+    <DefineConstants>DEBUG;TRACE;$(Framework)</DefineConstants>
+    <DocumentationFile></DocumentationFile>
+    <DebugSymbols>true</DebugSymbols>
+    <FileAlignment>4096</FileAlignment>
+    <NoStdLib>false</NoStdLib>
+    <NoWarn>618</NoWarn>
+    <Optimize>false</Optimize>
+    <RegisterForComInterop>false</RegisterForComInterop>
+    <RemoveIntegerChecks>false</RemoveIntegerChecks>
+    <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
+    <WarningLevel>4</WarningLevel>
+    <DebugType>full</DebugType>
+    <ErrorReport>prompt</ErrorReport>
+    <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+    <OutputType>Library</OutputType>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug35|AnyCPU' ">
+    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+    <Framework>$(TargetFrameworkVersion.Replace("v", "NET").Replace(".", ""))</Framework>
+    <OutputPath>..\..\..\build\bin\contrib\SpellChecker\$(Configuration.Replace("35", ""))\$(Framework)\</OutputPath>
     <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
     <BaseAddress>285212672</BaseAddress>
     <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
-    <ConfigurationOverrideFile>
-    </ConfigurationOverrideFile>
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
-    <DocumentationFile>
-    </DocumentationFile>
+    <ConfigurationOverrideFile></ConfigurationOverrideFile>
+    <DefineConstants>DEBUG;TRACE;$(Framework)</DefineConstants>
+    <DocumentationFile></DocumentationFile>
     <DebugSymbols>true</DebugSymbols>
     <FileAlignment>4096</FileAlignment>
     <NoStdLib>false</NoStdLib>
@@ -72,17 +89,43 @@
     <DebugType>full</DebugType>
     <ErrorReport>prompt</ErrorReport>
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+    <OutputType>Library</OutputType>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <OutputPath>..\..\..\build\bin\contrib\SpellChecker\Release\</OutputPath>
+    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
+    <Framework>$(TargetFrameworkVersion.Replace("v", "NET").Replace(".", ""))</Framework>
+    <OutputPath>..\..\..\build\bin\contrib\SpellChecker\$(Configuration.Replace("35", ""))\$(Framework)\</OutputPath>
+    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
+    <BaseAddress>285212672</BaseAddress>
+    <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
+    <ConfigurationOverrideFile></ConfigurationOverrideFile>
+    <DefineConstants>TRACE;$(Framework)</DefineConstants>
+    <DocumentationFile>..\..\..\build\bin\contrib\SpellChecker\$(Configuration.Replace("35", ""))\$(Framework)\Lucene.Net.Contrib.SpellChecker.XML</DocumentationFile>
+    <DebugSymbols>true</DebugSymbols>
+    <FileAlignment>4096</FileAlignment>
+    <NoStdLib>false</NoStdLib>
+    <NoWarn>618</NoWarn>
+    <Optimize>true</Optimize>
+    <RegisterForComInterop>false</RegisterForComInterop>
+    <RemoveIntegerChecks>false</RemoveIntegerChecks>
+    <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
+    <WarningLevel>4</WarningLevel>
+    <DebugType>pdbonly</DebugType>
+    <ErrorReport>prompt</ErrorReport>
+    <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+    <OutputType>Library</OutputType>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release35|AnyCPU' ">
+    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+    <Framework>$(TargetFrameworkVersion.Replace("v", "NET").Replace(".", ""))</Framework>
+    <OutputPath>..\..\..\build\bin\contrib\SpellChecker\$(Configuration.Replace("35", ""))\$(Framework)\</OutputPath>
     <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
     <BaseAddress>285212672</BaseAddress>
     <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
-    <ConfigurationOverrideFile>
-    </ConfigurationOverrideFile>
-    <DefineConstants>TRACE</DefineConstants>
-    <DocumentationFile>..\..\..\build\bin\contrib\SpellChecker\Release\Lucene.Net.Contrib.SpellChecker.XML</DocumentationFile>
-    <DebugSymbols>false</DebugSymbols>
+    <ConfigurationOverrideFile></ConfigurationOverrideFile>
+    <DefineConstants>TRACE;$(Framework)</DefineConstants>
+    <DocumentationFile>..\..\..\build\bin\contrib\SpellChecker\$(Configuration.Replace("35", ""))\$(Framework)\Lucene.Net.Contrib.SpellChecker.XML</DocumentationFile>
+    <DebugSymbols>true</DebugSymbols>
     <FileAlignment>4096</FileAlignment>
     <NoStdLib>false</NoStdLib>
     <NoWarn>618</NoWarn>
@@ -91,9 +134,10 @@
     <RemoveIntegerChecks>false</RemoveIntegerChecks>
     <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
     <WarningLevel>4</WarningLevel>
-    <DebugType>none</DebugType>
+    <DebugType>pdbonly</DebugType>
     <ErrorReport>prompt</ErrorReport>
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+    <OutputType>Library</OutputType>
   </PropertyGroup>
   <PropertyGroup>
     <SignAssembly>true</SignAssembly>
@@ -102,6 +146,7 @@
     <Reference Include="System">
       <Name>System</Name>
     </Reference>
+    <Reference Condition="'$(Framework)' == 'NET35'" Include="System.Core" />
   </ItemGroup>
   <ItemGroup>
     <Compile Include="AssemblyInfo.cs">
@@ -145,9 +190,7 @@
   </ItemGroup>
   <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
   <PropertyGroup>
-    <PreBuildEvent>
-    </PreBuildEvent>
-    <PostBuildEvent>
-    </PostBuildEvent>
+    <PreBuildEvent></PreBuildEvent>
+    <PostBuildEvent></PostBuildEvent>
   </PropertyGroup>
 </Project>
\ No newline at end of file

Modified: incubator/lucene.net/trunk/src/contrib/WordNet/SynExpand/Contrib.WordNet.SynExpand.csproj
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/contrib/WordNet/SynExpand/Contrib.WordNet.SynExpand.csproj?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/contrib/WordNet/SynExpand/Contrib.WordNet.SynExpand.csproj (original)
+++ incubator/lucene.net/trunk/src/contrib/WordNet/SynExpand/Contrib.WordNet.SynExpand.csproj Mon Jul 16 20:36:26 2012
@@ -35,13 +35,10 @@
     <DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
     <DefaultTargetSchema>IE50</DefaultTargetSchema>
     <DelaySign>false</DelaySign>
-    <OutputType>Exe</OutputType>
     <RootNamespace>SynExpand</RootNamespace>
     <RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
     <StartupObject />
-    <FileUpgradeFlags>
-    </FileUpgradeFlags>
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
+    <FileUpgradeFlags></FileUpgradeFlags>
     <OldToolsVersion>0.0</OldToolsVersion>
     <UpgradeBackupLocation />
     <PublishUrl>publish\</PublishUrl>
@@ -61,13 +58,38 @@
     <BootstrapperEnabled>true</BootstrapperEnabled>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <OutputPath>..\..\bin\contrib\WordNet\Debug\</OutputPath>
+    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
+    <Framework>$(TargetFrameworkVersion.Replace("v", "NET").Replace(".", ""))</Framework>
+    <OutputPath>..\..\bin\contrib\WordNet\$(Configuration.Replace("35", ""))\$(Framework)\</OutputPath>
+    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
+    <BaseAddress>285212672</BaseAddress>
+    <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
+    <ConfigurationOverrideFile />
+    <DefineConstants>DEBUG;TRACE;$(Framework)</DefineConstants>
+    <DocumentationFile></DocumentationFile>
+    <DebugSymbols>true</DebugSymbols>
+    <FileAlignment>4096</FileAlignment>
+    <NoStdLib>false</NoStdLib>
+    <NoWarn />
+    <Optimize>false</Optimize>
+    <RegisterForComInterop>false</RegisterForComInterop>
+    <RemoveIntegerChecks>false</RemoveIntegerChecks>
+    <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
+    <WarningLevel>4</WarningLevel>
+    <DebugType>full</DebugType>
+    <ErrorReport>prompt</ErrorReport>
+    <OutputType>Library</OutputType>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug35|AnyCPU' ">
+    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+    <Framework>$(TargetFrameworkVersion.Replace("v", "NET").Replace(".", ""))</Framework>
+    <OutputPath>..\..\bin\contrib\WordNet\$(Configuration.Replace("35", ""))\$(Framework)\</OutputPath>
     <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
     <BaseAddress>285212672</BaseAddress>
     <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
     <ConfigurationOverrideFile />
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
-    <DocumentationFile />
+    <DefineConstants>DEBUG;TRACE;$(Framework)</DefineConstants>
+    <DocumentationFile></DocumentationFile>
     <DebugSymbols>true</DebugSymbols>
     <FileAlignment>4096</FileAlignment>
     <NoStdLib>false</NoStdLib>
@@ -79,16 +101,42 @@
     <WarningLevel>4</WarningLevel>
     <DebugType>full</DebugType>
     <ErrorReport>prompt</ErrorReport>
+    <OutputType>Library</OutputType>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
+    <Framework>$(TargetFrameworkVersion.Replace("v", "NET").Replace(".", ""))</Framework>
+    <OutputPath>..\..\bin\contrib\WordNet\</OutputPath>
+    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
+    <BaseAddress>285212672</BaseAddress>
+    <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
+    <ConfigurationOverrideFile />
+    <DefineConstants>TRACE;$(Framework)</DefineConstants>
+    <DocumentationFile></DocumentationFile>
+    <DebugSymbols>true</DebugSymbols>
+    <FileAlignment>4096</FileAlignment>
+    <NoStdLib>false</NoStdLib>
+    <NoWarn />
+    <Optimize>true</Optimize>
+    <RegisterForComInterop>false</RegisterForComInterop>
+    <RemoveIntegerChecks>false</RemoveIntegerChecks>
+    <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
+    <WarningLevel>4</WarningLevel>
+    <DebugType>pdbonly</DebugType>
+    <ErrorReport>prompt</ErrorReport>
+    <OutputType>Library</OutputType>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release35|AnyCPU' ">
+    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+    <Framework>$(TargetFrameworkVersion.Replace("v", "NET").Replace(".", ""))</Framework>
     <OutputPath>..\..\bin\contrib\WordNet\</OutputPath>
     <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
     <BaseAddress>285212672</BaseAddress>
     <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
     <ConfigurationOverrideFile />
-    <DefineConstants>TRACE</DefineConstants>
-    <DocumentationFile />
-    <DebugSymbols>false</DebugSymbols>
+    <DefineConstants>TRACE;$(Framework)</DefineConstants>
+    <DocumentationFile></DocumentationFile>
+    <DebugSymbols>true</DebugSymbols>
     <FileAlignment>4096</FileAlignment>
     <NoStdLib>false</NoStdLib>
     <NoWarn />
@@ -97,13 +145,20 @@
     <RemoveIntegerChecks>false</RemoveIntegerChecks>
     <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
     <WarningLevel>4</WarningLevel>
-    <DebugType>none</DebugType>
+    <DebugType>pdbonly</DebugType>
     <ErrorReport>prompt</ErrorReport>
+    <OutputType>Library</OutputType>
   </PropertyGroup>
   <ItemGroup>
     <Reference Include="System">
       <Name>System</Name>
     </Reference>
+    <Reference Condition="'$(Framework)' == 'NET35'" Include="System.Core" />
+    <Reference Condition="'$(Framework)' == 'NET35'" Include="System.Core" />
+    <Reference Condition="'$(Framework)' == 'NET35'" Include="System.Core" />
+    <Reference Condition="'$(Framework)' == 'NET35'" Include="System.Core" />
+    <Reference Condition="'$(Framework)' == 'NET35'" Include="System.Core" />
+    <Reference Condition="'$(Framework)' == 'NET35'" Include="System.Core" />
   </ItemGroup>
   <ItemGroup>
     <Compile Include="AssemblyInfo.cs">

Modified: incubator/lucene.net/trunk/src/contrib/WordNet/SynLookup/Contrib.WordNet.SynLookup.csproj
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/contrib/WordNet/SynLookup/Contrib.WordNet.SynLookup.csproj?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/contrib/WordNet/SynLookup/Contrib.WordNet.SynLookup.csproj (original)
+++ incubator/lucene.net/trunk/src/contrib/WordNet/SynLookup/Contrib.WordNet.SynLookup.csproj Mon Jul 16 20:36:26 2012
@@ -19,7 +19,6 @@
  under the License.
 
 -->
-
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="Build">
   <PropertyGroup>
     <ProjectType>Local</ProjectType>
@@ -36,13 +35,10 @@
     <DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
     <DefaultTargetSchema>IE50</DefaultTargetSchema>
     <DelaySign>false</DelaySign>
-    <OutputType>Exe</OutputType>
     <RootNamespace>SynLookup</RootNamespace>
     <RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
     <StartupObject />
-    <FileUpgradeFlags>
-    </FileUpgradeFlags>
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
+    <FileUpgradeFlags></FileUpgradeFlags>
     <OldToolsVersion>0.0</OldToolsVersion>
     <UpgradeBackupLocation />
     <PublishUrl>publish\</PublishUrl>
@@ -62,13 +58,38 @@
     <BootstrapperEnabled>true</BootstrapperEnabled>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <OutputPath>..\..\bin\contrib\WordNet\Debug\</OutputPath>
+    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
+    <Framework>$(TargetFrameworkVersion.Replace("v", "NET").Replace(".", ""))</Framework>
+    <OutputPath>..\..\bin\contrib\WordNet\$(Configuration.Replace("35", ""))\$(Framework)\</OutputPath>
+    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
+    <BaseAddress>285212672</BaseAddress>
+    <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
+    <ConfigurationOverrideFile />
+    <DefineConstants>DEBUG;TRACE;$(Framework)</DefineConstants>
+    <DocumentationFile></DocumentationFile>
+    <DebugSymbols>true</DebugSymbols>
+    <FileAlignment>4096</FileAlignment>
+    <NoStdLib>false</NoStdLib>
+    <NoWarn />
+    <Optimize>false</Optimize>
+    <RegisterForComInterop>false</RegisterForComInterop>
+    <RemoveIntegerChecks>false</RemoveIntegerChecks>
+    <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
+    <WarningLevel>4</WarningLevel>
+    <DebugType>full</DebugType>
+    <ErrorReport>prompt</ErrorReport>
+    <OutputType>Library</OutputType>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug35|AnyCPU' ">
+    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+    <Framework>$(TargetFrameworkVersion.Replace("v", "NET").Replace(".", ""))</Framework>
+    <OutputPath>..\..\bin\contrib\WordNet\$(Configuration.Replace("35", ""))\$(Framework)\</OutputPath>
     <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
     <BaseAddress>285212672</BaseAddress>
     <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
     <ConfigurationOverrideFile />
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
-    <DocumentationFile />
+    <DefineConstants>DEBUG;TRACE;$(Framework)</DefineConstants>
+    <DocumentationFile></DocumentationFile>
     <DebugSymbols>true</DebugSymbols>
     <FileAlignment>4096</FileAlignment>
     <NoStdLib>false</NoStdLib>
@@ -80,16 +101,42 @@
     <WarningLevel>4</WarningLevel>
     <DebugType>full</DebugType>
     <ErrorReport>prompt</ErrorReport>
+    <OutputType>Library</OutputType>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
+    <Framework>$(TargetFrameworkVersion.Replace("v", "NET").Replace(".", ""))</Framework>
+    <OutputPath>..\..\bin\contrib\WordNet\</OutputPath>
+    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
+    <BaseAddress>285212672</BaseAddress>
+    <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
+    <ConfigurationOverrideFile />
+    <DefineConstants>TRACE;$(Framework)</DefineConstants>
+    <DocumentationFile></DocumentationFile>
+    <DebugSymbols>true</DebugSymbols>
+    <FileAlignment>4096</FileAlignment>
+    <NoStdLib>false</NoStdLib>
+    <NoWarn />
+    <Optimize>true</Optimize>
+    <RegisterForComInterop>false</RegisterForComInterop>
+    <RemoveIntegerChecks>false</RemoveIntegerChecks>
+    <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
+    <WarningLevel>4</WarningLevel>
+    <DebugType>pdbonly</DebugType>
+    <ErrorReport>prompt</ErrorReport>
+    <OutputType>Library</OutputType>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release35|AnyCPU' ">
+    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+    <Framework>$(TargetFrameworkVersion.Replace("v", "NET").Replace(".", ""))</Framework>
     <OutputPath>..\..\bin\contrib\WordNet\</OutputPath>
     <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
     <BaseAddress>285212672</BaseAddress>
     <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
     <ConfigurationOverrideFile />
-    <DefineConstants>TRACE</DefineConstants>
-    <DocumentationFile />
-    <DebugSymbols>false</DebugSymbols>
+    <DefineConstants>TRACE;$(Framework)</DefineConstants>
+    <DocumentationFile></DocumentationFile>
+    <DebugSymbols>true</DebugSymbols>
     <FileAlignment>4096</FileAlignment>
     <NoStdLib>false</NoStdLib>
     <NoWarn />
@@ -98,13 +145,20 @@
     <RemoveIntegerChecks>false</RemoveIntegerChecks>
     <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
     <WarningLevel>4</WarningLevel>
-    <DebugType>none</DebugType>
+    <DebugType>pdbonly</DebugType>
     <ErrorReport>prompt</ErrorReport>
+    <OutputType>Library</OutputType>
   </PropertyGroup>
   <ItemGroup>
     <Reference Include="System">
       <Name>System</Name>
     </Reference>
+    <Reference Condition="'$(Framework)' == 'NET35'" Include="System.Core" />
+    <Reference Condition="'$(Framework)' == 'NET35'" Include="System.Core" />
+    <Reference Condition="'$(Framework)' == 'NET35'" Include="System.Core" />
+    <Reference Condition="'$(Framework)' == 'NET35'" Include="System.Core" />
+    <Reference Condition="'$(Framework)' == 'NET35'" Include="System.Core" />
+    <Reference Condition="'$(Framework)' == 'NET35'" Include="System.Core" />
   </ItemGroup>
   <ItemGroup>
     <Compile Include="AssemblyInfo.cs">

Modified: incubator/lucene.net/trunk/src/contrib/WordNet/Syns2Index/Contrib.WordNet.Syns2Index.csproj
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/contrib/WordNet/Syns2Index/Contrib.WordNet.Syns2Index.csproj?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/contrib/WordNet/Syns2Index/Contrib.WordNet.Syns2Index.csproj (original)
+++ incubator/lucene.net/trunk/src/contrib/WordNet/Syns2Index/Contrib.WordNet.Syns2Index.csproj Mon Jul 16 20:36:26 2012
@@ -19,7 +19,6 @@
  under the License.
 
 -->
-
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="Build">
   <PropertyGroup>
     <ProjectType>Local</ProjectType>
@@ -36,13 +35,10 @@
     <DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
     <DefaultTargetSchema>IE50</DefaultTargetSchema>
     <DelaySign>false</DelaySign>
-    <OutputType>Exe</OutputType>
     <RootNamespace>Syns2Index</RootNamespace>
     <RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
     <StartupObject />
-    <FileUpgradeFlags>
-    </FileUpgradeFlags>
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
+    <FileUpgradeFlags></FileUpgradeFlags>
     <OldToolsVersion>0.0</OldToolsVersion>
     <UpgradeBackupLocation />
     <PublishUrl>publish\</PublishUrl>
@@ -62,13 +58,38 @@
     <BootstrapperEnabled>true</BootstrapperEnabled>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <OutputPath>..\..\bin\contrib\WordNet\Debug\</OutputPath>
+    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
+    <Framework>$(TargetFrameworkVersion.Replace("v", "NET").Replace(".", ""))</Framework>
+    <OutputPath>..\..\bin\contrib\WordNet\$(Configuration.Replace("35", ""))\$(Framework)\</OutputPath>
+    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
+    <BaseAddress>285212672</BaseAddress>
+    <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
+    <ConfigurationOverrideFile />
+    <DefineConstants>DEBUG;TRACE;$(Framework)</DefineConstants>
+    <DocumentationFile></DocumentationFile>
+    <DebugSymbols>true</DebugSymbols>
+    <FileAlignment>4096</FileAlignment>
+    <NoStdLib>false</NoStdLib>
+    <NoWarn />
+    <Optimize>false</Optimize>
+    <RegisterForComInterop>false</RegisterForComInterop>
+    <RemoveIntegerChecks>false</RemoveIntegerChecks>
+    <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
+    <WarningLevel>4</WarningLevel>
+    <DebugType>full</DebugType>
+    <ErrorReport>prompt</ErrorReport>
+    <OutputType>Library</OutputType>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug35|AnyCPU' ">
+    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+    <Framework>$(TargetFrameworkVersion.Replace("v", "NET").Replace(".", ""))</Framework>
+    <OutputPath>..\..\bin\contrib\WordNet\$(Configuration.Replace("35", ""))\$(Framework)\</OutputPath>
     <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
     <BaseAddress>285212672</BaseAddress>
     <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
     <ConfigurationOverrideFile />
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
-    <DocumentationFile />
+    <DefineConstants>DEBUG;TRACE;$(Framework)</DefineConstants>
+    <DocumentationFile></DocumentationFile>
     <DebugSymbols>true</DebugSymbols>
     <FileAlignment>4096</FileAlignment>
     <NoStdLib>false</NoStdLib>
@@ -80,16 +101,42 @@
     <WarningLevel>4</WarningLevel>
     <DebugType>full</DebugType>
     <ErrorReport>prompt</ErrorReport>
+    <OutputType>Library</OutputType>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
+    <Framework>$(TargetFrameworkVersion.Replace("v", "NET").Replace(".", ""))</Framework>
+    <OutputPath>..\..\bin\contrib\WordNet\</OutputPath>
+    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
+    <BaseAddress>285212672</BaseAddress>
+    <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
+    <ConfigurationOverrideFile />
+    <DefineConstants>TRACE;$(Framework)</DefineConstants>
+    <DocumentationFile></DocumentationFile>
+    <DebugSymbols>true</DebugSymbols>
+    <FileAlignment>4096</FileAlignment>
+    <NoStdLib>false</NoStdLib>
+    <NoWarn />
+    <Optimize>true</Optimize>
+    <RegisterForComInterop>false</RegisterForComInterop>
+    <RemoveIntegerChecks>false</RemoveIntegerChecks>
+    <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
+    <WarningLevel>4</WarningLevel>
+    <DebugType>pdbonly</DebugType>
+    <ErrorReport>prompt</ErrorReport>
+    <OutputType>Library</OutputType>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release35|AnyCPU' ">
+    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+    <Framework>$(TargetFrameworkVersion.Replace("v", "NET").Replace(".", ""))</Framework>
     <OutputPath>..\..\bin\contrib\WordNet\</OutputPath>
     <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
     <BaseAddress>285212672</BaseAddress>
     <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
     <ConfigurationOverrideFile />
-    <DefineConstants>TRACE</DefineConstants>
-    <DocumentationFile />
-    <DebugSymbols>false</DebugSymbols>
+    <DefineConstants>TRACE;$(Framework)</DefineConstants>
+    <DocumentationFile></DocumentationFile>
+    <DebugSymbols>true</DebugSymbols>
     <FileAlignment>4096</FileAlignment>
     <NoStdLib>false</NoStdLib>
     <NoWarn />
@@ -98,13 +145,20 @@
     <RemoveIntegerChecks>false</RemoveIntegerChecks>
     <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
     <WarningLevel>4</WarningLevel>
-    <DebugType>none</DebugType>
+    <DebugType>pdbonly</DebugType>
     <ErrorReport>prompt</ErrorReport>
+    <OutputType>Library</OutputType>
   </PropertyGroup>
   <ItemGroup>
     <Reference Include="System">
       <Name>System</Name>
     </Reference>
+    <Reference Condition="'$(Framework)' == 'NET35'" Include="System.Core" />
+    <Reference Condition="'$(Framework)' == 'NET35'" Include="System.Core" />
+    <Reference Condition="'$(Framework)' == 'NET35'" Include="System.Core" />
+    <Reference Condition="'$(Framework)' == 'NET35'" Include="System.Core" />
+    <Reference Condition="'$(Framework)' == 'NET35'" Include="System.Core" />
+    <Reference Condition="'$(Framework)' == 'NET35'" Include="System.Core" />
   </ItemGroup>
   <ItemGroup>
     <Compile Include="AssemblyInfo.cs">

Modified: incubator/lucene.net/trunk/src/core/Analysis/WordlistLoader.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/core/Analysis/WordlistLoader.cs?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/core/Analysis/WordlistLoader.cs (original)
+++ incubator/lucene.net/trunk/src/core/Analysis/WordlistLoader.cs Mon Jul 16 20:36:26 2012
@@ -33,19 +33,10 @@ namespace Lucene.Net.Analysis
 		/// <returns> A HashSet with the file's words</returns>
 		public static ISet<string> GetWordSet(System.IO.FileInfo wordfile)
 		{
-			ISet<string> result;
-			System.IO.StreamReader reader = null;
-			try
-			{
-				reader = new System.IO.StreamReader(wordfile.FullName, System.Text.Encoding.Default);
-				result = GetWordSet(reader);
-			}
-			finally
-			{
-				if (reader != null)
-					reader.Close();
-			}
-			return result;
+            using (var reader = new System.IO.StreamReader(wordfile.FullName, System.Text.Encoding.Default))
+            {
+                return GetWordSet(reader);
+            }
 		}
 		
 		/// <summary> Loads a text file and adds every non-comment line as an entry to a HashSet (omitting
@@ -56,21 +47,12 @@ namespace Lucene.Net.Analysis
 		/// <param name="wordfile">File containing the wordlist</param>
 		/// <param name="comment">The comment string to ignore</param>
 		/// <returns> A HashSet with the file's words</returns>
-		public static HashSet<string> GetWordSet(System.IO.FileInfo wordfile, System.String comment)
+		public static ISet<string> GetWordSet(System.IO.FileInfo wordfile, System.String comment)
 		{
-			HashSet<string> result;
-			System.IO.StreamReader reader = null;
-			try
-			{
-				reader = new System.IO.StreamReader(wordfile.FullName, System.Text.Encoding.Default);
-				result = GetWordSet(reader, comment);
-			}
-			finally
-			{
-				if (reader != null)
-					reader.Close();
-			}
-			return result;
+            using (var reader = new System.IO.StreamReader(wordfile.FullName, System.Text.Encoding.Default))
+            {
+                return GetWordSet(reader, comment);
+            }
 		}
 		
 		
@@ -81,9 +63,9 @@ namespace Lucene.Net.Analysis
 		/// </summary>
 		/// <param name="reader">Reader containing the wordlist</param>
 		/// <returns>A HashSet with the reader's words</returns>
-		public static HashSet<string> GetWordSet(System.IO.TextReader reader)
+		public static ISet<string> GetWordSet(System.IO.TextReader reader)
 		{
-			var result = new HashSet<string>();
+            var result = Support.Compatibility.SetFactory.GetSet<string>();
 
 			System.String word;
 			while ((word = reader.ReadLine()) != null)
@@ -106,11 +88,11 @@ namespace Lucene.Net.Analysis
 		/// </param>
 		/// <returns> A HashSet with the reader's words
 		/// </returns>
-		public static HashSet<string> GetWordSet(System.IO.TextReader reader, System.String comment)
+		public static ISet<string> GetWordSet(System.IO.TextReader reader, System.String comment)
 		{
-			var result = new HashSet<string>();
+            var result = Support.Compatibility.SetFactory.GetSet<string>();
 
-			System.String word;
+            System.String word = null;
 			while ((word = reader.ReadLine()) != null)
 			{
 				if (word.StartsWith(comment) == false)

Modified: incubator/lucene.net/trunk/src/core/Index/DirectoryReader.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/core/Index/DirectoryReader.cs?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/core/Index/DirectoryReader.cs (original)
+++ incubator/lucene.net/trunk/src/core/Index/DirectoryReader.cs Mon Jul 16 20:36:26 2012
@@ -1066,7 +1066,7 @@ namespace Lucene.Net.Index
         internal static System.Collections.Generic.ICollection<string> GetFieldNames(IndexReader.FieldOption fieldNames, IndexReader[] subReaders)
         {
             // maintain a unique set of field names
-            System.Collections.Generic.ISet<string> fieldSet = new System.Collections.Generic.HashSet<string>();
+            System.Collections.Generic.ISet<string> fieldSet = Lucene.Net.Support.Compatibility.SetFactory.GetSet<string>();
             foreach (IndexReader reader in subReaders)
             {
                 fieldSet.UnionWith(reader.GetFieldNames(fieldNames));

Modified: incubator/lucene.net/trunk/src/core/Index/IndexWriter.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/core/Index/IndexWriter.cs?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/core/Index/IndexWriter.cs (original)
+++ incubator/lucene.net/trunk/src/core/Index/IndexWriter.cs Mon Jul 16 20:36:26 2012
@@ -244,7 +244,7 @@ namespace Lucene.Net.Index
 		private DocumentsWriter docWriter;
 		private IndexFileDeleter deleter;
 
-        private ISet<SegmentInfo> segmentsToOptimize = new HashSet<SegmentInfo>(); // used by optimize to note those needing optimization
+        private ISet<SegmentInfo> segmentsToOptimize = Lucene.Net.Support.Compatibility.SetFactory.GetSet<SegmentInfo>(); // used by optimize to note those needing optimization
 		
 		private Lock writeLock;
 		
@@ -260,7 +260,7 @@ namespace Lucene.Net.Index
 		private MergePolicy mergePolicy;
 		private MergeScheduler mergeScheduler = new ConcurrentMergeScheduler();
         private LinkedList<MergePolicy.OneMerge> pendingMerges = new LinkedList<MergePolicy.OneMerge>();
-		private ISet<MergePolicy.OneMerge> runningMerges = new HashSet<MergePolicy.OneMerge>();
+		private ISet<MergePolicy.OneMerge> runningMerges = Lucene.Net.Support.Compatibility.SetFactory.GetSet<MergePolicy.OneMerge>();
 		private IList<MergePolicy.OneMerge> mergeExceptions = new List<MergePolicy.OneMerge>();
 		private long mergeGen;
 		private bool stopMerges;
@@ -2733,7 +2733,7 @@ namespace Lucene.Net.Index
 			lock (this)
 			{
 				ResetMergeExceptions();
-				segmentsToOptimize = new HashSet<SegmentInfo>();
+                segmentsToOptimize = Lucene.Net.Support.Compatibility.SetFactory.GetSet<SegmentInfo>();
                 optimizeMaxNumSegments = maxNumSegments;
 				int numSegments = segmentInfos.Count;
 				for (int i = 0; i < numSegments; i++)

Modified: incubator/lucene.net/trunk/src/core/Index/ParallelReader.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/core/Index/ParallelReader.cs?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/core/Index/ParallelReader.cs (original)
+++ incubator/lucene.net/trunk/src/core/Index/ParallelReader.cs Mon Jul 16 20:36:26 2012
@@ -531,7 +531,7 @@ namespace Lucene.Net.Index
         public override System.Collections.Generic.ICollection<string> GetFieldNames(IndexReader.FieldOption fieldNames)
 		{
 			EnsureOpen();
-            ISet<string> fieldSet = new HashSet<string>();
+            ISet<string> fieldSet = Lucene.Net.Support.Compatibility.SetFactory.GetSet<string>();
 			foreach(var reader in readers)
 			{
 				ICollection<string> names = reader.GetFieldNames(fieldNames);

Modified: incubator/lucene.net/trunk/src/core/Index/SegmentMerger.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/core/Index/SegmentMerger.cs?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/core/Index/SegmentMerger.cs (original)
+++ incubator/lucene.net/trunk/src/core/Index/SegmentMerger.cs Mon Jul 16 20:36:26 2012
@@ -232,7 +232,7 @@ namespace Lucene.Net.Index
 
         internal ICollection<string> GetMergedFiles()
 		{
-            ISet<string> fileSet = new HashSet<string>();
+            ISet<string> fileSet = Lucene.Net.Support.Compatibility.SetFactory.GetSet<string>();
 			
 			// Basic files
 			for (int i = 0; i < IndexFileNames.COMPOUND_EXTENSIONS.Length; i++)

Modified: incubator/lucene.net/trunk/src/core/Index/SegmentReader.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/core/Index/SegmentReader.cs?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/core/Index/SegmentReader.cs (original)
+++ incubator/lucene.net/trunk/src/core/Index/SegmentReader.cs Mon Jul 16 20:36:26 2012
@@ -1273,7 +1273,7 @@ namespace Lucene.Net.Index
 		{
 			EnsureOpen();
 
-            System.Collections.Generic.ISet<string> fieldSet = new System.Collections.Generic.HashSet<string>();
+            System.Collections.Generic.ISet<string> fieldSet = Lucene.Net.Support.Compatibility.SetFactory.GetSet<string>();
 			for (int i = 0; i < core.fieldInfos.Size(); i++)
 			{
 				FieldInfo fi = core.fieldInfos.FieldInfo(i);

Modified: incubator/lucene.net/trunk/src/core/Lucene.Net.csproj
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/core/Lucene.Net.csproj?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/core/Lucene.Net.csproj (original)
+++ incubator/lucene.net/trunk/src/core/Lucene.Net.csproj Mon Jul 16 20:36:26 2012
@@ -21,60 +21,22 @@
 -->
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
   <PropertyGroup>
-    <ProjectType>Local</ProjectType>
-    <ProductVersion>8.0.50727</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{5D4AD9BE-1FFB-41AB-9943-25737971BF57}</ProjectGuid>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ApplicationIcon>
-    </ApplicationIcon>
-    <AssemblyKeyContainerName>
-    </AssemblyKeyContainerName>
-    <AssemblyName>Lucene.Net</AssemblyName>
-    <AssemblyOriginatorKeyFile>Lucene.Net.snk</AssemblyOriginatorKeyFile>
-    <DefaultClientScript>JScript</DefaultClientScript>
-    <DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
-    <DefaultTargetSchema>IE50</DefaultTargetSchema>
-    <DelaySign>false</DelaySign>
-    <OutputType>Library</OutputType>
+    <ProjectGuid>{5D4AD9BE-1FFB-41AB-9943-25737971BF57}</ProjectGuid>
     <RootNamespace>Lucene.Net</RootNamespace>
-    <RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
-    <StartupObject>
-    </StartupObject>
-    <FileUpgradeFlags>
-    </FileUpgradeFlags>
-    <UpgradeBackupLocation>
-    </UpgradeBackupLocation>
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
-    <OldToolsVersion>2.0</OldToolsVersion>
-    <PublishUrl>publish\</PublishUrl>
-    <Install>true</Install>
-    <InstallFrom>Disk</InstallFrom>
-    <UpdateEnabled>false</UpdateEnabled>
-    <UpdateMode>Foreground</UpdateMode>
-    <UpdateInterval>7</UpdateInterval>
-    <UpdateIntervalUnits>Days</UpdateIntervalUnits>
-    <UpdatePeriodically>false</UpdatePeriodically>
-    <UpdateRequired>false</UpdateRequired>
-    <MapFileExtensions>true</MapFileExtensions>
-    <ApplicationRevision>0</ApplicationRevision>
-    <ApplicationVersion>1.0.0.%2a</ApplicationVersion>
-    <IsWebBootstrapper>false</IsWebBootstrapper>
-    <UseApplicationTrust>false</UseApplicationTrust>
-    <BootstrapperEnabled>true</BootstrapperEnabled>
+    <AssemblyName>Lucene.Net</AssemblyName>
+    <FileAlignment>512</FileAlignment>
     <TargetFrameworkProfile />
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <OutputPath>..\..\build\bin\core\Debug\</OutputPath>
+    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
+    <Framework>$(TargetFrameworkVersion.Replace("v", "NET").Replace(".", ""))</Framework>
+    <OutputPath>..\..\build\bin\core\$(Configuration.Replace("35", ""))\$(Framework)\</OutputPath>
     <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
     <BaseAddress>285212672</BaseAddress>
     <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
-    <ConfigurationOverrideFile>
-    </ConfigurationOverrideFile>
-    <DefineConstants>TRACE;DEBUG</DefineConstants>
-    <DocumentationFile>
-    </DocumentationFile>
+    <DefineConstants>TRACE;DEBUG;$(Framework)</DefineConstants>
     <DebugSymbols>true</DebugSymbols>
     <FileAlignment>4096</FileAlignment>
     <NoStdLib>false</NoStdLib>
@@ -88,16 +50,63 @@
     <ErrorReport>prompt</ErrorReport>
     <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
     <RunCodeAnalysis>false</RunCodeAnalysis>
+    <OutputType>Library</OutputType>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug35|AnyCPU' ">
+    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+    <Framework>$(TargetFrameworkVersion.Replace("v", "NET").Replace(".", ""))</Framework>
+    <OutputPath>..\..\build\bin\core\$(Configuration.Replace("35", ""))\$(Framework)\</OutputPath>
+    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
+    <BaseAddress>285212672</BaseAddress>
+    <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
+    <DefineConstants>TRACE;DEBUG;$(Framework)</DefineConstants>
+    <DebugSymbols>true</DebugSymbols>
+    <FileAlignment>4096</FileAlignment>
+    <NoStdLib>false</NoStdLib>
+    <NoWarn>618</NoWarn>
+    <Optimize>false</Optimize>
+    <RegisterForComInterop>false</RegisterForComInterop>
+    <RemoveIntegerChecks>false</RemoveIntegerChecks>
+    <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
+    <WarningLevel>4</WarningLevel>
+    <DebugType>full</DebugType>
+    <ErrorReport>prompt</ErrorReport>
+    <CodeAnalysisRuleSet>blah.ruleset</CodeAnalysisRuleSet>
+    <RunCodeAnalysis>false</RunCodeAnalysis>
+    <OutputType>Library</OutputType>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <OutputPath>..\..\build\bin\core\Release\</OutputPath>
+    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
+    <Framework>$(TargetFrameworkVersion.Replace("v", "NET").Replace(".", ""))</Framework>
+    <OutputPath>..\..\build\bin\core\$(Configuration.Replace("35", ""))\$(Framework)\</OutputPath>
+    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
+    <BaseAddress>285212672</BaseAddress>
+    <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
+    <DefineConstants>TRACE;$(Framework)</DefineConstants>
+    <DocumentationFile>..\..\build\bin\core\$(Configuration.Replace("35", ""))\$(Framework)\Lucene.Net.XML</DocumentationFile>
+    <FileAlignment>4096</FileAlignment>
+    <NoStdLib>false</NoStdLib>
+    <NoWarn>618,1591</NoWarn>
+    <Optimize>true</Optimize>
+    <RegisterForComInterop>false</RegisterForComInterop>
+    <RemoveIntegerChecks>false</RemoveIntegerChecks>
+    <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
+    <WarningLevel>4</WarningLevel>
+    <DebugType>pdbonly</DebugType>
+    <ErrorReport>prompt</ErrorReport>
+    <DebugSymbols>true</DebugSymbols>
+    <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+    <OutputType>Library</OutputType>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release35|AnyCPU' ">
+    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+    <Framework>$(TargetFrameworkVersion.Replace("v", "NET").Replace(".", ""))</Framework>
+    <OutputPath>..\..\build\bin\core\$(Configuration.Replace("35", ""))\$(Framework)\</OutputPath>
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
     <BaseAddress>285212672</BaseAddress>
     <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
-    <ConfigurationOverrideFile>
-    </ConfigurationOverrideFile>
-    <DefineConstants>TRACE</DefineConstants>
-    <DocumentationFile>..\..\build\bin\core\Release\Lucene.Net.XML</DocumentationFile>
+    <DefineConstants>TRACE;$(Framework)</DefineConstants>
+    <DocumentationFile>..\..\build\bin\core\$(Configuration.Replace("35", ""))\$(Framework)\Lucene.Net.XML</DocumentationFile>
     <FileAlignment>4096</FileAlignment>
     <NoStdLib>false</NoStdLib>
     <NoWarn>618,1591</NoWarn>
@@ -110,14 +119,19 @@
     <ErrorReport>prompt</ErrorReport>
     <DebugSymbols>true</DebugSymbols>
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+    <OutputType>Library</OutputType>
   </PropertyGroup>
   <PropertyGroup>
     <SignAssembly>true</SignAssembly>
   </PropertyGroup>
+  <PropertyGroup>
+    <AssemblyOriginatorKeyFile>Lucene.Net.snk</AssemblyOriginatorKeyFile>
+  </PropertyGroup>
   <ItemGroup>
     <Reference Include="System">
       <Name>System</Name>
     </Reference>
+    <Reference Condition="'$(Framework)' == 'NET35'" Include="System.Core" />
     <Reference Include="System.configuration" />
     <Reference Include="System.Xml">
       <Name>System.XML</Name>
@@ -858,6 +872,13 @@
     <Compile Include="Support\CloseableThreadLocalProfiler.cs" />
     <Compile Include="Support\CollectionsHelper.cs" />
     <Compile Include="Support\Compare.cs" />
+    <Compile Include="Support\Compatibility\ConcurrentDictionary.cs" />
+    <Compile Include="Support\Compatibility\Func.cs" />
+    <Compile Include="Support\Compatibility\ISet.cs" />
+    <Compile Include="Support\Compatibility\SetFactory.cs" />
+    <Compile Include="Support\Compatibility\SortedSet.cs" />
+    <Compile Include="Support\Compatibility\ThreadLocal.cs" />
+    <Compile Include="Support\Compatibility\WrappedHashSet.cs" />
     <Compile Include="Support\CRC32.cs" />
     <Compile Include="Support\Cryptography.cs" />
     <Compile Include="Support\Deflater.cs" />

Modified: incubator/lucene.net/trunk/src/core/Search/FilterManager.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/core/Search/FilterManager.cs?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/core/Search/FilterManager.cs (original)
+++ incubator/lucene.net/trunk/src/core/Search/FilterManager.cs Mon Jul 16 20:36:26 2012
@@ -164,7 +164,7 @@ namespace Lucene.Net.Search
 			
 			private bool running = true;
             private FilterManager manager;
-            private SortedSet<KeyValuePair<int, FilterItem>> sortedFilterItems;
+            private ISet<KeyValuePair<int, FilterItem>> sortedFilterItems;
 			
 			public FilterCleaner(FilterManager enclosingInstance)
 			{

Modified: incubator/lucene.net/trunk/src/core/Search/MultiSearcher.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/core/Search/MultiSearcher.cs?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/core/Search/MultiSearcher.cs (original)
+++ incubator/lucene.net/trunk/src/core/Search/MultiSearcher.cs Mon Jul 16 20:36:26 2012
@@ -357,7 +357,7 @@ namespace Lucene.Net.Search
 			Query rewrittenQuery = Rewrite(original);
 			
 			// step 2
-			ISet<Term> terms = new HashSet<Term>();
+		    ISet<Term> terms = Lucene.Net.Support.Compatibility.SetFactory.GetSet<Term>();
 			rewrittenQuery.ExtractTerms(terms);
 			
 			// step3

Modified: incubator/lucene.net/trunk/src/core/Search/ParallelMultiSearcher.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/core/Search/ParallelMultiSearcher.cs?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/core/Search/ParallelMultiSearcher.cs (original)
+++ incubator/lucene.net/trunk/src/core/Search/ParallelMultiSearcher.cs Mon Jul 16 20:36:26 2012
@@ -15,6 +15,8 @@
  * limitations under the License.
  */
 
+#if !NET35
+
 using System;
 using System.Threading;
 using System.Threading.Tasks;
@@ -210,4 +212,6 @@ namespace Lucene.Net.Search
 			}
 		}
 	}
-}
\ No newline at end of file
+}
+
+#endif 
\ No newline at end of file

Modified: incubator/lucene.net/trunk/src/core/Search/Query.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/core/Search/Query.cs?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/core/Search/Query.cs (original)
+++ incubator/lucene.net/trunk/src/core/Search/Query.cs Mon Jul 16 20:36:26 2012
@@ -175,7 +175,7 @@ namespace Lucene.Net.Search
 		/// 
 		/// </summary>
 		/// <throws>  UnsupportedOperationException if this query is not yet rewritten </throws>
-		public virtual void  ExtractTerms(System.Collections.Generic.ISet<Term> terms)
+		public virtual void ExtractTerms(System.Collections.Generic.ISet<Term> terms)
 		{
 			// needs to be implemented by query subclasses
 			throw new System.NotSupportedException();

Modified: incubator/lucene.net/trunk/src/core/Search/Spans/NearSpansUnordered.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/core/Search/Spans/NearSpansUnordered.cs?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/core/Search/Spans/NearSpansUnordered.cs (original)
+++ incubator/lucene.net/trunk/src/core/Search/Spans/NearSpansUnordered.cs Mon Jul 16 20:36:26 2012
@@ -321,7 +321,7 @@ namespace Lucene.Net.Search.Spans
 	    /// <throws>  IOException </throws>
 	    public override ICollection<byte[]> GetPayload()
 	    {
-	        System.Collections.Generic.ISet<byte[]> matchPayload = new System.Collections.Generic.HashSet<byte[]>();
+            System.Collections.Generic.ISet<byte[]> matchPayload = Lucene.Net.Support.Compatibility.SetFactory.GetSet<byte[]>();
 	        for (SpansCell cell = first; cell != null; cell = cell.next)
 	        {
 	            if (cell.IsPayloadAvailable())

Modified: incubator/lucene.net/trunk/src/core/Search/Spans/SpanWeight.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/core/Search/Spans/SpanWeight.cs?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/core/Search/Spans/SpanWeight.cs (original)
+++ incubator/lucene.net/trunk/src/core/Search/Spans/SpanWeight.cs Mon Jul 16 20:36:26 2012
@@ -35,7 +35,7 @@ namespace Lucene.Net.Search.Spans
 		protected internal float queryNorm;
 		protected internal float queryWeight;
 
-        protected internal HashSet<Term> terms;
+        protected internal ISet<Term> terms;
 		protected internal SpanQuery query;
 		private IDFExplanation idfExp;
 		
@@ -44,7 +44,7 @@ namespace Lucene.Net.Search.Spans
 			this.similarity = query.GetSimilarity(searcher);
 			this.query = query;
 
-			terms = new HashSet<Term>();
+		    terms = Lucene.Net.Support.Compatibility.SetFactory.GetSet<Term>();
 			query.ExtractTerms(terms);
 
 			idfExp = similarity.IdfExplain(terms, searcher);

Modified: incubator/lucene.net/trunk/src/core/Store/RAMDirectory.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/core/Store/RAMDirectory.cs?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/core/Store/RAMDirectory.cs (original)
+++ incubator/lucene.net/trunk/src/core/Store/RAMDirectory.cs Mon Jul 16 20:36:26 2012
@@ -86,7 +86,7 @@ namespace Lucene.Net.Store
 			{
 				EnsureOpen();
                 // TODO: may have better performance if our HashMap implmented KeySet() instead of generating one via HashSet
-				System.Collections.Generic.ISet<string> fileNames = new System.Collections.Generic.HashSet<string>(fileMap.Keys);
+                System.Collections.Generic.ISet<string> fileNames = Support.Compatibility.SetFactory.GetSet(fileMap.Keys);
 				System.String[] result = new System.String[fileNames.Count];
 				int i = 0;
 				foreach(string filename in fileNames)

Added: incubator/lucene.net/trunk/src/core/Support/Compatibility/ConcurrentDictionary.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/core/Support/Compatibility/ConcurrentDictionary.cs?rev=1362240&view=auto
==============================================================================
--- incubator/lucene.net/trunk/src/core/Support/Compatibility/ConcurrentDictionary.cs (added)
+++ incubator/lucene.net/trunk/src/core/Support/Compatibility/ConcurrentDictionary.cs Mon Jul 16 20:36:26 2012
@@ -0,0 +1,295 @@
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Linq;
+using System.Threading;
+
+#if NET35
+
+namespace Lucene.Net.Support.Compatibility
+{
+    /// <summary>
+    /// Support class that emulates the behavior of the ConcurrentDictionary
+    /// from .NET 4.0.  This class will, in most cases, perform slightly slower
+    /// than the 4.0 equivalent.  Note that all behavior is emulated, which means
+    /// that <see cref="GetEnumerator"/>, <see cref="Keys"/>, and <see cref="Values"/>
+    /// all return a snapshot of the data at the time it was called.
+    /// </summary>
+    [Serializable]
+    public class ConcurrentDictionary<TKey, TValue> : IDictionary<TKey, TValue>
+    {
+        private readonly object _lockObj = new object();
+        private readonly Dictionary<TKey, TValue> _dictInst; 
+
+        public ConcurrentDictionary()
+            : this(16)
+        { }
+
+        public ConcurrentDictionary(int capacity)
+            : this(capacity, EqualityComparer<TKey>.Default)
+        { }
+
+        public ConcurrentDictionary(int capacity, IEqualityComparer<TKey> comparer)
+        {
+            _dictInst = new Dictionary<TKey, TValue>(capacity, comparer);
+        }
+
+        public ConcurrentDictionary(IEnumerable<KeyValuePair<TKey, TValue>> keyValuePairs)
+            : this(16)
+        {
+            foreach(var value in keyValuePairs)
+            {
+                _dictInst.Add(value.Key, value.Value);
+            }
+        }
+
+        #region Concurrent Dictionary Special Methods
+
+        public TValue AddOrUpdate(TKey key, Func<TKey, TValue> addValueFactory, Func<TKey, TValue, TValue> updateValueFactory)
+        {
+            lock(_lockObj)
+            {
+                if(_dictInst.ContainsKey(key))
+                {
+                    _dictInst[key] = updateValueFactory(key, _dictInst[key]);
+                }
+                else
+                {
+                    _dictInst[key] = addValueFactory(key);
+                }
+
+                return _dictInst[key];
+            }
+        }
+
+        public TValue AddOrUpdate(TKey key, TValue addValue, Func<TKey, TValue, TValue> updateValueFactory)
+        {
+            lock (_lockObj)
+            {
+                if (_dictInst.ContainsKey(key))
+                {
+                    _dictInst[key] = updateValueFactory(key, _dictInst[key]);
+                }
+                else
+                {
+                    _dictInst[key] = addValue;
+                }
+
+                return _dictInst[key];
+            }
+        }
+
+        public TValue GetOrAdd(TKey key, Func<TKey, TValue> valueFactory)
+        {
+            lock (_lockObj)
+            {
+                if (!_dictInst.ContainsKey(key))
+                {
+                    _dictInst[key] = valueFactory(key);
+                }
+
+                return _dictInst[key];
+            }
+        }
+
+        public TValue GetOrAdd(TKey key, TValue value)
+        {
+            lock (_lockObj)
+            {
+                if (!_dictInst.ContainsKey(key))
+                {
+                    _dictInst[key] = value;
+                }
+
+                return _dictInst[key];
+            }
+        }
+
+        public bool TryAdd(TKey key, TValue value)
+        {
+            lock (_lockObj)
+            {
+                if (_dictInst.ContainsKey(key))
+                {
+                    return false;
+                }
+
+                _dictInst[key] = value;
+                return true;
+            }
+        }
+
+        public bool TryRemove(TKey key, out TValue value)
+        {
+            lock (_lockObj)
+            {
+                if (_dictInst.ContainsKey(key))
+                {
+                    value = _dictInst[key];
+                    _dictInst.Remove(key);
+                    return true;
+                }
+
+                value = default(TValue);
+                return false;
+            }
+        }
+
+        public bool TryUpdate(TKey key, TValue newValue, TValue comparisonValue)
+        {
+            lock (_lockObj)
+            {
+                if (_dictInst.ContainsKey(key) && _dictInst[key].Equals(comparisonValue))
+                {
+                    _dictInst[key] = newValue;
+                    return true;
+                }
+
+                return false;
+            }
+        }
+
+        #endregion
+
+        #region IDictionary Methods
+
+        // .NET4 ConcurrentDictionary returns an enumerator that can enumerate even
+        // if the collection is modified.  We can't do that, so create a copy (expensive)
+        public IEnumerator<KeyValuePair<TKey, TValue>> GetEnumerator()
+        {
+            lock (_lockObj)
+            {
+                return _dictInst.ToList().GetEnumerator();
+            }
+        }
+
+        public bool TryGetValue(TKey key, out TValue value)
+        {
+            lock (_lockObj)
+            {
+                return _dictInst.TryGetValue(key, out value);
+            }
+        }
+
+        IEnumerator IEnumerable.GetEnumerator()
+        {
+            return GetEnumerator();
+        }
+
+        public void Clear()
+        {
+            lock (_lockObj)
+            {
+                _dictInst.Clear();
+            }
+        }
+        
+        public int Count
+        {
+            get
+            {
+                lock (_lockObj)
+                {
+                    return _dictInst.Count;
+                }
+            }
+        }
+
+        public bool ContainsKey(TKey key)
+        {
+            lock (_lockObj)
+            {
+                return _dictInst.ContainsKey(key);
+            }
+        }
+
+        public TValue this[TKey key]
+        {
+            get
+            {
+                lock (_lockObj)
+                {
+                    return _dictInst[key];
+                }
+            }
+            set
+            {
+                lock (_lockObj)
+                {
+                    _dictInst[key] = value;
+                }
+            }
+        }
+
+        public ICollection<TKey> Keys
+        {
+            get { return _dictInst.Keys.ToArray(); }
+        }
+
+        public ICollection<TValue> Values
+        {
+            get { return _dictInst.Values.ToArray(); }
+        }
+
+        #endregion
+
+        #region Explicit Interface Definitions
+
+        bool ICollection<KeyValuePair<TKey, TValue>>.IsReadOnly
+        {
+            get { return ((ICollection<KeyValuePair<TKey, TValue>>) _dictInst).IsReadOnly; }
+        }
+
+        void IDictionary<TKey, TValue>.Add(TKey key, TValue value)
+        {
+            lock (_lockObj)
+            {
+                _dictInst.Add(key, value);
+            }
+        }
+
+        bool ICollection<KeyValuePair<TKey, TValue>>.Contains(KeyValuePair<TKey, TValue> item)
+        {
+            lock (_lockObj)
+            {
+                return _dictInst.Contains(item);
+            }
+        }
+
+        bool IDictionary<TKey, TValue>.Remove(TKey key)
+        {
+            lock (_lockObj)
+            {
+                return _dictInst.Remove(key);
+            }
+        }
+
+        void ICollection<KeyValuePair<TKey, TValue>>.Add(KeyValuePair<TKey, TValue> item)
+        {
+            lock (_lockObj)
+            {
+                ((ICollection<KeyValuePair<TKey, TValue>>)_dictInst).Add(item);
+            }
+        }
+
+        void ICollection<KeyValuePair<TKey, TValue>>.CopyTo(KeyValuePair<TKey, TValue>[] array, int arrayIndex)
+        {
+            lock (_lockObj)
+            {
+                ((ICollection<KeyValuePair<TKey, TValue>>)_dictInst).CopyTo(array, arrayIndex);
+            }
+        }
+
+        bool ICollection<KeyValuePair<TKey, TValue>>.Remove(KeyValuePair<TKey, TValue> item)
+        {
+            lock (_lockObj)
+            {
+                return ((ICollection<KeyValuePair<TKey, TValue>>)_dictInst).Remove(item);
+            }
+        }
+
+        #endregion
+    }
+}
+
+#endif
\ No newline at end of file

Added: incubator/lucene.net/trunk/src/core/Support/Compatibility/Func.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/core/Support/Compatibility/Func.cs?rev=1362240&view=auto
==============================================================================
--- incubator/lucene.net/trunk/src/core/Support/Compatibility/Func.cs (added)
+++ incubator/lucene.net/trunk/src/core/Support/Compatibility/Func.cs Mon Jul 16 20:36:26 2012
@@ -0,0 +1,17 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+
+namespace System
+{
+#if NET35
+    public delegate TResult Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, TResult>(T1 arg1, T2 arg2, T3 arg3, T4 arg4,
+                                                                              T5 arg5, T6 arg6, T7 arg7, T8 arg8,
+                                                                              T9 arg9);
+
+    public delegate TResult Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, TResult>(T1 arg1, T2 arg2, T3 arg3, T4 arg4,
+                                                                                   T5 arg5, T6 arg6, T7 arg7, T8 arg8,
+                                                                                   T9 arg9, T10 arg10);
+#endif
+}

Added: incubator/lucene.net/trunk/src/core/Support/Compatibility/ISet.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/core/Support/Compatibility/ISet.cs?rev=1362240&view=auto
==============================================================================
--- incubator/lucene.net/trunk/src/core/Support/Compatibility/ISet.cs (added)
+++ incubator/lucene.net/trunk/src/core/Support/Compatibility/ISet.cs Mon Jul 16 20:36:26 2012
@@ -0,0 +1,59 @@
+/* 
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#if NET35
+
+namespace System.Collections.Generic
+{
+    public interface ISet<T> : ICollection<T>
+    {
+#region METHODS
+
+        new bool Add(T item);
+
+        void ExceptWith(IEnumerable<T> other);
+
+        void IntersectWith(IEnumerable<T> other);
+
+        bool IsProperSubsetOf(IEnumerable<T> other);
+
+        bool IsProperSupersetOf(IEnumerable<T> other);
+
+        bool IsSubsetOf(IEnumerable<T> other);
+
+        bool IsSupersetOf(IEnumerable<T> other);
+
+        bool Overlaps(IEnumerable<T> other);
+
+        bool SetEquals(IEnumerable<T> other);
+
+        void SymmetricExceptWith(IEnumerable<T> other);
+
+        void UnionWith(IEnumerable<T> other);
+
+        #endregion
+
+#region EXTENSION METHODS
+
+
+
+        #endregion
+    }
+
+}
+
+#endif
\ No newline at end of file

Added: incubator/lucene.net/trunk/src/core/Support/Compatibility/SetFactory.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/core/Support/Compatibility/SetFactory.cs?rev=1362240&view=auto
==============================================================================
--- incubator/lucene.net/trunk/src/core/Support/Compatibility/SetFactory.cs (added)
+++ incubator/lucene.net/trunk/src/core/Support/Compatibility/SetFactory.cs Mon Jul 16 20:36:26 2012
@@ -0,0 +1,42 @@
+/* 
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+using System.Collections.Generic;
+
+namespace Lucene.Net.Support.Compatibility
+{
+    public static class SetFactory
+    {
+        public static ISet<T> GetSet<T>()
+        {
+#if NET35
+                return new WrappedHashSet<T>();
+#else
+            return new HashSet<T>();
+#endif
+        }
+
+        public static ISet<T> GetSet<T>(IEnumerable<T> other)
+        {
+#if NET35
+                return new WrappedHashSet<T>(other);
+#else
+            return new HashSet<T>(other);
+#endif
+        }
+    }
+}
\ No newline at end of file

Added: incubator/lucene.net/trunk/src/core/Support/Compatibility/SortedSet.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/core/Support/Compatibility/SortedSet.cs?rev=1362240&view=auto
==============================================================================
--- incubator/lucene.net/trunk/src/core/Support/Compatibility/SortedSet.cs (added)
+++ incubator/lucene.net/trunk/src/core/Support/Compatibility/SortedSet.cs Mon Jul 16 20:36:26 2012
@@ -0,0 +1,187 @@
+/* 
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#if NET35
+
+namespace System.Collections.Generic
+{
+    [Serializable]
+    public class SortedSet<T> : ISet<T>, ICollection
+    {
+        private readonly SortedList<T, byte> _list;
+
+        public SortedSet()
+            : this(Comparer<T>.Default)
+        { }
+
+        public SortedSet(IComparer<T> comparer)
+        {
+            _list = new SortedList<T, byte>(comparer);
+        }
+        
+        public T Min { get { return (_list.Count) >= 1 ? _list.Keys[0] : default(T); } }
+        
+        public T Max { get { return (_list.Count) >= 1 ? _list.Keys[_list.Count - 1] : default(T); } }
+
+
+        /// <summary>
+        /// Removes all items from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
+        /// </summary>
+        /// <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only. 
+        ///                 </exception>
+        public void Clear()
+        {
+            _list.Clear();
+        }
+
+        public void CopyTo(T[] array, int arrayIndex)
+        {
+            _list.Keys.CopyTo(array, arrayIndex);
+        }
+
+        public bool Remove(T item)
+        {
+            return _list.Remove(item);
+        }
+
+        public bool Contains(T value)
+        {
+            return _list.ContainsKey(value);
+        }
+
+        public bool Add(T item)
+        {
+            if (!_list.ContainsKey(item))
+            {
+                _list.Add(item, 0);
+                return true;
+            }
+            return false;
+        }
+
+        public void UnionWith(IEnumerable<T> other)
+        {
+            foreach (var obj in other)
+                Add(obj);
+        }
+
+        public IEnumerator<T> GetEnumerator()
+        {
+            return _list.Keys.GetEnumerator();
+        }
+
+        public IComparer<T> Comparer { get { return _list.Comparer; } }
+
+        public int Count
+        {
+            get { return _list.Count; }
+        }
+
+        #region Explicit Interface Implementations
+
+        void ICollection<T>.Add(T item)
+        {
+            Add(item);
+        }
+
+        void ICollection.CopyTo(Array array, int index)
+        {
+            CopyTo((T[]) array, index);
+        }
+
+        bool ICollection<T>.IsReadOnly
+        {
+            get { return false; }
+        }
+
+        bool ICollection.IsSynchronized
+        {
+            get { return false; }
+        }
+
+        object ICollection.SyncRoot
+        {
+            get { throw new NotSupportedException(); }
+        }
+
+        IEnumerator IEnumerable.GetEnumerator()
+        {
+            return GetEnumerator();
+        }
+
+        int ICollection.Count
+        {
+            get { return Count; }
+        }
+
+        #endregion
+
+        #region ISet<T> Implementation
+
+        void ISet<T>.ExceptWith(IEnumerable<T> other)
+        {
+            foreach(var obj in other)
+            {
+                _list.Remove(obj);
+            }
+        }
+
+        void ISet<T>.IntersectWith(IEnumerable<T> other)
+        {
+            throw new NotImplementedException();
+        }
+
+        bool ISet<T>.IsProperSubsetOf(IEnumerable<T> other)
+        {
+            throw new NotImplementedException();
+        }
+
+        bool ISet<T>.IsProperSupersetOf(IEnumerable<T> other)
+        {
+            throw new NotImplementedException();
+        }
+
+        bool ISet<T>.IsSubsetOf(IEnumerable<T> other)
+        {
+            throw new NotImplementedException();
+        }
+
+        bool ISet<T>.IsSupersetOf(IEnumerable<T> other)
+        {
+            throw new NotImplementedException();
+        }
+
+        bool ISet<T>.Overlaps(IEnumerable<T> other)
+        {
+            throw new NotImplementedException();
+        }
+
+        bool ISet<T>.SetEquals(IEnumerable<T> other)
+        {
+            throw new NotImplementedException();
+        }
+
+        void ISet<T>.SymmetricExceptWith(IEnumerable<T> other)
+        {
+            throw new NotImplementedException();
+        }
+
+        #endregion
+    }
+}
+
+#endif
\ No newline at end of file

Added: incubator/lucene.net/trunk/src/core/Support/Compatibility/ThreadLocal.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/core/Support/Compatibility/ThreadLocal.cs?rev=1362240&view=auto
==============================================================================
--- incubator/lucene.net/trunk/src/core/Support/Compatibility/ThreadLocal.cs (added)
+++ incubator/lucene.net/trunk/src/core/Support/Compatibility/ThreadLocal.cs Mon Jul 16 20:36:26 2012
@@ -0,0 +1,55 @@
+/* 
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#if NET35
+
+using System;
+
+namespace Lucene.Net.Support.Compatibility
+{
+    public class ThreadLocal<T> : IDisposable
+    {
+        [ThreadStatic]
+        static WeakDictionary<ThreadLocal<T>, T> slots;
+
+        static void Init()
+        {
+            if (slots == null) slots = new WeakDictionary<ThreadLocal<T>, T>();
+        }
+
+        public T Value
+        {
+            set
+            {
+                Init();
+                slots.Add(this, value);
+            }
+            get
+            {
+                Init();
+                return (T)slots[this];
+            }
+        }
+
+        public void Dispose()
+        {
+            if (slots != null) slots.Remove(this);
+        }
+    }
+}
+
+#endif
\ No newline at end of file

Added: incubator/lucene.net/trunk/src/core/Support/Compatibility/WrappedHashSet.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/core/Support/Compatibility/WrappedHashSet.cs?rev=1362240&view=auto
==============================================================================
--- incubator/lucene.net/trunk/src/core/Support/Compatibility/WrappedHashSet.cs (added)
+++ incubator/lucene.net/trunk/src/core/Support/Compatibility/WrappedHashSet.cs Mon Jul 16 20:36:26 2012
@@ -0,0 +1,44 @@
+/* 
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#if NET35
+
+using System;
+using System.Collections.Generic;
+using System.Runtime.Serialization;
+
+namespace Lucene.Net.Support.Compatibility
+{
+    [Serializable]
+    class WrappedHashSet<T> : HashSet<T>, ISet<T>
+    {
+        public WrappedHashSet()
+        { }
+ 
+        public WrappedHashSet(IEnumerable<T> items)
+            : base(items)
+        { }
+
+        protected WrappedHashSet(SerializationInfo info, StreamingContext context)
+            : base (info, context)
+        {
+            
+        }
+    }
+}
+
+#endif
\ No newline at end of file

Modified: incubator/lucene.net/trunk/src/core/Support/WeakDictionary.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/core/Support/WeakDictionary.cs?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/core/Support/WeakDictionary.cs (original)
+++ incubator/lucene.net/trunk/src/core/Support/WeakDictionary.cs Mon Jul 16 20:36:26 2012
@@ -30,7 +30,6 @@ namespace Lucene.Net.Support
     {
         private HashMap<WeakKey<TKey>, TValue> _hm;
         private int _gcCollections = 0;
-        private int _changes = 0;
 
         public WeakDictionary(int initialCapacity) : this(initialCapacity, Enumerable.Empty<KeyValuePair<TKey, TValue>>())
         { }
@@ -87,7 +86,8 @@ namespace Lucene.Net.Support
         void ICollection<KeyValuePair<TKey, TValue>>.Add(KeyValuePair<TKey, TValue> item)
         {
             CleanIfNeeded();
-            ((ICollection<KeyValuePair<TKey, TValue>>)_hm).Add(item);
+            ((ICollection<KeyValuePair<WeakKey<TKey>, TValue>>) _hm).Add(
+                new KeyValuePair<WeakKey<TKey>, TValue>(new WeakKey<TKey>(item.Key), item.Value));
         }
 
         public void Clear()

Modified: incubator/lucene.net/trunk/src/core/Util/CloseableThreadLocal.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/core/Util/CloseableThreadLocal.cs?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/core/Util/CloseableThreadLocal.cs (original)
+++ incubator/lucene.net/trunk/src/core/Util/CloseableThreadLocal.cs Mon Jul 16 20:36:26 2012
@@ -21,6 +21,10 @@ using System.Linq;
 using System.Threading;
 using Lucene.Net.Support;
 
+#if NET35
+using Lucene.Net.Support.Compatibility;
+#endif
+
 namespace Lucene.Net.Util
 {
 

Modified: incubator/lucene.net/trunk/src/demo/DeleteFiles/DeleteFiles.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/src/demo/DeleteFiles/DeleteFiles.cs?rev=1362240&r1=1362239&r2=1362240&view=diff
==============================================================================
--- incubator/lucene.net/trunk/src/demo/DeleteFiles/DeleteFiles.cs (original)
+++ incubator/lucene.net/trunk/src/demo/DeleteFiles/DeleteFiles.cs Mon Jul 16 20:36:26 2012
@@ -46,7 +46,7 @@ namespace Lucene.Net.Demo
 			}
 			try
 			{
-				Directory directory = FSDirectory.Open(new System.IO.FileInfo("index"));
+				Directory directory = FSDirectory.Open("index");
 				IndexReader reader = IndexReader.Open(directory, false); // we don't want read-only because we are about to delete
 				
 				Term term = new Term("path", args[0]);



Mime
View raw message