Package org.hibernate.search.engine.spi

Examples of org.hibernate.search.engine.spi.EntityIndexBinding


  @Override
  protected FieldBridge getFieldBridge(String entityType, List<String> propertyPath) {
    Class<?> type = getType( entityType );
    String[] propertyPathAsArray = propertyPath.toArray( new String[propertyPath.size()] );

    EntityIndexBinding entityIndexBinding = getIndexBinding( searchFactory, type );

    if ( isIdentifierProperty( entityIndexBinding, propertyPathAsArray ) ) {
      return entityIndexBinding.getDocumentBuilder().getIdBridge();
    }

    PropertyMetadata metadata = getLeafTypeMetadata( type, propertyPathAsArray ).getPropertyMetadataForProperty( propertyPathAsArray[propertyPathAsArray.length - 1] );

    // TODO Consider properties with several fields
View Full Code Here


  public boolean exists(Class<?> type, List<String> propertyPath) {
    return exists( type, propertyPath.toArray( new String[propertyPath.size()] ) );
  }

  public boolean exists(Class<?> type, String... propertyPath) {
    EntityIndexBinding entityIndexBinding = getIndexBinding( type );

    if ( isIdentifierProperty( entityIndexBinding, propertyPath ) ) {
      return true;
    }

    TypeMetadata metadata = entityIndexBinding.getDocumentBuilder().getMetadata();

    for ( int i = 0; i < propertyPath.length - 1; i++ ) {
      Set<EmbeddedTypeMetadata> embeddedTypeMetadata = metadata.getEmbeddedTypeMetadata();
      metadata = getEmbeddedTypeMetadata( embeddedTypeMetadata, propertyPath[i] );
      if ( metadata == null ) {
View Full Code Here

    return metadata.getPropertyMetadataForProperty( propertyPath[propertyPath.length - 1] ) != null
        || getEmbeddedTypeMetadata( metadata.getEmbeddedTypeMetadata(), propertyPath[propertyPath.length - 1] ) != null;
  }

  private TypeMetadata getLeafTypeMetadata(Class<?> type, String... propertyPath) {
    EntityIndexBinding entityIndexBinding = getIndexBinding( searchFactory, type );
    TypeMetadata leafTypeMetadata = entityIndexBinding.getDocumentBuilder().getMetadata();

    for ( int i = 0; i < propertyPath.length; i++ ) {
      Set<EmbeddedTypeMetadata> embeddedTypeMetadata = leafTypeMetadata.getEmbeddedTypeMetadata();
      TypeMetadata metadata = getEmbeddedTypeMetadata( embeddedTypeMetadata, propertyPath[i] );
      if ( metadata != null ) {
View Full Code Here

  public boolean isAnalyzed(Class<?> type, List<String> propertyPath) {
    return isAnalyzed( type, propertyPath.toArray( new String[propertyPath.size()] ) );
  }

  public boolean isAnalyzed(Class<?> type, String... propertyPath) {
    EntityIndexBinding entityIndexBinding = getIndexBinding( type );

    if ( isIdentifierProperty( entityIndexBinding, propertyPath ) ) {
      return false;
    }
View Full Code Here

  public boolean isEmbedded(Class<?> type, String... propertyPath) {
    if ( propertyPath.length == 0 ) {
      return false;
    }

    EntityIndexBinding entityIndexBinding = getIndexBinding( type );
    TypeMetadata metadata = entityIndexBinding.getDocumentBuilder().getMetadata();

    for ( int i = 0; i < propertyPath.length; i++ ) {
      Set<EmbeddedTypeMetadata> embeddedTypeMetadata = metadata.getEmbeddedTypeMetadata();
      metadata = getEmbeddedTypeMetadata( embeddedTypeMetadata, propertyPath[i] );
      if ( metadata == null ) {
View Full Code Here

  private EntityIndexBinding getIndexBinding(Class<?> type) {
    return getIndexBinding( searchFactory, type );
  }

  private EntityIndexBinding getIndexBinding(SearchFactoryIntegrator searchFactory, Class<?> type) {
    EntityIndexBinding entityIndexBinding = searchFactory.getIndexBinding( type );

    if ( entityIndexBinding == null ) {
      throw log.getNoIndexedEntityException( type.getCanonicalName() );
    }
View Full Code Here

    session.close();
  }

  @Test
  public void testInitialiseDynamicShardsOnStartup() throws Exception {
    EntityIndexBinding entityIndexBinding = getSearchFactoryImpl().getIndexBindings().get( Animal.class );
    assertThat( entityIndexBinding.getIndexManagers() ).hasSize( 0 );

    insertAnimals( elephant, spider, bear );

    assertThat( entityIndexBinding.getIndexManagers() ).hasSize( 2 );

    SearchFactoryImplementor newSearchFactory = getIndependentNewSearchFactory();
    entityIndexBinding = newSearchFactory.getIndexBindings().get( Animal.class );

    assertThat( entityIndexBinding.getIndexManagers() ).hasSize( 2 );
  }
View Full Code Here

   * @param node the FullTextSessionBuilder representing the current node
   * @return the number of nodes as seen by the current node
   */
  public static int clusterSize(FullTextSessionBuilder node, Class<?> entityType) {
    SearchFactoryIntegrator searchFactory = (SearchFactoryIntegrator) node.getSearchFactory();
    EntityIndexBinding indexBinding = searchFactory.getIndexBinding( entityType );
    DirectoryBasedIndexManager indexManager = (DirectoryBasedIndexManager) indexBinding.getIndexManagers()[0];
    InfinispanDirectoryProvider directoryProvider = (InfinispanDirectoryProvider) indexManager.getDirectoryProvider();
    EmbeddedCacheManager cacheManager = directoryProvider.getCacheManager();
    List<Address> members = cacheManager.getMembers();
    return members.size();
  }
View Full Code Here

   *            the FullTextSessionBuilder representing the current node
   * @return
   */
  protected int clusterSize(FullTextSessionBuilder node, Class<?> entityType) {
    SearchFactoryIntegrator searchFactory = (SearchFactoryIntegrator) node.getSearchFactory();
    EntityIndexBinding indexBinding = searchFactory.getIndexBinding( Toaster.class );
    DirectoryBasedIndexManager indexManager = (DirectoryBasedIndexManager) indexBinding.getIndexManagers()[0];
    InfinispanDirectoryProvider directoryProvider = (InfinispanDirectoryProvider) indexManager.getDirectoryProvider();
    EmbeddedCacheManager cacheManager = directoryProvider.getCacheManager();
    List<Address> members = cacheManager.getMembers();
    return members.size();
  }
View Full Code Here

    assertEquals( "shard:" + shard + " setting:" + setting.getKey(), expectedValue,
        (int) getParameter( shard, setting, testEntity ) );
  }

  private Integer getParameter(int shard, IndexWriterSetting setting, Class testEntity) {
    EntityIndexBinding mappingForEntity = getSearchFactoryImpl().getIndexBinding( testEntity );
    DirectoryBasedIndexManager indexManager = (DirectoryBasedIndexManager) mappingForEntity.getIndexManagers()[shard];
    LuceneIndexingParameters luceneIndexingParameters = indexManager.getIndexingParameters();
    return luceneIndexingParameters.getIndexParameters().getCurrentValueFor( setting );
  }
View Full Code Here

TOP

Related Classes of org.hibernate.search.engine.spi.EntityIndexBinding

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.