Class BehaviorImpl

  • public class BehaviorImpl
    extends java.lang.Object
    • Constructor Detail

      • BehaviorImpl

        public BehaviorImpl()
    • Method Detail

      • transformMessages

        public static <O,​I> Behavior<O> transformMessages​(Behavior<I> behavior,
                                                                scala.PartialFunction<O,​I> matcher,
                                                                scala.reflect.ClassTag<O> evidence$1)
      • same

        public static <T> Behavior<T> same()
      • unhandled

        public static <T> Behavior<T> unhandled()
      • stopped

        public static <T> Behavior<T> stopped()
      • stopped

        public static <T> Behavior<T> stopped​(scala.Function0<scala.runtime.BoxedUnit> postStop)
      • empty

        public static <T> Behavior<T> empty()
      • ignore

        public static <T> Behavior<T> ignore()
      • failed

        public static <T> Behavior<T> failed​(java.lang.Throwable cause)
      • unhandledSignal

        public static scala.PartialFunction<scala.Tuple2<TypedActorContext<scala.runtime.Nothing$>,​Signal>,​Behavior<scala.runtime.Nothing$>> unhandledSignal()
      • StoppedBehavior

        public static<scala.runtime.Nothing$> StoppedBehavior()
      • intercept

        public static <O,​I> Behavior<O> intercept​(scala.Function0<BehaviorInterceptor<O,​I>> interceptor,
                                                        Behavior<I> behavior)
        Intercept messages and signals for a behavior by first passing them to a BehaviorInterceptor

        When a behavior returns a new behavior as a result of processing a signal or message and that behavior already contains the same interceptor (defined by the isSame method on the BehaviorInterceptor) only the innermost interceptor is kept. This is to protect against stack overflow when recursively defining behaviors.