This is an automated email from the ASF dual-hosted git repository.

joewitt pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nifi.git


The following commit(s) were added to refs/heads/master by this push:
     new fd7c014  NIFI-7184 - This closes #4074. Added mime type property to 
GenerateFlowFile
fd7c014 is described below

commit fd7c01453bd9512d836568ef9aae1fd0dd2bc0a2
Author: Pierre Villard <[email protected]>
AuthorDate: Fri Feb 21 19:06:12 2020 -0800

    NIFI-7184 - This closes #4074. Added mime type property to GenerateFlowFile
    
    Signed-off-by: Joe Witt <[email protected]>
---
 .../apache/nifi/processors/standard/GenerateFlowFile.java   | 13 +++++++++++++
 .../nifi/processors/standard/TestGenerateFlowFile.java      |  6 +++++-
 2 files changed, 18 insertions(+), 1 deletion(-)

diff --git 
a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/GenerateFlowFile.java
 
b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/GenerateFlowFile.java
index 1d7ed35..73f607d 100644
--- 
a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/GenerateFlowFile.java
+++ 
b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/GenerateFlowFile.java
@@ -43,6 +43,7 @@ import org.apache.nifi.components.ValidationResult;
 import org.apache.nifi.expression.AttributeExpression;
 import org.apache.nifi.expression.ExpressionLanguageScope;
 import org.apache.nifi.flowfile.FlowFile;
+import org.apache.nifi.flowfile.attributes.CoreAttributes;
 import org.apache.nifi.processor.AbstractProcessor;
 import org.apache.nifi.processor.DataUnit;
 import org.apache.nifi.processor.ProcessContext;
@@ -115,6 +116,13 @@ public class GenerateFlowFile extends AbstractProcessor {
             .defaultValue("UTF-8")
             .addValidator(StandardValidators.CHARACTER_SET_VALIDATOR)
             .build();
+    public static final PropertyDescriptor MIME_TYPE = new 
PropertyDescriptor.Builder()
+            .name("mime-type")
+            .displayName("Mime Type")
+            .description("Specifies the value to set for the \"mime.type\" 
attribute.")
+            .required(false)
+            .addValidator(StandardValidators.NON_EMPTY_VALIDATOR)
+            .build();
 
     public static final Relationship SUCCESS = new Relationship.Builder()
             .name("success")
@@ -134,6 +142,7 @@ public class GenerateFlowFile extends AbstractProcessor {
         descriptors.add(UNIQUE_FLOWFILES);
         descriptors.add(CUSTOM_TEXT);
         descriptors.add(CHARSET);
+        descriptors.add(MIME_TYPE);
         this.descriptors = Collections.unmodifiableList(descriptors);
 
         final Set<Relationship> relationships = new HashSet<>();
@@ -226,6 +235,10 @@ public class GenerateFlowFile extends AbstractProcessor {
             }
         }
 
+        if(context.getProperty(MIME_TYPE).isSet()) {
+            generatedAttributes.put(CoreAttributes.MIME_TYPE.key(), 
context.getProperty(MIME_TYPE).getValue());
+        }
+
         for (int i = 0; i < context.getProperty(BATCH_SIZE).asInteger(); i++) {
             FlowFile flowFile = session.create();
             if (data.length > 0) {
diff --git 
a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestGenerateFlowFile.java
 
b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestGenerateFlowFile.java
index ca7de0c..9a22d61 100644
--- 
a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestGenerateFlowFile.java
+++ 
b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestGenerateFlowFile.java
@@ -38,7 +38,9 @@ public class TestGenerateFlowFile {
         runner.run();
 
         runner.assertTransferCount(GenerateFlowFile.SUCCESS, 1);
-        
runner.getFlowFilesForRelationship(GenerateFlowFile.SUCCESS).get(0).assertContentEquals("This
 is my custom text!");
+        MockFlowFile generatedFlowFile = 
runner.getFlowFilesForRelationship(GenerateFlowFile.SUCCESS).get(0);
+        generatedFlowFile.assertContentEquals("This is my custom text!");
+        generatedFlowFile.assertAttributeNotExists("mime.type");
     }
 
     @Test
@@ -59,6 +61,7 @@ public class TestGenerateFlowFile {
         TestRunner runner = TestRunners.newTestRunner(new GenerateFlowFile());
         runner.setProperty(GenerateFlowFile.FILE_SIZE, "1B");
         runner.setProperty(GenerateFlowFile.DATA_FORMAT, 
GenerateFlowFile.DATA_FORMAT_TEXT);
+        runner.setProperty(GenerateFlowFile.MIME_TYPE, "application/text");
         runner.setProperty("plain.dynamic.property", "Plain Value");
         runner.setProperty("expression.dynamic.property", 
"${literal('Expression Value')}");
         runner.assertValid();
@@ -69,6 +72,7 @@ public class TestGenerateFlowFile {
         MockFlowFile generatedFlowFile = 
runner.getFlowFilesForRelationship(GenerateFlowFile.SUCCESS).get(0);
         generatedFlowFile.assertAttributeEquals("plain.dynamic.property", 
"Plain Value");
         generatedFlowFile.assertAttributeEquals("expression.dynamic.property", 
"Expression Value");
+        generatedFlowFile.assertAttributeEquals("mime.type", 
"application/text");
     }
 
 }
\ No newline at end of file

Reply via email to