├── .gitee ├── ISSUE_TEMPLATE.zh-CN.md └── PULL_REQUEST_TEMPLATE.zh-CN.md ├── .gitignore ├── LICENSE ├── PRINCIPLE.md ├── README.md ├── benchmarks ├── BENCHMARK.md └── Jaina.Benchmarks │ ├── HashSet_VS_List.cs │ ├── Jaina.Benchmarks.csproj │ ├── Program.cs │ └── Wrapper.cs ├── drawio ├── Jaina.drawio ├── Jaina.drawio.png └── README.md ├── samples ├── Jaina.Samples │ ├── Controllers │ │ └── ToDoController.cs │ ├── Jaina.Samples.csproj │ ├── Program.cs │ ├── Properties │ │ └── launchSettings.json │ ├── ToDoEventSubscriber.cs │ ├── appsettings.Development.json │ └── appsettings.json └── README.md ├── src ├── .editorconfig ├── Directory.Build.props ├── Jaina.sln └── Jaina │ ├── Attributes │ └── EventSubscribeAttribute.cs │ ├── Builders │ └── EventBusOptionsBuilder.cs │ ├── Constants │ └── EventSubscribeOperates.cs │ ├── Contexts │ ├── EventHandlerContext.cs │ ├── EventHandlerExecutedContext.cs │ └── EventHandlerExecutingContext.cs │ ├── Dependencies │ ├── IEventPublisher.cs │ └── IEventSubscriber.cs │ ├── Events │ └── EventHandlerEventArgs.cs │ ├── Executors │ └── IEventHandlerExecutor.cs │ ├── Extensions │ ├── EventBusExtensitions.cs │ └── EventBusServiceCollectionExtensions.cs │ ├── Factories │ ├── EventBusFactory.cs │ └── IEventBusFactory.cs │ ├── HostedServices │ └── EventBusHostedService.cs │ ├── Internal │ ├── ChannelEventPublisher.cs │ ├── Logging.cs │ └── Retry.cs │ ├── Jaina.csproj │ ├── Jaina.sln │ ├── Monitors │ └── IEventHandlerMonitor.cs │ ├── Policies │ └── IEventFallbackPolicy.cs │ ├── Sources │ ├── ChannelEventSource.cs │ ├── EventSubscribeOperateSource.cs │ └── IEventSource.cs │ ├── Storers │ ├── ChannelEventSourceStorer.cs │ └── IEventSourceStorer.cs │ └── Wrappers │ └── EventHandlerWrapper.cs └── tests ├── Jaina.UnitTests ├── Internals │ ├── TestEnum.cs │ ├── TestEventHandlerExecutor.cs │ ├── TestEventHandlerMonitor.cs │ ├── TestEventSourceStorer.cs │ ├── TestEventSubscriber.cs │ ├── TestOtherEventSubscriber.cs │ └── ThreadStaticValue.cs ├── Jaina.UnitTests.csproj └── JainaUnitTest.cs └── README.md /.gitee/ISSUE_TEMPLATE.zh-CN.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/.gitee/ISSUE_TEMPLATE.zh-CN.md -------------------------------------------------------------------------------- /.gitee/PULL_REQUEST_TEMPLATE.zh-CN.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/.gitee/PULL_REQUEST_TEMPLATE.zh-CN.md -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/LICENSE -------------------------------------------------------------------------------- /PRINCIPLE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/PRINCIPLE.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/README.md -------------------------------------------------------------------------------- /benchmarks/BENCHMARK.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/benchmarks/BENCHMARK.md -------------------------------------------------------------------------------- /benchmarks/Jaina.Benchmarks/HashSet_VS_List.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/benchmarks/Jaina.Benchmarks/HashSet_VS_List.cs -------------------------------------------------------------------------------- /benchmarks/Jaina.Benchmarks/Jaina.Benchmarks.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/benchmarks/Jaina.Benchmarks/Jaina.Benchmarks.csproj -------------------------------------------------------------------------------- /benchmarks/Jaina.Benchmarks/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/benchmarks/Jaina.Benchmarks/Program.cs -------------------------------------------------------------------------------- /benchmarks/Jaina.Benchmarks/Wrapper.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/benchmarks/Jaina.Benchmarks/Wrapper.cs -------------------------------------------------------------------------------- /drawio/Jaina.drawio: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/drawio/Jaina.drawio -------------------------------------------------------------------------------- /drawio/Jaina.drawio.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/drawio/Jaina.drawio.png -------------------------------------------------------------------------------- /drawio/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/drawio/README.md -------------------------------------------------------------------------------- /samples/Jaina.Samples/Controllers/ToDoController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/samples/Jaina.Samples/Controllers/ToDoController.cs -------------------------------------------------------------------------------- /samples/Jaina.Samples/Jaina.Samples.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/samples/Jaina.Samples/Jaina.Samples.csproj -------------------------------------------------------------------------------- /samples/Jaina.Samples/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/samples/Jaina.Samples/Program.cs -------------------------------------------------------------------------------- /samples/Jaina.Samples/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/samples/Jaina.Samples/Properties/launchSettings.json -------------------------------------------------------------------------------- /samples/Jaina.Samples/ToDoEventSubscriber.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/samples/Jaina.Samples/ToDoEventSubscriber.cs -------------------------------------------------------------------------------- /samples/Jaina.Samples/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/samples/Jaina.Samples/appsettings.Development.json -------------------------------------------------------------------------------- /samples/Jaina.Samples/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/samples/Jaina.Samples/appsettings.json -------------------------------------------------------------------------------- /samples/README.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/.editorconfig -------------------------------------------------------------------------------- /src/Directory.Build.props: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Directory.Build.props -------------------------------------------------------------------------------- /src/Jaina.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina.sln -------------------------------------------------------------------------------- /src/Jaina/Attributes/EventSubscribeAttribute.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Attributes/EventSubscribeAttribute.cs -------------------------------------------------------------------------------- /src/Jaina/Builders/EventBusOptionsBuilder.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Builders/EventBusOptionsBuilder.cs -------------------------------------------------------------------------------- /src/Jaina/Constants/EventSubscribeOperates.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Constants/EventSubscribeOperates.cs -------------------------------------------------------------------------------- /src/Jaina/Contexts/EventHandlerContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Contexts/EventHandlerContext.cs -------------------------------------------------------------------------------- /src/Jaina/Contexts/EventHandlerExecutedContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Contexts/EventHandlerExecutedContext.cs -------------------------------------------------------------------------------- /src/Jaina/Contexts/EventHandlerExecutingContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Contexts/EventHandlerExecutingContext.cs -------------------------------------------------------------------------------- /src/Jaina/Dependencies/IEventPublisher.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Dependencies/IEventPublisher.cs -------------------------------------------------------------------------------- /src/Jaina/Dependencies/IEventSubscriber.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Dependencies/IEventSubscriber.cs -------------------------------------------------------------------------------- /src/Jaina/Events/EventHandlerEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Events/EventHandlerEventArgs.cs -------------------------------------------------------------------------------- /src/Jaina/Executors/IEventHandlerExecutor.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Executors/IEventHandlerExecutor.cs -------------------------------------------------------------------------------- /src/Jaina/Extensions/EventBusExtensitions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Extensions/EventBusExtensitions.cs -------------------------------------------------------------------------------- /src/Jaina/Extensions/EventBusServiceCollectionExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Extensions/EventBusServiceCollectionExtensions.cs -------------------------------------------------------------------------------- /src/Jaina/Factories/EventBusFactory.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Factories/EventBusFactory.cs -------------------------------------------------------------------------------- /src/Jaina/Factories/IEventBusFactory.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Factories/IEventBusFactory.cs -------------------------------------------------------------------------------- /src/Jaina/HostedServices/EventBusHostedService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/HostedServices/EventBusHostedService.cs -------------------------------------------------------------------------------- /src/Jaina/Internal/ChannelEventPublisher.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Internal/ChannelEventPublisher.cs -------------------------------------------------------------------------------- /src/Jaina/Internal/Logging.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Internal/Logging.cs -------------------------------------------------------------------------------- /src/Jaina/Internal/Retry.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Internal/Retry.cs -------------------------------------------------------------------------------- /src/Jaina/Jaina.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Jaina.csproj -------------------------------------------------------------------------------- /src/Jaina/Jaina.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Jaina.sln -------------------------------------------------------------------------------- /src/Jaina/Monitors/IEventHandlerMonitor.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Monitors/IEventHandlerMonitor.cs -------------------------------------------------------------------------------- /src/Jaina/Policies/IEventFallbackPolicy.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Policies/IEventFallbackPolicy.cs -------------------------------------------------------------------------------- /src/Jaina/Sources/ChannelEventSource.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Sources/ChannelEventSource.cs -------------------------------------------------------------------------------- /src/Jaina/Sources/EventSubscribeOperateSource.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Sources/EventSubscribeOperateSource.cs -------------------------------------------------------------------------------- /src/Jaina/Sources/IEventSource.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Sources/IEventSource.cs -------------------------------------------------------------------------------- /src/Jaina/Storers/ChannelEventSourceStorer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Storers/ChannelEventSourceStorer.cs -------------------------------------------------------------------------------- /src/Jaina/Storers/IEventSourceStorer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Storers/IEventSourceStorer.cs -------------------------------------------------------------------------------- /src/Jaina/Wrappers/EventHandlerWrapper.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/src/Jaina/Wrappers/EventHandlerWrapper.cs -------------------------------------------------------------------------------- /tests/Jaina.UnitTests/Internals/TestEnum.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/tests/Jaina.UnitTests/Internals/TestEnum.cs -------------------------------------------------------------------------------- /tests/Jaina.UnitTests/Internals/TestEventHandlerExecutor.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/tests/Jaina.UnitTests/Internals/TestEventHandlerExecutor.cs -------------------------------------------------------------------------------- /tests/Jaina.UnitTests/Internals/TestEventHandlerMonitor.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/tests/Jaina.UnitTests/Internals/TestEventHandlerMonitor.cs -------------------------------------------------------------------------------- /tests/Jaina.UnitTests/Internals/TestEventSourceStorer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/tests/Jaina.UnitTests/Internals/TestEventSourceStorer.cs -------------------------------------------------------------------------------- /tests/Jaina.UnitTests/Internals/TestEventSubscriber.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/tests/Jaina.UnitTests/Internals/TestEventSubscriber.cs -------------------------------------------------------------------------------- /tests/Jaina.UnitTests/Internals/TestOtherEventSubscriber.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/tests/Jaina.UnitTests/Internals/TestOtherEventSubscriber.cs -------------------------------------------------------------------------------- /tests/Jaina.UnitTests/Internals/ThreadStaticValue.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/tests/Jaina.UnitTests/Internals/ThreadStaticValue.cs -------------------------------------------------------------------------------- /tests/Jaina.UnitTests/Jaina.UnitTests.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/tests/Jaina.UnitTests/Jaina.UnitTests.csproj -------------------------------------------------------------------------------- /tests/Jaina.UnitTests/JainaUnitTest.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/monksoul/Jaina/HEAD/tests/Jaina.UnitTests/JainaUnitTest.cs -------------------------------------------------------------------------------- /tests/README.md: -------------------------------------------------------------------------------- 1 | --------------------------------------------------------------------------------