Author: bdaw
Date: 2009-02-26 06:13:14 -0500 (Thu, 26 Feb 2009)
New Revision: 347
Modified:
idm/trunk/assembly/pom.xml
idm/trunk/example/maven2/pom.xml
idm/trunk/example/maven2/src/test/java/org/jboss/identity/idm/example/DBTestCase.java
idm/trunk/idm-api/pom.xml
idm/trunk/idm-api/src/main/java/org/jboss/identity/idm/api/RelationshipManager.java
idm/trunk/idm-api/src/main/java/org/jboss/identity/idm/api/RoleManager.java
idm/trunk/idm-common/pom.xml
idm/trunk/idm-spi/pom.xml
idm/trunk/idm/pom.xml
idm/trunk/idm/src/main/java/org/jboss/identity/idm/impl/api/session/managers/RoleManagerImpl.java
idm/trunk/idm/src/main/java/org/jboss/identity/idm/impl/store/hibernate/HibernateIdentityStoreImpl.java
idm/trunk/parent/pom.xml
idm/trunk/pom.xml
Log:
sync changes for latest snapshot and switch to alpha2
Modified: idm/trunk/assembly/pom.xml
===================================================================
--- idm/trunk/assembly/pom.xml 2009-02-23 20:47:59 UTC (rev 346)
+++ idm/trunk/assembly/pom.xml 2009-02-26 11:13:14 UTC (rev 347)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.jboss.identity</groupId>
<artifactId>idm-parent</artifactId>
- <version>1.0.0-SNAPSHOT</version>
+ <version>1.0.0.Alpha2</version>
<relativePath>../parent</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
Modified: idm/trunk/example/maven2/pom.xml
===================================================================
--- idm/trunk/example/maven2/pom.xml 2009-02-23 20:47:59 UTC (rev 346)
+++ idm/trunk/example/maven2/pom.xml 2009-02-26 11:13:14 UTC (rev 347)
@@ -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.jboss.identity</groupId>
- <version>1.0.0-SNAPSHOT</version>
+ <version>1.0.0.Alpha2</version>
<artifactId>idm-maven2-example</artifactId>
<packaging>jar</packaging>
<name>JBoss Identity IDM Maven2 example project</name>
Modified:
idm/trunk/example/maven2/src/test/java/org/jboss/identity/idm/example/DBTestCase.java
===================================================================
---
idm/trunk/example/maven2/src/test/java/org/jboss/identity/idm/example/DBTestCase.java 2009-02-23
20:47:59 UTC (rev 346)
+++
idm/trunk/example/maven2/src/test/java/org/jboss/identity/idm/example/DBTestCase.java 2009-02-26
11:13:14 UTC (rev 347)
@@ -135,6 +135,24 @@
assertTrue(Arrays.equals((byte[])attributes.get("picture").getValue(),
picture));
+ Identity xUser =
identitySession.getPersistenceManager().createIdentity("x");
+ Group someGroup =
identitySession.getPersistenceManager().createGroup("someGroup", GROUP);
+
+ identitySession.getRoleManager().createRole(managerRT, xUser, someGroup);
+
+ assertEquals(0,
identitySession.getRelationshipManager().findAssociatedGroups(xUser, GROUP).size());
+ assertEquals(1, identitySession.getRoleManager().findGroupsWithRelatedRole(xUser,
GROUP, null).size());
+ assertEquals(1, identitySession.getRoleManager().findGroupsWithRelatedRole(xUser,
null).size());
+
+ Group otherGroup =
identitySession.getPersistenceManager().createGroup("otherGroup", GROUP);
+
+ identitySession.getRelationshipManager().associateIdentities(otherGroup, xUser);
+
+ assertEquals(1,
identitySession.getRelationshipManager().findAssociatedGroups(xUser, GROUP).size());
+ assertEquals(1, identitySession.getRoleManager().findGroupsWithRelatedRole(xUser,
GROUP, null).size());
+ assertEquals(1, identitySession.getRoleManager().findGroupsWithRelatedRole(xUser,
null).size());
+
+
identitySession.getTransaction().commit();
identitySession.close();
Modified: idm/trunk/idm/pom.xml
===================================================================
--- idm/trunk/idm/pom.xml 2009-02-23 20:47:59 UTC (rev 346)
+++ idm/trunk/idm/pom.xml 2009-02-26 11:13:14 UTC (rev 347)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.jboss.identity</groupId>
<artifactId>idm-parent</artifactId>
- <version>1.0.0-SNAPSHOT</version>
+ <version>1.0.0.Alpha2</version>
<relativePath>../parent</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
Modified:
idm/trunk/idm/src/main/java/org/jboss/identity/idm/impl/api/session/managers/RoleManagerImpl.java
===================================================================
---
idm/trunk/idm/src/main/java/org/jboss/identity/idm/impl/api/session/managers/RoleManagerImpl.java 2009-02-23
20:47:59 UTC (rev 346)
+++
idm/trunk/idm/src/main/java/org/jboss/identity/idm/impl/api/session/managers/RoleManagerImpl.java 2009-02-26
11:13:14 UTC (rev 347)
@@ -35,6 +35,8 @@
import org.jboss.identity.idm.exception.IdentityException;
import org.jboss.identity.idm.spi.model.IdentityObjectRelationshipType;
import org.jboss.identity.idm.spi.model.IdentityObjectRelationship;
+import org.jboss.identity.idm.spi.model.IdentityObjectType;
+import org.jboss.identity.idm.spi.model.IdentityObject;
import org.jboss.identity.idm.spi.exception.OperationNotSupportedException;
import org.jboss.identity.idm.spi.searchcontrol.IdentityObjectSearchControl;
import org.jboss.identity.idm.impl.NotYetImplementedException;
@@ -45,6 +47,8 @@
import java.util.Collection;
import java.util.Set;
import java.util.HashSet;
+import java.util.List;
+import java.util.LinkedList;
/**
* @author <a href="mailto:boleslaw.dawidowicz at redhat.com">Boleslaw
Dawidowicz</a>
@@ -286,6 +290,45 @@
}
+ public Collection<Group> findGroupsWithRelatedRole(Identity identity,
IdentitySearchControl[] controls) throws IdentityException
+ {
+ List<Group> identities = new LinkedList<Group>();
+
+
+ Collection<IdentityObject> ios = null;
+
+ ios = getRepository().findIdentityObject(getInvocationContext(),
createIdentityObject(identity), null, true, convertSearchControls(controls));
+
+ for (IdentityObject io : ios)
+ {
+
+ identities.add(createGroup(io));
+ }
+
+ return identities;
+ }
+
+ public Collection<Group> findGroupsWithRelatedRole(Identity identity, GroupType
groupType, IdentitySearchControl[] controls) throws IdentityException
+ {
+ List<Group> identities = new LinkedList<Group>();
+
+ IdentityObjectType iot = getIdentityObjectType(groupType);
+
+ Collection<IdentityObject> ios = null;
+
+ ios = getRepository().findIdentityObject(getInvocationContext(),
createIdentityObject(identity), null, true, convertSearchControls(controls));
+
+ for (IdentityObject io : ios)
+ {
+ if (io.getIdentityType().getName().equals(iot.getName()))
+ {
+ identities.add(createGroup(io));
+ }
+ }
+
+ return identities;
+ }
+
public Collection<Role> findRoles(IdentityType identityType, RoleType roleType)
throws IdentityException
{
Set<Role> roles = new HashSet<Role>();
Modified:
idm/trunk/idm/src/main/java/org/jboss/identity/idm/impl/store/hibernate/HibernateIdentityStoreImpl.java
===================================================================
---
idm/trunk/idm/src/main/java/org/jboss/identity/idm/impl/store/hibernate/HibernateIdentityStoreImpl.java 2009-02-23
20:47:59 UTC (rev 346)
+++
idm/trunk/idm/src/main/java/org/jboss/identity/idm/impl/store/hibernate/HibernateIdentityStoreImpl.java 2009-02-26
11:13:14 UTC (rev 347)
@@ -659,7 +659,11 @@
@SuppressWarnings("unchecked")
- public Collection<IdentityObject>
findIdentityObject(IdentityStoreInvocationContext ctx, IdentityObject identity,
IdentityObjectRelationshipType relationshipType, boolean parent,
IdentityObjectSearchControl[] controls) throws IdentityException
+ public Collection<IdentityObject>
findIdentityObject(IdentityStoreInvocationContext ctx,
+ IdentityObject identity,
+ IdentityObjectRelationshipType
relationshipType,
+ boolean parent,
+ IdentityObjectSearchControl[]
controls) throws IdentityException
{
//TODO:test
@@ -723,9 +727,18 @@
if (parent)
{
- hqlString.append("select ior.toIdentityObject from
HibernateIdentityObjectRelationship ior where " +
- "ior.toIdentityObject.name like :nameFilter and ior.type.name like
:relType and ior.fromIdentityObject like :identity");
+ if (relationshipType != null)
+ {
+
+ hqlString.append("select ior.toIdentityObject from
HibernateIdentityObjectRelationship ior where " +
+ "ior.toIdentityObject.name like :nameFilter and ior.type.name like
:relType and ior.fromIdentityObject like :identity");
+ }
+ else
+ {
+ hqlString.append("select ior.toIdentityObject from
HibernateIdentityObjectRelationship ior where " +
+ "ior.toIdentityObject.name like :nameFilter and
ior.fromIdentityObject like :identity");
+ }
if (orderByName)
{
hqlString.append(" orderBy ior.toIdentityObject.name");
@@ -737,10 +750,17 @@
}
else
{
- hqlString.append("select ior.fromIdentityObject from
HibernateIdentityObjectRelationship ior where " +
- "ior.fromIdentityObject.name like :nameFilter and ior.type.name like
:relType and ior.toIdentityObject like :identity");
+ if (relationshipType != null)
+ {
+ hqlString.append("select ior.fromIdentityObject from
HibernateIdentityObjectRelationship ior where " +
+ "ior.fromIdentityObject.name like :nameFilter and ior.type.name
like :relType and ior.toIdentityObject like :identity");
+ }
+ else
+ {
+ hqlString.append("select ior.fromIdentityObject from
HibernateIdentityObjectRelationship ior where " +
+ "ior.fromIdentityObject.name like :nameFilter and
ior.toIdentityObject like :identity");
+ }
-
if (orderByName)
{
hqlString.append(" orderBy ior.toIdentityObject.name");
@@ -754,9 +774,13 @@
q = getHibernateSession(ctx).createQuery(hqlString.toString())
- .setParameter("relType", relationshipType.getName())
.setParameter("identity",hibernateObject);
+ if (relationshipType != null)
+ {
+ q.setParameter("relType", relationshipType.getName());
+ }
+
if (nameFilterSearchControl != null)
{
q.setParameter("nameFilter",
nameFilterSearchControl.getFilter().replaceAll("\\*", "%"));
Modified: idm/trunk/idm-api/pom.xml
===================================================================
--- idm/trunk/idm-api/pom.xml 2009-02-23 20:47:59 UTC (rev 346)
+++ idm/trunk/idm-api/pom.xml 2009-02-26 11:13:14 UTC (rev 347)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.jboss.identity</groupId>
<artifactId>idm-parent</artifactId>
- <version>1.0.0-SNAPSHOT</version>
+ <version>1.0.0.Alpha2</version>
<relativePath>../parent</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
Modified:
idm/trunk/idm-api/src/main/java/org/jboss/identity/idm/api/RelationshipManager.java
===================================================================
---
idm/trunk/idm-api/src/main/java/org/jboss/identity/idm/api/RelationshipManager.java 2009-02-23
20:47:59 UTC (rev 346)
+++
idm/trunk/idm-api/src/main/java/org/jboss/identity/idm/api/RelationshipManager.java 2009-02-26
11:13:14 UTC (rev 347)
@@ -168,10 +168,6 @@
/**
* Find all groups that given identity is associated with.
- * If the paginatedSearch or orderedSearch operations
- * are not supported, dedicated parameters will
- * take no effect
- *
* @param identity child identity
* @param groupType can be null
* @return
Modified: idm/trunk/idm-api/src/main/java/org/jboss/identity/idm/api/RoleManager.java
===================================================================
--- idm/trunk/idm-api/src/main/java/org/jboss/identity/idm/api/RoleManager.java 2009-02-23
20:47:59 UTC (rev 346)
+++ idm/trunk/idm-api/src/main/java/org/jboss/identity/idm/api/RoleManager.java 2009-02-26
11:13:14 UTC (rev 347)
@@ -176,6 +176,30 @@
IdentitySearchControl[] controls) throws
IdentityException;
/**
+ * Find all Groups with which Identity has a Role association
+ *
+ * @param identity
+ * @param controls
+ * @return
+ * @throws IdentityException
+ */
+ Collection<Group> findGroupsWithRelatedRole(Identity identity,
+ IdentitySearchControl[] controls) throws
IdentityException;
+
+
+ /**
+ * Find all Groups with which Identity has a Role association
+ *
+ * @param identity
+ * @param controls
+ * @return
+ * @throws IdentityException
+ */
+ Collection<Group> findGroupsWithRelatedRole(Identity identity,
+ GroupType groupType,
+ IdentitySearchControl[] controls) throws
IdentityException;
+
+ /**
* Find Role objects with a given RoleType associated with a given IdentityType
* @param identityType
* @param roleType
Modified: idm/trunk/idm-common/pom.xml
===================================================================
--- idm/trunk/idm-common/pom.xml 2009-02-23 20:47:59 UTC (rev 346)
+++ idm/trunk/idm-common/pom.xml 2009-02-26 11:13:14 UTC (rev 347)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.jboss.identity</groupId>
<artifactId>idm-parent</artifactId>
- <version>1.0.0-SNAPSHOT</version>
+ <version>1.0.0.Alpha2</version>
<relativePath>../parent</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
Modified: idm/trunk/idm-spi/pom.xml
===================================================================
--- idm/trunk/idm-spi/pom.xml 2009-02-23 20:47:59 UTC (rev 346)
+++ idm/trunk/idm-spi/pom.xml 2009-02-26 11:13:14 UTC (rev 347)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.jboss.identity</groupId>
<artifactId>idm-parent</artifactId>
- <version>1.0.0-SNAPSHOT</version>
+ <version>1.0.0.Alpha2</version>
<relativePath>../parent</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
Modified: idm/trunk/parent/pom.xml
===================================================================
--- idm/trunk/parent/pom.xml 2009-02-23 20:47:59 UTC (rev 346)
+++ idm/trunk/parent/pom.xml 2009-02-26 11:13:14 UTC (rev 347)
@@ -8,7 +8,7 @@
<groupId>org.jboss.identity</groupId>
<artifactId>idm-parent</artifactId>
<packaging>pom</packaging>
- <version>1.0.0-SNAPSHOT</version>
+ <version>1.0.0.Alpha2</version>
<name>JBoss Identity IDM- Parent</name>
<
url>http://labs.jboss.org/portal/jbosssecurity/</url>
<description>JBoss Identity is a cross-cutting project that handles identity
needs for the JEMS projects</description>
Modified: idm/trunk/pom.xml
===================================================================
--- idm/trunk/pom.xml 2009-02-23 20:47:59 UTC (rev 346)
+++ idm/trunk/pom.xml 2009-02-26 11:13:14 UTC (rev 347)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.jboss.identity</groupId>
<artifactId>idm-parent</artifactId>
- <version>1.0.0-SNAPSHOT</version>
+ <version>1.0.0.Alpha2</version>
<relativePath>parent</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>