Github user JohannesDaniel commented on a diff in the pull request:
https://github.com/apache/nifi/pull/2199#discussion_r145719121
--- Diff:
nifi-nar-bundles/nifi-solr-bundle/nifi-solr-processors/src/main/java/org/apache/nifi/processors/solr/GetSolr.java
---
@@ -66,42 +79,72 @@
import org.apache.solr.common.SolrDocument;
import org.apache.solr.common.SolrDocumentList;
import org.apache.solr.common.SolrInputDocument;
+import org.apache.solr.common.params.CursorMarkParams;
-@Tags({"Apache", "Solr", "Get", "Pull"})
+@Tags({"Apache", "Solr", "Get", "Pull", "Records"})
@InputRequirement(Requirement.INPUT_FORBIDDEN)
-@CapabilityDescription("Queries Solr and outputs the results as a
FlowFile")
+@CapabilityDescription("Queries Solr and outputs the results as a FlowFile
in the format of XML or using a Record Writer")
+@Stateful(scopes = {Scope.CLUSTER}, description = "Stores latest date of
Date Field so that the same data will not be fetched multiple times.")
public class GetSolr extends SolrProcessor {
- public static final PropertyDescriptor SOLR_QUERY = new
PropertyDescriptor
- .Builder().name("Solr Query")
- .description("A query to execute against Solr")
+ public static final String STATE_MANAGER_FILTER =
"stateManager_filter";
+ public static final String STATE_MANAGER_CURSOR_MARK =
"stateManager_cursorMark";
+ public static final AllowableValue MODE_XML = new
AllowableValue("XML");
+ public static final AllowableValue MODE_REC = new
AllowableValue("Records");
--- End diff --
The difficulty with this is that Solr provides various different field
types for different kinds of data. For instance, an integer could be derived
from an Int, TrieInt (version < 7.0) or Pint (version >= 7.0) field. This
requires a comprehensive fieldtype-datatype mapping.
---