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;
+ }
}
Show replies by thread