akka.actor
Class IO.IterateeRefAsync<A>

java.lang.Object
  extended by akka.actor.IO.IterateeRefAsync<A>
All Implemented Interfaces:
IO.IterateeRef<A>
Enclosing class:
IO

public static final class IO.IterateeRefAsync<A>
extends java.lang.Object
implements IO.IterateeRef<A>

A mutable reference to an IO.Iteratee. Not thread safe.

Designed for use within an Actor, although all actions perfomed on the Iteratee are processed within a Future so it is not safe to refer to the Actor's state from within this Iteratee. Messages should instead be sent to the Actor in order to modify state.

Includes mutable implementations of flatMap, map, and apply which update the internal reference and return Unit.

IO.Input remaining after processing the Iteratee will be stored and processed later when 'flatMap' is used next.


Nested Class Summary
 
Nested classes/interfaces inherited from interface akka.actor.IO.IterateeRef
IO.IterateeRef.Map<K,V>, IO.IterateeRef.Map$
 
Constructor Summary
IO.IterateeRefAsync(IO.Iteratee<A> initial, scala.concurrent.ExecutionContext executor)
           
 
Method Summary
 void apply(IO.Input input)
           
 void flatMap(scala.Function1<A,IO.Iteratee<A>> f)
           
 scala.concurrent.Future<scala.Tuple2<IO.Iteratee<A>,IO.Input>> future()
          Returns a Future which will hold the future value of this IterateeRefAsync
 void map(scala.Function1<A,A> f)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

IO.IterateeRefAsync

public IO.IterateeRefAsync(IO.Iteratee<A> initial,
                           scala.concurrent.ExecutionContext executor)
Method Detail

flatMap

public void flatMap(scala.Function1<A,IO.Iteratee<A>> f)
Specified by:
flatMap in interface IO.IterateeRef<A>

map

public void map(scala.Function1<A,A> f)
Specified by:
map in interface IO.IterateeRef<A>

apply

public void apply(IO.Input input)
Specified by:
apply in interface IO.IterateeRef<A>

future

public scala.concurrent.Future<scala.Tuple2<IO.Iteratee<A>,IO.Input>> future()
Returns a Future which will hold the future value of this IterateeRefAsync