Hyperbee.Pipeline
1.1.6-develop.240501134935
See the version list below for details.
dotnet add package Hyperbee.Pipeline --version 1.1.6-develop.240501134935
NuGet\Install-Package Hyperbee.Pipeline -Version 1.1.6-develop.240501134935
<PackageReference Include="Hyperbee.Pipeline" Version="1.1.6-develop.240501134935" />
paket add Hyperbee.Pipeline --version 1.1.6-develop.240501134935
#r "nuget: Hyperbee.Pipeline, 1.1.6-develop.240501134935"
// Install Hyperbee.Pipeline as a Cake Addin #addin nuget:?package=Hyperbee.Pipeline&version=1.1.6-develop.240501134935&prerelease // Install Hyperbee.Pipeline as a Cake Tool #tool nuget:?package=Hyperbee.Pipeline&version=1.1.6-develop.240501134935&prerelease
Hyperbee.Pipeline
The Hyperbee.Pipeline
library is a sophisticated tool for constructing asynchronous fluent pipelines in .NET. A pipeline, in this context, refers to a sequence of data processing elements arranged in series, where the output of one element serves as the input for the subsequent element.
A distinguishing feature of the Hyperbee.Pipeline
library, setting it apart from other pipeline implementations, is its inherent support for middleware and dependency injection. Middleware introduces a higher degree of flexibility and control over the data flow, enabling developers to manipulate data as it traverses through the pipeline. This can be leveraged to implement a variety of functionalities such as eventing, caching, logging, and more, thereby enhancing the customizability of the code.
Furthermore, the support for dependency injection facilitates efficient management of dependencies within the pipeline. This leads to code that is more maintainable and testable, thereby improving the overall quality of the software.
// Takes a string and returns a number
var question = PipelineFactory
.Start<string>()
.PipeIf((ctx, arg) => arg == "Adams", builder => builder
.Pipe((ctx, arg) => 42)
.Cancel()
)
.Pipe((ctx, arg) => 0)
.Build();
var answer1 = await question(new PipelineContext(), "Adams");
Assert.AreEqual(42, answer1);
var answer2 = await question(new PipelineContext(), "Smith");
Assert.AreEqual(0, answer2);
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. 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. |
-
net8.0
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 8.0.1)
- Microsoft.Extensions.Logging (>= 8.0.0)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on Hyperbee.Pipeline:
Package | Downloads |
---|---|
Hyperbee.Pipeline.Caching
Caching for Hyperbee.Pipelines async pipelines |
|
Hyperbee.Pipeline.Auth
Auth for Hyperbee.Pipelines async pipelines |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.2.0 | 130 | 8/9/2024 |
1.1.6 | 88 | 5/3/2024 |
1.1.6-develop.240702125702 | 58 | 7/2/2024 |
1.1.6-develop.240506164152 | 70 | 5/6/2024 |
1.1.6-develop.240501134935 | 43 | 5/1/2024 |
1.1.5 | 131 | 4/4/2024 |
1.1.5-develop.240501134801 | 44 | 5/1/2024 |
1.1.5-develop.240404193630 | 70 | 4/4/2024 |
1.1.5-develop.240404174526 | 62 | 4/4/2024 |
1.1.4 | 119 | 4/3/2024 |
1.1.4-develop.240403195311 | 54 | 4/3/2024 |
1.1.4-develop.240403194830 | 57 | 4/3/2024 |
1.1.3 | 107 | 4/3/2024 |
1.1.3-develop.240403161108 | 58 | 4/3/2024 |
1.1.3-develop.240403155732 | 57 | 4/3/2024 |
1.1.2 | 114 | 4/2/2024 |
1.1.2-develop.240403142422 | 57 | 4/3/2024 |
1.1.2-develop.240403141849 | 54 | 4/3/2024 |
1.1.1 | 106 | 4/2/2024 |
1.1.1-develop.240402201732 | 55 | 4/2/2024 |
1.1.0 | 125 | 4/1/2024 |
1.0.0 | 184 | 4/1/2024 |