NIFI-388: added getAttribute(String) method to ProvenanceEventRecord

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

Branch: refs/heads/prov-query-language
Commit: a2219eb753e118e3d2c70d5a3d99f39935db1f1a
Parents: 57ba3bc
Author: Mark Payne <[email protected]>
Authored: Mon Mar 2 14:12:03 2015 -0500
Committer: Mark Payne <[email protected]>
Committed: Mon Mar 2 14:12:03 2015 -0500

----------------------------------------------------------------------
 .../nifi/provenance/ProvenanceEventRecord.java       |  8 ++++++++
 .../nifi/provenance/IdEnrichedProvenanceEvent.java   |  4 ++++
 .../provenance/StandardProvenanceEventRecord.java    | 15 +++++++++------
 .../journaling/IdEnrichedProvenanceEvent.java        |  5 +++++
 .../journaling/JournaledProvenanceEvent.java         |  4 ++++
 5 files changed, 30 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/a2219eb7/nifi/nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceEventRecord.java
----------------------------------------------------------------------
diff --git 
a/nifi/nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceEventRecord.java
 
b/nifi/nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceEventRecord.java
index 4b1b1a0..4e83e30 100644
--- 
a/nifi/nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceEventRecord.java
+++ 
b/nifi/nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceEventRecord.java
@@ -98,6 +98,14 @@ public interface ProvenanceEventRecord {
      * @return
      */
     Map<String, String> getAttributes();
+    
+    /**
+     * Returns the value of FlowFile attribute with the given name, or 
<code>null</code>
+     * if no attribute exists with that name
+     * 
+     * @return
+     */
+    String getAttribute(String attributeName);
 
     /**
      * Returns all FlowFile attributes that existed on the FlowFile before this

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/a2219eb7/nifi/nifi-commons/nifi-data-provenance-utils/src/main/java/org/apache/nifi/provenance/IdEnrichedProvenanceEvent.java
----------------------------------------------------------------------
diff --git 
a/nifi/nifi-commons/nifi-data-provenance-utils/src/main/java/org/apache/nifi/provenance/IdEnrichedProvenanceEvent.java
 
b/nifi/nifi-commons/nifi-data-provenance-utils/src/main/java/org/apache/nifi/provenance/IdEnrichedProvenanceEvent.java
index 4ef0e5d..85ce91c 100644
--- 
a/nifi/nifi-commons/nifi-data-provenance-utils/src/main/java/org/apache/nifi/provenance/IdEnrichedProvenanceEvent.java
+++ 
b/nifi/nifi-commons/nifi-data-provenance-utils/src/main/java/org/apache/nifi/provenance/IdEnrichedProvenanceEvent.java
@@ -80,6 +80,10 @@ public class IdEnrichedProvenanceEvent implements 
StoredProvenanceEvent {
         return event.getEventType();
     }
 
+    public String getAttribute(final String attributeName) {
+        return event.getAttribute(attributeName);
+    }
+    
     public Map<String, String> getAttributes() {
         return event.getAttributes();
     }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/a2219eb7/nifi/nifi-commons/nifi-data-provenance-utils/src/main/java/org/apache/nifi/provenance/StandardProvenanceEventRecord.java
----------------------------------------------------------------------
diff --git 
a/nifi/nifi-commons/nifi-data-provenance-utils/src/main/java/org/apache/nifi/provenance/StandardProvenanceEventRecord.java
 
b/nifi/nifi-commons/nifi-data-provenance-utils/src/main/java/org/apache/nifi/provenance/StandardProvenanceEventRecord.java
index cfbae88..bd2c2ad 100644
--- 
a/nifi/nifi-commons/nifi-data-provenance-utils/src/main/java/org/apache/nifi/provenance/StandardProvenanceEventRecord.java
+++ 
b/nifi/nifi-commons/nifi-data-provenance-utils/src/main/java/org/apache/nifi/provenance/StandardProvenanceEventRecord.java
@@ -161,6 +161,15 @@ public final class StandardProvenanceEventRecord 
implements ProvenanceEventRecor
     }
 
     @Override
+    public String getAttribute(final String attributeName) {
+        if ( updatedAttributes.containsKey(attributeName) ) {
+            return updatedAttributes.get(attributeName);
+        }
+        
+        return previousAttributes.get(attributeName);
+    }
+    
+    @Override
     public Map<String, String> getAttributes() {
         final Map<String, String> allAttrs = new 
HashMap<>(previousAttributes.size() + updatedAttributes.size());
         allAttrs.putAll(previousAttributes);
@@ -424,7 +433,6 @@ public final class StandardProvenanceEventRecord implements 
ProvenanceEventRecor
         private String uuid = null;
         private List<String> parentUuids = null;
         private List<String> childrenUuids = null;
-        private String contentType = null;
         private String alternateIdentifierUri = null;
         private String details = null;
         private String relationship = null;
@@ -631,11 +639,6 @@ public final class StandardProvenanceEventRecord 
implements ProvenanceEventRecor
             return this;
         }
 
-        public Builder setContentType(String contentType) {
-            this.contentType = contentType;
-            return this;
-        }
-
         @Override
         public Builder setAlternateIdentifierUri(String 
alternateIdentifierUri) {
             this.alternateIdentifierUri = alternateIdentifierUri;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/a2219eb7/nifi/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-journaling-provenance-repository/src/main/java/org/apache/nifi/provenance/journaling/IdEnrichedProvenanceEvent.java
----------------------------------------------------------------------
diff --git 
a/nifi/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-journaling-provenance-repository/src/main/java/org/apache/nifi/provenance/journaling/IdEnrichedProvenanceEvent.java
 
b/nifi/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-journaling-provenance-repository/src/main/java/org/apache/nifi/provenance/journaling/IdEnrichedProvenanceEvent.java
index f9bc76a..0e070d8 100644
--- 
a/nifi/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-journaling-provenance-repository/src/main/java/org/apache/nifi/provenance/journaling/IdEnrichedProvenanceEvent.java
+++ 
b/nifi/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-journaling-provenance-repository/src/main/java/org/apache/nifi/provenance/journaling/IdEnrichedProvenanceEvent.java
@@ -75,6 +75,11 @@ public class IdEnrichedProvenanceEvent implements 
ProvenanceEventRecord {
         return event.getEventType();
     }
 
+    @Override
+    public String getAttribute(final String attributeName) {
+        return event.getAttribute(attributeName);
+    }
+    
     public Map<String, String> getAttributes() {
         return event.getAttributes();
     }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/a2219eb7/nifi/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-journaling-provenance-repository/src/main/java/org/apache/nifi/provenance/journaling/JournaledProvenanceEvent.java
----------------------------------------------------------------------
diff --git 
a/nifi/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-journaling-provenance-repository/src/main/java/org/apache/nifi/provenance/journaling/JournaledProvenanceEvent.java
 
b/nifi/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-journaling-provenance-repository/src/main/java/org/apache/nifi/provenance/journaling/JournaledProvenanceEvent.java
index ac68495..55749f9 100644
--- 
a/nifi/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-journaling-provenance-repository/src/main/java/org/apache/nifi/provenance/journaling/JournaledProvenanceEvent.java
+++ 
b/nifi/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-journaling-provenance-repository/src/main/java/org/apache/nifi/provenance/journaling/JournaledProvenanceEvent.java
@@ -74,6 +74,10 @@ public class JournaledProvenanceEvent implements 
StoredProvenanceEvent {
     public ProvenanceEventType getEventType() {
         return event.getEventType();
     }
+    
+    public String getAttribute(final String attributeName) {
+        return event.getAttribute(attributeName);
+    }
 
     public Map<String, String> getAttributes() {
         return event.getAttributes();

Reply via email to