[hibernate-commits] Hibernate SVN: r11184 - in branches/Branch_3_2/HibernateExt/search/src: java/org/hibernate/search/bridge/builtin and 1 other directories.

hibernate-commits at lists.jboss.org hibernate-commits at lists.jboss.org
Fri Feb 9 19:14:40 EST 2007


Author: epbernard
Date: 2007-02-09 19:14:40 -0500 (Fri, 09 Feb 2007)
New Revision: 11184

Added:
   branches/Branch_3_2/HibernateExt/search/src/java/org/hibernate/search/bridge/builtin/BooleanBridge.java
Modified:
   branches/Branch_3_2/HibernateExt/search/src/java/org/hibernate/search/bridge/BridgeFactory.java
   branches/Branch_3_2/HibernateExt/search/src/test/org/hibernate/search/test/bridge/BridgeTest.java
   branches/Branch_3_2/HibernateExt/search/src/test/org/hibernate/search/test/bridge/Cloud.java
Log:
HSEARCH-3 boolean bridge

Modified: branches/Branch_3_2/HibernateExt/search/src/java/org/hibernate/search/bridge/BridgeFactory.java
===================================================================
--- branches/Branch_3_2/HibernateExt/search/src/java/org/hibernate/search/bridge/BridgeFactory.java	2007-02-10 00:01:50 UTC (rev 11183)
+++ branches/Branch_3_2/HibernateExt/search/src/java/org/hibernate/search/bridge/BridgeFactory.java	2007-02-10 00:14:40 UTC (rev 11184)
@@ -19,6 +19,7 @@
 import org.hibernate.search.bridge.builtin.DoubleBridge;
 import org.hibernate.search.bridge.builtin.ShortBridge;
 import org.hibernate.search.bridge.builtin.EnumBridge;
+import org.hibernate.search.bridge.builtin.BooleanBridge;
 import org.hibernate.search.annotations.Resolution;
 import org.hibernate.search.annotations.Parameter;
 import org.hibernate.annotations.common.reflection.XClass;
@@ -49,6 +50,8 @@
 
 	public static final TwoWayFieldBridge STRING = new TwoWayString2FieldBridgeAdaptor( new StringBridge() );
 
+	public static final TwoWayFieldBridge BOOLEAN = new TwoWayString2FieldBridgeAdaptor( new BooleanBridge() );
+
 	public static final FieldBridge DATE_YEAR = new String2FieldBridgeAdaptor( DateBridge.DATE_YEAR );
 	public static final FieldBridge DATE_MONTH = new String2FieldBridgeAdaptor( DateBridge.DATE_MONTH );
 	public static final FieldBridge DATE_DAY = new String2FieldBridgeAdaptor( DateBridge.DATE_DAY );
@@ -72,6 +75,8 @@
 		builtInBridges.put( BigInteger.class.getName(), BIG_INTEGER );
 		builtInBridges.put( BigDecimal.class.getName(), BIG_DECIMAL );
 		builtInBridges.put( String.class.getName(), STRING );
+		builtInBridges.put( Boolean.class.getName(), BOOLEAN );
+		builtInBridges.put( boolean.class.getName(), BOOLEAN );
 
 		builtInBridges.put( Date.class.getName(), DATE_MILLISECOND );
 	}

Added: branches/Branch_3_2/HibernateExt/search/src/java/org/hibernate/search/bridge/builtin/BooleanBridge.java
===================================================================
--- branches/Branch_3_2/HibernateExt/search/src/java/org/hibernate/search/bridge/builtin/BooleanBridge.java	                        (rev 0)
+++ branches/Branch_3_2/HibernateExt/search/src/java/org/hibernate/search/bridge/builtin/BooleanBridge.java	2007-02-10 00:14:40 UTC (rev 11184)
@@ -0,0 +1,23 @@
+//$Id: $
+package org.hibernate.search.bridge.builtin;
+
+import org.hibernate.search.bridge.TwoWayStringBridge;
+
+
+/**
+ * Map a boolean field
+ *
+ * @author Sylvain Vieujot
+ */
+public class BooleanBridge implements TwoWayStringBridge {
+
+	public Boolean stringToObject(String stringValue) {
+		return Boolean.valueOf( stringValue );
+	}
+
+	public String objectToString(Object object) {
+		Boolean b = (Boolean) object;
+		return b.toString();
+	}
+}
+

Modified: branches/Branch_3_2/HibernateExt/search/src/test/org/hibernate/search/test/bridge/BridgeTest.java
===================================================================
--- branches/Branch_3_2/HibernateExt/search/src/test/org/hibernate/search/test/bridge/BridgeTest.java	2007-02-10 00:01:50 UTC (rev 11183)
+++ branches/Branch_3_2/HibernateExt/search/src/test/org/hibernate/search/test/bridge/BridgeTest.java	2007-02-10 00:14:40 UTC (rev 11184)
@@ -36,6 +36,7 @@
         cloud.setLong2( 2l );
         cloud.setString(null);
 		cloud.setType( CloudType.DOG );
+		cloud.setStorm( false );
 		org.hibernate.Session s = openSession();
         Transaction tx = s.beginTransaction();
         s.persist(cloud);
@@ -49,7 +50,7 @@
         List result;
 
         query = parser.parse("double2:[2.1 TO 2.1] AND float2:[2.1 TO 2.1] " +
-				"AND int2:[2 TO 2.1] AND long2:[2 TO 2.1] AND type:\"dog\"");
+				"AND int2:[2 TO 2.1] AND long2:[2 TO 2.1] AND type:\"dog\" AND storm:false");
 
 		result = session.createFullTextQuery(query).list();
         assertEquals( "find primitives and do not fail on null", 1, result.size() );

Modified: branches/Branch_3_2/HibernateExt/search/src/test/org/hibernate/search/test/bridge/Cloud.java
===================================================================
--- branches/Branch_3_2/HibernateExt/search/src/test/org/hibernate/search/test/bridge/Cloud.java	2007-02-10 00:01:50 UTC (rev 11183)
+++ branches/Branch_3_2/HibernateExt/search/src/test/org/hibernate/search/test/bridge/Cloud.java	2007-02-10 00:14:40 UTC (rev 11184)
@@ -44,6 +44,7 @@
     private String customFieldBridge;
     private String customStringBridge;
 	private CloudType type;
+	private boolean storm;
 
 	@Text
     @FieldBridge(impl = TruncateFieldBridge.class)
@@ -243,4 +244,13 @@
 	public void setType(CloudType type) {
 		this.type = type;
 	}
+
+	@Field(index = Index.TOKENIZED )
+	public boolean isStorm() {
+		return storm;
+	}
+
+	public void setStorm(boolean storm) {
+		this.storm = storm;
+	}
 }




More information about the hibernate-commits mailing list