From bd5c8f5285fdca878d50456d38f8a40608809af4 Mon Sep 17 00:00:00 2001 From: Andrew Hind Date: Fri, 19 Aug 2011 10:10:46 +0000 Subject: [PATCH] ALF-9860: RSOLR 034: Incremental Index Fix - generic fix, supprot to request purge, index and reindex for tx, node, acl-tx and acl (partly to make broken indexes) - expose index fix via JMX - migrate logging in the SOLR project to slf4j to fit the SOLR logging pattern (config to come) git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@29904 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../org/alfresco/repository/solr/solr.lib.ftl | 2 ++ .../repo/web/scripts/solr/NodesMetaDataGet.java | 16 ++++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/config/alfresco/templates/webscripts/org/alfresco/repository/solr/solr.lib.ftl b/config/alfresco/templates/webscripts/org/alfresco/repository/solr/solr.lib.ftl index 13645279f6..92d23cdbc7 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/repository/solr/solr.lib.ftl +++ b/config/alfresco/templates/webscripts/org/alfresco/repository/solr/solr.lib.ftl @@ -16,6 +16,7 @@ <#macro aclReadersJSON aclReaders> { "aclId": ${aclReaders.aclId?c}, + "aclChangeSetId": ${aclReaders.aclChangeSetId?c}, "readers" : [ <#list aclReaders.readers as reader> @@ -49,6 +50,7 @@ <#if filter.includeNodeRef??><#if nodeMetaData.nodeRef??>, "nodeRef": "${nodeMetaData.nodeRef.toString()}" <#if filter.includeType??><#if nodeMetaData.nodeType??>, "type": <@qNameJSON qName=nodeMetaData.nodeType/> <#if filter.includeAclId??><#if nodeMetaData.aclId??>, "aclId": ${nodeMetaData.aclId?c} + <#if filter.includeTxnId??><#if nodeMetaData.txnId??>, "txnId": ${nodeMetaData.txnId?c} <#if filter.includeProperties??> <#if nodeMetaData.properties??> , "properties": { diff --git a/source/java/org/alfresco/repo/web/scripts/solr/NodesMetaDataGet.java b/source/java/org/alfresco/repo/web/scripts/solr/NodesMetaDataGet.java index 5a8893fdce..35bc6fd940 100644 --- a/source/java/org/alfresco/repo/web/scripts/solr/NodesMetaDataGet.java +++ b/source/java/org/alfresco/repo/web/scripts/solr/NodesMetaDataGet.java @@ -162,6 +162,10 @@ public class NodesMetaDataGet extends DeclarativeWebScript { filter.setIncludeChildIds(o.getBoolean("includeChildIds")); } + if(o.has("includeTxnId")) + { + filter.setIncludeTxnId(o.getBoolean("includeTxnId")); + } final ArrayList nodesMetaData = new ArrayList(size > 0 ? size : INITIAL_DEFAULT_SIZE); @@ -241,6 +245,7 @@ public class NodesMetaDataGet extends DeclarativeWebScript private Long parentAssocsCrc; private List childIds; private String owner; + private Long txnId; public FreemarkerNodeMetaData(SOLRSerializer solrSerializer, NodeMetaData nodeMetaData) throws IOException, JSONException { @@ -248,6 +253,7 @@ public class NodesMetaDataGet extends DeclarativeWebScript setAclId(nodeMetaData.getAclId()); setNodeRef(nodeMetaData.getNodeRef()); setNodeType(nodeMetaData.getNodeType()); + setTxnId(nodeMetaData.getTxnId()); // convert Paths to Strings List paths = new ArrayList(); @@ -380,6 +386,16 @@ public class NodesMetaDataGet extends DeclarativeWebScript { this.owner = owner; } + + public Long getTxnId() + { + return txnId; + } + + public void setTxnId(Long txnId) + { + this.txnId = txnId; + } }