19 May, 2014
1 commit
-
…e case of a handler; aligning with Javadoc for the Exchange Motivated by a further review comment from Mark de Reeper git-svn-id: https://svn.forgerock.org/openig/trunk@182 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
18 May, 2014
1 commit
-
git-svn-id: https://svn.forgerock.org/openig/trunk@181 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
16 May, 2014
1 commit
-
git-svn-id: https://svn.forgerock.org/openig/trunk@180 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
15 May, 2014
1 commit
-
* Removed all @author tags * Fixed trailing lines, too long lines, unchecked exceptions * Fixed indent errors * Fixed some javadoc errors (wrong html tags, ...) * Updated some copyright header that were badly formatted * Added some private default constructors and made some utility class 'final' * Fixed all errors in test classes git-svn-id: https://svn.forgerock.org/openig/trunk@179 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
13 May, 2014
2 commits
-
git-svn-id: https://svn.forgerock.org/openig/trunk@178 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@177 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
28 Apr, 2014
1 commit
-
git-svn-id: https://svn.forgerock.org/openig/trunk@176 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
23 Apr, 2014
2 commits
-
This patch also sneaks in a fix for OPENIG-102: Demonstrate one script calling another. The main script calls an SQL client script to show one script calling another. git-svn-id: https://svn.forgerock.org/openig/trunk@175 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
…ripts/groovy as the class path. git-svn-id: https://svn.forgerock.org/openig/trunk@174 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
22 Apr, 2014
2 commits
-
git-svn-id: https://svn.forgerock.org/openig/trunk@173 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
…ers and ScriptableHandlers git-svn-id: https://svn.forgerock.org/openig/trunk@172 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
16 Apr, 2014
4 commits
-
* use GroovyScriptEngine for its dynamic reloading capabilities * use a bootstrap Groovy script to add meta-class information to the engine (accidentally committed in r169) * custom Groovy scripts should be located in ".openig/scripts/groovy". git-svn-id: https://svn.forgerock.org/openig/trunk@171 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
* introduced Environment class which encapsulates information regarding the application's installation directory, etc. It is exposed on the heap as "Environment" so that other heaplets (such as scripting) can determine path names such as script class paths * removed vendor name from configuration paths and lowercased the product name. The configuration root is now in ".openig" instead of ".ForgeRock/OpenIG" * moved the configuration file into the "config" sub-folder, e.g. ".openig/config/config.json". The same goes for the bootstrap configuration as well. This will be useful when installing as standalone package because it is important to separate mutable configuration files from installed files. git-svn-id: https://svn.forgerock.org/openig/trunk@170 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@169 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@168 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
14 Apr, 2014
1 commit
-
git-svn-id: https://svn.forgerock.org/openig/trunk@167 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
10 Apr, 2014
3 commits
-
* see issue for more details * factored out script compilation to Scripts class to make migration to commons scripting a little easier * at the moment scripts specified using relative path names will be located based on the application's current working directory, rather than the instance root. This will be addressed in OPENIG-72. git-svn-id: https://svn.forgerock.org/openig/trunk@166 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
* rename GroovyScriptFilter -> ScriptableFilter * rename GroovyScriptHandler -> ScriptableHandler * add Heaplet aliases to JsonValueUtil. git-svn-id: https://svn.forgerock.org/openig/trunk@165 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
…ting why field encapsulation is required. git-svn-id: https://svn.forgerock.org/openig/trunk@164 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
09 Apr, 2014
1 commit
-
Fix support for assignment of multivalued LDAP attributes. git-svn-id: https://svn.forgerock.org/openig/trunk@163 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
03 Apr, 2014
1 commit
-
git-svn-id: https://svn.forgerock.org/openig/trunk@162 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
01 Apr, 2014
3 commits
-
git-svn-id: https://svn.forgerock.org/openig/trunk@161 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@160 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@159 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
29 Mar, 2014
1 commit
-
…rFilter can encrypt/decrypt git-svn-id: https://svn.forgerock.org/openig/trunk@158 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
28 Mar, 2014
3 commits
-
git-svn-id: https://svn.forgerock.org/openig/trunk@157 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@156 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
This introduces a dependency on a -SNAPSHOT in order to check that everything runs fine in Jenkins as well before the release, which is coming real soon now. If ever the whole thing goes wrong, or we cannot release, I'll revert to remove the -SNAPSHOT dependency. git-svn-id: https://svn.forgerock.org/openig/trunk@155 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
27 Mar, 2014
1 commit
-
git-svn-id: https://svn.forgerock.org/openig/trunk@154 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
26 Mar, 2014
3 commits
-
* provide the ability to easily set attributes in entries. git-svn-id: https://svn.forgerock.org/openig/trunk@153 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
Provided global variable "ldap" which provides simple access to OpenDJ LDAP SDK including: * ldap.connect(host, port) - obtains cached connection to host/port (no SSL) * ldap.connect(host, port, options) - obtains cached connection to host/port (with optional SSL) * ldap.dn(template, args...) - injection safe printf style formatting of DNs * ldap.filter(template, args...) - injection safe printf style formatting of filters * ldap.scope.* - easy access to LDAP search scopes, e.g. ldap.scope.sub. The connect methods return an adapted SDK LDAP connection which only exposes the synchronous methods. This is to protect against future evolution of the SDK APIs (e.g. we plan to migrate to using Promises). In addition, the Groovy scripting engine has been enhanced using Groovy MetaClasses to facilitate access to LDAP Entry attributes, which are now exposed as properties. For example, the following code parses the "description" attribute as a single valued string: entry.description.parse().asString() The testLdapClient unit test in GroovyScriptFilterTest illustrates LDAP usage. git-svn-id: https://svn.forgerock.org/openig/trunk@152 dbb9e58e-28e6-4ce0-90e8-f11d9605b710 -
* added out of the box support for using the OpenDJ LDAP SDK * added unit test illustrating usage from within Groovy. A subsequent commit will improve the integration in order to reduce boilerplate and to cache connections between script invocations. git-svn-id: https://svn.forgerock.org/openig/trunk@151 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
07 Mar, 2014
2 commits
-
Filters and handlers support a single standalone Groovy script. At the moment the script is not automatically reloaded. The following variables are injected into each script invocation: * globals - a Map of global variables which persist across successive invocations of the script * exchange - the HTTP exchange * http - an OpenIG HTTP client which may be used for performing outbound HTTP requests * logger - the OpenIG logger * next - the next handler in the filter chain (filters only). Many examples showing how Groovy scripts can interact with OpenIG can be found in GroovyScriptFilterTest. git-svn-id: https://svn.forgerock.org/openig/trunk@150 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
git-svn-id: https://svn.forgerock.org/openig/trunk@149 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
05 Mar, 2014
1 commit
-
git-svn-id: https://svn.forgerock.org/openig/trunk@148 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
28 Feb, 2014
2 commits
-
Add basic preliminary support for Groovy scriptable filters and handlers. Uses JSR-223 for now, but plan to move to our commons scripting module when it's ready. Scripts can read and write exchange fields, except for the entity. git-svn-id: https://svn.forgerock.org/openig/trunk@147 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
-
"If it looks like a duck, swims like a duck, and quacks like a duck, then it probably is a duck." But Ducks are fat and we don't want lots of excess fat in our code base so, since we are not duck collectors, let's go shoot some duck. :-) Seriously: OpenIG uses duck-typing to provide map-like views of various objects. JSR 223 implementations, such as for Groovy, provide automatic support for bean-like objects and maps. In particular, bean getters/setters and map key/value pairs are automatically mapped to properties in Groovy scripts. This makes scripting really easy and developer friendly. Unfortunately, the support does not extend to our duck-typed objects, which are neither beans or maps. I was unable to see why duck-typing is needed in OpenIG, other than to avoid implementing a couple of awkward map view methods (e.g. entrySet), but they bring their own complexity. For example, many engineers find the duck-type support hard to understand and maintain. git-svn-id: https://svn.forgerock.org/openig/trunk@146 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
21 Feb, 2014
1 commit
-
git-svn-id: https://svn.forgerock.org/openig/trunk@145 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
20 Feb, 2014
1 commit
-
* remove unused imports * fixed various compilation warnings. git-svn-id: https://svn.forgerock.org/openig/trunk@144 dbb9e58e-28e6-4ce0-90e8-f11d9605b710
07 Feb, 2014
1 commit
-
git-svn-id: https://svn.forgerock.org/openig/trunk@143 dbb9e58e-28e6-4ce0-90e8-f11d9605b710