Author: bdaw
Date: 2009-11-24 06:14:12 -0500 (Tue, 24 Nov 2009)
New Revision: 1076
Modified:
migration/picketlink/idm/trunk/picketlink-idm-core/src/main/java/org/picketlink/idm/impl/api/session/managers/PersistenceManagerImpl.java
migration/picketlink/idm/trunk/picketlink-idm-core/src/main/java/org/picketlink/idm/impl/api/session/managers/RoleManagerImpl.java
migration/picketlink/idm/trunk/picketlink-idm-hibernate/src/main/java/org/picketlink/idm/impl/store/hibernate/HibernateIdentityStoreImpl.java
migration/picketlink/idm/trunk/picketlink-idm-testsuite/src/test/resources/datasources/hibernates.xml
migration/picketlink/idm/trunk/pom.xml
Log:
- some hibernate store improvements
Modified:
migration/picketlink/idm/trunk/picketlink-idm-core/src/main/java/org/picketlink/idm/impl/api/session/managers/PersistenceManagerImpl.java
===================================================================
---
migration/picketlink/idm/trunk/picketlink-idm-core/src/main/java/org/picketlink/idm/impl/api/session/managers/PersistenceManagerImpl.java 2009-11-23
20:32:38 UTC (rev 1075)
+++
migration/picketlink/idm/trunk/picketlink-idm-core/src/main/java/org/picketlink/idm/impl/api/session/managers/PersistenceManagerImpl.java 2009-11-24
11:14:12 UTC (rev 1076)
@@ -125,8 +125,13 @@
IdentityObject identityObject =
getRepository().createIdentityObject(getInvocationContext(), identityName, iot);
- User user = createUser(identityObject);
+ User user = null;
+ if (identityObject != null)
+ {
+ user = new SimpleUser(identityName);
+ }
+
//Cache
if (cache != null)
{
@@ -135,7 +140,7 @@
cache.putUser(cacheNS, user);
}
- postCreate(new SimpleUser(identityName));
+ postCreate(user);
return user;
@@ -154,8 +159,14 @@
IdentityObject identityObject =
getRepository().createIdentityObject(getInvocationContext(), groupName, iot);
- Group group = createGroup(identityObject);
+ Group group = null;
+
+ if (identityObject != null)
+ {
+ group = new SimpleGroup(groupName, groupType);
+ }
+
if (cache != null)
{
//TODO: maybe invalidate only part
Modified:
migration/picketlink/idm/trunk/picketlink-idm-core/src/main/java/org/picketlink/idm/impl/api/session/managers/RoleManagerImpl.java
===================================================================
---
migration/picketlink/idm/trunk/picketlink-idm-core/src/main/java/org/picketlink/idm/impl/api/session/managers/RoleManagerImpl.java 2009-11-23
20:32:38 UTC (rev 1075)
+++
migration/picketlink/idm/trunk/picketlink-idm-core/src/main/java/org/picketlink/idm/impl/api/session/managers/RoleManagerImpl.java 2009-11-24
11:14:12 UTC (rev 1076)
@@ -279,8 +279,16 @@
IdentityObjectRelationship rel =
getRepository().createRelationship(getInvocationContext(), createIdentityObject(group),
createIdentityObject(user), ROLE, roleType.getName(), false);
- Role role = new SimpleRole(new SimpleRoleType(rel.getName()),
createUser(rel.getToIdentityObject()), createGroup(rel.getFromIdentityObject()));
+
+
+ Role role = null;
+
+ if (rel != null)
+ {
+ role = new SimpleRole(roleType, user, group);
+ }
+
if (cache != null)
{
cache.invalidateAllQueries(cacheNS);
Modified:
migration/picketlink/idm/trunk/picketlink-idm-hibernate/src/main/java/org/picketlink/idm/impl/store/hibernate/HibernateIdentityStoreImpl.java
===================================================================
---
migration/picketlink/idm/trunk/picketlink-idm-hibernate/src/main/java/org/picketlink/idm/impl/store/hibernate/HibernateIdentityStoreImpl.java 2009-11-23
20:32:38 UTC (rev 1075)
+++
migration/picketlink/idm/trunk/picketlink-idm-hibernate/src/main/java/org/picketlink/idm/impl/store/hibernate/HibernateIdentityStoreImpl.java 2009-11-24
11:14:12 UTC (rev 1076)
@@ -64,6 +64,7 @@
import org.hibernate.cfg.Configuration;
import org.hibernate.criterion.Restrictions;
import org.hibernate.criterion.Order;
+import org.hibernate.criterion.Projections;
/**
* @author <a href="mailto:boleslaw.dawidowicz at redhat.com">Boleslaw
Dawidowicz</a>
@@ -74,23 +75,6 @@
//TODO: logging
- private final String QUERY_RELATIONSHIP_BY_FROM_TO =
- "select r from HibernateIdentityObjectRelationship r where
r.fromIdentityObject = :fromIO and " +
- "r.toIdentityObject = :toIO";
-
- private final String QUERY_RELATIONSHIP_BY_FROM_TO_TYPE =
- "select r from HibernateIdentityObjectRelationship r where
r.fromIdentityObject = :fromIO and " +
- "r.toIdentityObject = :toIO and r.type.name = :typeName";
-
- private final String QUERY_RELATIONSHIP_BY_FROM_TO_TYPE_NAME =
- "select r from HibernateIdentityObjectRelationship r where
r.fromIdentityObject = :fromIO and " +
- "r.toIdentityObject = :toIO and r.type.name = :typeName and r.name.name =
:name";
-
- private final String QUERY_RELATIONSHIP_BY_IDENTITIES =
- "select r from HibernateIdentityObjectRelationship r where " +
- "(r.fromIdentityObject = :IO1 and r.toIdentityObject = :IO2) or " +
- "(r.fromIdentityObject = :IO2 and r.toIdentityObject = :IO1)";
-
public static final String HIBERNATE_SESSION_FACTORY_REGISTRY_NAME =
"hibernateSessionFactoryRegistryName";
public static final String HIBERNATE_CONFIGURATION =
"hibernateConfiguration";
@@ -494,15 +478,18 @@
HibernateRealm realm = getRealm(session, ctx);
- // Check if object with a given name and type is not present already
- List<?> results =
session.createQuery(HibernateIdentityObject.findIdentityObjectByNameAndType)
- .setParameter("realmName", realm.getName())
- .setParameter("name", name)
- .setParameter("typeName", identityObjectType.getName())
+ int size = (Integer)session.createCriteria(HibernateIdentityObject.class)
+ .createAlias("identityType", "type")
+ .createAlias("realm", "rm")
+ .add(Restrictions.eq("name", name))
+ .add(Restrictions.eq("rm.name", realm.getName()))
+ .add(Restrictions.eq("type.name", identityObjectType.getName()))
+ .setProjection(Projections.rowCount())
.setCacheable(true)
- .list();
+ .list().get(0);
- if (results.size() != 0)
+
+ if (size != 0)
{
throw new IdentityException("IdentityObject already present in this
IdentityStore:" +
"name=" + name + "; type=" + identityObjectType.getName()
+ "; realm=" + realm);
@@ -549,7 +536,7 @@
relationship.getFromIdentityObject().getFromRelationships().remove(relationship);
relationship.getToIdentityObject().getToRelationships().remove(relationship);
hibernateSession.delete(relationship);
- hibernateSession.flush();
+// hibernateSession.flush();
}
HibernateIdentityObjectRelationship[] to = new
HibernateIdentityObjectRelationship[hibernateObject.getToRelationships().size()];
@@ -559,12 +546,12 @@
relationship.getToIdentityObject().getToRelationships().remove(relationship);
hibernateSession.delete(relationship);
- hibernateSession.flush();
+// hibernateSession.flush();
}
hibernateSession.delete(hibernateObject);
- hibernateSession.flush();
+// hibernateSession.flush();
}
catch (Exception e)
@@ -923,7 +910,7 @@
{
Session session = getHibernateSession(ctx);
session.persist(relationship);
- session.flush();
+// session.flush();
}
catch (HibernateException e)
@@ -950,14 +937,20 @@
HibernateIdentityObjectRelationshipType type =
getHibernateIdentityObjectRelationshipType(ctx, relationshipType);
org.hibernate.Query query = null;
+ Criteria crit = null;
if (name == null)
{
- query =
getHibernateSession(ctx).createQuery(QUERY_RELATIONSHIP_BY_FROM_TO_TYPE)
- .setParameter("fromIO", fromIO)
- .setParameter("toIO", toIO)
- .setParameter("typeName", type.getName())
+
+ crit =
getHibernateSession(ctx).createCriteria(HibernateIdentityObjectRelationship.class)
+ .createAlias("type", "t")
+ .add(Restrictions.eq("fromIdentityObject", fromIO))
+ .add(Restrictions.eq("toIdentityObject", toIO))
+ .add(Restrictions.eq("t.name", type.getName()))
.setCacheable(true);
+
+
+
}
else
{
@@ -971,16 +964,19 @@
throw new IdentityException("Relationship name not present in the
store");
}
- query =
getHibernateSession(ctx).createQuery(QUERY_RELATIONSHIP_BY_FROM_TO_TYPE_NAME)
- .setParameter("fromIO", fromIO)
- .setParameter("toIO", toIO)
- .setParameter("typeName", type.getName())
- .setParameter("name", name)
+
+ crit =
getHibernateSession(ctx).createCriteria(HibernateIdentityObjectRelationship.class)
+ .createAlias("type", "t")
+ .createAlias("name", "n")
+ .add(Restrictions.eq("fromIdentityObject", fromIO))
+ .add(Restrictions.eq("toIdentityObject", toIO))
+ .add(Restrictions.eq("t.name", type.getName()))
+ .add(Restrictions.eq("n.name", name))
.setCacheable(true);
}
- HibernateIdentityObjectRelationship relationship =
(HibernateIdentityObjectRelationship)query.uniqueResult();
+ HibernateIdentityObjectRelationship relationship =
(HibernateIdentityObjectRelationship)crit.uniqueResult();
if (relationship == null)
{
@@ -992,7 +988,7 @@
fromIO.getFromRelationships().remove(relationship);
toIO.getToRelationships().remove(relationship);
getHibernateSession(ctx).delete(relationship);
- getHibernateSession(ctx).flush();
+// getHibernateSession(ctx).flush();
}
catch (HibernateException e)
{
@@ -1007,11 +1003,23 @@
HibernateIdentityObject hio1 = safeGet(ctx, identity1);
HibernateIdentityObject hio2 = safeGet(ctx, identity2);
- org.hibernate.Query query =
getHibernateSession(ctx).createQuery(QUERY_RELATIONSHIP_BY_IDENTITIES)
- .setParameter("IO1", hio1)
- .setParameter("IO2", hio2);
- List results = query.list();
+ Criteria criteria =
getHibernateSession(ctx).createCriteria(HibernateIdentityObjectRelationship.class)
+ .setCacheable(true)
+ .add(Restrictions.or(
+ Restrictions.and(
+ Restrictions.eq("fromIdentityObject", hio1),
+ Restrictions.eq("toIdentityObject", hio2)
+ ),
+ Restrictions.and(
+ Restrictions.eq("fromIdentityObject", hio2),
+ Restrictions.eq("toIdentityObject", hio1)
+ )
+ ));
+
+
+
+ List results = criteria.list();
Hibernate.initialize(results);
for (Iterator iterator = results.iterator(); iterator.hasNext();)
@@ -1026,7 +1034,7 @@
relationship.getFromIdentityObject().getFromRelationships().remove(relationship);
relationship.getToIdentityObject().getToRelationships().remove(relationship);
getHibernateSession(ctx).delete(relationship);
- getHibernateSession(ctx).flush();
+// getHibernateSession(ctx).flush();
}
catch (HibernateException e)
{
@@ -1045,24 +1053,20 @@
HibernateIdentityObject hio1 = safeGet(ctx, fromIdentity);
HibernateIdentityObject hio2 = safeGet(ctx, toIdentity);
- org.hibernate.Query query = null;
+ Criteria criteria =
getHibernateSession(ctx).createCriteria(HibernateIdentityObjectRelationship.class)
+ .setCacheable(true);
- if (relationshipType == null)
+
+ if (relationshipType != null)
{
- query = getHibernateSession(ctx).createQuery(QUERY_RELATIONSHIP_BY_FROM_TO);
+ criteria.createAlias("type",
"t").add(Restrictions.eq("t.name", relationshipType.getName()));
}
- else
- {
- query =
getHibernateSession(ctx).createQuery(QUERY_RELATIONSHIP_BY_FROM_TO_TYPE)
- .setParameter("typeName", relationshipType.getName());
- }
- query.setParameter("fromIO", hio1)
- .setParameter("toIO", hio2);
+ criteria.add(Restrictions.eq("fromIdentityObject", hio1))
+ .add(Restrictions.eq("toIdentityObject", hio2));
-
- List<HibernateIdentityObjectRelationship> results = query.list();
+ List<HibernateIdentityObjectRelationship> results = criteria.list();
Hibernate.initialize(results);
return new HashSet<IdentityObjectRelationship>(results);
@@ -1140,7 +1144,7 @@
hiorn = new HibernateIdentityObjectRelationshipName(name, realm);
getHibernateSession(ctx).persist(hiorn);
- getHibernateSession(ctx).flush();
+// getHibernateSession(ctx).flush();
}
@@ -1167,9 +1171,11 @@
try
{
HibernateIdentityObjectRelationshipName hiorn =
(HibernateIdentityObjectRelationshipName)hibernateSession
-
.createQuery(HibernateIdentityObjectRelationshipName.findIdentityObjectRelationshipNameByName)
- .setParameter("name", name)
- .setParameter("realmName", getRealmName(ctx))
+ .createCriteria(HibernateIdentityObjectRelationshipName.class)
+ .createAlias("realm", "rm")
+ .add(Restrictions.eq("name", name))
+ .add(Restrictions.eq("rm.name", getRealmName(ctx)))
+ .setCacheable(true)
.uniqueResult();
if (hiorn == null)
@@ -1211,48 +1217,49 @@
try
{
- Query q = null;
+ //Query q = null;
+ Criteria c =
hibernateSession.createCriteria(HibernateIdentityObjectRelationshipName.class)
+ .setCacheable(true)
+ .createAlias("realm", "r")
+ .setProjection(Projections.property("name"));
+
+
+
if (criteria != null && criteria.isSorted())
{
if (criteria.isAscending())
{
- q =
hibernateSession.createQuery(HibernateIdentityObjectRelationshipName.findIdentityObjectRelationshipNamesOrderedByNameAsc);
+ c.addOrder(Order.asc("name"));
}
else
{
- q =
hibernateSession.createQuery(HibernateIdentityObjectRelationshipName.findIdentityObjectRelationshipNamesOrderedByNameDesc);
+ c.addOrder(Order.desc("name"));
}
}
- else
- {
- q =
hibernateSession.createQuery(HibernateIdentityObjectRelationshipName.findIdentityObjectRelationshipNames);
- }
- q.setCacheable(true);
+ c.add(Restrictions.eq("r.name", getRealmName(ctx)));
- q.setParameter("realmName", getRealmName(ctx));
-
if (criteria != null && criteria.getFilter() != null)
{
- q.setParameter("nameFilter",
criteria.getFilter().replaceAll("\\*", "%"));
+ c.add(Restrictions.like("name",
criteria.getFilter().replaceAll("\\*", "%")));
}
else
{
- q.setParameter("nameFilter", "%");
+ c.add(Restrictions.like("name", "%"));
}
if (criteria != null && criteria.isPaged())
{
- q.setFirstResult(criteria.getMaxResults());
+ c.setFirstResult(criteria.getMaxResults());
if (criteria.getFirstResult() > 0)
{
- q.setMaxResults(criteria.getMaxResults());
+ c.setMaxResults(criteria.getMaxResults());
}
}
- List<String> results = (List<String>)q.list();
+ List<String> results = (List<String>)c.list();
Hibernate.initialize(results);
@@ -1283,37 +1290,38 @@
try
{
- Query q = null;
+ Criteria c =
hibernateSession.createCriteria(HibernateIdentityObjectRelationship.class)
+ .setCacheable(true)
+ .createAlias("name", "n")
+ .setProjection(Projections.property("n.name"));
if (criteria != null)
{
if (criteria.isAscending())
{
- q =
hibernateSession.createQuery(HibernateIdentityObjectRelationshipName.findIdentityObjectRelationshipNamesForIdentityObjectOrderedByNameAsc).setCacheable(true);
+ c.addOrder(Order.asc("n.name"));
}
else
{
- q =
hibernateSession.createQuery(HibernateIdentityObjectRelationshipName.findIdentityObjectRelationshipNamesForIdentityObjectOrdereByNameDesc).setCacheable(true);
+ c.addOrder(Order.desc("n.name"));
}
}
- else
- {
- q =
hibernateSession.createQuery(HibernateIdentityObjectRelationshipName.findIdentityObjectRelationshipNamesForIdentityObject);
- }
- q.setCacheable(true);
- q.setParameter("identityObject", hibernateObject);
+ c.add(Restrictions.or(
+ Restrictions.eq("fromIdentityObject", hibernateObject),
+ Restrictions.eq("toIdentityObject",hibernateObject)
+ ));
if (criteria != null && criteria.isPaged())
{
- q.setFirstResult(criteria.getFirstResult());
+ c.setFirstResult(criteria.getFirstResult());
if (criteria.getMaxResults() > 0)
{
- q.setMaxResults(criteria.getMaxResults());
+ c.setMaxResults(criteria.getMaxResults());
}
}
- List<String> results = (List<String>)q.list();
+ List<String> results = (List<String>)c.list();
Hibernate.initialize(results);
@@ -1345,9 +1353,15 @@
try
{
- HibernateIdentityObjectRelationshipName hiorn =
(HibernateIdentityObjectRelationshipName)hibernateSession.createQuery(HibernateIdentityObjectRelationshipName.findIdentityObjectRelationshipNameByName)
- .setParameter("name", name).setParameter("realmName",
getRealmName(ctx)).setCacheable(true).uniqueResult();
+ HibernateIdentityObjectRelationshipName hiorn =
(HibernateIdentityObjectRelationshipName)hibernateSession.
+ createCriteria(HibernateIdentityObjectRelationshipName.class)
+ .setCacheable(true)
+ .createAlias("realm", "r")
+ .add(Restrictions.eq("name", name))
+ .add(Restrictions.eq("r.name", getRealmName(ctx)))
+ .uniqueResult();
+
if (hiorn == null)
{
throw new IdentityException("Relationship name doesn't
exist");
@@ -1376,8 +1390,13 @@
try
{
- HibernateIdentityObjectRelationshipName hiorn =
(HibernateIdentityObjectRelationshipName)hibernateSession.createQuery(HibernateIdentityObjectRelationshipName.findIdentityObjectRelationshipNameByName)
- .setParameter("name",
name).setParameter("realmName",
getRealmName(ctx)).setCacheable(true).uniqueResult();
+ HibernateIdentityObjectRelationshipName hiorn =
(HibernateIdentityObjectRelationshipName)hibernateSession.
+ createCriteria(HibernateIdentityObjectRelationshipName.class)
+ .setCacheable(true)
+ .createAlias("realm", "r")
+ .add(Restrictions.eq("name", name))
+ .add(Restrictions.eq("r.name", getRealmName(ctx)))
+ .uniqueResult();
if (hiorn == null)
{
@@ -1405,8 +1424,13 @@
try
{
- HibernateIdentityObjectRelationshipName hiorn =
(HibernateIdentityObjectRelationshipName)hibernateSession.createQuery(HibernateIdentityObjectRelationshipName.findIdentityObjectRelationshipNameByName)
- .setParameter("name",
name).setParameter("realmName",
getRealmName(ctx)).setCacheable(true).uniqueResult();
+ HibernateIdentityObjectRelationshipName hiorn =
(HibernateIdentityObjectRelationshipName)hibernateSession.
+ createCriteria(HibernateIdentityObjectRelationshipName.class)
+ .setCacheable(true)
+ .createAlias("realm", "r")
+ .add(Restrictions.eq("name", name))
+ .add(Restrictions.eq("r.name", getRealmName(ctx)))
+ .uniqueResult();
if (hiorn == null)
{
@@ -1434,17 +1458,17 @@
HibernateIdentityObject toIO = safeGet(ctx, relationship.getToIdentityObject());
HibernateIdentityObjectRelationshipType type =
getHibernateIdentityObjectRelationshipType(ctx, relationship.getType());
- Query query = null;
+ Criteria criteria = getHibernateSession(ctx).
+ createCriteria(HibernateIdentityObjectRelationship.class)
+ .setCacheable(true)
+ .createAlias("type", "t")
+ .add(Restrictions.eq("t.name", type.getName()))
+ .add(Restrictions.eq("fromIdentityObject", fromIO))
+ .add(Restrictions.eq("toIdentityObject", toIO));
- if (relationship.getName() == null)
+
+ if (relationship.getName() != null)
{
- query =
getHibernateSession(ctx).createQuery(QUERY_RELATIONSHIP_BY_FROM_TO_TYPE)
- .setParameter("fromIO", fromIO)
- .setParameter("toIO", toIO)
- .setParameter("typeName", type.getName()).setCacheable(true);
- }
- else
- {
HibernateIdentityObjectRelationshipName relationshipName =
(HibernateIdentityObjectRelationshipName)getHibernateSession(ctx)
.createCriteria(HibernateIdentityObjectRelationshipName.class).add(Restrictions.eq("name",
relationship.getName()))
@@ -1455,18 +1479,13 @@
throw new IdentityException("Relationship name not present in the
store");
}
- query =
getHibernateSession(ctx).createQuery(QUERY_RELATIONSHIP_BY_FROM_TO_TYPE_NAME)
- .setParameter("fromIO", fromIO)
- .setParameter("toIO", toIO)
- .setParameter("typeName", type.getName())
- .setParameter("name", relationship.getName())
- .setCacheable(true);
+ criteria.createAlias("name",
"n").add(Restrictions.eq("n.name", relationship.getName()));
}
try
{
- HibernateIdentityObjectRelationship hibernateRelationship =
(HibernateIdentityObjectRelationship)query.uniqueResult();
+ HibernateIdentityObjectRelationship hibernateRelationship =
(HibernateIdentityObjectRelationship)criteria.uniqueResult();
Hibernate.initialize(hibernateRelationship.getProperties());
@@ -1484,18 +1503,17 @@
HibernateIdentityObject toIO = safeGet(ctx, relationship.getToIdentityObject());
HibernateIdentityObjectRelationshipType type =
getHibernateIdentityObjectRelationshipType(ctx, relationship.getType());
- Query query = null;
+ Criteria criteria = getHibernateSession(ctx).
+ createCriteria(HibernateIdentityObjectRelationship.class)
+ .setCacheable(true)
+ .createAlias("type", "t")
+ .add(Restrictions.eq("t.name", type.getName()))
+ .add(Restrictions.eq("fromIdentityObject", fromIO))
+ .add(Restrictions.eq("toIdentityObject", toIO));
- if (relationship.getName() == null)
+ if (relationship.getName() != null)
{
- query =
getHibernateSession(ctx).createQuery(QUERY_RELATIONSHIP_BY_FROM_TO_TYPE)
- .setParameter("fromIO", fromIO)
- .setParameter("toIO", toIO)
- .setParameter("typeName", type.getName())
- .setCacheable(true);
- }
- else
- {
+
HibernateIdentityObjectRelationshipName relationshipName =
(HibernateIdentityObjectRelationshipName)getHibernateSession(ctx)
.createCriteria(HibernateIdentityObjectRelationshipName.class).add(Restrictions.eq("name",
relationship.getName()))
@@ -1507,18 +1525,14 @@
throw new IdentityException("Relationship name not present in the
store");
}
- query =
getHibernateSession(ctx).createQuery(QUERY_RELATIONSHIP_BY_FROM_TO_TYPE_NAME)
- .setParameter("fromIO", fromIO)
- .setParameter("toIO", toIO)
- .setParameter("typeName", type.getName())
- .setParameter("name", relationship.getName())
- .setCacheable(true);
+ criteria.createAlias("name",
"n").add(Restrictions.eq("n.name", relationship.getName()));
+
}
try
{
- HibernateIdentityObjectRelationship hibernateRelationship =
(HibernateIdentityObjectRelationship)query.uniqueResult();
+ HibernateIdentityObjectRelationship hibernateRelationship =
(HibernateIdentityObjectRelationship)criteria.uniqueResult();
hibernateRelationship.getProperties().putAll(properties);
}
@@ -1534,18 +1548,16 @@
HibernateIdentityObject toIO = safeGet(ctx, relationship.getToIdentityObject());
HibernateIdentityObjectRelationshipType type =
getHibernateIdentityObjectRelationshipType(ctx, relationship.getType());
- Query query = null;
+ Criteria criteria = getHibernateSession(ctx).
+ createCriteria(HibernateIdentityObjectRelationship.class)
+ .setCacheable(true)
+ .createAlias("type", "t")
+ .add(Restrictions.eq("t.name", type.getName()))
+ .add(Restrictions.eq("fromIdentityObject", fromIO))
+ .add(Restrictions.eq("toIdentityObject", toIO));
if (relationship.getName() == null)
{
- query =
getHibernateSession(ctx).createQuery(QUERY_RELATIONSHIP_BY_FROM_TO_TYPE)
- .setParameter("fromIO", fromIO)
- .setParameter("toIO", toIO)
- .setParameter("typeName", type.getName())
- .setCacheable(true);
- }
- else
- {
HibernateIdentityObjectRelationshipName relationshipName =
(HibernateIdentityObjectRelationshipName)getHibernateSession(ctx)
.createCriteria(HibernateIdentityObjectRelationshipName.class).add(Restrictions.eq("name",
relationship.getName()))
@@ -1557,18 +1569,13 @@
throw new IdentityException("Relationship name not present in the
store");
}
- query =
getHibernateSession(ctx).createQuery(QUERY_RELATIONSHIP_BY_FROM_TO_TYPE_NAME)
- .setParameter("fromIO", fromIO)
- .setParameter("toIO", toIO)
- .setParameter("typeName", type.getName())
- .setParameter("name", relationship.getName())
- .setCacheable(true);
+ criteria.createAlias("name",
"n").add(Restrictions.eq("n.name", relationship.getName()));
}
try
{
- HibernateIdentityObjectRelationship hibernateRelationship =
(HibernateIdentityObjectRelationship)query.uniqueResult();
+ HibernateIdentityObjectRelationship hibernateRelationship =
(HibernateIdentityObjectRelationship)criteria.uniqueResult();
Hibernate.initialize(hibernateRelationship.getProperties());
@@ -2265,7 +2272,7 @@
hibernateObject.addCredential(hibernateCredential);
- hibernateSession.flush();
+// hibernateSession.flush();
}
else
@@ -2285,7 +2292,7 @@
{
HibernateIdentityObjectType hibernateType = new HibernateIdentityObjectType(type);
getHibernateSession(ctx).persist(hibernateType);
- getHibernateSession(ctx).flush();
+// getHibernateSession(ctx).flush();
}
@@ -2294,7 +2301,7 @@
{
HibernateIdentityObjectRelationshipType hibernateType = new
HibernateIdentityObjectRelationshipType(type);
getHibernateSession(ctx).persist(hibernateType);
- getHibernateSession(ctx).flush();
+// getHibernateSession(ctx).flush();
}
Modified:
migration/picketlink/idm/trunk/picketlink-idm-testsuite/src/test/resources/datasources/hibernates.xml
===================================================================
---
migration/picketlink/idm/trunk/picketlink-idm-testsuite/src/test/resources/datasources/hibernates.xml 2009-11-23
20:32:38 UTC (rev 1075)
+++
migration/picketlink/idm/trunk/picketlink-idm-testsuite/src/test/resources/datasources/hibernates.xml 2009-11-24
11:14:12 UTC (rev 1076)
@@ -7,19 +7,19 @@
<name>hibernate.hbm2ddl.auto</name>
<value>create-drop</value>
</property>
+ <!--<property>-->
+ <!--<name>hibernate.show_sql</name>-->
+ <!--<value>true</value>-->
+ <!--</property>-->
+ <!--<property>-->
+ <!--<name>hibernate.use_sql_comments</name>-->
+ <!--<value>true</value>-->
+ <!--</property>-->
+ <!--<property>-->
+ <!--<name>hibernate.format_sql</name>-->
+ <!--<value>true</value>-->
+ <!--</property>-->
<property>
- <name>hibernate.show_sql</name>
- <value>true</value>
- </property>
- <property>
- <name>hibernate.use_sql_comments</name>
- <value>true</value>
- </property>
- <property>
- <name>hibernate.format_sql</name>
- <value>true</value>
- </property>
- <property>
<name>hibernate.auto_close_session</name>
<value>true</value>
</property>
Modified: migration/picketlink/idm/trunk/pom.xml
===================================================================
--- migration/picketlink/idm/trunk/pom.xml 2009-11-23 20:32:38 UTC (rev 1075)
+++ migration/picketlink/idm/trunk/pom.xml 2009-11-24 11:14:12 UTC (rev 1076)
@@ -54,7 +54,6 @@
<module>picketlink-idm-docs</module>
<module>integration</module>
<module>assembly</module>
-
</modules>
<properties>
<skipTests>true</skipTests>