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 2022/10/31 21:13:03 UTC

[lucenenet] 02/04: BREAKING: Lucene.Net.Util.OfflineSorter: Changed DefaultTempDir() > GetDefaultTempDir().

This is an automated email from the ASF dual-hosted git repository.

nightowl888 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/lucenenet.git

commit 33ac7ed3b77facb7b6f742bd2ae35692937bdfa8
Author: Shad Storhaug <sh...@shadstorhaug.com>
AuthorDate: Mon Oct 31 19:17:39 2022 +0700

    BREAKING: Lucene.Net.Util.OfflineSorter: Changed DefaultTempDir() > GetDefaultTempDir().
---
 .../Analysis/Hunspell/Dictionary.cs                    |  2 +-
 .../Suggest/Analyzing/AnalyzingSuggester.cs            |  2 +-
 .../Suggest/Analyzing/FreeTextSuggester.cs             |  2 +-
 .../Suggest/Fst/FSTCompletionLookup.cs                 |  4 ++--
 src/Lucene.Net.Suggest/Suggest/SortedInputIterator.cs  |  2 +-
 .../Suggest/SortedTermFreqIteratorWrapper.cs           |  2 +-
 src/Lucene.Net.Tests/Util/TestOfflineSorter.cs         |  6 +++---
 src/Lucene.Net/Util/OfflineSorter.cs                   | 18 ++++++++++++++----
 8 files changed, 24 insertions(+), 14 deletions(-)

diff --git a/src/Lucene.Net.Analysis.Common/Analysis/Hunspell/Dictionary.cs b/src/Lucene.Net.Analysis.Common/Analysis/Hunspell/Dictionary.cs
index c5039b934..b276ddb98 100644
--- a/src/Lucene.Net.Analysis.Common/Analysis/Hunspell/Dictionary.cs
+++ b/src/Lucene.Net.Analysis.Common/Analysis/Hunspell/Dictionary.cs
@@ -110,7 +110,7 @@ namespace Lucene.Net.Analysis.Hunspell
         // when set, some words have exceptional stems, and the last entry is a pointer to stemExceptions
         internal bool hasStemExceptions;
 
-        private readonly DirectoryInfo tempDir = OfflineSorter.DefaultTempDir(); // TODO: make this configurable?
+        private readonly DirectoryInfo tempDir = OfflineSorter.GetDefaultTempDir(); // TODO: make this configurable?
 
         internal bool ignoreCase;
         internal bool complexPrefixes;
diff --git a/src/Lucene.Net.Suggest/Suggest/Analyzing/AnalyzingSuggester.cs b/src/Lucene.Net.Suggest/Suggest/Analyzing/AnalyzingSuggester.cs
index d96971045..2c8e11a61 100644
--- a/src/Lucene.Net.Suggest/Suggest/Analyzing/AnalyzingSuggester.cs
+++ b/src/Lucene.Net.Suggest/Suggest/Analyzing/AnalyzingSuggester.cs
@@ -405,7 +405,7 @@ namespace Lucene.Net.Search.Suggest.Analyzing
                 throw new ArgumentException("this suggester doesn't support contexts");
             }
             string prefix = this.GetType().Name;
-            var directory = OfflineSorter.DefaultTempDir();
+            var directory = OfflineSorter.GetDefaultTempDir();
             var tempInput = FileSupport.CreateTempFile(prefix, ".input", directory);
             var tempSorted = FileSupport.CreateTempFile(prefix, ".sorted", directory);
 
diff --git a/src/Lucene.Net.Suggest/Suggest/Analyzing/FreeTextSuggester.cs b/src/Lucene.Net.Suggest/Suggest/Analyzing/FreeTextSuggester.cs
index 80e33a242..ae45c49b4 100644
--- a/src/Lucene.Net.Suggest/Suggest/Analyzing/FreeTextSuggester.cs
+++ b/src/Lucene.Net.Suggest/Suggest/Analyzing/FreeTextSuggester.cs
@@ -270,7 +270,7 @@ namespace Lucene.Net.Search.Suggest.Analyzing
             }
 
             string prefix = this.GetType().Name;
-            var directory = OfflineSorter.DefaultTempDir();
+            var directory = OfflineSorter.GetDefaultTempDir();
 
             // LUCENENET specific - using GetRandomFileName() instead of picking a random int
             DirectoryInfo tempIndexPath; // LUCENENET: IDE0059: Remove unnecessary value assignment
diff --git a/src/Lucene.Net.Suggest/Suggest/Fst/FSTCompletionLookup.cs b/src/Lucene.Net.Suggest/Suggest/Fst/FSTCompletionLookup.cs
index 58788418d..49375271c 100644
--- a/src/Lucene.Net.Suggest/Suggest/Fst/FSTCompletionLookup.cs
+++ b/src/Lucene.Net.Suggest/Suggest/Fst/FSTCompletionLookup.cs
@@ -153,8 +153,8 @@ namespace Lucene.Net.Search.Suggest.Fst
             {
                 throw new ArgumentException("this suggester doesn't support contexts");
             }
-            FileInfo tempInput = FileSupport.CreateTempFile(typeof(FSTCompletionLookup).Name, ".input", OfflineSorter.DefaultTempDir());
-            FileInfo tempSorted = FileSupport.CreateTempFile(typeof(FSTCompletionLookup).Name, ".sorted", OfflineSorter.DefaultTempDir());
+            FileInfo tempInput = FileSupport.CreateTempFile(typeof(FSTCompletionLookup).Name, ".input", OfflineSorter.GetDefaultTempDir());
+            FileInfo tempSorted = FileSupport.CreateTempFile(typeof(FSTCompletionLookup).Name, ".sorted", OfflineSorter.GetDefaultTempDir());
 
             OfflineSorter.ByteSequencesWriter writer = new OfflineSorter.ByteSequencesWriter(tempInput);
             OfflineSorter.ByteSequencesReader reader = null;
diff --git a/src/Lucene.Net.Suggest/Suggest/SortedInputIterator.cs b/src/Lucene.Net.Suggest/Suggest/SortedInputIterator.cs
index 45be895f6..584345998 100644
--- a/src/Lucene.Net.Suggest/Suggest/SortedInputIterator.cs
+++ b/src/Lucene.Net.Suggest/Suggest/SortedInputIterator.cs
@@ -183,7 +183,7 @@ namespace Lucene.Net.Search.Suggest
         private OfflineSorter.ByteSequencesReader Sort()
         {
             string prefix = this.GetType().Name;
-            DirectoryInfo directory = OfflineSorter.DefaultTempDir();
+            DirectoryInfo directory = OfflineSorter.GetDefaultTempDir();
             tempInput = FileSupport.CreateTempFile(prefix, ".input", directory);
             tempSorted = FileSupport.CreateTempFile(prefix, ".sorted", directory);
 
diff --git a/src/Lucene.Net.Suggest/Suggest/SortedTermFreqIteratorWrapper.cs b/src/Lucene.Net.Suggest/Suggest/SortedTermFreqIteratorWrapper.cs
index bb764e7a3..7a38535f4 100644
--- a/src/Lucene.Net.Suggest/Suggest/SortedTermFreqIteratorWrapper.cs
+++ b/src/Lucene.Net.Suggest/Suggest/SortedTermFreqIteratorWrapper.cs
@@ -128,7 +128,7 @@ namespace Lucene.Net.Search.Suggest
         private OfflineSorter.ByteSequencesReader Sort()
         {
             string prefix = this.GetType().Name;
-            DirectoryInfo directory = OfflineSorter.DefaultTempDir();
+            DirectoryInfo directory = OfflineSorter.GetDefaultTempDir();
             tempInput = FileSupport.CreateTempFile(prefix, ".input", directory);
             tempSorted = FileSupport.CreateTempFile(prefix, ".sorted", directory);
 
diff --git a/src/Lucene.Net.Tests/Util/TestOfflineSorter.cs b/src/Lucene.Net.Tests/Util/TestOfflineSorter.cs
index 39a9b99fa..93e1b57f4 100644
--- a/src/Lucene.Net.Tests/Util/TestOfflineSorter.cs
+++ b/src/Lucene.Net.Tests/Util/TestOfflineSorter.cs
@@ -84,7 +84,7 @@ namespace Lucene.Net.Util
         public virtual void TestIntermediateMerges()
         {
             // Sort 20 mb worth of data with 1mb buffer, binary merging.
-            OfflineSorter.SortInfo info = CheckSort(new OfflineSorter(OfflineSorter.DEFAULT_COMPARER, OfflineSorter.BufferSize.Megabytes(1), OfflineSorter.DefaultTempDir(), 2), GenerateRandom((int)OfflineSorter.MB * 20));
+            OfflineSorter.SortInfo info = CheckSort(new OfflineSorter(OfflineSorter.DEFAULT_COMPARER, OfflineSorter.BufferSize.Megabytes(1), OfflineSorter.GetDefaultTempDir(), 2), GenerateRandom((int)OfflineSorter.MB * 20));
             Assert.IsTrue(info.MergeRounds > 10);
         }
 
@@ -92,7 +92,7 @@ namespace Lucene.Net.Util
         public virtual void TestSmallRandom()
         {
             // Sort 20 mb worth of data with 1mb buffer.
-            OfflineSorter.SortInfo sortInfo = CheckSort(new OfflineSorter(OfflineSorter.DEFAULT_COMPARER, OfflineSorter.BufferSize.Megabytes(1), OfflineSorter.DefaultTempDir(), OfflineSorter.MAX_TEMPFILES), GenerateRandom((int)OfflineSorter.MB * 20));
+            OfflineSorter.SortInfo sortInfo = CheckSort(new OfflineSorter(OfflineSorter.DEFAULT_COMPARER, OfflineSorter.BufferSize.Megabytes(1), OfflineSorter.GetDefaultTempDir(), OfflineSorter.MAX_TEMPFILES), GenerateRandom((int)OfflineSorter.MB * 20));
             Assert.AreEqual(1, sortInfo.MergeRounds);
         }
 
@@ -101,7 +101,7 @@ namespace Lucene.Net.Util
         public virtual void TestLargerRandom()
         {
             // Sort 100MB worth of data with 15mb buffer.
-            CheckSort(new OfflineSorter(OfflineSorter.DEFAULT_COMPARER, OfflineSorter.BufferSize.Megabytes(16), OfflineSorter.DefaultTempDir(), OfflineSorter.MAX_TEMPFILES), GenerateRandom((int)OfflineSorter.MB * 100));
+            CheckSort(new OfflineSorter(OfflineSorter.DEFAULT_COMPARER, OfflineSorter.BufferSize.Megabytes(16), OfflineSorter.GetDefaultTempDir(), OfflineSorter.MAX_TEMPFILES), GenerateRandom((int)OfflineSorter.MB * 100));
         }
 
         private byte[][] GenerateRandom(int howMuchData)
diff --git a/src/Lucene.Net/Util/OfflineSorter.cs b/src/Lucene.Net/Util/OfflineSorter.cs
index 760418765..f91b3df68 100644
--- a/src/Lucene.Net/Util/OfflineSorter.cs
+++ b/src/Lucene.Net/Util/OfflineSorter.cs
@@ -198,20 +198,20 @@ namespace Lucene.Net.Util
         /// <summary>
         /// Defaults constructor.
         /// </summary>
-        /// <seealso cref="DefaultTempDir()"/>
+        /// <seealso cref="GetDefaultTempDir()"/>
         /// <seealso cref="BufferSize.Automatic()"/>
         public OfflineSorter()
-            : this(DEFAULT_COMPARER, BufferSize.Automatic(), DefaultTempDir(), MAX_TEMPFILES)
+            : this(DEFAULT_COMPARER, BufferSize.Automatic(), GetDefaultTempDir(), MAX_TEMPFILES)
         {
         }
 
         /// <summary>
         /// Defaults constructor with a custom comparer.
         /// </summary>
-        /// <seealso cref="DefaultTempDir()"/>
+        /// <seealso cref="GetDefaultTempDir()"/>
         /// <seealso cref="BufferSize.Automatic()"/>
         public OfflineSorter(IComparer<BytesRef> comparer)
-            : this(comparer, BufferSize.Automatic(), DefaultTempDir(), MAX_TEMPFILES)
+            : this(comparer, BufferSize.Automatic(), GetDefaultTempDir(), MAX_TEMPFILES)
         {
         }
 
@@ -349,6 +349,16 @@ namespace Lucene.Net.Util
         /// or not available, an <see cref="IOException"/> is thrown.
         /// </summary>
         [MethodImpl(MethodImplOptions.AggressiveInlining)]
+        public static DirectoryInfo GetDefaultTempDir()
+        {
+            return new DirectoryInfo(Path.GetTempPath());
+        }
+
+        /// <summary>
+        /// Returns the default temporary directory. By default, the System's temp folder. If not accessible
+        /// or not available, an <see cref="IOException"/> is thrown.
+        /// </summary>
+        [Obsolete("Use GetDefaultTempDir() instead. This method will be removed in 4.8.0 release candidate."), System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
         public static DirectoryInfo DefaultTempDir()
         {
             return new DirectoryInfo(Path.GetTempPath());