@Factory public SearchMapping getSearchMapping() { SearchMapping mapping = new SearchMapping(); mapping.analyzerDef("autocompleteEdgeAnalyzer", PatternTokenizerFactory.class) .tokenizerParam("pattern", "(.*)") .tokenizerParam("group", "1") .filter(LowerCaseFilterFactory.class) .filter(StopFilterFactory.class) .filter(EdgeNGramFilterFactory.class) .param("minGramSize", "3") .param("maxGramSize", "50") .analyzerDef("autocompletePhoneticAnalyzer", StandardTokenizerFactory.class) .filter(StandardFilterFactory.class) .filter(StopFilterFactory.class) .filter(PhoneticFilterFactory.class) .param("encoder", "DoubleMetaphone") .filter(SnowballPorterFilterFactory.class) .param("language", "English") .analyzerDef("autocompleteNGramAnalyzer", StandardTokenizerFactory.class) .filter(WordDelimiterFilterFactory.class) .filter(LowerCaseFilterFactory.class) .filter(NGramFilterFactory.class) .param("minGramSize", "3") .param("maxGramSize", "20") .analyzerDef("standardAnalyzer", StandardTokenizerFactory.class) .filter(LowerCaseFilterFactory.class) .analyzerDef("exactAnalyzer", KeywordTokenizerFactory.class) .analyzerDef("conceptParentPidsAnalyzer", WhitespaceTokenizerFactory.class) .analyzerDef("termConceptPropertyAnalyzer", WhitespaceTokenizerFactory.class);
/** Built-in default programatic mapping for hibernate-search **/ private static SearchMapping getBuiltinMapping() { SearchMapping mapping = new SearchMapping(); // Map the getExternalId() method as a documentId for all domain classes // Note that hibernate-search currently requires this method to really exist in the // AbstractDomainObject class mapping.entity(AbstractDomainObject.class).property("externalId", ElementType.METHOD).documentId().name("id"); return mapping; }
/** * {@code @TokenFilterDef(factory=factory) } * @param factory the {@link TokenFilterFactory} * @return a new {@link TokenFilterDefMapping} */ public TokenFilterDefMapping filter(Class<? extends TokenFilterFactory> factory) { return filter( "", factory ); }
protected MutableSearchFactory getMutableSearchFactoryWithSingleEntity(SearchConfigurationForTest cfg) { SearchMapping mapping = new SearchMapping(); mapping .entity( Document.class ).indexed().indexName( "index1" ) .property( "id", ElementType.FIELD ).documentId() .property( "title", ElementType.FIELD ).field() ; cfg.setProgrammaticMapping( mapping ); cfg.addClass( Document.class ); return (MutableSearchFactory) integratorResource.create( cfg ); }
@Override public void configure(Map<String,Object> cfg) { SearchMapping mapping = new SearchMapping(); mapping .entity( PlainPerson.class ) .indexed() .property( "id", ElementType.FIELD ) .documentId() .bridge( PersonPKMetadataProviderBridge.class ) .property( "", ElementType.FIELD ) .field(); cfg.put( Environment.MODEL_MAPPING, mapping ); }
static SearchMapping buildMappingDefinition() { SearchMapping mapping = new SearchMapping(); mapping .entity( TelephoneRecord.class ) .indexed() .indexName( "phoneNumbersIndex" ) .property( "id", ElementType.FIELD ).documentId() .property( "phone", ElementType.FIELD ).field().analyze( Analyze.NO ).store( Store.YES ) .entity( AddressBook.class ) .indexed() .indexName( "addressBookIndex" ) .property( "id", ElementType.FIELD ).documentId() .property( "name", ElementType.FIELD ).field().store( Store.YES ) ; return mapping; }
private SearchMapping createSearchMapping() { SearchMapping mapping = new SearchMapping(); mapping.entity( ProgrammaticConfiguredValue.class ) .indexed() .property( "id", ElementType.FIELD ).documentId().name( "id" ) .property( "value", ElementType.FIELD ).field().store( Store.YES ).indexNullAs( "@null@" ); return mapping; }
@Factory public SearchMapping build() { SearchMapping mapping = new SearchMapping(); mapping .analyzerDef( "ngram", StandardTokenizerFactory.class ) .filter( LowerCaseFilterFactory.class ) .filter( StopFilterFactory.class ) .param( "words", "non-existent-resourcename.file" ) // We must mark at least one entity as indexed, otherwise analyzer definitions are not initialized (no need to) .entity( SomeHibernateEntity.class ).indexed(); return mapping; }
@Override public void defineMappings(Cache cache, SearchMapping searchMapping) { searchMapping .analyzerDef("standard-with-stop", StandardTokenizerFactory.class) .filter(StandardFilterFactory.class) .filter(LowerCaseFilterFactory.class) .filter(StopFilterFactory.class); } }
public SortableFieldMapping sortableField() { return new SortableFieldMapping( property.getName(), property, entity, mapping ); }
/** * {@code @TokenFilterDef(name=name, factory=factory) } * @param name the token filter name * @param factory the {@link TokenFilterFactory} * @return a new {@link TokenFilterDefMapping} */ public TokenFilterDefMapping filter(String name, Class<? extends TokenFilterFactory> factory) { return new TokenFilterDefMapping( factory, analyzerDef, mapping ); }
/** * {@code @CharFilterDef(name=name, factory=factory) } * @param name the char filter name * @param factory the {@link CharFilterFactory} * @return a new {@link CharFilterDefMapping} */ public CharFilterDefMapping charFilter(String name, Class<? extends CharFilterFactory> factory) { return new CharFilterDefMapping( name, factory, analyzerDef, mapping ); }
/** * {@code @CharFilterDef(factory=factory) } * @param factory the {@link CharFilterFactory} * @return a new {@link CharFilterDefMapping} */ public CharFilterDefMapping charFilter(Class<? extends CharFilterFactory> factory) { return charFilter( "", factory ); }
@Before public void setUp() { manualConfiguration = new SearchConfigurationForTest(); SearchMapping searchMapping = new SearchMapping(); searchMapping.entity( Document.class ).indexed() .property( "id", ElementType.FIELD ).documentId() .property( "title", ElementType.FIELD ).field(); manualConfiguration.setProgrammaticMapping( searchMapping ); manualConfiguration.addClass( Document.class ); }
@Override public void configure(Map<String,Object> cfg) { SearchMapping mapping = new SearchMapping(); mapping .entity( PlainPerson.class ) .indexed() .property( "id", ElementType.FIELD ) .documentId() .bridge( PersonPKBridge.class ) .property( "", ElementType.FIELD ) .field(); cfg.put( Environment.MODEL_MAPPING, mapping ); }
/** * {@code @TokenFilterDef(name=name, factory=factory) } * @param name the token filter name * @param factory the {@link TokenFilterFactory} * @return a new {@link TokenFilterDefMapping} */ public TokenFilterDefMapping filter(String name, Class<? extends TokenFilterFactory> factory) { return new TokenFilterDefMapping( factory, analyzerDef, mapping ); }
/** * {@code @CharFilterDef(name=name, factory=factory) } * @param name the char filter name * @param factory the {@link CharFilterFactory} * @return a new {@link CharFilterDefMapping} */ public CharFilterDefMapping charFilter(String name, Class<? extends CharFilterFactory> factory) { return new CharFilterDefMapping( name, factory, analyzerDef, mapping ); }
/** * {@code @TokenFilterDef(name=name, factory=factory) } * @param name the token filter name * @param factory the {@link TokenFilterFactory} * @return a new {@link TokenFilterDefMapping} */ public TokenFilterDefMapping filter(String name, Class<? extends TokenFilterFactory> factory) { return new TokenFilterDefMapping( factory, analyzerDef, mapping ); }
/** * {@code @TokenFilterDef(name=name, factory=factory) } * @param name the token filter name * @param factory the {@link TokenFilterFactory} * @return a new {@link TokenFilterDefMapping} */ public TokenFilterDefMapping filter(String name, Class<? extends TokenFilterFactory> factory) { return new TokenFilterDefMapping( factory, definition, mapping ); }