Return-Path: X-Original-To: apmail-nifi-commits-archive@minotaur.apache.org Delivered-To: apmail-nifi-commits-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 54FC317E9F for ; Mon, 2 Mar 2015 04:04:32 +0000 (UTC) Received: (qmail 94419 invoked by uid 500); 2 Mar 2015 04:04:29 -0000 Delivered-To: apmail-nifi-commits-archive@nifi.apache.org Received: (qmail 94331 invoked by uid 500); 2 Mar 2015 04:04:29 -0000 Mailing-List: contact commits-help@nifi.incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@nifi.incubator.apache.org Delivered-To: mailing list commits@nifi.incubator.apache.org Received: (qmail 93893 invoked by uid 99); 2 Mar 2015 04:04:27 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 02 Mar 2015 04:04:27 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED,T_RP_MATCHES_RCVD X-Spam-Check-By: apache.org Received: from [140.211.11.3] (HELO mail.apache.org) (140.211.11.3) by apache.org (qpsmtpd/0.29) with SMTP; Mon, 02 Mar 2015 04:04:26 +0000 Received: (qmail 89253 invoked by uid 99); 2 Mar 2015 04:04:06 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 02 Mar 2015 04:04:06 +0000 Date: Mon, 2 Mar 2015 04:04:06 +0000 (UTC) From: "ASF subversion and git services (JIRA)" To: commits@nifi.incubator.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (NIFI-360) Create Processors to work against JSON data MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/NIFI-360?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14342693#comment-14342693 ] ASF subversion and git services commented on NIFI-360: ------------------------------------------------------ Commit 67a4faf1353530aae7828252fb474e6117e13bcc in incubator-nifi's branch refs/heads/develop from [~joewitt] [ https://git-wip-us.apache.org/repos/asf?p=incubator-nifi.git;h=67a4faf ] NIFI-360 removed extra LICENSE information and updated NOTICE to reflect source/copyright from Json Path > Create Processors to work against JSON data > ------------------------------------------- > > Key: NIFI-360 > URL: https://issues.apache.org/jira/browse/NIFI-360 > Project: Apache NiFi > Issue Type: New Feature > Components: Extensions > Reporter: Aldrin Piri > Assignee: Aldrin Piri > Priority: Minor > Labels: processor > > I have created two Processors, EvaluateJsonPath and SplitJson which are analogs of the functionality provided through EvaluateXPath and SpiltXML. > Both are powered primarily around the usage of [JsonPath by Jayway|https://github.com/jayway/JsonPath]. > Their capability descriptions are provided below: > {panel:title= EvaluateJsonPath} > Evaluates one or more JsonPath expressions against the content of a FlowFile. The results of those expressions are assigned to FlowFile Attributes or are written to the content of the FlowFile itself, depending on configuration of the Processor. JsonPaths are entered by adding user-defined properties; the name of the property maps to the Attribute Name into which the result will be placed (if the Destination is flowfile-attribute; otherwise, the property name is ignored). > The value of the property must be a valid JsonPath expression. If the JsonPath evaluates to a JSON array or JSON object and the Return Type is set to 'scalar' the FlowFile will be unmodified and will be routed to failure. A Return Type of JSON can return scalar values if the provided JsonPath evaluates to the specified value and will be routed as a match. If Destination is 'flowfile-content' and the JsonPath does not evaluate to a defined path, the FlowFile will be routed to 'unmatched' without having its contents modified. If Destination is flowfile-attribute and the expression matches nothing, attributes will be created with empty strings as the value, and the FlowFile will always be routed to 'matched.' > {panel} > {panel:title=SplitJson} > Splits a JSON File into multiple, separate FlowFiles for an array element specified by a JsonPath expression. Each generated FlowFile is comprised of an element of the specified array and transferred to relationship 'split, with the original file transferred to the 'original' relationship. If the specified JsonPath is not found or does not evaluate to an array element, the original file is routed to 'failure' and no files are generated. > {panel} > One item of note is the transitive dependency of ASM through Json-Smart through JsonPath. > I have included, what I believe is needed to appropriately make use of this item in the LICENSE. Review of its correctness would is requested. > Any feedback is appreciated. Thanks! -- This message was sent by Atlassian JIRA (v6.3.4#6332)