[jboss-cvs] Picketlink SVN: r193 - idm/trunk/picketlink-idm-hibernate/src/main/java/org/picketlink/idm/impl/store/hibernate.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Mar 24 06:46:10 EDT 2010


Author: bdaw
Date: 2010-03-24 06:46:10 -0400 (Wed, 24 Mar 2010)
New Revision: 193

Modified:
   idm/trunk/picketlink-idm-hibernate/src/main/java/org/picketlink/idm/impl/store/hibernate/HibernateIdentityStoreImpl.java
Log:
- wrong IdentityObjectRelationshipName query not using realm name - can fail with non unique results in multi realm db.

Modified: idm/trunk/picketlink-idm-hibernate/src/main/java/org/picketlink/idm/impl/store/hibernate/HibernateIdentityStoreImpl.java
===================================================================
--- idm/trunk/picketlink-idm-hibernate/src/main/java/org/picketlink/idm/impl/store/hibernate/HibernateIdentityStoreImpl.java	2010-03-17 19:38:31 UTC (rev 192)
+++ idm/trunk/picketlink-idm-hibernate/src/main/java/org/picketlink/idm/impl/store/hibernate/HibernateIdentityStoreImpl.java	2010-03-24 10:46:10 UTC (rev 193)
@@ -952,6 +952,8 @@
       HibernateIdentityObject toIO = safeGet(ctx, toIdentity);
       HibernateIdentityObjectRelationshipType type = getHibernateIdentityObjectRelationshipType(ctx, relationshipType);
 
+      HibernateRealm realm = getRealm(getHibernateSession(ctx), ctx);
+
       org.hibernate.Query query = null;
       Criteria crit = null;
 
@@ -972,7 +974,10 @@
       {
          HibernateIdentityObjectRelationshipName relationshipName =
             (HibernateIdentityObjectRelationshipName)getHibernateSession(ctx)
-               .createCriteria(HibernateIdentityObjectRelationshipName.class).add(Restrictions.eq("name", name))
+               .createCriteria(HibernateIdentityObjectRelationshipName.class)
+               .add(Restrictions.eq("name", name))
+               .createAlias("realm", "rm")
+               .add(Restrictions.eq("rm.name", getRealmName(ctx)))
                .uniqueResult();
 
          if (relationshipName == null)




More information about the jboss-cvs-commits mailing list