SEARCH-2445: Adding Elasticsearch Search Subsystem as Only Enterprise option

This commit is contained in:
Angel Borroy
2020-10-06 10:08:42 +02:00
parent 7b99a414b0
commit dfd5af550a
27 changed files with 265 additions and 254 deletions

View File

@@ -25,16 +25,16 @@
*/ */
package org.alfresco.repo.web.scripts.solr; package org.alfresco.repo.web.scripts.solr;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import org.alfresco.repo.solr.AclChangeSet; import org.alfresco.repo.search.SearchTrackingComponent;
import org.alfresco.repo.solr.SOLRTrackingComponent; import org.alfresco.repo.solr.AclChangeSet;
import org.apache.commons.logging.Log; import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory; import org.apache.commons.logging.LogFactory;
import org.springframework.extensions.webscripts.DeclarativeWebScript; import org.springframework.extensions.webscripts.DeclarativeWebScript;
import org.springframework.extensions.webscripts.Status; import org.springframework.extensions.webscripts.Status;
import org.springframework.extensions.webscripts.WebScriptRequest; import org.springframework.extensions.webscripts.WebScriptRequest;
/** /**
@@ -46,11 +46,11 @@ public class AclChangeSetsGet extends DeclarativeWebScript
{ {
protected static final Log logger = LogFactory.getLog(AclChangeSetsGet.class); protected static final Log logger = LogFactory.getLog(AclChangeSetsGet.class);
private SOLRTrackingComponent solrTrackingComponent; private SearchTrackingComponent searchTrackingComponent;
public void setSolrTrackingComponent(SOLRTrackingComponent solrTrackingComponent) public void setSearchTrackingComponent(SearchTrackingComponent searchTrackingComponent)
{ {
this.solrTrackingComponent = solrTrackingComponent; this.searchTrackingComponent = searchTrackingComponent;
} }
protected Map<String, Object> executeImpl(WebScriptRequest req, Status status) protected Map<String, Object> executeImpl(WebScriptRequest req, Status status)
@@ -67,18 +67,18 @@ public class AclChangeSetsGet extends DeclarativeWebScript
Long toTime = (toTimeParam == null ? null : Long.valueOf(toTimeParam)); Long toTime = (toTimeParam == null ? null : Long.valueOf(toTimeParam));
int maxResults = (maxResultsParam == null ? 1024 : Integer.valueOf(maxResultsParam)); int maxResults = (maxResultsParam == null ? 1024 : Integer.valueOf(maxResultsParam));
List<AclChangeSet> changesets = solrTrackingComponent.getAclChangeSets(fromId, fromTime, toId, toTime, maxResults); List<AclChangeSet> changesets = searchTrackingComponent.getAclChangeSets(fromId, fromTime, toId, toTime, maxResults);
Map<String, Object> model = new HashMap<String, Object>(1, 1.0f); Map<String, Object> model = new HashMap<String, Object>(1, 1.0f);
model.put("aclChangeSets", changesets); model.put("aclChangeSets", changesets);
Long maxChangeSetCommitTime = solrTrackingComponent.getMaxChangeSetCommitTime(); Long maxChangeSetCommitTime = searchTrackingComponent.getMaxChangeSetCommitTime();
if(maxChangeSetCommitTime != null) if(maxChangeSetCommitTime != null)
{ {
model.put("maxChangeSetCommitTime", maxChangeSetCommitTime); model.put("maxChangeSetCommitTime", maxChangeSetCommitTime);
} }
Long maxChangeSetId = solrTrackingComponent.getMaxChangeSetId(); Long maxChangeSetId = searchTrackingComponent.getMaxChangeSetId();
if(maxChangeSetId != null) if(maxChangeSetId != null)
{ {
model.put("maxChangeSetId", maxChangeSetId); model.put("maxChangeSetId", maxChangeSetId);

View File

@@ -25,23 +25,23 @@
*/ */
package org.alfresco.repo.web.scripts.solr; package org.alfresco.repo.web.scripts.solr;
import java.io.IOException; import java.io.IOException;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import org.alfresco.repo.solr.Acl; import org.alfresco.repo.search.SearchTrackingComponent;
import org.alfresco.repo.solr.SOLRTrackingComponent; import org.alfresco.repo.solr.Acl;
import org.apache.commons.logging.Log; import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory; import org.apache.commons.logging.LogFactory;
import org.json.JSONArray; import org.json.JSONArray;
import org.json.JSONException; import org.json.JSONException;
import org.json.JSONObject; import org.json.JSONObject;
import org.springframework.extensions.surf.util.Content; import org.springframework.extensions.surf.util.Content;
import org.springframework.extensions.webscripts.DeclarativeWebScript; import org.springframework.extensions.webscripts.DeclarativeWebScript;
import org.springframework.extensions.webscripts.Status; import org.springframework.extensions.webscripts.Status;
import org.springframework.extensions.webscripts.WebScriptException; import org.springframework.extensions.webscripts.WebScriptException;
import org.springframework.extensions.webscripts.WebScriptRequest; import org.springframework.extensions.webscripts.WebScriptRequest;
/** /**
@@ -53,11 +53,11 @@ public class AclsGet extends DeclarativeWebScript
{ {
protected static final Log logger = LogFactory.getLog(AclsGet.class); protected static final Log logger = LogFactory.getLog(AclsGet.class);
private SOLRTrackingComponent solrTrackingComponent; private SearchTrackingComponent searchTrackingComponent;
public void setSolrTrackingComponent(SOLRTrackingComponent solrTrackingComponent) public void setSearchTrackingComponent(SearchTrackingComponent searchTrackingComponent)
{ {
this.solrTrackingComponent = solrTrackingComponent; this.searchTrackingComponent = searchTrackingComponent;
} }
protected Map<String, Object> executeImpl(WebScriptRequest req, Status status) protected Map<String, Object> executeImpl(WebScriptRequest req, Status status)
@@ -117,7 +117,7 @@ public class AclsGet extends DeclarativeWebScript
int maxResults = (maxResultsParam == null ? 1024 : Integer.valueOf(maxResultsParam)); int maxResults = (maxResultsParam == null ? 1024 : Integer.valueOf(maxResultsParam));
// Request according to the paging query style required // Request according to the paging query style required
List<Acl> acls = solrTrackingComponent.getAcls(aclChangeSetIds, fromId, maxResults); List<Acl> acls = searchTrackingComponent.getAcls(aclChangeSetIds, fromId, maxResults);
Map<String, Object> model = new HashMap<String, Object>(1, 1.0f); Map<String, Object> model = new HashMap<String, Object>(1, 1.0f);
model.put("acls", acls); model.put("acls", acls);

View File

@@ -25,23 +25,23 @@
*/ */
package org.alfresco.repo.web.scripts.solr; package org.alfresco.repo.web.scripts.solr;
import java.io.IOException; import java.io.IOException;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import org.alfresco.repo.solr.AclReaders; import org.alfresco.repo.search.SearchTrackingComponent;
import org.alfresco.repo.solr.SOLRTrackingComponent; import org.alfresco.repo.solr.AclReaders;
import org.apache.commons.logging.Log; import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory; import org.apache.commons.logging.LogFactory;
import org.json.JSONArray; import org.json.JSONArray;
import org.json.JSONException; import org.json.JSONException;
import org.json.JSONObject; import org.json.JSONObject;
import org.springframework.extensions.surf.util.Content; import org.springframework.extensions.surf.util.Content;
import org.springframework.extensions.webscripts.DeclarativeWebScript; import org.springframework.extensions.webscripts.DeclarativeWebScript;
import org.springframework.extensions.webscripts.Status; import org.springframework.extensions.webscripts.Status;
import org.springframework.extensions.webscripts.WebScriptException; import org.springframework.extensions.webscripts.WebScriptException;
import org.springframework.extensions.webscripts.WebScriptRequest; import org.springframework.extensions.webscripts.WebScriptRequest;
/** /**
@@ -53,11 +53,11 @@ public class AclsReadersGet extends DeclarativeWebScript
{ {
protected static final Log logger = LogFactory.getLog(AclsReadersGet.class); protected static final Log logger = LogFactory.getLog(AclsReadersGet.class);
private SOLRTrackingComponent solrTrackingComponent; private SearchTrackingComponent searchTrackingComponent;
public void setSolrTrackingComponent(SOLRTrackingComponent solrTrackingComponent) public void setSearchTrackingComponent(SearchTrackingComponent searchTrackingComponent)
{ {
this.solrTrackingComponent = solrTrackingComponent; this.searchTrackingComponent = searchTrackingComponent;
} }
protected Map<String, Object> executeImpl(WebScriptRequest req, Status status) protected Map<String, Object> executeImpl(WebScriptRequest req, Status status)
@@ -111,7 +111,7 @@ public class AclsReadersGet extends DeclarativeWebScript
} }
// Request according to the paging query style required // Request according to the paging query style required
List<AclReaders> aclsReaders = solrTrackingComponent.getAclsReaders(aclIds); List<AclReaders> aclsReaders = searchTrackingComponent.getAclsReaders(aclIds);
Map<String, Object> model = new HashMap<String, Object>(1, 1.0f); Map<String, Object> model = new HashMap<String, Object>(1, 1.0f);
model.put("aclsReaders", aclsReaders); model.put("aclsReaders", aclsReaders);

View File

@@ -25,21 +25,20 @@
*/ */
package org.alfresco.repo.web.scripts.solr; package org.alfresco.repo.web.scripts.solr;
import java.io.IOException; import java.io.IOException;
import java.util.Map;
import org.alfresco.repo.search.SearchTrackingComponent;
import org.alfresco.repo.solr.AlfrescoModel; import org.alfresco.repo.solr.AlfrescoModel;
import org.alfresco.repo.solr.SOLRTrackingComponent; import org.alfresco.service.cmr.dictionary.ModelDefinition;
import org.alfresco.service.cmr.dictionary.ModelDefinition; import org.alfresco.service.namespace.NamespaceService;
import org.alfresco.service.namespace.NamespaceService; import org.alfresco.service.namespace.QName;
import org.alfresco.service.namespace.QName; import org.apache.commons.logging.Log;
import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory;
import org.apache.commons.logging.LogFactory; import org.json.JSONException;
import org.json.JSONException; import org.springframework.extensions.webscripts.AbstractWebScript;
import org.springframework.extensions.webscripts.AbstractWebScript; import org.springframework.extensions.webscripts.Status;
import org.springframework.extensions.webscripts.Status; import org.springframework.extensions.webscripts.WebScriptException;
import org.springframework.extensions.webscripts.WebScriptException; import org.springframework.extensions.webscripts.WebScriptRequest;
import org.springframework.extensions.webscripts.WebScriptRequest;
import org.springframework.extensions.webscripts.WebScriptResponse; import org.springframework.extensions.webscripts.WebScriptResponse;
/** /**
@@ -52,11 +51,11 @@ public class AlfrescoModelGet extends AbstractWebScript
protected static final Log logger = LogFactory.getLog(AlfrescoModelGet.class); protected static final Log logger = LogFactory.getLog(AlfrescoModelGet.class);
private NamespaceService namespaceService; private NamespaceService namespaceService;
private SOLRTrackingComponent solrTrackingComponent; private SearchTrackingComponent searchTrackingComponent;
public void setSolrTrackingComponent(SOLRTrackingComponent solrTrackingComponent) public void setSearchTrackingComponent(SearchTrackingComponent searchTrackingComponent)
{ {
this.solrTrackingComponent = solrTrackingComponent; this.searchTrackingComponent = searchTrackingComponent;
} }
public void setNamespaceService(NamespaceService namespaceService) public void setNamespaceService(NamespaceService namespaceService)
@@ -92,7 +91,7 @@ public class AlfrescoModelGet extends AbstractWebScript
} }
ModelDefinition.XMLBindingType bindingType = ModelDefinition.XMLBindingType.DEFAULT; ModelDefinition.XMLBindingType bindingType = ModelDefinition.XMLBindingType.DEFAULT;
AlfrescoModel model = solrTrackingComponent.getModel(QName.createQName(modelQName)); AlfrescoModel model = searchTrackingComponent.getModel(QName.createQName(modelQName));
res.setHeader("XAlfresco-modelChecksum", String.valueOf(model.getModelDef().getChecksum(bindingType))); res.setHeader("XAlfresco-modelChecksum", String.valueOf(model.getModelDef().getChecksum(bindingType)));
model.getModelDef().toXML(bindingType, res.getOutputStream()); model.getModelDef().toXML(bindingType, res.getOutputStream());
} }

View File

@@ -25,23 +25,23 @@
*/ */
package org.alfresco.repo.web.scripts.solr; package org.alfresco.repo.web.scripts.solr;
import java.io.IOException; import java.io.IOException;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import org.alfresco.repo.solr.AlfrescoModelDiff; import org.alfresco.repo.search.SearchTrackingComponent;
import org.alfresco.repo.solr.SOLRTrackingComponent; import org.alfresco.repo.solr.AlfrescoModelDiff;
import org.alfresco.service.namespace.QName; import org.alfresco.service.namespace.QName;
import org.apache.commons.logging.Log; import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory; import org.apache.commons.logging.LogFactory;
import org.json.JSONArray; import org.json.JSONArray;
import org.json.JSONException; import org.json.JSONException;
import org.json.JSONObject; import org.json.JSONObject;
import org.springframework.extensions.surf.util.Content; import org.springframework.extensions.surf.util.Content;
import org.springframework.extensions.webscripts.DeclarativeWebScript; import org.springframework.extensions.webscripts.DeclarativeWebScript;
import org.springframework.extensions.webscripts.Status; import org.springframework.extensions.webscripts.Status;
import org.springframework.extensions.webscripts.WebScriptException; import org.springframework.extensions.webscripts.WebScriptException;
import org.springframework.extensions.webscripts.WebScriptRequest; import org.springframework.extensions.webscripts.WebScriptRequest;
/** /**
@@ -57,11 +57,11 @@ public class AlfrescoModelsDiff extends DeclarativeWebScript
private static final String MSG_JSON_EXCEPTION = "Unable to fetch model changes from "; private static final String MSG_JSON_EXCEPTION = "Unable to fetch model changes from ";
private SOLRTrackingComponent solrTrackingComponent; private SearchTrackingComponent searchTrackingComponent;
public void setSolrTrackingComponent(SOLRTrackingComponent solrTrackingComponent) public void setSearchTrackingComponent(SearchTrackingComponent searchTrackingComponent)
{ {
this.solrTrackingComponent = solrTrackingComponent; this.searchTrackingComponent = searchTrackingComponent;
} }
protected Map<String, Object> executeImpl(WebScriptRequest req, Status status) protected Map<String, Object> executeImpl(WebScriptRequest req, Status status)
@@ -122,7 +122,7 @@ public class AlfrescoModelsDiff extends DeclarativeWebScript
models.put(QName.createQName(jsonModel.getString("name")), jsonModel.getLong("checksum")); models.put(QName.createQName(jsonModel.getString("name")), jsonModel.getLong("checksum"));
} }
List<AlfrescoModelDiff> diffs = solrTrackingComponent.getModelDiffs(models); List<AlfrescoModelDiff> diffs = searchTrackingComponent.getModelDiffs(models);
model.put("diffs", diffs); model.put("diffs", diffs);
if (logger.isDebugEnabled()) if (logger.isDebugEnabled())

View File

@@ -35,11 +35,10 @@ import java.util.Set;
import org.alfresco.repo.domain.node.Node; import org.alfresco.repo.domain.node.Node;
import org.alfresco.repo.domain.qname.QNameDAO; import org.alfresco.repo.domain.qname.QNameDAO;
import org.alfresco.repo.search.impl.QueryParserUtils; import org.alfresco.repo.search.SearchTrackingComponent;
import org.alfresco.repo.search.SearchTrackingComponent.NodeQueryCallback;
import org.alfresco.repo.security.authentication.AuthenticationUtil; import org.alfresco.repo.security.authentication.AuthenticationUtil;
import org.alfresco.repo.solr.NodeParameters; import org.alfresco.repo.solr.NodeParameters;
import org.alfresco.repo.solr.SOLRTrackingComponent;
import org.alfresco.repo.solr.SOLRTrackingComponent.NodeQueryCallback;
import org.alfresco.repo.tenant.TenantService; import org.alfresco.repo.tenant.TenantService;
import org.alfresco.service.cmr.repository.StoreRef; import org.alfresco.service.cmr.repository.StoreRef;
import org.alfresco.service.namespace.QName; import org.alfresco.service.namespace.QName;
@@ -67,15 +66,15 @@ public class NodesGet extends DeclarativeWebScript
{ {
protected static final Log logger = LogFactory.getLog(NodesGet.class); protected static final Log logger = LogFactory.getLog(NodesGet.class);
private SOLRTrackingComponent solrTrackingComponent; private SearchTrackingComponent searchTrackingComponent;
private TenantService tenantService; private TenantService tenantService;
private QNameDAO qnameDAO; private QNameDAO qnameDAO;
public void setSolrTrackingComponent(SOLRTrackingComponent solrTrackingComponent) public void setSearchTrackingComponent(SearchTrackingComponent searchTrackingComponent)
{ {
this.solrTrackingComponent = solrTrackingComponent; this.searchTrackingComponent = searchTrackingComponent;
} }
public void setTenantService(TenantService tenantService) public void setTenantService(TenantService tenantService)
@@ -202,7 +201,7 @@ public class NodesGet extends DeclarativeWebScript
WebNodeQueryCallback nodeQueryCallback = new WebNodeQueryCallback(maxResults, storeRef, tenantService, qnameDAO); WebNodeQueryCallback nodeQueryCallback = new WebNodeQueryCallback(maxResults, storeRef, tenantService, qnameDAO);
solrTrackingComponent.getNodes(nodeParameters, nodeQueryCallback); searchTrackingComponent.getNodes(nodeParameters, nodeQueryCallback);
Map<String, Object> model = new HashMap<String, Object>(1, 1.0f); Map<String, Object> model = new HashMap<String, Object>(1, 1.0f);
List<NodeRecord> nodes = nodeQueryCallback.getNodes(); List<NodeRecord> nodes = nodeQueryCallback.getNodes();

View File

@@ -38,11 +38,11 @@ import java.util.Set;
import org.alfresco.error.AlfrescoRuntimeException; import org.alfresco.error.AlfrescoRuntimeException;
import org.alfresco.repo.search.IndexerException; import org.alfresco.repo.search.IndexerException;
import org.alfresco.repo.search.SearchTrackingComponent;
import org.alfresco.repo.search.SearchTrackingComponent.NodeMetaDataQueryCallback;
import org.alfresco.repo.solr.MetaDataResultsFilter; import org.alfresco.repo.solr.MetaDataResultsFilter;
import org.alfresco.repo.solr.NodeMetaData; import org.alfresco.repo.solr.NodeMetaData;
import org.alfresco.repo.solr.NodeMetaDataParameters; import org.alfresco.repo.solr.NodeMetaDataParameters;
import org.alfresco.repo.solr.SOLRTrackingComponent;
import org.alfresco.repo.solr.SOLRTrackingComponent.NodeMetaDataQueryCallback;
import org.alfresco.repo.tenant.TenantUtil; import org.alfresco.repo.tenant.TenantUtil;
import org.alfresco.repo.tenant.TenantUtil.TenantRunAsWork; import org.alfresco.repo.tenant.TenantUtil.TenantRunAsWork;
import org.alfresco.service.cmr.repository.ChildAssociationRef; import org.alfresco.service.cmr.repository.ChildAssociationRef;
@@ -74,12 +74,12 @@ public class NodesMetaDataGet extends DeclarativeWebScript
private static final int INITIAL_DEFAULT_SIZE = 100; private static final int INITIAL_DEFAULT_SIZE = 100;
private static final int BATCH_SIZE = 50; private static final int BATCH_SIZE = 50;
private SOLRTrackingComponent solrTrackingComponent; private SearchTrackingComponent searchTrackingComponent;
private SOLRSerializer solrSerializer; private SOLRSerializer solrSerializer;
public void setSolrTrackingComponent(SOLRTrackingComponent solrTrackingComponent) public void setSearchTrackingComponent(SearchTrackingComponent searchTrackingComponent)
{ {
this.solrTrackingComponent = solrTrackingComponent; this.searchTrackingComponent = searchTrackingComponent;
} }
public void setSolrSerializer(SOLRSerializer solrSerializer) public void setSolrSerializer(SOLRSerializer solrSerializer)
@@ -188,7 +188,7 @@ public class NodesMetaDataGet extends DeclarativeWebScript
params.setToNodeId(toNodeId); params.setToNodeId(toNodeId);
params.setMaxResults(maxResults); params.setMaxResults(maxResults);
solrTrackingComponent.getNodesMetadata(params, filter, new NodeMetaDataQueryCallback() searchTrackingComponent.getNodesMetadata(params, filter, new NodeMetaDataQueryCallback()
{ {
private int counter = BATCH_SIZE; private int counter = BATCH_SIZE;
private int numBatches = 0; private int numBatches = 0;

View File

@@ -25,20 +25,20 @@
*/ */
package org.alfresco.repo.web.scripts.solr; package org.alfresco.repo.web.scripts.solr;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import org.alfresco.repo.index.shard.ShardMethodEnum; import org.alfresco.repo.index.shard.ShardMethodEnum;
import org.alfresco.repo.index.shard.ShardState; import org.alfresco.repo.index.shard.ShardState;
import org.alfresco.repo.index.shard.ShardStateBuilder; import org.alfresco.repo.index.shard.ShardStateBuilder;
import org.alfresco.repo.solr.SOLRTrackingComponent; import org.alfresco.repo.search.SearchTrackingComponent;
import org.alfresco.repo.solr.Transaction; import org.alfresco.repo.solr.Transaction;
import org.alfresco.service.cmr.repository.StoreRef; import org.alfresco.service.cmr.repository.StoreRef;
import org.apache.commons.logging.Log; import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory; import org.apache.commons.logging.LogFactory;
import org.springframework.extensions.webscripts.DeclarativeWebScript; import org.springframework.extensions.webscripts.DeclarativeWebScript;
import org.springframework.extensions.webscripts.Status; import org.springframework.extensions.webscripts.Status;
import org.springframework.extensions.webscripts.WebScriptRequest; import org.springframework.extensions.webscripts.WebScriptRequest;
/** /**
@@ -50,11 +50,11 @@ public class TransactionsGet extends DeclarativeWebScript
{ {
protected static final Log logger = LogFactory.getLog(TransactionsGet.class); protected static final Log logger = LogFactory.getLog(TransactionsGet.class);
private SOLRTrackingComponent solrTrackingComponent; private SearchTrackingComponent searchTrackingComponent;
public void setSolrTrackingComponent(SOLRTrackingComponent solrTrackingComponent) public void setSearchTrackingComponent(SearchTrackingComponent searchTrackingComponent)
{ {
this.solrTrackingComponent = solrTrackingComponent; this.searchTrackingComponent = searchTrackingComponent;
} }
protected Map<String, Object> executeImpl(WebScriptRequest req, Status status) protected Map<String, Object> executeImpl(WebScriptRequest req, Status status)
@@ -128,7 +128,7 @@ public class TransactionsGet extends DeclarativeWebScript
} }
} }
solrTrackingComponent.registerShardState(shardState); searchTrackingComponent.registerShardState(shardState);
} }
@@ -139,18 +139,18 @@ public class TransactionsGet extends DeclarativeWebScript
Long toCommitTime = (toCommitTimeParam == null ? null : Long.valueOf(toCommitTimeParam)); Long toCommitTime = (toCommitTimeParam == null ? null : Long.valueOf(toCommitTimeParam));
int maxResults = (maxResultsParam == null ? 1024 : Integer.valueOf(maxResultsParam)); int maxResults = (maxResultsParam == null ? 1024 : Integer.valueOf(maxResultsParam));
List<Transaction> transactions = solrTrackingComponent.getTransactions(minTxnId, fromCommitTime, maxTxnId, toCommitTime, maxResults); List<Transaction> transactions = searchTrackingComponent.getTransactions(minTxnId, fromCommitTime, maxTxnId, toCommitTime, maxResults);
Map<String, Object> model = new HashMap<String, Object>(1, 1.0f); Map<String, Object> model = new HashMap<String, Object>(1, 1.0f);
model.put("transactions", transactions); model.put("transactions", transactions);
Long maxTxnCommitTime = solrTrackingComponent.getMaxTxnCommitTime(); Long maxTxnCommitTime = searchTrackingComponent.getMaxTxnCommitTime();
if(maxTxnCommitTime != null) if(maxTxnCommitTime != null)
{ {
model.put("maxTxnCommitTime", maxTxnCommitTime); model.put("maxTxnCommitTime", maxTxnCommitTime);
} }
Long maxTxnIdOnServer = solrTrackingComponent.getMaxTxnId(); Long maxTxnIdOnServer = searchTrackingComponent.getMaxTxnId();
if(maxTxnIdOnServer != null) if(maxTxnIdOnServer != null)
{ {
model.put("maxTxnId", maxTxnIdOnServer); model.put("maxTxnId", maxTxnIdOnServer);

View File

@@ -1159,13 +1159,13 @@
<bean id="webscript.org.alfresco.repository.solr.aclChangeSets.get" <bean id="webscript.org.alfresco.repository.solr.aclChangeSets.get"
class="org.alfresco.repo.web.scripts.solr.AclChangeSetsGet" class="org.alfresco.repo.web.scripts.solr.AclChangeSetsGet"
parent="webscript"> parent="webscript">
<property name="solrTrackingComponent" ref="solrTrackingComponent"/> <property name="searchTrackingComponent" ref="searchTrackingComponent"/>
</bean> </bean>
<bean id="webscript.org.alfresco.repository.solr.acls.post" <bean id="webscript.org.alfresco.repository.solr.acls.post"
class="org.alfresco.repo.web.scripts.solr.AclsGet" class="org.alfresco.repo.web.scripts.solr.AclsGet"
parent="webscript"> parent="webscript">
<property name="solrTrackingComponent" ref="solrTrackingComponent"/> <property name="searchTrackingComponent" ref="searchTrackingComponent"/>
</bean> </bean>
<bean id="webscript.org.alfresco.repository.solr.acls.get" <bean id="webscript.org.alfresco.repository.solr.acls.get"
@@ -1174,7 +1174,7 @@
<bean id="webscript.org.alfresco.repository.solr.aclsReaders.post" <bean id="webscript.org.alfresco.repository.solr.aclsReaders.post"
class="org.alfresco.repo.web.scripts.solr.AclsReadersGet" class="org.alfresco.repo.web.scripts.solr.AclsReadersGet"
parent="webscript"> parent="webscript">
<property name="solrTrackingComponent" ref="solrTrackingComponent"/> <property name="searchTrackingComponent" ref="searchTrackingComponent"/>
</bean> </bean>
<bean id="webscript.org.alfresco.repository.solr.aclsReaders.get" <bean id="webscript.org.alfresco.repository.solr.aclsReaders.get"
@@ -1183,7 +1183,7 @@
<bean id="webscript.org.alfresco.repository.solr.transactions.get" <bean id="webscript.org.alfresco.repository.solr.transactions.get"
class="org.alfresco.repo.web.scripts.solr.TransactionsGet" class="org.alfresco.repo.web.scripts.solr.TransactionsGet"
parent="webscript"> parent="webscript">
<property name="solrTrackingComponent" ref="solrTrackingComponent"/> <property name="searchTrackingComponent" ref="searchTrackingComponent"/>
</bean> </bean>
<bean id="webscript.org.alfresco.repository.solr.stats.get" <bean id="webscript.org.alfresco.repository.solr.stats.get"
@@ -1225,7 +1225,7 @@
<bean id="webscript.org.alfresco.repository.solr.nodes.post" <bean id="webscript.org.alfresco.repository.solr.nodes.post"
class="org.alfresco.repo.web.scripts.solr.NodesGet" class="org.alfresco.repo.web.scripts.solr.NodesGet"
parent="webscript"> parent="webscript">
<property name="solrTrackingComponent" ref="solrTrackingComponent"/> <property name="searchTrackingComponent" ref="searchTrackingComponent"/>
<property name="tenantService" ref="tenantService"/> <property name="tenantService" ref="tenantService"/>
<property name="qnameDAO" ref="qnameDAO"/> <property name="qnameDAO" ref="qnameDAO"/>
</bean> </bean>
@@ -1233,7 +1233,7 @@
<bean id="webscript.org.alfresco.repository.solr.nodesMetaData.post" <bean id="webscript.org.alfresco.repository.solr.nodesMetaData.post"
class="org.alfresco.repo.web.scripts.solr.NodesMetaDataGet" class="org.alfresco.repo.web.scripts.solr.NodesMetaDataGet"
parent="webscript"> parent="webscript">
<property name="solrTrackingComponent" ref="solrTrackingComponent"/> <property name="searchTrackingComponent" ref="searchTrackingComponent"/>
<property name="solrSerializer" ref="solrSerializer"/> <property name="solrSerializer" ref="solrSerializer"/>
</bean> </bean>
@@ -1250,14 +1250,14 @@
<bean id="webscript.org.alfresco.repository.solr.model.get" <bean id="webscript.org.alfresco.repository.solr.model.get"
class="org.alfresco.repo.web.scripts.solr.AlfrescoModelGet" class="org.alfresco.repo.web.scripts.solr.AlfrescoModelGet"
parent="webscript"> parent="webscript">
<property name="solrTrackingComponent" ref="solrTrackingComponent"/> <property name="searchTrackingComponent" ref="searchTrackingComponent"/>
<property name="namespaceService" ref="namespaceService"/> <property name="namespaceService" ref="namespaceService"/>
</bean> </bean>
<bean id="webscript.org.alfresco.repository.solr.modelsdiff.post" <bean id="webscript.org.alfresco.repository.solr.modelsdiff.post"
class="org.alfresco.repo.web.scripts.solr.AlfrescoModelsDiff" class="org.alfresco.repo.web.scripts.solr.AlfrescoModelsDiff"
parent="webscript"> parent="webscript">
<property name="solrTrackingComponent" ref="solrTrackingComponent"/> <property name="searchTrackingComponent" ref="searchTrackingComponent"/>
</bean> </bean>
<!-- /api/solr webscript returning the min txId and the max TxId in a nodeId range --> <!-- /api/solr webscript returning the min txId and the max TxId in a nodeId range -->
@@ -1266,7 +1266,7 @@
parent="webscript"> parent="webscript">
<property name="nodeDAO" ref="nodeDAO" /> <property name="nodeDAO" ref="nodeDAO" />
</bean> </bean>
<!-- /api/solr webscript returning the min txId in a nodeId range --> <!-- /api/solr webscript returning the min txId in a nodeId range -->
<bean id="webscript.org.alfresco.repository.solr.nextTransactionCommitTime.get" <bean id="webscript.org.alfresco.repository.solr.nextTransactionCommitTime.get"
class="org.alfresco.repo.web.scripts.solr.NextTransactionGet" class="org.alfresco.repo.web.scripts.solr.NextTransactionGet"

View File

@@ -25,46 +25,46 @@
*/ */
package org.alfresco.repo.web.scripts.solr; package org.alfresco.repo.web.scripts.solr;
import java.io.PrintWriter; import java.io.PrintWriter;
import java.io.Serializable; import java.io.Serializable;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collection; import java.util.Collection;
import java.util.HashMap; import java.util.HashMap;
import java.util.Iterator; import java.util.Iterator;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;
import org.alfresco.model.ContentModel; import org.alfresco.model.ContentModel;
import org.alfresco.repo.domain.node.NodeDAO; import org.alfresco.repo.domain.node.NodeDAO;
import org.alfresco.repo.security.authentication.AuthenticationUtil; import org.alfresco.repo.search.SearchTrackingComponent;
import org.alfresco.repo.solr.Acl; import org.alfresco.repo.security.authentication.AuthenticationUtil;
import org.alfresco.repo.solr.AclChangeSet; import org.alfresco.repo.solr.Acl;
import org.alfresco.repo.solr.AclReaders; import org.alfresco.repo.solr.AclChangeSet;
import org.alfresco.repo.solr.SOLRTrackingComponent; import org.alfresco.repo.solr.AclReaders;
import org.alfresco.repo.transaction.RetryingTransactionHelper; import org.alfresco.repo.transaction.RetryingTransactionHelper;
import org.alfresco.repo.transaction.RetryingTransactionHelper.RetryingTransactionCallback; import org.alfresco.repo.transaction.RetryingTransactionHelper.RetryingTransactionCallback;
import org.alfresco.repo.web.scripts.BaseWebScriptTest; import org.alfresco.repo.web.scripts.BaseWebScriptTest;
import org.alfresco.service.ServiceRegistry; import org.alfresco.service.ServiceRegistry;
import org.alfresco.service.cmr.model.FileFolderService; import org.alfresco.service.cmr.model.FileFolderService;
import org.alfresco.service.cmr.model.FileInfo; import org.alfresco.service.cmr.model.FileInfo;
import org.alfresco.service.cmr.repository.NodeRef; import org.alfresco.service.cmr.repository.NodeRef;
import org.alfresco.service.cmr.repository.NodeService; import org.alfresco.service.cmr.repository.NodeService;
import org.alfresco.service.cmr.repository.Path; import org.alfresco.service.cmr.repository.Path;
import org.alfresco.service.cmr.repository.StoreRef; import org.alfresco.service.cmr.repository.StoreRef;
import org.alfresco.service.namespace.NamespaceService; import org.alfresco.service.namespace.NamespaceService;
import org.alfresco.service.namespace.QName; import org.alfresco.service.namespace.QName;
import org.alfresco.service.transaction.TransactionService; import org.alfresco.service.transaction.TransactionService;
import org.alfresco.util.Pair; import org.alfresco.util.Pair;
import org.alfresco.util.PropertyMap; import org.alfresco.util.PropertyMap;
import org.apache.commons.logging.Log; import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory; import org.apache.commons.logging.LogFactory;
import org.json.JSONArray; import org.json.JSONArray;
import org.json.JSONException; import org.json.JSONException;
import org.json.JSONObject; import org.json.JSONObject;
import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContext;
import org.springframework.extensions.webscripts.Status; import org.springframework.extensions.webscripts.Status;
import org.springframework.extensions.webscripts.TestWebScriptServer; import org.springframework.extensions.webscripts.TestWebScriptServer;
import org.springframework.extensions.webscripts.TestWebScriptServer.Response; import org.springframework.extensions.webscripts.TestWebScriptServer.Response;
/** /**
@@ -77,7 +77,7 @@ public class SOLRWebScriptTest extends BaseWebScriptTest
protected static final Log logger = LogFactory.getLog(SOLRWebScriptTest.class); protected static final Log logger = LogFactory.getLog(SOLRWebScriptTest.class);
private ApplicationContext ctx; private ApplicationContext ctx;
private SOLRTrackingComponent solrTrackingComponent; private SearchTrackingComponent searchTrackingComponent;
private NodeDAO nodeDAO; private NodeDAO nodeDAO;
private TransactionService transactionService; private TransactionService transactionService;
private NodeService nodeService; private NodeService nodeService;
@@ -107,7 +107,7 @@ public class SOLRWebScriptTest extends BaseWebScriptTest
namespaceService = serviceRegistry.getNamespaceService(); namespaceService = serviceRegistry.getNamespaceService();
txnHelper = transactionService.getRetryingTransactionHelper(); txnHelper = transactionService.getRetryingTransactionHelper();
nodeDAO = (NodeDAO)ctx.getBean("nodeDAO"); nodeDAO = (NodeDAO)ctx.getBean("nodeDAO");
solrTrackingComponent = (SOLRTrackingComponent) ctx.getBean("solrTrackingComponent"); searchTrackingComponent = (SearchTrackingComponent) ctx.getBean("searchTrackingComponent");
admin = AuthenticationUtil.getAdminUserName(); admin = AuthenticationUtil.getAdminUserName();
@@ -165,7 +165,7 @@ public class SOLRWebScriptTest extends BaseWebScriptTest
public void testAclsGet() throws Exception public void testAclsGet() throws Exception
{ {
List<AclChangeSet> aclChangeSets = solrTrackingComponent.getAclChangeSets(null, null, null, null, 100); List<AclChangeSet> aclChangeSets = searchTrackingComponent.getAclChangeSets(null, null, null, null, 100);
if (aclChangeSets.size() == 0) if (aclChangeSets.size() == 0)
{ {
return; // Can't test, but very unlikely return; // Can't test, but very unlikely
@@ -203,7 +203,7 @@ public class SOLRWebScriptTest extends BaseWebScriptTest
JSONArray acls = json.getJSONArray("acls"); JSONArray acls = json.getJSONArray("acls");
// Check // Check
List<Acl> aclsCheck = solrTrackingComponent.getAcls(aclChangeSetIds, null, 512); List<Acl> aclsCheck = searchTrackingComponent.getAcls(aclChangeSetIds, null, 512);
assertEquals("Script and API returned different number of results", aclsCheck.size(), acls.length()); assertEquals("Script and API returned different number of results", aclsCheck.size(), acls.length());
} }
@@ -223,7 +223,7 @@ public class SOLRWebScriptTest extends BaseWebScriptTest
private void aclReadersGetImpl() throws Exception private void aclReadersGetImpl() throws Exception
{ {
List<AclChangeSet> aclChangeSets = solrTrackingComponent.getAclChangeSets(null, null, null, null, 1024); List<AclChangeSet> aclChangeSets = searchTrackingComponent.getAclChangeSets(null, null, null, null, 1024);
List<Long> aclChangeSetIds = new ArrayList<Long>(50); List<Long> aclChangeSetIds = new ArrayList<Long>(50);
for (AclChangeSet aclChangeSet : aclChangeSets) for (AclChangeSet aclChangeSet : aclChangeSets)
{ {
@@ -237,7 +237,7 @@ public class SOLRWebScriptTest extends BaseWebScriptTest
{ {
// No ACLs; not likely // No ACLs; not likely
} }
List<Acl> acls = solrTrackingComponent.getAcls(aclChangeSetIds, null, 1024); List<Acl> acls = searchTrackingComponent.getAcls(aclChangeSetIds, null, 1024);
List<Long> aclIds = new ArrayList<Long>(acls.size()); List<Long> aclIds = new ArrayList<Long>(acls.size());
JSONObject json = new JSONObject(); JSONObject json = new JSONObject();
JSONArray aclIdsJSON = new JSONArray(); JSONArray aclIdsJSON = new JSONArray();
@@ -250,7 +250,7 @@ public class SOLRWebScriptTest extends BaseWebScriptTest
json.put("aclIds", aclIdsJSON); json.put("aclIds", aclIdsJSON);
// Now get the readers // Now get the readers
List<AclReaders> aclsReaders = solrTrackingComponent.getAclsReaders(aclIds); List<AclReaders> aclsReaders = searchTrackingComponent.getAclsReaders(aclIds);
assertEquals("Should have same number of ACLs as supplied", aclIds.size(), aclsReaders.size()); assertEquals("Should have same number of ACLs as supplied", aclIds.size(), aclsReaders.size());
assertTrue("Must have *some* ACLs here", aclIds.size() > 0); assertTrue("Must have *some* ACLs here", aclIds.size() > 0);
Map<Long, Set<String>> readersByAclId = new HashMap<Long, Set<String>>(); Map<Long, Set<String>> readersByAclId = new HashMap<Long, Set<String>>();

View File

@@ -39,7 +39,7 @@ import org.alfresco.service.namespace.QName;
* *
* @since 4.0 * @since 4.0
*/ */
public interface SOLRDAO public interface SearchDAO
{ {
/** /**
* Get the ACL changesets summary (rollup count) with paging options * Get the ACL changesets summary (rollup count) with paging options

View File

@@ -36,7 +36,7 @@ import org.alfresco.repo.domain.node.Node;
import org.alfresco.repo.domain.qname.QNameDAO; import org.alfresco.repo.domain.qname.QNameDAO;
import org.alfresco.repo.domain.solr.AclEntity; import org.alfresco.repo.domain.solr.AclEntity;
import org.alfresco.repo.domain.solr.NodeParametersEntity; import org.alfresco.repo.domain.solr.NodeParametersEntity;
import org.alfresco.repo.domain.solr.SOLRDAO; import org.alfresco.repo.domain.solr.SearchDAO;
import org.alfresco.repo.domain.solr.SOLRTrackingParameters; import org.alfresco.repo.domain.solr.SOLRTrackingParameters;
import org.alfresco.repo.search.impl.QueryParserUtils; import org.alfresco.repo.search.impl.QueryParserUtils;
import org.alfresco.repo.solr.Acl; import org.alfresco.repo.solr.Acl;
@@ -55,7 +55,7 @@ import org.mybatis.spring.SqlSessionTemplate;
* *
* @since 4.0 * @since 4.0
*/ */
public class SOLRDAOImpl implements SOLRDAO public class SearchDAOImpl implements SearchDAO
{ {
private static final String SELECT_CHANGESETS_SUMMARY = "alfresco.solr.select_ChangeSets_Summary"; private static final String SELECT_CHANGESETS_SUMMARY = "alfresco.solr.select_ChangeSets_Summary";
private static final String SELECT_ACLS_BY_CHANGESET_IDS = "alfresco.solr.select_AclsByChangeSetIds"; private static final String SELECT_ACLS_BY_CHANGESET_IDS = "alfresco.solr.select_AclsByChangeSetIds";

View File

@@ -31,8 +31,8 @@ import org.alfresco.repo.node.NodeServicePolicies.OnDeleteChildAssociationPolicy
import org.alfresco.repo.node.NodeServicePolicies.OnMoveNodePolicy; import org.alfresco.repo.node.NodeServicePolicies.OnMoveNodePolicy;
import org.alfresco.repo.policy.Behaviour; import org.alfresco.repo.policy.Behaviour;
import org.alfresco.repo.policy.JavaBehaviour; import org.alfresco.repo.policy.JavaBehaviour;
import org.alfresco.repo.policy.PolicyComponent; import org.alfresco.repo.policy.PolicyComponent;
import org.alfresco.repo.solr.SOLRTrackingComponent; import org.alfresco.repo.search.SearchTrackingComponent;
import org.alfresco.service.cmr.repository.ChildAssociationRef; import org.alfresco.service.cmr.repository.ChildAssociationRef;
import org.alfresco.service.cmr.repository.NodeRef; import org.alfresco.service.cmr.repository.NodeRef;
import org.alfresco.service.cmr.repository.NodeRef.Status; import org.alfresco.service.cmr.repository.NodeRef.Status;
@@ -46,7 +46,7 @@ public class CascadeUpdateAspect implements OnCreateChildAssociationPolicy, OnDe
{ {
private PolicyComponent policyComponent; private PolicyComponent policyComponent;
private NodeService nodeService; private NodeService nodeService;
private SOLRTrackingComponent solrTrackingComponent; private SearchTrackingComponent searchTrackingComponent;
public void setPolicyComponent(PolicyComponent policyComponent) public void setPolicyComponent(PolicyComponent policyComponent)
@@ -59,9 +59,9 @@ public class CascadeUpdateAspect implements OnCreateChildAssociationPolicy, OnDe
this.nodeService = nodeService; this.nodeService = nodeService;
} }
public void setSolrTrackingComponent(SOLRTrackingComponent solrTrackingComponent) public void setSearchTrackingComponent(SearchTrackingComponent searchTrackingComponent)
{ {
this.solrTrackingComponent = solrTrackingComponent; this.searchTrackingComponent = searchTrackingComponent;
} }
/** /**
@@ -112,7 +112,7 @@ public class CascadeUpdateAspect implements OnCreateChildAssociationPolicy, OnDe
private void markCascadeUpdate(NodeRef nodeRef) private void markCascadeUpdate(NodeRef nodeRef)
{ {
Status status = nodeService.getNodeStatus(nodeRef); Status status = nodeService.getNodeStatus(nodeRef);
nodeService.setProperty(status.getNodeRef(), ContentModel.PROP_CASCADE_CRC, solrTrackingComponent.getCRC(status.getDbId())); nodeService.setProperty(status.getNodeRef(), ContentModel.PROP_CASCADE_CRC, searchTrackingComponent.getCRC(status.getDbId()));
nodeService.setProperty(status.getNodeRef(), ContentModel.PROP_CASCADE_TX, status.getDbTxnId()); nodeService.setProperty(status.getNodeRef(), ContentModel.PROP_CASCADE_TX, status.getDbTxnId());
} }
} }

View File

@@ -23,22 +23,32 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>. * along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
* #L% * #L%
*/ */
package org.alfresco.repo.solr; package org.alfresco.repo.search;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import org.alfresco.repo.domain.node.Node; import org.alfresco.repo.domain.node.Node;
import org.alfresco.repo.index.shard.ShardRegistry; import org.alfresco.repo.index.shard.ShardRegistry;
import org.alfresco.repo.index.shard.ShardState; import org.alfresco.repo.index.shard.ShardState;
import org.alfresco.repo.solr.Acl;
import org.alfresco.repo.solr.AclChangeSet;
import org.alfresco.repo.solr.AclReaders;
import org.alfresco.repo.solr.AlfrescoModel;
import org.alfresco.repo.solr.AlfrescoModelDiff;
import org.alfresco.repo.solr.MetaDataResultsFilter;
import org.alfresco.repo.solr.NodeMetaData;
import org.alfresco.repo.solr.NodeMetaDataParameters;
import org.alfresco.repo.solr.NodeParameters;
import org.alfresco.repo.solr.Transaction;
import org.alfresco.service.namespace.QName; import org.alfresco.service.namespace.QName;
/** /**
* Interface for component to provide tracking data for SOLR. * Interface for component to provide tracking data for Search Subsystem.
* *
* @since 4.0 * @since 4.0
*/ */
public interface SOLRTrackingComponent public interface SearchTrackingComponent
{ {
/** /**
* Get the ACL changesets for given range parameters * Get the ACL changesets for given range parameters

View File

@@ -32,7 +32,7 @@ import java.util.Set;
import java.util.regex.Matcher; import java.util.regex.Matcher;
import org.alfresco.repo.domain.node.Node; import org.alfresco.repo.domain.node.Node;
import org.alfresco.repo.domain.solr.SOLRDAO; import org.alfresco.repo.domain.solr.SearchDAO;
import org.alfresco.repo.search.impl.lucene.AbstractLuceneQueryLanguage; import org.alfresco.repo.search.impl.lucene.AbstractLuceneQueryLanguage;
import org.alfresco.repo.search.impl.lucene.LuceneQueryLanguageSPI; import org.alfresco.repo.search.impl.lucene.LuceneQueryLanguageSPI;
import org.alfresco.repo.search.impl.lucene.SolrJSONResultSet; import org.alfresco.repo.search.impl.lucene.SolrJSONResultSet;
@@ -65,7 +65,7 @@ public class DbOrIndexSwitchingQueryLanguage extends AbstractLuceneQueryLanguage
private NodeService nodeService; private NodeService nodeService;
private SOLRDAO solrDao; private SearchDAO searchDao;
private boolean hybridEnabled; private boolean hybridEnabled;
@@ -101,9 +101,9 @@ public class DbOrIndexSwitchingQueryLanguage extends AbstractLuceneQueryLanguage
this.nodeService = nodeService; this.nodeService = nodeService;
} }
public void setSolrDao(SOLRDAO solrDao) public void setSearchDao(SearchDAO searchDao)
{ {
this.solrDao = solrDao; this.searchDao = searchDao;
} }
public void setHybridEnabled(boolean hybridEnabled) public void setHybridEnabled(boolean hybridEnabled)
@@ -333,7 +333,7 @@ public class DbOrIndexSwitchingQueryLanguage extends AbstractLuceneQueryLanguage
// TODO: setToTxnId(null) when SolrDAO behaviour is fixed. // TODO: setToTxnId(null) when SolrDAO behaviour is fixed.
nodeParameters.setToTxnId(Long.MAX_VALUE); nodeParameters.setToTxnId(Long.MAX_VALUE);
stopWatch.start("get changed nodes"); stopWatch.start("get changed nodes");
List<Node> changedNodeList = solrDao.getNodes(nodeParameters, null, null); List<Node> changedNodeList = searchDao.getNodes(nodeParameters, null, null);
stopWatch.stop(); stopWatch.stop();
if (logger.isDebugEnabled()) if (logger.isDebugEnabled())
{ {

View File

@@ -36,14 +36,12 @@ import java.util.Iterator;
import java.util.LinkedList; import java.util.LinkedList;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.OptionalInt;
import java.util.Set; import java.util.Set;
import java.util.TreeSet; import java.util.TreeSet;
import java.util.zip.CRC32; import java.util.zip.CRC32;
import org.alfresco.error.AlfrescoRuntimeException; import org.alfresco.error.AlfrescoRuntimeException;
import org.alfresco.model.ContentModel; import org.alfresco.model.ContentModel;
import org.alfresco.repo.coci.CheckOutCheckInServiceImpl;
import org.alfresco.repo.dictionary.DictionaryDAO; import org.alfresco.repo.dictionary.DictionaryDAO;
import org.alfresco.repo.domain.node.Node; import org.alfresco.repo.domain.node.Node;
import org.alfresco.repo.domain.node.NodeDAO; import org.alfresco.repo.domain.node.NodeDAO;
@@ -51,10 +49,11 @@ import org.alfresco.repo.domain.node.NodeDAO.ChildAssocRefQueryCallback;
import org.alfresco.repo.domain.node.NodeEntity; import org.alfresco.repo.domain.node.NodeEntity;
import org.alfresco.repo.domain.permissions.AclDAO; import org.alfresco.repo.domain.permissions.AclDAO;
import org.alfresco.repo.domain.qname.QNameDAO; import org.alfresco.repo.domain.qname.QNameDAO;
import org.alfresco.repo.domain.solr.SOLRDAO; import org.alfresco.repo.domain.solr.SearchDAO;
import org.alfresco.repo.index.shard.ShardRegistry; import org.alfresco.repo.index.shard.ShardRegistry;
import org.alfresco.repo.index.shard.ShardState; import org.alfresco.repo.index.shard.ShardState;
import org.alfresco.repo.search.AspectIndexFilter; import org.alfresco.repo.search.AspectIndexFilter;
import org.alfresco.repo.search.SearchTrackingComponent;
import org.alfresco.repo.search.TypeIndexFilter; import org.alfresco.repo.search.TypeIndexFilter;
import org.alfresco.repo.search.impl.QueryParserUtils; import org.alfresco.repo.search.impl.QueryParserUtils;
import org.alfresco.repo.security.authentication.AuthenticationUtil; import org.alfresco.repo.security.authentication.AuthenticationUtil;
@@ -89,11 +88,11 @@ import org.apache.commons.logging.LogFactory;
* *
* @since 4.0 * @since 4.0
*/ */
public class SOLRTrackingComponentImpl implements SOLRTrackingComponent public class SOLRTrackingComponentImpl implements SearchTrackingComponent
{ {
private NodeDAO nodeDAO; private NodeDAO nodeDAO;
private QNameDAO qnameDAO; private QNameDAO qnameDAO;
private SOLRDAO solrDAO; private SearchDAO searchDAO;
private DictionaryDAO dictionaryDAO; private DictionaryDAO dictionaryDAO;
private PermissionService permissionService; private PermissionService permissionService;
private AclDAO aclDAO; private AclDAO aclDAO;
@@ -130,9 +129,9 @@ public class SOLRTrackingComponentImpl implements SOLRTrackingComponent
this.cacheAncestors = cacheAncestors; this.cacheAncestors = cacheAncestors;
} }
public void setSolrDAO(SOLRDAO solrDAO) public void setSearchDAO(SearchDAO searchDAO)
{ {
this.solrDAO = solrDAO; this.searchDAO = searchDAO;
} }
public void setNodeDAO(NodeDAO nodeDAO) public void setNodeDAO(NodeDAO nodeDAO)
@@ -200,7 +199,7 @@ public class SOLRTrackingComponentImpl implements SOLRTrackingComponent
*/ */
public void init() public void init()
{ {
PropertyCheck.mandatory(this, "solrDAO", solrDAO); PropertyCheck.mandatory(this, "solrDAO", searchDAO);
PropertyCheck.mandatory(this, "nodeDAO", nodeDAO); PropertyCheck.mandatory(this, "nodeDAO", nodeDAO);
PropertyCheck.mandatory(this, "qnameDAO", qnameDAO); PropertyCheck.mandatory(this, "qnameDAO", qnameDAO);
PropertyCheck.mandatory(this, "permissionService", permissionService); PropertyCheck.mandatory(this, "permissionService", permissionService);
@@ -219,7 +218,7 @@ public class SOLRTrackingComponentImpl implements SOLRTrackingComponent
{ {
if(enabled) if(enabled)
{ {
List<AclChangeSet> changesets = solrDAO.getAclChangeSets(minAclChangeSetId, fromCommitTime, maxAclChangeSetId, toCommitTime, maxResults); List<AclChangeSet> changesets = searchDAO.getAclChangeSets(minAclChangeSetId, fromCommitTime, maxAclChangeSetId, toCommitTime, maxResults);
return changesets; return changesets;
} }
else else
@@ -233,7 +232,7 @@ public class SOLRTrackingComponentImpl implements SOLRTrackingComponent
{ {
if(enabled) if(enabled)
{ {
List<Acl> acls = solrDAO.getAcls(aclChangeSetIds, minAclId, maxResults); List<Acl> acls = searchDAO.getAcls(aclChangeSetIds, minAclId, maxResults);
return acls; return acls;
} }
else else
@@ -305,7 +304,7 @@ public class SOLRTrackingComponentImpl implements SOLRTrackingComponent
List<Long> aclChangeSetIds = new ArrayList<Long>(1); List<Long> aclChangeSetIds = new ArrayList<Long>(1);
aclChangeSetIds.add(aclChangeSetId); aclChangeSetIds.add(aclChangeSetId);
List<Acl> acls = solrDAO.getAcls(aclChangeSetIds, null, 1024); List<Acl> acls = searchDAO.getAcls(aclChangeSetIds, null, 1024);
for (Acl acl : acls) for (Acl acl : acls)
{ {
tenantDomain = getAclTenant(acl.getId()); tenantDomain = getAclTenant(acl.getId());
@@ -347,7 +346,7 @@ public class SOLRTrackingComponentImpl implements SOLRTrackingComponent
{ {
if(enabled) if(enabled)
{ {
List<Transaction> txns = solrDAO.getTransactions(minTxnId, fromCommitTime, maxTxnId, toCommitTime, maxResults); List<Transaction> txns = searchDAO.getTransactions(minTxnId, fromCommitTime, maxTxnId, toCommitTime, maxResults);
return txns; return txns;
} }
else else
@@ -392,7 +391,7 @@ public class SOLRTrackingComponentImpl implements SOLRTrackingComponent
} }
List<Node> nodes = solrDAO.getNodes(nodeParameters, shardPropertQName, shardPropertyType); List<Node> nodes = searchDAO.getNodes(nodeParameters, shardPropertQName, shardPropertyType);
for (Node node : nodes) for (Node node : nodes)
{ {

View File

@@ -4,6 +4,9 @@
xsi:schemaLocation="http://www.springframework.org/schema/beans xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd"> http://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- Required to import Enterprise-Only Search Subsystems (like "elasticsearch") -->
<import resource="classpath*:alfresco/enterprise/search-enterprise-context.xml" />
<!-- Core and miscellaneous bean definitions --> <!-- Core and miscellaneous bean definitions -->
<!-- --> <!-- -->
@@ -998,7 +1001,7 @@
</list> </list>
</property> </property>
</bean> </bean>
<bean id="solr" class="org.alfresco.repo.search.impl.solr.SolrChildApplicationContextFactory" parent="abstractPropertyBackedBean"> <bean id="solr" class="org.alfresco.repo.search.impl.solr.SolrChildApplicationContextFactory" parent="abstractPropertyBackedBean">
<property name="autoStart"> <property name="autoStart">
<value>false</value> <value>false</value>
@@ -1291,16 +1294,16 @@
</property> </property>
</bean> </bean>
<bean id="solrTrackingComponent" class="org.alfresco.repo.management.subsystems.SubsystemProxyFactory"> <bean id="searchTrackingComponent" class="org.alfresco.repo.management.subsystems.SubsystemProxyFactory">
<property name="sourceApplicationContextFactory"> <property name="sourceApplicationContextFactory">
<ref bean="Search" /> <ref bean="Search" />
</property> </property>
<property name="sourceBeanName"> <property name="sourceBeanName">
<value>search.solrTrackingComponent</value> <value>search.trackingComponent</value>
</property> </property>
<property name="interfaces"> <property name="interfaces">
<list> <list>
<value>org.alfresco.repo.solr.SOLRTrackingComponent</value> <value>org.alfresco.repo.search.SearchTrackingComponent</value>
</list> </list>
</property> </property>
</bean> </bean>

View File

@@ -294,8 +294,8 @@
<property name="controlDAO" ref="controlDAO"/> <property name="controlDAO" ref="controlDAO"/>
</bean> </bean>
<bean id="solrDAO" class="org.alfresco.repo.domain.solr.ibatis.SOLRDAOImpl" init-method="init"> <bean id="searchDAO" class="org.alfresco.repo.domain.solr.ibatis.SearchDAOImpl" init-method="init">
<property name="sqlSessionTemplate" ref="solrSqlSessionTemplate"/> <property name="sqlSessionTemplate" ref="searchSqlSessionTemplate"/>
<property name="qNameDAO" ref="qnameDAO"/> <property name="qNameDAO" ref="qnameDAO"/>
</bean> </bean>

View File

@@ -52,7 +52,7 @@
<constructor-arg index="0" ref="repoSqlSessionFactory"/> <constructor-arg index="0" ref="repoSqlSessionFactory"/>
</bean> </bean>
<bean id="solrSqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate"> <bean id="searchSqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate">
<constructor-arg index="0" ref="repoSqlSessionFactory"/> <constructor-arg index="0" ref="repoSqlSessionFactory"/>
</bean> </bean>

View File

@@ -323,7 +323,7 @@
<bean id="cascadeUpdateAspect" class="org.alfresco.repo.node.CascadeUpdateAspect" init-method="init"> <bean id="cascadeUpdateAspect" class="org.alfresco.repo.node.CascadeUpdateAspect" init-method="init">
<property name="nodeService" ref="nodeService"/> <property name="nodeService" ref="nodeService"/>
<property name="policyComponent" ref="policyComponent"/> <property name="policyComponent" ref="policyComponent"/>
<property name="solrTrackingComponent" ref="solrTrackingComponent" /> <property name="searchTrackingComponent" ref="searchTrackingComponent" />
</bean> </bean>
</beans> </beans>

View File

@@ -23,7 +23,7 @@
<value>${solr.query.cmis.queryConsistency}</value> <value>${solr.query.cmis.queryConsistency}</value>
</property> </property>
<property name="nodeService" ref="NodeService"/> <property name="nodeService" ref="NodeService"/>
<property name="solrDao" ref="solrDAO"/> <property name="searchDao" ref="searchDAO"/>
<property name="hybridEnabled" value="${solr.query.hybrid.enabled}"/> <property name="hybridEnabled" value="${solr.query.hybrid.enabled}"/>
</bean> </bean>
@@ -66,7 +66,7 @@
<value>${solr.query.cmis.queryConsistency}</value> <value>${solr.query.cmis.queryConsistency}</value>
</property> </property>
<property name="nodeService" ref="NodeService"/> <property name="nodeService" ref="NodeService"/>
<property name="solrDao" ref="solrDAO"/> <property name="searchDao" ref="searchDAO"/>
<property name="hybridEnabled" value="${solr.query.hybrid.enabled}"/> <property name="hybridEnabled" value="${solr.query.hybrid.enabled}"/>
</bean> </bean>

View File

@@ -6,14 +6,14 @@
http://www.springframework.org/schema/beans/spring-beans.xsd"> http://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- SOLR Tracking --> <!-- SOLR Tracking -->
<bean id="search.solrTrackingComponent" class="org.alfresco.repo.solr.SOLRTrackingComponentImpl" init-method="init"> <bean id="search.trackingComponent" class="org.alfresco.repo.solr.SOLRTrackingComponentImpl" init-method="init">
<property name="permissionService" ref="permissionService"/> <property name="permissionService" ref="permissionService"/>
<property name="dictionaryService" ref="dictionaryService"/> <property name="dictionaryService" ref="dictionaryService"/>
<property name="ownableService" ref="ownableService"/> <property name="ownableService" ref="ownableService"/>
<property name="tenantService" ref="tenantService"/> <property name="tenantService" ref="tenantService"/>
<property name="nodeDAO" ref="nodeDAO"/> <property name="nodeDAO" ref="nodeDAO"/>
<property name="qnameDAO" ref="qnameDAO"/> <property name="qnameDAO" ref="qnameDAO"/>
<property name="solrDAO" ref="solrDAO" /> <property name="searchDAO" ref="searchDAO" />
<property name="dictionaryDAO" ref="dictionaryDAO" /> <property name="dictionaryDAO" ref="dictionaryDAO" />
<property name="aclDAO" ref="aclDAO" /> <property name="aclDAO" ref="aclDAO" />
<property name="enabled"> <property name="enabled">
@@ -83,7 +83,7 @@
<property name="queryConsistency"> <property name="queryConsistency">
<value>${solr.query.fts.queryConsistency}</value> <value>${solr.query.fts.queryConsistency}</value>
</property> </property>
<property name="solrDao" ref="solrDAO"/> <property name="searchDao" ref="searchDAO"/>
<property name="hybridEnabled" value="${solr.query.hybrid.enabled}"/> <property name="hybridEnabled" value="${solr.query.hybrid.enabled}"/>
</bean> </bean>

View File

@@ -64,7 +64,7 @@ import org.junit.runners.Suite;
org.alfresco.repo.domain.patch.AppliedPatchDAOTest.class, org.alfresco.repo.domain.patch.AppliedPatchDAOTest.class,
org.alfresco.repo.domain.permissions.AclCrudDAOTest.class, org.alfresco.repo.domain.permissions.AclCrudDAOTest.class,
org.alfresco.repo.domain.usage.UsageDAOTest.class, org.alfresco.repo.domain.usage.UsageDAOTest.class,
org.alfresco.repo.domain.solr.SOLRDAOTest.class, org.alfresco.repo.domain.solr.SearchDAOTest.class,
org.alfresco.repo.domain.tenant.TenantAdminDAOTest.class, org.alfresco.repo.domain.tenant.TenantAdminDAOTest.class,
// REPO-1012 : run AuditDAOTest and PropertyValueCleanupTest near the end // REPO-1012 : run AuditDAOTest and PropertyValueCleanupTest near the end

View File

@@ -71,7 +71,7 @@ import org.junit.runners.Suite;
org.alfresco.repo.domain.patch.AppliedPatchDAOTest.class, org.alfresco.repo.domain.patch.AppliedPatchDAOTest.class,
org.alfresco.repo.domain.permissions.AclCrudDAOTest.class, org.alfresco.repo.domain.permissions.AclCrudDAOTest.class,
org.alfresco.repo.domain.usage.UsageDAOTest.class, org.alfresco.repo.domain.usage.UsageDAOTest.class,
org.alfresco.repo.domain.solr.SOLRDAOTest.class, org.alfresco.repo.domain.solr.SearchDAOTest.class,
org.alfresco.repo.domain.tenant.TenantAdminDAOTest.class, org.alfresco.repo.domain.tenant.TenantAdminDAOTest.class,
// REPO-1012 : run AuditDAOTest and PropertyValueCleanupTest near the end // REPO-1012 : run AuditDAOTest and PropertyValueCleanupTest near the end

View File

@@ -67,7 +67,7 @@ import org.springframework.context.ConfigurableApplicationContext;
* @since 4.0 * @since 4.0
*/ */
@Category({OwnJVMTestsCategory.class, DBTests.class}) @Category({OwnJVMTestsCategory.class, DBTests.class})
public class SOLRDAOTest extends TestCase public class SearchDAOTest extends TestCase
{ {
private ConfigurableApplicationContext ctx = (ConfigurableApplicationContext) ApplicationContextHelper.getApplicationContext(); private ConfigurableApplicationContext ctx = (ConfigurableApplicationContext) ApplicationContextHelper.getApplicationContext();
@@ -77,13 +77,13 @@ public class SOLRDAOTest extends TestCase
private TransactionService transactionService; private TransactionService transactionService;
private NodeService nodeService; private NodeService nodeService;
private AclDAO aclDaoComponent; private AclDAO aclDaoComponent;
private SOLRDAO solrDAO; private SearchDAO searchDAO;
private NodeDAO nodeDAO; private NodeDAO nodeDAO;
@Override @Override
public void setUp() throws Exception public void setUp() throws Exception
{ {
solrDAO = (SOLRDAO)ctx.getBean("solrDAO"); searchDAO = (SearchDAO)ctx.getBean("searchDAO");
nodeDAO = (NodeDAO)ctx.getBean("nodeDAO"); nodeDAO = (NodeDAO)ctx.getBean("nodeDAO");
authenticationComponent = (AuthenticationComponent)ctx.getBean("authenticationComponent"); authenticationComponent = (AuthenticationComponent)ctx.getBean("authenticationComponent");
@@ -103,7 +103,7 @@ public class SOLRDAOTest extends TestCase
@Override @Override
public List<Node> execute() throws Throwable public List<Node> execute() throws Throwable
{ {
return solrDAO.getNodes(nodeParameters, null, null); return searchDAO.getNodes(nodeParameters, null, null);
} }
}, true); }, true);
} }
@@ -115,7 +115,7 @@ public class SOLRDAOTest extends TestCase
@Override @Override
public List<Acl> execute() throws Throwable public List<Acl> execute() throws Throwable
{ {
return solrDAO.getAcls(aclChangeSetIds, minAclId, maxResults); return searchDAO.getAcls(aclChangeSetIds, minAclId, maxResults);
} }
}, true); }, true);
} }
@@ -130,7 +130,7 @@ public class SOLRDAOTest extends TestCase
@Override @Override
public List<Transaction> execute() throws Throwable public List<Transaction> execute() throws Throwable
{ {
return solrDAO.getTransactions(minTxnId, fromCommitTime, maxTxnId, toCommitTime, maxResults); return searchDAO.getTransactions(minTxnId, fromCommitTime, maxTxnId, toCommitTime, maxResults);
} }
}, true); }, true);
} }
@@ -145,7 +145,7 @@ public class SOLRDAOTest extends TestCase
@Override @Override
public List<AclChangeSet> execute() throws Throwable public List<AclChangeSet> execute() throws Throwable
{ {
return solrDAO.getAclChangeSets(minAclChangeSetId, fromCommitTime, maxAclChangeSetId, toCommitTime, maxResults); return searchDAO.getAclChangeSets(minAclChangeSetId, fromCommitTime, maxAclChangeSetId, toCommitTime, maxResults);
} }
}, true); }, true);
} }
@@ -449,7 +449,7 @@ public class SOLRDAOTest extends TestCase
List<Long> aclChangeSetIds = new ArrayList<Long>(); List<Long> aclChangeSetIds = new ArrayList<Long>();
aclChangeSetIds.add(aclProps.getAclChangeSetId()); aclChangeSetIds.add(aclProps.getAclChangeSetId());
List<Acl> acls = solrDAO.getAcls(aclChangeSetIds, null, 1000); List<Acl> acls = searchDAO.getAcls(aclChangeSetIds, null, 1000);
assertTrue("Shared Acl should be found by solrDAO so that it can be indexed", containsAclId(acls, sharedAclId)); assertTrue("Shared Acl should be found by solrDAO so that it can be indexed", containsAclId(acls, sharedAclId));
} }
finally finally

View File

@@ -37,7 +37,7 @@ import java.util.List;
import org.alfresco.model.ContentModel; import org.alfresco.model.ContentModel;
import org.alfresco.repo.domain.node.Node; import org.alfresco.repo.domain.node.Node;
import org.alfresco.repo.domain.solr.SOLRDAO; import org.alfresco.repo.domain.solr.SearchDAO;
import org.alfresco.repo.search.impl.lucene.LuceneQueryLanguageSPI; import org.alfresco.repo.search.impl.lucene.LuceneQueryLanguageSPI;
import org.alfresco.repo.search.impl.lucene.SolrJSONResultSet; import org.alfresco.repo.search.impl.lucene.SolrJSONResultSet;
import org.alfresco.repo.search.impl.querymodel.QueryModelException; import org.alfresco.repo.search.impl.querymodel.QueryModelException;
@@ -68,7 +68,7 @@ public class DbOrIndexSwitchingQueryLanguageTest
private @Mock LuceneQueryLanguageSPI indexQueryLang; private @Mock LuceneQueryLanguageSPI indexQueryLang;
private @Mock SolrJSONResultSet indexResults; private @Mock SolrJSONResultSet indexResults;
private @Mock ResultSet dbResults; private @Mock ResultSet dbResults;
private @Mock SOLRDAO solrDAO; private @Mock SearchDAO solrDAO;
private List<Node> changedNodes; private List<Node> changedNodes;
@Before @Before
@@ -77,7 +77,7 @@ public class DbOrIndexSwitchingQueryLanguageTest
queryLang = new DbOrIndexSwitchingQueryLanguage(); queryLang = new DbOrIndexSwitchingQueryLanguage();
queryLang.setDbQueryLanguage(dbQueryLang); queryLang.setDbQueryLanguage(dbQueryLang);
queryLang.setIndexQueryLanguage(indexQueryLang); queryLang.setIndexQueryLanguage(indexQueryLang);
queryLang.setSolrDao(solrDAO); queryLang.setSearchDao(solrDAO);
searchParameters = new SearchParameters(); searchParameters = new SearchParameters();
changedNodes = new ArrayList<>(); changedNodes = new ArrayList<>();

View File

@@ -45,9 +45,10 @@ import org.alfresco.repo.domain.node.Node;
import org.alfresco.repo.domain.node.NodeDAO; import org.alfresco.repo.domain.node.NodeDAO;
import org.alfresco.repo.domain.qname.QNameDAO; import org.alfresco.repo.domain.qname.QNameDAO;
import org.alfresco.repo.node.db.DbNodeServiceImpl; import org.alfresco.repo.node.db.DbNodeServiceImpl;
import org.alfresco.repo.search.SearchTrackingComponent;
import org.alfresco.repo.search.SearchTrackingComponent.NodeMetaDataQueryCallback;
import org.alfresco.repo.search.SearchTrackingComponent.NodeQueryCallback;
import org.alfresco.repo.security.authentication.AuthenticationComponent; import org.alfresco.repo.security.authentication.AuthenticationComponent;
import org.alfresco.repo.solr.SOLRTrackingComponent.NodeMetaDataQueryCallback;
import org.alfresco.repo.solr.SOLRTrackingComponent.NodeQueryCallback;
import org.alfresco.repo.transaction.RetryingTransactionHelper; import org.alfresco.repo.transaction.RetryingTransactionHelper;
import org.alfresco.repo.transaction.RetryingTransactionHelper.RetryingTransactionCallback; import org.alfresco.repo.transaction.RetryingTransactionHelper.RetryingTransactionCallback;
import org.alfresco.service.ServiceRegistry; import org.alfresco.service.ServiceRegistry;
@@ -95,7 +96,7 @@ public class SOLRTrackingComponentTest extends BaseSpringTest
private NodeDAO nodeDAO; private NodeDAO nodeDAO;
private QNameDAO qnameDAO; private QNameDAO qnameDAO;
private DictionaryDAO dictionaryDAO; private DictionaryDAO dictionaryDAO;
private SOLRTrackingComponent solrTrackingComponent; private SearchTrackingComponent solrTrackingComponent;
private DbNodeServiceImpl dbNodeService; private DbNodeServiceImpl dbNodeService;
private StoreRef storeRef; private StoreRef storeRef;
@@ -108,7 +109,7 @@ public class SOLRTrackingComponentTest extends BaseSpringTest
transactionService = serviceRegistry.getTransactionService(); transactionService = serviceRegistry.getTransactionService();
txnHelper = transactionService.getRetryingTransactionHelper(); txnHelper = transactionService.getRetryingTransactionHelper();
solrTrackingComponent = (SOLRTrackingComponent) applicationContext.getBean("solrTrackingComponent"); solrTrackingComponent = (SearchTrackingComponent) applicationContext.getBean("searchTrackingComponent");
nodeDAO = (NodeDAO)applicationContext.getBean("nodeDAO"); nodeDAO = (NodeDAO)applicationContext.getBean("nodeDAO");
qnameDAO = (QNameDAO) applicationContext.getBean("qnameDAO"); qnameDAO = (QNameDAO) applicationContext.getBean("qnameDAO");
dictionaryDAO = (DictionaryDAO)applicationContext.getBean("dictionaryDAO"); dictionaryDAO = (DictionaryDAO)applicationContext.getBean("dictionaryDAO");
@@ -208,7 +209,7 @@ public class SOLRTrackingComponentTest extends BaseSpringTest
} }
/** /**
* Call {@link SOLRTrackingComponent#getTransactions(Long, Long, Long, Long, int)} in a transaction * Call {@link SearchTrackingComponent#getTransactions(Long, Long, Long, Long, int)} in a transaction
*/ */
private List<Transaction> getTransactions( private List<Transaction> getTransactions(
final Long minTxnId, final Long fromCommitTime, final Long minTxnId, final Long fromCommitTime,
@@ -227,7 +228,7 @@ public class SOLRTrackingComponentTest extends BaseSpringTest
} }
/** /**
* Call {@link SOLRTrackingComponent#getNodes(NodeParameters, NodeQueryCallback)} in a transaction * Call {@link SearchTrackingComponent#getNodes(NodeParameters, NodeQueryCallback)} in a transaction
*/ */
private void getNodes(final NodeParameters nodeParameters, final SOLRTest bt) private void getNodes(final NodeParameters nodeParameters, final SOLRTest bt)
{ {
@@ -249,7 +250,7 @@ public class SOLRTrackingComponentTest extends BaseSpringTest
} }
/** /**
* Call {@link SOLRTrackingComponent#getAcls(List, Long, int)} in a transaction * Call {@link SearchTrackingComponent#getAcls(List, Long, int)} in a transaction
*/ */
@SuppressWarnings("unused") @SuppressWarnings("unused")
private List<Acl> getAcls(final List<Long> aclChangeSetIds, final Long minAclId, final int maxResults) private List<Acl> getAcls(final List<Long> aclChangeSetIds, final Long minAclId, final int maxResults)
@@ -266,7 +267,7 @@ public class SOLRTrackingComponentTest extends BaseSpringTest
} }
/** /**
* Call {@link SOLRTrackingComponent#getAclChangeSets(Long, Long, Long, Long, int)} in a transaction * Call {@link SearchTrackingComponent#getAclChangeSets(Long, Long, Long, Long, int)} in a transaction
*/ */
private List<AclChangeSet> getAclChangeSets( private List<AclChangeSet> getAclChangeSets(
final Long minAclChangeSetId, final Long fromCommitTime, final Long minAclChangeSetId, final Long fromCommitTime,