Commit graph

241 commits

Author SHA1 Message Date
Mathias
46d51e531f =htp reduce set of not-encoded characters in FormData marshalling
Port of https://github.com/spray/spray/pull/918
2014-10-07 12:02:13 +02:00
Patrik Nordwall
14d3501f92 !str #15950 Add runWith and remove toX
* runWith(drainWithKey) and runWith(tapWithKey) returning the
  materialized drain/tap
* remove toPublisher, toSubscriber, and friends, in favor of using
  runWith
* MaterializedMap is the return type for both flow and graph
* Source[T] return type for Source.apply methods
2014-10-06 12:12:05 +02:00
Mathias
1b1aa62072 =htc fix error message in response parser
Port of https://github.com/spray/spray/pull/930
2014-10-06 10:41:55 +02:00
Mathias
5785803eb7 =htc allow 0 as special value If-Modified-Since and similar headers
Port of https://github.com/spray/spray/issues/942
2014-10-06 10:41:55 +02:00
Mathias
d70332dd68 =htc accept comma as cookie separator
Port of https://github.com/spray/spray/pull/870
2014-10-06 10:41:55 +02:00
Mathias
2630742885 =htc fix parsing of Cache-Control header 2014-10-06 10:41:54 +02:00
Mathias
974ffdf839 =htc add missing alias for US-ASCII charset 2014-10-06 10:41:54 +02:00
Mathias
882f47ada8 =htc add ';' to to-be-encoded characters in URI.Query rendering
Port of https://github.com/spray/spray/pull/927
2014-10-06 10:41:51 +02:00
Björn Antonsson
2f6499bcdf Merge pull request #16015 from spray/wip-16014-mathias
=htc Fix handling of non-BMP characters in URI encoding/decoding
2014-10-03 11:13:09 +02:00
Björn Antonsson
be581dffc1 Merge pull request #15984 from spray/w/15910-encoding-infrastructure
+htp #15910 import coding infrastructure from spray
2014-10-03 11:13:06 +02:00
drewhk
fbdd0dc5de Merge pull request #16025 from drewhk/wip-http-bind-failure-testcase-drewhk
=htc Add test case for bind failures
2014-10-03 10:18:30 +02:00
Björn Antonsson
a8013f20b2 Merge pull request #16007 from akka/wip-15977-changin-all-the-small-dsl-things-ban
+str #15977 Rename and change types in the new DSL
2014-10-03 07:52:23 +02:00
Konrad 'ktoso' Malawski
e8f803d011 +hco #15798 add missing java api for Connection.tokens
Resolves #15798
2014-10-02 18:47:33 +02:00
Björn Antonsson
a6ab82f992 !str #15977 Rename and change types in the new DSL
* Cleaned up type signatures
* Changed names of Source/Sink/ProcessorFlow to Tap/Drain/Pipe
* Introduced new Source/Sink/Flow
* Made all Pipe types package private
* Changed the TypeGraph DSL to work on Flow/Sink/Source
2014-10-02 17:32:08 +02:00
Endre Sándor Varga
7dab9636e4 =htc Add test case for bind failures 2014-10-02 17:02:57 +02:00
Johannes Rudolph
fb98d1aa69 +htp #15910 import + improve coding infrastructure from spray 2014-10-02 15:22:06 +02:00
Mathias
abf4091bb7 =htc Fix handling of non-BMP characters in URI encoding/decoding, closes #16014
Also improved the tests for this as they were sub-par so far
2014-10-01 17:16:16 +02:00
Björn Antonsson
ea3198e6e5 !str,hco #15945 Make creation of ServerBinding public again 2014-09-29 15:12:40 +02:00
Björn Antonsson
386c3ba815 Merge pull request #15983 from akka/wip-15945-unbind-tcp-and-http-connection-ban
+hco #15945 Make Tcp and Http server binding closeable
2014-09-26 13:31:41 +02:00
Björn Antonsson
e62945654f +hco #15945 Make Tcp and Http server binding closeable 2014-09-26 12:03:25 +02:00
Björn Antonsson
ad1ad44fcc Merge pull request #15975 from spray/wip-15962-mathias
Remove `Deferrable[T]` and replace with POF (plain old Future)
2014-09-26 11:27:34 +02:00
Mathias
36904eadcb =htc Improve handling of Transfer-Encoding header, closes #15490 2014-09-25 16:53:44 +02:00
Mathias
0afebd1c39 !htc Tighten up header model some more, update spec links 2014-09-25 16:48:03 +02:00
Mathias
a2cf6cf228 !htc Remove obsolete ProtectedHeaderCreation construct 2014-09-25 16:48:03 +02:00
drewhk
82d4963382 Merge pull request #15940 from drewhk/wip-15498-dont-close-after-head-closedelimited-drewhk
Implement transparent HEAD support
2014-09-25 15:22:01 +02:00
Endre Sándor Varga
8fad19c88c +hco #15498: Transparent HEAD support
- don't close on HEAD request when sending CloseDelimited
2014-09-25 15:21:17 +02:00
Mathias
92299158f1 !htc Replace Deferrable with FastFuture 2014-09-25 14:56:31 +02:00
Johannes Rudolph
dc2737d186 =hco don't reject headers that refer to charsets or methods not available on the current platform 2014-09-25 13:41:26 +02:00
Johannes Rudolph
4ba1ce9149 !hco #15635 reorganize registration of predefined, custom HTTP primitives
- No more global registration
 - In most cases registration isn't necessary at all
 - Creation of custom HttpMethod and StatusCode is possible through
   a configuration setting in ParserSettings

Fixes #15635.
2014-09-25 13:41:26 +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
Björn Antonsson
2bdfea25c7 Merge pull request #15895 from richdougherty/richd-http-integration-2.3
+hco Make `Content-Length` header public again and add integration tests
2014-09-22 11:16:06 +02:00
Rich Dougherty
8588fb9fbf !hco Make Content-Length and Content-Type visible but not constructible
This makes the `Content-Length` and `Content-Type` types visible - but not
constructible - outside of Akka HTTP. The change partially reverts #15800.
the http package. The types need to be visible so that Play can access
all parsed headers. However they types are not constructible outside Akka
HTTP because it is not desirable for users to create these headers. Users
should set the Content-Length and Content-Type via the members of the
HttpEntity objects.

Includes integration tests in the io.akka package to ensure that objects
have correct visibility outside akka.http.
2014-09-19 14:21:07 +12:00
Mathias
1f32faeb96 !htc move akka.http.{client,server,parsing,rendering} underneath akka.http.engine package 2014-09-17 16:39:55 +02:00
Mathias
b367613110 =htc move source files into directories for new package structure 2014-09-17 16:26:23 +02:00
Mathias
88d71500ca =htc Fix flow transformer naming error 2014-09-17 16:02:01 +02:00
Björn Antonsson
a902d079b0 +pro #15406 Split up stream into testkit, tests and tck 2014-09-16 10:16:38 +02:00
Mathias
e8c7dc2d58 !htc apply various upgrades and improvements
Most importantly
- Switch to implicit FlowMaterializers, refs #15716
- Introduce new `Deferrable` abstraction
- Remove `EnhancedSeq`
2014-09-11 16:54:15 +02:00
Konrad 'ktoso' Malawski
54e55a659c +str reintroduced the TCK, 0.4.0.M2-SNAPSHOT, passing all tests
Cheers from JavaZone!
2014-09-10 17:44:01 +02:00
Johannes Rudolph
0bc2f37fc4 =hco #15682 replace default toLowerCase calls with one using Locale.ROOT 2014-09-09 09:18:20 +02:00
Johannes Rudolph
10868966d3 =hco fail pending tests faster 2014-09-08 17:39:09 +02:00
Johannes Rudolph
83d40f3bbd !hco #15800 mark Content-Length header private for now
Instances will only created during HTTP message parsing and its value will
then be provided as a field of one of the HttpEntity subclasses.
2014-09-08 17:37:46 +02:00
Konrad 'ktoso' Malawski
cc4fd5ca2c !str #15121 MaterializerSettings now uses a config object
Resolves #15121
2014-09-01 19:21:57 +02:00
Patrik Nordwall
b0051c492e =str #15744 Hook-up transform to the AST nodes
* Removed unused parts of the new dsl, such as FlowGraph
* Materialization of transform, still with old way of terminal operators,
  input/output factories will come next
* New ActorBasedFlowMaterializer in impl2
2014-09-01 12:10:56 +02:00
Konrad Malawski
55e48918fd Merge pull request #15725 from ktoso/wip-transformerFactory-ktoso
!str #15271 make transform() take a factory instead of Transformer
2014-08-26 16:15:36 +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
Martynas Mickevicius
3c38706bb7 !str #15672 add a way to retrieve Publsiher or Subscriber from Output/Input
* also remove ClosedFlow.as(...)
2014-08-22 14:19:41 +03:00
Martynas Mickevicius
59e9f71629 !str #15672 add HTTP Pipeline with the new DSL
* implement graph operations as case class junctions
* add materialization method to ClosedFlow
2014-08-22 12:17:33 +03:00
Björn Antonsson
3ca589ea1b Merge pull request #15709 from spray/w/15670-add-BodyPartExtractors
=htc #15670 add convenience BodyPart extractors
2014-08-22 11:00:18 +02:00
Björn Antonsson
8b359b90d8 Merge pull request #15712 from spray/w/15711-fix-bind-error-message
=htc #15711 fix Http.Bind failure warning message
2014-08-22 09:34:07 +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