Skip to content

Commit acbfbc0

Browse files
committed
clean
1 parent 0bc4ead commit acbfbc0

File tree

3 files changed

+44
-39
lines changed

3 files changed

+44
-39
lines changed

akka-actor-typed-tests/src/test/java/akka/actor/typed/eventstream/LoggingDocTest.java

Lines changed: 19 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -38,44 +38,41 @@ public class LoggingDocTest extends JUnitSuite {
3838

3939
@Test
4040
public void subscribeToDeadLetters() {
41-
ActorSystem<SpawnProtocol.Command> system = ActorSystem.create(SpawnProtocol.create(),
42-
"DeadLettersSystem");
43-
// #subscribe-deadletter
44-
ActorSystem.create(Behaviors.setup(ctx -> {
45-
ActorRef<DeadLetter> listener = ctx.spawn(DeadLetterActor.create(), "listener");
46-
ctx.getSystem().eventStream().tell(new Subscribe<>(DeadLetter.class, listener));
47-
return Behaviors.empty();
48-
}), "DeadLettersSystem");
49-
// #subscribe-deadletter
41+
ActorSystem<SpawnProtocol.Command> system = ActorSystem.create(
42+
Behaviors.setup(ctx -> {
43+
Behavior<DeadLetter> deadLetterListener = Behaviors.empty();
44+
// #subscribe-deadletter
45+
ActorRef<DeadLetter> listener = ctx.spawn(deadLetterListener, "listener");
46+
ctx.getSystem().eventStream().tell(new Subscribe<>(DeadLetter.class, listener));
47+
// #subscribe-deadletter
48+
return SpawnProtocol.create();
49+
}), "DeadLettersSystem");
5050
ActorTestKit.shutdown(system);
5151
}
5252

5353
public
5454
// #deadletter-actor
55-
static class DeadLetterActor extends AbstractBehavior<DeadLetter> {
56-
57-
final Logger log = getContext().getLog();
55+
static class DeadLetterActor extends AbstractBehavior<String> {
5856

59-
public static Behavior<DeadLetter> create() {
57+
public static Behavior<String> create() {
6058
return Behaviors.setup(DeadLetterActor::new);
6159
}
6260

63-
public DeadLetterActor(ActorContext<DeadLetter> context) {
61+
public DeadLetterActor(ActorContext<String> context) {
6462
super(context);
6563
ActorRef<DeadLetter> messageAdapter = context.messageAdapter(
6664
DeadLetter.class,
67-
d -> d
65+
d -> d.message().toString()
6866
);
69-
// subscribe DeadLetter at start up.
67+
// subscribe DeadLetter at startup.
7068
context.getSystem().eventStream()
7169
.tell(new Subscribe<>(DeadLetter.class, messageAdapter));
7270
}
7371

7472
@Override
75-
public Receive<DeadLetter> createReceive() {
76-
return newReceiveBuilder().onMessage(DeadLetter.class, msg -> {
77-
log.info("receive dead letter: {} from <{}> to <{}>", msg, msg.sender(),
78-
msg.recipient());
73+
public Receive<String> createReceive() {
74+
return newReceiveBuilder().onMessage(String.class, msg -> {
75+
getContext().getLog().info("receive dead letter: {}", msg);
7976
return Behaviors.same();
8077
}).build();
8178
}
@@ -107,8 +104,6 @@ public Electronic(String artist) {
107104

108105
static class Listener extends AbstractBehavior<AllKindsOfMusic> {
109106

110-
final Logger log = getContext().getLog();
111-
112107
public static Behavior<AllKindsOfMusic> create() {
113108
return Behaviors.setup(Listener::new);
114109
}
@@ -122,12 +117,12 @@ public Listener(ActorContext<AllKindsOfMusic> context) {
122117
public Receive<AllKindsOfMusic> createReceive() {
123118
return newReceiveBuilder()
124119
.onMessage(Jazz.class, msg -> {
125-
log.info("{} is listening to Jazz: {}", getContext().getSelf().path().name(),
120+
getContext().getLog().info("{} is listening to Jazz: {}", getContext().getSelf().path().name(),
126121
msg);
127122
return Behaviors.same();
128123
})
129124
.onMessage(Electronic.class, msg -> {
130-
log.info("{} is listening to Electronic: {}",
125+
getContext().getLog().info("{} is listening to Electronic: {}",
131126
getContext().getSelf().path().name(), msg);
132127
return Behaviors.same();
133128
}).build();

akka-actor-typed-tests/src/test/scala/akka/actor/typed/eventstream/LoggingDocSpec.scala

Lines changed: 24 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -33,18 +33,14 @@ object LoggingDocSpec {
3333

3434
object DeadLetterListener {
3535

36-
def apply(): Behavior[DeadLetter] = Behaviors.setup { context =>
37-
// subscribe DeadLetter at start up.
38-
val adapter = context.messageAdapter[DeadLetter](d => d)
36+
def apply(): Behavior[String] = Behaviors.setup { context =>
37+
// subscribe DeadLetter at startup.
38+
val adapter = context.messageAdapter[DeadLetter](d => d.message.toString)
3939
context.system.eventStream ! Subscribe(adapter)
4040

4141
Behaviors.receiveMessage {
42-
case deadLetter: DeadLetter =>
43-
context.log.info(
44-
"receive dead letter: {} from <{}> to <{}>",
45-
deadLetter.message,
46-
deadLetter.sender,
47-
deadLetter.recipient)
42+
case msg: String =>
43+
context.log.info("receive dead letter: {}", msg)
4844
Behaviors.same
4945
}
5046
}
@@ -78,23 +74,37 @@ class LoggingDocSpec extends ScalaTestWithActorTestKit with AnyWordSpecLike with
7874
import LoggingDocSpec._
7975
import akka.actor.typed.scaladsl.AskPattern._
8076

81-
"allow registration to dead letters from start up" in {
77+
"allow registration to dead letters" in {
8278
// #deadletters
8379
ActorSystem(Behaviors.setup[Void] { context =>
8480
context.spawn(DeadLetterListener(), "DeadLetterListener", Props.empty)
8581
Behaviors.empty
8682
}, "System")
8783
// #deadletters
8884
}
85+
/*
86+
ActorSystem<SpawnProtocol.Command> system = ActorSystem.create(
87+
Behaviors.setup(ctx -> {
88+
Behavior<DeadLetter> deadLetterListener = Behaviors.empty();
89+
// #subscribe-deadletter
90+
ActorRef<DeadLetter> listener = ctx.spawn(deadLetterListener, "listener");
91+
ctx.getSystem().eventStream().tell(new Subscribe<>(DeadLetter.class, listener));
92+
// #subscribe-deadletter
93+
return SpawnProtocol.create();
94+
}), "DeadLettersSystem");
95+
ActorTestKit.shutdown(system);
96+
*/
8997

9098
"allow registration to dead letters" in {
91-
// #subscribe-deadletter
9299
ActorSystem(Behaviors.setup[Void] { context =>
93-
val deadLetterListener = context.spawn(DeadLetterListener(), "DeadLetterListener", Props.empty)
94-
context.system.eventStream ! Subscribe[DeadLetter](deadLetterListener)
100+
val deadLetterListener = Behaviors.empty[DeadLetter]
101+
// #subscribe-deadletter
102+
val listenerRef: ActorRef[DeadLetter] = context.spawn(DeadLetterListener(), "DeadLetterListener")
103+
context.system.eventStream ! Subscribe[DeadLetter](listenerRef)
104+
// #subscribe-deadletter
105+
95106
Behaviors.empty
96107
}, "System")
97-
// #subscribe-deadletter
98108
}
99109

100110
"demonstrate superclass subscriptions on typed eventStream" in {

akka-docs/src/main/paradox/typed/event-stream.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ It uses @ref:[Subchannel Classification](#subchannel-classification) which enabl
3636

3737
## How to use
3838

39-
The following example demonstrates how a subscription works. Given an actor will subscribe DeadLetter from start up:
39+
The following example demonstrates how a subscription works. Given an actor will subscribe DeadLetter from startup:
4040

4141
Scala
4242
: @@snip [LoggingDocSpec.scala](/akka-actor-typed-tests/src/test/scala/akka/actor/typed/eventstream/LoggingDocSpec.scala) { #deadletters }

0 commit comments

Comments
 (0)