[jboss-cvs] Picketlink SVN: r218 - in idm/trunk: assembly and 22 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Apr 28 18:58:29 EDT 2010
Author: bdaw
Date: 2010-04-28 18:58:21 -0400 (Wed, 28 Apr 2010)
New Revision: 218
Added:
idm/trunk/picketlink-idm-ldap/src/main/java/org/picketlink/idm/impl/store/ldap/LDAPSearch.java
Modified:
idm/trunk/assembly/pom.xml
idm/trunk/example/auth-simple/pom.xml
idm/trunk/example/auth/pom.xml
idm/trunk/example/simple/pom.xml
idm/trunk/integration/deployer/pom.xml
idm/trunk/integration/jboss5/pom.xml
idm/trunk/integration/pom.xml
idm/trunk/parent/pom.xml
idm/trunk/picketlink-idm-api/pom.xml
idm/trunk/picketlink-idm-auth/pom.xml
idm/trunk/picketlink-idm-cache/pom.xml
idm/trunk/picketlink-idm-cache/src/main/java/org/picketlink/idm/impl/cache/JBossCacheAPICacheProviderImpl.java
idm/trunk/picketlink-idm-cache/src/main/java/org/picketlink/idm/impl/cache/JBossCacheIdentityStoreCacheProviderImpl.java
idm/trunk/picketlink-idm-common/pom.xml
idm/trunk/picketlink-idm-core/pom.xml
idm/trunk/picketlink-idm-docs/ReferenceGuide/pom.xml
idm/trunk/picketlink-idm-docs/pom.xml
idm/trunk/picketlink-idm-hibernate/pom.xml
idm/trunk/picketlink-idm-ldap/pom.xml
idm/trunk/picketlink-idm-ldap/src/main/java/org/picketlink/idm/impl/store/ldap/LDAPIdentityStoreImpl.java
idm/trunk/picketlink-idm-spi/pom.xml
idm/trunk/picketlink-idm-spi/src/main/java/org/picketlink/idm/spi/cache/IdentityStoreCacheProvider.java
idm/trunk/picketlink-idm-testsuite/pom.xml
idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-msad-2k3.xml
idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-msad-2k8.xml
idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-msad-local.xml
idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-opends12.xml
idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-opends20.xml
idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-openldapd-23.xml
idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-openldapd-24.xml
idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-openldapds.xml
idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-redhatds.xml
idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-sunds.xml
idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config.xml
idm/trunk/pom.xml
Log:
- switch to 1.1.3.CR01-SNAPSHOT
- improve caching in LDAP store
Modified: idm/trunk/assembly/pom.xml
===================================================================
--- idm/trunk/assembly/pom.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/assembly/pom.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -4,14 +4,14 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.picketlink.idm</groupId>
<artifactId>picketlink-idm</artifactId>
- <version>1.1.2.GA</version>
+ <version>1.1.3.CR01-SNAPSHOT</version>
<packaging>pom</packaging>
<name>PicketLink IDM Assembly </name>
<parent>
<groupId>org.picketlink.idm</groupId>
<artifactId>picketlink-idm-parent</artifactId>
- <version>1.1.2.GA</version>
+ <version>1.1.3.CR01-SNAPSHOT</version>
<relativePath>../parent</relativePath>
</parent>
Modified: idm/trunk/example/auth/pom.xml
===================================================================
--- idm/trunk/example/auth/pom.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/example/auth/pom.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -1,7 +1,7 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.picketlink.idm.example</groupId>
- <version>1.1.2.GA</version>
+ <version>1.1.3.CR01-SNAPSHOT</version>
<artifactId>example-auth</artifactId>
<packaging>jar</packaging>
<name>Example - JEE authentication</name>
Modified: idm/trunk/example/auth-simple/pom.xml
===================================================================
--- idm/trunk/example/auth-simple/pom.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/example/auth-simple/pom.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -1,7 +1,7 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.picketlink.idm.example</groupId>
- <version>1.1.2.GA</version>
+ <version>1.1.3.CR01-SNAPSHOT</version>
<artifactId>example-auth-simple</artifactId>
<packaging>jar</packaging>
<name>Example - JEE authentication (using deployer)</name>
Modified: idm/trunk/example/simple/pom.xml
===================================================================
--- idm/trunk/example/simple/pom.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/example/simple/pom.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -1,7 +1,7 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.picketlink.idm.example</groupId>
- <version>1.1.2.GA</version>
+ <version>1.1.3.CR01-SNAPSHOT</version>
<artifactId>example-simple</artifactId>
<packaging>jar</packaging>
<name>Example - Simple PicketLink IDM Maven2 project</name>
Modified: idm/trunk/integration/deployer/pom.xml
===================================================================
--- idm/trunk/integration/deployer/pom.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/integration/deployer/pom.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -8,12 +8,12 @@
<groupId>org.picketlink.idm.integration</groupId>
<artifactId>picketlink-idm-jboss5-deployer</artifactId>
<packaging>jar</packaging>
- <version>1.1.2.GA</version>
+ <version>1.1.3.CR01-SNAPSHOT</version>
<parent>
<groupId>org.picketlink.idm</groupId>
<artifactId>picketlink-idm-integration</artifactId>
- <version>1.1.2.GA</version>
+ <version>1.1.3.CR01-SNAPSHOT</version>
</parent>
<properties>
Modified: idm/trunk/integration/jboss5/pom.xml
===================================================================
--- idm/trunk/integration/jboss5/pom.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/integration/jboss5/pom.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -8,12 +8,12 @@
<groupId>org.picketlink.idm.integration</groupId>
<artifactId>picketlink-idm-jboss5</artifactId>
<packaging>jar</packaging>
- <version>1.1.2.GA</version>
+ <version>1.1.3.CR01-SNAPSHOT</version>
<parent>
<groupId>org.picketlink.idm</groupId>
<artifactId>picketlink-idm-integration</artifactId>
- <version>1.1.2.GA</version>
+ <version>1.1.3.CR01-SNAPSHOT</version>
</parent>
<dependencies>
Modified: idm/trunk/integration/pom.xml
===================================================================
--- idm/trunk/integration/pom.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/integration/pom.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -13,7 +13,7 @@
<parent>
<groupId>org.picketlink.idm</groupId>
<artifactId>picketlink-idm-parent</artifactId>
- <version>1.1.2.GA</version>
+ <version>1.1.3.CR01-SNAPSHOT</version>
<relativePath>../parent/pom.xml</relativePath>
</parent>
Modified: idm/trunk/parent/pom.xml
===================================================================
--- idm/trunk/parent/pom.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/parent/pom.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -8,7 +8,7 @@
<groupId>org.picketlink.idm</groupId>
<artifactId>picketlink-idm-parent</artifactId>
<packaging>pom</packaging>
- <version>1.1.2.GA</version>
+ <version>1.1.3.CR01-SNAPSHOT</version>
<name>PicketLink IDM- Parent</name>
<url>http://labs.jboss.org/portal/jbosssecurity/</url>
<description>PicketLink is a cross-cutting project that handles identity needs for the JEMS projects</description>
Modified: idm/trunk/picketlink-idm-api/pom.xml
===================================================================
--- idm/trunk/picketlink-idm-api/pom.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-api/pom.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.picketlink.idm</groupId>
<artifactId>picketlink-idm-parent</artifactId>
- <version>1.1.2.GA</version>
+ <version>1.1.3.CR01-SNAPSHOT</version>
<relativePath>../parent</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
Modified: idm/trunk/picketlink-idm-auth/pom.xml
===================================================================
--- idm/trunk/picketlink-idm-auth/pom.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-auth/pom.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.picketlink.idm</groupId>
<artifactId>picketlink-idm-parent</artifactId>
- <version>1.1.2.GA</version>
+ <version>1.1.3.CR01-SNAPSHOT</version>
<relativePath>../parent</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
Modified: idm/trunk/picketlink-idm-cache/pom.xml
===================================================================
--- idm/trunk/picketlink-idm-cache/pom.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-cache/pom.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.picketlink.idm</groupId>
<artifactId>picketlink-idm-parent</artifactId>
- <version>1.1.2.GA</version>
+ <version>1.1.3.CR01-SNAPSHOT</version>
<relativePath>../parent</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
Modified: idm/trunk/picketlink-idm-cache/src/main/java/org/picketlink/idm/impl/cache/JBossCacheAPICacheProviderImpl.java
===================================================================
--- idm/trunk/picketlink-idm-cache/src/main/java/org/picketlink/idm/impl/cache/JBossCacheAPICacheProviderImpl.java 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-cache/src/main/java/org/picketlink/idm/impl/cache/JBossCacheAPICacheProviderImpl.java 2010-04-28 22:58:21 UTC (rev 218)
@@ -187,6 +187,24 @@
}
+ public void initialize(Cache cache)
+ {
+ this.cache = cache;
+
+ CacheStatus status = cache.getCacheStatus();
+
+ if (status.createAllowed())
+ {
+ this.cache.create();
+ }
+ if (status.startAllowed())
+ {
+ this.cache.start();
+ }
+
+ }
+
+
Cache getCache()
{
return cache;
Modified: idm/trunk/picketlink-idm-cache/src/main/java/org/picketlink/idm/impl/cache/JBossCacheIdentityStoreCacheProviderImpl.java
===================================================================
--- idm/trunk/picketlink-idm-cache/src/main/java/org/picketlink/idm/impl/cache/JBossCacheIdentityStoreCacheProviderImpl.java 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-cache/src/main/java/org/picketlink/idm/impl/cache/JBossCacheIdentityStoreCacheProviderImpl.java 2010-04-28 22:58:21 UTC (rev 218)
@@ -23,6 +23,8 @@
package org.picketlink.idm.impl.cache;
import org.jboss.cache.*;
+
+import org.picketlink.idm.spi.configuration.IdentityConfigurationContext;
import org.picketlink.idm.spi.model.IdentityObject;
import org.picketlink.idm.spi.model.IdentityObjectAttribute;
import org.picketlink.idm.spi.model.IdentityObjectRelationship;
@@ -37,6 +39,7 @@
import org.picketlink.idm.impl.types.SimpleIdentityObjectRelationshipType;
import org.picketlink.idm.impl.api.SimpleAttribute;
+import java.io.InputStream;
import java.util.logging.Logger;
import java.util.logging.Level;
import java.util.*;
@@ -72,6 +75,8 @@
public static final String NODE_IO_ATTRIBUTES = "NODE_IO_ATTRIBUTES";
+ public static final String NODE_OBJECTS = "NODE_OBJECTS";
+
public static final String NODE_REL_PROPS = "NODE_REL_PROPS";
public static final String NODE_REL_NAME_PROPS = "NODE_REL_NAME_PROPS";
@@ -92,12 +97,17 @@
return Fqn.fromString(getNamespacedFqn(ns) + "/" + node + "/" + o);
}
+ private Fqn getFqn(String ns, String node, int hash)
+ {
+ return Fqn.fromString(getNamespacedFqn(ns) + "/" + node + "/" + hash);
+ }
+
private Fqn getFqn(String ns, String node)
{
return Fqn.fromString(getNamespacedFqn(ns) + "/" + node);
}
- public void initialize(Map<String, String> properties, IdentityRepositoryConfigurationContext configurationContext)
+ public void initialize(Map<String, String> properties, IdentityConfigurationContext configurationContext)
{
CacheFactory factory = new DefaultCacheFactory();
@@ -134,6 +144,39 @@
}
+ public void initialize(InputStream jbossCacheConfiguration)
+ {
+ CacheFactory factory = new DefaultCacheFactory();
+
+ if (jbossCacheConfiguration == null)
+ {
+ throw new IllegalArgumentException("JBoss Cache configuration InputStream is null");
+ }
+
+ this.cache = factory.createCache(jbossCacheConfiguration);
+
+ this.cache.create();
+ this.cache.start();
+
+ }
+
+ public void initialize(Cache cache)
+ {
+ this.cache = cache;
+
+ CacheStatus status = cache.getCacheStatus();
+
+ if (status.createAllowed())
+ {
+ this.cache.create();
+ }
+ if (status.startAllowed())
+ {
+ this.cache.start();
+ }
+
+ }
+
Cache getCache()
{
return cache;
@@ -544,6 +587,61 @@
}
}
+ public void putObject(String ns, int hash, Object value)
+ {
+ Fqn nodeFqn = getFqn(ns, NODE_OBJECTS, hash);
+
+ Node ioNode = getCache().getRoot().addChild(nodeFqn);
+
+ ioNode.put(NODE_OBJECT_KEY, value);
+
+ if (log.isLoggable(Level.FINER))
+ {
+ log.finer(this.toString() + "Object stored in cache: hash=" + hash
+ + "; value=" + value + ";namespace=" + ns);
+ }
+ }
+
+ public Object getObject(String ns, int hash)
+ {
+ Fqn nodeFqn = getFqn(ns, NODE_OBJECTS, hash);
+
+ Node node = getCache().getRoot().getChild(nodeFqn);
+
+ if (node != null)
+ {
+ Object value = node.get(NODE_OBJECT_KEY);
+
+ if (log.isLoggable(Level.FINER) && value != null)
+ {
+ log.finer(this.toString() + "Object found in cache: hash" + hash +
+ "; value=" + value + ";namespace=" + ns);
+ }
+
+ return value;
+ }
+
+ return null;
+ }
+
+ public void invalidateObject(String ns, int hash)
+ {
+ getCache().getRoot().removeChild(getFqn(ns, NODE_OBJECTS, hash));
+ if (log.isLoggable(Level.FINER))
+ {
+ log.finer(this.toString() + "Invalidating object. Namespace:" + ns + "; hash=" + hash);
+ }
+ }
+
+ public void invalidateObjects(String ns)
+ {
+ getCache().getRoot().removeChild(getFqn(ns, NODE_OBJECTS));
+ if (log.isLoggable(Level.FINER))
+ {
+ log.finer(this.toString() + "Invalidating objects. Namespace:" + ns);
+ }
+ }
+
private List<IdentityObject> safeCopyIO(Collection<IdentityObject> res)
{
List<IdentityObject> nr = new LinkedList<IdentityObject>();
Modified: idm/trunk/picketlink-idm-common/pom.xml
===================================================================
--- idm/trunk/picketlink-idm-common/pom.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-common/pom.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.picketlink.idm</groupId>
<artifactId>picketlink-idm-parent</artifactId>
- <version>1.1.2.GA</version>
+ <version>1.1.3.CR01-SNAPSHOT</version>
<relativePath>../parent</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
Modified: idm/trunk/picketlink-idm-core/pom.xml
===================================================================
--- idm/trunk/picketlink-idm-core/pom.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-core/pom.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.picketlink.idm</groupId>
<artifactId>picketlink-idm-parent</artifactId>
- <version>1.1.2.GA</version>
+ <version>1.1.3.CR01-SNAPSHOT</version>
<relativePath>../parent</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
Modified: idm/trunk/picketlink-idm-docs/ReferenceGuide/pom.xml
===================================================================
--- idm/trunk/picketlink-idm-docs/ReferenceGuide/pom.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-docs/ReferenceGuide/pom.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.picketlink.idm</groupId>
<artifactId>picketlink-idm-parent</artifactId>
- <version>1.1.2.GA</version>
+ <version>1.1.3.CR01-SNAPSHOT</version>
<relativePath>../../parent</relativePath>
</parent>
Modified: idm/trunk/picketlink-idm-docs/pom.xml
===================================================================
--- idm/trunk/picketlink-idm-docs/pom.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-docs/pom.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.picketlink.idm</groupId>
<artifactId>picketlink-idm-parent</artifactId>
- <version>1.1.2.GA</version>
+ <version>1.1.3.CR01-SNAPSHOT</version>
<relativePath>../parent</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
Modified: idm/trunk/picketlink-idm-hibernate/pom.xml
===================================================================
--- idm/trunk/picketlink-idm-hibernate/pom.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-hibernate/pom.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.picketlink.idm</groupId>
<artifactId>picketlink-idm-parent</artifactId>
- <version>1.1.2.GA</version>
+ <version>1.1.3.CR01-SNAPSHOT</version>
<relativePath>../parent</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
Modified: idm/trunk/picketlink-idm-ldap/pom.xml
===================================================================
--- idm/trunk/picketlink-idm-ldap/pom.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-ldap/pom.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.picketlink.idm</groupId>
<artifactId>picketlink-idm-parent</artifactId>
- <version>1.1.2.GA</version>
+ <version>1.1.3.CR01-SNAPSHOT</version>
<relativePath>../parent</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
Modified: idm/trunk/picketlink-idm-ldap/src/main/java/org/picketlink/idm/impl/store/ldap/LDAPIdentityStoreImpl.java
===================================================================
--- idm/trunk/picketlink-idm-ldap/src/main/java/org/picketlink/idm/impl/store/ldap/LDAPIdentityStoreImpl.java 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-ldap/src/main/java/org/picketlink/idm/impl/store/ldap/LDAPIdentityStoreImpl.java 2010-04-28 22:58:21 UTC (rev 218)
@@ -22,6 +22,7 @@
package org.picketlink.idm.impl.store.ldap;
+import org.picketlink.idm.api.cfg.IdentityConfigurationRegistry;
import org.picketlink.idm.common.exception.IdentityException;
import org.picketlink.idm.impl.NotYetImplementedException;
import org.picketlink.idm.impl.api.SimpleAttribute;
@@ -30,6 +31,7 @@
import org.picketlink.idm.impl.model.ldap.LDAPIdentityObjectRelationshipImpl;
import org.picketlink.idm.impl.store.FeaturesMetaDataImpl;
import org.picketlink.idm.impl.types.SimpleIdentityObject;
+import org.picketlink.idm.spi.cache.IdentityStoreCacheProvider;
import org.picketlink.idm.spi.configuration.IdentityStoreConfigurationContext;
import org.picketlink.idm.spi.configuration.metadata.IdentityObjectAttributeMetaData;
import org.picketlink.idm.spi.configuration.metadata.IdentityObjectTypeMetaData;
@@ -49,6 +51,8 @@
import org.picketlink.idm.spi.store.IdentityStoreSession;
import java.io.UnsupportedEncodingException;
+import java.lang.reflect.Constructor;
+import java.lang.reflect.InvocationTargetException;
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
@@ -96,6 +100,8 @@
private final String id;
+ private IdentityStoreCacheProvider cache;
+
public static final String MEMBERSHIP_TYPE = "JBOSS_IDENTITY_MEMBERSHIP";
private FeaturesMetaData supportedFeatures;
@@ -220,6 +226,74 @@
}
}
+ // Cache
+
+ // Cache
+
+ Map<String, String> cacheProps = new HashMap<String, String>();
+ String cacheClassName = null;
+ String cacheRegistryName = null;
+
+ // Parse all 'cache.' prefixed options
+ for (String key : configurationMD.getOptions().keySet())
+ {
+ if (key.startsWith("cache."))
+ {
+ if (configurationMD.getOptions().get(key).size() > 0)
+ {
+ cacheProps.put(key, configurationMD.getOptions().get(key).get(0));
+ }
+ if (key.equals("cache.providerClass") && configurationMD.getOptions().get(key).size() > 0)
+ {
+ cacheClassName = configurationMD.getOptions().get(key).get(0);
+ }
+
+ if (key.equals("cache.providerRegistryName") && configurationMD.getOptions().get(key).size() > 0)
+ {
+ cacheRegistryName = configurationMD.getOptions().get(key).get(0);
+ }
+ }
+ }
+
+ IdentityStoreCacheProvider provider = null;
+
+ if (cacheRegistryName != null)
+ {
+ try
+ {
+ provider = (IdentityStoreCacheProvider)configurationContext.
+ getConfigurationRegistry().getObject(cacheRegistryName);
+ }
+ catch (Exception e)
+ {
+ throw new IdentityException("Cannot find IdentityStoreCacheProvider in ConfigurationRegistry using " +
+ "provided name:" + cacheRegistryName, e);
+ }
+
+ }
+
+ // Instantiate provider
+ if (provider == null && cacheClassName != null)
+ {
+ Class repoClass = null;
+ try
+ {
+ repoClass = Class.forName(cacheClassName);
+
+ Constructor ct = repoClass.getConstructor();
+
+ provider = (IdentityStoreCacheProvider)ct.newInstance();
+
+ provider.initialize(cacheProps, configurationContext);
+ }
+ catch (Exception e)
+ {
+ throw new IdentityException("Cannot instantiate IdentityStoreCacheProvider:" + cacheClassName, e);
+ }
+ }
+
+ cache = provider;
+
}
public IdentityStoreSession createIdentityStoreSession()
@@ -329,6 +403,9 @@
log.finer("creating ldap entry for: " + validLDAPName + "; " + attrs);
}
DirContext entry = ctx.createSubcontext(validLDAPName, attrs);
+
+ invalidateCache();
+
if (entry != null)
{
dn = entry.getNameInNamespace();
@@ -386,6 +463,8 @@
{
log.finer("removing entry: " + dn);
ldapContext.unbind(dn);
+
+ invalidateCache();
}
catch (Exception e)
{
@@ -1597,6 +1676,8 @@
attrs.put(member);
ldapContext.modifyAttributes(ldapFromIO.getDn(), DirContext.ADD_ATTRIBUTE, attrs);
+
+ invalidateCache();
}
if (toTypeConfig.getChildMembershipAttributeName() != null && !toTypeConfig.isChildMembershipAttributeVirtual())
@@ -1616,6 +1697,8 @@
attrs.put(member);
ldapContext.modifyAttributes(ldapToIO.getDn(), DirContext.ADD_ATTRIBUTE, attrs);
+
+ invalidateCache();
}
relationship = new LDAPIdentityObjectRelationshipImpl(name, ldapFromIO, ldapToIO);
@@ -1710,6 +1793,8 @@
attrs.put(member);
ldapContext.modifyAttributes(ldapFromIO.getDn(), DirContext.REMOVE_ATTRIBUTE, attrs);
+
+ invalidateCache();
}
if (toTypeConfig.getChildMembershipAttributeName() != null && !toTypeConfig.isChildMembershipAttributeVirtual())
@@ -1728,6 +1813,8 @@
attrs.put(member);
ldapContext.modifyAttributes(ldapToIO.getDn(), DirContext.REMOVE_ATTRIBUTE, attrs);
+
+ invalidateCache();
}
}
@@ -1944,6 +2031,8 @@
log.finer("creating ldap entry for: " + validLDAPName + "; " + attrs);
}
ctx.createSubcontext(validLDAPName, attrs);
+
+ invalidateCache();
}
catch (Exception e)
{
@@ -2034,6 +2123,8 @@
ctx.unbind(dn);
+ invalidateCache();
+
ctx.close();
return null;
@@ -2429,6 +2520,8 @@
}
ldapContext.modifyAttributes(ldapIO.getDn(), DirContext.REPLACE_ATTRIBUTE, attrs);
+
+ invalidateCache();
}
catch (NamingException e)
{
@@ -2502,6 +2595,19 @@
);
}
+ // Cache
+
+ if (getCache() != null)
+ {
+ Map<String, IdentityObjectAttribute> cachedAttributes = getCache().
+ getIdentityObjectAttributes(getNamespace(), identity);
+
+ if (cachedAttributes != null)
+ {
+ return cachedAttributes;
+ }
+ }
+
Map<String, IdentityObjectAttribute> attrsMap = new HashMap<String, IdentityObjectAttribute>();
LDAPIdentityObjectImpl ldapIdentity = getSafeLDAPIO(ctx, identity);
@@ -2571,6 +2677,13 @@
}
}
+ // Cache
+
+ if (getCache() != null)
+ {
+ getCache().putIdentityObjectAttributes(getNamespace(), identity, attrsMap);
+ }
+
return attrsMap;
}
@@ -2586,6 +2699,11 @@
);
}
+ if (getCache() != null)
+ {
+ getCache().invalidate(getNamespace());
+ }
+
if (attributes == null)
{
throw new IllegalArgumentException("attributes is null");
@@ -2662,6 +2780,8 @@
try
{
ldapContext.modifyAttributes(dn, DirContext.REPLACE_ATTRIBUTE, attrs);
+
+ invalidateCache();
}
catch (NamingException e)
{
@@ -2692,6 +2812,13 @@
throw new IdentityException("Failed to close LDAP connection", e);
}
}
+
+ // Cache new attributes
+ if (getCache() != null)
+ {
+ getAttributes(ctx, identity);
+ }
+
}
public void addAttributes(IdentityStoreInvocationContext ctx, IdentityObject identity, IdentityObjectAttribute[] attributes) throws IdentityException
@@ -2705,6 +2832,10 @@
);
}
+ if (getCache() != null)
+ {
+ getCache().invalidate(getNamespace());
+ }
if (attributes == null)
{
@@ -2783,6 +2914,8 @@
try
{
ldapContext.modifyAttributes(dn, DirContext.ADD_ATTRIBUTE, attrs);
+
+ invalidateCache();
}
catch (NamingException e)
{
@@ -2813,6 +2946,12 @@
throw new IdentityException("Failed to close LDAP connection", e);
}
}
+
+ // Cache new attributes
+ if (getCache() != null)
+ {
+ getAttributes(ctx, identity);
+ }
}
public void removeAttributes(IdentityStoreInvocationContext ctx, IdentityObject identity, String[] attributeNames) throws IdentityException
@@ -2826,6 +2965,11 @@
);
}
+ if (getCache() != null)
+ {
+ getCache().invalidate(getNamespace());
+ }
+
if (attributeNames == null)
{
throw new IllegalArgumentException("attributes is null");
@@ -2872,6 +3016,8 @@
try
{
ldapContext.modifyAttributes(dn, DirContext.REMOVE_ATTRIBUTE, attrs);
+
+ invalidateCache();
}
catch (NamingException e)
{
@@ -2901,6 +3047,12 @@
throw new IdentityException("Failed to close LDAP connection", e);
}
}
+
+ // Cache new attributes
+ if (getCache() != null)
+ {
+ getAttributes(ctx, identity);
+ }
}
public IdentityObject findIdentityObjectByUniqueAttribute(IdentityStoreInvocationContext invocationCtx, IdentityObjectType type, IdentityObjectAttribute attribute) throws IdentityException
@@ -3033,7 +3185,7 @@
Attribute ida = attrs.get(idAttrName);
if (ida == null)
{
- throw new IdentityException("LDAP entry doesn't contain proper attribute:" + idAttrName);
+ throw new IdentityException("LDAP entry doesn't contain proper attribute: " + idAttrName + "; dn=" + dn);
}
//make DN as user ID
@@ -3092,7 +3244,28 @@
log.finer(sb.toString());
}
+ if (getCache() != null)
+ {
+ LDAPSearch search =
+ new LDAPSearch(entryCtxs, filter, filterArgs, returningAttributes, searchScope, requestControls);
+ Object results = getCache().getObject(getNamespace(), search.hashCode());
+
+ if (results != null && results instanceof List)
+ {
+
+ //Debug
+ if (log.isLoggable(Level.FINER))
+ {
+ log.finer("LDAP search results found in cache. size=" + ((List)results).size());
+ }
+
+ return (List<SearchResult>)results;
+
+ }
+ }
+
+
LdapContext ldapContext = getLDAPContext(ctx);
if (ldapContext != null)
@@ -3102,6 +3275,8 @@
NamingEnumeration results = null;
+ List<SearchResult> finalResults;
+
try
{
@@ -3145,7 +3320,7 @@
log.finer("Search in " + entryCtxs[0] + " returned " + toReturn.size() + " entries");
}
- return toReturn;
+ finalResults = toReturn;
}
@@ -3176,7 +3351,7 @@
- return merged;
+ finalResults = merged;
}
}
finally
@@ -3187,6 +3362,21 @@
}
ldapContext.close();
}
+
+ if (getCache() != null && finalResults != null)
+ {
+ LDAPSearch search =
+ new LDAPSearch(entryCtxs, filter, filterArgs, returningAttributes, searchScope, requestControls);
+
+ getCache().putObject(getNamespace(), search.hashCode(), finalResults);
+
+ if (log.isLoggable(Level.FINER))
+ {
+ log.finer("LDAP search results stored in cache. size=" + finalResults.size());
+ }
+ }
+
+ return finalResults;
}
// HELPER
@@ -3485,6 +3675,7 @@
try
{
subContext = ctx.createSubcontext(dn, attrs);
+
}
finally
{
@@ -3495,4 +3686,22 @@
}
+ IdentityStoreCacheProvider getCache()
+ {
+ return cache;
+ }
+
+ String getNamespace()
+ {
+ return getId();
+ }
+
+ void invalidateCache()
+ {
+ if (getCache() != null)
+ {
+ getCache().invalidate(getNamespace());
+ }
+ }
+
}
Added: idm/trunk/picketlink-idm-ldap/src/main/java/org/picketlink/idm/impl/store/ldap/LDAPSearch.java
===================================================================
--- idm/trunk/picketlink-idm-ldap/src/main/java/org/picketlink/idm/impl/store/ldap/LDAPSearch.java (rev 0)
+++ idm/trunk/picketlink-idm-ldap/src/main/java/org/picketlink/idm/impl/store/ldap/LDAPSearch.java 2010-04-28 22:58:21 UTC (rev 218)
@@ -0,0 +1,118 @@
+
+/*
+* JBoss, a division of Red Hat
+* Copyright 2006, Red Hat Middleware, LLC, and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.picketlink.idm.impl.store.ldap;
+
+import java.util.Arrays;
+
+import javax.naming.ldap.Control;
+
+/**
+ * Helper class to cache LDAP queries
+ *
+ * @author <a href="mailto:boleslaw.dawidowicz at redhat.com">Boleslaw Dawidowicz</a>
+ * @version : 0.1 $
+ */
+public class LDAPSearch
+{
+ private final String[] entryCtxs;
+
+ private final String filter;
+
+ private final Object[] filterArgs;
+
+ private final String[] returningAttributes;
+
+ private final String searchScope;
+
+ private final Control[] requestControls;
+
+ public LDAPSearch(String[] entryCtxs,
+ String filter,
+ Object[] filterArgs,
+ String[] returningAttributes,
+ String searchScope,
+ Control[] requestControls)
+ {
+ this.entryCtxs = entryCtxs;
+ this.filter = filter;
+ this.filterArgs = filterArgs;
+ this.returningAttributes = returningAttributes;
+ this.searchScope = searchScope;
+ this.requestControls = requestControls;
+ }
+
+ @Override
+ public boolean equals(Object o)
+ {
+ if (this == o)
+ {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass())
+ {
+ return false;
+ }
+
+ LDAPSearch that = (LDAPSearch) o;
+
+ if (!Arrays.equals(entryCtxs, that.entryCtxs))
+ {
+ return false;
+ }
+ if (filter != null ? !filter.equals(that.filter) : that.filter != null)
+ {
+ return false;
+ }
+ // Probably incorrect - comparing Object[] arrays with Arrays.equals
+ if (!Arrays.equals(filterArgs, that.filterArgs))
+ {
+ return false;
+ }
+ if (!Arrays.equals(requestControls, that.requestControls))
+ {
+ return false;
+ }
+ if (!Arrays.equals(returningAttributes, that.returningAttributes))
+ {
+ return false;
+ }
+ if (searchScope != null ? !searchScope.equals(that.searchScope) : that.searchScope != null)
+ {
+ return false;
+ }
+
+ return true;
+ }
+
+ @Override
+ public int hashCode()
+ {
+ int result = entryCtxs != null ? Arrays.hashCode(entryCtxs) : 0;
+ result = 31 * result + (filter != null ? filter.hashCode() : 0);
+ result = 31 * result + (filterArgs != null ? Arrays.hashCode(filterArgs) : 0);
+ result = 31 * result + (returningAttributes != null ? Arrays.hashCode(returningAttributes) : 0);
+ result = 31 * result + (searchScope != null ? searchScope.hashCode() : 0);
+ result = 31 * result + (requestControls != null ? Arrays.hashCode(requestControls) : 0);
+ return result;
+ }
+}
Modified: idm/trunk/picketlink-idm-spi/pom.xml
===================================================================
--- idm/trunk/picketlink-idm-spi/pom.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-spi/pom.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.picketlink.idm</groupId>
<artifactId>picketlink-idm-parent</artifactId>
- <version>1.1.2.GA</version>
+ <version>1.1.3.CR01-SNAPSHOT</version>
<relativePath>../parent</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
Modified: idm/trunk/picketlink-idm-spi/src/main/java/org/picketlink/idm/spi/cache/IdentityStoreCacheProvider.java
===================================================================
--- idm/trunk/picketlink-idm-spi/src/main/java/org/picketlink/idm/spi/cache/IdentityStoreCacheProvider.java 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-spi/src/main/java/org/picketlink/idm/spi/cache/IdentityStoreCacheProvider.java 2010-04-28 22:58:21 UTC (rev 218)
@@ -22,6 +22,7 @@
package org.picketlink.idm.spi.cache;
+import org.picketlink.idm.spi.configuration.IdentityConfigurationContext;
import org.picketlink.idm.spi.model.IdentityObjectAttribute;
import org.picketlink.idm.spi.model.IdentityObjectType;
import org.picketlink.idm.spi.model.IdentityObject;
@@ -47,7 +48,7 @@
* Initialize provider.
* @param properties
*/
- void initialize(Map<String, String> properties, IdentityRepositoryConfigurationContext configurationContext);
+ void initialize(Map<String, String> properties, IdentityConfigurationContext configurationContext);
/**
@@ -137,4 +138,14 @@
void invalidateIdentityObjectAttriubtes(String ns);
+ //
+
+ void putObject(String ns, int hash, Object value);
+
+ Object getObject(String ns, int hash);
+
+ void invalidateObject(String ns, int hash);
+
+ void invalidateObjects(String ns);
+
}
Modified: idm/trunk/picketlink-idm-testsuite/pom.xml
===================================================================
--- idm/trunk/picketlink-idm-testsuite/pom.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-testsuite/pom.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.picketlink.idm</groupId>
<artifactId>picketlink-idm-parent</artifactId>
- <version>1.1.2.GA</version>
+ <version>1.1.3.CR01-SNAPSHOT</version>
<relativePath>../parent</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
Modified: idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-msad-2k3.xml
===================================================================
--- idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-msad-2k3.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-msad-2k3.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -881,6 +881,14 @@
<name>searchTimeLimit</name>
<value>10000</value>
</option>
+ <option>
+ <name>cache.providerClass</name>
+ <value>org.picketlink.idm.impl.cache.JBossCacheIdentityStoreCacheProviderImpl</value>
+ </option>
+ <option>
+ <name>cache.configFile</name>
+ <value>jboss-cache.xml</value>
+ </option>
</options>
</identity-store>
</identity-stores>
Modified: idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-msad-2k8.xml
===================================================================
--- idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-msad-2k8.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-msad-2k8.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -881,6 +881,14 @@
<name>searchTimeLimit</name>
<value>10000</value>
</option>
+ <option>
+ <name>cache.providerClass</name>
+ <value>org.picketlink.idm.impl.cache.JBossCacheIdentityStoreCacheProviderImpl</value>
+ </option>
+ <option>
+ <name>cache.configFile</name>
+ <value>jboss-cache.xml</value>
+ </option>
</options>
</identity-store>
</identity-stores>
Modified: idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-msad-local.xml
===================================================================
--- idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-msad-local.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-msad-local.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -902,6 +902,14 @@
<name>searchTimeLimit</name>
<value>10000</value>
</option>
+ <option>
+ <name>cache.providerClass</name>
+ <value>org.picketlink.idm.impl.cache.JBossCacheIdentityStoreCacheProviderImpl</value>
+ </option>
+ <option>
+ <name>cache.configFile</name>
+ <value>jboss-cache.xml</value>
+ </option>
</options>
</identity-store>
</identity-stores>
Modified: idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-opends12.xml
===================================================================
--- idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-opends12.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-opends12.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -891,6 +891,14 @@
<name>searchTimeLimit</name>
<value>10000</value>
</option>
+ <option>
+ <name>cache.providerClass</name>
+ <value>org.picketlink.idm.impl.cache.JBossCacheIdentityStoreCacheProviderImpl</value>
+ </option>
+ <option>
+ <name>cache.configFile</name>
+ <value>jboss-cache.xml</value>
+ </option>
</options>
</identity-store>
</identity-stores>
Modified: idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-opends20.xml
===================================================================
--- idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-opends20.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-opends20.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -891,6 +891,14 @@
<name>searchTimeLimit</name>
<value>10000</value>
</option>
+ <option>
+ <name>cache.providerClass</name>
+ <value>org.picketlink.idm.impl.cache.JBossCacheIdentityStoreCacheProviderImpl</value>
+ </option>
+ <option>
+ <name>cache.configFile</name>
+ <value>jboss-cache.xml</value>
+ </option>
</options>
</identity-store>
</identity-stores>
Modified: idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-openldapd-23.xml
===================================================================
--- idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-openldapd-23.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-openldapd-23.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -886,6 +886,14 @@
<name>sortExtensionSupported</name>
<value>false</value>
</option>
+ <option>
+ <name>cache.providerClass</name>
+ <value>org.picketlink.idm.impl.cache.JBossCacheIdentityStoreCacheProviderImpl</value>
+ </option>
+ <option>
+ <name>cache.configFile</name>
+ <value>jboss-cache.xml</value>
+ </option>
</options>
</identity-store>
</identity-stores>
Modified: idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-openldapd-24.xml
===================================================================
--- idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-openldapd-24.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-openldapd-24.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -886,6 +886,14 @@
<name>sortExtensionSupported</name>
<value>false</value>
</option>
+ <option>
+ <name>cache.providerClass</name>
+ <value>org.picketlink.idm.impl.cache.JBossCacheIdentityStoreCacheProviderImpl</value>
+ </option>
+ <option>
+ <name>cache.configFile</name>
+ <value>jboss-cache.xml</value>
+ </option>
</options>
</identity-store>
</identity-stores>
Modified: idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-openldapds.xml
===================================================================
--- idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-openldapds.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-openldapds.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -886,6 +886,14 @@
<name>sortExtensionSupported</name>
<value>false</value>
</option>
+ <option>
+ <name>cache.providerClass</name>
+ <value>org.picketlink.idm.impl.cache.JBossCacheIdentityStoreCacheProviderImpl</value>
+ </option>
+ <option>
+ <name>cache.configFile</name>
+ <value>jboss-cache.xml</value>
+ </option>
</options>
</identity-store>
</identity-stores>
Modified: idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-redhatds.xml
===================================================================
--- idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-redhatds.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-redhatds.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -880,6 +880,14 @@
<name>searchTimeLimit</name>
<value>10000</value>
</option>
+ <option>
+ <name>cache.providerClass</name>
+ <value>org.picketlink.idm.impl.cache.JBossCacheIdentityStoreCacheProviderImpl</value>
+ </option>
+ <option>
+ <name>cache.configFile</name>
+ <value>jboss-cache.xml</value>
+ </option>
</options>
</identity-store>
</identity-stores>
Modified: idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-sunds.xml
===================================================================
--- idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-sunds.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config-sunds.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -880,6 +880,14 @@
<name>searchTimeLimit</name>
<value>10000</value>
</option>
+ <option>
+ <name>cache.providerClass</name>
+ <value>org.picketlink.idm.impl.cache.JBossCacheIdentityStoreCacheProviderImpl</value>
+ </option>
+ <option>
+ <name>cache.configFile</name>
+ <value>jboss-cache.xml</value>
+ </option>
</options>
</identity-store>
</identity-stores>
Modified: idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config.xml
===================================================================
--- idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/picketlink-idm-testsuite/src/test/resources/test-identity-config.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -929,6 +929,14 @@
<!--<name>createMissingContexts</name>-->
<!--<value>true</value>-->
<!--</option>-->
+ <option>
+ <name>cache.providerClass</name>
+ <value>org.picketlink.idm.impl.cache.JBossCacheIdentityStoreCacheProviderImpl</value>
+ </option>
+ <option>
+ <name>cache.configFile</name>
+ <value>jboss-cache.xml</value>
+ </option>
</options>
</identity-store>
</identity-stores>
Modified: idm/trunk/pom.xml
===================================================================
--- idm/trunk/pom.xml 2010-04-28 11:21:32 UTC (rev 217)
+++ idm/trunk/pom.xml 2010-04-28 22:58:21 UTC (rev 218)
@@ -3,7 +3,7 @@
<parent>
<groupId>org.picketlink.idm</groupId>
<artifactId>picketlink-idm-parent</artifactId>
- <version>1.1.2.GA</version>
+ <version>1.1.3.CR01-SNAPSHOT</version>
<relativePath>parent</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
More information about the jboss-cvs-commits
mailing list