Commit graph

146 commits

Author SHA1 Message Date
Benjamin Thuillier
a2bcc0fb06 +htp #15926 Import HostDirectives from spray 2014-09-26 11:39:03 +02:00
Mathias
0afebd1c39 !htc Tighten up header model some more, update spec links 2014-09-25 16:48:03 +02:00
Johannes Rudolph
c77f4e28f6 !hco #15915 introduce more shades of HttpEntities
The introduction of BodyParts again showed that not all entity types are
useful for every kind of context. There are now these contexts where
HttpEntities are used:
 - requests
 - responses
 - body parts

And several kinds of entities:
 - Strict
 - Default
 - Chunked
 - CloseDelimited
 - IndefiniteLength

To increase type safety of the API marker-interfaces are introduced defining
which kinds of entities can be used in which contexts:
 - RequestEntity: Strict, Default, Chunked
 - ResponseEntity: Strict, Default, Chunked, CloseDelimited
 - BodyPartEntity: Strict, Default, IndefiniteLength

Also, to be able still to provide abstractions over some kinds of entities
additional auxiliary interfaces were necessary:
 - MessageEntity = RequestEntity >: ResponseEntity: Strict, Default, Chunked (type alias for RequestEntity)
 - UniversalEntity = RequestEntity with ResponseEntity with BodyPartEntity = Strict, Default
2014-09-22 12:03:33 +02:00
Johannes Rudolph
1e6a844dc1 !hco make Marshaller(s) covariant in result type 2014-09-22 11:55:15 +02:00
Mathias
27a7cb0664 !htk move RequestBuilding trait from akka.http.testkit into akka.http.clien package, closes #15801 2014-09-17 16:49:34 +02:00
Mathias
47affda004 !htp rename akka.http.routing package to akka.http.server 2014-09-17 16:42:31 +02:00
Mathias
8dbb311ddc =htp Add akka-http-tests project, tests for already-ported directives
Also move the tests that were previously in the akka-http project here
2014-09-11 17:15:50 +02:00
Mathias
69888693b8 !htp port over routing DSL core from spray, other improvements
The most important changes from spray-routing:
- Change Route from `RequestContext => Unit` to `RequestContext => Deferrable[RouteResult]`
- Switch directive extraction model from shapeless HLists to plain Scala Tuples
- Switch API from promoting actors as Route "containers" to being powered by plain executors/flow-materializers
- Make `Directive0` re-execute inner routes per requests, refs spray/spray#780

Other fixes:
- Simplify unmarshalling infrastructure, now based on `Deferrable`, closes #15690
- Change marshalling infrastrucutre to be based on `Deferrable` as well
- Clean up `akka.http` package contents, closes #15689

Changing from HList-based extractions to Tuple-based ones comes with one important drawback:
We can't rely on type bounds anymore to tighten and auto-document the API where generic extractions handled.
Currently we therefore fall back to context bounds where they add value, but this might change if the added overhead or code complexity becomes too much. We'll see when the remaining parts of spray-routing are ported.
2014-09-11 17:12:32 +02:00
Konrad 'ktoso' Malawski
cc4fd5ca2c !str #15121 MaterializerSettings now uses a config object
Resolves #15121
2014-09-01 19:21:57 +02:00
Konrad 'ktoso' Malawski
5b1c05f3fe !str #15271 make transform() take a factory instead of Transformer
+ Makes reusing flows safe
+ Adds timerTransform for ops which need TimerTransformer
+ Adds TransformerLike in order to keep transform/timerTransform
  typesafe in respect to the passed in type og Transformer

Resolves #15271
2014-08-22 14:21:02 +02:00
Patrik Nordwall
1bb5d37780 !str #15551 Switch to implicit passing of FlowMaterializer
* implicit param
* change tests to use implicit materializer
* add ActorFlow trait that provides an implicit materializer inside an actor
  in the right way, i.e. encourage usage of that instead of
  implicit def mat(implicit arf: ActorRef): FlowMaterializer
* make http compile, but those who know the api better will have to adjust
  to take full advantage of the implicit materializer
2014-08-21 13:40:43 +02:00
Mathias
e7ef23f6f8 =htp Apply remaining review feedback 2014-08-06 00:20:12 +02:00
Mathias
3747196356 =htp Add more multipart unmarshalling tests 2014-08-05 20:11:18 +02:00
Mathias
1c3bd3817e =hco,htp Upgrade to latest release-2.3-dev head 2014-08-05 20:11:18 +02:00
Mathias
991293b25f +htp add high-level unmarshalling API entry point, more tests 2014-08-05 20:11:18 +02:00
Mathias
e39f4fd0d2 +htp add first version of new unmarshalling infrastructure, tests still missing 2014-08-05 20:11:18 +02:00
Mathias
bebdd549d3 =htp smaller improvements in the marshalling infrastructure 2014-08-05 20:11:18 +02:00
Mathias
52839bc11d +htp add first version of new marshalling infrastructure 2014-08-05 20:11:18 +02:00
Viktor Klang
09ceb8ec92 Removing akka-http, making so that 'waves of actors'-test fails when there's a problem and removing unused config sections in the conf file 2011-11-09 15:47:57 +01:00
Viktor Klang
f0715ca181 Removing Channel(s), tryTell etc, everything compiles but all tests are semibroken 2011-10-31 16:09:51 +01:00
Roland
eb314da5d6 make most AkkaSpec-based tests runnable in Eclipse 2011-10-21 17:01:22 +02:00
Roland
ad526535d1 Merge with Peter's work (i.e. merging master into tame-globals) 2011-10-13 14:17:07 +02:00
Roland
ee57ef564c fix akka-docs compilation, remove duplicate applications from STM tests 2011-10-13 13:53:09 +02:00
Peter Vlugter
9d5d652860 Merge master into tame-globals branch 2011-10-13 13:41:44 +02:00
Roland
32effb5083 make EventHandler non-global
- add Logging trait for nicer interface
- add EventHandlerLogging class for offering the nice interface from
  app.log
- add eventHandler instance to app and use that for all internal logging
  (this means that some places (dispatchers, remoting) were infiltrated
  by app just to do logging, but I think we'll need app in there soon
  enough for other reasons)
2011-10-13 13:21:59 +02:00
Peter Vlugter
e945dcfbe7 Fix actor ref spec 2011-10-12 09:57:33 +02:00
Roland
4df5b801fa make everything except tutorial-second compile
someone should look at remoting vs. timeout (i.e. which is sent around),
because I removed that in some places. It might simply be irrelevant
once we remove the Future special-casing.
2011-10-12 09:10:05 +02:00
Roland
50caa966d1 make akka-actor-tests compile again 2011-10-11 16:05:48 +02:00
Jonas Bonér
3ec48171b7 Removed the ActorRegistry, the different ActorRefProvider implementations now holds an Address->ActorRef registry. Looking up by UUID is gone together with all the other lookup methods such as 'foreach' etc. which do not make sense in a distributed env. 'shutdownAll' is also removed but will be replaced by parental supervision. 2011-10-10 14:02:33 +02:00
Peter Vlugter
1ac8c2876c Remove SelfActorRef and use ActorContext to access state in ActorInstance. See #1202
- removed SelfActorRef
- added an ActorContext interface that provides a view into ActorInstance
- the ActorInstance (as ActorContext) gets injected into the Actor
- moved self methods like sender and reply directly to the Actor
2011-09-19 12:03:15 +02:00
Viktor Klang
b13cb6de96 Adding initial support for Props 2011-08-26 17:25:18 +02:00
Viktor Klang
163d5deb82 Updating copyright section to Typesafe Inc. etc 2011-07-14 16:03:08 +02:00
Viktor Klang
48ade26f1f Minor renames of parameters of non-user API an some code cleanup 2011-06-06 20:05:43 -07:00
Viktor Klang
d260e6268e Fixing bugs in actorref creation, or rather, glitches 2011-06-06 16:48:25 -07:00
Viktor Klang
e0dd6ba7f8 Some more minor code cleanups of Mist 2011-06-05 23:17:22 -07:00
Viktor Klang
7b32dd8e1a Cleaning up some Mist code 2011-06-05 22:03:05 -07:00
Viktor Klang
3d50a412bf Removing the Jersey Http Security Module plus the AkkaRestServlet 2011-06-05 19:29:46 -07:00
Viktor Klang
7fa79ac084 Adding support for specifying the root endpoint id in web.xml for Mist 2011-06-05 19:02:23 -07:00
Viktor Klang
c03cfcf2fd Replacing hook + provider with just a PartialFunction[String,ActorRef], closing ticket #749 2011-05-20 13:56:47 +02:00
Jonas Bonér
c7dad93285 Added Scalariform sbt plugin which formats code on each compile. Also checking in reformatted code 2011-05-18 17:25:30 +02:00
Jonas Bonér
9d73c28514 Merged wip-2.0 branch with latest master 2011-05-16 12:32:00 +02:00
Jonas Bonér
d9cc8d6cb8 Misc fixes everywhere; deployment, serialization etc. 2011-05-16 09:47:23 +02:00
Viktor Klang
371bf31cd8 Fixing ticket #813 2011-04-28 16:03:21 +02:00
Viktor Klang
7614559560 Fixing tickets #816, #814, #817 and Dereks fixes on #812 2011-04-28 16:01:11 +02:00
Jonas Bonér
c7c3e17b43 Rebased from master branch 2011-04-27 01:06:08 +02:00
Patrik Nordwall
98b3f5f55a Added parens to override of preStart and postStop 2011-04-26 20:31:08 +02:00
Jonas Bonér
1d1d32cd7f mid-address-refactoring: all tests except remote and serialization tests passes 2011-04-20 20:43:17 +02:00
Patrik Nordwall
1e4b36c680 Added parens to start 2011-04-12 09:56:17 +02:00
Jonas Bonér
8c0152b7bc Merged with Viktors work with removing client managed actors. Also removed actor.id, added actor.address 2011-04-08 21:16:05 +02:00
Jonas Bonér
1ff587765c commit in the middle of address refactoring 2011-04-08 15:29:14 +02:00