Partial fix for OPENIG-235: Add better encapsulation of exchange object model in order to add addition "enhanced" getters and setters for fields

Provide better APIs for interacting with Message entities. Previously we were stuck with the esoteric BranchingInputStream which makes entities very hard (impossible?) to use in expressions and Groovy.

* methods for getting the entity's content as JSON or as a plain String
* methods for setting the entity's content to JSON or String data
* simplification (I hope) of the branch life-cycle management
* make Message closeable, delegating close to the entity and onto the branching input stream, allowing us to avoid alot of null-checking boilerplace.


git-svn-id: https://svn.forgerock.org/openig/trunk@443 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
OPENIG-243 (CR-4178) Introduce a MutableUri construct to ease URI modifications
* Request.uri is now a MutableUri
* Removed UriResolver since it was useless with both this new feature and the BeanResolver

git-svn-id: https://svn.forgerock.org/openig/trunk@444 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
Fix OPENIG-195: Implement OAuth 2.0 Client support

Minor enhancement: provide the ability to configure per-provider scopes. Scopes are also no longer required since defaults can be configured at the IdP. See Javadoc for more detail.

git-svn-id: https://svn.forgerock.org/openig/trunk@445 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
Fix minor compiler warnings.

git-svn-id: https://svn.forgerock.org/openig/trunk@446 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
OPENIG-243 (CR-4178) Introduce a MutableUri construct to ease URI modifications

Minor optimization.

git-svn-id: https://svn.forgerock.org/openig/trunk@447 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
OPENIG-243 (CR-4178) Introduce a MutableUri construct to ease URI modifications

* fix bug which meant that incoming request's path and query were not URL decoded correctly and prevented redirect URLs from working.


git-svn-id: https://svn.forgerock.org/openig/trunk@448 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
CR-4173 Fix for OPENIG-216: Update documentation for changes to org.forgerock.openig.servlet

git-svn-id: https://svn.forgerock.org/openig/trunk@449 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
OPENIG-244 NPE when FileAttributesFilter.fields attribute is not set
* Only read the values if fields attribute is present

git-svn-id: https://svn.forgerock.org/openig/trunk@450 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
Fix an old copy/paste error in the documentation

git-svn-id: https://svn.forgerock.org/openig/trunk@451 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
Added RedirectFilter test case with Location containing encoded URL reserved characters

git-svn-id: https://svn.forgerock.org/openig/trunk@452 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
Added MutableUri test cases for reserved URI characters
They are currently not working, so I disabled them for now

git-svn-id: https://svn.forgerock.org/openig/trunk@453 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
OPENIG-245 Support Request restore in StaticRequestFilter
* By default, the new Request is kept in the Exchange
* If enabled, the original Request is restored in the Exchange

git-svn-id: https://svn.forgerock.org/openig/trunk@454 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
The code and documentation mandates that "uri" is required.
* Reflect this in the Heaplet, throw an exception at config time if the attribute is missing (better than a NPE at execution time)

git-svn-id: https://svn.forgerock.org/openig/trunk@455 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
Align docs with r454 (which fixes OPENIG-245)

git-svn-id: https://svn.forgerock.org/openig/trunk@456 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
OPENIG-52 RedirectFilter allow Expressions in baseURI
* Non-expression values are still supported (fixed/static expression like "http://www.example.com")
*Expressions are evaluated at runtime against the executed Exchange ("http://${exchange.host}:8080" will be resolved against the Exchange)
* If evaluated expression returns null (evaluation error, or null result of a successful evaluation), a HandlerException is thrown
* Added test case

git-svn-id: https://svn.forgerock.org/openig/trunk@457 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
Align reference doc r457 (fix for OPENIG-52)

git-svn-id: https://svn.forgerock.org/openig/trunk@458 dbb9e58e-28e6-4ce0-90e8-f11d9605b710