You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@roller.apache.org by sn...@apache.org on 2006/03/10 04:03:45 UTC
svn commit: r384689 -
/incubator/roller/trunk/src/org/roller/business/hibernate/HibernateUserManagerImpl.java
Author: snoopdave
Date: Thu Mar 9 19:03:37 2006
New Revision: 384689
URL: http://svn.apache.org/viewcvs?rev=384689&view=rev
Log:
Force weblog by handle to be insensitive about handle case, 2nd part of fix for ROL-1066
Modified:
incubator/roller/trunk/src/org/roller/business/hibernate/HibernateUserManagerImpl.java
Modified: incubator/roller/trunk/src/org/roller/business/hibernate/HibernateUserManagerImpl.java
URL: http://svn.apache.org/viewcvs/incubator/roller/trunk/src/org/roller/business/hibernate/HibernateUserManagerImpl.java?rev=384689&r1=384688&r2=384689&view=diff
==============================================================================
--- incubator/roller/trunk/src/org/roller/business/hibernate/HibernateUserManagerImpl.java (original)
+++ incubator/roller/trunk/src/org/roller/business/hibernate/HibernateUserManagerImpl.java Thu Mar 9 19:03:37 2006
@@ -3,7 +3,6 @@
*/
package org.roller.business.hibernate;
-import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
@@ -17,6 +16,7 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.hibernate.criterion.SimpleExpression;
import org.roller.RollerException;
import org.roller.business.PersistenceStrategy;
import org.roller.business.UserManagerImpl;
@@ -46,6 +46,13 @@
private static Log mLogger =
LogFactory.getFactory().getInstance(HibernateUserManagerImpl.class);
+
+ /** Doesn't seem to be any other way to get ignore case w/o QBE */
+ class IgnoreCaseEqExpression extends SimpleExpression {
+ public IgnoreCaseEqExpression(String property, Object value) {
+ super(property, value, "=", true);
+ }
+ }
/**
* @param strategy
@@ -141,7 +148,7 @@
throw new RollerException(e);
}
}
-
+
/**
* Return website specified by handle.
*/
@@ -155,11 +162,11 @@
{
Session session = ((HibernateStrategy)mStrategy).getSession();
Criteria criteria = session.createCriteria(WebsiteData.class);
- if (enabled != null)
+ if (enabled != null)
{
criteria.add(
Expression.conjunction()
- .add(Expression.eq("handle", handle))
+ .add(new IgnoreCaseEqExpression("handle", handle))
.add(Expression.eq("enabled", enabled)));
}
else
@@ -168,7 +175,8 @@
Expression.conjunction()
.add(Expression.eq("handle", handle)));
}
- return (WebsiteData)criteria.uniqueResult();
+ WebsiteData website = (WebsiteData)criteria.uniqueResult();
+ return website;
}
catch (HibernateException e)
{