PJ Dietz
75088499b8
Ensure $args propagate from Router to Handlers
2014-08-02 17:42:16 -04:00
PJ Dietz
512897effd
Prefer apache_request_headers when reading request headers.
...
Apache does not pass the Authorization header through to PHP as
$_SERVER["HTTP_AUTHORIZATION"], so reading from $_SERVER is not viable
with Apache.
2014-07-28 12:43:29 -04:00
PJ Dietz
46f11b2b9b
Fix Request for PHP 5.3.0 compatibility
2014-07-28 10:08:27 -04:00
PJ Dietz
7d3f4442b4
Code style
2014-07-27 16:52:59 -04:00
PJ Dietz
d1a77c5454
Allow * wildcard at end of URI template
2014-07-27 16:37:24 -04:00
PJ Dietz
e77c85f71b
Update documentation and README
2014-07-26 22:39:26 -04:00
PJ Dietz
1c5d95e727
Router::getResponse() now returns null to allow better nesting
...
Runs tests that output responses in process isolation
2014-07-26 19:05:38 -04:00
PJ Dietz
60eaabadd5
Update phpdoc for Client
2014-07-26 11:59:46 -04:00
PJ Dietz
4db7c8da7d
Add Request::getFormFields. Add Test for sending form-encoded request
2014-07-26 11:49:15 -04:00
PJ Dietz
4ae6e5f2e4
Fix issue in Response when setting headers in constructor
...
Update tests for Response
2014-07-26 01:47:05 -04:00
PJ Dietz
3d1690404e
Add Request::setFormFields
2014-07-26 01:20:51 -04:00
PJ Dietz
3d44d1a3f5
Test sending body with Client
2014-07-25 23:08:27 -04:00
PJ Dietz
70c2ef1150
Fix problem where Client did not set headers.
2014-07-25 14:29:04 -04:00
PJ Dietz
1a21b2b7d0
Add Client class
...
Move Request::request() to Client::request()
2014-07-24 20:41:32 -04:00
PJ Dietz
982e048b4f
Move HttpExceptions to their own namespace
2014-07-14 01:01:41 -04:00
PJ Dietz
1e32c66cb5
Always clean body on HEAD request
2014-07-14 01:01:15 -04:00
PJ Dietz
ecb58c11b8
Clean up unused imports
2014-07-14 01:00:38 -04:00
PJ Dietz
b601c38d36
Add tests for Router
2014-07-14 00:19:04 -04:00
PJ Dietz
794d0901b9
Fix documentation and add tests for Response
2014-07-13 23:56:19 -04:00
PJ Dietz
581c3d1351
Update documentation and add tests for Request
2014-07-13 21:39:01 -04:00
PJ Dietz
8aa6b91d91
Update documentation on Router and Message
2014-07-13 17:41:52 -04:00
PJ Dietz
6a642dfed2
Fix documentation and add tests for BaseRoute
2014-07-13 17:18:08 -04:00
PJ Dietz
e597926634
Fix documentation and add tests for TemplateRoute
2014-07-13 17:08:15 -04:00
PJ Dietz
f11c13c1b3
Fix documentation and add tests for RegexRoute
2014-07-13 16:27:09 -04:00
PJ Dietz
921d84cf8b
Update StaticRoute documentation and add tests
2014-07-13 15:50:30 -04:00
PJ Dietz
18d3d6c9db
Update RouteBuilder docs and add test
...
- Remove RouteBuilder::buildRoutesFromJson()
- Allow RouteBuilder::buildRoutes() to parse JSON
- Add PHPUnit
- Add tests for RouteBuidler
- Update docs for RouteBuilder
- Update README RouteBuilder example
- Rename constant in BaseRoute
2014-07-13 14:29:37 -04:00
PJ Dietz
ae9fbaa709
Add phpdoc for HttpException and subclasses.
2014-07-13 10:26:01 -04:00
PJ Dietz
aec8bcca4a
Fix phpdoc for interfaces, Handler.
2014-07-13 10:12:12 -04:00
PJ Dietz
3be61bfb07
Fix phpdoc in Handler
2014-07-13 09:22:13 -04:00
PJ Dietz
c61b2197ea
Remove @package tag from phpdoc throughout.
2014-07-13 09:00:38 -04:00
PJ Dietz
d9840067db
Fix typos in exception names.
2014-07-11 15:01:25 -04:00
PJ Dietz
47fdc0e31b
Add HTTP Exceptions and convert to responses in Handler
2014-07-10 22:47:05 -04:00
PJ Dietz
25c423e0ee
Simplify Request::getRequestHeaders()
2014-07-08 20:21:23 -04:00
PJ Dietz
08cf2f4ec2
Fix typos
2014-06-29 10:51:51 -04:00
PJ Dietz
aa06181e40
Refactor DispatcherInterface to HandlerInterface
...
Update file doc blocks
Code inspection
2014-06-29 10:43:39 -04:00
PJ Dietz
3718e03c78
Add RouteBuilder class for parsing route configurations
2014-06-29 02:11:52 -04:00
PJ Dietz
12b971dfe6
Add convenience methods to Router
...
Code cleanup and inspection
2014-06-28 20:12:55 -04:00
PJ Dietz
f60b010f11
Update Router class to match new DispatcherInterface
2014-06-28 20:03:36 -04:00
PJ Dietz
8f99b88d09
Reduce number of interfaces and classes
...
Remove RouterInterface, Route, and RouteTarget
Change signature of DispatcherInterface::getResponse() to include args
Update classes to match new DispatcherInterface::getResponse()
This update simplifies the API significantly with most classes now
simply needing to implement DispatcherInterface
2014-06-28 19:42:05 -04:00
PJ Dietz
618058850d
Add Route classes
...
Route is now replaced with several classes descending from BaseRoute.
Each of these routes takes care of autoloading and instantiated the
RouteTargetInterface instead of leaving that to the Router.
2014-06-28 18:44:09 -04:00
PJ Dietz
086dd62f05
Bugfixes from removing magic methods
2014-06-28 18:30:27 -04:00
PJ Dietz
c1937e8a33
Remove magic methods from Message
2014-06-28 16:24:16 -04:00
PJ Dietz
566384f1e4
Promote Response::getStatusLine() to public
...
Fix issue where response phrase was not set in Response constructor.
2014-04-07 16:25:22 -04:00
PJ Dietz
8049635837
Add ability to read response body from a file without reading the entire file into memory
2014-03-19 15:13:29 -04:00
PJ Dietz
a756adf933
Update RequestInterface to inherit from RouteableInterface
2013-08-25 23:05:13 -04:00
PJ Dietz
e3e98377c3
Track route depth on the Request, not on the Router.
...
This allows a Handler to use the top-level router and have the depth count match the depth for the current request, not the total.
2013-08-16 18:59:05 -04:00
PJ Dietz
d91ac12541
Add safeguard against infinite routing loops
2013-08-16 17:49:37 -04:00
PJ Dietz
6013198436
Allow Routers to dispatch additional Routers
...
- RouterInterface and HandlerInterface now share a parent, RouteTargetInterface.
- A Router may now be used as the target for a Route.
- Route's handler member is not replaced by Router's target member.
- Route::getHandler() and Route::setHandler() are deprecated and alias getTarget() and setTarget()
2013-08-16 16:51:09 -04:00
PJ Dietz
dbd4ff96a5
Split response into headers and body based on the size of the headers cURL reports.
...
Fixes an issue with 100 Continue status codes, etc. where r\n\r\n appears within the list of headers.
2013-08-14 10:47:02 -04:00
PJ Dietz
fef677168e
Allow Request::readHttpRequest to work when apache_request_headers is not available.
2013-06-12 19:54:08 -04:00