[hibernate-commits] [hibernate/hibernate-search] 98acd9: HSEARCH-2726 Factorize the code collecting mapping...

GitHub noreply at github.com
Mon Jun 5 08:33:48 EDT 2017


  Branch: refs/heads/master
  Home:   https://github.com/hibernate/hibernate-search
  Commit: 98acd9972d67f6f17364d0839bc3fb829ea3bdc2
      https://github.com/hibernate/hibernate-search/commit/98acd9972d67f6f17364d0839bc3fb829ea3bdc2
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2017-06-05 (Mon, 05 Jun 2017)

  Changed paths:
    M engine/src/main/java/org/hibernate/search/engine/impl/ConfigContext.java
    A engine/src/main/java/org/hibernate/search/engine/impl/MappingDefinitionRegistry.java
    M engine/src/main/java/org/hibernate/search/engine/metadata/impl/AnnotationMetadataProvider.java
    M engine/src/main/java/org/hibernate/search/spi/SearchIntegratorBuilder.java
    M engine/src/main/java/org/hibernate/search/util/logging/impl/Log.java

  Log Message:
  -----------
  HSEARCH-2726 Factorize the code collecting mapping definition

This doesn't change anything functionally, but will allow us
to introduce other types of definitions (for instance, normalizer
definitions) more easily.


  Commit: e7884db6501ef9bf60c094e246be55249048aa6b
      https://github.com/hibernate/hibernate-search/commit/e7884db6501ef9bf60c094e246be55249048aa6b
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2017-06-05 (Mon, 05 Jun 2017)

  Changed paths:
    M elasticsearch/src/test/java/org/hibernate/search/elasticsearch/test/ElasticsearchAnalysisDefinitionProviderIT.java
    M engine/src/main/java/org/hibernate/search/engine/impl/AnnotationProcessingHelper.java
    M engine/src/main/java/org/hibernate/search/engine/impl/ConfigContext.java
    M engine/src/main/java/org/hibernate/search/engine/impl/ImmutableSearchFactory.java
    A engine/src/main/java/org/hibernate/search/engine/impl/ImmutableSearchIntegration.java
    M engine/src/main/java/org/hibernate/search/engine/impl/MutableAnalyzerRegistry.java
    M engine/src/main/java/org/hibernate/search/engine/impl/MutableSearchFactory.java
    M engine/src/main/java/org/hibernate/search/engine/impl/MutableSearchFactoryState.java
    A engine/src/main/java/org/hibernate/search/engine/impl/SearchIntegrationConfigContext.java
    M engine/src/main/java/org/hibernate/search/engine/integration/impl/ExtendedSearchIntegrator.java
    A engine/src/main/java/org/hibernate/search/engine/integration/impl/SearchIntegration.java
    M engine/src/main/java/org/hibernate/search/engine/metadata/impl/AnnotationMetadataProvider.java
    M engine/src/main/java/org/hibernate/search/engine/metadata/impl/TypeMetadata.java
    M engine/src/main/java/org/hibernate/search/query/dsl/impl/ConnectedQueryContextBuilder.java
    M engine/src/main/java/org/hibernate/search/spi/SearchIntegratorBuilder.java
    M engine/src/main/java/org/hibernate/search/spi/impl/SearchFactoryState.java
    M engine/src/test/java/org/hibernate/search/test/analyzer/analyzerdef/AnalyzerDefAnnotationTest.java
    M engine/src/test/java/org/hibernate/search/test/analyzer/analyzerdefinitionprovider/LuceneAnalyzerDefinitionProviderTest.java
    M engine/src/test/java/org/hibernate/search/test/analyzer/analyzerdefs/AnalyzerDefsAnnotationTest.java
    M engine/src/test/java/org/hibernate/search/test/configuration/mutablefactory/DefinitionsOnHotRebootTest.java

  Log Message:
  -----------
  HSEARCH-2726 Group config context information related to a same index manager type

This doesn't change anything functionally, but will allow us
to introduce additional information (for instance, the normalizer
registry) more easily.


  Commit: a5b264439271604bc514ce4a59a68bbdeb677e0f
      https://github.com/hibernate/hibernate-search/commit/a5b264439271604bc514ce4a59a68bbdeb677e0f
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2017-06-05 (Mon, 05 Jun 2017)

  Changed paths:
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/ElasticsearchAnalyzerStrategy.java
    M engine/src/main/java/org/hibernate/search/analyzer/impl/LuceneEmbeddedAnalyzerStrategy.java
    M engine/src/main/java/org/hibernate/search/analyzer/spi/AnalyzerStrategy.java
    M engine/src/main/java/org/hibernate/search/engine/impl/MutableAnalyzerRegistry.java
    M engine/src/main/java/org/hibernate/search/engine/impl/SearchIntegrationConfigContext.java

  Log Message:
  -----------
  HSEARCH-2726 Return references to "provided" analyzers when registries are created

... instead of adding them when we initialize the references.

This doesn't change much for now, but it will allow future commits
to introduce "provided" normalizers too, while keeping initialization
in the same AnalyzerStrategy method and without changing the return
type of this method to something strange such as
Pair<Map<..., ...>, Map<..., ...>>.


  Commit: 9b65ff73279a8129b3c947a6a6688c4b8d613523
      https://github.com/hibernate/hibernate-search/commit/9b65ff73279a8129b3c947a6a6688c4b8d613523
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2017-06-05 (Mon, 05 Jun 2017)

  Changed paths:
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/ElasticsearchAnalyzerStrategy.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/LuceneClassElasticsearchAnalyzerReference.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/NamedElasticsearchAnalyzerReference.java
    M engine/src/main/java/org/hibernate/search/analyzer/impl/LuceneAnalyzerBuilder.java
    M engine/src/main/java/org/hibernate/search/analyzer/impl/LuceneEmbeddedAnalyzerStrategy.java
    M engine/src/main/java/org/hibernate/search/analyzer/impl/NamedLuceneAnalyzerReference.java
    M engine/src/main/java/org/hibernate/search/analyzer/impl/SimpleLuceneAnalyzerReference.java

  Log Message:
  -----------
  HSEARCH-2726 Make analyzer references responsible for their own initialization

This should allow the next commits to introduce a second type of analyzer
references (normalizer references), whose initialization will be slightly
different.


  Commit: 90c278cbea61d5d5befdf61649cf57bfa61d208c
      https://github.com/hibernate/hibernate-search/commit/90c278cbea61d5d5befdf61649cf57bfa61d208c
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2017-06-05 (Mon, 05 Jun 2017)

  Changed paths:
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/SimpleElasticsearchAnalysisDefinitionRegistry.java

  Log Message:
  -----------
  HSEARCH-2726 Clarify the javadoc about SimpleElasticsearchAnalysisDefinitionRegistry


  Commit: 45debe412916f6c6b4b4fbc84270dca378f0153d
      https://github.com/hibernate/hibernate-search/commit/45debe412916f6c6b4b4fbc84270dca378f0153d
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2017-06-05 (Mon, 05 Jun 2017)

  Changed paths:
    A engine/src/main/java/org/hibernate/search/analyzer/definition/impl/ChainingLuceneAnalysisDefinitionRegistry.java
    A engine/src/main/java/org/hibernate/search/analyzer/definition/impl/LuceneAnalysisDefinitionRegistry.java
    M engine/src/main/java/org/hibernate/search/analyzer/definition/impl/LuceneAnalyzerDefinitionRegistryBuilderImpl.java
    A engine/src/main/java/org/hibernate/search/analyzer/definition/impl/SimpleLuceneAnalysisDefinitionRegistry.java
    M engine/src/main/java/org/hibernate/search/analyzer/impl/LuceneAnalyzerBuilder.java
    M engine/src/main/java/org/hibernate/search/analyzer/impl/LuceneEmbeddedAnalyzerStrategy.java

  Log Message:
  -----------
  HSEARCH-2726 Store Lucene analyzer definitions in a dedicated class

This doesn't change much for now, but it will allow future commits
to add more information to the "analysis definition registry",
in particular normalizer definitions.


  Commit: c3069de87c4a6ad3dfb150958d7e40993090730b
      https://github.com/hibernate/hibernate-search/commit/c3069de87c4a6ad3dfb150958d7e40993090730b
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2017-06-05 (Mon, 05 Jun 2017)

  Changed paths:
    A elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/definition/impl/ChainingElasticsearchAnalysisDefinitionRegistry.java
    A elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/definition/impl/ElasticsearchAnalysisDefinitionRegistry.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/definition/impl/ElasticsearchAnalysisDefinitionRegistryBuilderImpl.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/definition/impl/ElasticsearchAnalysisDefinitionRegistryPopulator.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/definition/impl/ElasticsearchAnalyzerDefinitionContextImpl.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/definition/impl/ElasticsearchCharFilterDefinitionContextImpl.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/definition/impl/ElasticsearchTokenFilterDefinitionContextImpl.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/definition/impl/ElasticsearchTokenizerDefinitionContextImpl.java
    A elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/definition/impl/SimpleElasticsearchAnalysisDefinitionRegistry.java
    R elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/ChainingElasticsearchAnalysisDefinitionRegistry.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/CustomElasticsearchAnalyzerImpl.java
    R elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/ElasticsearchAnalysisDefinitionRegistry.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/ElasticsearchAnalyzer.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/ElasticsearchAnalyzerStrategy.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/NamedElasticsearchAnalyzerReference.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/ScopedElasticsearchAnalyzer.java
    R elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/SimpleElasticsearchAnalysisDefinitionRegistry.java
    A elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/TranslatingElasticsearchAnalysisDefinitionRegistryPopulator.java
    R elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/TranslatingElasticsearchAnalyzerDefinitionRegistryPopulator.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/UndefinedElasticsearchAnalyzerImpl.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/settings/impl/ElasticsearchIndexSettingsBuilder.java

  Log Message:
  -----------
  HSEARCH-2726 Move Elasticsearch analysis definition registries to org.hibernate.search.elasticsearch.analyzer.definition.impl

Simply because those classes are about analysis/analyzer definitions,
not about analyzers.


  Commit: ee241912df59b3f98a1ab27f9f500e402ec2b330
      https://github.com/hibernate/hibernate-search/commit/ee241912df59b3f98a1ab27f9f500e402ec2b330
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2017-06-05 (Mon, 05 Jun 2017)

  Changed paths:
    M engine/src/main/java/org/hibernate/search/analyzer/impl/NamedLuceneAnalyzerReference.java

  Log Message:
  -----------
  HSEARCH-2726 Remove dead code in NamedLuceneAnalyzerReference


  Commit: 2350439c660a6371eda83f45f66b3df5adf87e4f
      https://github.com/hibernate/hibernate-search/commit/2350439c660a6371eda83f45f66b3df5adf87e4f
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2017-06-05 (Mon, 05 Jun 2017)

  Changed paths:
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/TranslatingElasticsearchAnalysisDefinitionRegistryPopulator.java

  Log Message:
  -----------
  HSEARCH-2726 Update outdated javadoc in TranslatingElasticsearchAnalyzerDefinitionRegistryPopulator


  Commit: 2d5cf2fe8a1a556e617c9ed46b0084d67317cd1f
      https://github.com/hibernate/hibernate-search/commit/2d5cf2fe8a1a556e617c9ed46b0084d67317cd1f
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2017-06-05 (Mon, 05 Jun 2017)

  Changed paths:
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/ScopedElasticsearchAnalyzer.java
    M engine/src/main/java/org/hibernate/search/analyzer/impl/ScopedLuceneAnalyzer.java
    R engine/src/main/java/org/hibernate/search/analyzer/spi/ScopedAnalyzer.java
    M engine/src/main/java/org/hibernate/search/analyzer/spi/ScopedAnalyzerReference.java
    M engine/src/main/java/org/hibernate/search/util/logging/impl/Log.java

  Log Message:
  -----------
  HSEARCH-2726 Remove the ScopedAnalyzer interface

It is not used anywhere.


  Commit: 4d67078da0168380cf0667a729294ba7397f947b
      https://github.com/hibernate/hibernate-search/commit/4d67078da0168380cf0667a729294ba7397f947b
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2017-06-05 (Mon, 05 Jun 2017)

  Changed paths:
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/ElasticsearchAnalyzerStrategy.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/ScopedElasticsearchAnalyzer.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/ScopedElasticsearchAnalyzerReference.java
    M engine/src/main/java/org/hibernate/search/analyzer/impl/LuceneEmbeddedAnalyzerStrategy.java
    M engine/src/main/java/org/hibernate/search/analyzer/impl/ScopedLuceneAnalyzer.java
    M engine/src/main/java/org/hibernate/search/analyzer/impl/ScopedLuceneAnalyzerReference.java

  Log Message:
  -----------
  HSEARCH-2726 Move scoping up from analyzers to analyzer *references*

1. It requires less code, without being more complex.
2. Since scoping involves referencing other analyzers, it seems about
right that the two concepts are mixed together somehow.
3. And most of all, we'll need this scoping mechanism in order to
inspect analyzer references before they have been initialized. Indeed,
we'll need to determine whether a (potentially scoped) reference targets
a normalizer or an analyzer for two reasons:
  * in ElasticsearchMissingValueStrategy, to determine the ES datatype
  (text or keyword)
  * in AnnotationMetadataProvider, to detect sortable fields that were
  assigned an analyzer instead of a normalizer
... and in both case we are working during metadata generation
(so before analyzer references are initialized).


  Commit: ddb5e3a7298be3ec53d55d8838180b1b17572967
      https://github.com/hibernate/hibernate-search/commit/ddb5e3a7298be3ec53d55d8838180b1b17572967
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2017-06-05 (Mon, 05 Jun 2017)

  Changed paths:
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/definition/impl/ElasticsearchAnalysisDefinitionRegistryPopulator.java
    R elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/CustomElasticsearchAnalyzerImpl.java
    R elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/ElasticsearchAnalyzer.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/ElasticsearchAnalyzerReference.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/ElasticsearchAnalyzerStrategy.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/LuceneClassElasticsearchAnalyzerReference.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/NamedElasticsearchAnalyzerReference.java
    R elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/ScopedElasticsearchAnalyzer.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/ScopedElasticsearchAnalyzerReference.java
    A elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/SimpleElasticsearchAnalysisDefinitionRegistryPopulator.java
    R elasticsearch/src/main/java/org/hibernate/search/elasticsearch/analyzer/impl/UndefinedElasticsearchAnalyzerImpl.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/impl/ToElasticsearch.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/schema/impl/Elasticsearch2SchemaTranslator.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/schema/impl/Elasticsearch5SchemaTranslator.java
    M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/settings/impl/ElasticsearchIndexSettingsBuilder.java
    M engine/src/main/java/org/hibernate/search/analyzer/impl/LuceneAnalyzerReference.java
    R engine/src/main/java/org/hibernate/search/analyzer/impl/RemoteAnalyzer.java
    M engine/src/main/java/org/hibernate/search/analyzer/impl/RemoteAnalyzerReference.java
    M engine/src/main/java/org/hibernate/search/analyzer/spi/AnalyzerReference.java
    M engine/src/test/java/org/hibernate/search/test/analyzer/analyzerdef/AnalyzerDefAnnotationTest.java
    M engine/src/test/java/org/hibernate/search/test/analyzer/analyzerdefs/AnalyzerDefsAnnotationTest.java
    M engine/src/test/java/org/hibernate/search/test/configuration/mutablefactory/DefinitionsOnHotRebootTest.java

  Log Message:
  -----------
  HSEARCH-2726 Remove the concept of RemoteAnalyzer

If the analyzer is remote, it obviously means we can't manipulate it
locally.

Also, this will allow more consistency when adding a way to query whether
an analyzer reference targets an analyzer or a normalizer.


Compare: https://github.com/hibernate/hibernate-search/compare/a20049ad75c7...ddb5e3a7298b


More information about the hibernate-commits mailing list