package com.manning.hsia.dvdstore.model.bridge;
import org.hibernate.search.bridge.StringBridge;
import com.manning.hsia.dvdstore.model.Category;
import com.manning.hsia.dvdstore.model.Item;
/**
* Add "yes" to the dedicated field if item contains the children category
*
* Example 8.7
*/
public class ChildrenFlagBridge implements StringBridge {
public String objectToString(Object object) {
assert object instanceof Item;
Item item = (Item) object;
boolean hasChildrenCategory = false;
for ( Category category : item.getCategories() ) { //retrieve unindexed data
if ("Children".equalsIgnoreCase( category.getName() ) ) {
hasChildrenCategory = true;
break;
}
}
return hasChildrenCategory ? "yes" : "no"; //index useful flag
}
}