Small tweaks to docs
Getting a couple of small tweaks out of the way
This commit is contained in:
parent
e495408627
commit
f447f8e73f
8 changed files with 44 additions and 32 deletions
|
|
@ -4,7 +4,6 @@
|
|||
package jdocs.actor;
|
||||
|
||||
//#imports
|
||||
|
||||
import akka.actor.TypedActor;
|
||||
import akka.actor.*;
|
||||
import akka.japi.*;
|
||||
|
|
@ -25,7 +24,6 @@ import akka.routing.RoundRobinGroup;
|
|||
import org.junit.Test;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
|
||||
//#imports
|
||||
public class TypedActorDocTest extends AbstractJavaTest {
|
||||
Object someReference = null;
|
||||
ActorSystem system = null;
|
||||
|
|
@ -198,7 +196,7 @@ public class TypedActorDocTest extends AbstractJavaTest {
|
|||
}
|
||||
}
|
||||
|
||||
//#typed-router-types-1
|
||||
//#typed-router-types
|
||||
interface HasName {
|
||||
String name();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -39,12 +39,9 @@ import static akka.dispatch.Futures.reduce;
|
|||
//#imports6
|
||||
|
||||
//#imports7
|
||||
//#imports7
|
||||
|
||||
//#imports8
|
||||
import static akka.pattern.Patterns.after;
|
||||
import java.util.Arrays;
|
||||
//#imports8
|
||||
//#imports7
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ it will use its default dispatcher as the ``ExecutionContext``, or you can use t
|
|||
by the ``ExecutionContexts`` class to wrap ``Executors`` and ``ExecutorServices``, or even create your own.
|
||||
|
||||
.. includecode:: code/jdocs/future/FutureDocTest.java
|
||||
:include: imports1,imports7
|
||||
:include: imports1
|
||||
|
||||
.. includecode:: code/jdocs/future/FutureDocTest.java
|
||||
:include: diy-execution-context
|
||||
|
|
@ -256,7 +256,7 @@ After
|
|||
``akka.pattern.Patterns.after`` makes it easy to complete a ``Future`` with a value or exception after a timeout.
|
||||
|
||||
.. includecode:: code/jdocs/future/FutureDocTest.java
|
||||
:include: imports8
|
||||
:include: imports7
|
||||
|
||||
.. includecode:: code/jdocs/future/FutureDocTest.java
|
||||
:include: after
|
||||
|
|
|
|||
|
|
@ -291,7 +291,7 @@ of the command for which this ``deferAsync`` handler was called.
|
|||
|
||||
You can also call ``deferAsync`` with ``persist``.
|
||||
|
||||
.. includecode:: code/docs/persistence/LambdaPersistenceDocTest.java#defer-with-persist
|
||||
.. includecode:: code/jdocs/persistence/LambdaPersistenceDocTest.java#defer-with-persist
|
||||
|
||||
.. warning::
|
||||
The callback will not be invoked if the actor is restarted (or stopped) in between the call to
|
||||
|
|
|
|||
|
|
@ -249,7 +249,7 @@ with message flows:
|
|||
|
||||
* :meth:`public <T> List<T> receiveWhile(Duration max, Duration idle, Int messages, Function<Object, T> f)`
|
||||
|
||||
.. includecode:: code/docs/testkit/TestKitDocTest.java#test-receivewhile-full
|
||||
.. includecode:: code/jdocs/testkit/TestKitDocTest.java#test-receivewhile-full
|
||||
|
||||
Collect messages as long as
|
||||
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@
|
|||
*/
|
||||
package docs.actor
|
||||
|
||||
//#imports
|
||||
import java.lang.String.{ valueOf => println }
|
||||
|
||||
import akka.actor.{ ActorContext, ActorRef, TypedActor, TypedProps }
|
||||
|
|
@ -11,10 +12,10 @@ import akka.testkit._
|
|||
|
||||
import scala.concurrent.{ Future, Await }
|
||||
import scala.concurrent.duration._
|
||||
//#imports
|
||||
|
||||
//Mr funny man avoids printing to stdout AND keeping docs alright
|
||||
import java.lang.String.{ valueOf => println }
|
||||
import akka.actor.ActorRef
|
||||
|
||||
//#typed-actor-iface
|
||||
trait Squarer {
|
||||
|
|
|
|||
|
|
@ -274,7 +274,7 @@ that receives the log events in the same order they were emitted.
|
|||
.. note::
|
||||
The event handler actor does not have a bounded inbox and is run on the default dispatcher. This means
|
||||
that logging extreme amounts of data may affect your application badly. This can be somewhat mitigated by
|
||||
using an async logging backend though. (See :ref:`slf4j-directly-scala`)
|
||||
using an async logging backend though. (See :ref:`slf4j-directly-scala`)
|
||||
|
||||
You can configure which event handlers are created at system start-up and listen to logging events. That is done using the
|
||||
``loggers`` element in the :ref:`configuration`.
|
||||
|
|
|
|||
|
|
@ -63,21 +63,25 @@ Creating Typed Actors
|
|||
|
||||
To create a Typed Actor you need to have one or more interfaces, and one implementation.
|
||||
|
||||
The following imports are assumed:
|
||||
|
||||
.. includecode:: code/docs/actor/TypedActorDocSpec.scala
|
||||
:include: imports
|
||||
|
||||
Our example interface:
|
||||
|
||||
.. includecode:: code/docs/actor/TypedActorDocSpec.scala
|
||||
:include: imports,typed-actor-iface
|
||||
:include: typed-actor-iface
|
||||
:exclude: typed-actor-iface-methods
|
||||
|
||||
Alright, now we've got some methods we can call, but we need to implement those in SquarerImpl.
|
||||
Our example implementation of that interface:
|
||||
|
||||
.. includecode:: code/docs/actor/TypedActorDocSpec.scala
|
||||
:include: imports,typed-actor-impl
|
||||
|
||||
Excellent, now we have an interface and an implementation of that interface,
|
||||
and we know how to create a Typed Actor from that, so let's look at calling these methods.
|
||||
:include: typed-actor-impl
|
||||
:exclude: typed-actor-impl-methods
|
||||
|
||||
The most trivial way of creating a Typed Actor instance
|
||||
of our Squarer:
|
||||
of our ``Squarer``:
|
||||
|
||||
.. includecode:: code/docs/actor/TypedActorDocSpec.scala
|
||||
:include: typed-actor-create1
|
||||
|
|
@ -88,7 +92,19 @@ If you need to call a specific constructor you do it like this:
|
|||
.. includecode:: code/docs/actor/TypedActorDocSpec.scala
|
||||
:include: typed-actor-create2
|
||||
|
||||
Since you supply a Props, you can specify which dispatcher to use, what the default timeout should be used and more.
|
||||
Since you supply a ``Props``, you can specify which dispatcher to use, what the default timeout should be used and more.
|
||||
Now, our ``Squarer`` doesn't have any methods, so we'd better add those.
|
||||
|
||||
.. includecode:: code/docs/actor/TypedActorDocSpec.scala
|
||||
:include: typed-actor-iface
|
||||
|
||||
Alright, now we've got some methods we can call, but we need to implement those in SquarerImpl.
|
||||
|
||||
.. includecode:: code/docs/actor/TypedActorDocSpec.scala
|
||||
:include: typed-actor-impl
|
||||
|
||||
Excellent, now we have an interface and an implementation of that interface,
|
||||
and we know how to create a Typed Actor from that, so let's look at calling these methods.
|
||||
|
||||
Method dispatch semantics
|
||||
-------------------------
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue