public void configure ( ) { LOGGER . info ( "configure()" ) ; calculators = new ArrayList <> ( ) ; if ( fieldExtractorEnabled ) { fieldExtractor = new FieldExtractor ( schema ) ; calculators . add ( fieldExtractor ) ; } if ( completenessMeasurementEnabled ) { completenessCalculator = new CompletenessCalculator ( schema ) ; completenessCalculator . collectFields ( completenessCollectFields ) ; completenessCalculator . setExistence ( fieldExistenceMeasurementEnabled ) ; completenessCalculator . setCardinality ( fieldCardinalityMeasurementEnabled ) ; calculators . add ( completenessCalculator ) ; } if ( tfIdfMeasurementEnabled ) { tfidfCalculator = new TfIdfCalculator ( schema ) ; if ( solrConfiguration != null ) { tfidfCalculator . setSolrConfiguration ( solrConfiguration ) ; } else { throw new IllegalArgumentException ( "If TF-IDF measurement is enabled, Solr configuration should not be null." ) ; } tfidfCalculator . enableTermCollection ( collectTfIdfTerms ) ; calculators . add ( tfidfCalculator ) ; } if ( problemCatalogMeasurementEnabled ) { if ( schema instanceof EdmSchema ) { ProblemCatalog problemCatalog = new ProblemCatalog ( ( EdmSchema ) schema ) ; new LongSubject ( problemCatalog ) ; new TitleAndDescriptionAreSame ( problemCatalog ) ; new EmptyStrings ( problemCatalog ) ; calculators . add ( problemCatalog ) ; } } if ( languageMeasurementEnabled ) { languageCalculator = new LanguageCalculator ( schema ) ; calculators . add ( languageCalculator ) ; } if ( multilingualSaturationMeasurementEnabled ) { multilingualSaturationCalculator = new MultilingualitySaturationCalculator ( schema ) ; if ( saturationExtendedResult ) { multilingualSaturationCalculator . setResultType ( MultilingualitySaturationCalculator . ResultTypes . EXTENDED ) ; } calculators . add ( multilingualSaturationCalculator ) ; } if ( uniquenessMeasurementEnabled ) { if ( solrClient == null && solrConfiguration == null ) { throw new IllegalArgumentException ( "If Uniqueness measurement is enabled, Solr configuration should not be null." ) ; } if ( solrClient == null ) { solrClient = new DefaultSolrClient ( solrConfiguration ) ; } calculators . add ( new UniquenessCalculator ( solrClient , schema ) ) ; } }
Run the configuration based on the previously set flags .