[jira] [Commented] (NIFI-1899) Create ListenSMTP & ExtractEmailAttachment processors

2016-07-08 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/NIFI-1899?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15368834#comment-15368834
 ] 

ASF GitHub Bot commented on NIFI-1899:
--

Github user trixpan commented on a diff in the pull request:

https://github.com/apache/nifi/pull/483#discussion_r70158696
  
--- Diff: 
nifi-nar-bundles/nifi-email-bundle/nifi-email-processors/src/test/java/org/apache/nifi/processors/TestExtractEmailAttachments.java
 ---
@@ -0,0 +1,84 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.nifi.processors;
--- End diff --

fixed


> Create ListenSMTP & ExtractEmailAttachment processors
> -
>
> Key: NIFI-1899
> URL: https://issues.apache.org/jira/browse/NIFI-1899
> Project: Apache NiFi
>  Issue Type: New Feature
>Reporter: Andre
>




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (NIFI-1899) Create ListenSMTP & ExtractEmailAttachment processors

2016-07-08 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/NIFI-1899?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15368803#comment-15368803
 ] 

ASF GitHub Bot commented on NIFI-1899:
--

Github user trixpan commented on a diff in the pull request:

https://github.com/apache/nifi/pull/483#discussion_r70157808
  
--- Diff: 
nifi-nar-bundles/nifi-email-bundle/nifi-email-processors/src/main/java/org/apache/nifi/processors/email/ExtractEmailHeaders.java
 ---
@@ -0,0 +1,233 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.nifi.processors.email;
+
+
+import org.apache.commons.lang3.ArrayUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.mail.util.MimeMessageParser;
+import org.apache.nifi.annotation.behavior.EventDriven;
+import org.apache.nifi.annotation.behavior.InputRequirement;
+import org.apache.nifi.annotation.behavior.InputRequirement.Requirement;
+import org.apache.nifi.annotation.behavior.SideEffectFree;
+import org.apache.nifi.annotation.behavior.WritesAttribute;
+import org.apache.nifi.annotation.behavior.WritesAttributes;
+import org.apache.nifi.annotation.documentation.CapabilityDescription;
+import org.apache.nifi.annotation.documentation.Tags;
+import org.apache.nifi.components.PropertyDescriptor;
+import org.apache.nifi.flowfile.FlowFile;
+import org.apache.nifi.logging.ComponentLog;
+import org.apache.nifi.processor.AbstractProcessor;
+import org.apache.nifi.processor.ProcessContext;
+import org.apache.nifi.processor.ProcessSession;
+import org.apache.nifi.processor.ProcessorInitializationContext;
+import org.apache.nifi.processor.Relationship;
+import org.apache.nifi.processor.io.InputStreamCallback;
+import org.apache.nifi.processor.util.StandardValidators;
+import org.apache.nifi.stream.io.BufferedInputStream;
+
+import javax.mail.Address;
+import javax.mail.Header;
+import javax.mail.Message;
+import javax.mail.MessagingException;
+import javax.mail.Session;
+import javax.mail.internet.MimeMessage;
+import java.io.IOException;
+import java.io.InputStream;
+import java.lang.reflect.Array;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.Date;
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Properties;
+import java.util.Set;
+
+
+@EventDriven
+@SideEffectFree
+@Tags({"split", "email"})
+@InputRequirement(Requirement.INPUT_REQUIRED)
+@CapabilityDescription("Using the flowfile content as source of data, 
extract header from an RFC  compliant  email file adding the relevant 
attributes to the flowfile. " +
+"This processor does not perform extensive RFC validation but 
still requires a bare minimum compliance with RFC 2822")
+@WritesAttributes({
+@WritesAttribute(attribute = "email.headers.bcc.*", description = 
"Each individual BCC recipient (if available)"),
+@WritesAttribute(attribute = "email.headers.cc.*", description = 
"Each individual CC recipient (if available)"),
+@WritesAttribute(attribute = "email.headers.from.*", description = 
"Each individual mailbox contained in the From  of the Email (array as per 
RFC-2822)"),
+@WritesAttribute(attribute = "email.headers.message-id", 
description = "The value of the Message-ID header (if available)"),
+@WritesAttribute(attribute = "email.headers.received_date", 
description = "The Received-Date of the message (if available)"),
+@WritesAttribute(attribute = "email.headers.sent_date", 
description = "Date the message was sent"),
+@WritesAttribute(attribute = "email.headers.subject", description 
= "Subject of the message (if available)"),
+@WritesAttribute(attribute = "email.headers.to.*", description = 
"Each individual TO recipient (if 

[jira] [Commented] (NIFI-1899) Create ListenSMTP & ExtractEmailAttachment processors

2016-07-08 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/NIFI-1899?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15368794#comment-15368794
 ] 

ASF GitHub Bot commented on NIFI-1899:
--

Github user trixpan commented on a diff in the pull request:

https://github.com/apache/nifi/pull/483#discussion_r70157622
  
--- Diff: 
nifi-nar-bundles/nifi-email-bundle/nifi-email-processors/src/main/java/org/apache/nifi/processors/email/ExtractEmailHeaders.java
 ---
@@ -0,0 +1,233 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.nifi.processors.email;
+
+
+import org.apache.commons.lang3.ArrayUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.mail.util.MimeMessageParser;
+import org.apache.nifi.annotation.behavior.EventDriven;
+import org.apache.nifi.annotation.behavior.InputRequirement;
+import org.apache.nifi.annotation.behavior.InputRequirement.Requirement;
+import org.apache.nifi.annotation.behavior.SideEffectFree;
+import org.apache.nifi.annotation.behavior.WritesAttribute;
+import org.apache.nifi.annotation.behavior.WritesAttributes;
+import org.apache.nifi.annotation.documentation.CapabilityDescription;
+import org.apache.nifi.annotation.documentation.Tags;
+import org.apache.nifi.components.PropertyDescriptor;
+import org.apache.nifi.flowfile.FlowFile;
+import org.apache.nifi.logging.ComponentLog;
+import org.apache.nifi.processor.AbstractProcessor;
+import org.apache.nifi.processor.ProcessContext;
+import org.apache.nifi.processor.ProcessSession;
+import org.apache.nifi.processor.ProcessorInitializationContext;
+import org.apache.nifi.processor.Relationship;
+import org.apache.nifi.processor.io.InputStreamCallback;
+import org.apache.nifi.processor.util.StandardValidators;
+import org.apache.nifi.stream.io.BufferedInputStream;
+
+import javax.mail.Address;
+import javax.mail.Header;
+import javax.mail.Message;
+import javax.mail.MessagingException;
+import javax.mail.Session;
+import javax.mail.internet.MimeMessage;
+import java.io.IOException;
+import java.io.InputStream;
+import java.lang.reflect.Array;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.Date;
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Properties;
+import java.util.Set;
+
+
+@EventDriven
+@SideEffectFree
+@Tags({"split", "email"})
+@InputRequirement(Requirement.INPUT_REQUIRED)
+@CapabilityDescription("Using the flowfile content as source of data, 
extract header from an RFC  compliant  email file adding the relevant 
attributes to the flowfile. " +
+"This processor does not perform extensive RFC validation but 
still requires a bare minimum compliance with RFC 2822")
+@WritesAttributes({
+@WritesAttribute(attribute = "email.headers.bcc.*", description = 
"Each individual BCC recipient (if available)"),
+@WritesAttribute(attribute = "email.headers.cc.*", description = 
"Each individual CC recipient (if available)"),
+@WritesAttribute(attribute = "email.headers.from.*", description = 
"Each individual mailbox contained in the From  of the Email (array as per 
RFC-2822)"),
+@WritesAttribute(attribute = "email.headers.message-id", 
description = "The value of the Message-ID header (if available)"),
+@WritesAttribute(attribute = "email.headers.received_date", 
description = "The Received-Date of the message (if available)"),
+@WritesAttribute(attribute = "email.headers.sent_date", 
description = "Date the message was sent"),
+@WritesAttribute(attribute = "email.headers.subject", description 
= "Subject of the message (if available)"),
+@WritesAttribute(attribute = "email.headers.to.*", description = 
"Each individual TO recipient (if 

[jira] [Commented] (NIFI-2020) Enhance JoltTransformJSON processor to support custom transforms

2016-07-08 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/NIFI-2020?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15368796#comment-15368796
 ] 

ASF GitHub Bot commented on NIFI-2020:
--

Github user mattyb149 commented on a diff in the pull request:

https://github.com/apache/nifi/pull/564#discussion_r70157635
  
--- Diff: 
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/JoltTransformJSON.java
 ---
@@ -212,12 +279,40 @@ public void process(OutputStream out) throws 
IOException {
 
 @OnScheduled
 public void setup(final ProcessContext context) {
-Object specJson = null;
-if(context.getProperty(JOLT_SPEC).isSet() && 
!SORTR.getValue().equals(context.getProperty(JOLT_TRANSFORM).getValue())){
-specJson = 
JsonUtils.jsonToObject(context.getProperty(JOLT_SPEC).getValue(), 
DEFAULT_CHARSET);
+
+try{
+Object specJson = null;
+
+if(context.getProperty(MODULES).isSet()){
+customClassLoader = 
ClassLoaderUtils.getCustomClassLoader(context.getProperty(MODULES).getValue(),this.getClass().getClassLoader(),getJarFilenameFilter());
+}else{
+customClassLoader = null;
+}
+
+if(context.getProperty(JOLT_SPEC).isSet() && 
!SORTR.getValue().equals(context.getProperty(JOLT_TRANSFORM).getValue())){
+specJson = 
JsonUtils.jsonToObject(context.getProperty(JOLT_SPEC).getValue(), 
DEFAULT_CHARSET);
+}
+
+
if(CUSTOMR.getValue().equals(context.getProperty(JOLT_TRANSFORM).getValue())){
+transform = 
TransformFactory.getCustomTransform(customClassLoader,context.getProperty(CUSTOM_CLASS).getValue(),
 specJson);
+}else {
+transform = 
TransformFactory.getTransform(customClassLoader != null? customClassLoader : 
this.getClass().getClassLoader(),
+
context.getProperty(JOLT_TRANSFORM).getValue(), specJson);
+}
+
+} catch (Exception ex){
+getLogger().error("Unable to setup processor",ex);
 }
-transform = 
TransformFactory.getTransform(context.getProperty(JOLT_TRANSFORM).getValue(), 
specJson);
+
 }
 
+protected FilenameFilter getJarFilenameFilter(){
--- End diff --

Another spot where lambdas could be (but don't have to be) used


> Enhance JoltTransformJSON processor to support custom transforms
> 
>
> Key: NIFI-2020
> URL: https://issues.apache.org/jira/browse/NIFI-2020
> Project: Apache NiFi
>  Issue Type: New Feature
>  Components: Core Framework
>Affects Versions: 1.0.0
>Reporter: Yolanda M. Davis
>Assignee: Yolanda M. Davis
> Fix For: 1.0.0
>
>
> Jolt supports additional custom transforms via fully-qualified Java 
> classnames. Would like to provide the ability to support custom 
> transformation (via drop in jars) for the Jolt Transform processor.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] nifi pull request #483: NIFI-1899 - Introduce ExtractEmailAttachments and Ex...

2016-07-08 Thread trixpan
Github user trixpan commented on a diff in the pull request:

https://github.com/apache/nifi/pull/483#discussion_r70157622
  
--- Diff: 
nifi-nar-bundles/nifi-email-bundle/nifi-email-processors/src/main/java/org/apache/nifi/processors/email/ExtractEmailHeaders.java
 ---
@@ -0,0 +1,233 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.nifi.processors.email;
+
+
+import org.apache.commons.lang3.ArrayUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.mail.util.MimeMessageParser;
+import org.apache.nifi.annotation.behavior.EventDriven;
+import org.apache.nifi.annotation.behavior.InputRequirement;
+import org.apache.nifi.annotation.behavior.InputRequirement.Requirement;
+import org.apache.nifi.annotation.behavior.SideEffectFree;
+import org.apache.nifi.annotation.behavior.WritesAttribute;
+import org.apache.nifi.annotation.behavior.WritesAttributes;
+import org.apache.nifi.annotation.documentation.CapabilityDescription;
+import org.apache.nifi.annotation.documentation.Tags;
+import org.apache.nifi.components.PropertyDescriptor;
+import org.apache.nifi.flowfile.FlowFile;
+import org.apache.nifi.logging.ComponentLog;
+import org.apache.nifi.processor.AbstractProcessor;
+import org.apache.nifi.processor.ProcessContext;
+import org.apache.nifi.processor.ProcessSession;
+import org.apache.nifi.processor.ProcessorInitializationContext;
+import org.apache.nifi.processor.Relationship;
+import org.apache.nifi.processor.io.InputStreamCallback;
+import org.apache.nifi.processor.util.StandardValidators;
+import org.apache.nifi.stream.io.BufferedInputStream;
+
+import javax.mail.Address;
+import javax.mail.Header;
+import javax.mail.Message;
+import javax.mail.MessagingException;
+import javax.mail.Session;
+import javax.mail.internet.MimeMessage;
+import java.io.IOException;
+import java.io.InputStream;
+import java.lang.reflect.Array;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.Date;
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Properties;
+import java.util.Set;
+
+
+@EventDriven
+@SideEffectFree
+@Tags({"split", "email"})
+@InputRequirement(Requirement.INPUT_REQUIRED)
+@CapabilityDescription("Using the flowfile content as source of data, 
extract header from an RFC  compliant  email file adding the relevant 
attributes to the flowfile. " +
+"This processor does not perform extensive RFC validation but 
still requires a bare minimum compliance with RFC 2822")
+@WritesAttributes({
+@WritesAttribute(attribute = "email.headers.bcc.*", description = 
"Each individual BCC recipient (if available)"),
+@WritesAttribute(attribute = "email.headers.cc.*", description = 
"Each individual CC recipient (if available)"),
+@WritesAttribute(attribute = "email.headers.from.*", description = 
"Each individual mailbox contained in the From  of the Email (array as per 
RFC-2822)"),
+@WritesAttribute(attribute = "email.headers.message-id", 
description = "The value of the Message-ID header (if available)"),
+@WritesAttribute(attribute = "email.headers.received_date", 
description = "The Received-Date of the message (if available)"),
+@WritesAttribute(attribute = "email.headers.sent_date", 
description = "Date the message was sent"),
+@WritesAttribute(attribute = "email.headers.subject", description 
= "Subject of the message (if available)"),
+@WritesAttribute(attribute = "email.headers.to.*", description = 
"Each individual TO recipient (if available)"),
+@WritesAttribute(attribute = "email.attachment_count", description 
= "Number of attachments of the message" )})
+
+public class ExtractEmailHeaders extends AbstractProcessor {
+public static final 

[GitHub] nifi pull request #564: NIFI-2020 - Enhance JoltTransformJSON processor to s...

2016-07-08 Thread mattyb149
Github user mattyb149 commented on a diff in the pull request:

https://github.com/apache/nifi/pull/564#discussion_r70157635
  
--- Diff: 
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/JoltTransformJSON.java
 ---
@@ -212,12 +279,40 @@ public void process(OutputStream out) throws 
IOException {
 
 @OnScheduled
 public void setup(final ProcessContext context) {
-Object specJson = null;
-if(context.getProperty(JOLT_SPEC).isSet() && 
!SORTR.getValue().equals(context.getProperty(JOLT_TRANSFORM).getValue())){
-specJson = 
JsonUtils.jsonToObject(context.getProperty(JOLT_SPEC).getValue(), 
DEFAULT_CHARSET);
+
+try{
+Object specJson = null;
+
+if(context.getProperty(MODULES).isSet()){
+customClassLoader = 
ClassLoaderUtils.getCustomClassLoader(context.getProperty(MODULES).getValue(),this.getClass().getClassLoader(),getJarFilenameFilter());
+}else{
+customClassLoader = null;
+}
+
+if(context.getProperty(JOLT_SPEC).isSet() && 
!SORTR.getValue().equals(context.getProperty(JOLT_TRANSFORM).getValue())){
+specJson = 
JsonUtils.jsonToObject(context.getProperty(JOLT_SPEC).getValue(), 
DEFAULT_CHARSET);
+}
+
+
if(CUSTOMR.getValue().equals(context.getProperty(JOLT_TRANSFORM).getValue())){
+transform = 
TransformFactory.getCustomTransform(customClassLoader,context.getProperty(CUSTOM_CLASS).getValue(),
 specJson);
+}else {
+transform = 
TransformFactory.getTransform(customClassLoader != null? customClassLoader : 
this.getClass().getClassLoader(),
+
context.getProperty(JOLT_TRANSFORM).getValue(), specJson);
+}
+
+} catch (Exception ex){
+getLogger().error("Unable to setup processor",ex);
 }
-transform = 
TransformFactory.getTransform(context.getProperty(JOLT_TRANSFORM).getValue(), 
specJson);
+
 }
 
+protected FilenameFilter getJarFilenameFilter(){
--- End diff --

Another spot where lambdas could be (but don't have to be) used


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Commented] (NIFI-1899) Create ListenSMTP & ExtractEmailAttachment processors

2016-07-08 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/NIFI-1899?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15368793#comment-15368793
 ] 

ASF GitHub Bot commented on NIFI-1899:
--

Github user trixpan commented on a diff in the pull request:

https://github.com/apache/nifi/pull/483#discussion_r70157601
  
--- Diff: 
nifi-nar-bundles/nifi-email-bundle/nifi-email-processors/src/main/java/org/apache/nifi/processors/email/ExtractEmailAttachments.java
 ---
@@ -0,0 +1,201 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.nifi.processors.email;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Properties;
+import java.util.Set;
+import java.util.Date;
+
+import javax.activation.DataSource;
+import javax.mail.Address;
+import javax.mail.MessagingException;
+import javax.mail.Session;
+import javax.mail.internet.MimeMessage;
+
+import org.apache.commons.io.IOUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.mail.util.MimeMessageParser;
+
+
+import org.apache.nifi.annotation.behavior.EventDriven;
+import org.apache.nifi.annotation.behavior.InputRequirement;
+import org.apache.nifi.annotation.behavior.InputRequirement.Requirement;
+import org.apache.nifi.annotation.behavior.SideEffectFree;
+import org.apache.nifi.annotation.behavior.WritesAttribute;
+import org.apache.nifi.annotation.behavior.WritesAttributes;
+import org.apache.nifi.annotation.documentation.CapabilityDescription;
+import org.apache.nifi.annotation.documentation.Tags;
+import org.apache.nifi.components.PropertyDescriptor;
+import org.apache.nifi.flowfile.FlowFile;
+import org.apache.nifi.flowfile.attributes.CoreAttributes;
+import org.apache.nifi.logging.ComponentLog;
+import org.apache.nifi.processor.AbstractProcessor;
+import org.apache.nifi.processor.ProcessContext;
+import org.apache.nifi.processor.ProcessSession;
+import org.apache.nifi.processor.ProcessorInitializationContext;
+import org.apache.nifi.processor.Relationship;
+import org.apache.nifi.processor.io.InputStreamCallback;
+import org.apache.nifi.processor.io.OutputStreamCallback;
+import org.apache.nifi.stream.io.BufferedInputStream;
+
+
+
+
+@EventDriven
+@SideEffectFree
+@Tags({"split", "email"})
+@InputRequirement(Requirement.INPUT_REQUIRED)
+@CapabilityDescription("Extract attachments from a mime formatted email 
file, splitting them into individual flowfiles.")
+@WritesAttributes({
+@WritesAttribute(attribute = "filename ", description = "The 
filename of the attachment"),
+@WritesAttribute(attribute = "email.attachment.parent.filename ", 
description = "The filename of the parent FlowFile"),
+@WritesAttribute(attribute = "email.attachment.parent.uuid", 
description = "The UUID of the original FlowFile."),
+@WritesAttribute(attribute = "mime.type", description = "The mime 
type of the attachment.")})
+
+public class ExtractEmailAttachments extends AbstractProcessor {
+public static final String ATTACHMENT_ORIGINAL_FILENAME = 
"email.attachment.parent.filename";
+public static final String ATTACHMENT_ORIGINAL_UUID = 
"email.attachment.parent.uuid";
+
+public static final Relationship REL_ATTACHMENTS = new 
Relationship.Builder()
+.name("attachments")
+.description("Each individual attachment will be routed to the 
attachments relationship")
+.build();
+public static final Relationship REL_ORIGINAL = new 
Relationship.Builder()
+.name("original")
+.description("The original file")
+.build();
+public static final 

[GitHub] nifi pull request #483: NIFI-1899 - Introduce ExtractEmailAttachments and Ex...

2016-07-08 Thread trixpan
Github user trixpan commented on a diff in the pull request:

https://github.com/apache/nifi/pull/483#discussion_r70157601
  
--- Diff: 
nifi-nar-bundles/nifi-email-bundle/nifi-email-processors/src/main/java/org/apache/nifi/processors/email/ExtractEmailAttachments.java
 ---
@@ -0,0 +1,201 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.nifi.processors.email;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Properties;
+import java.util.Set;
+import java.util.Date;
+
+import javax.activation.DataSource;
+import javax.mail.Address;
+import javax.mail.MessagingException;
+import javax.mail.Session;
+import javax.mail.internet.MimeMessage;
+
+import org.apache.commons.io.IOUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.mail.util.MimeMessageParser;
+
+
+import org.apache.nifi.annotation.behavior.EventDriven;
+import org.apache.nifi.annotation.behavior.InputRequirement;
+import org.apache.nifi.annotation.behavior.InputRequirement.Requirement;
+import org.apache.nifi.annotation.behavior.SideEffectFree;
+import org.apache.nifi.annotation.behavior.WritesAttribute;
+import org.apache.nifi.annotation.behavior.WritesAttributes;
+import org.apache.nifi.annotation.documentation.CapabilityDescription;
+import org.apache.nifi.annotation.documentation.Tags;
+import org.apache.nifi.components.PropertyDescriptor;
+import org.apache.nifi.flowfile.FlowFile;
+import org.apache.nifi.flowfile.attributes.CoreAttributes;
+import org.apache.nifi.logging.ComponentLog;
+import org.apache.nifi.processor.AbstractProcessor;
+import org.apache.nifi.processor.ProcessContext;
+import org.apache.nifi.processor.ProcessSession;
+import org.apache.nifi.processor.ProcessorInitializationContext;
+import org.apache.nifi.processor.Relationship;
+import org.apache.nifi.processor.io.InputStreamCallback;
+import org.apache.nifi.processor.io.OutputStreamCallback;
+import org.apache.nifi.stream.io.BufferedInputStream;
+
+
+
+
+@EventDriven
+@SideEffectFree
+@Tags({"split", "email"})
+@InputRequirement(Requirement.INPUT_REQUIRED)
+@CapabilityDescription("Extract attachments from a mime formatted email 
file, splitting them into individual flowfiles.")
+@WritesAttributes({
+@WritesAttribute(attribute = "filename ", description = "The 
filename of the attachment"),
+@WritesAttribute(attribute = "email.attachment.parent.filename ", 
description = "The filename of the parent FlowFile"),
+@WritesAttribute(attribute = "email.attachment.parent.uuid", 
description = "The UUID of the original FlowFile."),
+@WritesAttribute(attribute = "mime.type", description = "The mime 
type of the attachment.")})
+
+public class ExtractEmailAttachments extends AbstractProcessor {
+public static final String ATTACHMENT_ORIGINAL_FILENAME = 
"email.attachment.parent.filename";
+public static final String ATTACHMENT_ORIGINAL_UUID = 
"email.attachment.parent.uuid";
+
+public static final Relationship REL_ATTACHMENTS = new 
Relationship.Builder()
+.name("attachments")
+.description("Each individual attachment will be routed to the 
attachments relationship")
+.build();
+public static final Relationship REL_ORIGINAL = new 
Relationship.Builder()
+.name("original")
+.description("The original file")
+.build();
+public static final Relationship REL_FAILURE = new 
Relationship.Builder()
+.name("failure")
+.description("Flowfiles that could not be parsed")
+.build();
+private Set relationships;
+private List 

[jira] [Commented] (NIFI-2020) Enhance JoltTransformJSON processor to support custom transforms

2016-07-08 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/NIFI-2020?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15368792#comment-15368792
 ] 

ASF GitHub Bot commented on NIFI-2020:
--

Github user mattyb149 commented on a diff in the pull request:

https://github.com/apache/nifi/pull/564#discussion_r70157576
  
--- Diff: 
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/JoltTransformJSON.java
 ---
@@ -147,10 +174,39 @@
 .explanation(message)
 .build());
 }
+
 } else {
+
+ClassLoader customClassLoader = null;
 try {
+
+if(modulePath != null) {
+customClassLoader = 
ClassLoaderUtils.getCustomClassLoader(modulePath, 
this.getClass().getClassLoader(), getJarFilenameFilter());
+}
+
 Object specJson = SORTR.getValue().equals(transform) ? 
null : JsonUtils.jsonToObject(specValue, DEFAULT_CHARSET);
-TransformFactory.getTransform(transform, specJson);
+
+if(CUSTOMR.getValue().equals(transform)){
+
+if(!StringUtils.isEmpty(customTransform) && 
customClassLoader == null){
+final String customMessage = "One or more module 
directories containing the provided custom transformation must be specified.";
--- End diff --

See above about the message for whether a module directory MUST be provided 
or not


> Enhance JoltTransformJSON processor to support custom transforms
> 
>
> Key: NIFI-2020
> URL: https://issues.apache.org/jira/browse/NIFI-2020
> Project: Apache NiFi
>  Issue Type: New Feature
>  Components: Core Framework
>Affects Versions: 1.0.0
>Reporter: Yolanda M. Davis
>Assignee: Yolanda M. Davis
> Fix For: 1.0.0
>
>
> Jolt supports additional custom transforms via fully-qualified Java 
> classnames. Would like to provide the ability to support custom 
> transformation (via drop in jars) for the Jolt Transform processor.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (NIFI-2020) Enhance JoltTransformJSON processor to support custom transforms

2016-07-08 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/NIFI-2020?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15368790#comment-15368790
 ] 

ASF GitHub Bot commented on NIFI-2020:
--

Github user mattyb149 commented on a diff in the pull request:

https://github.com/apache/nifi/pull/564#discussion_r70157549
  
--- Diff: 
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/JoltTransformJSON.java
 ---
@@ -95,6 +99,24 @@
 .required(false)
 .build();
 
+public static final PropertyDescriptor CUSTOM_CLASS = new 
PropertyDescriptor.Builder()
+.name("jolt-custom-class")
+.displayName("Custom Transformation Class Name")
+.description("Fully Qualified Class Name for Custom 
Transformation  Module Directory should be specified")
+.required(false)
+.expressionLanguageSupported(false)
+.addValidator(StandardValidators.NON_EMPTY_VALIDATOR)
+.build();
+
+public static final PropertyDescriptor MODULES = new 
PropertyDescriptor.Builder()
+.name("jolt-custom-modules")
+.displayName("Custom Module Directory")
+.description("Comma-separated list of paths to files and/or 
directories which contain modules containing custom transformations.")
+.required(false)
+.expressionLanguageSupported(false)
--- End diff --

Same comment as above for EL support


> Enhance JoltTransformJSON processor to support custom transforms
> 
>
> Key: NIFI-2020
> URL: https://issues.apache.org/jira/browse/NIFI-2020
> Project: Apache NiFi
>  Issue Type: New Feature
>  Components: Core Framework
>Affects Versions: 1.0.0
>Reporter: Yolanda M. Davis
>Assignee: Yolanda M. Davis
> Fix For: 1.0.0
>
>
> Jolt supports additional custom transforms via fully-qualified Java 
> classnames. Would like to provide the ability to support custom 
> transformation (via drop in jars) for the Jolt Transform processor.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] nifi pull request #564: NIFI-2020 - Enhance JoltTransformJSON processor to s...

2016-07-08 Thread mattyb149
Github user mattyb149 commented on a diff in the pull request:

https://github.com/apache/nifi/pull/564#discussion_r70157576
  
--- Diff: 
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/JoltTransformJSON.java
 ---
@@ -147,10 +174,39 @@
 .explanation(message)
 .build());
 }
+
 } else {
+
+ClassLoader customClassLoader = null;
 try {
+
+if(modulePath != null) {
+customClassLoader = 
ClassLoaderUtils.getCustomClassLoader(modulePath, 
this.getClass().getClassLoader(), getJarFilenameFilter());
+}
+
 Object specJson = SORTR.getValue().equals(transform) ? 
null : JsonUtils.jsonToObject(specValue, DEFAULT_CHARSET);
-TransformFactory.getTransform(transform, specJson);
+
+if(CUSTOMR.getValue().equals(transform)){
+
+if(!StringUtils.isEmpty(customTransform) && 
customClassLoader == null){
+final String customMessage = "One or more module 
directories containing the provided custom transformation must be specified.";
--- End diff --

See above about the message for whether a module directory MUST be provided 
or not


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Commented] (NIFI-2020) Enhance JoltTransformJSON processor to support custom transforms

2016-07-08 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/NIFI-2020?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15368789#comment-15368789
 ] 

ASF GitHub Bot commented on NIFI-2020:
--

Github user mattyb149 commented on a diff in the pull request:

https://github.com/apache/nifi/pull/564#discussion_r70157534
  
--- Diff: 
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/JoltTransformJSON.java
 ---
@@ -95,6 +99,24 @@
 .required(false)
 .build();
 
+public static final PropertyDescriptor CUSTOM_CLASS = new 
PropertyDescriptor.Builder()
+.name("jolt-custom-class")
+.displayName("Custom Transformation Class Name")
+.description("Fully Qualified Class Name for Custom 
Transformation  Module Directory should be specified")
+.required(false)
+.expressionLanguageSupported(false)
--- End diff --

Any reason why EL is not supported? I can't think of a great use case for 
using EL here, but unless there's a good reason not to, it adds to the 
flexibility of the system (and could eventually benefit from the Variable 
Registry right?)


> Enhance JoltTransformJSON processor to support custom transforms
> 
>
> Key: NIFI-2020
> URL: https://issues.apache.org/jira/browse/NIFI-2020
> Project: Apache NiFi
>  Issue Type: New Feature
>  Components: Core Framework
>Affects Versions: 1.0.0
>Reporter: Yolanda M. Davis
>Assignee: Yolanda M. Davis
> Fix For: 1.0.0
>
>
> Jolt supports additional custom transforms via fully-qualified Java 
> classnames. Would like to provide the ability to support custom 
> transformation (via drop in jars) for the Jolt Transform processor.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] nifi pull request #483: NIFI-1899 - Introduce ExtractEmailAttachments and Ex...

2016-07-08 Thread trixpan
Github user trixpan commented on a diff in the pull request:

https://github.com/apache/nifi/pull/483#discussion_r70157551
  
--- Diff: 
nifi-nar-bundles/nifi-email-bundle/nifi-email-processors/src/main/java/org/apache/nifi/processors/email/ExtractEmailAttachments.java
 ---
@@ -0,0 +1,201 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.nifi.processors.email;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Properties;
+import java.util.Set;
+import java.util.Date;
+
+import javax.activation.DataSource;
+import javax.mail.Address;
+import javax.mail.MessagingException;
+import javax.mail.Session;
+import javax.mail.internet.MimeMessage;
+
+import org.apache.commons.io.IOUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.mail.util.MimeMessageParser;
+
+
+import org.apache.nifi.annotation.behavior.EventDriven;
+import org.apache.nifi.annotation.behavior.InputRequirement;
+import org.apache.nifi.annotation.behavior.InputRequirement.Requirement;
+import org.apache.nifi.annotation.behavior.SideEffectFree;
+import org.apache.nifi.annotation.behavior.WritesAttribute;
+import org.apache.nifi.annotation.behavior.WritesAttributes;
+import org.apache.nifi.annotation.documentation.CapabilityDescription;
+import org.apache.nifi.annotation.documentation.Tags;
+import org.apache.nifi.components.PropertyDescriptor;
+import org.apache.nifi.flowfile.FlowFile;
+import org.apache.nifi.flowfile.attributes.CoreAttributes;
+import org.apache.nifi.logging.ComponentLog;
+import org.apache.nifi.processor.AbstractProcessor;
+import org.apache.nifi.processor.ProcessContext;
+import org.apache.nifi.processor.ProcessSession;
+import org.apache.nifi.processor.ProcessorInitializationContext;
+import org.apache.nifi.processor.Relationship;
+import org.apache.nifi.processor.io.InputStreamCallback;
+import org.apache.nifi.processor.io.OutputStreamCallback;
+import org.apache.nifi.stream.io.BufferedInputStream;
+
+
+
+
+@EventDriven
+@SideEffectFree
+@Tags({"split", "email"})
+@InputRequirement(Requirement.INPUT_REQUIRED)
+@CapabilityDescription("Extract attachments from a mime formatted email 
file, splitting them into individual flowfiles.")
+@WritesAttributes({
+@WritesAttribute(attribute = "filename ", description = "The 
filename of the attachment"),
+@WritesAttribute(attribute = "email.attachment.parent.filename ", 
description = "The filename of the parent FlowFile"),
+@WritesAttribute(attribute = "email.attachment.parent.uuid", 
description = "The UUID of the original FlowFile."),
+@WritesAttribute(attribute = "mime.type", description = "The mime 
type of the attachment.")})
+
--- End diff --

I'm fine with the idea however I haven't considered any batching during the 
development of the processor... Would assume it is safer to leave as it is?


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] nifi pull request #564: NIFI-2020 - Enhance JoltTransformJSON processor to s...

2016-07-08 Thread mattyb149
Github user mattyb149 commented on a diff in the pull request:

https://github.com/apache/nifi/pull/564#discussion_r70157498
  
--- Diff: 
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/JoltTransformJSON.java
 ---
@@ -95,6 +99,24 @@
 .required(false)
 .build();
 
+public static final PropertyDescriptor CUSTOM_CLASS = new 
PropertyDescriptor.Builder()
+.name("jolt-custom-class")
+.displayName("Custom Transformation Class Name")
+.description("Fully Qualified Class Name for Custom 
Transformation  Module Directory should be specified")
--- End diff --

This looks like it's two sentences so should have a period in between. Also 
the second part could be elaborated upon, since the Module Directory shouldn't 
need to be specified (if their JAR is somehow already in the NiFi classpath), 
rather the class just needs to be able to be loaded by the processor by any 
means. Not sure how to word that...


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] nifi pull request #483: NIFI-1899 - Introduce ExtractEmailAttachments and Ex...

2016-07-08 Thread trixpan
Github user trixpan commented on a diff in the pull request:

https://github.com/apache/nifi/pull/483#discussion_r70157262
  
--- Diff: nifi-nar-bundles/nifi-email-bundle/nifi-email-processors/pom.xml 
---
@@ -0,0 +1,75 @@
+
+
+http://maven.apache.org/POM/4.0.0; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd;>
+4.0.0
+
+
+org.apache.nifi
+nifi-email-bundle
+1.0.0-SNAPSHOT
+
+
+nifi-email-processors
+jar
+
+
+
+org.apache.nifi
+nifi-api
+
+
+org.apache.nifi
+nifi-processor-utils
+
+
+javax.mail
+mail
+1.4.7
--- End diff --

addressed


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Commented] (NIFI-2020) Enhance JoltTransformJSON processor to support custom transforms

2016-07-08 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/NIFI-2020?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15368781#comment-15368781
 ] 

ASF GitHub Bot commented on NIFI-2020:
--

Github user mattyb149 commented on the issue:

https://github.com/apache/nifi/pull/564
  
Since the test JARs are built from source code (in test/java), we're 
probably fine to just include them, but I wasn't sure if there's any paperwork 
needed. @joewitt Think these are fine as-is? I believe so but wanted a second 
opinion. An alternative could be to set the Module Directory to point at the 
target/classes directory, that should allow them to be loaded but not have to 
be in a JAR.


> Enhance JoltTransformJSON processor to support custom transforms
> 
>
> Key: NIFI-2020
> URL: https://issues.apache.org/jira/browse/NIFI-2020
> Project: Apache NiFi
>  Issue Type: New Feature
>  Components: Core Framework
>Affects Versions: 1.0.0
>Reporter: Yolanda M. Davis
>Assignee: Yolanda M. Davis
> Fix For: 1.0.0
>
>
> Jolt supports additional custom transforms via fully-qualified Java 
> classnames. Would like to provide the ability to support custom 
> transformation (via drop in jars) for the Jolt Transform processor.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] nifi pull request #564: NIFI-2020 - Enhance JoltTransformJSON processor to s...

2016-07-08 Thread mattyb149
Github user mattyb149 commented on a diff in the pull request:

https://github.com/apache/nifi/pull/564#discussion_r70156926
  
--- Diff: 
nifi-commons/nifi-utils/src/main/java/org/apache/nifi/util/file/classloader/ClassLoaderUtils.java
 ---
@@ -0,0 +1,66 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.nifi.util.file.classloader;
+
+import java.io.File;
+import java.io.FilenameFilter;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.net.URLClassLoader;
+import java.util.LinkedList;
+import java.util.List;
+
+public class ClassLoaderUtils {
+
+public static ClassLoader getCustomClassLoader(String modulePath, 
ClassLoader parentClassLoader, FilenameFilter filenameFilter) throws 
MalformedURLException {
+String[] modules = modulePath != null? modulePath.split(",") : 
null;
+URL[] classpaths = getURLsForClasspath(modules,filenameFilter);
+return createModuleClassLoader(classpaths,parentClassLoader);
+}
+
+protected static URL[] getURLsForClasspath(String[] modulePaths, 
FilenameFilter filenameFilter) throws  MalformedURLException {
+List additionalClasspath = new LinkedList<>();
--- End diff --

Now that we can use Java 8, this method can probably be more concise using 
streams, lambdas, etc. Not a requirement, just a suggestion :)


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Commented] (NIFI-2020) Enhance JoltTransformJSON processor to support custom transforms

2016-07-08 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/NIFI-2020?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15368763#comment-15368763
 ] 

ASF GitHub Bot commented on NIFI-2020:
--

Github user mattyb149 commented on a diff in the pull request:

https://github.com/apache/nifi/pull/564#discussion_r70156828
  
--- Diff: 
nifi-nar-bundles/nifi-standard-bundle/nifi-jolt-transform-json-ui/src/main/java/org/apache/nifi/web/standard/api/transformjson/TransformJSONResource.java
 ---
@@ -84,6 +84,36 @@ public Response executeSpec(JoltSpecificationDTO 
specificationDTO) {
 
 }
 
+protected Transform getTransformation(JoltSpecificationDTO 
specificationDTO) throws Exception{
+
+Object specJson = 
getSpecificationJsonObject(specificationDTO.getSpecification());
+String transformName = specificationDTO.getTransform();
+String modules = specificationDTO.getModules();
+
+ClassLoader customClassLoader = null;
+Transform transform ;
 
+if(modules != null && !modules.isEmpty()){
+customClassLoader = 
ClassLoaderUtils.getCustomClassLoader(specificationDTO.getModules(),this.getClass().getClassLoader(),
 getJarFilenameFilter());
+}
+
+if(transformName.equals("jolt-transform-custom")) {
+transform = 
TransformFactory.getCustomTransform(customClassLoader,specificationDTO.getCustomClass(),
 specJson);
--- End diff --

Is it possible that customClassLoader would be null here? I see you check 
for that in the "else" clause but not the "if" clause. Even if the UI / 
customValidators prevent this kind of thing, it might still be a good thing to 
add. If there is a way to directly make the API call without a value for 
"modules", then this could cause an NPE and a unit test could show that the 
added null check works :)


> Enhance JoltTransformJSON processor to support custom transforms
> 
>
> Key: NIFI-2020
> URL: https://issues.apache.org/jira/browse/NIFI-2020
> Project: Apache NiFi
>  Issue Type: New Feature
>  Components: Core Framework
>Affects Versions: 1.0.0
>Reporter: Yolanda M. Davis
>Assignee: Yolanda M. Davis
> Fix For: 1.0.0
>
>
> Jolt supports additional custom transforms via fully-qualified Java 
> classnames. Would like to provide the ability to support custom 
> transformation (via drop in jars) for the Jolt Transform processor.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] nifi pull request #564: NIFI-2020 - Enhance JoltTransformJSON processor to s...

2016-07-08 Thread mattyb149
Github user mattyb149 commented on a diff in the pull request:

https://github.com/apache/nifi/pull/564#discussion_r70156828
  
--- Diff: 
nifi-nar-bundles/nifi-standard-bundle/nifi-jolt-transform-json-ui/src/main/java/org/apache/nifi/web/standard/api/transformjson/TransformJSONResource.java
 ---
@@ -84,6 +84,36 @@ public Response executeSpec(JoltSpecificationDTO 
specificationDTO) {
 
 }
 
+protected Transform getTransformation(JoltSpecificationDTO 
specificationDTO) throws Exception{
+
+Object specJson = 
getSpecificationJsonObject(specificationDTO.getSpecification());
+String transformName = specificationDTO.getTransform();
+String modules = specificationDTO.getModules();
+
+ClassLoader customClassLoader = null;
+Transform transform ;
 
+if(modules != null && !modules.isEmpty()){
+customClassLoader = 
ClassLoaderUtils.getCustomClassLoader(specificationDTO.getModules(),this.getClass().getClassLoader(),
 getJarFilenameFilter());
+}
+
+if(transformName.equals("jolt-transform-custom")) {
+transform = 
TransformFactory.getCustomTransform(customClassLoader,specificationDTO.getCustomClass(),
 specJson);
--- End diff --

Is it possible that customClassLoader would be null here? I see you check 
for that in the "else" clause but not the "if" clause. Even if the UI / 
customValidators prevent this kind of thing, it might still be a good thing to 
add. If there is a way to directly make the API call without a value for 
"modules", then this could cause an NPE and a unit test could show that the 
added null check works :)


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Updated] (NIFI-619) update MonitorActivity processor to be cluster friendly

2016-07-08 Thread Joseph Witt (JIRA)

 [ 
https://issues.apache.org/jira/browse/NIFI-619?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Joseph Witt updated NIFI-619:
-
Status: Patch Available  (was: Open)

https://github.com/apache/nifi/pull/575

> update MonitorActivity processor to be cluster friendly
> ---
>
> Key: NIFI-619
> URL: https://issues.apache.org/jira/browse/NIFI-619
> Project: Apache NiFi
>  Issue Type: Improvement
>Reporter: Brandon DeVries
>Assignee: Koji Kawamura
>Priority: Minor
> Fix For: 1.0.0
>
>
> This processor should be able to be used to monitor activity across the 
> cluster.  In its current state, alerting is based on activity of a single 
> node, not the entire cluster.
> For example, in a 2 node cluster, if system A is getting data from a given 
> flow and system B is not, system B will alert for lack of activity even 
> though the flow is functioning "normally".
> The ideal behavior would be fore an alert to be generated only if both 
> systems did not see data in the specified time.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (NIFI-2209) Update nifi overview doc for 1.0 items

2016-07-08 Thread Joseph Witt (JIRA)

 [ 
https://issues.apache.org/jira/browse/NIFI-2209?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Joseph Witt resolved NIFI-2209.
---
Resolution: Fixed

> Update nifi overview doc for 1.0 items
> --
>
> Key: NIFI-2209
> URL: https://issues.apache.org/jira/browse/NIFI-2209
> Project: Apache NiFi
>  Issue Type: Task
>  Components: Documentation & Website
>Reporter: Haimo Liu
>Assignee: Joseph Witt
>Priority: Minor
> Fix For: 1.0.0
>
>
> Update the overview document to reflect some of the 1.0 changes such as zero 
> master clustering and multi-tenancy.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] nifi pull request #623: 1.0 documentation updates - overview section

2016-07-08 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/nifi/pull/623


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Commented] (NIFI-2209) Update nifi overview doc for 1.0 items

2016-07-08 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/NIFI-2209?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15368701#comment-15368701
 ] 

ASF GitHub Bot commented on NIFI-2209:
--

Github user joewitt commented on the issue:

https://github.com/apache/nifi/pull/623
  
created https://issues.apache.org/jira/browse/NIFI-2209 to account for 
this.  Will ammend commit entries to reference this then push.


> Update nifi overview doc for 1.0 items
> --
>
> Key: NIFI-2209
> URL: https://issues.apache.org/jira/browse/NIFI-2209
> Project: Apache NiFi
>  Issue Type: Task
>  Components: Documentation & Website
>Reporter: Haimo Liu
>Assignee: Joseph Witt
>Priority: Minor
>
> Update the overview document to reflect some of the 1.0 changes such as zero 
> master clustering and multi-tenancy.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (NIFI-2209) Update nifi overview doc for 1.0 items

2016-07-08 Thread Joseph Witt (JIRA)
Joseph Witt created NIFI-2209:
-

 Summary: Update nifi overview doc for 1.0 items
 Key: NIFI-2209
 URL: https://issues.apache.org/jira/browse/NIFI-2209
 Project: Apache NiFi
  Issue Type: Task
  Components: Documentation & Website
Reporter: Haimo Liu
Assignee: Joseph Witt
Priority: Minor


Update the overview document to reflect some of the 1.0 changes such as zero 
master clustering and multi-tenancy.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] nifi pull request #623: 1.0 documentation updates - overview section

2016-07-08 Thread Haimo-Liu
GitHub user Haimo-Liu opened a pull request:

https://github.com/apache/nifi/pull/623

1.0 documentation updates - overview section

Updating NIFI overview documentation taking into consideration the 
framework enhancement features introduced in NIFI 1.0

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/Haimo-Liu/nifi 1.0-docs-new

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/nifi/pull/623.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #623


commit 3f778400327c1a71ea9099be2d0277c7b5c623da
Author: Haimo Liu 
Date:   2016-07-08T22:50:56Z

Add images for zero-master clustering

Add architecture images for zero-master clustering

commit b239d33c2a0d387c478714aab5e55b8da1f336ef
Author: Haimo Liu 
Date:   2016-07-08T22:52:56Z

Update overview.adoc

Updated NIFI overview documentation




---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Commented] (NIFI-2186) Cluster communication treats client and server sockets identically for peer certificate DN extraction

2016-07-08 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/NIFI-2186?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15368625#comment-15368625
 ] 

ASF GitHub Bot commented on NIFI-2186:
--

Github user alopresto commented on the issue:

https://github.com/apache/nifi/pull/622
  
This is the fix that was included in `0.7.0` in 
[https://github.com/apache/nifi/pull/611](PR 611) for 
[https://issues.apache.org/jira/browse/NIFI-2119](NIFI-2119). 

I have tested this on a secured `1.0` cluster (2 nodes, one running 
embedded Zookeeper). I exercised the cluster with 
`nifi.security.needClientAuth` set to both *true* and *false*. 

Setting up a ZMC cluster is not fully documented yet as there is still 
on-going work, so if anyone reviewing this needs example keystores and 
configuration files to get the cluster running, let me know. 


> Cluster communication treats client and server sockets identically for peer 
> certificate DN extraction
> -
>
> Key: NIFI-2186
> URL: https://issues.apache.org/jira/browse/NIFI-2186
> Project: Apache NiFi
>  Issue Type: Bug
>  Components: Core Framework
>Affects Versions: 1.0.0
>Reporter: Andy LoPresto
>Assignee: Andy LoPresto
>Priority: Critical
>  Labels: certificate, cluster, security, tls
> Fix For: 1.0.0
>
>
> The code to extract the peer certificate DN is identical for client and 
> server {{SSLSocket}}, which means that servers are subject to the 
> {{nifi.security.needClientAuth}} setting being set to {{true}}. Server 
> certificates must be present in a secure connection regardless of this 
> setting. This was fixed in {{0.x}} in [NIFI-2119] and must be ported to the 
> {{master}} branch.  



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (NIFI-2186) Cluster communication treats client and server sockets identically for peer certificate DN extraction

2016-07-08 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/NIFI-2186?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15368617#comment-15368617
 ] 

ASF GitHub Bot commented on NIFI-2186:
--

GitHub user alopresto opened a pull request:

https://github.com/apache/nifi/pull/622

NIFI-2186 Refactored CertificateUtils to separate logic for DN extrac…

…tion from server/client sockets. Added logic to detect server/client mode 
encapsulated in exposed method.

Added unit tests for DN extraction.
Corrected typo in Javadoc.
Switched server/client socket logic for certificate extraction -- when the 
local socket is in client/server mode, the peer is necessarily the inverse.
Fixed unit tests.
Moved lazy-loading authentication access out of isDebugEnabled() control 
branch.

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/alopresto/nifi NIFI-2186

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/nifi/pull/622.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #622


commit b6fec77ccab01664a11518b6f9652bc2cd855040
Author: Andy LoPresto 
Date:   2016-07-05T04:05:58Z

NIFI-2186 Refactored CertificateUtils to separate logic for DN extraction 
from server/client sockets. Added logic to detect server/client mode 
encapsulated in exposed method.
Added unit tests for DN extraction.
Corrected typo in Javadoc.
Switched server/client socket logic for certificate extraction -- when the 
local socket is in client/server mode, the peer is necessarily the inverse.
Fixed unit tests.
Moved lazy-loading authentication access out of isDebugEnabled() control 
branch.




> Cluster communication treats client and server sockets identically for peer 
> certificate DN extraction
> -
>
> Key: NIFI-2186
> URL: https://issues.apache.org/jira/browse/NIFI-2186
> Project: Apache NiFi
>  Issue Type: Bug
>  Components: Core Framework
>Affects Versions: 1.0.0
>Reporter: Andy LoPresto
>Assignee: Andy LoPresto
>Priority: Critical
>  Labels: certificate, cluster, security, tls
> Fix For: 1.0.0
>
>
> The code to extract the peer certificate DN is identical for client and 
> server {{SSLSocket}}, which means that servers are subject to the 
> {{nifi.security.needClientAuth}} setting being set to {{true}}. Server 
> certificates must be present in a secure connection regardless of this 
> setting. This was fixed in {{0.x}} in [NIFI-2119] and must be ported to the 
> {{master}} branch.  



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] nifi pull request #622: NIFI-2186 Refactored CertificateUtils to separate lo...

2016-07-08 Thread alopresto
GitHub user alopresto opened a pull request:

https://github.com/apache/nifi/pull/622

NIFI-2186 Refactored CertificateUtils to separate logic for DN extrac…

…tion from server/client sockets. Added logic to detect server/client 
mode encapsulated in exposed method.

Added unit tests for DN extraction.
Corrected typo in Javadoc.
Switched server/client socket logic for certificate extraction -- when the 
local socket is in client/server mode, the peer is necessarily the inverse.
Fixed unit tests.
Moved lazy-loading authentication access out of isDebugEnabled() control 
branch.

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/alopresto/nifi NIFI-2186

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/nifi/pull/622.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #622


commit b6fec77ccab01664a11518b6f9652bc2cd855040
Author: Andy LoPresto 
Date:   2016-07-05T04:05:58Z

NIFI-2186 Refactored CertificateUtils to separate logic for DN extraction 
from server/client sockets. Added logic to detect server/client mode 
encapsulated in exposed method.
Added unit tests for DN extraction.
Corrected typo in Javadoc.
Switched server/client socket logic for certificate extraction -- when the 
local socket is in client/server mode, the peer is necessarily the inverse.
Fixed unit tests.
Moved lazy-loading authentication access out of isDebugEnabled() control 
branch.




---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] nifi issue #580: 1.0 documentation updates - overview section

2016-07-08 Thread joewitt
Github user joewitt commented on the issue:

https://github.com/apache/nifi/pull/580
  
@Haimo-Liu this seems great.  Can you please squash your commits and i'll 
merge from there.



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] nifi pull request #580: 1.0 documentation updates - overview section

2016-07-08 Thread Haimo-Liu
Github user Haimo-Liu closed the pull request at:

https://github.com/apache/nifi/pull/580


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] nifi pull request #580: 1.0 documentation updates - overview section

2016-07-08 Thread Haimo-Liu
GitHub user Haimo-Liu reopened a pull request:

https://github.com/apache/nifi/pull/580

1.0 documentation updates - overview section

updated overview section that covers zero-master clustering, multi-tenancy, 
plus some other features, and adjusted formatting

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/Haimo-Liu/nifi 1.0-docs

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/nifi/pull/580.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #580


commit e5f05ab1801b0072da1fe365caffc3180eea81a9
Author: Haimo Liu 
Date:   2016-06-23T21:08:25Z

update overview

clustering paragraph

commit d00557fceca1265697bb13db1c91da539916e079
Author: Haimo Liu 
Date:   2016-06-24T03:10:30Z

Update overview.adoc

commit c256ddcdff2d055eb68d4741ca02e8dce7d0b073
Author: Haimo Liu 
Date:   2016-06-24T15:19:23Z

Update overview.adoc

commit d58c8ebb1fda40f6e50f20ddaaca55cb883b9749
Author: Haimo Liu 
Date:   2016-06-24T15:55:39Z

Update overview.adoc

commit c7f7a74ea47848cdf5f5b66701c03aa58176a282
Author: Haimo Liu 
Date:   2016-06-24T19:32:14Z

Update overview.adoc

commit ff1e8a3e7114233c5a655034fcd813f26f1307c1
Author: Haimo Liu 
Date:   2016-06-24T19:58:54Z

Update overview.adoc

commit c01d96312e942cc933bed2e56112095ff8bd3157
Author: Haimo Liu 
Date:   2016-06-24T20:10:49Z

Add files via upload

commit bce6c7932dfea529528e59c727e7326483e2cf82
Author: Haimo Liu 
Date:   2016-06-24T20:12:17Z

Update overview.adoc

commit 6e3980e825654fee5c16c9aff3b418ee152ff017
Author: Haimo Liu 
Date:   2016-07-08T20:44:58Z

Update overview.adoc




---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Commented] (NIFI-1974) Support Custom Properties in Expression Language

2016-07-08 Thread Mark Payne (JIRA)

[ 
https://issues.apache.org/jira/browse/NIFI-1974?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15368359#comment-15368359
 ] 

Mark Payne commented on NIFI-1974:
--

I created a new ticket NIFI-2208 so that we can close this one out and worry 
about merging the PR into the 1.x baseline on NIFI-2208.

> Support Custom Properties in Expression Language
> 
>
> Key: NIFI-1974
> URL: https://issues.apache.org/jira/browse/NIFI-1974
> Project: Apache NiFi
>  Issue Type: New Feature
>Reporter: Yolanda M. Davis
>Assignee: Yolanda M. Davis
> Fix For: 0.7.0
>
>
> Add a property in "nifi.properties" config file to allows users to specify a 
> list of custom properties files (containing data such as environmental 
> specific values, or sensitive values, etc.). The key/value pairs should be 
> loaded upon NIFI startup and availbale to processors for use in expression 
> languages. 
> Optimally this will lay the groundwork for a UI driven Variable Registry.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (NIFI-1974) Support Custom Properties in Expression Language

2016-07-08 Thread Mark Payne (JIRA)

 [ 
https://issues.apache.org/jira/browse/NIFI-1974?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Mark Payne updated NIFI-1974:
-
Fix Version/s: (was: 1.0.0)

> Support Custom Properties in Expression Language
> 
>
> Key: NIFI-1974
> URL: https://issues.apache.org/jira/browse/NIFI-1974
> Project: Apache NiFi
>  Issue Type: New Feature
>Reporter: Yolanda M. Davis
>Assignee: Yolanda M. Davis
> Fix For: 0.7.0
>
>
> Add a property in "nifi.properties" config file to allows users to specify a 
> list of custom properties files (containing data such as environmental 
> specific values, or sensitive values, etc.). The key/value pairs should be 
> loaded upon NIFI startup and availbale to processors for use in expression 
> languages. 
> Optimally this will lay the groundwork for a UI driven Variable Registry.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (NIFI-2179) ExecuteSQL and PutSQL can't assignt controller service

2016-07-08 Thread Joseph Percivall (JIRA)

 [ 
https://issues.apache.org/jira/browse/NIFI-2179?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Joseph Percivall updated NIFI-2179:
---
Fix Version/s: (was: 0.7.0)
   1.0.0

> ExecuteSQL and PutSQL can't assignt controller service
> --
>
> Key: NIFI-2179
> URL: https://issues.apache.org/jira/browse/NIFI-2179
> Project: Apache NiFi
>  Issue Type: Bug
>  Components: Core Framework
>Affects Versions: 0.6.0, 0.6.1
> Environment: Windows 7 , Linux Red Hat Enterprise
>Reporter: Alexander Kell
>Priority: Critical
>  Labels: ControllerService, SQL
> Fix For: 1.0.0
>
> Attachments: Wrong_controllerservicetype.png
>
>
> ExecuteSQL Processor is broken, it is not possible to assignt a neccesary 
> controllerservice connection.
> I created a working SQL Controller , it is not possible to assignt this 
> controller to created ExecuteSQL Processor , even if i create one 
> controllerservice out of property page , it is not possible for the processor 
> to use this service. 
> It has probably nothing to do with changes in processor code ... it has 
> probably spomething to do with controller service  ... i just tested it with 
> 0.5.0 and it works ... it is broken since 0.6.0
> Maybe it has something to do with NIFI-1800: Tie Controller Services to 
> Process Groups.
> or 
> NIFI-1994: Fixed issue with Controller Service Fully Qualified Class 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (NIFI-2089) NIFI-1824 causes failures on Windows

2016-07-08 Thread Mark Payne (JIRA)

[ 
https://issues.apache.org/jira/browse/NIFI-2089?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15368349#comment-15368349
 ] 

Mark Payne commented on NIFI-2089:
--

I am marking this as resolved and created a separate ticket to address the 
issue for the 1.x baseline (NIFI-2207).

> NIFI-1824 causes failures on Windows
> 
>
> Key: NIFI-2089
> URL: https://issues.apache.org/jira/browse/NIFI-2089
> Project: Apache NiFi
>  Issue Type: Bug
>Reporter: Joseph Percivall
>Assignee: Mark Payne
>Priority: Blocker
> Fix For: 0.7.0
>
>
> Below is the output of a maven build of the current 0.x branch on Windows 8. 
> After reverting NIFI-1824 (commit 1ff55244ceca8220dbfdc3ca58eb42218536579f) 
> the test succeeds.
> Output:
> ---
>  T E S T S
> ---
> Running org.apache.nifi.cluster.HeartbeatPayloadTest
> Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.266 sec - 
> in org.apache.nifi.cluster.HeartbeatPayloadTest
> Running org.apache.nifi.controller.repository.io.TestLimitedInputStream
> Tests run: 8, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec - in 
> org.apache.nifi.controller.repository.io.TestLimitedInputStream
> Running org.apache.nifi.controller.repository.TestFileSystemRepository
> Tests run: 28, Failures: 1, Errors: 2, Skipped: 0, Time elapsed: 33.81 sec 
> <<< FAILURE! - in 
> org.apache.nifi.controller.repository.TestFileSystemRepository
> testRemoveDeletesFileIfNoClaimants(org.apache.nifi.controller.repository.TestFileSystemRepository)
>   Time elapsed: 0.86 sec  <<< FAILURE!
> java.lang.AssertionError: null
> at org.junit.Assert.fail(Assert.java:86)
> at org.junit.Assert.assertTrue(Assert.java:41)
> at org.junit.Assert.assertFalse(Assert.java:64)
> at org.junit.Assert.assertFalse(Assert.java:74)
> at 
> org.apache.nifi.controller.repository.TestFileSystemRepository.testRemoveDeletesFileIfNoClaimants(TestFileSystemRepository.java:274)
> testExportToFile(org.apache.nifi.controller.repository.TestFileSystemRepository)
>   Time elapsed: 0.867 sec  <<< ERROR!
> java.nio.file.FileSystemException: 
> C:\Users\Joe\AppData\Local\Programs\Git\nifi\nifi-nar-bundles\nifi-framework-bundle\nifi-framework\nifi-framework-core\target\content_repository\1\1466638368813-1:
>  The process cannot access the file because it is being used by another 
> process.
> at 
> sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:86)
> at 
> sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:97)
> at 
> sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:102)
> at sun.nio.fs.WindowsFileCopy.copy(WindowsFileCopy.java:165)
> at 
> sun.nio.fs.WindowsFileSystemProvider.copy(WindowsFileSystemProvider.java:278)
> at java.nio.file.Files.copy(Files.java:1274)
> at 
> org.apache.nifi.controller.repository.TestFileSystemRepository.testExportToFile(TestFileSystemRepository.java:348)
> testExportToOutputStream(org.apache.nifi.controller.repository.TestFileSystemRepository)
>   Time elapsed: 0.859 sec  <<< ERROR!
> java.nio.file.FileSystemException: 
> C:\Users\Joe\AppData\Local\Programs\Git\nifi\nifi-nar-bundles\nifi-framework-bundle\nifi-framework\nifi-framework-core\target\content_repository\1\1466638376837-1:
>  The process cannot access the file because it is being used by another 
> process.
> at 
> sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:86)
> at 
> sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:97)
> at 
> sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:102)
> at sun.nio.fs.WindowsFileCopy.copy(WindowsFileCopy.java:165)
> at 
> sun.nio.fs.WindowsFileSystemProvider.copy(WindowsFileSystemProvider.java:278)
> at java.nio.file.Files.copy(Files.java:1274)
> at 
> org.apache.nifi.controller.repository.TestFileSystemRepository.testExportToOutputStream(TestFileSystemRepository.java:335)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (NIFI-2207) NIFI-1824 causes failures on Windows - Fix for 1.x baseline

2016-07-08 Thread Mark Payne (JIRA)
Mark Payne created NIFI-2207:


 Summary: NIFI-1824 causes failures on Windows - Fix for 1.x 
baseline
 Key: NIFI-2207
 URL: https://issues.apache.org/jira/browse/NIFI-2207
 Project: Apache NiFi
  Issue Type: Bug
  Components: Extensions
Reporter: Mark Payne
Assignee: Mark Payne
Priority: Blocker
 Fix For: 1.0.0


Ticket NIFI-2089 addressed this issue but the PR does not apply cleanly to the 
1.x branch. Since 0.7.0 is ready to be released, I am creating a separate JIRA 
for the 1.x branch so that we can close the one assigned to 0.7.0.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] nifi issue #483: NIFI-1899 - Introduce ExtractEmailAttachments and ExtractEm...

2016-07-08 Thread JPercivall
Github user JPercivall commented on the issue:

https://github.com/apache/nifi/pull/483
  
The email-nar does not have a LICENSE or NOTICE in its src directory.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Commented] (NIFI-2192) PutKafka results in OOME if sending very large delimited file

2016-07-08 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/NIFI-2192?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15368278#comment-15368278
 ] 

ASF GitHub Bot commented on NIFI-2192:
--

Github user asfgit closed the pull request at:

https://github.com/apache/nifi/pull/618


> PutKafka results in OOME if sending very large delimited file
> -
>
> Key: NIFI-2192
> URL: https://issues.apache.org/jira/browse/NIFI-2192
> Project: Apache NiFi
>  Issue Type: Bug
>  Components: Extensions
>Affects Versions: 0.7.0
>Reporter: Mark Payne
>Assignee: Oleg Zhurakousky
>Priority: Blocker
> Fix For: 1.0.0, 0.7.0
>
>
> If I send a very large file to kafka via PutKafka using a delimiter, I see 
> the Java heap fill up until we see constant Full Garbage Collections and the 
> node eventually dies.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] nifi pull request #618: NIFI-2192 fixed OOM issue in KafkaPublisher

2016-07-08 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/nifi/pull/618


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Commented] (NIFI-2192) PutKafka results in OOME if sending very large delimited file

2016-07-08 Thread ASF subversion and git services (JIRA)

[ 
https://issues.apache.org/jira/browse/NIFI-2192?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15368277#comment-15368277
 ] 

ASF subversion and git services commented on NIFI-2192:
---

Commit 7a901952b5e9bb2ce711c6b85305fc1382354727 in nifi's branch 
refs/heads/master from [~ozhurakousky]
[ https://git-wip-us.apache.org/repos/asf?p=nifi.git;h=7a90195 ]

NIFI-2192: Fixed OOM issue in KafkaPublisher

This closes #618.

Signed-off-by: Mark Payne 


> PutKafka results in OOME if sending very large delimited file
> -
>
> Key: NIFI-2192
> URL: https://issues.apache.org/jira/browse/NIFI-2192
> Project: Apache NiFi
>  Issue Type: Bug
>  Components: Extensions
>Affects Versions: 0.7.0
>Reporter: Mark Payne
>Assignee: Oleg Zhurakousky
>Priority: Blocker
> Fix For: 1.0.0, 0.7.0
>
>
> If I send a very large file to kafka via PutKafka using a delimiter, I see 
> the Java heap fill up until we see constant Full Garbage Collections and the 
> node eventually dies.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] nifi pull request #483: NIFI-1899 - Introduce ExtractEmailAttachments and Ex...

2016-07-08 Thread JPercivall
Github user JPercivall commented on a diff in the pull request:

https://github.com/apache/nifi/pull/483#discussion_r70128468
  
--- Diff: 
nifi-nar-bundles/nifi-email-bundle/nifi-email-processors/src/main/java/org/apache/nifi/processors/email/ListenSMTP.java
 ---
@@ -0,0 +1,385 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  See the NOTICE file distributed with
+ *  this work for additional information regarding copyright ownership.
+ *  The ASF licenses this file to You under the Apache License, Version 2.0
+ *  (the "License"); you may not use this file except in compliance with
+ *  the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 
implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+*/
+package org.apache.nifi.processors.email;
+
+import javax.net.ssl.SSLContext;
+import javax.net.ssl.SSLSocket;
+import javax.net.ssl.SSLSocketFactory;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.net.InetSocketAddress;
+import java.net.Socket;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.concurrent.LinkedBlockingQueue;
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.atomic.AtomicBoolean;
+
+import org.apache.nifi.annotation.lifecycle.OnStopped;
+import org.apache.nifi.flowfile.attributes.CoreAttributes;
+import org.apache.nifi.logging.ComponentLog;
+import org.apache.nifi.processor.DataUnit;
+import org.apache.nifi.processors.email.smtp.event.SmtpEvent;
+import 
org.apache.nifi.processors.email.smtp.handler.SMTPMessageHandlerFactory;
+import org.subethamail.smtp.server.SMTPServer;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.nifi.annotation.lifecycle.OnScheduled;
+import org.apache.nifi.components.PropertyDescriptor;
+import org.apache.nifi.processor.AbstractProcessor;
+import org.apache.nifi.processor.ProcessorInitializationContext;
+import org.apache.nifi.processor.Relationship;
+import org.apache.nifi.processor.util.StandardValidators;
+
+import org.apache.nifi.annotation.behavior.InputRequirement;
+import org.apache.nifi.annotation.behavior.WritesAttribute;
+import org.apache.nifi.annotation.behavior.WritesAttributes;
+import org.apache.nifi.annotation.documentation.CapabilityDescription;
+import org.apache.nifi.annotation.documentation.Tags;
+import org.apache.nifi.processor.ProcessContext;
+import org.apache.nifi.processor.ProcessSession;
+import org.apache.nifi.processor.exception.ProcessException;
+import org.apache.nifi.components.ValidationContext;
+import org.apache.nifi.components.ValidationResult;
+import org.apache.nifi.flowfile.FlowFile;
+import org.apache.nifi.processor.io.OutputStreamCallback;
+import org.apache.nifi.ssl.SSLContextService;
+
+@Tags({"listen", "email", "smtp"})
+@InputRequirement(InputRequirement.Requirement.INPUT_FORBIDDEN)
+@CapabilityDescription("This processor implements a lightweight SMTP 
server to an arbitrary port, " +
+"allowing nifi to listen for incoming email. " +
+"" +
+"Note this server does not perform any email validation. If direct 
exposure to the internet is sought," +
+"it may be a better idea to use the combination of NiFi and an 
industrial scale MTA (e.g. Postfix)")
+@WritesAttributes({
+@WritesAttribute(attribute = "mime.type", description = "The value 
used during HELO"),
+@WritesAttribute(attribute = "smtp.helo", description = "The value 
used during HELO"),
+@WritesAttribute(attribute = "smtp.certificates.*.serial", 
description = "The serial numbers for each of the " +
+"certificates used by an TLS peer"),
+@WritesAttribute(attribute = "smtp.certificates.*.principal", 
description = "The principal for each of the " +
+"certificates used by an TLS peer"),
+@WritesAttribute(attribute = "smtp.from", description = "The value 
used during MAIL FROM (i.e. envelope)"),
+@WritesAttribute(attribute = "smtp.to", description = "The value 
used during RCPT TO (i.e. envelope)")})
+
+public class ListenSMTP extends AbstractProcessor {
+public static final 

[jira] [Commented] (NIFI-1899) Create ListenSMTP & ExtractEmailAttachment processors

2016-07-08 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/NIFI-1899?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15368267#comment-15368267
 ] 

ASF GitHub Bot commented on NIFI-1899:
--

Github user JPercivall commented on a diff in the pull request:

https://github.com/apache/nifi/pull/483#discussion_r70128375
  
--- Diff: 
nifi-nar-bundles/nifi-email-bundle/nifi-email-processors/src/main/java/org/apache/nifi/processors/email/smtp/event/SmtpEvent.java
 ---
@@ -0,0 +1,91 @@
+/*
+* Licensed to the Apache Software Foundation (ASF) under one or more
+* contributor license agreements.  See the NOTICE file distributed with
+* this work for additional information regarding copyright ownership.
+* The ASF licenses this file to You under the Apache License, Version 2.0
+* (the "License"); you may not use this file except in compliance with
+* the License.  You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
+package org.apache.nifi.processors.email.smtp.event;
+
+
+import java.security.cert.X509Certificate;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * A Smtp event which adds the transaction number and command to the 
StandardEvent.
+ */
+
+public class SmtpEvent{
+
+private final String remoteIP;
+private final String helo;
+private final String from;
+private final String to;
+private final byte[] bodyData;
+private List> certificatesDetails;
+
+public SmtpEvent(final String remoteIP, final String helo, final 
String from, final String to, final X509Certificate[] certificates, final 
byte[] bodyData) {
+this.remoteIP = remoteIP;
+this.helo = helo;
+this.from = from;
+this.to = to;
+this.bodyData = bodyData;
+
+this.certificatesDetails = new ArrayList<>();
+
+for (int c = 0; c < certificates.length; c++) {
+X509Certificate cert = certificates[c];
+if (cert.getSerialNumber() != null && cert.getSubjectDN() != 
null) {
+Map certificate = new HashMap<>();
+
+String certSerialNumber = 
cert.getSerialNumber().toString();
+String certSubjectDN = cert.getSubjectDN().getName();
+
+
+certificate.put("SerialNumber", certSerialNumber);
+certificate.put("SubjectName", certSubjectDN);
+
+certificatesDetails.add(certificate);
+
+}
+}
+}
+
+public List getCertifcateDetails() {
--- End diff --

Bit of a nit pick but, it is best practice to keep the explicit type here 
(List>) that way you don't have the "unchecked assignment" 
warnings in ListenSMTP.


> Create ListenSMTP & ExtractEmailAttachment processors
> -
>
> Key: NIFI-1899
> URL: https://issues.apache.org/jira/browse/NIFI-1899
> Project: Apache NiFi
>  Issue Type: New Feature
>Reporter: Andre
>




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (NIFI-2185) Implement two-phase read for GET requests when replicated across the cluster

2016-07-08 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/NIFI-2185?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15368266#comment-15368266
 ] 

ASF GitHub Bot commented on NIFI-2185:
--

GitHub user markap14 opened a pull request:

https://github.com/apache/nifi/pull/621

NIFI-2185: Proxy requests through the cluster coordinator rather than…

… making use of distributed read/write locks

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/markap14/nifi NIFI-2185

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/nifi/pull/621.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #621


commit b8bfb286fc54dfae9b09fe010209942f04fb2065
Author: Mark Payne 
Date:   2016-07-08T16:58:06Z

NIFI-2185: Proxy requests through the cluster coordinator rather than 
making use of distributed read/write locks




> Implement two-phase read for GET requests when replicated across the cluster
> 
>
> Key: NIFI-2185
> URL: https://issues.apache.org/jira/browse/NIFI-2185
> Project: Apache NiFi
>  Issue Type: Task
>  Components: Core Framework
>Affects Versions: 1.0.0
>Reporter: Mark Payne
>Assignee: Mark Payne
>Priority: Blocker
> Fix For: 1.0.0
>
>
> With the new zero-master clustering paradigm, we can have a scenario where a 
> GET request and a POST request occur 'at the same time' but the requests are 
> replicated to the nodes in different orders. For instance, if I have a 
> Process Group with ID 1234, it's possible that the group could be read via a 
> GET and modified via a POST request simultaneously.
> If we have a 3 node cluster, this can result in Nodes 1 and 2 servicing the 
> GET request before the POST request, while Node 3 services the POST request 
> before the GET request. As a result, Nodes 1 and 2 return one view of the 
> Process Group while Node 3 returns a different view of the Process Group.
> This wasn't an issue with the NCM because the NCM provided a locking 
> mechanism that prevented any GET requests from being replicated while a 
> POST/PUT/DELETE was also being replicated.
> In the new clustering model, in order to implement the same type of logic, we 
> need a two-phase read, where the first phase simply obtains a Read Lock, and 
> the second phase handles the logic of creating the response for the client to 
> consume and then unlocking the Read Lock.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] nifi pull request #483: NIFI-1899 - Introduce ExtractEmailAttachments and Ex...

2016-07-08 Thread JPercivall
Github user JPercivall commented on a diff in the pull request:

https://github.com/apache/nifi/pull/483#discussion_r70128375
  
--- Diff: 
nifi-nar-bundles/nifi-email-bundle/nifi-email-processors/src/main/java/org/apache/nifi/processors/email/smtp/event/SmtpEvent.java
 ---
@@ -0,0 +1,91 @@
+/*
+* Licensed to the Apache Software Foundation (ASF) under one or more
+* contributor license agreements.  See the NOTICE file distributed with
+* this work for additional information regarding copyright ownership.
+* The ASF licenses this file to You under the Apache License, Version 2.0
+* (the "License"); you may not use this file except in compliance with
+* the License.  You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
+package org.apache.nifi.processors.email.smtp.event;
+
+
+import java.security.cert.X509Certificate;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * A Smtp event which adds the transaction number and command to the 
StandardEvent.
+ */
+
+public class SmtpEvent{
+
+private final String remoteIP;
+private final String helo;
+private final String from;
+private final String to;
+private final byte[] bodyData;
+private List> certificatesDetails;
+
+public SmtpEvent(final String remoteIP, final String helo, final 
String from, final String to, final X509Certificate[] certificates, final 
byte[] bodyData) {
+this.remoteIP = remoteIP;
+this.helo = helo;
+this.from = from;
+this.to = to;
+this.bodyData = bodyData;
+
+this.certificatesDetails = new ArrayList<>();
+
+for (int c = 0; c < certificates.length; c++) {
+X509Certificate cert = certificates[c];
+if (cert.getSerialNumber() != null && cert.getSubjectDN() != 
null) {
+Map certificate = new HashMap<>();
+
+String certSerialNumber = 
cert.getSerialNumber().toString();
+String certSubjectDN = cert.getSubjectDN().getName();
+
+
+certificate.put("SerialNumber", certSerialNumber);
+certificate.put("SubjectName", certSubjectDN);
+
+certificatesDetails.add(certificate);
+
+}
+}
+}
+
+public List getCertifcateDetails() {
--- End diff --

Bit of a nit pick but, it is best practice to keep the explicit type here 
(List>) that way you don't have the "unchecked assignment" 
warnings in ListenSMTP.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] nifi pull request #621: NIFI-2185: Proxy requests through the cluster coordi...

2016-07-08 Thread markap14
GitHub user markap14 opened a pull request:

https://github.com/apache/nifi/pull/621

NIFI-2185: Proxy requests through the cluster coordinator rather than…

… making use of distributed read/write locks

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/markap14/nifi NIFI-2185

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/nifi/pull/621.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #621


commit b8bfb286fc54dfae9b09fe010209942f04fb2065
Author: Mark Payne 
Date:   2016-07-08T16:58:06Z

NIFI-2185: Proxy requests through the cluster coordinator rather than 
making use of distributed read/write locks




---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] nifi pull request #483: NIFI-1899 - Introduce ExtractEmailAttachments and Ex...

2016-07-08 Thread JPercivall
Github user JPercivall commented on a diff in the pull request:

https://github.com/apache/nifi/pull/483#discussion_r70128118
  
--- Diff: 
nifi-nar-bundles/nifi-email-bundle/nifi-email-processors/src/main/java/org/apache/nifi/processors/email/ListenSMTP.java
 ---
@@ -0,0 +1,385 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  See the NOTICE file distributed with
+ *  this work for additional information regarding copyright ownership.
+ *  The ASF licenses this file to You under the Apache License, Version 2.0
+ *  (the "License"); you may not use this file except in compliance with
+ *  the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 
implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+*/
+package org.apache.nifi.processors.email;
+
+import javax.net.ssl.SSLContext;
+import javax.net.ssl.SSLSocket;
+import javax.net.ssl.SSLSocketFactory;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.net.InetSocketAddress;
+import java.net.Socket;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.concurrent.LinkedBlockingQueue;
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.atomic.AtomicBoolean;
+
+import org.apache.nifi.annotation.lifecycle.OnStopped;
+import org.apache.nifi.flowfile.attributes.CoreAttributes;
+import org.apache.nifi.logging.ComponentLog;
+import org.apache.nifi.processor.DataUnit;
+import org.apache.nifi.processors.email.smtp.event.SmtpEvent;
+import 
org.apache.nifi.processors.email.smtp.handler.SMTPMessageHandlerFactory;
+import org.subethamail.smtp.server.SMTPServer;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.nifi.annotation.lifecycle.OnScheduled;
+import org.apache.nifi.components.PropertyDescriptor;
+import org.apache.nifi.processor.AbstractProcessor;
+import org.apache.nifi.processor.ProcessorInitializationContext;
+import org.apache.nifi.processor.Relationship;
+import org.apache.nifi.processor.util.StandardValidators;
+
+import org.apache.nifi.annotation.behavior.InputRequirement;
+import org.apache.nifi.annotation.behavior.WritesAttribute;
+import org.apache.nifi.annotation.behavior.WritesAttributes;
+import org.apache.nifi.annotation.documentation.CapabilityDescription;
+import org.apache.nifi.annotation.documentation.Tags;
+import org.apache.nifi.processor.ProcessContext;
+import org.apache.nifi.processor.ProcessSession;
+import org.apache.nifi.processor.exception.ProcessException;
+import org.apache.nifi.components.ValidationContext;
+import org.apache.nifi.components.ValidationResult;
+import org.apache.nifi.flowfile.FlowFile;
+import org.apache.nifi.processor.io.OutputStreamCallback;
+import org.apache.nifi.ssl.SSLContextService;
+
+@Tags({"listen", "email", "smtp"})
+@InputRequirement(InputRequirement.Requirement.INPUT_FORBIDDEN)
+@CapabilityDescription("This processor implements a lightweight SMTP 
server to an arbitrary port, " +
+"allowing nifi to listen for incoming email. " +
+"" +
+"Note this server does not perform any email validation. If direct 
exposure to the internet is sought," +
+"it may be a better idea to use the combination of NiFi and an 
industrial scale MTA (e.g. Postfix)")
+@WritesAttributes({
+@WritesAttribute(attribute = "mime.type", description = "The value 
used during HELO"),
+@WritesAttribute(attribute = "smtp.helo", description = "The value 
used during HELO"),
+@WritesAttribute(attribute = "smtp.certificates.*.serial", 
description = "The serial numbers for each of the " +
+"certificates used by an TLS peer"),
+@WritesAttribute(attribute = "smtp.certificates.*.principal", 
description = "The principal for each of the " +
+"certificates used by an TLS peer"),
+@WritesAttribute(attribute = "smtp.from", description = "The value 
used during MAIL FROM (i.e. envelope)"),
+@WritesAttribute(attribute = "smtp.to", description = "The value 
used during RCPT TO (i.e. envelope)")})
+
+public class ListenSMTP extends AbstractProcessor {
+public static final 

[jira] [Commented] (NIFI-1899) Create ListenSMTP & ExtractEmailAttachment processors

2016-07-08 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/NIFI-1899?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15368263#comment-15368263
 ] 

ASF GitHub Bot commented on NIFI-1899:
--

Github user JPercivall commented on a diff in the pull request:

https://github.com/apache/nifi/pull/483#discussion_r70128118
  
--- Diff: 
nifi-nar-bundles/nifi-email-bundle/nifi-email-processors/src/main/java/org/apache/nifi/processors/email/ListenSMTP.java
 ---
@@ -0,0 +1,385 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  See the NOTICE file distributed with
+ *  this work for additional information regarding copyright ownership.
+ *  The ASF licenses this file to You under the Apache License, Version 2.0
+ *  (the "License"); you may not use this file except in compliance with
+ *  the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 
implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+*/
+package org.apache.nifi.processors.email;
+
+import javax.net.ssl.SSLContext;
+import javax.net.ssl.SSLSocket;
+import javax.net.ssl.SSLSocketFactory;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.net.InetSocketAddress;
+import java.net.Socket;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.concurrent.LinkedBlockingQueue;
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.atomic.AtomicBoolean;
+
+import org.apache.nifi.annotation.lifecycle.OnStopped;
+import org.apache.nifi.flowfile.attributes.CoreAttributes;
+import org.apache.nifi.logging.ComponentLog;
+import org.apache.nifi.processor.DataUnit;
+import org.apache.nifi.processors.email.smtp.event.SmtpEvent;
+import 
org.apache.nifi.processors.email.smtp.handler.SMTPMessageHandlerFactory;
+import org.subethamail.smtp.server.SMTPServer;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.nifi.annotation.lifecycle.OnScheduled;
+import org.apache.nifi.components.PropertyDescriptor;
+import org.apache.nifi.processor.AbstractProcessor;
+import org.apache.nifi.processor.ProcessorInitializationContext;
+import org.apache.nifi.processor.Relationship;
+import org.apache.nifi.processor.util.StandardValidators;
+
+import org.apache.nifi.annotation.behavior.InputRequirement;
+import org.apache.nifi.annotation.behavior.WritesAttribute;
+import org.apache.nifi.annotation.behavior.WritesAttributes;
+import org.apache.nifi.annotation.documentation.CapabilityDescription;
+import org.apache.nifi.annotation.documentation.Tags;
+import org.apache.nifi.processor.ProcessContext;
+import org.apache.nifi.processor.ProcessSession;
+import org.apache.nifi.processor.exception.ProcessException;
+import org.apache.nifi.components.ValidationContext;
+import org.apache.nifi.components.ValidationResult;
+import org.apache.nifi.flowfile.FlowFile;
+import org.apache.nifi.processor.io.OutputStreamCallback;
+import org.apache.nifi.ssl.SSLContextService;
+
+@Tags({"listen", "email", "smtp"})
+@InputRequirement(InputRequirement.Requirement.INPUT_FORBIDDEN)
+@CapabilityDescription("This processor implements a lightweight SMTP 
server to an arbitrary port, " +
+"allowing nifi to listen for incoming email. " +
+"" +
+"Note this server does not perform any email validation. If direct 
exposure to the internet is sought," +
+"it may be a better idea to use the combination of NiFi and an 
industrial scale MTA (e.g. Postfix)")
+@WritesAttributes({
+@WritesAttribute(attribute = "mime.type", description = "The value 
used during HELO"),
+@WritesAttribute(attribute = "smtp.helo", description = "The value 
used during HELO"),
+@WritesAttribute(attribute = "smtp.certificates.*.serial", 
description = "The serial numbers for each of the " +
+"certificates used by an TLS peer"),
+@WritesAttribute(attribute = "smtp.certificates.*.principal", 
description = "The principal for each of the " +
+"certificates used by an TLS peer"),
+@WritesAttribute(attribute = "smtp.from", description = "The value 
used during MAIL 

[jira] [Updated] (NIFI-2205) Filter components / border not rendered properly in the Cluster dialog

2016-07-08 Thread Mark Payne (JIRA)

 [ 
https://issues.apache.org/jira/browse/NIFI-2205?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Mark Payne updated NIFI-2205:
-
Issue Type: Sub-task  (was: Bug)
Parent: NIFI-2010

> Filter components / border not rendered properly in the Cluster dialog
> --
>
> Key: NIFI-2205
> URL: https://issues.apache.org/jira/browse/NIFI-2205
> Project: Apache NiFi
>  Issue Type: Sub-task
>  Components: Core UI
>Affects Versions: 1.0.0
>Reporter: Mark Payne
> Fix For: 1.0.0
>
> Attachments: screenshot-1.png
>
>
> When I go to the "Cluster" dialog, I see that the filter boxes are hidden 
> behind the table and there is no border around the dialog.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] nifi pull request #483: NIFI-1899 - Introduce ExtractEmailAttachments and Ex...

2016-07-08 Thread JPercivall
Github user JPercivall commented on a diff in the pull request:

https://github.com/apache/nifi/pull/483#discussion_r70127060
  
--- Diff: 
nifi-nar-bundles/nifi-email-bundle/nifi-email-processors/src/main/java/org/apache/nifi/processors/email/ListenSMTP.java
 ---
@@ -0,0 +1,385 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  See the NOTICE file distributed with
+ *  this work for additional information regarding copyright ownership.
+ *  The ASF licenses this file to You under the Apache License, Version 2.0
+ *  (the "License"); you may not use this file except in compliance with
+ *  the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 
implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+*/
+package org.apache.nifi.processors.email;
+
+import javax.net.ssl.SSLContext;
+import javax.net.ssl.SSLSocket;
+import javax.net.ssl.SSLSocketFactory;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.net.InetSocketAddress;
+import java.net.Socket;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.concurrent.LinkedBlockingQueue;
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.atomic.AtomicBoolean;
+
+import org.apache.nifi.annotation.lifecycle.OnStopped;
+import org.apache.nifi.flowfile.attributes.CoreAttributes;
+import org.apache.nifi.logging.ComponentLog;
+import org.apache.nifi.processor.DataUnit;
+import org.apache.nifi.processors.email.smtp.event.SmtpEvent;
+import 
org.apache.nifi.processors.email.smtp.handler.SMTPMessageHandlerFactory;
+import org.subethamail.smtp.server.SMTPServer;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.nifi.annotation.lifecycle.OnScheduled;
+import org.apache.nifi.components.PropertyDescriptor;
+import org.apache.nifi.processor.AbstractProcessor;
+import org.apache.nifi.processor.ProcessorInitializationContext;
+import org.apache.nifi.processor.Relationship;
+import org.apache.nifi.processor.util.StandardValidators;
+
+import org.apache.nifi.annotation.behavior.InputRequirement;
+import org.apache.nifi.annotation.behavior.WritesAttribute;
+import org.apache.nifi.annotation.behavior.WritesAttributes;
+import org.apache.nifi.annotation.documentation.CapabilityDescription;
+import org.apache.nifi.annotation.documentation.Tags;
+import org.apache.nifi.processor.ProcessContext;
+import org.apache.nifi.processor.ProcessSession;
+import org.apache.nifi.processor.exception.ProcessException;
+import org.apache.nifi.components.ValidationContext;
+import org.apache.nifi.components.ValidationResult;
+import org.apache.nifi.flowfile.FlowFile;
+import org.apache.nifi.processor.io.OutputStreamCallback;
+import org.apache.nifi.ssl.SSLContextService;
+
+@Tags({"listen", "email", "smtp"})
+@InputRequirement(InputRequirement.Requirement.INPUT_FORBIDDEN)
+@CapabilityDescription("This processor implements a lightweight SMTP 
server to an arbitrary port, " +
+"allowing nifi to listen for incoming email. " +
+"" +
+"Note this server does not perform any email validation. If direct 
exposure to the internet is sought," +
+"it may be a better idea to use the combination of NiFi and an 
industrial scale MTA (e.g. Postfix)")
+@WritesAttributes({
+@WritesAttribute(attribute = "mime.type", description = "The value 
used during HELO"),
+@WritesAttribute(attribute = "smtp.helo", description = "The value 
used during HELO"),
+@WritesAttribute(attribute = "smtp.certificates.*.serial", 
description = "The serial numbers for each of the " +
+"certificates used by an TLS peer"),
+@WritesAttribute(attribute = "smtp.certificates.*.principal", 
description = "The principal for each of the " +
+"certificates used by an TLS peer"),
+@WritesAttribute(attribute = "smtp.from", description = "The value 
used during MAIL FROM (i.e. envelope)"),
+@WritesAttribute(attribute = "smtp.to", description = "The value 
used during RCPT TO (i.e. envelope)")})
+
+public class ListenSMTP extends AbstractProcessor {
+public static final 

[jira] [Created] (NIFI-2206) Wrong mouse cursor when hovering over 'Cancel' button in Edit Property dialog

2016-07-08 Thread Mark Payne (JIRA)
Mark Payne created NIFI-2206:


 Summary: Wrong mouse cursor when hovering over 'Cancel' button in 
Edit Property dialog
 Key: NIFI-2206
 URL: https://issues.apache.org/jira/browse/NIFI-2206
 Project: Apache NiFi
  Issue Type: Sub-task
  Components: Core UI
Affects Versions: 1.0.0
Reporter: Mark Payne
 Fix For: 1.0.0


I added a ListFile Processor. Clicked Configure, switched to Properties tab. 
Clicked to change the value of the "Input Directory" property. When I placed 
the mouse over the "Cancel" button, the mouse cursor changes to the 'Move' 
cursor instead of the 'pointer' cursor



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (NIFI-1899) Create ListenSMTP & ExtractEmailAttachment processors

2016-07-08 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/NIFI-1899?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15368253#comment-15368253
 ] 

ASF GitHub Bot commented on NIFI-1899:
--

Github user JPercivall commented on a diff in the pull request:

https://github.com/apache/nifi/pull/483#discussion_r70127425
  
--- Diff: 
nifi-nar-bundles/nifi-email-bundle/nifi-email-processors/src/main/java/org/apache/nifi/processors/email/ListenSMTP.java
 ---
@@ -0,0 +1,385 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  See the NOTICE file distributed with
+ *  this work for additional information regarding copyright ownership.
+ *  The ASF licenses this file to You under the Apache License, Version 2.0
+ *  (the "License"); you may not use this file except in compliance with
+ *  the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 
implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+*/
+package org.apache.nifi.processors.email;
+
+import javax.net.ssl.SSLContext;
+import javax.net.ssl.SSLSocket;
+import javax.net.ssl.SSLSocketFactory;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.net.InetSocketAddress;
+import java.net.Socket;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.concurrent.LinkedBlockingQueue;
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.atomic.AtomicBoolean;
+
+import org.apache.nifi.annotation.lifecycle.OnStopped;
+import org.apache.nifi.flowfile.attributes.CoreAttributes;
+import org.apache.nifi.logging.ComponentLog;
+import org.apache.nifi.processor.DataUnit;
+import org.apache.nifi.processors.email.smtp.event.SmtpEvent;
+import 
org.apache.nifi.processors.email.smtp.handler.SMTPMessageHandlerFactory;
+import org.subethamail.smtp.server.SMTPServer;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.nifi.annotation.lifecycle.OnScheduled;
+import org.apache.nifi.components.PropertyDescriptor;
+import org.apache.nifi.processor.AbstractProcessor;
+import org.apache.nifi.processor.ProcessorInitializationContext;
+import org.apache.nifi.processor.Relationship;
+import org.apache.nifi.processor.util.StandardValidators;
+
+import org.apache.nifi.annotation.behavior.InputRequirement;
+import org.apache.nifi.annotation.behavior.WritesAttribute;
+import org.apache.nifi.annotation.behavior.WritesAttributes;
+import org.apache.nifi.annotation.documentation.CapabilityDescription;
+import org.apache.nifi.annotation.documentation.Tags;
+import org.apache.nifi.processor.ProcessContext;
+import org.apache.nifi.processor.ProcessSession;
+import org.apache.nifi.processor.exception.ProcessException;
+import org.apache.nifi.components.ValidationContext;
+import org.apache.nifi.components.ValidationResult;
+import org.apache.nifi.flowfile.FlowFile;
+import org.apache.nifi.processor.io.OutputStreamCallback;
+import org.apache.nifi.ssl.SSLContextService;
+
+@Tags({"listen", "email", "smtp"})
+@InputRequirement(InputRequirement.Requirement.INPUT_FORBIDDEN)
+@CapabilityDescription("This processor implements a lightweight SMTP 
server to an arbitrary port, " +
+"allowing nifi to listen for incoming email. " +
+"" +
+"Note this server does not perform any email validation. If direct 
exposure to the internet is sought," +
+"it may be a better idea to use the combination of NiFi and an 
industrial scale MTA (e.g. Postfix)")
+@WritesAttributes({
+@WritesAttribute(attribute = "mime.type", description = "The value 
used during HELO"),
+@WritesAttribute(attribute = "smtp.helo", description = "The value 
used during HELO"),
+@WritesAttribute(attribute = "smtp.certificates.*.serial", 
description = "The serial numbers for each of the " +
+"certificates used by an TLS peer"),
+@WritesAttribute(attribute = "smtp.certificates.*.principal", 
description = "The principal for each of the " +
+"certificates used by an TLS peer"),
+@WritesAttribute(attribute = "smtp.from", description = "The value 
used during MAIL 

[GitHub] nifi pull request #483: NIFI-1899 - Introduce ExtractEmailAttachments and Ex...

2016-07-08 Thread JPercivall
Github user JPercivall commented on a diff in the pull request:

https://github.com/apache/nifi/pull/483#discussion_r70127425
  
--- Diff: 
nifi-nar-bundles/nifi-email-bundle/nifi-email-processors/src/main/java/org/apache/nifi/processors/email/ListenSMTP.java
 ---
@@ -0,0 +1,385 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  See the NOTICE file distributed with
+ *  this work for additional information regarding copyright ownership.
+ *  The ASF licenses this file to You under the Apache License, Version 2.0
+ *  (the "License"); you may not use this file except in compliance with
+ *  the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 
implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+*/
+package org.apache.nifi.processors.email;
+
+import javax.net.ssl.SSLContext;
+import javax.net.ssl.SSLSocket;
+import javax.net.ssl.SSLSocketFactory;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.net.InetSocketAddress;
+import java.net.Socket;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.concurrent.LinkedBlockingQueue;
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.atomic.AtomicBoolean;
+
+import org.apache.nifi.annotation.lifecycle.OnStopped;
+import org.apache.nifi.flowfile.attributes.CoreAttributes;
+import org.apache.nifi.logging.ComponentLog;
+import org.apache.nifi.processor.DataUnit;
+import org.apache.nifi.processors.email.smtp.event.SmtpEvent;
+import 
org.apache.nifi.processors.email.smtp.handler.SMTPMessageHandlerFactory;
+import org.subethamail.smtp.server.SMTPServer;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.nifi.annotation.lifecycle.OnScheduled;
+import org.apache.nifi.components.PropertyDescriptor;
+import org.apache.nifi.processor.AbstractProcessor;
+import org.apache.nifi.processor.ProcessorInitializationContext;
+import org.apache.nifi.processor.Relationship;
+import org.apache.nifi.processor.util.StandardValidators;
+
+import org.apache.nifi.annotation.behavior.InputRequirement;
+import org.apache.nifi.annotation.behavior.WritesAttribute;
+import org.apache.nifi.annotation.behavior.WritesAttributes;
+import org.apache.nifi.annotation.documentation.CapabilityDescription;
+import org.apache.nifi.annotation.documentation.Tags;
+import org.apache.nifi.processor.ProcessContext;
+import org.apache.nifi.processor.ProcessSession;
+import org.apache.nifi.processor.exception.ProcessException;
+import org.apache.nifi.components.ValidationContext;
+import org.apache.nifi.components.ValidationResult;
+import org.apache.nifi.flowfile.FlowFile;
+import org.apache.nifi.processor.io.OutputStreamCallback;
+import org.apache.nifi.ssl.SSLContextService;
+
+@Tags({"listen", "email", "smtp"})
+@InputRequirement(InputRequirement.Requirement.INPUT_FORBIDDEN)
+@CapabilityDescription("This processor implements a lightweight SMTP 
server to an arbitrary port, " +
+"allowing nifi to listen for incoming email. " +
+"" +
+"Note this server does not perform any email validation. If direct 
exposure to the internet is sought," +
+"it may be a better idea to use the combination of NiFi and an 
industrial scale MTA (e.g. Postfix)")
+@WritesAttributes({
+@WritesAttribute(attribute = "mime.type", description = "The value 
used during HELO"),
+@WritesAttribute(attribute = "smtp.helo", description = "The value 
used during HELO"),
+@WritesAttribute(attribute = "smtp.certificates.*.serial", 
description = "The serial numbers for each of the " +
+"certificates used by an TLS peer"),
+@WritesAttribute(attribute = "smtp.certificates.*.principal", 
description = "The principal for each of the " +
+"certificates used by an TLS peer"),
+@WritesAttribute(attribute = "smtp.from", description = "The value 
used during MAIL FROM (i.e. envelope)"),
+@WritesAttribute(attribute = "smtp.to", description = "The value 
used during RCPT TO (i.e. envelope)")})
+
+public class ListenSMTP extends AbstractProcessor {
+public static final 

[jira] [Created] (NIFI-2204) Move Controller level bulletins out of Controller Status

2016-07-08 Thread Matt Gilman (JIRA)
Matt Gilman created NIFI-2204:
-

 Summary: Move Controller level bulletins out of Controller Status
 Key: NIFI-2204
 URL: https://issues.apache.org/jira/browse/NIFI-2204
 Project: Apache NiFi
  Issue Type: Improvement
  Components: Core Framework, Core UI
Reporter: Matt Gilman
Priority: Blocker
 Fix For: 1.0.0


Controller level bulletins need to be removed from the controller status 
endpoint and into some endpoint that is accessed through the Controller 
resource for authorization consistency.

All status requests are authorized under the flow but the bulletins are more 
sensitive.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (NIFI-2082) When a node is disconnected from cluster, it should be made extremely obvious in the UI

2016-07-08 Thread Rob Moran (JIRA)

 [ 
https://issues.apache.org/jira/browse/NIFI-2082?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rob Moran updated NIFI-2082:

Attachment: nifi-2082_disconnected-node-dialog-2.png

> When a node is disconnected from cluster, it should be made extremely obvious 
> in the UI
> ---
>
> Key: NIFI-2082
> URL: https://issues.apache.org/jira/browse/NIFI-2082
> Project: Apache NiFi
>  Issue Type: Sub-task
>  Components: Core UI
>Affects Versions: 1.0.0
>Reporter: Mark Payne
>Priority: Critical
> Fix For: 1.0.0
>
> Attachments: nifi-2082_cluster-warning.png, 
> nifi-2082_disconnected-node-dialog-2.png, 
> nifi-2082_disconnected-node-dialog.png
>
>
> Because we now have a zero-master clustering paradigm, it's possible to open 
> the UI on a node that is disconnected from the cluster. In this case, changes 
> made to the UI will be accepted, but they will not be replicated to the 
> cluster. As a result, the flow will be out-of-sync with the cluster, and in 
> order to get the node back to the cluster, the changes would have to be 
> undone and the work potentially lost (user could create a template to save 
> the changes but may not know what all they changed).
> The UI should make it very obvious that the node is disconnected and that any 
> changes that made will not be replicated to the cluster.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (NIFI-2198) Process Group Config > Ctrl Service Tab > Edit Ctrl Service > Clicking goto

2016-07-08 Thread Scott Aslan (JIRA)

 [ 
https://issues.apache.org/jira/browse/NIFI-2198?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Scott Aslan reassigned NIFI-2198:
-

Assignee: Scott Aslan

> Process Group Config > Ctrl Service Tab > Edit Ctrl Service > Clicking goto
> ---
>
> Key: NIFI-2198
> URL: https://issues.apache.org/jira/browse/NIFI-2198
> Project: Apache NiFi
>  Issue Type: Sub-task
>  Components: Core UI
>Reporter: Scott Aslan
>Assignee: Scott Aslan
>
> Throws an error



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (NIFI-1899) Create ListenSMTP & ExtractEmailAttachment processors

2016-07-08 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/NIFI-1899?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15367880#comment-15367880
 ] 

ASF GitHub Bot commented on NIFI-1899:
--

Github user JPercivall commented on a diff in the pull request:

https://github.com/apache/nifi/pull/483#discussion_r70097725
  
--- Diff: 
nifi-nar-bundles/nifi-email-bundle/nifi-email-processors/src/main/java/org/apache/nifi/processors/email/ExtractEmailAttachments.java
 ---
@@ -0,0 +1,201 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.nifi.processors.email;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Properties;
+import java.util.Set;
+import java.util.Date;
+
+import javax.activation.DataSource;
+import javax.mail.Address;
+import javax.mail.MessagingException;
+import javax.mail.Session;
+import javax.mail.internet.MimeMessage;
+
+import org.apache.commons.io.IOUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.mail.util.MimeMessageParser;
+
+
+import org.apache.nifi.annotation.behavior.EventDriven;
+import org.apache.nifi.annotation.behavior.InputRequirement;
+import org.apache.nifi.annotation.behavior.InputRequirement.Requirement;
+import org.apache.nifi.annotation.behavior.SideEffectFree;
+import org.apache.nifi.annotation.behavior.WritesAttribute;
+import org.apache.nifi.annotation.behavior.WritesAttributes;
+import org.apache.nifi.annotation.documentation.CapabilityDescription;
+import org.apache.nifi.annotation.documentation.Tags;
+import org.apache.nifi.components.PropertyDescriptor;
+import org.apache.nifi.flowfile.FlowFile;
+import org.apache.nifi.flowfile.attributes.CoreAttributes;
+import org.apache.nifi.logging.ComponentLog;
+import org.apache.nifi.processor.AbstractProcessor;
+import org.apache.nifi.processor.ProcessContext;
+import org.apache.nifi.processor.ProcessSession;
+import org.apache.nifi.processor.ProcessorInitializationContext;
+import org.apache.nifi.processor.Relationship;
+import org.apache.nifi.processor.io.InputStreamCallback;
+import org.apache.nifi.processor.io.OutputStreamCallback;
+import org.apache.nifi.stream.io.BufferedInputStream;
+
+
+
+
+@EventDriven
+@SideEffectFree
+@Tags({"split", "email"})
+@InputRequirement(Requirement.INPUT_REQUIRED)
+@CapabilityDescription("Extract attachments from a mime formatted email 
file, splitting them into individual flowfiles.")
+@WritesAttributes({
+@WritesAttribute(attribute = "filename ", description = "The 
filename of the attachment"),
+@WritesAttribute(attribute = "email.attachment.parent.filename ", 
description = "The filename of the parent FlowFile"),
+@WritesAttribute(attribute = "email.attachment.parent.uuid", 
description = "The UUID of the original FlowFile."),
+@WritesAttribute(attribute = "mime.type", description = "The mime 
type of the attachment.")})
+
+public class ExtractEmailAttachments extends AbstractProcessor {
+public static final String ATTACHMENT_ORIGINAL_FILENAME = 
"email.attachment.parent.filename";
+public static final String ATTACHMENT_ORIGINAL_UUID = 
"email.attachment.parent.uuid";
+
+public static final Relationship REL_ATTACHMENTS = new 
Relationship.Builder()
+.name("attachments")
+.description("Each individual attachment will be routed to the 
attachments relationship")
+.build();
+public static final Relationship REL_ORIGINAL = new 
Relationship.Builder()
+.name("original")
+.description("The original file")
+.build();
+public static final 

[jira] [Commented] (NIFI-2082) When a node is disconnected from cluster, it should be made extremely obvious in the UI

2016-07-08 Thread Mark Payne (JIRA)

[ 
https://issues.apache.org/jira/browse/NIFI-2082?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15367833#comment-15367833
 ] 

Mark Payne commented on NIFI-2082:
--

[~rmoran] - all looks good to me except the notification shown on a connected 
node. If there is a node disconnected from the cluster, you cannot modify the 
cluster's flow until that node is either re-connected, or removed from the 
cluster. 

> When a node is disconnected from cluster, it should be made extremely obvious 
> in the UI
> ---
>
> Key: NIFI-2082
> URL: https://issues.apache.org/jira/browse/NIFI-2082
> Project: Apache NiFi
>  Issue Type: Sub-task
>  Components: Core UI
>Affects Versions: 1.0.0
>Reporter: Mark Payne
>Priority: Critical
> Fix For: 1.0.0
>
> Attachments: nifi-2082_cluster-warning.png, 
> nifi-2082_disconnected-node-dialog.png
>
>
> Because we now have a zero-master clustering paradigm, it's possible to open 
> the UI on a node that is disconnected from the cluster. In this case, changes 
> made to the UI will be accepted, but they will not be replicated to the 
> cluster. As a result, the flow will be out-of-sync with the cluster, and in 
> order to get the node back to the cluster, the changes would have to be 
> undone and the work potentially lost (user could create a template to save 
> the changes but may not know what all they changed).
> The UI should make it very obvious that the node is disconnected and that any 
> changes that made will not be replicated to the cluster.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] nifi pull request #483: NIFI-1899 - Introduce ExtractEmailAttachments and Ex...

2016-07-08 Thread JPercivall
Github user JPercivall commented on a diff in the pull request:

https://github.com/apache/nifi/pull/483#discussion_r70094915
  
--- Diff: 
nifi-nar-bundles/nifi-email-bundle/nifi-email-processors/src/main/java/org/apache/nifi/processors/email/ExtractEmailAttachments.java
 ---
@@ -0,0 +1,201 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.nifi.processors.email;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Properties;
+import java.util.Set;
+import java.util.Date;
+
+import javax.activation.DataSource;
+import javax.mail.Address;
+import javax.mail.MessagingException;
+import javax.mail.Session;
+import javax.mail.internet.MimeMessage;
+
+import org.apache.commons.io.IOUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.mail.util.MimeMessageParser;
+
+
+import org.apache.nifi.annotation.behavior.EventDriven;
+import org.apache.nifi.annotation.behavior.InputRequirement;
+import org.apache.nifi.annotation.behavior.InputRequirement.Requirement;
+import org.apache.nifi.annotation.behavior.SideEffectFree;
+import org.apache.nifi.annotation.behavior.WritesAttribute;
+import org.apache.nifi.annotation.behavior.WritesAttributes;
+import org.apache.nifi.annotation.documentation.CapabilityDescription;
+import org.apache.nifi.annotation.documentation.Tags;
+import org.apache.nifi.components.PropertyDescriptor;
+import org.apache.nifi.flowfile.FlowFile;
+import org.apache.nifi.flowfile.attributes.CoreAttributes;
+import org.apache.nifi.logging.ComponentLog;
+import org.apache.nifi.processor.AbstractProcessor;
+import org.apache.nifi.processor.ProcessContext;
+import org.apache.nifi.processor.ProcessSession;
+import org.apache.nifi.processor.ProcessorInitializationContext;
+import org.apache.nifi.processor.Relationship;
+import org.apache.nifi.processor.io.InputStreamCallback;
+import org.apache.nifi.processor.io.OutputStreamCallback;
+import org.apache.nifi.stream.io.BufferedInputStream;
+
+
+
+
+@EventDriven
+@SideEffectFree
+@Tags({"split", "email"})
+@InputRequirement(Requirement.INPUT_REQUIRED)
+@CapabilityDescription("Extract attachments from a mime formatted email 
file, splitting them into individual flowfiles.")
+@WritesAttributes({
+@WritesAttribute(attribute = "filename ", description = "The 
filename of the attachment"),
+@WritesAttribute(attribute = "email.attachment.parent.filename ", 
description = "The filename of the parent FlowFile"),
+@WritesAttribute(attribute = "email.attachment.parent.uuid", 
description = "The UUID of the original FlowFile."),
+@WritesAttribute(attribute = "mime.type", description = "The mime 
type of the attachment.")})
+
--- End diff --

I believe this processor should also have the "SupportsBatching" 
annotation[1] 

[1] 
https://github.com/apache/nifi/blob/a83ed34f91432de22552b8ab1abfd7791fbb4412/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/SupportsBatching.java#L49-L49


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] nifi pull request #483: NIFI-1899 - Introduce ExtractEmailAttachments and Ex...

2016-07-08 Thread JPercivall
Github user JPercivall commented on a diff in the pull request:

https://github.com/apache/nifi/pull/483#discussion_r70093109
  
--- Diff: nifi-nar-bundles/nifi-email-bundle/nifi-email-processors/pom.xml 
---
@@ -0,0 +1,75 @@
+
+
+http://maven.apache.org/POM/4.0.0; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd;>
+4.0.0
+
+
+org.apache.nifi
+nifi-email-bundle
+1.0.0-SNAPSHOT
+
+
+nifi-email-processors
+jar
+
+
+
+org.apache.nifi
+nifi-api
+
+
+org.apache.nifi
+nifi-processor-utils
+
+
+javax.mail
+mail
+1.4.7
+
+
+org.apache.commons
+commons-email
+1.4
+
+
+org.subethamail
+subethasmtp
+3.1.7
+
+
+org.apache.nifi
+nifi-ssl-context-service-api
+
+
+org.apache.nifi
+nifi-ssl-context-service
+test
+
+
+org.apache.nifi
+nifi-mock
+1.0.0-SNAPSHOT
--- End diff --

The version here should be removed. It will use the version set in the 
dependency management section of the root pom.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] nifi pull request #483: NIFI-1899 - Introduce ExtractEmailAttachments and Ex...

2016-07-08 Thread JPercivall
Github user JPercivall commented on a diff in the pull request:

https://github.com/apache/nifi/pull/483#discussion_r70092692
  
--- Diff: nifi-assembly/NOTICE ---
@@ -818,6 +818,15 @@ The following binary components are provided under the 
Apache Software License v
The code for the t-digest was originally authored by Ted Dunning
A number of small but very helpful changes have been contributed by 
Adrien Grand (https://github.com/jpountz)
 
+(ASLv2) subethasmtp
+   The following NOTICE information applies:
+
+   Copyright (C) 2006-2007 SubEthaMail.org
--- End diff --

This project is Licensed under ASLv2[1] without any notice[2] so it can be 
removed from our NOTICE file. 

[1] https://github.com/voodoodyne/subethasmtp/blob/3.1.7/LICENSE.txt
[2] https://github.com/voodoodyne/subethasmtp/tree/3.1.7


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Updated] (NIFI-2082) When a node is disconnected from cluster, it should be made extremely obvious in the UI

2016-07-08 Thread Rob Moran (JIRA)

 [ 
https://issues.apache.org/jira/browse/NIFI-2082?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rob Moran updated NIFI-2082:

Attachment: nifi-2082_disconnected-node-dialog.png
nifi-2082_cluster-warning.png

> When a node is disconnected from cluster, it should be made extremely obvious 
> in the UI
> ---
>
> Key: NIFI-2082
> URL: https://issues.apache.org/jira/browse/NIFI-2082
> Project: Apache NiFi
>  Issue Type: Sub-task
>  Components: Core UI
>Affects Versions: 1.0.0
>Reporter: Mark Payne
>Priority: Critical
> Fix For: 1.0.0
>
> Attachments: nifi-2082_cluster-warning.png, 
> nifi-2082_disconnected-node-dialog.png
>
>
> Because we now have a zero-master clustering paradigm, it's possible to open 
> the UI on a node that is disconnected from the cluster. In this case, changes 
> made to the UI will be accepted, but they will not be replicated to the 
> cluster. As a result, the flow will be out-of-sync with the cluster, and in 
> order to get the node back to the cluster, the changes would have to be 
> undone and the work potentially lost (user could create a template to save 
> the changes but may not know what all they changed).
> The UI should make it very obvious that the node is disconnected and that any 
> changes that made will not be replicated to the cluster.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (NIFI-2192) PutKafka results in OOME if sending very large delimited file

2016-07-08 Thread Oleg Zhurakousky (JIRA)

 [ 
https://issues.apache.org/jira/browse/NIFI-2192?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Zhurakousky updated NIFI-2192:
---
Status: Patch Available  (was: Open)

> PutKafka results in OOME if sending very large delimited file
> -
>
> Key: NIFI-2192
> URL: https://issues.apache.org/jira/browse/NIFI-2192
> Project: Apache NiFi
>  Issue Type: Bug
>  Components: Extensions
>Affects Versions: 0.7.0
>Reporter: Mark Payne
>Assignee: Oleg Zhurakousky
>Priority: Blocker
> Fix For: 1.0.0, 0.7.0
>
>
> If I send a very large file to kafka via PutKafka using a delimiter, I see 
> the Java heap fill up until we see constant Full Garbage Collections and the 
> node eventually dies.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (NIFI-2166) When adding Processor to canvas, previously selected tags remain selected

2016-07-08 Thread Scott Aslan (JIRA)

 [ 
https://issues.apache.org/jira/browse/NIFI-2166?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Scott Aslan resolved NIFI-2166.
---
Resolution: Fixed

> When adding Processor to canvas, previously selected tags remain selected
> -
>
> Key: NIFI-2166
> URL: https://issues.apache.org/jira/browse/NIFI-2166
> Project: Apache NiFi
>  Issue Type: Sub-task
>  Components: Core UI
>Reporter: Mark Payne
>Assignee: Scott Aslan
> Fix For: 1.0.0
>
>
> If I drag a Processor to the graph and select a tag from the tag cloud and 
> add the Processor, all works as expected. When I then drag another processor 
> onto the graph, that tag remains selected, filtering the Processors to those 
> that contain the selected tag(s)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (NIFI-2189) New Processor Dialog - Double click on new processor type

2016-07-08 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/NIFI-2189?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15367636#comment-15367636
 ] 

ASF GitHub Bot commented on NIFI-2189:
--

Github user asfgit closed the pull request at:

https://github.com/apache/nifi/pull/615


> New Processor Dialog - Double click on new processor type
> -
>
> Key: NIFI-2189
> URL: https://issues.apache.org/jira/browse/NIFI-2189
> Project: Apache NiFi
>  Issue Type: Bug
>  Components: Core UI
>Reporter: Matt Gilman
>Assignee: Scott Aslan
>Priority: Blocker
> Fix For: 1.0.0
>
>
> Double clicking on the processor type in the new processor dialog is causing 
> multiple instances of the new processor to be added to the canvas.
> Maybe the click handler is being registered multiple times. Maybe once per 
> dialog opening?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] nifi issue #604: [NIFI-2038] [NIFI-2144] [NIFI-2031] [NIFI-2036] [NIFI-2037]

2016-07-08 Thread mcgilman
Github user mcgilman commented on the issue:

https://github.com/apache/nifi/pull/604
  
Looks good @scottyaslan! This has been merged to master. Thanks!


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Commented] (NIFI-2037) Increase font-size for #header .icon, .fa

2016-07-08 Thread ASF subversion and git services (JIRA)

[ 
https://issues.apache.org/jira/browse/NIFI-2037?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15367620#comment-15367620
 ] 

ASF subversion and git services commented on NIFI-2037:
---

Commit fa351a61ab6e79e9ce12ffc0dc660da877de2165 in nifi's branch 
refs/heads/master from [~scottyaslan]
[ https://git-wip-us.apache.org/repos/asf?p=nifi.git;h=fa351a6 ]

[NIFI-2038] Make component buttons larger, add hover icon, and add grip across 
bottom
[NIFI-2031] update global menu styles
[NIFI-2037] Increase header icons font sizes
[NIFI-2036] update logo
[NIFI-2144] consistent view details icons
This closes #604


> Increase font-size for #header .icon, .fa
> -
>
> Key: NIFI-2037
> URL: https://issues.apache.org/jira/browse/NIFI-2037
> Project: Apache NiFi
>  Issue Type: Sub-task
>  Components: Core UI
>Reporter: Rob Moran
>Assignee: Scott Aslan
>
> *For #header .icon*
> CHANGE
> font-size: 30px;
> TO
> font-size: 32px;
> *For #header .fa*
> CHANGE
> font-size: 30px;
> TO
> font-size: 32px;



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (NIFI-2125) Don't force line breaks in base 64 encoding

2016-07-08 Thread William H. (JIRA)

 [ 
https://issues.apache.org/jira/browse/NIFI-2125?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

William H. updated NIFI-2125:
-
Affects Version/s: 0.7.0

> Don't force line breaks in base 64 encoding
> ---
>
> Key: NIFI-2125
> URL: https://issues.apache.org/jira/browse/NIFI-2125
> Project: Apache NiFi
>  Issue Type: Improvement
>  Components: Extensions
>Affects Versions: 0.7.0, 0.6.1
> Environment: All
>Reporter: William H.
>
> Hello,
> We should have an option to deactivate the automatically inserted line breaks 
> in Base64EncodeContent.
> It causes problems when you insert the generated string in a property, such 
> as in a JSON file, because line breaks become illegal characters when parsed.
> Thanks!



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)