19 Nov, 2014
1 commit
-
* also added test to ensure that it is possible to inline a route's handler and avoid the need for a heap. git-svn-id: https://svn.forgerock.org/openig/trunk@730 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
18 Nov, 2014
1 commit
-
- Renamed files - Fixed javadoc. - Fixed doc. - Thanks to Mark for his patch on chap-compatibility. git-svn-id: https://svn.forgerock.org/openig/trunk@719 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
17 Nov, 2014
2 commits
-
* updated all tests and default config * issue deprecation warning if heap/objects field is still used. git-svn-id: https://svn.forgerock.org/openig/trunk@718 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@717 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
14 Nov, 2014
1 commit
-
git-svn-id: https://svn.forgerock.org/openig/trunk@705 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
13 Nov, 2014
2 commits
-
- Changed the default cipher algorithm from "DES/ECB/NoPadding" to "AES/ECB/PKCS5Padding". - Modified/added unit tests according to the new selected default cipher. - Updated javadoc. git-svn-id: https://svn.forgerock.org/openig/trunk@702 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@701 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
12 Nov, 2014
1 commit
-
A `StackOverFlowError` can be thrown during the Heap init when the configuration file declare global decorators that have a heap object dependency. When the globally enabled decorator is first created, it tries to resolve a dependency from the heap, the heap then tries to decorate that instance, looking for the globally declared decorator, that is not yet available since it has not finished its initialization, so the heap think the decorator instance was not created yet and triggers another decorator instance creation, that will itself try to resolve the dependency, looping again and again ad nauseam. The framework cannot provide any guards against that problem right now, the decorators implementers have to care of this on their own and carefully craft their decorators to avoid that problem. The framework can only provide some limited level of support to help developers not hitting that issue. Introduced a new `DecoratorHeaplet` abstract class that does not resolve automatically heap objects at creation time (no `LogSink` and `TemporaryStorage` resolution, as opposed to `GenericHeaplet` behaviour). Introduced a `LazyReference<T>` that encapsulate the resolution logic to allow easy heap object resolution delaying. Decorator implementation are encouraged to use theses 2 classes (having their `Heaplet` extending `DecoratorHeaplet` instead of `GenericHeaplet`) and using `LazyReference` when a heap object dependency is un-avoidable. Moved `CaptureDecorator` to use the `LazyReference` and updated existing decorator's heaplet to extend `DecoratorHeaplet`. Updated javadoc to make that clear for Decorator implementers. git-svn-id: https://svn.forgerock.org/openig/trunk@699 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
07 Nov, 2014
5 commits
-
Wrong charset used in Entity class - Added static UTF_8 Charset. - Replaced newDecodedContentReader(null) by newDecodedContentReader(UTF_8) in entity#getJson. git-svn-id: https://svn.forgerock.org/openig/trunk@695 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
That will be useful to support deactivation marker values when configuring cache timeouts. This fix support both `zero` and `disabled` as zero-length Duration markers. When the parsed String value also represents a zero-length duration (like `0 days and 0 ms`), the special ZERO marker duration is returned. Updated documentation as well. git-svn-id: https://svn.forgerock.org/openig/trunk@692 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
In order to facilitate OPENIG-370 (log simplification), we now expose the Name of the log source to the Logger. This has a number of implications: * `LogEntry.source` has been splited into the `source` and `type` attributes. source being the original Name and type being the type of the entry (like `log`, `started`, `elapsed`, ...). Log messages have the `log` type and exception's messages have the `throwable` type. * Logger is no more a LogSink implementation * LogEntry has been adapted to directly use Logger instead of LogSink (this way it can benefit of the Logger.source attribute's value automatically) * Logger do not "rebase" the source name anymore: can't do that since source is not a String anymore. * That solves the source duplication issue of OPENIG-370 LogSink interface has been adapted to have a source Name instead of a source String when trying to determine if something is legible. LogSink implementations (ConsoleLogSink and FileLogSink) have been changed to keep an output as close as possible as what we have previously (don't want to work on OPEN-370 yet). git-svn-id: https://svn.forgerock.org/openig/trunk@689 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
A Name is a recursive object based on a leaf name and a parent Name. Each Heap as a unique Name used to scope names of the managed heap objects. Each heap object has a unique Name whose parent is the container Heap. The Heaplet interface has been updated to give the Name instead of just a String. The name of each created heap is based on the resource name. git-svn-id: https://svn.forgerock.org/openig/trunk@688 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@687 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
06 Nov, 2014
1 commit
-
git-svn-id: https://svn.forgerock.org/openig/trunk@686 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
05 Nov, 2014
2 commits
-
git-svn-id: https://svn.forgerock.org/openig/trunk@684 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@680 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
04 Nov, 2014
1 commit
-
When capturing the exchange's content, we're using JsonOutput with a Map view of the Exchange. It happens that this view, because of the FieldMap stuff, only includes exchange's public fields. It looks like this is not an issue for Expressions. We'll fix all of theses public properties at once git-svn-id: https://svn.forgerock.org/openig/trunk@677 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
03 Nov, 2014
2 commits
-
* `preparedStatement` attribute is required * `parameters` could be optional if no placeholders are specified Used the as-list-of construct to init the parameters' expression's value. Synched the doc git-svn-id: https://svn.forgerock.org/openig/trunk@676 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@675 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
31 Oct, 2014
2 commits
-
The JDBC spec states that PreparedStatement created through Connection.prepareStatement(String) have the FORWARD_ONLY type. A forward only statement may not implement the first() method (does not make sense to go back to the first row when you can only move forward). So, it's safer to use ResultSet.next(). git-svn-id: https://svn.forgerock.org/openig/trunk@674 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
Trying to fill a non-existent prepared-statement placeholder results in a SQLException (`Invalid column index` for Oracle, some other for MySQL, ...), so we simply avoid theses errors by ignoring extra parameters. We also output meaningful (I hope) warnings for both extra parameters and un-valued placeholders. git-svn-id: https://svn.forgerock.org/openig/trunk@673 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
30 Oct, 2014
4 commits
-
The CaptureDecorator can now be configured to additionally capture the content of the Exchange being intercepted. If specified, it will print the full content of the Exchange instance, excluding the `response` and the `request` since they should be captured by another mean. The output contains a deep view of the exchange obtained through introspection of the class structure (this is done by the Groovy JsonOutput class). It appears that this class doesn't support cycles very well, so, depending on the content of the exchange, it may throw exceptions. By default we're doing our best to remove known cycles. By default (in the system provided `capture` decorator), this option is disabled since it adds a lot of cruft in the logs. git-svn-id: https://svn.forgerock.org/openig/trunk@672 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
…nfigured in the config.json Instead of creating manually the HttpClient instance and giving it the (also manually) created TemporaryStorage instance, we now declare an equivalent object declaration in the heap, letting the HttpClient heaplet resolves properly its dependencies. git-svn-id: https://svn.forgerock.org/openig/trunk@670 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@669 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@668 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
29 Oct, 2014
1 commit
-
Although the JSON pointer is sufficient to guarantee unicity of a name within the scope of a heap, it makes it hard for reader to link that name to the configuration object they provided. This patch supports both improvements: * if a `name` attribute is provided in the declaration, use it as-is * if not, prepend the `type` attribute value to the pointer String to help identification This patch also updates the logs samples provided in the documentation. git-svn-id: https://svn.forgerock.org/openig/trunk@666 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
24 Oct, 2014
6 commits
-
git-svn-id: https://svn.forgerock.org/openig/trunk@663 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@662 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@661 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@660 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
Beginning with the removal of routes guarantee that we won't remove a route that was just added or modified. git-svn-id: https://svn.forgerock.org/openig/trunk@659 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@658 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
23 Oct, 2014
8 commits
-
Exception's messages does not have to include the message of their parent anymore. When a route failed to load for any reason, all the chained exception's messages are logged as errors up to the root cause, and the full stack trace is logged at the DEBUG level. Notice that the LogSink you have to configure is the one of the Router itself (in the JSON configuration where the Router handler is declared), configuring the LogSing of the failed route configuration will not help. git-svn-id: https://svn.forgerock.org/openig/trunk@657 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@654 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
- Fixed lenient parser by adding the feature ALLOW_UNQUOTED_CONTROL_CHARS. - Added unit tests about line break. -- Removed jackson from method names. git-svn-id: https://svn.forgerock.org/openig/trunk@653 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@652 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
…edicated to Filter and Handler git-svn-id: https://svn.forgerock.org/openig/trunk@651 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@650 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
We can now differentiate between the time globally spent inside a filter and the time spend in the code of this filter: we simply excludes the time spent outside of this filter (when calling the next handler) git-svn-id: https://svn.forgerock.org/openig/trunk@649 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
With pausable/resumable LogTimer(s) it's possible to define more precise boundaries when counting time spent inside of a method. git-svn-id: https://svn.forgerock.org/openig/trunk@648 dbb9e58e-28e6-4ce0-90e8-f11d9605b710