-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Labels
Description
Refactor Inter-Dactor Message Type Hierarchy
Refactor the type hierarchy of inter-Dactor messages to improve flexibility when processing messages using pattern matching as well as to make them more manageable.
Problem Description
- Pattern matching messages within
Receivemethods is not very flexible because of a flat hierarchy of most message types - Unsafe messages that are only meant for use in debugging or testing do not share a common ancestor and might be hard to keep track of so we can later warn or deprecate them for production use
Supporting Information
- Possible type hierarchy layout with a focus on improving specificity to support flexible pattern matching:
| Root class | Childs | Description |
|---|---|---|
akka.actor.Status |
Success, Failure |
Messages from the akka-framework |
InternalMessageProtocol. InternalMessage |
Ping, Pong, UpdateMapping, ... |
Messages used internally in the adbms framework. |
DefaultMessageProtocol. Status |
InsertIntoRelation. Success|Failure, SelectAllFromRelation. Success|Failure |
Unsafe messages, only used for testing, debugging and not meant for production. |
RequestResponseProtocol. Response |
<UserOp>.Success|Failure, ... |
Production-grade messages defined by the developer (user of our framework). We only provide the base classes. |
RequestResponseProtocolis already onmaster
Related
- First came up while discussing PR Add DefaultMessagingProtocol.RelationQuery #93
Reactions are currently unavailable