You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by to...@apache.org on 2018/09/26 09:05:14 UTC

svn commit: r1842008 - in /jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search: ./ spi/editor/ spi/query/

Author: tommaso
Date: Wed Sep 26 09:05:14 2018
New Revision: 1842008

URL: http://svn.apache.org/viewvc?rev=1842008&view=rev
Log:
OAK-7411 - some javadoc fixes

Modified:
    jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/PropertyDefinition.java
    jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/ReindexOperations.java
    jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/TextExtractionStatsMBean.java
    jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/editor/DocumentMaker.java
    jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/editor/FulltextDocumentMaker.java
    jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/editor/FulltextIndexEditor.java
    jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/editor/FulltextIndexWriter.java
    jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/query/FulltextIndexPlanner.java
    jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/query/FulltextIndexTracker.java

Modified: jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/PropertyDefinition.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/PropertyDefinition.java?rev=1842008&r1=1842007&r2=1842008&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/PropertyDefinition.java (original)
+++ jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/PropertyDefinition.java Wed Sep 26 09:05:14 2018
@@ -62,6 +62,7 @@ public class PropertyDefinition {
     public final String name;
 
     private final int propertyType;
+
     /**
      * The boost value for a property.
      */

Modified: jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/ReindexOperations.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/ReindexOperations.java?rev=1842008&r1=1842007&r2=1842008&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/ReindexOperations.java (original)
+++ jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/ReindexOperations.java Wed Sep 26 09:05:14 2018
@@ -26,6 +26,9 @@ import org.apache.jackrabbit.oak.spi.sta
 import static org.apache.jackrabbit.oak.plugins.index.search.IndexDefinition.INDEX_DEFINITION_NODE;
 import static org.apache.jackrabbit.oak.plugins.index.search.spi.editor.FulltextIndexEditorContext.configureUniqueId;
 
+/**
+ * Reindexing operations
+ */
 public class ReindexOperations {
     private final NodeState root;
     private final NodeBuilder definitionBuilder;
@@ -40,6 +43,11 @@ public class ReindexOperations {
         this.indexDefBuilder = indexDefBuilder;
     }
 
+    /**
+     * Update index definition based on base or latest builder state
+     * @param useStateFromBuilder whether to use the latest builder state
+     * @return the up to date index definition
+     */
     public IndexDefinition apply(boolean useStateFromBuilder) {
         IndexFormatVersion version = IndexDefinition.determineVersionForFreshIndex(definitionBuilder);
         definitionBuilder.setProperty(IndexDefinition.INDEX_VERSION, version.getVersion());

Modified: jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/TextExtractionStatsMBean.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/TextExtractionStatsMBean.java?rev=1842008&r1=1842007&r2=1842008&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/TextExtractionStatsMBean.java (original)
+++ jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/TextExtractionStatsMBean.java Wed Sep 26 09:05:14 2018
@@ -26,21 +26,57 @@ import org.osgi.annotation.versioning.Pr
  */
 @ProviderType
 public interface TextExtractionStatsMBean {
+
+    /**
+     * Type of this MBean
+     */
     String TYPE = "TextExtractionStats";
 
+    /**
+     * Check whether pre extracted text provider is configured
+     * @return {@code true} if configured, {@code false} otherwise
+     */
     boolean isPreExtractedTextProviderConfigured();
 
+    /**
+     * Check whether pre extracted cache should always be used
+     * @return {@code true} if PEC should always be used, {@code false} otherwise
+     */
     boolean isAlwaysUsePreExtractedCache();
 
+    /**
+     * Number of text extraction operations performed
+     * @return the text extraction count
+     */
     int getTextExtractionCount();
 
+    /**
+     * Total time taken by text extraction
+     * @return total time taken
+     */
     long getTotalTime();
 
+    /**
+     * Pre fetch count
+     * @return no. of prefetch operations
+     */
     int getPreFetchedCount();
 
+    /**
+     * Size of extracted size
+     * @return extracted text size
+     */
     String getExtractedTextSize();
 
+    /**
+     * Bytes read by text extraction
+     * @return bytes read
+     */
     String getBytesRead();
 
+    /**
+     * Count of extractions gone timeout
+     * @return timeout count
+     */
     int getTimeoutCount();
 }

Modified: jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/editor/DocumentMaker.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/editor/DocumentMaker.java?rev=1842008&r1=1842007&r2=1842008&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/editor/DocumentMaker.java (original)
+++ jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/editor/DocumentMaker.java Wed Sep 26 09:05:14 2018
@@ -25,7 +25,7 @@ import org.apache.jackrabbit.oak.api.Pro
 import org.apache.jackrabbit.oak.spi.state.NodeState;
 
 /**
- * A {@link DocumentMaker} is responsible for creating an instance of a document {@link D} to be indexed.
+ * A {@link DocumentMaker} is responsible for creating an instance of a document D to be indexed.
  * For Apache Lucene that would be a Lucene {@code Document}, for Apache Solr that might be a {@code SolrInputDocument}, etc.
  */
 public interface DocumentMaker<D> {

Modified: jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/editor/FulltextDocumentMaker.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/editor/FulltextDocumentMaker.java?rev=1842008&r1=1842007&r2=1842008&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/editor/FulltextDocumentMaker.java (original)
+++ jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/editor/FulltextDocumentMaker.java Wed Sep 26 09:05:14 2018
@@ -52,20 +52,20 @@ import static org.apache.jackrabbit.oak.
 /**
  * Abstract implementation of a {@link DocumentMaker}.
  *
- * @param <D> the type of documents to be indexed specific to subclasses implementations
+ * D is the type of entities / documents to be indexed specific to subclasses implementations.
  */
 public abstract class FulltextDocumentMaker<D> implements DocumentMaker<D> {
 
     private final Logger log = LoggerFactory.getLogger(getClass());
 
-    protected final FulltextBinaryTextExtractor textExtractor;
+    private final FulltextBinaryTextExtractor textExtractor;
     protected final IndexDefinition definition;
     protected final IndexDefinition.IndexingRule indexingRule;
     protected final String path;
 
     public FulltextDocumentMaker(@Nullable FulltextBinaryTextExtractor textExtractor,
                                @NotNull IndexDefinition definition,
-                               @NotNull IndexDefinition.IndexingRule indexingRule,
+                               IndexDefinition.IndexingRule indexingRule,
                                @NotNull String path) {
         this.textExtractor = textExtractor;
         this.definition = checkNotNull(definition);
@@ -75,7 +75,7 @@ public abstract class FulltextDocumentMa
 
     protected abstract D initDoc();
 
-    protected abstract D finalizeDoc(D fields, boolean dirty, boolean facet) throws IOException;
+    protected abstract D finalizeDoc(D doc, boolean dirty, boolean facet) throws IOException;
 
     protected abstract boolean isFacetingEnabled();
 
@@ -420,13 +420,12 @@ public abstract class FulltextDocumentMa
         return dirty;
     }
 
-    /**
+    /*
      * Determine if the property as defined by PropertyDefinition exists or not.
      *
-     * <p>For relative property if the intermediate nodes do not exist then property is
-     * <bold>not</bold> considered to be null</p>
+     * For relative property if the intermediate nodes do not exist then property is
+     * not considered to be null
      *
-     * @return true if the property does not exist
      */
     private boolean isPropertyNull(NodeState state, PropertyDefinition pd){
         NodeState propertyNode = getPropertyNode(state, pd);
@@ -436,13 +435,11 @@ public abstract class FulltextDocumentMa
         return !propertyNode.hasProperty(pd.nonRelativeName);
     }
 
-    /**
+    /*
      * Determine if the property as defined by PropertyDefinition exists or not.
      *
-     * <p>For relative property if the intermediate nodes do not exist then property is
-     * considered to be null</p>
-     *
-     * @return true if the property exists
+     * For relative property if the intermediate nodes do not exist then property is
+     * considered to be null
      */
     private boolean isPropertyNotNull(NodeState state, PropertyDefinition pd){
         NodeState propertyNode = getPropertyNode(state, pd);
@@ -463,22 +460,17 @@ public abstract class FulltextDocumentMa
         return node;
     }
 
-    /**
+    /*
      * index aggregates on a certain path
-     * @param path the path of the node
-     * @param fields the list of fields
-     * @param state the node state
-     * @return an array of booleans whose first element is {@code true} if any indexing has happened
-     * and the second element is {@code true} if facets on any (aggregate) property have been indexed
      */
-    private boolean[] indexAggregates(final String path, final D fields,
+    private boolean[] indexAggregates(final String path, final D document,
                                     final NodeState state) {
         final AtomicBoolean dirtyFlag = new AtomicBoolean();
         final AtomicBoolean facetFlag = new AtomicBoolean();
         indexingRule.getAggregate().collectAggregates(state, new Aggregate.ResultCollector() {
             @Override
             public void onResult(Aggregate.NodeIncludeResult result) {
-                boolean dirty = indexAggregatedNode(path, fields, result);
+                boolean dirty = indexAggregatedNode(path, document, result);
                 if (dirty) {
                     dirtyFlag.set(true);
                 }
@@ -488,10 +480,10 @@ public abstract class FulltextDocumentMa
             public void onResult(Aggregate.PropertyIncludeResult result) {
                 boolean dirty = false;
                 if (result.pd.ordered) {
-                    dirty |= addTypedOrderedFields(fields, result.propertyState,
+                    dirty |= addTypedOrderedFields(document, result.propertyState,
                             result.propertyPath, result.pd);
                 }
-                dirty |= indexProperty(path, fields, state, result.propertyState,
+                dirty |= indexProperty(path, document, state, result.propertyState,
                         result.propertyPath, result.pd);
 
                 if (result.pd.facet) {
@@ -504,13 +496,10 @@ public abstract class FulltextDocumentMa
         });
         return new boolean[]{dirtyFlag.get(), facetFlag.get()};
     }
-    /**
+
+    /*
      * Create the fulltext field from the aggregated nodes. If result is for aggregate for a relative node
      * include then
-     * @param path current node path
-     * @param doc document
-     * @param result aggregate result
-     * @return true if a field was created for passed node result
      */
     private boolean indexAggregatedNode(String path, D doc, Aggregate.NodeIncludeResult result) {
         //rule for node being aggregated might be null if such nodes
@@ -579,10 +568,8 @@ public abstract class FulltextDocumentMa
         return definition.getIndexName();
     }
 
-    /**
+    /*
      * Extracts the local name of the current node ignoring any namespace prefix
-     *
-     * @param name node name
      */
     private void addNodeNameField(D doc, String name) {
         //TODO Need to check if it covers all cases

Modified: jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/editor/FulltextIndexEditor.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/editor/FulltextIndexEditor.java?rev=1842008&r1=1842007&r2=1842008&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/editor/FulltextIndexEditor.java (original)
+++ jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/editor/FulltextIndexEditor.java Wed Sep 26 09:05:14 2018
@@ -55,20 +55,20 @@ public class FulltextIndexEditor<D> impl
 
   private final FulltextIndexEditorContext<D> context;
 
-  /** Name of this node, or {@code null} for the root node. */
+  /* Name of this node, or {@code null} for the root node. */
   private final String name;
 
-  /** Parent editor or {@code null} if this is the root editor. */
+  /* Parent editor or {@code null} if this is the root editor. */
   private final FulltextIndexEditor parent;
 
-  /** Path of this editor, built lazily in {@link #getPath()}. */
+  /* Path of this editor, built lazily in {@link #getPath()}. */
   private String path;
 
   private boolean propertiesChanged = false;
 
   private final List<PropertyState> propertiesModified = Lists.newArrayList();
 
-  /**
+  /*
    * Flag indicating if the current tree being traversed has a deleted parent.
    */
   private final boolean isDeleted;
@@ -304,7 +304,7 @@ public class FulltextIndexEditor<D> impl
   }
 
 
-  /**
+  /*
    * Determines which all matchers are affected by this property change
    *
    * @param name modified property name

Modified: jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/editor/FulltextIndexWriter.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/editor/FulltextIndexWriter.java?rev=1842008&r1=1842007&r2=1842008&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/editor/FulltextIndexWriter.java (original)
+++ jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/editor/FulltextIndexWriter.java Wed Sep 26 09:05:14 2018
@@ -22,10 +22,10 @@ package org.apache.jackrabbit.oak.plugin
 import java.io.IOException;
 
 /**
- * A {@link FulltextIndexWriter} is responsible for writing / deleting documents of type {@code D} to the index
+ * A {@link FulltextIndexWriter} is responsible for writing / deleting documents of type D to the index
  * implementation underlying persistence layer.
  *
- * @param <D>
+ *
  */
 public interface FulltextIndexWriter<D> {
 

Modified: jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/query/FulltextIndexPlanner.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/query/FulltextIndexPlanner.java?rev=1842008&r1=1842007&r2=1842008&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/query/FulltextIndexPlanner.java (original)
+++ jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/query/FulltextIndexPlanner.java Wed Sep 26 09:05:14 2018
@@ -71,9 +71,8 @@ public class FulltextIndexPlanner {
 
     public static final int DEFAULT_PROPERTY_WEIGHT = Integer.getInteger("oak.fulltext.defaultPropertyWeight", 5);
 
-
     /**
-     * IndexPaln Attribute name which refers to the name of the fields that should be used for facets.
+     * IndexPlan Attribute name which refers to the name of the fields that should be used for facets.
      */
     public static final String ATTR_FACET_FIELDS = "oak.facet.fields";
 
@@ -410,10 +409,9 @@ public class FulltextIndexPlanner {
         return canHandleNativeFunction ? defaultPlan().setEstimatedEntryCount(1) : null;
     }
 
-    /**
+    /*
      * Check if there is a mismatch between QueryPaths associated with index
      * and path restriction specified in query
-
      * @return true if QueryPaths and path restrictions do not have any conflict
      */
     private boolean checkForQueryPaths() {
@@ -569,7 +567,7 @@ public class FulltextIndexPlanner {
         return true;
     }
 
-    /**
+    /*
      * Computes the indexedProps which can be part of query by virtue of relativizing i.e.
      * if query is on jcr:content/keyword then perform search on keyword and change parent
      * path to jcr:content
@@ -907,7 +905,7 @@ public class FulltextIndexPlanner {
         return true;
     }
 
-    /**
+    /*
      * Determine if the propertyName of a fulltext term indicates current node
      * @param propertyName property name in the full text term clause
      */

Modified: jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/query/FulltextIndexTracker.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/query/FulltextIndexTracker.java?rev=1842008&r1=1842007&r2=1842008&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/query/FulltextIndexTracker.java (original)
+++ jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/query/FulltextIndexTracker.java Wed Sep 26 09:05:14 2018
@@ -57,7 +57,6 @@ import static org.apache.jackrabbit.oak.
 
 public abstract class FulltextIndexTracker {
 
-    /** Logger instance. */
     private static final Logger log = LoggerFactory.getLogger(FulltextIndexTracker.class);
     private static final PerfLogger PERF_LOGGER =
             new PerfLogger(LoggerFactory.getLogger(FulltextIndexTracker.class.getName() + ".perf"));