Package org.hibernate.search.analyzer

Examples of org.hibernate.search.analyzer.Discriminator


      TypeMetadata typeMetadata,
      Map<String, String> fieldToAnalyzerMap,
      Set<String> processedFieldNames,
      Object unproxiedInstance) {

    Discriminator discriminator = typeMetadata.getDiscriminator();
    if ( discriminator == null ) {
      return;
    }

    Object value = null;
    if ( typeMetadata.getDiscriminatorGetter() != null ) {
      value = ReflectionHelper.getMemberValue( unproxiedInstance, typeMetadata.getDiscriminatorGetter() );
    }

    // now we give the discriminator the opportunity to specify a analyzer per field level
    for ( IndexableField field : doc.getFields() ) {
      if ( !processedFieldNames.contains( field.name() ) ) {
        String analyzerName = discriminator.getAnalyzerDefinitionName( value, unproxiedInstance, field.name() );
        if ( analyzerName != null ) {
          fieldToAnalyzerMap.put( field.name(), analyzerName );
        }
        processedFieldNames.add( field.name() );
      }
View Full Code Here


      TypeMetadata typeMetadata,
      Map<String, String> fieldToAnalyzerMap,
      Set<String> processedFieldNames,
      Object unproxiedInstance) {

    Discriminator discriminator = typeMetadata.getDiscriminator();
    if ( discriminator == null ) {
      return;
    }

    Object value = null;
    if ( typeMetadata.getDiscriminatorGetter() != null ) {
      value = ReflectionHelper.getMemberValue( unproxiedInstance, typeMetadata.getDiscriminatorGetter() );
    }

    // now we give the discriminator the opportunity to specify a analyzer per field level
    for ( IndexableField field : doc.getFields() ) {
      if ( !processedFieldNames.contains( field.name() ) ) {
        String analyzerName = discriminator.getAnalyzerDefinitionName( value, unproxiedInstance, field.name() );
        if ( analyzerName != null ) {
          fieldToAnalyzerMap.put( field.name(), analyzerName );
        }
        processedFieldNames.add( field.name() );
      }
View Full Code Here

      //if the discriminator is calculated on a @Transient field, we can't trust field level dirtyness
      typeMetadataBuilder.disableStateInspectionOptimization();
    }

    Class<? extends Discriminator> discriminatorClass = discriminatorAnnotation.impl();
    Discriminator discriminator = ClassLoaderHelper.instanceFromClass( Discriminator.class, discriminatorClass, "analyzer discriminator implementation" );

    if ( annotatedElement instanceof XMember ) {
      typeMetadataBuilder.analyzerDiscriminator( discriminator, (XMember) annotatedElement );
    }
    else {
View Full Code Here

TOP

Related Classes of org.hibernate.search.analyzer.Discriminator

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.