@@ -303,7 +303,7 @@ import io.eigr.spawn.java.demo.domain.Actor.State;
303
303
304
304
import static io.eigr.spawn.api.actors.behaviors.ActorBehavior.* ;
305
305
306
- public final class JoeActor extends StatefulActor<State > {
306
+ public final class JoeActor implements StatefulActor<State > {
307
307
308
308
@Override
309
309
public ActorBehavior configure (BehaviorCtx context ) {
@@ -345,19 +345,19 @@ package io.eigr.spawn.java.demo;
345
345
import io.eigr.spawn.api.actors.StatefulActor ;
346
346
import io.eigr.spawn.java.demo.domain.Actor.State ;
347
347
348
- public final class JoeActor extends StatefulActor<State > {
348
+ public final class JoeActor implements StatefulActor<State > {
349
349
// ...
350
350
}
351
351
```
352
352
353
- The ` JoeActor ` class extends ` StatefulActor<State> ` . ` StatefulActor ` is a generic class provided by the Spawn API,
353
+ The ` JoeActor ` class implements ` StatefulActor<State> ` interface . ` StatefulActor ` is a generic interface provided by the Spawn API,
354
354
which takes a type parameter for the state. In this case, the state type is ` io.eigr.spawn.java.demo.domain.Actor.State `
355
355
defined in above protobuf file.
356
356
357
357
*** Configure Actor Behavior***
358
358
359
359
``` java
360
- public final class JoeActor extends StatefulActor<State > {
360
+ public final class JoeActor implements StatefulActor<State > {
361
361
@Override
362
362
public ActorBehavior configure (BehaviorCtx context ) {
363
363
return new NamedActorBehavior (
@@ -382,7 +382,7 @@ This `configure` method is overridden from `StatefulActor` and is used to config
382
382
*** Handle request***
383
383
384
384
``` java
385
- public final class JoeActor extends StatefulActor<State > {
385
+ public final class JoeActor implements StatefulActor<State > {
386
386
//
387
387
private Value setLanguage (ActorContext<State > context , Request msg ) {
388
388
if (context. getState(). isPresent()) {
@@ -534,7 +534,7 @@ import io.eigr.spawn.java.demo.domain.Actor.State;
534
534
535
535
import static io.eigr.spawn.api.actors.behaviors.ActorBehavior.action ;
536
536
import static io.eigr.spawn.api.actors.behaviors.ActorBehavior.name ;
537
- public final class JoeActor extends StatefulActor<State > {
537
+ public final class JoeActor implements StatefulActor<State > {
538
538
539
539
private String defaultMessage;
540
540
@@ -648,7 +648,7 @@ import io.eigr.spawn.java.demo.domain.Actor.State;
648
648
649
649
import static io.eigr.spawn.api.actors.behaviors.ActorBehavior.action ;
650
650
import static io.eigr.spawn.api.actors.behaviors.ActorBehavior.name ;
651
- public final class JoeActor extends StatefulActor<State > {
651
+ public final class JoeActor implements StatefulActor<State > {
652
652
653
653
private String defaultMessage;
654
654
@@ -738,14 +738,14 @@ recommended for handling serverless loads.
738
738
739
739
In addition to these types, Spawn also allows the developer to choose Stateful actors, who need to maintain the state,
740
740
or Stateless, those who do not need to maintain the state.
741
- For this the developer just needs to make extend of the correct base class . For example, I could declare a Serverless Actor using the following code:
741
+ For this the developer just needs to make extend of the correct base interface . For example, I could declare a Serverless Actor using the following code:
742
742
743
743
``` java
744
744
package io.eigr.spawn.java.demo.actors ;
745
745
746
746
import io.eigr.spawn.api.actors.ActorContext ;
747
747
import io.eigr.spawn.api.actors.StatelessActor ;
748
- import io.eigr.spawn.api.actors.Value ;F
748
+ import io.eigr.spawn.api.actors.Value ;
749
749
import io.eigr.spawn.api.actors.behaviors.ActorBehavior ;
750
750
import io.eigr.spawn.api.actors.behaviors.BehaviorCtx ;
751
751
import io.eigr.spawn.api.actors.behaviors.NamedActorBehavior ;
@@ -756,7 +756,7 @@ import io.eigr.spawn.java.demo.domain.Actor.Request;
756
756
import static io.eigr.spawn.api.actors.behaviors.ActorBehavior.action ;
757
757
import static io.eigr.spawn.api.actors.behaviors.ActorBehavior.name ;
758
758
759
- public final class StatelessNamedActor extends StatelessActor {
759
+ public final class StatelessNamedActor implements StatelessActor {
760
760
761
761
@Override
762
762
public ActorBehavior configure (BehaviorCtx context ) {
@@ -826,7 +826,7 @@ import io.eigr.spawn.java.demo.domain.Actor.State;
826
826
827
827
import static io.eigr.spawn.api.actors.behaviors.ActorBehavior.* ;
828
828
829
- public final class LoopActor extends StatefulActor<State > {
829
+ public final class LoopActor implements StatefulActor<State > {
830
830
831
831
@Override
832
832
public ActorBehavior configure (BehaviorCtx context ) {
@@ -872,7 +872,7 @@ import io.eigr.spawn.java.demo.domain.Actor.State;
872
872
873
873
import static io.eigr.spawn.api.actors.behaviors.ActorBehavior.* ;
874
874
875
- public final class JoeActor extends StatefulActor<State > {
875
+ public final class JoeActor implements StatefulActor<State > {
876
876
877
877
@Override
878
878
public ActorBehavior configure (BehaviorCtx context ) {
@@ -928,7 +928,7 @@ import io.eigr.spawn.java.demo.domain.Actor.State;
928
928
929
929
import static io.eigr.spawn.api.actors.behaviors.ActorBehavior.* ;
930
930
931
- public final class RoutingActor extends StatefulActor<State > {
931
+ public final class RoutingActor implements StatefulActor<State > {
932
932
933
933
@Override
934
934
public ActorBehavior configure (BehaviorCtx context ) {
@@ -974,7 +974,7 @@ import io.eigr.spawn.java.demo.domain.Actor.State;
974
974
975
975
import static io.eigr.spawn.api.actors.behaviors.ActorBehavior.* ;
976
976
977
- public final class PipeActor extends StatefulActor<State > {
977
+ public final class PipeActor implements StatefulActor<State > {
978
978
979
979
@Override
980
980
public ActorBehavior configure (BehaviorCtx context ) {
@@ -1037,7 +1037,7 @@ import io.eigr.spawn.java.demo.domain.Actor.State;
1037
1037
1038
1038
import static io.eigr.spawn.api.actors.behaviors.ActorBehavior.* ;
1039
1039
1040
- public final class JoeActor extends StatefulActor<State > {
1040
+ public final class JoeActor implements StatefulActor<State > {
1041
1041
1042
1042
@Override
1043
1043
public ActorBehavior configure (BehaviorCtx context ) {
@@ -1170,7 +1170,7 @@ import io.eigr.spawn.java.demo.domain.Actor.State;
1170
1170
1171
1171
import static io.eigr.spawn.api.actors.behaviors.ActorBehavior.* ;
1172
1172
1173
- public final class MikeActor extends StatefulActor<State > {
1173
+ public final class MikeActor implements StatefulActor<State > {
1174
1174
1175
1175
@Override
1176
1176
public ActorBehavior configure (BehaviorCtx context ) {
0 commit comments