Commit graph

75 commits

Author SHA1 Message Date
Roland Kuhn
f00da4daac !str #19037 rename FlowGraph to GraphDSL 2015-12-01 18:30:07 +01:00
Viktor Klang
8780ba28a4 !str - Moving the InputStream and OutputStream utilities into Source and Sink 2015-11-18 09:13:57 +01:00
Viktor Klang
20c996fe41 !str - 18916 - Source.file and Sink.file
* Removes `Synchronous` from the names and descriptions of File I/O as it leaks impl details
* Removes the factries for FileSource and FileSink and puts them in Source and Sink respectively
2015-11-17 09:50:10 +01:00
Martynas Mickevičius
ee5ec72552 =str #15707 name unnamed modules
* give name attribute to TickSource and nested modules
* reflow module toString output
* give toString to flow
2015-11-04 13:01:05 +02:00
Roland Kuhn
556012b7ee !str,htc replace and remove OneBoundedInterpreter
main work by @drewhk with contributions from @2m and @rkuhn

This work uncovered many well-hidden bugs in existing Stages, in
particular StatefulStage. These were hidden by the behavior of
OneBoundedInterpreter that normally behaves more orderly than it
guarantees in general, especially with respect to the timeliness of
delivery of upstream termination signals; the bugs were then that
internal state was not flushed when onComplete arrived “too early”.
2015-11-01 14:53:52 +01:00
Viktor Klang
f29d7affbd !str #18692 javadsl.FlowGraph.Builder.add()
* also make factories more consistent by only offering
  FlowGraph.create()
* also remove secondary (edge-based) FlowGraph.Builder DSL
* also improve naming for conversions from Graph to
  Source/Flow/BidiFlow/Sink
2015-10-22 19:10:00 +02:00
Roland Kuhn
684f3e3175 Merge pull request #18697 from agolubev/agolubev-#18133-Sink.actorSubscriber()-verify-props
=str #18133 Sink.actorSubscriber() should verify the props
2015-10-21 18:56:28 +02:00
Konrad Malawski
61c2213e02 +str #17383 implement intersperse 2015-10-19 13:17:23 +02:00
Alexander Golubev
53d0627675 =str #18133 Sink.actorSubscriber() should verify the props 2015-10-09 15:11:01 -04:00
Alexander Golubev
c8428a1bc3 +str #18411 add FlowOps.zip/zipWith/merge/concat operators 2015-10-03 23:26:06 -04:00
Alexander Golubev
993e545e99 +str #18411 add FlowOps.zip/zipWith/merge/concat operators 2015-10-03 14:28:57 -04:00
kukido
f858881b2e =doc #17329 Spelling normalization, typos fixed. 2015-09-28 22:45:38 -07:00
Endre Sándor Varga
eec8bd689f =str: TickSource is now a GraphStage 2015-09-21 10:30:14 +02:00
Endre Sándor Varga
12c9abb8c9 !str #16410 #16597: Removed TimerTransform, added Timeout stages 2015-09-18 12:38:36 +02:00
Endre Sándor Varga
174589f2dc =str: GraphStage improvements 2015-09-17 10:08:12 +02:00
Alexander Golubev
38fe35d668 +str #17693 add Source.queue and Sink.queue 2015-09-04 12:50:05 -04:00
Alexander Golubev
7620014358 +str #17399 add boilerplate remover for fan-in junctions 2015-09-01 09:51:23 -04:00
Viktor Klang
66a116d3d2 -str - Improvements and renames in internal streams classes
* Renames Module.grow -> Module.compose
 * Renames Module.connect -> Module.wire
 * Renames Module.growConnect -> Module.fuse
 * Renames Module.wrap -> Module.nest

 * Adds explicit identity equals and hashCode to InPort and OutPort

 * Reimplements many of the Source factories to avoid copying

 * Documents Module.compose, Module.fuse, Module.wire and Module.nest

 * Removes Attributes.nameLifted

 * Optimizes Attributes.nameOrDefault
2015-07-13 23:39:45 +02:00
Martynas Mickevičius
efc659b70a Merge pull request #17953 from drewhk/wip-17891-processor-support-drewhk
+str #17891: Add direct support for RS Processors
2015-07-13 17:21:10 +03:00
Endre Sándor Varga
47ea3fde38 created factory method 2015-07-09 18:01:45 +02:00
Endre Sándor Varga
333a006bf1 +doc #17569: Mention no support of "backpressure" strategy on Source.actorRef 2015-07-09 10:18:18 +02:00
Viktor Klang
2725bfc044 =str - Various internal Akka Stream improvements
* Gives Inlets and Outlets a `carbonCopy` method and switches to allocate them via `apply`
* Removes 4 Array allocations per FanIn and uses a bitmasked array instead
* Makes the FlattenStrategy.concat instance a singleton
2015-06-30 11:45:50 +02:00
Endre Sándor Varga
c7a974dd1e Rename RunnableFlow to RunnableGraph 2015-06-23 18:49:53 +02:00
Endre Sándor Varga
7879a5521b Rename FlowMaterializer to Materializer 2015-06-23 18:47:28 +02:00
Endre Sándor Varga
dc7269e620 Rename OperationAttributes to Attributes 2015-06-23 18:45:04 +02:00
Martynas Mickevičius
27dd698706 =doc #17291 more stream test docs 2015-06-19 10:03:55 +03:00
Viktor Klang
8165c806fc =str - Introduces a TCK-verified SingleElementPublisher to optimize Source.single and things depending on it 2015-06-12 08:14:32 -04:00
drewhk
ca5d27abbd Merge pull request #17675 from akka/wip-remove-synchronousiterablepublisher-√
=str - Wip remove synchronousiterablepublisher √
2015-06-12 10:42:17 +02:00
Viktor Klang
3bf1c14b3a =str - fixing TODO about scaladsl & javadsl Source/Sink/Flow/BidiFlow.wrap not having to needlessly re-wrap 2015-06-07 11:34:53 +02:00
Viktor Klang
e8936964b5 =str - Deleted SynchronousIterablePublisher as it is replaced by a fast SingleElementPublisher + mapConcat 2015-06-06 17:04:44 +02:00
Viktor Klang
91e9396083 Merge branch 'wip-delete-futurepublisher-√' into wip-remove-synchronousiterablepublisher-√ 2015-06-06 16:28:18 +02:00
Viktor Klang
b49746b0da =str - Introduces a TCK-verified SingleElementPublisher to optimize Source.single and things depending on it 2015-06-06 16:07:35 +02:00
Viktor Klang
79b6de1558 +str - Deletes FuturePublisher and replaces it with Source.single(f).mapAsync(1)(identity) 2015-06-06 14:13:26 +02:00
Endre Sándor Varga
30e4a57ee0 +str #17464: mapConcat accepts immutable.Iterable 2015-05-21 14:28:09 +02:00
Endre Sándor Varga
7ad4fdc3ce !str #17123: Make materialized value handling method names consistent 2015-05-05 12:42:41 +02:00
Konrad Malawski
4ba11177ba =str #17323 Source.actorRef now emits buffered els before completion 2015-04-28 10:59:29 +02:00
Endre Sándor Varga
d73f78dcbf +str #17254: Accept graphs instead of Flow/Source/Sink etc. 2015-04-24 13:14:00 +02:00
Konrad Malawski
cebd9bf1ae +str #15588,#17229 Java 6 Synchronous File Sink / Source
These are synchronous implementations, because we need to be Java 6
  compatible while developing on 2.3.x. However asynchronous
  implementations using AsynchronousFileChannel will come soon for JDK7
  users.

+ ActorPublisher/Subscriber now manage stopping of the actor
+ added documentation on configuring dispatcher for File IO
+ properly handle if source file does not exist
+ file sink / source come with default io dispatcher
> verified no actors are leaking
> exceptions are caught and onErrored properly
+ moved files to akka.stream.io
+ Added OutputStreamSink and InputStreamSource
2015-04-23 18:15:10 +02:00
Patrik Nordwall
373f1acf3a =str 15707 Define default names for sources and sinks
* Not intended to close the ticket, but improve the situation somewhat
  by defining default names of all sources and sinks.
* The stage names (actor names) are still rather weird

For example the following

    Source.single(1).named("aa")
      .map(identity).named("bb")
      .map(identity).named("cc")
      .runWith(Sink.publisher)

is materilaized with names:
flow-1-0-cc-bb-aa-singleSource : akka.stream.impl.PublisherSource@1787f2a0
flow-1-1-cc-bb-map : Map(<function1>,OperationAttributes(List(Name(map))))
flow-1-2-cc-map : Map(<function1>,OperationAttributes(List(Name(map))))
flow-1-3-publisherSink : PublisherSink

but that is out of scope for this commit
2015-04-20 21:04:03 +02:00
Patrik Nordwall
c6404d3e44 !str #17189 Add withAttributes and named to Graph
* Remove optional attributes parameter in favor of withAttributes
* Overload explosion when trying to add attributes to ZipWith.
* Aligned with Flow and Source.
2015-04-17 11:31:32 +02:00
Patrik Nordwall
00033313e0 !str #16951 Unify scaladsl and javadsl OperationAttributes
* Move actor specific attributes to ActorOperationAttributes
2015-04-16 14:16:01 +02:00
Patrik Nordwall
b69988c190 !str #16937 Remove section, in favor of via and separate flow 2015-04-10 17:34:29 +02:00
Mathias
1c112b935d +str #17039 add concatMat to Flow and Source 2015-04-10 15:10:42 +02:00
Mathias
85c0571620 !str #17039 change default materialization placeholder type from Unit to Any 2015-04-10 15:10:42 +02:00
Patrik Nordwall
f4ed62b84c !str #16520 Add ActorRefSource
* and rename the factory for ActorPublisherSource,
  from Source.apply to Source.actorPublisher

* including internal buffer, with OverflowStrategy

* support to complete/fail stream
2015-04-10 13:53:15 +02:00
Roland Kuhn
8f47b6dfcc Merge pull request #17105 from akka/wip-async-stage-∂π
add async stage
2015-04-10 10:52:01 +02:00
Roland Kuhn
4c623fade7 !str #17090 add AsyncStage 2015-04-10 09:00:36 +02:00
Patrik Nordwall
666bfade1e !str #16993 Separate scaladsl/javadsl for FlattenStategy
`abstract class FlattenStrategy` was used in both javadsl and scaladsl, but the concrete concat
for the javadsl was in javadsl.FlattenStrategy and the concrete concat for the scaladsl is in
stream.FlattenStrategy.

Now there are separate FlattenStategy in scaladsl and javadsl packages and conversion
as we have in other places.

* replace JavaConverters with explicit methods

* remove asJava/asScala for FlattenStrategy
2015-04-10 08:05:24 +02:00
Patrik Nordwall
3dc4e6d077 !str #16992 Rework Source and Sink name parameter
* Remove name parameter (no overloads), naming is performed using `.withAttributes` or the new
  convenience `.named`. Those adds the OperationAttribute.Name and also change the name of the
  shape Inlet and Outlet.

* Remove Source/Sink parameter list for 0 parameter methods,
  this allows usage of `Sink.head` instead of `Sink.head()`
2015-03-06 09:24:00 +01:00
Roland Kuhn
e870c7cbd2 many compile fixes and FlowMaterializer
The DSLs MUST NOT rely upon ActorFlowMaterializer, otherwise we cannot
add other materializers later.
2015-02-26 22:42:34 +01:00