Baubit.Aggregation 2025.23.1

dotnet add package Baubit.Aggregation --version 2025.23.1
                    
NuGet\Install-Package Baubit.Aggregation -Version 2025.23.1
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Baubit.Aggregation" Version="2025.23.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Baubit.Aggregation" Version="2025.23.1" />
                    
Directory.Packages.props
<PackageReference Include="Baubit.Aggregation" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Baubit.Aggregation --version 2025.23.1
                    
#r "nuget: Baubit.Aggregation, 2025.23.1"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Baubit.Aggregation@2025.23.1
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Baubit.Aggregation&version=2025.23.1
                    
Install as a Cake Addin
#tool nuget:?package=Baubit.Aggregation&version=2025.23.1
                    
Install as a Cake Tool

A simple event aggregator that supports <a href="https://www.google.com/search?q=asynchronous+event+buffering" target="_blank" rel="noopener noreferrer">asynchronous event buffering</a>. Provides a <a href="https://github.com/pnagoorkar/Baubit" target="_blank" rel="noopener noreferrer">Baubit</a> module

Get Started

Unbounded event aggregator<br> myConfig.json

{
    "modules": [
        {
            "type": "Baubit.Aggregation.DI.Unbounded.Module`1[[MyLib.TestEvent, MyLib]], Baubit.Aggregation",
            "configuration": {

            }
        }
    ]
}

Bounded event aggregator<br> myConfig.json

{
    "modules": [
        {
            "type": "Baubit.Aggregation.DI.Bounded.Module`1[[MyLib.TestEvent, MyLib]], Baubit.Aggregation",
            "configuration": {
                "Capacity": 10,
                "FullMode": 0,
                "MaxWaitToWriteMS": 10
            }
        }
    ]
}

MyEventGenerator.cs

public class MyEventGenerator
{
    private IEventAggregator<TestEvent> _eventAggregator;
    public MyEventGenerator(IEventAggregator<TestEvent> eventAggregator)
    {
        _eventAggregator = eventAggregator
    }

    public void DoSomething()
    {
        //_eventAggregator.TryPublishAsync(...);
    }
}

MyEventObserver.cs

public class MyEventObserver : IObserver<TestEvent>
{
    private IDisposable subscription;
    public EventConsumer(IObservable<TestEvent> observable)
    {
        subscription = observable?.TrySubscribeAsync(this).GetAwaiter().GetResult().Value;
    }
    public void OnCompleted()
    {

    }

    public void OnError(Exception error)
    {

    }

    public virtual void OnNext(TestEvent next)
    {
        // handle next event
    }
}
Product Compatible and additional computed target framework versions.
.NET net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net9.0

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2025.23.1 169 6/4/2025
2025.18.4 170 5/7/2025
2025.15.4 115 4/12/2025
2025.14.5 185 4/6/2025
2025.14.2 181 3/31/2025
2025.11.1 113 3/14/2025
2025.8.4 150 2/17/2025