logger.info("Benchmark result - [find taxon by CommonName via lucene] : " + duration + "ms (" + BENCHMARK_ROUNDS + " benchmark rounds )");\r
}\r
\r
+ /**\r
+ *\r
+ */\r
+ private void refreshLuceneIndex() {\r
+\r
+// commitAndStartNewTransaction(null);\r
+ commit();\r
+ endTransaction();\r
+ indexer.purge(DefaultProgressMonitor.NewInstance());\r
+ indexer.reindex(typesToIndex, DefaultProgressMonitor.NewInstance());\r
+ startNewTransaction();\r
+// commitAndStartNewTransaction(null);\r
+ }\r
+\r
+ /**\r
+ * @param numberOfNew\r
+ *\r
+ */\r
+ private void createRandomTaxonWithCommonName(int numberOfNew) {\r
+\r
+ logger.debug(String.format("creating %1$s random taxan with CommonName", numberOfNew));\r
+\r
+ commitAndStartNewTransaction(null);\r
+\r
+ Reference sec = ReferenceFactory.newBook();\r
+ referenceService.save(sec);\r
+\r
+ for (int i = numberOfNew; i < numberOfNew; i++) {\r
+ RandomStringUtils.randomAlphabetic(10);\r
+ String radomName = RandomStringUtils.randomAlphabetic(5) + " " + RandomStringUtils.randomAlphabetic(10);\r
+ String radomCommonName = RandomStringUtils.randomAlphabetic(10);\r
+\r
+ IBotanicalName name = TaxonNameFactory.NewBotanicalInstance(Rank.SPECIES());\r
+ name.setNameCache(radomName, true);\r
+ Taxon taxon = Taxon.NewInstance(name, sec);\r
+ taxonService.save(taxon);\r
+\r
+ TaxonDescription description = TaxonDescription.NewInstance(taxon);\r
+ description.addElement(CommonTaxonName.NewInstance(radomCommonName, Language.GERMAN()));\r
+ descriptionService.save(description);\r
+ }\r
+\r
+ commitAndStartNewTransaction(null);\r
+ }\r
+\r
+ private <T extends CdmBase> void logFreeTextSearchResults(Pager<SearchResult<T>> pager, Level level, String[] docFields){\r
+ if(level == null){\r
+ level = Level.DEBUG;\r
+ }\r
+ if(logger.isEnabledFor(level)){\r
+ StringBuilder b = new StringBuilder();\r
+ b.append("\n");\r
+ int i = 0;\r
+ for(SearchResult<?> sr : pager.getRecords()){\r
+\r
+ b.append(" ").append(i++).append(" - ");\r
+ b.append("score:").append(sr.getScore()).append(", ");\r
+\r
+ if(docFields != null){\r
+ b.append("docs : ");\r
+ for(Document doc : sr.getDocs()) {\r
+ b.append("<");\r
+ for(String f : docFields){\r
+ b.append(f).append(":").append(Arrays.toString(doc.getValues(f)));\r
+ }\r
+ b.append(">");\r
+ }\r
+ }\r
+\r
+ CdmBase entity = sr.getEntity();\r
+ if(entity == null){\r
+ b.append("NULL");\r
+ } else {\r
+ b.append(entity.getClass().getSimpleName()).\r
+ append(" [").append(entity.getId()).\r
+ append(" | ").append(entity.getUuid()).append("] : ").\r
+ append(entity.toString());\r
+\r
+ }\r
+ b.append("\n");\r
+ }\r
+ logger.log(level, b);\r
+ }\r
+ }\r
+\r
+ private Set<UUID> getTaxonUuidSet(@SuppressWarnings("rawtypes") Pager<SearchResult<TaxonBase>> pager) {\r
+ Set<UUID> result = new HashSet<>();\r
+ for (@SuppressWarnings("rawtypes") SearchResult<TaxonBase> searchResult : pager.getRecords()){\r
+ result.add(searchResult.getEntity().getUuid());\r
+ }\r
+ return result;\r
+ }\r
+\r
+\r
/**\r
* uncomment @Test annotation to create the dataset for this test\r
*/\r
@Override\r
- // @Test\r
- @DataSet(loadStrategy=CleanSweepInsertLoadStrategy.class, value="ClearDBDataSet.xml")\r
+// @Test\r
+ @DataSet(loadStrategy=CleanSweepInsertLoadStrategy.class, value="../../database/ClearDBDataSet.xml")\r
public final void createTestDataSet() throws FileNotFoundException {\r
\r
Classification europeanAbiesClassification = Classification.NewInstance("European Abies");\r
\r
}\r
\r
- /**\r
- *\r
- */\r
- private void refreshLuceneIndex() {\r
-\r
-// commitAndStartNewTransaction(null);\r
- commit();\r
- endTransaction();\r
- indexer.purge(DefaultProgressMonitor.NewInstance());\r
- indexer.reindex(typesToIndex, DefaultProgressMonitor.NewInstance());\r
- startNewTransaction();\r
-// commitAndStartNewTransaction(null);\r
- }\r
-\r
- /**\r
- * @param numberOfNew\r
- *\r
- */\r
- private void createRandomTaxonWithCommonName(int numberOfNew) {\r
-\r
- logger.debug(String.format("creating %1$s random taxan with CommonName", numberOfNew));\r
-\r
- commitAndStartNewTransaction(null);\r
-\r
- Reference sec = ReferenceFactory.newBook();\r
- referenceService.save(sec);\r
-\r
- for (int i = numberOfNew; i < numberOfNew; i++) {\r
- RandomStringUtils.randomAlphabetic(10);\r
- String radomName = RandomStringUtils.randomAlphabetic(5) + " " + RandomStringUtils.randomAlphabetic(10);\r
- String radomCommonName = RandomStringUtils.randomAlphabetic(10);\r
-\r
- IBotanicalName name = TaxonNameFactory.NewBotanicalInstance(Rank.SPECIES());\r
- name.setNameCache(radomName, true);\r
- Taxon taxon = Taxon.NewInstance(name, sec);\r
- taxonService.save(taxon);\r
-\r
- TaxonDescription description = TaxonDescription.NewInstance(taxon);\r
- description.addElement(CommonTaxonName.NewInstance(radomCommonName, Language.GERMAN()));\r
- descriptionService.save(description);\r
- }\r
-\r
- commitAndStartNewTransaction(null);\r
- }\r
-\r
- private <T extends CdmBase> void logFreeTextSearchResults(Pager<SearchResult<T>> pager, Level level, String[] docFields){\r
- if(level == null){\r
- level = Level.DEBUG;\r
- }\r
- if(logger.isEnabledFor(level)){\r
- StringBuilder b = new StringBuilder();\r
- b.append("\n");\r
- int i = 0;\r
- for(SearchResult<?> sr : pager.getRecords()){\r
-\r
- b.append(" ").append(i++).append(" - ");\r
- b.append("score:").append(sr.getScore()).append(", ");\r
-\r
- if(docFields != null){\r
- b.append("docs : ");\r
- for(Document doc : sr.getDocs()) {\r
- b.append("<");\r
- for(String f : docFields){\r
- b.append(f).append(":").append(Arrays.toString(doc.getValues(f)));\r
- }\r
- b.append(">");\r
- }\r
- }\r
-\r
- CdmBase entity = sr.getEntity();\r
- if(entity == null){\r
- b.append("NULL");\r
- } else {\r
- b.append(entity.getClass().getSimpleName()).\r
- append(" [").append(entity.getId()).\r
- append(" | ").append(entity.getUuid()).append("] : ").\r
- append(entity.toString());\r
-\r
- }\r
- b.append("\n");\r
- }\r
- logger.log(level, b);\r
- }\r
- }\r
-\r
-\r
- /**\r
- * @param pager\r
- * @return\r
- */\r
- private Set<UUID> getTaxonUuidSet(@SuppressWarnings("rawtypes") Pager<SearchResult<TaxonBase>> pager) {\r
- Set<UUID> result = new HashSet<>();\r
- for (@SuppressWarnings("rawtypes") SearchResult<TaxonBase> searchResult : pager.getRecords()){\r
- result.add(searchResult.getEntity().getUuid());\r
- }\r
- return result;\r
- }\r
-\r
}\r