Skip to content

Commit

Permalink
Various minor fixes in documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
Jonas Chapuis authored and jchapuis committed Nov 4, 2021
1 parent ae6853d commit 39bd13b
Show file tree
Hide file tree
Showing 4 changed files with 6 additions and 4 deletions.
2 changes: 1 addition & 1 deletion documentation/src/main/paradox/nutshell.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Implementations for various aspects of an entity are provided via abstract inter

- @ref:[Repository](repository.md): represents the ability to interact with a specific entity in the cluster
- @ref:[Entity](entity.md): ability to process a command by reading the state, writing events affecting the state and producing a reply
- @ref:[EventApplier](applier.md): ability to [*fold*](https://en.wikipedia.org/wiki/Fold_(higher-order_function)) events over entity state
- @ref:[EventApplier](applier.md): ability to [*fold*](https://en.wikipedia.org/wiki/Fold_\(higher-order_function\)) events over entity state
- @ref:[CommandProtocol](protocol.md): ability to translate entity algebra invocations into serializable commands and replies
- @ref:[Effector](effector.md): ability to produce side effects after event persistence, including passivation of the entity itself

Expand Down
4 changes: 3 additions & 1 deletion documentation/src/main/paradox/reference.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Reference

See the @scaladoc[API documentation](endless.index).
- @scaladoc[Core API documentation](endless.index)
- @scaladoc[Runtime API documentation](endless.runtime.index)
- @scaladoc[Endless circe helpers API documentation](endless.circe.index)
2 changes: 1 addition & 1 deletion documentation/src/main/paradox/router.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ trait CommandRouter[F[_], ID] {

@scaladoc[CommandRouter](endless.core.typeclass.protocol.CommandRouter) represents the ability to deliver a command to its target entity. It provides a natural transformation for an entity ID type, that can map the entity algebra interpreted by `CommandProtocol.client` into a context `OutgoingCommand[*]` back to `F`. This transformation is precisely sending out the command and retrieving the response.

There is a built-in implementation for Akka Cluster Sharding: @github[ShardingCommandRouter](/runtime/src/main/scala/endless/runtime/ShardingCommandRouter.scala)
There is a built-in implementation for Akka Cluster Sharding: @github[ShardingCommandRouter](/runtime/src/main/scala/endless/runtime/akka/ShardingCommandRouter.scala)

In order to support natural transformations, a @link:[cats-tagless](https://typelevel.org/cats-tagless/) { open=new } @link:[FunctorK](https://typelevel.org/cats-tagless/typeclasses.html) { open=new } instance must be provided for the entity algebra. This is easy to achieve thanks to built-in derivation macros:

Expand Down
2 changes: 1 addition & 1 deletion documentation/src/main/paradox/runtime.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ In order to bridge Akka's implicit asynchronicity with the side-effect free cont

### Protocol
Thanks to the @ref:[CommandProtocol](protocol.md) instance, entity algebra calls can be "materialized" into concrete commands and replies which are carried in an internal protobuf binary format @github:[command.proto](/runtime/src/main/protobuf/command.proto).
@scaladoc[ShardingCommandRouter](endless.runtime.akka.ShardingCommandRouter) takes care of delivering the commands to the right entity and returning the reply simply by using Akka's `ask`.
[ShardingCommandRouter](/runtime/src/main/scala/endless/runtime/akka/ShardingCommandRouter.scala) takes care of delivering the commands to the right entity and returning the reply simply by using Akka's `ask`.

### Deployer
Internally, @github[deployEntity](/runtime/src/main/scala/endless/runtime/akka/Deployer.scala) uses Akka @link:[EventSourcedBehavior](https://doc.akka.io/docs/akka/current/typed/persistence.html#example-and-core-api) { open=new } DSL to configure the entity in the following way:
Expand Down

0 comments on commit 39bd13b

Please sign in to comment.