From 56e2b7c4bef19fcc27d172e26827a4997d6b4c1e Mon Sep 17 00:00:00 2001 From: =?utf8?q?V=C3=A1s=C3=A1ry=20D=C3=A1niel?= Date: Wed, 16 Oct 2019 11:08:06 +0000 Subject: [PATCH] git-tfs-id: [http://tfs.userrendszerhaz.hu:8080/tfs/DefaultCollection]$/MediaCube;C31570 --- ...chResult.java => ComplexSearchResult.java} | 2 +- .../src/user/jobengine/db/ItemDAOEx.java | 20 +++++++------- .../src/user/jobengine/db/ItemManager.java | 27 ++++++++++++------- .../user/jobengine/search/SearchResult.java | 4 +-- 4 files changed, 30 insertions(+), 23 deletions(-) rename server/user.jobengine.osgi.db/src/user/jobengine/db/{SearchResult.java => ComplexSearchResult.java} (90%) diff --git a/server/user.jobengine.osgi.db/src/user/jobengine/db/SearchResult.java b/server/user.jobengine.osgi.db/src/user/jobengine/db/ComplexSearchResult.java similarity index 90% rename from server/user.jobengine.osgi.db/src/user/jobengine/db/SearchResult.java rename to server/user.jobengine.osgi.db/src/user/jobengine/db/ComplexSearchResult.java index b684c1ce..51b53a9c 100644 --- a/server/user.jobengine.osgi.db/src/user/jobengine/db/SearchResult.java +++ b/server/user.jobengine.osgi.db/src/user/jobengine/db/ComplexSearchResult.java @@ -2,7 +2,7 @@ package user.jobengine.db; import java.util.List; -public class SearchResult { +public class ComplexSearchResult { private long itemCount; private ItemType itemType; diff --git a/server/user.jobengine.osgi.db/src/user/jobengine/db/ItemDAOEx.java b/server/user.jobengine.osgi.db/src/user/jobengine/db/ItemDAOEx.java index 27d2f0b4..d3df3208 100644 --- a/server/user.jobengine.osgi.db/src/user/jobengine/db/ItemDAOEx.java +++ b/server/user.jobengine.osgi.db/src/user/jobengine/db/ItemDAOEx.java @@ -27,7 +27,7 @@ public class ItemDAOEx { return queryBuilder.getQuery(); } - private String buildResultQuery(QueryObject queryObject, String innerQuery, SearchResult csr) { + private String buildResultQuery(QueryObject queryObject, String innerQuery, ComplexSearchResult csr) { StringBuilder resultQuery = new StringBuilder(); Formatter qf = new Formatter(resultQuery, Locale.getDefault()); RenderParameter rp = queryObject.getParameters(); @@ -57,8 +57,8 @@ public class ItemDAOEx { return resultQuery.toString(); } - private List getResultHeaders(Connection connection, QueryObject queryObject, String innerQuery) { - List results = new ArrayList(); + private List getResultHeaders(Connection connection, QueryObject queryObject, String innerQuery) { + List results = new ArrayList(); String typeQuery; if (queryObject.getParameters() == null) typeQuery = String.format("SELECT CAST(COUNT(DISTINCT(ii.ID)) AS BIGINT) %s", innerQuery); @@ -72,7 +72,7 @@ public class ItemDAOEx { st = connection.prepareStatement(typeQuery); rs = st.executeQuery(); while (rs.next()) { - SearchResult sr = new SearchResult(); + ComplexSearchResult sr = new ComplexSearchResult(); if (queryObject.getParameters() == null) { sr.setItemCount(rs.getLong(1)); } else { @@ -174,12 +174,12 @@ public class ItemDAOEx { } @SuppressWarnings("unchecked") - public List search(QueryObject queryObject) { + public List search(QueryObject queryObject) { manager.traceIn(); if (queryObject == null || queryObject.getFilters() == null || queryObject.getFilters().size() == 0) throw new IllegalArgumentException("QueryObject not specified."); - List results = new ArrayList(); + List results = new ArrayList(); ResultSet rs = null; PreparedStatement st = null; @@ -196,7 +196,7 @@ public class ItemDAOEx { // ItemType-onk�nt t�bbe results = getResultHeaders(connection, queryObject, innerQuery); } else { - SearchResult sr = new SearchResult(); + ComplexSearchResult sr = new ComplexSearchResult(); ItemType itemType = (ItemType) manager.get(ItemType.class, queryObject.getActiveItemTypeId()); sr.setItemType(itemType); // TODO @@ -206,7 +206,7 @@ public class ItemDAOEx { } if (results.size() != 0) { - SearchResult csr = results.get(0); + ComplexSearchResult csr = results.get(0); String resultQuery = buildResultQuery(queryObject, innerQuery, csr); st = connection.prepareStatement(resultQuery); @@ -247,8 +247,8 @@ public class ItemDAOEx { return results; } - public SearchResult search(String criteria, int fromResult, int toResult) { - SearchResult result = new SearchResult(); + public ComplexSearchResult search(String criteria, int fromResult, int toResult) { + ComplexSearchResult result = new ComplexSearchResult(); ResultSet rs = null; PreparedStatement st = null; diff --git a/server/user.jobengine.osgi.db/src/user/jobengine/db/ItemManager.java b/server/user.jobengine.osgi.db/src/user/jobengine/db/ItemManager.java index e7f4c552..73db46f8 100644 --- a/server/user.jobengine.osgi.db/src/user/jobengine/db/ItemManager.java +++ b/server/user.jobengine.osgi.db/src/user/jobengine/db/ItemManager.java @@ -76,6 +76,7 @@ public class ItemManager extends MemoryCache implements IItemManager { String dbPassword = null; private SignalServer signalServer; + private boolean useLucene; private IMediaFinder finder; public ItemManager() { @@ -86,28 +87,23 @@ public class ItemManager extends MemoryCache implements IItemManager { // System.getProperty("jobengine.mediafinder.external") == true // System.getProperty("jobengine.mediafinder.external.url") - boolean useLucene = false; try { useLucene = Boolean.parseBoolean(System.getProperty(JOBENGINE_MEDIAFINDER_EXTERNAL)); } catch (Exception e) { logger.info("Configuration property {} mising", JOBENGINE_MEDIAFINDER_EXTERNAL); } - if (useLucene) { - finder = new LuceneMediaFinder(); - } else { - finder = new MediaFinder(this); - } + finder = createFinder(); } - // public ItemManager(SignalServer signalServer) { - // initializeItemManager(signalServer); - // } - public void activate() { // logger.info("ItemManager activated."); } + // public ItemManager(SignalServer signalServer) { + // initializeItemManager(signalServer); + // } + @Override public void add(IEntityBase entity) { traceIn(); @@ -161,6 +157,16 @@ public class ItemManager extends MemoryCache implements IItemManager { return entity; } + private IMediaFinder createFinder() { + IMediaFinder finder = null; + if (useLucene) { + finder = new LuceneMediaFinder(); + } else { + finder = new MediaFinder(this); + } + return finder; + } + @Override public Item createItem(String name, String description, String houseId) { return createItem(null, name, description, houseId); @@ -1013,6 +1019,7 @@ public class ItemManager extends MemoryCache implements IItemManager { int toResult) { traceIn(); SearchResult result = finder.search(criteria, searchFilters, orderBy, orderAscending, fromResult, toResult); + traceOut(); return result; } diff --git a/server/user.jobengine.osgi.db/src/user/jobengine/search/SearchResult.java b/server/user.jobengine.osgi.db/src/user/jobengine/search/SearchResult.java index 8940c762..4e34f4fd 100644 --- a/server/user.jobengine.osgi.db/src/user/jobengine/search/SearchResult.java +++ b/server/user.jobengine.osgi.db/src/user/jobengine/search/SearchResult.java @@ -8,11 +8,11 @@ public class SearchResult { private List items; public long getItemCount() { - return this.itemCount; + return itemCount; } public List getItems() { - return this.items; + return items; } public void setItemCount(long itemCount) { -- 2.54.0