10 Oct, 2014
1 commit
-
git-svn-id: https://svn.forgerock.org/openig/trunk@614 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
09 Oct, 2014
1 commit
-
Thanks to Jean-Charles for review git-svn-id: https://svn.forgerock.org/openig/trunk@612 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
08 Oct, 2014
1 commit
-
git-svn-id: https://svn.forgerock.org/openig/trunk@611 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
06 Oct, 2014
1 commit
-
git-svn-id: https://svn.forgerock.org/openig/trunk@600 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
01 Oct, 2014
1 commit
-
git-svn-id: https://svn.forgerock.org/openig/trunk@598 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
25 Sep, 2014
4 commits
-
git-svn-id: https://svn.forgerock.org/openig/trunk@597 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@596 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@595 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@594 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
24 Sep, 2014
4 commits
-
git-svn-id: https://svn.forgerock.org/openig/trunk@593 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
This patch addresses three issues: OPENIG-313: Instead of labelling reference values as strings, call them references OPENIG-317: Update documentation to use inlined objects OPENIG-327: Update documentation to reflect that empty "config" fields are now optional There remains some work for OPENIG-313, however. This commit only resolves OPENIG-317 & OPENIG-327. git-svn-id: https://svn.forgerock.org/openig/trunk@592 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@591 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
The "config" attribute is now optional and the declaration can be omitted for a better understanding/lisibility. Unit tests added. git-svn-id: https://svn.forgerock.org/openig/trunk@590 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
23 Sep, 2014
4 commits
-
git-svn-id: https://svn.forgerock.org/openig/trunk@589 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@588 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@587 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@586 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
22 Sep, 2014
2 commits
-
git-svn-id: https://svn.forgerock.org/openig/trunk@585 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
This patch puts the sample filter in the doc samples, and shows a class alias resolver. git-svn-id: https://svn.forgerock.org/openig/trunk@584 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
19 Sep, 2014
1 commit
-
git-svn-id: https://svn.forgerock.org/openig/trunk@583 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
18 Sep, 2014
1 commit
-
If you can store all state on the user-agent, for example by using the JwtSession implementation, then perhaps OpenIG can be stateless enough that there is no need to do anything special when load balancing. If some of the state is stored on the server, then you need to configure the load balancer for session stickiness and to configure the container for session replication. Neither the load balancer configuration nor the container configuration are specific to OpenIG, so this patch explains what needs doing and points to the documentation for supported containers Apache Tomcat & Jetty. git-svn-id: https://svn.forgerock.org/openig/trunk@582 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
17 Sep, 2014
1 commit
-
This patch removes arbitrary use of exchange.session, but also shows using JwtSession where it could make sense, as in the federation tutorial. git-svn-id: https://svn.forgerock.org/openig/trunk@581 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
16 Sep, 2014
4 commits
-
Trivial fix reviewed by Guillaume. git-svn-id: https://svn.forgerock.org/openig/trunk@580 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@579 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@578 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@577 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
15 Sep, 2014
6 commits
-
git-svn-id: https://svn.forgerock.org/openig/trunk@575 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@574 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
It was misplaced in the openig-core module where it was used in openig-war module. git-svn-id: https://svn.forgerock.org/openig/trunk@573 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
Heap.get(String):Object gains type safety Heap.get(String, Class<T>):T Heap.getRequiredObject(JsonValue, Class<T>) has a shorter name Heap.resolve(JsonValue, Class<T>):T Heap.getObject(JsonValue, Class<T>) is replaced by a resolve variant that supports optional dependencies: Heap.resolve(JsonValue, Class<T>, boolean):T git-svn-id: https://svn.forgerock.org/openig/trunk@572 dbb9e58e-28e6-4ce0-90e8-f11d9605b710 -
Inline object declarations are a mean to ease understanding of Exchange processing. They permit to describe anonymously, inner objects when a reference to another heap object is required. That introduce, in the configuration files, some hierarchical support, easing the user to mentally represents his processing chain. This is done in a fully backward compatible way, without requiring any changes to existing object declarations (the one that requires other objects through references or names). The idea is to automatically extract inline declaration when the Heaplet is calling the get***Object() methods: if the provided JsonValue is a String, traditional object lookup is performed, but when the JsonValue represents a JSONObject (a Map), we try to turn this into a normal object declaration (just like what is done during heap initialisation). If the given JsonValue does not describe a valid declaration, a JsonValueException is thrown (again, just like the heap init process is doing). Notice that inline declarations do not require a 'name' attribute to be specified (like anonymous Java classes), so we generate a unique name based on the JsonPointer (represents the location of the node in the JSON structure). Notice that OPENIG-316 is partly resolved in this commit: HeapUtil methods have only been moved into the Heap interface: no additional type safety, no renaming. git-svn-id: https://svn.forgerock.org/openig/trunk@571 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
12 Sep, 2014
2 commits
-
git-svn-id: https://svn.forgerock.org/openig/trunk@570 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@569 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
11 Sep, 2014
1 commit
-
git-svn-id: https://svn.forgerock.org/openig/trunk@568 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
10 Sep, 2014
3 commits
-
git-svn-id: https://svn.forgerock.org/openig/trunk@567 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@566 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
OpenIG used to provide a default Session implementation based on the underlying Servlet container's HttpSession. This changeset intends to gives to the user the ability to change the session persistence strategy (in other words: changing the Session implementation). This can be done at the global level (in the config.json, declaring a SessionFactory object named 'Session') or on a per-route basis (with the new 'session' attribute). When an Exchanges comes into a route that declares a new session type, a new session is build (no existing session items are propagated) and replace the old session. When the exchange exits the route, the new session is closed (notify the session that it's time to persist its content) and is replaced by the old one. Really like a push/pop stack mechanism. Notice that the 2 sessions are completely separated (cannot access the old content from the new and vis-versa). First, that would defeat the purpose of different session persistence modes (if items are propagated, where should I persist them ?). Secondly, Session is not intended to share data between handlers/filters: the Exchange is basically a request-scoped Map that is designed for that purpose. The JWT based session is a session implementation whose persistence is done using an HTTP Cookie, the session's content being serialized as JSON (usable types are constrained, see list below) and used as the payload of an encrypted JSON Web Token (JWT). The use of the JWT session has a few constraints: * HTTP Cookies are size-limited to 4K -> Small objects can be stored * Only JSON compatible types are supported: * null * Java primitive types + their boxed equivalent * Strings (and any CharSequence) * List and Map (of the supported types, recursively) * Same client performing concurrent HTTP invocations (so within the same HTTP session) that will modify their own session content will see inconsistencies in the session. This is due to the fact that the JWT session is not shared, each concurrent Thread has its own instance and can modify it at will. At the end of the processing, each Thread will serialize its own session's content regardless of other Threads. git-svn-id: https://svn.forgerock.org/openig/trunk@565 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
09 Sep, 2014
1 commit
-
… parent configurations git-svn-id: https://svn.forgerock.org/openig/trunk@564 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
08 Sep, 2014
1 commit
-
git-svn-id: https://svn.forgerock.org/openig/trunk@563 dbb9e58e-28e6-4ce0-90e8-f11d9605b710