PJ Dietz
|
b8b87a8032
|
ServerRequest copies request body to temp stream to allow multiple reads
|
2017-12-18 09:28:11 -05:00 |
PJ Dietz
|
3a77d99e00
|
Minor refactor of Router; various cleanup
|
2017-08-03 14:15:08 -04:00 |
PJ Dietz
|
83381bf5d5
|
Update PhpDoc return types as static to match updated PSR-7 interfaces
|
2017-08-03 14:05:02 -04:00 |
PJ Dietz
|
6772bd1ae0
|
New Message instances have an empty Stream instead of NullStream by default.
|
2016-05-22 12:44:40 -04:00 |
PJ Dietz
|
409ffe9371
|
new Stream() with no arguments creates an empty temp steam
|
2016-05-22 12:42:59 -04:00 |
PJ Dietz
|
0c61641376
|
Do not attempt to rewind unsociable streams when transmitting response
|
2016-02-22 14:45:16 -05:00 |
PJ Dietz
|
db7aaa2688
|
ServerRequest parses request body when Content-type header includes expected values; allows for charset in header value.
|
2015-11-08 19:31:43 -05:00 |
PJ Dietz
|
2fe3575e69
|
Relax protection on some Server members to allow extension
|
2015-06-07 10:34:38 -04:00 |
PJ Dietz
|
6a1f0c2915
|
Spellcheck
|
2015-06-04 19:18:11 -04:00 |
PJ Dietz
|
6f33eab90b
|
Update docblocks and fix typos
|
2015-06-02 19:45:14 -04:00 |
PJ Dietz
|
4429d4280b
|
Stream opens php://temp for binary read-write
|
2015-06-01 19:07:08 -04:00 |
PJ Dietz
|
139e3c43da
|
Template Routes do not match slash prefix variables that contain slashes as the non-first character
|
2015-05-25 10:17:42 -04:00 |
PJ Dietz
|
4ba6763126
|
URI Templates with slash prefix explosions do not match reserved characters
|
2015-05-24 13:53:56 -04:00 |
PJ Dietz
|
41336d9387
|
Uri does not percent encode reserved characters
|
2015-05-24 13:21:09 -04:00 |
PJ Dietz
|
5dcd119952
|
Add public method Server::getDispatcher to make the dispatcher available.
|
2015-05-21 12:14:28 -04:00 |
PJ Dietz
|
4ec0694351
|
Revise docblocks for interfaces.
|
2015-05-20 14:42:57 -04:00 |
PJ Dietz
|
ab05ca0b40
|
Propagate pathVariablesAttributeName from Server to Router
|
2015-05-19 21:21:58 -04:00 |
PJ Dietz
|
dedec4ec4e
|
Router stores path variables directly as attributes by default.
|
2015-05-19 21:06:50 -04:00 |
PJ Dietz
|
0387255676
|
Remove unused import.
|
2015-05-19 19:50:03 -04:00 |
PJ Dietz
|
ac2ed4a24a
|
Router stops propagating on 404, 405, and OPTIONS
|
2015-05-19 19:12:12 -04:00 |
PJ Dietz
|
a825654336
|
Refactor MiddlewareInterface::dispatch to MiddlewareInterface::__invoke
|
2015-05-19 18:35:29 -04:00 |
PJ Dietz
|
474d8da61c
|
Server accepts attributes array as first constructor parameter and sets attributes on server request
|
2015-05-17 16:56:30 -04:00 |
PJ Dietz
|
b06abc0df2
|
Stream checks isSeeakable before calling rewind in __toString
|
2015-05-17 16:56:30 -04:00 |
PJ Dietz
|
c8bbd6d2b8
|
Remove dead code from Transmitter
|
2015-05-15 19:11:54 -04:00 |
PJ Dietz
|
15602d8e97
|
Remove suppression operator from RegexRoute
|
2015-05-15 19:11:43 -04:00 |
PJ Dietz
|
3d4a263beb
|
Server accepts all dependencies as arguments to either constructor or respond
|
2015-05-14 19:43:08 -04:00 |
PJ Dietz
|
3f5e2321d9
|
Transmitter provides Content-length header without external class. Transmitter no longer alters the body for HEAD requests.
|
2015-05-14 07:51:28 -04:00 |
PJ Dietz
|
1be4ff7691
|
Router uses only the request's path for routing
|
2015-05-13 21:53:33 -04:00 |
PJ Dietz
|
3b18d1dcdb
|
Router reads path variables from route and adds them to request before dispatching route
|
2015-05-13 21:53:33 -04:00 |
PJ Dietz
|
6232f67b9c
|
Update RouteInterface and routes
|
2015-05-13 21:53:33 -04:00 |
PJ Dietz
|
61fd0f3354
|
TemplateRoute more throughly implements URI Templates as defined in RFC 6570
Template support:
- Simple strings /{var}
- Reserved string /{+var}
- Multiple variables per expression /{hello,larry}
- Dot-prefixes /{.filename,extension}
- Slash-prefiex {/path,to,here}
- Explosion {/paths*}, /cats/{ids*} explode to list arrays
|
2015-05-13 21:53:27 -04:00 |
PJ Dietz
|
1bb93434b2
|
Store variables from URI as uriVariables attributes
|
2015-05-12 17:58:35 -04:00 |
PJ Dietz
|
22a17e42bb
|
Update Route docblocks
|
2015-05-12 17:44:28 -04:00 |
PJ Dietz
|
297e985e84
|
DispatchStack calls $next only when the stack runs to the end.
|
2015-05-12 07:54:11 -04:00 |
PJ Dietz
|
26a6a25d3b
|
Rename Server::makeRouter to Server::createRouter
|
2015-05-11 15:39:12 -04:00 |
PJ Dietz
|
64eb5aecdd
|
Rename Responding\Responder Transmission\Transmitter
|
2015-05-10 20:17:26 -04:00 |
PJ Dietz
|
0f9c5079f9
|
Add Server
|
2015-05-10 19:04:12 -04:00 |
PJ Dietz
|
67d562b3bc
|
Responder::respond process responses for Content-length header and HEAD requests
|
2015-05-10 18:28:13 -04:00 |
PJ Dietz
|
b198e83d55
|
Add Responder namespace
Move ContentLength and Head middleware to Resonder\Middleware
|
2015-05-10 16:59:50 -04:00 |
PJ Dietz
|
7874484c53
|
Remove HttpExceptions
This will become its own package.
|
2015-05-10 16:50:21 -04:00 |
PJ Dietz
|
f849a6ff89
|
Router optionally takes a DispatcherInterface on construction
|
2015-05-10 14:32:43 -04:00 |
PJ Dietz
|
3811b9085f
|
Dispatcher creates DispatchStack for array
|
2015-05-10 13:53:15 -04:00 |
PJ Dietz
|
3786cfaade
|
Passing array to Router::register as middleware creates a DispatchStack
|
2015-05-10 12:15:39 -04:00 |
PJ Dietz
|
6507028dd3
|
Pass DispatchProvider to Router on construction
|
2015-05-10 12:04:36 -04:00 |
PJ Dietz
|
37af085ec5
|
Pass DispatcherInterface to RouteFactory on construction
|
2015-05-10 11:46:51 -04:00 |
PJ Dietz
|
87caa09b61
|
Pass DispatcherInterface into MethodMap on construction
|
2015-05-10 11:41:02 -04:00 |
PJ Dietz
|
94d6cc23b2
|
Add DispatchProviderInterface
|
2015-05-10 11:31:19 -04:00 |
PJ Dietz
|
8071b0b5db
|
Move MiddlewareInterface to the root namespace.
|
2015-05-10 11:21:55 -04:00 |
PJ Dietz
|
bbb138996a
|
Add Dispatching namesapce
|
2015-05-10 11:02:59 -04:00 |
PJ Dietz
|
560b1e8ff0
|
Add DispatchStack
|
2015-05-10 10:30:22 -04:00 |