From 0e72f5ad9d2ef7e98dd76352d45d86c0fb820a7b Mon Sep 17 00:00:00 2001 From: Adam Hathcock Date: Thu, 12 Feb 2026 14:30:55 +0000 Subject: [PATCH] move providers --- .../Providers/CompressionProviderRegistry.cs | 1 + .../{ => Default}/BZip2CompressionProvider.cs | 2 +- .../Deflate64CompressionProvider.cs | 2 +- .../{ => Default}/DeflateCompressionProvider.cs | 2 +- .../{ => Default}/ExplodeCompressionProvider.cs | 3 +-- .../{ => Default}/GZipCompressionProvider.cs | 2 +- .../{ => Default}/LZipCompressionProvider.cs | 2 +- .../{ => Default}/LzmaCompressingProvider.cs | 3 +-- .../{ => Default}/LzwCompressionProvider.cs | 3 +-- .../{ => Default}/PpmdCompressingProvider.cs | 3 +-- .../{ => Default}/Reduce1CompressionProvider.cs | 3 +-- .../{ => Default}/Reduce2CompressionProvider.cs | 3 +-- .../{ => Default}/Reduce3CompressionProvider.cs | 3 +-- .../{ => Default}/Reduce4CompressionProvider.cs | 3 +-- .../{ => Default}/ShrinkCompressionProvider.cs | 2 +- .../{ => Default}/XzCompressionProvider.cs | 3 +-- .../ZStandardCompressionProvider.cs | 3 +-- .../SystemDeflateCompressionProvider.cs | 16 +++++++--------- .../SystemGZipCompressionProvider.cs | 16 +++++++--------- .../CompressionProviderTests.cs | 2 ++ 20 files changed, 33 insertions(+), 44 deletions(-) rename src/SharpCompress/Providers/{ => Default}/BZip2CompressionProvider.cs (96%) rename src/SharpCompress/Providers/{ => Default}/Deflate64CompressionProvider.cs (97%) rename src/SharpCompress/Providers/{ => Default}/DeflateCompressionProvider.cs (96%) rename src/SharpCompress/Providers/{ => Default}/ExplodeCompressionProvider.cs (97%) rename src/SharpCompress/Providers/{ => Default}/GZipCompressionProvider.cs (96%) rename src/SharpCompress/Providers/{ => Default}/LZipCompressionProvider.cs (96%) rename src/SharpCompress/Providers/{ => Default}/LzmaCompressingProvider.cs (97%) rename src/SharpCompress/Providers/{ => Default}/LzwCompressionProvider.cs (95%) rename src/SharpCompress/Providers/{ => Default}/PpmdCompressingProvider.cs (97%) rename src/SharpCompress/Providers/{ => Default}/Reduce1CompressionProvider.cs (96%) rename src/SharpCompress/Providers/{ => Default}/Reduce2CompressionProvider.cs (96%) rename src/SharpCompress/Providers/{ => Default}/Reduce3CompressionProvider.cs (96%) rename src/SharpCompress/Providers/{ => Default}/Reduce4CompressionProvider.cs (96%) rename src/SharpCompress/Providers/{ => Default}/ShrinkCompressionProvider.cs (97%) rename src/SharpCompress/Providers/{ => Default}/XzCompressionProvider.cs (95%) rename src/SharpCompress/Providers/{ => Default}/ZStandardCompressionProvider.cs (94%) rename src/SharpCompress/Providers/{ => System}/SystemDeflateCompressionProvider.cs (76%) rename src/SharpCompress/Providers/{ => System}/SystemGZipCompressionProvider.cs (76%) diff --git a/src/SharpCompress/Providers/CompressionProviderRegistry.cs b/src/SharpCompress/Providers/CompressionProviderRegistry.cs index e0103cad..c6e534fe 100644 --- a/src/SharpCompress/Providers/CompressionProviderRegistry.cs +++ b/src/SharpCompress/Providers/CompressionProviderRegistry.cs @@ -2,6 +2,7 @@ using System; using System.Collections.Generic; using System.IO; using SharpCompress.Common; +using SharpCompress.Providers.Default; namespace SharpCompress.Providers; diff --git a/src/SharpCompress/Providers/BZip2CompressionProvider.cs b/src/SharpCompress/Providers/Default/BZip2CompressionProvider.cs similarity index 96% rename from src/SharpCompress/Providers/BZip2CompressionProvider.cs rename to src/SharpCompress/Providers/Default/BZip2CompressionProvider.cs index 5f6036ea..64f5c280 100644 --- a/src/SharpCompress/Providers/BZip2CompressionProvider.cs +++ b/src/SharpCompress/Providers/Default/BZip2CompressionProvider.cs @@ -3,7 +3,7 @@ using SharpCompress.Common; using SharpCompress.Compressors; using SharpCompress.Compressors.BZip2; -namespace SharpCompress.Providers; +namespace SharpCompress.Providers.Default; /// /// Provides BZip2 compression using SharpCompress's internal implementation. diff --git a/src/SharpCompress/Providers/Deflate64CompressionProvider.cs b/src/SharpCompress/Providers/Default/Deflate64CompressionProvider.cs similarity index 97% rename from src/SharpCompress/Providers/Deflate64CompressionProvider.cs rename to src/SharpCompress/Providers/Default/Deflate64CompressionProvider.cs index 9533bb61..e4acbf04 100644 --- a/src/SharpCompress/Providers/Deflate64CompressionProvider.cs +++ b/src/SharpCompress/Providers/Default/Deflate64CompressionProvider.cs @@ -4,7 +4,7 @@ using SharpCompress.Common; using SharpCompress.Compressors; using SharpCompress.Compressors.Deflate64; -namespace SharpCompress.Providers; +namespace SharpCompress.Providers.Default; /// /// Provides Deflate64 decompression using SharpCompress's internal implementation. diff --git a/src/SharpCompress/Providers/DeflateCompressionProvider.cs b/src/SharpCompress/Providers/Default/DeflateCompressionProvider.cs similarity index 96% rename from src/SharpCompress/Providers/DeflateCompressionProvider.cs rename to src/SharpCompress/Providers/Default/DeflateCompressionProvider.cs index 66f7e83e..12491633 100644 --- a/src/SharpCompress/Providers/DeflateCompressionProvider.cs +++ b/src/SharpCompress/Providers/Default/DeflateCompressionProvider.cs @@ -3,7 +3,7 @@ using SharpCompress.Common; using SharpCompress.Compressors; using SharpCompress.Compressors.Deflate; -namespace SharpCompress.Providers; +namespace SharpCompress.Providers.Default; /// /// Provides Deflate compression using SharpCompress's internal implementation. diff --git a/src/SharpCompress/Providers/ExplodeCompressionProvider.cs b/src/SharpCompress/Providers/Default/ExplodeCompressionProvider.cs similarity index 97% rename from src/SharpCompress/Providers/ExplodeCompressionProvider.cs rename to src/SharpCompress/Providers/Default/ExplodeCompressionProvider.cs index d243aa12..2b2db856 100644 --- a/src/SharpCompress/Providers/ExplodeCompressionProvider.cs +++ b/src/SharpCompress/Providers/Default/ExplodeCompressionProvider.cs @@ -2,10 +2,9 @@ using System; using System.IO; using SharpCompress.Common; using SharpCompress.Common.Zip.Headers; -using SharpCompress.Compressors; using SharpCompress.Compressors.Explode; -namespace SharpCompress.Providers; +namespace SharpCompress.Providers.Default; /// /// Provides Explode decompression using SharpCompress's internal implementation. diff --git a/src/SharpCompress/Providers/GZipCompressionProvider.cs b/src/SharpCompress/Providers/Default/GZipCompressionProvider.cs similarity index 96% rename from src/SharpCompress/Providers/GZipCompressionProvider.cs rename to src/SharpCompress/Providers/Default/GZipCompressionProvider.cs index ed52fd72..a8ba9fd8 100644 --- a/src/SharpCompress/Providers/GZipCompressionProvider.cs +++ b/src/SharpCompress/Providers/Default/GZipCompressionProvider.cs @@ -3,7 +3,7 @@ using SharpCompress.Common; using SharpCompress.Compressors; using SharpCompress.Compressors.Deflate; -namespace SharpCompress.Providers; +namespace SharpCompress.Providers.Default; /// /// Provides GZip compression using SharpCompress's internal implementation. diff --git a/src/SharpCompress/Providers/LZipCompressionProvider.cs b/src/SharpCompress/Providers/Default/LZipCompressionProvider.cs similarity index 96% rename from src/SharpCompress/Providers/LZipCompressionProvider.cs rename to src/SharpCompress/Providers/Default/LZipCompressionProvider.cs index e0a993d2..4d4a9d68 100644 --- a/src/SharpCompress/Providers/LZipCompressionProvider.cs +++ b/src/SharpCompress/Providers/Default/LZipCompressionProvider.cs @@ -3,7 +3,7 @@ using SharpCompress.Common; using SharpCompress.Compressors; using SharpCompress.Compressors.LZMA; -namespace SharpCompress.Providers; +namespace SharpCompress.Providers.Default; /// /// Provides LZip compression using SharpCompress's internal implementation. diff --git a/src/SharpCompress/Providers/LzmaCompressingProvider.cs b/src/SharpCompress/Providers/Default/LzmaCompressingProvider.cs similarity index 97% rename from src/SharpCompress/Providers/LzmaCompressingProvider.cs rename to src/SharpCompress/Providers/Default/LzmaCompressingProvider.cs index 2e5eb6fe..aeb1c6b0 100644 --- a/src/SharpCompress/Providers/LzmaCompressingProvider.cs +++ b/src/SharpCompress/Providers/Default/LzmaCompressingProvider.cs @@ -1,10 +1,9 @@ using System; using System.IO; using SharpCompress.Common; -using SharpCompress.Compressors; using SharpCompress.Compressors.LZMA; -namespace SharpCompress.Providers; +namespace SharpCompress.Providers.Default; /// /// Provides LZMA compression and decompression using SharpCompress's internal implementation. diff --git a/src/SharpCompress/Providers/LzwCompressionProvider.cs b/src/SharpCompress/Providers/Default/LzwCompressionProvider.cs similarity index 95% rename from src/SharpCompress/Providers/LzwCompressionProvider.cs rename to src/SharpCompress/Providers/Default/LzwCompressionProvider.cs index c4cd2272..2427c5e8 100644 --- a/src/SharpCompress/Providers/LzwCompressionProvider.cs +++ b/src/SharpCompress/Providers/Default/LzwCompressionProvider.cs @@ -1,10 +1,9 @@ using System; using System.IO; using SharpCompress.Common; -using SharpCompress.Compressors; using SharpCompress.Compressors.Lzw; -namespace SharpCompress.Providers; +namespace SharpCompress.Providers.Default; /// /// Provides LZW compression decompression using SharpCompress's internal implementation. diff --git a/src/SharpCompress/Providers/PpmdCompressingProvider.cs b/src/SharpCompress/Providers/Default/PpmdCompressingProvider.cs similarity index 97% rename from src/SharpCompress/Providers/PpmdCompressingProvider.cs rename to src/SharpCompress/Providers/Default/PpmdCompressingProvider.cs index fbc3958f..220fa1c1 100644 --- a/src/SharpCompress/Providers/PpmdCompressingProvider.cs +++ b/src/SharpCompress/Providers/Default/PpmdCompressingProvider.cs @@ -1,10 +1,9 @@ using System; using System.IO; using SharpCompress.Common; -using SharpCompress.Compressors; using SharpCompress.Compressors.PPMd; -namespace SharpCompress.Providers; +namespace SharpCompress.Providers.Default; /// /// Provides PPMd compression and decompression using SharpCompress's internal implementation. diff --git a/src/SharpCompress/Providers/Reduce1CompressionProvider.cs b/src/SharpCompress/Providers/Default/Reduce1CompressionProvider.cs similarity index 96% rename from src/SharpCompress/Providers/Reduce1CompressionProvider.cs rename to src/SharpCompress/Providers/Default/Reduce1CompressionProvider.cs index 4bc0301e..0303bf88 100644 --- a/src/SharpCompress/Providers/Reduce1CompressionProvider.cs +++ b/src/SharpCompress/Providers/Default/Reduce1CompressionProvider.cs @@ -1,10 +1,9 @@ using System; using System.IO; using SharpCompress.Common; -using SharpCompress.Compressors; using SharpCompress.Compressors.Reduce; -namespace SharpCompress.Providers; +namespace SharpCompress.Providers.Default; /// /// Provides Reduce1 decompression using SharpCompress's internal implementation. diff --git a/src/SharpCompress/Providers/Reduce2CompressionProvider.cs b/src/SharpCompress/Providers/Default/Reduce2CompressionProvider.cs similarity index 96% rename from src/SharpCompress/Providers/Reduce2CompressionProvider.cs rename to src/SharpCompress/Providers/Default/Reduce2CompressionProvider.cs index 11726e5a..44eb1971 100644 --- a/src/SharpCompress/Providers/Reduce2CompressionProvider.cs +++ b/src/SharpCompress/Providers/Default/Reduce2CompressionProvider.cs @@ -1,10 +1,9 @@ using System; using System.IO; using SharpCompress.Common; -using SharpCompress.Compressors; using SharpCompress.Compressors.Reduce; -namespace SharpCompress.Providers; +namespace SharpCompress.Providers.Default; /// /// Provides Reduce2 decompression using SharpCompress's internal implementation. diff --git a/src/SharpCompress/Providers/Reduce3CompressionProvider.cs b/src/SharpCompress/Providers/Default/Reduce3CompressionProvider.cs similarity index 96% rename from src/SharpCompress/Providers/Reduce3CompressionProvider.cs rename to src/SharpCompress/Providers/Default/Reduce3CompressionProvider.cs index f303a2b3..91cd8d32 100644 --- a/src/SharpCompress/Providers/Reduce3CompressionProvider.cs +++ b/src/SharpCompress/Providers/Default/Reduce3CompressionProvider.cs @@ -1,10 +1,9 @@ using System; using System.IO; using SharpCompress.Common; -using SharpCompress.Compressors; using SharpCompress.Compressors.Reduce; -namespace SharpCompress.Providers; +namespace SharpCompress.Providers.Default; /// /// Provides Reduce3 decompression using SharpCompress's internal implementation. diff --git a/src/SharpCompress/Providers/Reduce4CompressionProvider.cs b/src/SharpCompress/Providers/Default/Reduce4CompressionProvider.cs similarity index 96% rename from src/SharpCompress/Providers/Reduce4CompressionProvider.cs rename to src/SharpCompress/Providers/Default/Reduce4CompressionProvider.cs index 86641159..3f668709 100644 --- a/src/SharpCompress/Providers/Reduce4CompressionProvider.cs +++ b/src/SharpCompress/Providers/Default/Reduce4CompressionProvider.cs @@ -1,10 +1,9 @@ using System; using System.IO; using SharpCompress.Common; -using SharpCompress.Compressors; using SharpCompress.Compressors.Reduce; -namespace SharpCompress.Providers; +namespace SharpCompress.Providers.Default; /// /// Provides Reduce4 decompression using SharpCompress's internal implementation. diff --git a/src/SharpCompress/Providers/ShrinkCompressionProvider.cs b/src/SharpCompress/Providers/Default/ShrinkCompressionProvider.cs similarity index 97% rename from src/SharpCompress/Providers/ShrinkCompressionProvider.cs rename to src/SharpCompress/Providers/Default/ShrinkCompressionProvider.cs index f0ee6ca1..4a863178 100644 --- a/src/SharpCompress/Providers/ShrinkCompressionProvider.cs +++ b/src/SharpCompress/Providers/Default/ShrinkCompressionProvider.cs @@ -4,7 +4,7 @@ using SharpCompress.Common; using SharpCompress.Compressors; using SharpCompress.Compressors.Shrink; -namespace SharpCompress.Providers; +namespace SharpCompress.Providers.Default; /// /// Provides Shrink decompression using SharpCompress's internal implementation. diff --git a/src/SharpCompress/Providers/XzCompressionProvider.cs b/src/SharpCompress/Providers/Default/XzCompressionProvider.cs similarity index 95% rename from src/SharpCompress/Providers/XzCompressionProvider.cs rename to src/SharpCompress/Providers/Default/XzCompressionProvider.cs index eaf5ebc9..417c7e38 100644 --- a/src/SharpCompress/Providers/XzCompressionProvider.cs +++ b/src/SharpCompress/Providers/Default/XzCompressionProvider.cs @@ -1,10 +1,9 @@ using System; using System.IO; using SharpCompress.Common; -using SharpCompress.Compressors; using SharpCompress.Compressors.Xz; -namespace SharpCompress.Providers; +namespace SharpCompress.Providers.Default; /// /// Provides XZ compression decompression using SharpCompress's internal implementation. diff --git a/src/SharpCompress/Providers/ZStandardCompressionProvider.cs b/src/SharpCompress/Providers/Default/ZStandardCompressionProvider.cs similarity index 94% rename from src/SharpCompress/Providers/ZStandardCompressionProvider.cs rename to src/SharpCompress/Providers/Default/ZStandardCompressionProvider.cs index 155eaf6f..0ff08b2c 100644 --- a/src/SharpCompress/Providers/ZStandardCompressionProvider.cs +++ b/src/SharpCompress/Providers/Default/ZStandardCompressionProvider.cs @@ -1,9 +1,8 @@ using System.IO; using SharpCompress.Common; -using SharpCompress.Compressors; using ZStd = SharpCompress.Compressors.ZStandard; -namespace SharpCompress.Providers; +namespace SharpCompress.Providers.Default; /// /// Provides ZStandard compression using SharpCompress's internal implementation. diff --git a/src/SharpCompress/Providers/SystemDeflateCompressionProvider.cs b/src/SharpCompress/Providers/System/SystemDeflateCompressionProvider.cs similarity index 76% rename from src/SharpCompress/Providers/SystemDeflateCompressionProvider.cs rename to src/SharpCompress/Providers/System/SystemDeflateCompressionProvider.cs index a9b2051d..fdd6dc94 100644 --- a/src/SharpCompress/Providers/SystemDeflateCompressionProvider.cs +++ b/src/SharpCompress/Providers/System/SystemDeflateCompressionProvider.cs @@ -1,10 +1,8 @@ -using System; using System.IO; using System.IO.Compression; using SharpCompress.Common; -using SharpCompress.Compressors; -namespace SharpCompress.Providers; +namespace SharpCompress.Providers.System; /// /// Provides Deflate compression using System.IO.Compression.DeflateStream. @@ -39,7 +37,7 @@ public sealed class SystemDeflateCompressionProvider : ICompressionProvider { return new DeflateStream( source, - System.IO.Compression.CompressionMode.Decompress, + global::System.IO.Compression.CompressionMode.Decompress, leaveOpen: true ); } @@ -53,17 +51,17 @@ public sealed class SystemDeflateCompressionProvider : ICompressionProvider /// /// Maps SharpCompress compression level (0-9) to BCL CompressionLevel. /// - private static System.IO.Compression.CompressionLevel MapCompressionLevel(int level) + private static global::System.IO.Compression.CompressionLevel MapCompressionLevel(int level) { // Map 0-9 to appropriate BCL levels return level switch { - 0 => System.IO.Compression.CompressionLevel.NoCompression, - <= 2 => System.IO.Compression.CompressionLevel.Fastest, + 0 => global::System.IO.Compression.CompressionLevel.NoCompression, + <= 2 => global::System.IO.Compression.CompressionLevel.Fastest, #if NET7_0_OR_GREATER - >= 8 => System.IO.Compression.CompressionLevel.SmallestSize, + >= 8 => global::System.IO.Compression.CompressionLevel.SmallestSize, #endif - _ => System.IO.Compression.CompressionLevel.Optimal, + _ => global::System.IO.Compression.CompressionLevel.Optimal, }; } } diff --git a/src/SharpCompress/Providers/SystemGZipCompressionProvider.cs b/src/SharpCompress/Providers/System/SystemGZipCompressionProvider.cs similarity index 76% rename from src/SharpCompress/Providers/SystemGZipCompressionProvider.cs rename to src/SharpCompress/Providers/System/SystemGZipCompressionProvider.cs index 031e111d..33c24d40 100644 --- a/src/SharpCompress/Providers/SystemGZipCompressionProvider.cs +++ b/src/SharpCompress/Providers/System/SystemGZipCompressionProvider.cs @@ -1,10 +1,8 @@ -using System; using System.IO; using System.IO.Compression; using SharpCompress.Common; -using SharpCompress.Compressors; -namespace SharpCompress.Providers; +namespace SharpCompress.Providers.System; /// /// Provides GZip compression using System.IO.Compression.GZipStream. @@ -39,7 +37,7 @@ public sealed class SystemGZipCompressionProvider : ICompressionProvider { return new GZipStream( source, - System.IO.Compression.CompressionMode.Decompress, + global::System.IO.Compression.CompressionMode.Decompress, leaveOpen: true ); } @@ -53,17 +51,17 @@ public sealed class SystemGZipCompressionProvider : ICompressionProvider /// /// Maps SharpCompress compression level (0-9) to BCL CompressionLevel. /// - private static System.IO.Compression.CompressionLevel MapCompressionLevel(int level) + private static global::System.IO.Compression.CompressionLevel MapCompressionLevel(int level) { // Map 0-9 to appropriate BCL levels return level switch { - 0 => System.IO.Compression.CompressionLevel.NoCompression, - <= 2 => System.IO.Compression.CompressionLevel.Fastest, + 0 => global::System.IO.Compression.CompressionLevel.NoCompression, + <= 2 => global::System.IO.Compression.CompressionLevel.Fastest, #if NET7_0_OR_GREATER - >= 8 => System.IO.Compression.CompressionLevel.SmallestSize, + >= 8 => global::System.IO.Compression.CompressionLevel.SmallestSize, #endif - _ => System.IO.Compression.CompressionLevel.Optimal, + _ => global::System.IO.Compression.CompressionLevel.Optimal, }; } } diff --git a/tests/SharpCompress.Test/CompressionProviderTests.cs b/tests/SharpCompress.Test/CompressionProviderTests.cs index cceb6acc..b0059b0a 100644 --- a/tests/SharpCompress.Test/CompressionProviderTests.cs +++ b/tests/SharpCompress.Test/CompressionProviderTests.cs @@ -6,6 +6,8 @@ using SharpCompress.Common; using SharpCompress.Compressors; using SharpCompress.IO; using SharpCompress.Providers; +using SharpCompress.Providers.Default; +using SharpCompress.Providers.System; using SharpCompress.Readers; using SharpCompress.Readers.Tar; using SharpCompress.Writers;