NIFI-1196 Providing handling of FETCH provenance events for their "unique" 
property, transit URI, within the framework and UI.

Reviewed by Tony Kurc ([email protected])


Project: http://git-wip-us.apache.org/repos/asf/nifi/repo
Commit: http://git-wip-us.apache.org/repos/asf/nifi/commit/08d59e43
Tree: http://git-wip-us.apache.org/repos/asf/nifi/tree/08d59e43
Diff: http://git-wip-us.apache.org/repos/asf/nifi/diff/08d59e43

Branch: refs/heads/NIFI-655
Commit: 08d59e437462dfcec3e1f7347bcd6941ee47818a
Parents: 40dd8a0
Author: Aldrin Piri <[email protected]>
Authored: Thu Nov 19 02:52:01 2015 -0500
Committer: Aldrin Piri <[email protected]>
Committed: Thu Nov 19 17:42:15 2015 -0500

----------------------------------------------------------------------
 .../java/org/apache/nifi/provenance/StandardLineageResult.java  | 1 +
 .../apache/nifi/provenance/StandardProvenanceEventRecord.java   | 1 +
 .../nifi/controller/repository/StandardProcessSession.java      | 4 +++-
 .../src/main/webapp/js/nf/provenance/nf-provenance-table.js     | 5 +++++
 .../java/org/apache/nifi/provenance/StandardRecordReader.java   | 2 ++
 .../java/org/apache/nifi/provenance/StandardRecordWriter.java   | 2 ++
 6 files changed, 14 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/nifi/blob/08d59e43/nifi-commons/nifi-data-provenance-utils/src/main/java/org/apache/nifi/provenance/StandardLineageResult.java
----------------------------------------------------------------------
diff --git 
a/nifi-commons/nifi-data-provenance-utils/src/main/java/org/apache/nifi/provenance/StandardLineageResult.java
 
b/nifi-commons/nifi-data-provenance-utils/src/main/java/org/apache/nifi/provenance/StandardLineageResult.java
index 63c53d0..cf16fc0 100644
--- 
a/nifi-commons/nifi-data-provenance-utils/src/main/java/org/apache/nifi/provenance/StandardLineageResult.java
+++ 
b/nifi-commons/nifi-data-provenance-utils/src/main/java/org/apache/nifi/provenance/StandardLineageResult.java
@@ -288,6 +288,7 @@ public class StandardLineageResult implements 
ComputeLineageResult {
                 }
                 break;
                 case RECEIVE:
+                case FETCH:
                 case CREATE: {
                     // for a receive event, we want to create a FlowFile Node 
that represents the FlowFile received
                     // and create an edge from the Receive Event to the 
FlowFile Node

http://git-wip-us.apache.org/repos/asf/nifi/blob/08d59e43/nifi-commons/nifi-data-provenance-utils/src/main/java/org/apache/nifi/provenance/StandardProvenanceEventRecord.java
----------------------------------------------------------------------
diff --git 
a/nifi-commons/nifi-data-provenance-utils/src/main/java/org/apache/nifi/provenance/StandardProvenanceEventRecord.java
 
b/nifi-commons/nifi-data-provenance-utils/src/main/java/org/apache/nifi/provenance/StandardProvenanceEventRecord.java
index 4eb7001..b504b04 100644
--- 
a/nifi-commons/nifi-data-provenance-utils/src/main/java/org/apache/nifi/provenance/StandardProvenanceEventRecord.java
+++ 
b/nifi-commons/nifi-data-provenance-utils/src/main/java/org/apache/nifi/provenance/StandardProvenanceEventRecord.java
@@ -728,6 +728,7 @@ public final class StandardProvenanceEventRecord implements 
ProvenanceEventRecor
                     }
                     break;
                 case RECEIVE:
+                case FETCH:
                 case SEND:
                     assertSet(transitUri, "Transit URI");
                     break;

http://git-wip-us.apache.org/repos/asf/nifi/blob/08d59e43/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardProcessSession.java
----------------------------------------------------------------------
diff --git 
a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardProcessSession.java
 
b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardProcessSession.java
index 2ab90cd..d447ddd 100644
--- 
a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardProcessSession.java
+++ 
b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardProcessSession.java
@@ -457,6 +457,7 @@ public final class StandardProcessSession implements 
ProcessSession, ProvenanceE
                     bytesSent += event.getFileSize();
                     break;
                 case RECEIVE:
+                case FETCH:
                     flowFilesReceived++;
                     bytesReceived += event.getFileSize();
                     break;
@@ -616,7 +617,8 @@ public final class StandardProcessSession implements 
ProcessSession, ProvenanceE
                     if (registeredTypes.contains(ProvenanceEventType.CREATE)
                         || registeredTypes.contains(ProvenanceEventType.FORK)
                         || registeredTypes.contains(ProvenanceEventType.JOIN)
-                        || 
registeredTypes.contains(ProvenanceEventType.RECEIVE)) {
+                        || 
registeredTypes.contains(ProvenanceEventType.RECEIVE)
+                        || 
registeredTypes.contains(ProvenanceEventType.FETCH)) {
                         creationEventRegistered = true;
                     }
                 }

http://git-wip-us.apache.org/repos/asf/nifi/blob/08d59e43/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/provenance/nf-provenance-table.js
----------------------------------------------------------------------
diff --git 
a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/provenance/nf-provenance-table.js
 
b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/provenance/nf-provenance-table.js
index 1e5550c..faa6adc 100644
--- 
a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/provenance/nf-provenance-table.js
+++ 
b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/provenance/nf-provenance-table.js
@@ -1203,6 +1203,11 @@ nf.ProvenanceTable = (function () {
                 formatEventDetail('Relationship', event.relationship);
             }
 
+            // conditionally show FETCH details
+            if (event.eventType === 'FETCH') {
+                formatEventDetail('Transit Uri', event.transitUri);
+            }
+
             // conditionally show the cluster node identifier
             if (nf.Common.isDefinedAndNotNull(event.clusterNodeId)) {
                 // save the cluster node id

http://git-wip-us.apache.org/repos/asf/nifi/blob/08d59e43/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/src/main/java/org/apache/nifi/provenance/StandardRecordReader.java
----------------------------------------------------------------------
diff --git 
a/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/src/main/java/org/apache/nifi/provenance/StandardRecordReader.java
 
b/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/src/main/java/org/apache/nifi/provenance/StandardRecordReader.java
index 42bc8e9..a9d7bf7 100644
--- 
a/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/src/main/java/org/apache/nifi/provenance/StandardRecordReader.java
+++ 
b/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/src/main/java/org/apache/nifi/provenance/StandardRecordReader.java
@@ -347,6 +347,8 @@ public class StandardRecordReader implements RecordReader {
         } else if (eventType == ProvenanceEventType.RECEIVE) {
             builder.setTransitUri(readNullableString(dis));
             builder.setSourceSystemFlowFileIdentifier(readNullableString(dis));
+        } else if (eventType == ProvenanceEventType.FETCH) {
+            builder.setTransitUri(readNullableString(dis));
         } else if (eventType == ProvenanceEventType.SEND) {
             builder.setTransitUri(readNullableString(dis));
         } else if (eventType == ProvenanceEventType.ADDINFO) {

http://git-wip-us.apache.org/repos/asf/nifi/blob/08d59e43/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/src/main/java/org/apache/nifi/provenance/StandardRecordWriter.java
----------------------------------------------------------------------
diff --git 
a/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/src/main/java/org/apache/nifi/provenance/StandardRecordWriter.java
 
b/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/src/main/java/org/apache/nifi/provenance/StandardRecordWriter.java
index ad3c6e2..981301e 100644
--- 
a/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/src/main/java/org/apache/nifi/provenance/StandardRecordWriter.java
+++ 
b/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/src/main/java/org/apache/nifi/provenance/StandardRecordWriter.java
@@ -235,6 +235,8 @@ public class StandardRecordWriter implements RecordWriter {
             } else if (recordType == ProvenanceEventType.RECEIVE) {
                 writeNullableString(out, record.getTransitUri());
                 writeNullableString(out, 
record.getSourceSystemFlowFileIdentifier());
+            } else if (recordType == ProvenanceEventType.FETCH) {
+                writeNullableString(out, record.getTransitUri());
             } else if (recordType == ProvenanceEventType.SEND) {
                 writeNullableString(out, record.getTransitUri());
             } else if (recordType == ProvenanceEventType.ADDINFO) {

Reply via email to