RoutedActorRef/ClusterActorRef should use composition
Currently Routing is a trait that is mixed in with the ClusterActorRef and RoutedActorRef. This makes the a bit harder for end users to provide their own Routing instances.
It would be easier if the ClusterActorRef (and RoutedActorRef) would make use of composition, so have a field Router. If a message comes in, the Ref can then forward the message being posted to the Router.
Design complication:
- how the router should get the connections..
- how the router can do a callback in case of a failing connection.
Currently these methods are implemented on the actorref, but if composition is going to be used, this isn't as simple.
It would be easier if the ClusterActorRef (and RoutedActorRef) would make use of composition, so have a field Router. If a message comes in, the Ref can then forward the message being posted to the Router.
Design complication:
- how the router should get the connections..
- how the router can do a callback in case of a failing connection.
Currently these methods are implemented on the actorref, but if composition is going to be used, this isn't as simple.
Leave a comment
Will also solve:
https://www.assembla.com/spaces/akka/tickets/1062-roundrobin-is-broken
which now has been closed as a duplicate.
https://www.assembla.com/spaces/akka/tickets/1062-roundrobin-is-broken
which now has been closed as a duplicate.
on 2011-08-12 12:57 *
By pveentjer
Assigned to changed from pveentjer to Jonas Bonér
Status changed from Accepted to Test
Updating tickets (#967, #974, #975, #976, #980, #981, #989, #990, #992, #993, #994, #999, #1000, #1004, #1008, #1011, #1015, #1018, #1022, #1023, #1024, #1025, #1027, #1028, #1029, #1030, #1032, #1033, #1036, #1047, #1053, #1062, #1067, #1068, #1069, #1072, #1075, #1078, #1082, #1102, #1107, #1110, #1111, #1115, #1116, #1121, #1122, #1123, #1124)