Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Akka.Persistence: Add support for adding IEventAdapter #64

Closed
Aaronontheweb opened this issue Jun 15, 2022 · 0 comments · Fixed by #67
Closed

Akka.Persistence: Add support for adding IEventAdapter #64

Aaronontheweb opened this issue Jun 15, 2022 · 0 comments · Fixed by #67

Comments

@Aaronontheweb
Copy link
Member

Is your feature request related to a problem? Please describe.

It'd be great if we had a strongly typed way of adding read / write IEventAdapter instances to Akka.Persistence through Akka.Hosting.

Describe the solution you'd like

We'd need a stand-alone Akka.Persistence.Hosting binary since the event adapters aren't specific to any journal implementation, and it'd need to have a method like this:

builder.WithEventAdapter<TAdapter>(...) where TAdapter:IEventAdapter

Behind the scenes this could build up the appropriate HOCON, extracted from the strongly typed arguments, without needing to add any new Setup types to Akka.NET.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

@Aaronontheweb Aaronontheweb added this to the 0.3.3 milestone Jun 16, 2022
Aaronontheweb added a commit to Aaronontheweb/Akka.Hosting that referenced this issue Jun 16, 2022
Arkatufus pushed a commit that referenced this issue Jun 16, 2022
* [WIP] Adding Akka.Persistence.Hosting module

working on #64

* fixed up Akka.Persistence.Hosting

* added reference to Akka.Persistence.Hosting from Akka.Cluster.Hosting

To make it easier to configure where it's likely to be used.

* stubbing out unit tests

* fixed type binding issue with `AkkaPersistenceJournalBuilder`

* completed unit tests

* added journal configurator to both Postgres and SQL Server

Also made `PersistenceMode` part of Akka.Persistence.Hosting, rather than lib-specific.
Aaronontheweb added a commit that referenced this issue Jun 16, 2022
## [0.3.3] / 16 June 2022
- [Added common `Akka.Persistence.Hosting` package to make it easier to add `IEventAdapter`s to journals](#64).
- [Made Akka.Persistence.SqlServer.Hosting and Akka.Persistence.PostgreSql.Hosting both take a shared overload / dependency on Akka.Persistence.Hosting](#67) - did this to make it easier to add `IEventAdapter`s to each of those.
- [Add Akka.Cluster.Tools.Client support](#66) - now possible to start `ClusterClient` and `ClusterClientReceptionist`s easily from Akka.Hosting.
Aaronontheweb added a commit that referenced this issue Jun 16, 2022
## [0.3.3] / 16 June 2022
- [Added common `Akka.Persistence.Hosting` package to make it easier to add `IEventAdapter`s to journals](#64).
- [Made Akka.Persistence.SqlServer.Hosting and Akka.Persistence.PostgreSql.Hosting both take a shared overload / dependency on Akka.Persistence.Hosting](#67) - did this to make it easier to add `IEventAdapter`s to each of those.
- [Add Akka.Cluster.Tools.Client support](#66) - now possible to start `ClusterClient` and `ClusterClientReceptionist`s easily from Akka.Hosting.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant