public IndexedTypeIdentifier getTypeIdentifier() { return binding.getDocumentBuilder().getTypeIdentifier(); }
/** * If we have a work instance we have to check whether the instance to be indexed is contained in any other indexed entities. * * @see #appendContainedInWorkForInstance(Object, WorkPlan, ContainedInRecursionContext, String) * @param instance the instance to be indexed * @param workPlan the current work plan * @param currentRecursionContext the current {@link org.hibernate.search.engine.spi.ContainedInRecursionContext} object used to check the graph traversal */ public void appendContainedInWorkForInstance(Object instance, WorkPlan workPlan, ContainedInRecursionContext currentRecursionContext) { appendContainedInWorkForInstance( instance, workPlan, currentRecursionContext, null ); }
@Override public long addAndGet(final long delta) { //parameter delta is ignored as we don't use the clock ticking strategy from Lucene's threads //as I don't want to deal with statically referenced threads. return timingSource.getMonotonicTimeEstimate(); }
private DocumentFieldMetadata findFieldMetadata(Iterable<EntityIndexBinding> targetedBindings, String fieldPath) { if ( fieldPath == null ) { return null; } for ( EntityIndexBinding indexBinding : targetedBindings ) { DocumentFieldMetadata metadata = indexBinding.getDocumentBuilder().getTypeMetadata().getDocumentFieldMetadataFor( fieldPath ); if ( metadata != null ) { return metadata; } } return null; }
private AddLuceneWork createAddLuceneWork(String tenantIdentifier, Object entity, InstanceInitializer sessionInitializer, ConversionContext conversionContext, Serializable id, EntityIndexBinding entityIndexBinding) { DocumentBuilderIndexedEntity docBuilder = entityIndexBinding.getDocumentBuilder(); String idInString = idInString( conversionContext, id, docBuilder.getTypeIdentifier(), docBuilder ); // depending on the complexity of the object graph going to be indexed it's possible // that we hit the database several times during work construction. return docBuilder.createAddWork( tenantIdentifier, docBuilder.getTypeIdentifier(), entity, id, idInString, sessionInitializer, conversionContext ); }
@Override public ScopedAnalyzerReference getAnalyzerReference(IndexedTypeIdentifier type) { EntityIndexBinding entityIndexBinding = getSafeIndexBindingForEntity( type ); DocumentBuilderIndexedEntity builder = entityIndexBinding.getDocumentBuilder(); return builder.getAnalyzerReference(); }
protected static boolean isIdNumeric(DocumentBuilderIndexedEntity documentBuilder) { TwoWayFieldBridge idBridge = documentBuilder.getIdBridge(); return idBridge instanceof NumericFieldBridge; }
@Override public void postInitialize(IndexedTypeSet indexedClasses) { documentBuilder.postInitialize( indexedClasses ); }
/** * Create a root mapping builder. * @param binding The Hibernate Search binding to be translated in an Elasticsearch mapping * @param elasticsearchMapping The Elasticsearch mapping on which properties should be added */ public ElasticsearchMappingBuilder(EntityIndexBinding binding, TypeMapping elasticsearchMapping) { this.binding = binding; this.parent = null; this.typeMetadata = binding.getDocumentBuilder().getTypeMetadata(); this.pathComponentExtractor = new PathComponentExtractor(); this.elasticsearchMapping = elasticsearchMapping; }
public IndexedTypeIdentifier getTypeIdentifier() { return binding.getDocumentBuilder().getTypeIdentifier(); }
@Override public ScopedAnalyzerReference getAnalyzerReference(IndexedTypeIdentifier type) { EntityIndexBinding entityIndexBinding = getSafeIndexBindingForEntity( type ); DocumentBuilderIndexedEntity builder = entityIndexBinding.getDocumentBuilder(); return builder.getAnalyzerReference(); }
protected static boolean isIdNumeric(DocumentBuilderIndexedEntity documentBuilder) { TwoWayFieldBridge idBridge = documentBuilder.getIdBridge(); return idBridge instanceof NumericFieldBridge; }
@Override public long addAndGet(final long delta) { //parameter delta is ignored as we don't use the clock ticking strategy from Lucene's threads //as I don't want to deal with statically referenced threads. return timingSource.getMonotonicTimeEstimate(); }
/** * If we have a work instance we have to check whether the instance to be indexed is contained in any other indexed entities. * * @see #appendContainedInWorkForInstance(Object, WorkPlan, ContainedInRecursionContext, String) * @param instance the instance to be indexed * @param workPlan the current work plan * @param currentRecursionContext the current {@link org.hibernate.search.engine.spi.ContainedInRecursionContext} object used to check the graph traversal */ public void appendContainedInWorkForInstance(Object instance, WorkPlan workPlan, ContainedInRecursionContext currentRecursionContext) { appendContainedInWorkForInstance( instance, workPlan, currentRecursionContext, null ); }
@Override public void postInitialize(IndexedTypeSet indexedClasses) { documentBuilder.postInitialize( indexedClasses ); }
private BridgeDefinedField findBridgeDefinedField(Iterable<EntityIndexBinding> targetedBindings, String fieldPath) { if ( fieldPath == null ) { return null; } for ( EntityIndexBinding indexBinding : targetedBindings ) { TypeMetadata typeMetadata = indexBinding.getDocumentBuilder().getTypeMetadata(); BridgeDefinedField bridgeDefinedField = typeMetadata.getBridgeDefinedFieldMetadataFor( fieldPath ); if ( bridgeDefinedField != null ) { return bridgeDefinedField; } } return null; }
@Override public long get() { return timingSource.getMonotonicTimeEstimate(); }
/** * Create a root mapping builder. * @param binding The Hibernate Search binding to be translated in an Elasticsearch mapping * @param elasticsearchMapping The Elasticsearch mapping on which properties should be added */ public ElasticsearchMappingBuilder(EntityIndexBinding binding, TypeMapping elasticsearchMapping) { this.binding = binding; this.parent = null; this.typeMetadata = binding.getDocumentBuilder().getTypeMetadata(); this.pathComponentExtractor = new PathComponentExtractor(); this.elasticsearchMapping = elasticsearchMapping; }
@Override public long get() { return timingSource.getMonotonicTimeEstimate(); }
private DocumentFieldMetadata findFieldMetadata(Iterable<EntityIndexBinding> targetedBindings, String fieldPath) { if ( fieldPath == null ) { return null; } for ( EntityIndexBinding indexBinding : targetedBindings ) { DocumentFieldMetadata metadata = indexBinding.getDocumentBuilder().getTypeMetadata().getDocumentFieldMetadataFor( fieldPath ); if ( metadata != null ) { return metadata; } } return null; }