Shuttle.Core.Compression
12.0.1
Prefix Reserved
dotnet add package Shuttle.Core.Compression --version 12.0.1
NuGet\Install-Package Shuttle.Core.Compression -Version 12.0.1
<PackageReference Include="Shuttle.Core.Compression" Version="12.0.1" />
paket add Shuttle.Core.Compression --version 12.0.1
#r "nuget: Shuttle.Core.Compression, 12.0.1"
// Install Shuttle.Core.Compression as a Cake Addin #addin nuget:?package=Shuttle.Core.Compression&version=12.0.1 // Install Shuttle.Core.Compression as a Cake Tool #tool nuget:?package=Shuttle.Core.Compression&version=12.0.1
Shuttle.Core.Compression
PM> Install-Package Shuttle.Core.Compression
Provides a compression adapter through the ICompressionAlgorithm
interface.
Implementations available in this package:
DeflateCompressionAlgorithm
GZipCompressionAlgorithm
NullCompressionAlgorithm
There is also an ICompressionService
that acts as a central container for all registered ICompressionAlgorithm
implementations.
Configuration
In order to add compression:
services.AddCompression();
This will try to add the CompressionService
singleton.
In order to add specific compression algorithms use the relevant builder calls:
services.AddCompression(builder => {
builder.AddGzip();
builder.AddDeflate();
builder.AddNull();
});
Usage
The ICompressionService
can be injected into any class that requires compression services:
var algorithm = compressionService.Get("algorithm-name");
var compressed = await algorithm.CompressAsync(Encoding.UTF8.GetBytes("some data"));
var decompressed = await algorithm.DecompressAsync(compressed);
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
- Microsoft.Extensions.DependencyInjection (>= 7.0.0)
- Microsoft.IO.RecyclableMemoryStream (>= 2.2.1)
- Shuttle.Core.Contract (>= 11.0.0)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on Shuttle.Core.Compression:
Package | Downloads |
---|---|
Shuttle.Esb
Contains the core Shuttle.Esb assembly that should always be referenced when building Shuttle.Esb solutions. |
|
Shuttle.Recall
Event sourcing mechanism. |
GitHub repositories
This package is not used by any popular GitHub repositories.