You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by jp...@apache.org on 2016/07/06 22:07:55 UTC

[1/3] nifi-minifi git commit: MINIFI-50 * Updating the root project README and providing READMEs for both the minifi and minifi-toolkit assemblies. * Adjusting needed LICENSE and NOTICE files. * Adding System Admin Guide to docs folder in generated minif

Repository: nifi-minifi
Updated Branches:
  refs/heads/master 264f6638f -> 52d19dd39


http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/52d19dd3/minifi-docs/pom.xml
----------------------------------------------------------------------
diff --git a/minifi-docs/pom.xml b/minifi-docs/pom.xml
new file mode 100644
index 0000000..724da6f
--- /dev/null
+++ b/minifi-docs/pom.xml
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  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.
+-->
+<project xmlns="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">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.apache.nifi.minifi</groupId>
+        <artifactId>minifi</artifactId>
+        <version>0.0.1-SNAPSHOT</version>
+    </parent>
+    <packaging>pom</packaging>
+    <artifactId>minifi-docs</artifactId>
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-resources-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>copy-markdown</id>
+                        <phase>generate-resources</phase>
+                        <goals>
+                            <goal>copy-resources</goal>
+                        </goals>
+                        <configuration>
+                            <resources>
+                                <resource>
+                                    <directory>src/main/markdown</directory>
+                                </resource>
+                            </resources>
+                            <outputDirectory>${project.build.directory}/markdown</outputDirectory>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <artifactId>maven-assembly-plugin</artifactId>
+                <configuration>
+                    <attach>true</attach>
+                </configuration>
+                <executions>
+                    <execution>
+                        <id>make shared resource</id>
+                        <goals>
+                            <goal>single</goal>
+                        </goals>
+                        <phase>package</phase>
+                        <configuration>
+                            <descriptors>
+                                <descriptor>src/main/assembly/dependencies.xml</descriptor>
+                            </descriptors>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+</project>

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/52d19dd3/minifi-docs/src/main/assembly/dependencies.xml
----------------------------------------------------------------------
diff --git a/minifi-docs/src/main/assembly/dependencies.xml b/minifi-docs/src/main/assembly/dependencies.xml
new file mode 100644
index 0000000..1ea6053
--- /dev/null
+++ b/minifi-docs/src/main/assembly/dependencies.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<!--
+  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.
+-->
+<assembly>
+    <id>resources</id>
+    <formats>
+        <format>zip</format>
+    </formats>
+    <includeBaseDirectory>false</includeBaseDirectory>
+    <files>
+        <file>
+            <source>${project.build.directory}/markdown/System_Admin_Guide.md</source>
+            <outputDirectory>./</outputDirectory>
+            <destName>System_Admin_Guide.md</destName>
+            <fileMode>0644</fileMode>
+            <filtered>true</filtered>
+        </file>
+        <file>
+            <source>./LICENSE</source>
+            <outputDirectory>./</outputDirectory>
+            <destName>LICENSE</destName>
+            <fileMode>0644</fileMode>
+            <filtered>true</filtered>
+        </file>       
+        <file>
+            <source>./NOTICE</source>
+            <outputDirectory>./</outputDirectory>
+            <destName>NOTICE</destName>
+            <fileMode>0644</fileMode>
+            <filtered>true</filtered>
+        </file>
+    </files>
+</assembly>

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/52d19dd3/minifi-docs/src/main/markdown/System_Admin_Guide.md
----------------------------------------------------------------------
diff --git a/minifi-docs/src/main/markdown/System_Admin_Guide.md b/minifi-docs/src/main/markdown/System_Admin_Guide.md
new file mode 100644
index 0000000..c731a7d
--- /dev/null
+++ b/minifi-docs/src/main/markdown/System_Admin_Guide.md
@@ -0,0 +1,620 @@
+<!--
+ 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.
+-->
+
+# MiNiFi System Administrator's Guide
+
+[Apache NiFi Team](dev@nifi.apache.org>)
+
+[NiFi Homepage](http://nifi.apache.org)
+
+# FlowStatus Query Options
+
+From the minifi.sh script there is the ability to query to get the current status of the flow. This section will give an overview of the different options.
+
+Note: Currently the script only accepts one high level option at a time. Also any names of connections, remote process groups or processors that contain ":", ";" or "," will cause parsing errors when querying.
+
+## Processors
+
+To query the processors use the "processor" flag followed by the id of the processor to get (or "all") followed by one of the processor options. The processor options are below.
+
+Option | Description
+------ | -----------
+health | The processor's run status, whether or not it has bulletins and the validation errors (if there are any).
+bulletins | A list of all the current bulletins (if there are any).
+stats | The current stats of the processor. This includes but is not limited to active threads and FlowFiles sent/received.
+
+An example query to get the health, bulletins and stats of the "TailFile" processor is below.
+```
+minifi.sh flowStatus processor:TailFile:health,stats,bulletins
+```
+## Connections
+
+To query the connections use the "connection" flag followed by the id of the connection to get (or "all") followed by one of the connection options. The connection options are below.
+
+Option | Description
+------ | -----------
+health | The connections's queued bytes and queued FlowFile count.
+stats | The current stats of the connection. This includes input/output count and input/output bytes.
+
+An example query to get the health and stats of the "TailToS2S" connection is below.
+```
+minifi.sh flowStatus connection:TailToS2S:health,stats
+```
+
+## Remote Process Groups
+
+To query the remote process groups (RPG) use the "remoteProcessGroup" flag followed by the id of the remote process group to get (or "all") followed by one of the remote process group options. The remote process group options are below.
+
+Option | Description
+------ | -----------
+health | The connections's queued bytes and queued FlowFile count.
+bulletins | A list of all the current bulletins (if there are any).
+authorizationIssues | A list of all the current authorization issues (if there are any).
+inputPorts | A list of every input port for this RPG and their status. Their status includes it's name, whether the target exit and whether it's currently running.
+stats | The current stats of the RPG. This includes the active threads, sent content size and count.
+
+An example query to get the health, bulletins, authorization issues, input ports and stats of all the RPGS is below.
+
+```
+minifi.sh flowStatus remoteprocessinggroup:all:health,bulletins,authorizationIssues,inputports,stats
+```
+
+## Controller Services
+
+To query the controller services use the "controllerServices" flag followed by one of the controller service options. The controller service options are below.
+
+Option | Description
+------ | -----------
+health | The controller service's state, whether or not it has bulletins and any validation errors.
+bulletins | A list of all the current bulletins (if there are any).
+
+An example query to get the health and bulletins of all the controller services is below.
+
+```
+minifi.sh flowStatus controllerservices:health,bulletins
+```
+
+## Provenance Reporting
+
+To query the status of the provenance reporting use the "provenancereporting" flag followed by one of the provenance reporting  options. The provenance reporting options are below.
+
+Option | Description
+------ | -----------
+health | The provenance reporting state, active threads, whether or not it has bulletins and any validation errors.
+bulletins | A list of all the current bulletins (if there are any).
+
+An example query to get the health and bulletins of the provenance reporting is below.
+
+```
+minifi.sh flowStatus provenancereporting:health,bulletins
+```
+
+## Instance
+
+To query the status of the MiNiFi instance in general use the "instance" flag followed by one of the instance options. The instance options are below.
+
+Option | Description
+------ | -----------
+health | The provenance reporting state, active threads, whether or not it has bulletins and any validation errors.
+bulletins | A list of all the current bulletins (if there are any).
+stats | The current stats of the instance. This including but not limited to bytes read/written and FlowFiles sent/transferred.
+
+An example query to get the health, stats and bulletins of the instance is below.
+
+```
+minifi.sh flowStatus instance:health,stats,bulletins
+```
+
+## System Diagnostics
+
+To query the system diagnostics use the "systemdiagnostics" flag followed by one of the system diagnostics options. The system diagnostics options are below.
+
+Option | Description
+------ | -----------
+heap | Information detailing the state of the JVM heap.
+processorstats | The system processor stats. This includes the available processors and load average.
+contentrepositoryusage | A list of each content repository and stats detailing its usage.
+flowfilerepositoryusage | Stats about the current usage of the FlowFile repository.
+garbagecollection | A list of the garbage collection events, detailing their name, collection count and time.
+
+An example query to get the heap, processor stats, content repository usage, FlowFile repository usage and garbage collection from the system diagnostics is below.
+
+```
+minifi.sh flowStatus systemdiagnostics:heap,processorstats,contentrepositoryusage,flowfilerepositoryusage,garbagecollection
+```
+
+## Example
+
+This is an example of a simple query to get the health of all the processors and its results from a simple flow:
+
+```
+User:minifi-0.0.1-SNAPSHOT user ./bin/minifi.sh flowStatus processor:all:health
+
+Java home: /Library/Java/JavaVirtualMachines/jdk1.8.0_74.jdk/Contents/Home
+MiNiFi home: /Users/user/projects/nifi-minifi/minifi-assembly/target/minifi-0.0.1-SNAPSHOT-bin/minifi-0.0.1-SNAPSHOT
+
+Bootstrap Config File: /Users/user/projects/nifi-minifi/minifi-assembly/target/minifi-0.0.1-SNAPSHOT-bin/minifi-0.0.1-SNAPSHOT/conf/bootstrap.conf
+
+Args
+flowStatus
+processor:all:health
+FlowStatusReport{controllerServiceStatusList=null, processorStatusList=[{name='TailFile', processorHealth={runStatus='Running', hasBulletins=false, validationErrorList=[]}, processorStats=null,
+bulletinList=null}], connectionStatusList=null, remoteProcessingGroupStatusList=null, instanceStatus=null, systemDiagnosticsStatus=null, reportingTaskStatusList=null, errorsGeneratingReport=[]}
+```
+
+
+# Config File
+
+The config.yml in the _conf_ directory is the main configuration file for controlling how MiNiFi runs. This section provides an overview of the properties in this file. The file is a YAML
+and follows the YAML format laid out [here](http://www.yaml.org/).
+
+NOTE: Note that values for periods of time and data sizes must include the unit of measure,
+for example "10 sec" or "10 MB", not simply "10".
+
+
+## Flow Controller
+
+The first section of config.yml is for naming and commenting on the file.
+
+ Property | Description
+ -------- | ---
+name      | The name of the file.
+comment   | A comment describing the usage of this config file.
+
+## Core Properties
+
+The Core Properties section applies to the core framework as a whole.
+
+*Property*                                 | *Description*
+---------------------------------------- | -----------
+flow controller graceful shutdown period | Indicates the shutdown period. The default value is 10 sec.
+flow service write delay interval        | When many changes are made to the flow.xml, this property specifies how long to wait before writing out the changes, so as to batch the changes into a single write. The default value is 500 ms.
+administrative yield duration            | If a component allows an unexpected exception to escape, it is considered a bug. As a result, the framework will pause (or administratively yield) the component for this amount of time. This is done so that the component does not use up massive amounts of system resources, since it is known to have problems in the existing state. The default value is 30 sec.
+bored yield duration                     | When a component has no work to do (i.e., is "bored"), this is the amount of time it will wait before checking to see if it has new data to work on. This way, it does not use up CPU resources by checking for new work too often. When setting this property, be aware that it could add extra latency for components that do not constantly have work to do, as once they go into this "bored" state, they will wait this amount of time before checking for more work. The default value is 10 millis.
+max concurrent threads                   | The maximum number of threads any processor can have running at one time.
+
+## FlowFile Repository
+
+The FlowFile repository keeps track of the attributes and current state of each FlowFile in the system. By default,
+this repository is installed in the same root installation directory as all the other repositories; however, it is advisable
+to configure it on a separate drive if available.
+
+*Property*  | *Description*
+----------  | ------------
+partitions  | The number of partitions. The default value is 256.
+checkpoint interval | The FlowFile Repository checkpoint interval. The default value is 2 mins.
+always sync | If set to _true_, any change to the repository will be synchronized to the disk, meaning that NiFi will ask the operating system not to cache the information. This is very expensive and can significantly reduce NiFi performance. However, if it is _false_, there could be the potential for data loss if either there is a sudden power loss or the operating system crashes. The default value is _false_.
+
+#### Swap Subsection
+
+A part of the FlowFile Repository section there is a Swap subsection.
+
+NiFi keeps FlowFile information in memory (the JVM)
+but during surges of incoming data, the FlowFile information can start to take up so much of the JVM that system performance
+suffers. To counteract this effect, NiFi "swaps" the FlowFile information to disk temporarily until more JVM space becomes
+available again. The "Swap" subsection of properties govern how that process occurs.
+
+*Property*  | *Description*
+----------  | ------------
+threshold   | The queue threshold at which NiFi starts to swap FlowFile information to disk. The default value is 20000.
+in period   | The swap in period. The default value is 5 sec.
+in threads  | The number of threads to use for swapping in. The default value is 1.
+out period  | The swap out period. The default value is 5 sec.
+out threads | The number of threads to use for swapping out. The default value is 4.
+
+## Content Repository
+
+The Content Repository holds the content for all the FlowFiles in the system. By default, it is installed in the same root
+installation directory as all the other repositories; however, administrators will likely want to configure it on a separate
+drive if available. If nothing else, it is best if the Content Repository is not on the same drive as the FlowFile Repository.
+In dataflows that handle a large amount of data, the Content Repository could fill up a disk and the
+FlowFile Repository, if also on that disk, could become corrupt. To avoid this situation, configure these repositories on different drives.
+
+*Property*                        | *Description*
+--------------------------------  | -------------
+content claim max appendable size | The maximum size for a content claim. The default value is 10 MB.
+content claim max flow files      | The maximum number of FlowFiles to assign to one content claim. The default value is 100.
+always sync                       | If set to _true_, any change to the repository will be synchronized to the disk, meaning that NiFi will ask the operating system not to cache the information. This is very expensive and can significantly reduce NiFi performance. However, if it is _false_, there could be the potential for data loss if either there is a sudden power loss or the operating system crashes. The default value is _false_.
+
+## Provenance Repository
+
+*Property*                        | *Description*
+--------------------------------  | -------------
+provenance rollover time          | The amount of time to wait before rolling over the latest data provenance information so that it is available to be accessed by components. The default value is 1 min.
+
+## *Component Status Repository*
+
+The Component Status Repository contains the information for the Component Status History tool in the User Interface. These
+properties govern how that tool works.
+
+The buffer.size and snapshot.frequency work together to determine the amount of historical data to retain. As an example to
+configure two days worth of historical data with a data point snapshot occurring every 5 minutes you would configure
+snapshot.frequency to be "5 mins" and the buffer.size to be "576". To further explain this example for every 60 minutes there
+are 12 (60 / 5) snapshot windows for that time period. To keep that data for 48 hours (12 * 48) you end up with a buffer size
+of 576.
+
+*Property*        | *Description*
+----------------- | -------------
+buffer size       | Specifies the buffer size for the Component Status Repository. The default value is 1440.
+snapshot frequency | This value indicates how often to present a snapshot of the components' status history. The default value is 1 min.
+
+## *Security Properties*
+
+These properties pertain to various security features in NiFi. Many of these properties are covered in more detail in the
+Security Configuration section of this Administrator's Guide.
+
+*Property*          | *Description*
+------------------- | -------------
+keystore            | The full path and name of the keystore. It is blank by default.
+keystore type       | The keystore type. It is blank by default.
+keystore password   | The keystore password. It is blank by default.
+key password        | The key password. It is blank by default.
+truststore          | The full path and name of the truststore. It is blank by default.
+truststore type     | The truststore type. It is blank by default.
+truststore password | The truststore password. It is blank by default.
+ssl protocol        | The protocol to use when communicating via https. Necessary to transfer provenance securely.
+
+#### Sensitive Properties Subsection
+
+Some properties for processors are marked as _sensitive_ and should be encrypted. These following properties will be used to encrypt the properties while in use by MiNiFi. This will currently *not* be used to encrypt properties in the config file.
+
+*Property* | *Description*
+---------- | -------------
+key        | This is the password used to encrypt any sensitive property values that are configured in processors. By default, it is blank, but the system administrator should provide a value for it. It can be a string of any length, although the recommended minimum length is 10 characters. Be aware that once this password is set and one or more sensitive processor properties have been configured, this password should not be changed.
+algorithm  | The algorithm used to encrypt sensitive properties. The default value is `PBEWITHMD5AND256BITAES-CBC-OPENSSL`.
+provider   | The sensitive property provider. The default value is BC.
+
+## Processors
+
+The current implementation of MiNiFi supports multiple processors. the "Processors" subsection is a list of these processors. Each processor must specify these properties. They are the basic configuration general to all processor implementations. Make sure that all relationships for a processor are accounted for in the auto-terminated relationship list or are used in a connection.
+
+*Property*                          | *Description*
+----------------------------------- | -------------
+name                                | The name of what this processor will do. This is not used for any underlying implementation but solely for the users of this configuration and MiNiFi agent.
+class                               | The fully qualified java class name of the processor to run. For example for the standard TailFile processor it would be: org.apache.nifi.processors.standard.TailFile
+max concurrent tasks                | The maximum number of tasks that the processor will use.
+scheduling strategy                 | The strategy for executing the processor. Valid options are `CRON_DRIVEN` or `TIMER_DRIVEN`
+scheduling period                   | This property expects different input depending on the scheduling strategy selected. For the `TIMER_DRIVEN` scheduling strategy, this value is a time duration specified by a number followed by a time unit. For example, 1 second or 5 mins. The default value of 0 sec means that the Processor should run as often as possible as long as it has data to process. This is true for any time duration of 0, regardless of the time unit (i.e., 0 sec, 0 mins, 0 days). For an explanation of values that are applicable for the CRON driven scheduling strategy, see the description of the CRON driven scheduling strategy in the scheduling tab section of the [NiFi User documentation](https://nifi.apache.org/docs/nifi-docs/html/user-guide.html#scheduling-tab).
+penalization period                 | Specifies how long FlowFiles will be penalized.
+yield period                        | In the event the processor cannot make progress it should `yield` which will prevent the processor from being scheduled to run for some period of time. That period of time is specific using this property.
+run duration nanos                  | If the processor supports batching this property can be used to control how long the Processor should be scheduled to run each time that it is triggered. Smaller values will have lower latency but larger values will have higher throughput. This period should typically only be set between 0 and 2000000000 (2 seconds).
+auto-terminated relationships list  | A YAML list of the relationships to auto-terminate for the processor.
+
+#### Processor Properties
+
+Within the Processor Configuration section, there is the `Properties` subsection. The keys and values in this section are the property names and values for the processor. For example the TailFile processor would have a section like this:
+
+    Properties:
+        File to Tail: logs/nifi-app.log
+        Rolling Filename Pattern: nifi-app*
+        State File: ./conf/state/tail-file
+        Initial Start Position: Beginning of File
+
+## Connections
+
+There can be multiple connections in this version of MiNiFi. The "Connections" subsection is a list of connections. Each connection must specify these properties.
+
+*Property*               | *Description*
+--------------------     | -------------
+name                     | The name of what this connection will do. This is used for the id of the connection so it must be unique.
+source name              | The name of what of the processor that is the source for this connection.
+source relationship name | The name of the processors relationship to route to this connection
+destination name         | The name of the component to receive this connection.
+max work queue size      | This property is the max number of FlowFiles that can be in the queue before back pressure is applied. When back pressure is applied the source processor will no longer be scheduled to run.
+max work queue data size | This property specifies the maximum amount of data (in size) that should be queued up before applying back pressure.  When back pressure is applied the source processor will no longer be scheduled to run.
+flowfile expiration      | Indicates how long FlowFiles are allowed to exist in the connection before be expired (automatically removed from the flow).
+queue prioritizer class  | This configuration option specifies the fully qualified java class path of a queue prioritizer to use. If no special prioritizer is desired then it should be left blank. An example value of this property is: org.apache.nifi.prioritizer.NewestFlowFileFirstPrioritizer
+
+## Remote Processing Groups
+
+MiNiFi can be used to send data using the Site to Site protocol (via a Remote Processing Group) or a Processor. These properties configure the Remote Processing Groups that use Site-To-Site to send data to a core instance.
+
+*Property*   | *Description*
+------------ | -------------
+name         | The name of what this Remote Processing Group points to. This is not used for any underlying implementation but solely for the users of this configuration and MiNiFi agent.
+comment      | A comment about the Remote Processing Group. This is not used for any underlying implementation but solely for the users of this configuration and MiNiFi agent.
+url          | The URL of the core NiFi instance.
+timeout      | How long MiNiFi should wait before timing out the connection.
+yield period | When communication with this Remote Processing Group fails, it will not be scheduled again for this amount of time.
+
+
+#### Input Ports Subsection
+
+When connecting via Site to Site, MiNiFi needs to know which input port to communicate to of the core NiFi instance. These properties designate and configure communication with that port.
+
+*Property*           | *Description*
+-------------------- | -------------
+id                   | The id of the input port as it exists on the core NiFi instance. To get this information access the UI of the core instance, right the input port that is desired to be connect to and select "configure". The id of the port should under the "Id" section.
+name                 | The name of the input port as it exists on the core NiFi instance. To get this information access the UI of the core instance, right the input port that is desired to be connect to and select "configure". The id of the port should under the "Port name" section.
+comments:            | A comment about the Input Port. This is not used for any underlying implementation but solely for the users of this configuration and MiNiFi agent.
+max concurrent tasks | The number of tasks that this port should be scheduled for at maximum.
+use compression      | Whether or not compression should be used when communicating with the port. This is a boolean value of either "true" or "false"
+
+## Provenance Reporting
+
+MiNiFi is currently designed only to report provenance data using the Site to Site protocol. These properties configure the underlying reporting task that sends the provenance events.
+
+*Property*           | *Description*
+-------------------- | -------------
+comment              | A comment about the Provenance reporting. This is not used for any underlying implementation but solely for the users of this configuration and MiNiFi agent.
+scheduling strategy  | The strategy for executing the Reporting Task. Valid options are `CRON_DRIVEN` or `TIMER_DRIVEN`
+scheduling period    | This property expects different input depending on the scheduling strategy selected. For the `TIMER_DRIVEN` scheduling strategy, this value is a time duration specified by a number followed by a time unit. For example, 1 second or 5 mins. The default value of 0 sec means that the Processor should run as often as possible as long as it has data to process. This is true for any time duration of 0, regardless of the time unit (i.e., 0 sec, 0 mins, 0 days). For an explanation of values that are applicable for the CRON driven scheduling strategy, see the description of the CRON driven scheduling strategy in the scheduling tab section of the [NiFi User documentation](https://nifi.apache.org/docs/nifi-docs/html/user-guide.html#scheduling-tab).
+destination url      | The URL to post the Provenance Events to.
+port name            | The name of the input port as it exists on the receiving NiFi instance. To get this information access the UI of the core instance, right the input port that is desired to be connect to and select "configure". The id of the port should under the "Port name" section.
+originating url      | The URL of this MiNiFi instance. This is used to include the Content URI to send to the destination.
+use compression      | Indicates whether or not to compress the events when being sent.
+timeout              | How long MiNiFi should wait before timing out the connection.
+batch size           | Specifies how many records to send in a single batch, at most. This should be significantly above the expected amount of records generated between scheduling. If it is not, then there is the potential for the Provenance reporting to lag behind event generation and never catch up.
+
+
+
+# Example Config File
+
+Below are two example config YAML files. The first tails the minifi-app.log, send the tailed log and provenance data back to a secure instance of NiFi. The second uses a series of processors to tail the app log, routes off only lines that contain "WriteAheadFlowFileRepository" and puts it as a file in the "./" directory.
+
+
+``` yaml
+Flow Controller:
+    name: MiNiFi Flow
+    comment:
+
+Core Properties:
+    flow controller graceful shutdown period: 10 sec
+    flow service write delay interval: 500 ms
+    administrative yield duration: 30 sec
+    bored yield duration: 10 millis
+
+FlowFile Repository:
+    partitions: 256
+    checkpoint interval: 2 mins
+    always sync: false
+    Swap:
+        threshold: 20000
+        in period: 5 sec
+        in threads: 1
+        out period: 5 sec
+        out threads: 4
+
+Provenance Repository:
+    provenance rollover time: 1 min
+
+Content Repository:
+    content claim max appendable size: 10 MB
+    content claim max flow files: 100
+    always sync: false
+
+Component Status Repository:
+    buffer size: 1440
+    snapshot frequency: 1 min
+
+Security Properties:
+    keystore: /tmp/ssl/localhost-ks.jks
+    keystore type: JKS
+    keystore password: localtest
+    key password: localtest
+    truststore: /tmp/ssl/localhost-ts.jks
+    truststore type: JKS
+    truststore password: localtest
+    ssl protocol: TLS
+    Sensitive Props:
+        key:
+        algorithm: PBEWITHMD5AND256BITAES-CBC-OPENSSL
+        provider: BC
+
+Processors:
+    - name: TailFile
+      class: org.apache.nifi.processors.standard.TailFile
+      max concurrent tasks: 1
+      scheduling strategy: TIMER_DRIVEN
+      scheduling period: 1 sec
+      penalization period: 30 sec
+      yield period: 1 sec
+      run duration nanos: 0
+      auto-terminated relationships list:
+      Properties:
+          File to Tail: logs/minifi-app.log
+          Rolling Filename Pattern: minifi-app*
+          Initial Start Position: Beginning of File
+
+Connections:
+    - name: TailToS2S
+      source name: TailFile
+      source relationship name: success
+      destination name: 8644cbcc-a45c-40e0-964d-5e536e2ada61
+      max work queue size: 0
+      max work queue data size: 1 MB
+      flowfile expiration: 60 sec
+      queue prioritizer class: org.apache.nifi.prioritizer.NewestFlowFileFirstPrioritizer
+
+Remote Processing Groups:
+    - name: NiFi Flow
+      comment:
+      url: https://localhost:8090/nifi
+      timeout: 30 secs
+      yield period: 10 sec
+      Input Ports:
+          - id: 8644cbcc-a45c-40e0-964d-5e536e2ada61
+            name: tailed log
+            comments:
+            max concurrent tasks: 1
+            use compression: false
+
+Provenance Reporting:
+    comment:
+    scheduling strategy: TIMER_DRIVEN
+    scheduling period: 30 sec
+    destination url: https://localhost:8090/
+    port name: provenance
+    originating url: http://${hostname(true)}:8081/nifi
+    use compression: true
+    timeout: 30 secs
+    batch size: 1000
+```
+
+
+``` yaml
+Flow Controller:
+    name: MiNiFi Flow
+    comment:
+
+Core Properties:
+    flow controller graceful shutdown period: 10 sec
+    flow service write delay interval: 500 ms
+    administrative yield duration: 30 sec
+    bored yield duration: 10 millis
+    max concurrent threads: 1
+
+FlowFile Repository:
+    partitions: 256
+    checkpoint interval: 2 mins
+    always sync: false
+    Swap:
+        threshold: 20000
+        in period: 5 sec
+        in threads: 1
+        out period: 5 sec
+        out threads: 4
+
+Content Repository:
+    content claim max appendable size: 10 MB
+    content claim max flow files: 100
+    always sync: false
+
+Component Status Repository:
+    buffer size: 1440
+    snapshot frequency: 1 min
+
+Security Properties:
+    keystore: /tmp/ssl/localhost-ks.jks
+    keystore type: JKS
+    keystore password: localtest
+    key password: localtest
+    truststore: /tmp/ssl/localhost-ts.jks
+    truststore type: JKS
+    truststore password: localtest
+    ssl protocol: TLS
+    Sensitive Props:
+        key:
+        algorithm: PBEWITHMD5AND256BITAES-CBC-OPENSSL
+        provider: BC
+
+Processors:
+    - name: TailAppLog
+      class: org.apache.nifi.processors.standard.TailFile
+      max concurrent tasks: 1
+      scheduling strategy: TIMER_DRIVEN
+      scheduling period: 10 sec
+      penalization period: 30 sec
+      yield period: 1 sec
+      run duration nanos: 0
+      auto-terminated relationships list:
+      Properties:
+          File to Tail: logs/minifi-app.log
+          Rolling Filename Pattern: minifi-app*
+          Initial Start Position: Beginning of File
+    - name: SplitIntoSingleLines
+      class: org.apache.nifi.processors.standard.SplitText
+      max concurrent tasks: 1
+      scheduling strategy: TIMER_DRIVEN
+      scheduling period: 0 sec
+      penalization period: 30 sec
+      yield period: 1 sec
+      run duration nanos: 0
+      auto-terminated relationships list:
+          - failure
+          - original
+      Properties:
+          Line Split Count: 1
+          Header Line Count: 0
+          Remove Trailing Newlines: true
+    - name: RouteErrors
+      class: org.apache.nifi.processors.standard.RouteText
+      max concurrent tasks: 1
+      scheduling strategy: TIMER_DRIVEN
+      scheduling period: 0 sec
+      penalization period: 30 sec
+      yield period: 1 sec
+      run duration nanos: 0
+      auto-terminated relationships list:
+          - unmatched
+          - original
+      Properties:
+          Routing Strategy: Route to 'matched' if line matches all conditions
+          Matching Strategy: Contains
+          Character Set: UTF-8
+          Ignore Leading/Trailing Whitespace: true
+          Ignore Case: true
+          Grouping Regular Expression:
+          WALFFR: WriteAheadFlowFileRepository
+    - name: PutFile
+      class: org.apache.nifi.processors.standard.PutFile
+      max concurrent tasks: 1
+      scheduling strategy: TIMER_DRIVEN
+      scheduling period: 0 sec
+      penalization period: 30 sec
+      yield period: 1 sec
+      run duration nanos: 0
+      auto-terminated relationships list:
+          - failure
+          - success
+      Properties:
+          Directory: ./
+          Conflict Resolution Strategy: replace
+          Create Missing Directories: true
+          Maximum File Count:
+          Last Modified Time:
+          Permissions:
+          Owner:
+          Group:
+
+Connections:
+    - name: TailToSplit
+      source name: TailAppLog
+      source relationship name: success
+      destination name: SplitIntoSingleLines
+      max work queue size: 0
+      max work queue data size: 1 MB
+      flowfile expiration: 60 sec
+      queue prioritizer class: org.apache.nifi.prioritizer.NewestFlowFileFirstPrioritizer
+    - name: SplitToRoute
+      source name: SplitIntoSingleLines
+      source relationship name: splits
+      destination name: RouteErrors
+      max work queue size: 0
+      max work queue data size: 1 MB
+      flowfile expiration: 60 sec
+      queue prioritizer class: org.apache.nifi.prioritizer.NewestFlowFileFirstPrioritizer
+    - name: RouteToS2S
+      source name: RouteErrors
+      source relationship name: matched
+      destination name: PutFile
+      max work queue size: 0
+      max work queue data size: 1 MB
+      flowfile expiration: 60 sec
+      queue prioritizer class: org.apache.nifi.prioritizer.NewestFlowFileFirstPrioritizer
+
+Provenance Reporting:
+    comment:
+    scheduling strategy: TIMER_DRIVEN
+    scheduling period: 30 sec
+    destination url: https://localhost:8080/
+    port name: provenance
+    originating url: http://${hostname(true)}:8081/nifi
+    use compression: true
+    timeout: 30 secs
+    batch size: 1000
+```

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/52d19dd3/minifi-toolkit/minifi-toolkit-assembly/README.md
----------------------------------------------------------------------
diff --git a/minifi-toolkit/minifi-toolkit-assembly/README.md b/minifi-toolkit/minifi-toolkit-assembly/README.md
new file mode 100644
index 0000000..b21441d
--- /dev/null
+++ b/minifi-toolkit/minifi-toolkit-assembly/README.md
@@ -0,0 +1,106 @@
+<!--
+  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.
+-->
+# Apache NiFi - MiNiFi - Toolkit
+
+MiNiFi is a child project effort of Apache NiFi.  The MiNiFi toolkit aids in creating MiNiFi configuration files from exported NiFi templates.
+
+## Table of Contents
+
+- [Requirements](#requirements)
+- [Getting Started](#getting-started)
+- [Getting Help](#getting-help)
+- [Documentation](#documentation)
+- [License](#license)
+- [Export Control](#export-control)
+
+## Requirements
+* JRE 1.8
+
+## Getting Started
+
+To run the MiNiFi Toolkit Converter:
+- Change directory to the location where you installed MiNiFi Toolkit and run it and view usage information
+  - Linux / OS X
+        $ ./config.sh
+
+  - Windows
+      execute bin/config.bat
+
+- Usage Information
+
+      Usage:
+
+      java org.apache.nifi.minifi.toolkit.configuration.ConfigMain <command> options
+
+      Valid commands include:
+      transform: Transform template xml into MiNiFi config YAML
+      validate: Validate config YAML
+
+## Getting Help
+If you have questions, you can reach out to our mailing list: dev@nifi.apache.org
+([archive](http://mail-archives.apache.org/mod_mbox/nifi-dev)).
+We're also often available in IRC: #nifi on
+[irc.freenode.net](http://webchat.freenode.net/?channels=#nifi).
+
+## Documentation
+
+See http://nifi.apache.org/minifi and https://cwiki.apache.org/confluence/display/NIFI/MiNiFi for the latest documentation.
+
+## License
+
+Except as otherwise noted this software is licensed under the
+[Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.html)
+
+Licensed 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.
+
+## Export Control
+
+This distribution includes cryptographic software. The country in which you
+currently reside may have restrictions on the import, possession, use, and/or
+re-export to another country, of encryption software. BEFORE using any
+encryption software, please check your country's laws, regulations and
+policies concerning the import, possession, or use, and re-export of encryption
+software, to see if this is permitted. See <http://www.wassenaar.org/> for more
+information.
+
+The U.S. Government Department of Commerce, Bureau of Industry and Security
+(BIS), has classified this software as Export Commodity Control Number (ECCN)
+5D002.C.1, which includes information security software using or performing
+cryptographic functions with asymmetric algorithms. The form and manner of this
+Apache Software Foundation distribution makes it eligible for export under the
+License Exception ENC Technology Software Unrestricted (TSU) exception (see the
+BIS Export Administration Regulations, Section 740.13) for both object code and
+source code.
+
+The following provides more details on the included cryptographic software:
+
+Apache NiFi - MiNiFi uses BouncyCastle, Jasypt, JCraft Inc., and the built-in
+java cryptography libraries for SSL, SSH, and the protection
+of sensitive configuration parameters. See
+http://bouncycastle.org/about.html
+http://www.jasypt.org/faq.html
+http://jcraft.com/c-info.html
+http://www.oracle.com/us/products/export/export-regulations-345813.html
+for more details on each of these libraries cryptography features.

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/52d19dd3/minifi-toolkit/minifi-toolkit-assembly/src/main/assembly/dependencies.xml
----------------------------------------------------------------------
diff --git a/minifi-toolkit/minifi-toolkit-assembly/src/main/assembly/dependencies.xml b/minifi-toolkit/minifi-toolkit-assembly/src/main/assembly/dependencies.xml
index a5aa6d2..f4f0b7a 100644
--- a/minifi-toolkit/minifi-toolkit-assembly/src/main/assembly/dependencies.xml
+++ b/minifi-toolkit/minifi-toolkit-assembly/src/main/assembly/dependencies.xml
@@ -41,6 +41,13 @@
     </fileSets>
     <files>
         <file>
+            <source>./README.md</source>
+            <outputDirectory>./</outputDirectory>
+            <destName>README</destName>
+            <fileMode>0644</fileMode>
+            <filtered>true</filtered>
+        </file>
+        <file>
             <source>./LICENSE</source>
             <outputDirectory>./</outputDirectory>
             <destName>LICENSE</destName>

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/52d19dd3/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 2955946..757d5eb 100644
--- a/pom.xml
+++ b/pom.xml
@@ -36,11 +36,12 @@ limitations under the License.
         <module>minifi-api</module>
         <module>minifi-bootstrap</module>
         <module>minifi-nar-bundles</module>
+        <module>minifi-docs</module>
         <module>minifi-assembly</module>
         <module>minifi-toolkit</module>
     </modules>
 
-    <url>http://nifi.apache.org</url>
+    <url>http://nifi.apache.org/minifi</url>
     <organization>
         <name>Apache NiFi Project</name>
         <url>http://nifi.apache.org/</url>
@@ -195,7 +196,14 @@ limitations under the License.
                 <version>0.0.1-SNAPSHOT</version>
                 <type>nar</type>
             </dependency>
-
+            <dependency>
+                <groupId>org.apache.nifi.minifi</groupId>
+                <artifactId>minifi-docs</artifactId>
+                <version>0.0.1-SNAPSHOT</version>
+                <classifier>resources</classifier>
+                <scope>runtime</scope>
+                <type>zip</type>
+            </dependency>
 
             <dependency>
                 <groupId>ch.qos.logback</groupId>


[2/3] nifi-minifi git commit: MINIFI-50 * Updating the root project README and providing READMEs for both the minifi and minifi-toolkit assemblies. * Adjusting needed LICENSE and NOTICE files. * Adding System Admin Guide to docs folder in generated minif

Posted by jp...@apache.org.
http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/52d19dd3/minifi-assembly/NOTICE
----------------------------------------------------------------------
diff --git a/minifi-assembly/NOTICE b/minifi-assembly/NOTICE
index e67f7d7..d343786 100644
--- a/minifi-assembly/NOTICE
+++ b/minifi-assembly/NOTICE
@@ -25,4 +25,648 @@ The following binary components are provided under the Apache Software License v
   (ASLv2) Jetty
     The following NOTICE information applies:
        Jetty Web Container
-       Copyright 1995-2015 Mort Bay Consulting Pty Ltd.
\ No newline at end of file
+       Copyright 1995-2015 Mort Bay Consulting Pty Ltd.
+
+  (ASLv2) Apache Commons IO
+    The following NOTICE information applies:
+      Apache Commons IO
+      Copyright 2002-2012 The Apache Software Foundation
+
+  (ASLv2) Apache Commons Net
+    The following NOTICE information applies:
+      Apache Commons Net
+      Copyright 2001-2013 The Apache Software Foundation
+
+  (ASLv2) Apache Commons Collections
+    The following NOTICE information applies:
+      Apache Commons Collections
+      Copyright 2001-2013 The Apache Software Foundation
+
+  (ASLv2) Apache Commons Compress
+    The following NOTICE information applies:
+      Apache Commons Compress
+      Copyright 2002-2014 The Apache Software Foundation
+
+      The files in the package org.apache.commons.compress.archivers.sevenz
+      were derived from the LZMA SDK, version 9.20 (C/ and CPP/7zip/),
+      which has been placed in the public domain:
+
+      "LZMA SDK is placed in the public domain." (http://www.7-zip.org/sdk.html)
+
+  (ASLv2) Apache Commons Codec
+    The following NOTICE information applies:
+      Apache Commons Codec
+      Copyright 2002-2014 The Apache Software Foundation
+
+      src/test/org/apache/commons/codec/language/DoubleMetaphoneTest.java
+      contains test data from http://aspell.net/test/orig/batch0.tab.
+      Copyright (C) 2002 Kevin Atkinson (kevina@gnu.org)
+
+      ===============================================================================
+
+      The content of package org.apache.commons.codec.language.bm has been translated
+      from the original php source code available at http://stevemorse.org/phoneticinfo.htm
+      with permission from the original authors.
+      Original source copyright:
+      Copyright (c) 2008 Alexander Beider & Stephen P. Morse.
+
+  (ASLv2) Apache HttpComponents
+    The following NOTICE information applies:
+      Apache HttpClient
+      Copyright 1999-2015 The Apache Software Foundation
+
+      Apache HttpCore
+      Copyright 2005-2015 The Apache Software Foundation
+
+      Apache HttpMime
+      Copyright 1999-2013 The Apache Software Foundation
+
+      This project contains annotations derived from JCIP-ANNOTATIONS
+      Copyright (c) 2005 Brian Goetz and Tim Peierls. See http://www.jcip.net
+
+  (ASLv2) Apache Jakarta HttpClient
+    The following NOTICE information applies:
+      Apache Jakarta HttpClient
+      Copyright 1999-2007 The Apache Software Foundation
+
+  (ASLv2) Apache Commons Logging
+    The following NOTICE information applies:
+      Apache Commons Logging
+      Copyright 2003-2014 The Apache Software Foundation
+
+  (ASLv2) Apache Commons Lang
+    The following NOTICE information applies:
+      Apache Commons Lang
+      Copyright 2001-2015 The Apache Software Foundation
+
+      This product includes software from the Spring Framework,
+      under the Apache License 2.0 (see: StringUtils.containsWhitespace())
+
+  (ASLv2) Apache Commons Configuration
+    The following NOTICE information applies:
+      Apache Commons Configuration
+      Copyright 2001-2008 The Apache Software Foundation
+
+  (ASLv2) Apache Commons JEXL
+    The following NOTICE information applies:
+      Apache Commons JEXL
+      Copyright 2001-2011 The Apache Software Foundation
+
+  (ASLv2) Spring Framework
+    The following NOTICE information applies:
+      Spring Framework 4.1.4.RELEASE
+      Copyright (c) 2002-2015 Pivotal, Inc.
+
+  (ASLv2) Xalan
+     This product includes software developed by
+      The Apache Software Foundation (http://www.apache.org/).
+
+      Portions of this software was originally based on the following:
+
+        - software copyright (c) 1999-2002, Lotus Development Corporation., http://www.lotus.com.
+        - software copyright (c) 2001-2002, Sun Microsystems., http://www.sun.com.
+        - software copyright (c) 2003, IBM Corporation., http://www.ibm.com.
+        - voluntary contributions made by Ovidiu Predescu (ovidiu@cup.hp.com) on behalf of the
+          Apache Software Foundation and was originally developed at Hewlett Packard Company.
+
+  (ASLv2) Apache XML Commons XML APIs
+    Copyright 2006 The Apache Software Foundation.
+
+    This product includes software developed at
+    The Apache Software Foundation (http://www.apache.org/).
+
+    Portions of this software were originally based on the following:
+      - software copyright (c) 1999, IBM Corporation., http://www.ibm.com.
+      - software copyright (c) 1999, Sun Microsystems., http://www.sun.com.
+      - software copyright (c) 2000 World Wide Web Consortium, http://www.w3.org
+
+  (ASLv2) Jackson JSON processor
+    The following NOTICE information applies:
+      # Jackson JSON processor
+
+      Jackson is a high-performance, Free/Open Source JSON processing library.
+      It was originally written by Tatu Saloranta (tatu.saloranta@iki.fi), and has
+      been in development since 2007.
+      It is currently developed by a community of developers, as well as supported
+      commercially by FasterXML.com.
+
+      ## Licensing
+
+      Jackson core and extension components may licensed under different licenses.
+      To find the details that apply to this artifact see the accompanying LICENSE file.
+      For more information, including possible other licensing options, contact
+      FasterXML.com (http://fasterxml.com).
+
+      ## Credits
+
+      A list of contributors may be found from CREDITS file, which is included
+      in some artifacts (usually source distributions); but is always available
+      from the source code management (SCM) system project uses.
+
+  (ASLv2) Apache Thrift
+    The following NOTICE information applies:
+      Apache Thrift
+      Copyright 2006-2010 The Apache Software Foundation.
+
+  (ASLv2) Apache MINA
+    The following NOTICE information applies:
+      Apache MINA Core
+      Copyright 2004-2011 Apache MINA Project
+
+  (ASLv2) Apache Velocity
+    The following NOTICE information applies:
+      Apache Velocity
+      Copyright (C) 2000-2007 The Apache Software Foundation
+
+  (ASLv2) Apache Commons CLI
+    The following NOTICE information applies:
+      Apache Commons CLI
+      Copyright 2001-2009 The Apache Software Foundation
+
+  (ASLv2) Apache Commons Math
+    The following NOTICE information applies:
+      Apache Commons Math
+      Copyright 2001-2012 The Apache Software Foundation
+
+      This product includes software developed by
+      The Apache Software Foundation (http://www.apache.org/).
+
+      ===============================================================================
+
+      The BracketFinder (package org.apache.commons.math3.optimization.univariate)
+      and PowellOptimizer (package org.apache.commons.math3.optimization.general)
+      classes are based on the Python code in module "optimize.py" (version 0.5)
+      developed by Travis E. Oliphant for the SciPy library (http://www.scipy.org/)
+      Copyright � 2003-2009 SciPy Developers.
+      ===============================================================================
+
+      The LinearConstraint, LinearObjectiveFunction, LinearOptimizer,
+      RelationShip, SimplexSolver and SimplexTableau classes in package
+      org.apache.commons.math3.optimization.linear include software developed by
+      Benjamin McCann (http://www.benmccann.com) and distributed with
+      the following copyright: Copyright 2009 Google Inc.
+      ===============================================================================
+
+      This product includes software developed by the
+      University of Chicago, as Operator of Argonne National
+      Laboratory.
+      The LevenbergMarquardtOptimizer class in package
+      org.apache.commons.math3.optimization.general includes software
+      translated from the lmder, lmpar and qrsolv Fortran routines
+      from the Minpack package
+      Minpack Copyright Notice (1999) University of Chicago.  All rights reserved
+      ===============================================================================
+
+      The GraggBulirschStoerIntegrator class in package
+      org.apache.commons.math3.ode.nonstiff includes software translated
+      from the odex Fortran routine developed by E. Hairer and G. Wanner.
+      Original source copyright:
+      Copyright (c) 2004, Ernst Hairer
+      ===============================================================================
+
+      The EigenDecompositionImpl class in package
+      org.apache.commons.math3.linear includes software translated
+      from some LAPACK Fortran routines.  Original source copyright:
+      Copyright (c) 1992-2008 The University of Tennessee.  All rights reserved.
+      ===============================================================================
+
+      The MersenneTwister class in package org.apache.commons.math3.random
+      includes software translated from the 2002-01-26 version of
+      the Mersenne-Twister generator written in C by Makoto Matsumoto and Takuji
+      Nishimura. Original source copyright:
+      Copyright (C) 1997 - 2002, Makoto Matsumoto and Takuji Nishimura,
+      All rights reserved
+      ===============================================================================
+
+      The LocalizedFormatsTest class in the unit tests is an adapted version of
+      the OrekitMessagesTest class from the orekit library distributed under the
+      terms of the Apache 2 licence. Original source copyright:
+      Copyright 2010 CS Syst�mes d'Information
+      ===============================================================================
+
+      The HermiteInterpolator class and its corresponding test have been imported from
+      the orekit library distributed under the terms of the Apache 2 licence. Original
+      source copyright:
+      Copyright 2010-2012 CS Syst�mes d'Information
+      ===============================================================================
+
+      The creation of the package "o.a.c.m.analysis.integration.gauss" was inspired
+      by an original code donated by S�bastien Brisard.
+      ===============================================================================
+
+  (ASLv2) Apache log4j
+    The following NOTICE information applies:
+      Apache log4j
+      Copyright 2007 The Apache Software Foundation
+
+  (ASLv2) Apache Tika
+    The following NOTICE information applies:
+      Apache Tika
+      Copyright 2015 The Apache Software Foundation
+
+      This product includes software developed at
+      The Apache Software Foundation (http://www.apache.org/).
+
+      Copyright 1993-2010 University Corporation for Atmospheric Research/Unidata
+      This software contains code derived from UCAR/Unidata's NetCDF library.
+
+      Tika-server component uses CDDL-licensed dependencies: jersey (http://jersey.java.net/) and
+      Grizzly (http://grizzly.java.net/)
+
+      Tika-parsers component uses CDDL/LGPL dual-licensed dependency: jhighlight (https://github.com/codelibs/jhighlight)
+
+      OpenCSV: Copyright 2005 Bytecode Pty Ltd. Licensed under the Apache License, Version 2.0
+
+      IPTC Photo Metadata descriptions Copyright 2010 International Press Telecommunications Council.
+
+  (ASLv2) Apache Jakarta Commons Digester
+    The following NOTICE information applies:
+      Apache Jakarta Commons Digester
+      Copyright 2001-2006 The Apache Software Foundation
+
+  (ASLv2) Apache Commons BeanUtils
+    The following NOTICE information applies:
+      Apache Commons BeanUtils
+      Copyright 2000-2008 The Apache Software Foundation
+
+  (ASLv2) Apache Avro
+    The following NOTICE information applies:
+      Apache Avro
+      Copyright 2009-2013 The Apache Software Foundation
+
+  (ASLv2) Snappy Java
+    The following NOTICE information applies:
+      This product includes software developed by Google
+       Snappy: http://code.google.com/p/snappy/ (New BSD License)
+
+      This product includes software developed by Apache
+       PureJavaCrc32C from apache-hadoop-common http://hadoop.apache.org/
+       (Apache 2.0 license)
+
+      This library containd statically linked libstdc++. This inclusion is allowed by
+      "GCC RUntime Library Exception"
+      http://gcc.gnu.org/onlinedocs/libstdc++/manual/license.html
+
+  (ASLv2) Apache Lucene
+    The following NOTICE information applies:
+      Apache Lucene
+      Copyright 2014 The Apache Software Foundation
+
+      Includes software from other Apache Software Foundation projects,
+      including, but not limited to:
+       - Apache Ant
+       - Apache Jakarta Regexp
+       - Apache Commons
+       - Apache Xerces
+
+      ICU4J, (under analysis/icu) is licensed under an MIT styles license
+      and Copyright (c) 1995-2008 International Business Machines Corporation and others
+
+      Some data files (under analysis/icu/src/data) are derived from Unicode data such
+      as the Unicode Character Database. See http://unicode.org/copyright.html for more
+      details.
+
+      Brics Automaton (under core/src/java/org/apache/lucene/util/automaton) is
+      BSD-licensed, created by Anders M�ller. See http://www.brics.dk/automaton/
+
+      The levenshtein automata tables (under core/src/java/org/apache/lucene/util/automaton) were
+      automatically generated with the moman/finenight FSA library, created by
+      Jean-Philippe Barrette-LaPierre. This library is available under an MIT license,
+      see http://sites.google.com/site/rrettesite/moman and
+      http://bitbucket.org/jpbarrette/moman/overview/
+
+      The class org.apache.lucene.util.WeakIdentityMap was derived from
+      the Apache CXF project and is Apache License 2.0.
+
+      The Google Code Prettify is Apache License 2.0.
+      See http://code.google.com/p/google-code-prettify/
+
+      JUnit (junit-4.10) is licensed under the Common Public License v. 1.0
+      See http://junit.sourceforge.net/cpl-v10.html
+
+      This product includes code (JaspellTernarySearchTrie) from Java Spelling Checkin
+      g Package (jaspell): http://jaspell.sourceforge.net/
+      License: The BSD License (http://www.opensource.org/licenses/bsd-license.php)
+
+      The snowball stemmers in
+        analysis/common/src/java/net/sf/snowball
+      were developed by Martin Porter and Richard Boulton.
+      The snowball stopword lists in
+        analysis/common/src/resources/org/apache/lucene/analysis/snowball
+      were developed by Martin Porter and Richard Boulton.
+      The full snowball package is available from
+        http://snowball.tartarus.org/
+
+      The KStem stemmer in
+        analysis/common/src/org/apache/lucene/analysis/en
+      was developed by Bob Krovetz and Sergio Guzman-Lara (CIIR-UMass Amherst)
+      under the BSD-license.
+
+      The Arabic,Persian,Romanian,Bulgarian, and Hindi analyzers (common) come with a default
+      stopword list that is BSD-licensed created by Jacques Savoy.  These files reside in:
+      analysis/common/src/resources/org/apache/lucene/analysis/ar/stopwords.txt,
+      analysis/common/src/resources/org/apache/lucene/analysis/fa/stopwords.txt,
+      analysis/common/src/resources/org/apache/lucene/analysis/ro/stopwords.txt,
+      analysis/common/src/resources/org/apache/lucene/analysis/bg/stopwords.txt,
+      analysis/common/src/resources/org/apache/lucene/analysis/hi/stopwords.txt
+      See http://members.unine.ch/jacques.savoy/clef/index.html.
+
+      The German,Spanish,Finnish,French,Hungarian,Italian,Portuguese,Russian and Swedish light stemmers
+      (common) are based on BSD-licensed reference implementations created by Jacques Savoy and
+      Ljiljana Dolamic. These files reside in:
+      analysis/common/src/java/org/apache/lucene/analysis/de/GermanLightStemmer.java
+      analysis/common/src/java/org/apache/lucene/analysis/de/GermanMinimalStemmer.java
+      analysis/common/src/java/org/apache/lucene/analysis/es/SpanishLightStemmer.java
+      analysis/common/src/java/org/apache/lucene/analysis/fi/FinnishLightStemmer.java
+      analysis/common/src/java/org/apache/lucene/analysis/fr/FrenchLightStemmer.java
+      analysis/common/src/java/org/apache/lucene/analysis/fr/FrenchMinimalStemmer.java
+      analysis/common/src/java/org/apache/lucene/analysis/hu/HungarianLightStemmer.java
+      analysis/common/src/java/org/apache/lucene/analysis/it/ItalianLightStemmer.java
+      analysis/common/src/java/org/apache/lucene/analysis/pt/PortugueseLightStemmer.java
+      analysis/common/src/java/org/apache/lucene/analysis/ru/RussianLightStemmer.java
+      analysis/common/src/java/org/apache/lucene/analysis/sv/SwedishLightStemmer.java
+
+      The Stempel analyzer (stempel) includes BSD-licensed software developed
+      by the Egothor project http://egothor.sf.net/, created by Leo Galambos, Martin Kvapil,
+      and Edmond Nolan.
+
+      The Polish analyzer (stempel) comes with a default
+      stopword list that is BSD-licensed created by the Carrot2 project. The file resides
+      in stempel/src/resources/org/apache/lucene/analysis/pl/stopwords.txt.
+      See http://project.carrot2.org/license.html.
+
+      The SmartChineseAnalyzer source code (smartcn) was
+      provided by Xiaoping Gao and copyright 2009 by www.imdict.net.
+
+      WordBreakTestUnicode_*.java (under modules/analysis/common/src/test/)
+      is derived from Unicode data such as the Unicode Character Database.
+      See http://unicode.org/copyright.html for more details.
+
+      The Morfologik analyzer (morfologik) includes BSD-licensed software
+      developed by Dawid Weiss and Marcin Mi\u0142kowski (http://morfologik.blogspot.com/).
+
+      Morfologik uses data from Polish ispell/myspell dictionary
+      (http://www.sjp.pl/slownik/en/) licenced on the terms of (inter alia)
+      LGPL and Creative Commons ShareAlike.
+
+      Morfologic includes data from BSD-licensed dictionary of Polish (SGJP)
+      (http://sgjp.pl/morfeusz/)
+
+      Servlet-api.jar and javax.servlet-*.jar are under the CDDL license, the original
+      source code for this can be found at http://www.eclipse.org/jetty/downloads.php
+
+      ===========================================================================
+      Kuromoji Japanese Morphological Analyzer - Apache Lucene Integration
+      ===========================================================================
+
+      This software includes a binary and/or source version of data from
+
+        mecab-ipadic-2.7.0-20070801
+
+      which can be obtained from
+
+        http://atilika.com/releases/mecab-ipadic/mecab-ipadic-2.7.0-20070801.tar.gz
+
+      or
+
+        http://jaist.dl.sourceforge.net/project/mecab/mecab-ipadic/2.7.0-20070801/mecab-ipadic-2.7.0-20070801.tar.gz
+
+      ===========================================================================
+      mecab-ipadic-2.7.0-20070801 Notice
+      ===========================================================================
+
+      Nara Institute of Science and Technology (NAIST),
+      the copyright holders, disclaims all warranties with regard to this
+      software, including all implied warranties of merchantability and
+      fitness, in no event shall NAIST be liable for
+      any special, indirect or consequential damages or any damages
+      whatsoever resulting from loss of use, data or profits, whether in an
+      action of contract, negligence or other tortuous action, arising out
+      of or in connection with the use or performance of this software.
+
+      A large portion of the dictionary entries
+      originate from ICOT Free Software.  The following conditions for ICOT
+      Free Software applies to the current dictionary as well.
+
+      Each User may also freely distribute the Program, whether in its
+      original form or modified, to any third party or parties, PROVIDED
+      that the provisions of Section 3 ("NO WARRANTY") will ALWAYS appear
+      on, or be attached to, the Program, which is distributed substantially
+      in the same form as set out herein and that such intended
+      distribution, if actually made, will neither violate or otherwise
+      contravene any of the laws and regulations of the countries having
+      jurisdiction over the User or the intended distribution itself.
+
+      NO WARRANTY
+
+      The program was produced on an experimental basis in the course of the
+      research and development conducted during the project and is provided
+      to users as so produced on an experimental basis.  Accordingly, the
+      program is provided without any warranty whatsoever, whether express,
+      implied, statutory or otherwise.  The term "warranty" used herein
+      includes, but is not limited to, any warranty of the quality,
+      performance, merchantability and fitness for a particular purpose of
+      the program and the nonexistence of any infringement or violation of
+      any right of any third party.
+
+      Each user of the program will agree and understand, and be deemed to
+      have agreed and understood, that there is no warranty whatsoever for
+      the program and, accordingly, the entire risk arising from or
+      otherwise connected with the program is assumed by the user.
+
+      Therefore, neither ICOT, the copyright holder, or any other
+      organization that participated in or was otherwise related to the
+      development of the program and their respective officials, directors,
+      officers and other employees shall be held liable for any and all
+      damages, including, without limitation, general, special, incidental
+      and consequential damages, arising out of or otherwise in connection
+      with the use or inability to use the program or any product, material
+      or result produced or otherwise obtained by using the program,
+      regardless of whether they have been advised of, or otherwise had
+      knowledge of, the possibility of such damages at any time during the
+      project or thereafter.  Each user will be deemed to have agreed to the
+      foregoing by his or her commencement of use of the program.  The term
+      "use" as used herein includes, but is not limited to, the use,
+      modification, copying and distribution of the program and the
+      production of secondary products from the program.
+
+      In the case where the program, whether in its original form or
+      modified, was distributed or delivered to or received by a user from
+      any person, organization or entity other than ICOT, unless it makes or
+      grants independently of ICOT any specific warranty to the user in
+      writing, such person, organization or entity, will also be exempted
+      from and not be held liable to the user for any such damages as noted
+      above as far as the program is concerned.
+
+  (ASLv2) Joda Time
+    The following NOTICE information applies:
+      This product includes software developed by
+      Joda.org (http://www.joda.org/).
+
+  (ASLv2) Apache ActiveMQ
+    The following NOTICE information applies:
+      ActiveMQ :: Client
+      Copyright 2005-2015 The Apache Software Foundation
+
+  (ASLv2) Apache Geronimo
+    The following NOTICE information applies:
+      Apache Geronimo
+      Copyright 2003-2008 The Apache Software Foundation
+
+  (ASLv2) Google GSON
+    The following NOTICE information applies:
+      Copyright 2008 Google Inc.
+
+  (ASLv2) JSON-SMART
+    The following NOTICE information applies:
+      Copyright 2011 JSON-SMART authors
+
+   (ASLv2) JsonPath
+     The following NOTICE information applies:
+       Copyright 2011 JsonPath authors
+
+   (ASLv2) Apache Commons DBCP
+      The following NOTICE information applies:
+        Apache Commons DBCP
+        Copyright 2001-2015 The Apache Software Foundation.
+
+   (ASLv2) Apache Commons Pool
+      The following NOTICE information applies:
+        Apache Commons Pool
+        Copyright 1999-2009 The Apache Software Foundation.
+
+    (ASLv2) Apache Derby
+      The following NOTICE information applies:
+        Apache Derby
+        Copyright 2004-2014 Apache, Apache DB, Apache Derby, Apache Torque, Apache JDO, Apache DDLUtils,
+        the Derby hat logo, the Apache JDO logo, and the Apache feather logo are trademarks of The Apache Software Foundation.
+
+    (ASLv2) The Netty Project
+      The following NOTICE information applies:
+        The Netty Project
+        Copyright 2011 The Netty Project
+
+    (ASLv2) Apache Xerces Java
+      The following NOTICE information applies:
+        Apache Xerces Java
+        Copyright 1999-2007 The Apache Software Foundation
+
+        This product includes software developed at
+        The Apache Software Foundation (http://www.apache.org/).
+
+        Portions of this software were originally based on the following:
+          - software copyright (c) 1999, IBM Corporation., http://www.ibm.com.
+          - software copyright (c) 1999, Sun Microsystems., http://www.sun.com.
+          - voluntary contributions made by Paul Eng on behalf of the
+            Apache Software Foundation that were originally developed at iClick, Inc.,
+            software copyright (c) 1999.
+
+  (ASLv2) Apache ZooKeeper
+    The following NOTICE information applies:
+      Apache ZooKeeper
+      Copyright 2009-2012 The Apache Software Foundation
+
+  (ASLv2) Swagger Core
+    The following NOTICE information applies:
+      Swagger Core 1.5.3-M1
+      Copyright 2015 Reverb Technologies, Inc.
+
+
+  (ASLv2) HBase Common
+    The following NOTICE information applies:
+      This product includes portions of the Guava project v14, specifically
+      'hbase-common/src/main/java/org/apache/hadoop/hbase/io/LimitInputStream.java'
+
+      Copyright (C) 2007 The Guava Authors
+
+      Licensed under the Apache License, Version 2.0
+
+  (ASLv2) HTrace Core
+    The following NOTICE information applies:
+      In addition, this product includes software dependencies. See
+      the accompanying LICENSE.txt for a listing of dependencies
+      that are NOT Apache licensed (with pointers to their licensing)
+
+      Apache HTrace includes an Apache Thrift connector to Zipkin. Zipkin
+      is a distributed tracing system that is Apache 2.0 Licensed.
+      Copyright 2012 Twitter, Inc.
+
+************************
+Common Development and Distribution License 1.1
+************************
+
+The following binary components are provided under the Common Development and Distribution License 1.1. See project link for details.
+
+    (CDDL 1.1) (GPL2 w/ CPE) jersey-core-client (org.glassfish.jersey.core:jersey-client:jar:2.19 - https://jersey.java.net/jersey-client/)
+    (CDDL 1.1) (GPL2 w/ CPE) jersey-client (com.sun.jersey:jersey-client:jar:1.19 - https://jersey.java.net/jersey-client/)
+    (CDDL 1.1) (GPL2 w/ CPE) jersey-core-common (org.glassfish.jersey.core:jersey-common:jar:2.19 - https://jersey.java.net/jersey-common/)
+    (CDDL 1.1) (GPL2 w/ CPE) jersey-core (com.sun.jersey:jersey-core:jar:1.19 - https://jersey.java.net/jersey-core/)
+    (CDDL 1.1) (GPL2 w/ CPE) jersey-spring (com.sun.jersey:jersey-spring:jar:1.19 - https://jersey.java.net/jersey-spring/)
+    (CDDL 1.1) (GPL2 w/ CPE) jersey-servlet (com.sun.jersey:jersey-servlet:jar:1.19 - https://jersey.java.net/jersey-servlet/)
+    (CDDL 1.1) (GPL2 w/ CPE) jersey-multipart (com.sun.jersey:jersey-multipart:jar:1.19 - https://jersey.java.net/jersey-multipart/)
+    (CDDL 1.1) (GPL2 w/ CPE) jersey-server (com.sun.jersey:jersey-server:jar:1.19 - https://jersey.java.net/jersey-server/)
+    (CDDL 1.1) (GPL2 w/ CPE) jersey-json (com.sun.jersey:jersey-json:jar:1.19 - https://jersey.java.net/jersey-json/)
+    (CDDL 1.1) (GPL2 w/ CPE) Old JAXB Runtime (com.sun.xml.bind:jaxb-impl:jar:2.2.3-1 - http://jaxb.java.net/)
+    (CDDL 1.1) (GPL2 w/ CPE) Java Architecture For XML Binding (javax.xml.bind:jaxb-api:jar:2.2.2 - https://jaxb.dev.java.net/)
+    (CDDL 1.1) (GPL2 w/ CPE) MIME Streaming Extension (org.jvnet.mimepull:mimepull:jar:1.9.3 - http://mimepull.java.net)
+    (CDDL 1.1) (GPL2 w/ CPE) JavaMail API (compat) (javax.mail:mail:jar:1.4.7 - http://kenai.com/projects/javamail/mail)
+    (CDDL 1.1) (GPL2 w/ CPE) JSP Implementation (org.glassfish.web:javax.servlet.jsp:jar:2.3.2 - http://jsp.java.net)
+    (CDDL 1.1) (GPL2 w/ CPE) JavaServer Pages (TM) TagLib Implementation (org.glassfish.web:javax.servlet.jsp.jstl:jar:1.2.2 - http://jstl.java.net)
+    (CDDL 1.1) (GPL2 w/ CPE) Expression Language 3.0 (org.glassfish:javax.el:jar:3.0.0 - http://el-spec.java.net)
+    (CDDL 1.1) (GPL2 w/ CPE) JavaServer Pages(TM) API (javax.servlet.jsp:javax.servlet.jsp-api:jar:2.3.1 - http://jsp.java.net)
+    (CDDL 1.1) (GPL2 w/ CPE) Expression Language 3.0 API  (javax.el:javax.el-api:jar:3.0.0 - http://uel-spec.java.net)
+    (CDDL 1.1) (GPL2 w/ CPE) JavaServer Pages(TM) Standard Tag Library API  (javax.servlet.jsp.jstl:javax.servlet.jsp.jstl-api:jar:1.2.1 - http://jcp.org/en/jsr/detail?id=52)
+    (CDDL 1.1) (GPL2 w/ CPE) Java Servlet API  (javax.servlet:javax.servlet-api:jar:3.1.0 - http://servlet-spec.java.net)
+    (CDDL 1.1) (GPL2 w/ CPE) Javax JMS Api (javax.jms:javax.jms-api:jar:2.0.1 - http://java.net/projects/jms-spec/pages/Home)
+    (CDDL 1.1) (GPL2 w/ CPE) JSON Processing API (javax.json:javax.json-api:jar:1.0 - http://json-processing-spec.java.net)
+    (CDDL 1.1) (GPL2 w/ CPE) JSON Processing Default Provider (org.glassfish:javax.json:jar:1.0.4 - https://jsonp.java.net)
+    (CDDL 1.1) (GPL2 w/ CPE) OSGi resource locator bundle (org.glassfish.hk2:osgi-resource-locator:jar:1.0.1 - http://glassfish.org/osgi-resource-locator)
+    (CDDL 1.1) (GPL2 w/ CPE) javax.annotation API (javax.annotation:javax.annotation-api:jar:1.2 - http://jcp.org/en/jsr/detail?id=250)
+    (CDDL 1.1) (GPL2 w/ CPE) HK2 API module (org.glassfish.hk2:hk2-api:jar:2.4.0-b25 - https://hk2.java.net/hk2-api)
+    (CDDL 1.1) (GPL2 w/ CPE) ServiceLocator Default Implementation (org.glassfish.hk2:hk2-locator:jar:2.4.0-b25 - https://hk2.java.net/hk2-locator)
+    (CDDL 1.1) (GPL2 w/ CPE) HK2 Implementation Utilities (org.glassfish.hk2:hk2-utils:jar:2.4.0-b25 - https://hk2.java.net/hk2-utils)
+    (CDDL 1.1) (GPL2 w/ CPE) aopalliance version 1.0 repackaged as a module (org.glassfish.hk2.external:aopalliance-repackaged:jar:2.4.0-b25 - https://hk2.java.net/external/aopalliance-repackaged)
+    (CDDL 1.1) (GPL2 w/ CPE) javax.inject:1 as OSGi bundle (org.glassfish.hk2.external:javax.inject:jar:2.4.0-b25 - https://hk2.java.net/external/javax.inject)
+    (CDDL 1.1) (GPL2 w/ CPE) javax.ws.rs-api (javax.ws.rs:javax.ws.rs-api:jar:2.0.1 - http://jax-rs-spec.java.net)
+    (CDDL 1.1) (GPL2 w/ CPE) jersey-repackaged-guava (org.glassfish.jersey.bundles.repackaged:jersey-guava:bundle:2.19 - https://jersey.java.net/project/project/jersey-guava/)
+
+************************
+Eclipse Public License 1.0
+************************
+
+The following binary components are provided under the Eclipse Public License 1.0.  See project link for details.
+
+    (EPL 1.0) AspectJ Weaver (org.aspectj:aspectjweaver:jar:1.8.5 - http://www.aspectj.org)
+    (EPL 1.0)(MPL 2.0) H2 Database (com.h2database:h2:jar:1.3.176 - http://www.h2database.com/html/license.html)
+    (EPL 1.0)(LGPL 2.1) Logback Classic (ch.qos.logback:logback-classic:jar:1.1.3 - http://logback.qos.ch/)
+    (EPL 1.0)(LGPL 2.1) Logback Core (ch.qos.logback:logback-core:jar:1.1.3 - http://logback.qos.ch/)
+
+*****************
+Mozilla Public License v2.0
+*****************
+
+The following binary components are provided under the Mozilla Public License v2.0.  See project link for details.
+
+    (MPL 2.0) Saxon HE (net.sf.saxon:Saxon-HE:jar:9.6.0-5 - http://www.saxonica.com/)
+
+*****************
+Mozilla Public License v1.1
+*****************
+
+The following binary components are provided under the Mozilla Public License v1.1.  See project link for details.
+
+    (MPL 1.1) HAPI Base (ca.uhn.hapi:hapi-base:2.2 - http://hl7api.sourceforge.net/)
+    (MPL 1.1) HAPI Structures (ca.uhn.hapi:hapi-structures-v*:2.2 - http://hl7api.sourceforge.net/)
+
+*****************
+Public Domain
+*****************
+
+The following binary components are provided to the 'Public Domain'.  See project link for details.
+
+    (Public Domain) XZ for Java (org.tukaani:xz:jar:1.5 - http://tukaani.org/xz/java.html
+    (Public Domain) AOP Alliance 1.0 (http://aopalliance.sourceforge.net/)
+
+The following binary components are provided under the Creative Commons Zero license version 1.0.  See project link for details.
+
+    (CC0v1.0) JSR166e for Twitter (com.twitter:jsr166e:jar:1.1.0 - https://github.com/twitter/jsr166e)

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/52d19dd3/minifi-assembly/README.md
----------------------------------------------------------------------
diff --git a/minifi-assembly/README.md b/minifi-assembly/README.md
new file mode 100644
index 0000000..0b0cd28
--- /dev/null
+++ b/minifi-assembly/README.md
@@ -0,0 +1,115 @@
+<!--
+  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.
+-->
+# Apache NiFi - MiNiFi
+
+MiNiFi is a child project effort of Apache NiFi
+
+## Table of Contents
+
+- [Features](#features)
+- [Requirements](#requirements)
+- [Getting Started](#getting-started)
+- [Getting Help](#getting-help)
+- [Documentation](#documentation)
+- [License](#license)
+- [Export Control](#export-control)
+
+## Features
+
+Apache NiFi - MiNiFi is a complementary data collection approach that supplements the core tenets of [NiFi](http://nifi.apache.org/) in dataflow management, focusing on the collection of data at the source of its creation.
+
+Specific goals for MiNiFi are comprised of:
+- small and lightweight footprint
+- central management of agents
+- generation of data provenance
+- integration with NiFi for follow-on dataflow management and full chain of custody of information
+
+Perspectives of the role of MiNiFi should be from the perspective of the agent acting immediately at, or directly adjacent to, source sensors, systems, or servers.
+
+## Requirements
+* JRE 1.8
+
+## Getting Started
+
+To run MiNiFi:
+- Change directory to the location where you installed MiNiFi and run it.
+  - Linux / OS X
+        $ cd ~/example-minifi-deploy/minifi-*
+        $ ./bin/minifi.sh start
+
+  - Windows
+      execute bin/run-minifi.bat
+
+- View the logs located in the logs folder
+        $ tail -F ~/example-minifi-deploy/logs/minifi-app.log
+
+- For help building your first data flow and sending data to a NiFi instance see the System Admin Guide located in the docs folder or making use of the minifi-toolkit, which aids in adapting NiFi templates to MiNiFi YAML configuration file format.
+
+## Getting Help
+If you have questions, you can reach out to our mailing list: dev@nifi.apache.org
+([archive](http://mail-archives.apache.org/mod_mbox/nifi-dev)).
+We're also often available in IRC: #nifi on
+[irc.freenode.net](http://webchat.freenode.net/?channels=#nifi).
+
+## Documentation
+
+See http://nifi.apache.org/minifi and https://cwiki.apache.org/confluence/display/NIFI/MiNiFi for the latest documentation.
+
+## License
+
+Except as otherwise noted this software is licensed under the
+[Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.html)
+
+Licensed 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.
+
+## Export Control
+
+This distribution includes cryptographic software. The country in which you
+currently reside may have restrictions on the import, possession, use, and/or
+re-export to another country, of encryption software. BEFORE using any
+encryption software, please check your country's laws, regulations and
+policies concerning the import, possession, or use, and re-export of encryption
+software, to see if this is permitted. See <http://www.wassenaar.org/> for more
+information.
+
+The U.S. Government Department of Commerce, Bureau of Industry and Security
+(BIS), has classified this software as Export Commodity Control Number (ECCN)
+5D002.C.1, which includes information security software using or performing
+cryptographic functions with asymmetric algorithms. The form and manner of this
+Apache Software Foundation distribution makes it eligible for export under the
+License Exception ENC Technology Software Unrestricted (TSU) exception (see the
+BIS Export Administration Regulations, Section 740.13) for both object code and
+source code.
+
+The following provides more details on the included cryptographic software:
+
+Apache NiFi - MiNiFi uses BouncyCastle, Jasypt, JCraft Inc., and the built-in
+java cryptography libraries for SSL, SSH, and the protection
+of sensitive configuration parameters. See
+http://bouncycastle.org/about.html
+http://www.jasypt.org/faq.html
+http://jcraft.com/c-info.html
+http://www.oracle.com/us/products/export/export-regulations-345813.html
+for more details on each of these libraries cryptography features.

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/52d19dd3/minifi-assembly/pom.xml
----------------------------------------------------------------------
diff --git a/minifi-assembly/pom.xml b/minifi-assembly/pom.xml
index ebce28a..fdabde9 100644
--- a/minifi-assembly/pom.xml
+++ b/minifi-assembly/pom.xml
@@ -85,6 +85,13 @@ limitations under the License.
             <artifactId>slf4j-api</artifactId>
             <scope>compile</scope>
         </dependency>
+        <dependency>
+            <groupId>org.apache.nifi.minifi</groupId>
+            <artifactId>minifi-docs</artifactId>
+            <classifier>resources</classifier>
+            <scope>runtime</scope>
+            <type>zip</type>
+        </dependency>
 
         <!-- MiNiFi -->
         <dependency>

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/52d19dd3/minifi-assembly/src/main/assembly/dependencies.xml
----------------------------------------------------------------------
diff --git a/minifi-assembly/src/main/assembly/dependencies.xml b/minifi-assembly/src/main/assembly/dependencies.xml
index 659fda3..23aebf9 100644
--- a/minifi-assembly/src/main/assembly/dependencies.xml
+++ b/minifi-assembly/src/main/assembly/dependencies.xml
@@ -117,9 +117,36 @@
                 </includes>
             </unpackOptions>
         </dependencySet>
+
+        <!-- Write out docs directory contents -->
+        <dependencySet>
+            <scope>runtime</scope>
+            <useProjectArtifact>false</useProjectArtifact>
+            <outputDirectory>docs/</outputDirectory>
+            <useTransitiveFiltering>true</useTransitiveFiltering>
+            <includes>
+                <include>minifi-docs</include>
+            </includes>
+            <unpack>true</unpack>
+            <unpackOptions>
+                <filtered>false</filtered>
+                <excludes>
+                    <!-- LICENSE and NOTICE both covered by top-level -->
+                    <exclude>LICENSE</exclude>
+                    <exclude>NOTICE</exclude>
+                </excludes>
+            </unpackOptions>
+        </dependencySet>
     </dependencySets>
     <files>
         <file>
+            <source>./README.md</source>
+            <outputDirectory>./</outputDirectory>
+            <destName>README</destName>
+            <fileMode>0644</fileMode>
+            <filtered>true</filtered>
+        </file>
+        <file>
             <source>./LICENSE</source>
             <outputDirectory>./</outputDirectory>
             <destName>LICENSE</destName>

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/52d19dd3/minifi-docs/LICENSE
----------------------------------------------------------------------
diff --git a/minifi-docs/LICENSE b/minifi-docs/LICENSE
new file mode 100644
index 0000000..7a4a3ea
--- /dev/null
+++ b/minifi-docs/LICENSE
@@ -0,0 +1,202 @@
+
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      "License" shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      "Licensor" shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      "Legal Entity" shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      "control" means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      "You" (or "Your") shall mean an individual or Legal Entity
+      exercising permissions granted by this License.
+
+      "Source" form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      "Object" form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      "Work" shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      "Derivative Works" shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      "Contribution" shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, "submitted"
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as "Not a Contribution."
+
+      "Contributor" shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a "NOTICE" text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an "AS IS" BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets "[]"
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same "printed page" as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright [yyyy] [name of copyright owner]
+
+   Licensed 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.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/52d19dd3/minifi-docs/NOTICE
----------------------------------------------------------------------
diff --git a/minifi-docs/NOTICE b/minifi-docs/NOTICE
new file mode 100644
index 0000000..8b66d90
--- /dev/null
+++ b/minifi-docs/NOTICE
@@ -0,0 +1,5 @@
+minifi-docs
+Copyright 2014-2016 The Apache Software Foundation
+
+This product includes software developed at
+The Apache Software Foundation (http://www.apache.org/).

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/52d19dd3/minifi-docs/System_Admin_Guide.md
----------------------------------------------------------------------
diff --git a/minifi-docs/System_Admin_Guide.md b/minifi-docs/System_Admin_Guide.md
deleted file mode 100644
index c731a7d..0000000
--- a/minifi-docs/System_Admin_Guide.md
+++ /dev/null
@@ -1,620 +0,0 @@
-<!--
- 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.
--->
-
-# MiNiFi System Administrator's Guide
-
-[Apache NiFi Team](dev@nifi.apache.org>)
-
-[NiFi Homepage](http://nifi.apache.org)
-
-# FlowStatus Query Options
-
-From the minifi.sh script there is the ability to query to get the current status of the flow. This section will give an overview of the different options.
-
-Note: Currently the script only accepts one high level option at a time. Also any names of connections, remote process groups or processors that contain ":", ";" or "," will cause parsing errors when querying.
-
-## Processors
-
-To query the processors use the "processor" flag followed by the id of the processor to get (or "all") followed by one of the processor options. The processor options are below.
-
-Option | Description
------- | -----------
-health | The processor's run status, whether or not it has bulletins and the validation errors (if there are any).
-bulletins | A list of all the current bulletins (if there are any).
-stats | The current stats of the processor. This includes but is not limited to active threads and FlowFiles sent/received.
-
-An example query to get the health, bulletins and stats of the "TailFile" processor is below.
-```
-minifi.sh flowStatus processor:TailFile:health,stats,bulletins
-```
-## Connections
-
-To query the connections use the "connection" flag followed by the id of the connection to get (or "all") followed by one of the connection options. The connection options are below.
-
-Option | Description
------- | -----------
-health | The connections's queued bytes and queued FlowFile count.
-stats | The current stats of the connection. This includes input/output count and input/output bytes.
-
-An example query to get the health and stats of the "TailToS2S" connection is below.
-```
-minifi.sh flowStatus connection:TailToS2S:health,stats
-```
-
-## Remote Process Groups
-
-To query the remote process groups (RPG) use the "remoteProcessGroup" flag followed by the id of the remote process group to get (or "all") followed by one of the remote process group options. The remote process group options are below.
-
-Option | Description
------- | -----------
-health | The connections's queued bytes and queued FlowFile count.
-bulletins | A list of all the current bulletins (if there are any).
-authorizationIssues | A list of all the current authorization issues (if there are any).
-inputPorts | A list of every input port for this RPG and their status. Their status includes it's name, whether the target exit and whether it's currently running.
-stats | The current stats of the RPG. This includes the active threads, sent content size and count.
-
-An example query to get the health, bulletins, authorization issues, input ports and stats of all the RPGS is below.
-
-```
-minifi.sh flowStatus remoteprocessinggroup:all:health,bulletins,authorizationIssues,inputports,stats
-```
-
-## Controller Services
-
-To query the controller services use the "controllerServices" flag followed by one of the controller service options. The controller service options are below.
-
-Option | Description
------- | -----------
-health | The controller service's state, whether or not it has bulletins and any validation errors.
-bulletins | A list of all the current bulletins (if there are any).
-
-An example query to get the health and bulletins of all the controller services is below.
-
-```
-minifi.sh flowStatus controllerservices:health,bulletins
-```
-
-## Provenance Reporting
-
-To query the status of the provenance reporting use the "provenancereporting" flag followed by one of the provenance reporting  options. The provenance reporting options are below.
-
-Option | Description
------- | -----------
-health | The provenance reporting state, active threads, whether or not it has bulletins and any validation errors.
-bulletins | A list of all the current bulletins (if there are any).
-
-An example query to get the health and bulletins of the provenance reporting is below.
-
-```
-minifi.sh flowStatus provenancereporting:health,bulletins
-```
-
-## Instance
-
-To query the status of the MiNiFi instance in general use the "instance" flag followed by one of the instance options. The instance options are below.
-
-Option | Description
------- | -----------
-health | The provenance reporting state, active threads, whether or not it has bulletins and any validation errors.
-bulletins | A list of all the current bulletins (if there are any).
-stats | The current stats of the instance. This including but not limited to bytes read/written and FlowFiles sent/transferred.
-
-An example query to get the health, stats and bulletins of the instance is below.
-
-```
-minifi.sh flowStatus instance:health,stats,bulletins
-```
-
-## System Diagnostics
-
-To query the system diagnostics use the "systemdiagnostics" flag followed by one of the system diagnostics options. The system diagnostics options are below.
-
-Option | Description
------- | -----------
-heap | Information detailing the state of the JVM heap.
-processorstats | The system processor stats. This includes the available processors and load average.
-contentrepositoryusage | A list of each content repository and stats detailing its usage.
-flowfilerepositoryusage | Stats about the current usage of the FlowFile repository.
-garbagecollection | A list of the garbage collection events, detailing their name, collection count and time.
-
-An example query to get the heap, processor stats, content repository usage, FlowFile repository usage and garbage collection from the system diagnostics is below.
-
-```
-minifi.sh flowStatus systemdiagnostics:heap,processorstats,contentrepositoryusage,flowfilerepositoryusage,garbagecollection
-```
-
-## Example
-
-This is an example of a simple query to get the health of all the processors and its results from a simple flow:
-
-```
-User:minifi-0.0.1-SNAPSHOT user ./bin/minifi.sh flowStatus processor:all:health
-
-Java home: /Library/Java/JavaVirtualMachines/jdk1.8.0_74.jdk/Contents/Home
-MiNiFi home: /Users/user/projects/nifi-minifi/minifi-assembly/target/minifi-0.0.1-SNAPSHOT-bin/minifi-0.0.1-SNAPSHOT
-
-Bootstrap Config File: /Users/user/projects/nifi-minifi/minifi-assembly/target/minifi-0.0.1-SNAPSHOT-bin/minifi-0.0.1-SNAPSHOT/conf/bootstrap.conf
-
-Args
-flowStatus
-processor:all:health
-FlowStatusReport{controllerServiceStatusList=null, processorStatusList=[{name='TailFile', processorHealth={runStatus='Running', hasBulletins=false, validationErrorList=[]}, processorStats=null,
-bulletinList=null}], connectionStatusList=null, remoteProcessingGroupStatusList=null, instanceStatus=null, systemDiagnosticsStatus=null, reportingTaskStatusList=null, errorsGeneratingReport=[]}
-```
-
-
-# Config File
-
-The config.yml in the _conf_ directory is the main configuration file for controlling how MiNiFi runs. This section provides an overview of the properties in this file. The file is a YAML
-and follows the YAML format laid out [here](http://www.yaml.org/).
-
-NOTE: Note that values for periods of time and data sizes must include the unit of measure,
-for example "10 sec" or "10 MB", not simply "10".
-
-
-## Flow Controller
-
-The first section of config.yml is for naming and commenting on the file.
-
- Property | Description
- -------- | ---
-name      | The name of the file.
-comment   | A comment describing the usage of this config file.
-
-## Core Properties
-
-The Core Properties section applies to the core framework as a whole.
-
-*Property*                                 | *Description*
----------------------------------------- | -----------
-flow controller graceful shutdown period | Indicates the shutdown period. The default value is 10 sec.
-flow service write delay interval        | When many changes are made to the flow.xml, this property specifies how long to wait before writing out the changes, so as to batch the changes into a single write. The default value is 500 ms.
-administrative yield duration            | If a component allows an unexpected exception to escape, it is considered a bug. As a result, the framework will pause (or administratively yield) the component for this amount of time. This is done so that the component does not use up massive amounts of system resources, since it is known to have problems in the existing state. The default value is 30 sec.
-bored yield duration                     | When a component has no work to do (i.e., is "bored"), this is the amount of time it will wait before checking to see if it has new data to work on. This way, it does not use up CPU resources by checking for new work too often. When setting this property, be aware that it could add extra latency for components that do not constantly have work to do, as once they go into this "bored" state, they will wait this amount of time before checking for more work. The default value is 10 millis.
-max concurrent threads                   | The maximum number of threads any processor can have running at one time.
-
-## FlowFile Repository
-
-The FlowFile repository keeps track of the attributes and current state of each FlowFile in the system. By default,
-this repository is installed in the same root installation directory as all the other repositories; however, it is advisable
-to configure it on a separate drive if available.
-
-*Property*  | *Description*
-----------  | ------------
-partitions  | The number of partitions. The default value is 256.
-checkpoint interval | The FlowFile Repository checkpoint interval. The default value is 2 mins.
-always sync | If set to _true_, any change to the repository will be synchronized to the disk, meaning that NiFi will ask the operating system not to cache the information. This is very expensive and can significantly reduce NiFi performance. However, if it is _false_, there could be the potential for data loss if either there is a sudden power loss or the operating system crashes. The default value is _false_.
-
-#### Swap Subsection
-
-A part of the FlowFile Repository section there is a Swap subsection.
-
-NiFi keeps FlowFile information in memory (the JVM)
-but during surges of incoming data, the FlowFile information can start to take up so much of the JVM that system performance
-suffers. To counteract this effect, NiFi "swaps" the FlowFile information to disk temporarily until more JVM space becomes
-available again. The "Swap" subsection of properties govern how that process occurs.
-
-*Property*  | *Description*
-----------  | ------------
-threshold   | The queue threshold at which NiFi starts to swap FlowFile information to disk. The default value is 20000.
-in period   | The swap in period. The default value is 5 sec.
-in threads  | The number of threads to use for swapping in. The default value is 1.
-out period  | The swap out period. The default value is 5 sec.
-out threads | The number of threads to use for swapping out. The default value is 4.
-
-## Content Repository
-
-The Content Repository holds the content for all the FlowFiles in the system. By default, it is installed in the same root
-installation directory as all the other repositories; however, administrators will likely want to configure it on a separate
-drive if available. If nothing else, it is best if the Content Repository is not on the same drive as the FlowFile Repository.
-In dataflows that handle a large amount of data, the Content Repository could fill up a disk and the
-FlowFile Repository, if also on that disk, could become corrupt. To avoid this situation, configure these repositories on different drives.
-
-*Property*                        | *Description*
---------------------------------  | -------------
-content claim max appendable size | The maximum size for a content claim. The default value is 10 MB.
-content claim max flow files      | The maximum number of FlowFiles to assign to one content claim. The default value is 100.
-always sync                       | If set to _true_, any change to the repository will be synchronized to the disk, meaning that NiFi will ask the operating system not to cache the information. This is very expensive and can significantly reduce NiFi performance. However, if it is _false_, there could be the potential for data loss if either there is a sudden power loss or the operating system crashes. The default value is _false_.
-
-## Provenance Repository
-
-*Property*                        | *Description*
---------------------------------  | -------------
-provenance rollover time          | The amount of time to wait before rolling over the latest data provenance information so that it is available to be accessed by components. The default value is 1 min.
-
-## *Component Status Repository*
-
-The Component Status Repository contains the information for the Component Status History tool in the User Interface. These
-properties govern how that tool works.
-
-The buffer.size and snapshot.frequency work together to determine the amount of historical data to retain. As an example to
-configure two days worth of historical data with a data point snapshot occurring every 5 minutes you would configure
-snapshot.frequency to be "5 mins" and the buffer.size to be "576". To further explain this example for every 60 minutes there
-are 12 (60 / 5) snapshot windows for that time period. To keep that data for 48 hours (12 * 48) you end up with a buffer size
-of 576.
-
-*Property*        | *Description*
------------------ | -------------
-buffer size       | Specifies the buffer size for the Component Status Repository. The default value is 1440.
-snapshot frequency | This value indicates how often to present a snapshot of the components' status history. The default value is 1 min.
-
-## *Security Properties*
-
-These properties pertain to various security features in NiFi. Many of these properties are covered in more detail in the
-Security Configuration section of this Administrator's Guide.
-
-*Property*          | *Description*
-------------------- | -------------
-keystore            | The full path and name of the keystore. It is blank by default.
-keystore type       | The keystore type. It is blank by default.
-keystore password   | The keystore password. It is blank by default.
-key password        | The key password. It is blank by default.
-truststore          | The full path and name of the truststore. It is blank by default.
-truststore type     | The truststore type. It is blank by default.
-truststore password | The truststore password. It is blank by default.
-ssl protocol        | The protocol to use when communicating via https. Necessary to transfer provenance securely.
-
-#### Sensitive Properties Subsection
-
-Some properties for processors are marked as _sensitive_ and should be encrypted. These following properties will be used to encrypt the properties while in use by MiNiFi. This will currently *not* be used to encrypt properties in the config file.
-
-*Property* | *Description*
----------- | -------------
-key        | This is the password used to encrypt any sensitive property values that are configured in processors. By default, it is blank, but the system administrator should provide a value for it. It can be a string of any length, although the recommended minimum length is 10 characters. Be aware that once this password is set and one or more sensitive processor properties have been configured, this password should not be changed.
-algorithm  | The algorithm used to encrypt sensitive properties. The default value is `PBEWITHMD5AND256BITAES-CBC-OPENSSL`.
-provider   | The sensitive property provider. The default value is BC.
-
-## Processors
-
-The current implementation of MiNiFi supports multiple processors. the "Processors" subsection is a list of these processors. Each processor must specify these properties. They are the basic configuration general to all processor implementations. Make sure that all relationships for a processor are accounted for in the auto-terminated relationship list or are used in a connection.
-
-*Property*                          | *Description*
------------------------------------ | -------------
-name                                | The name of what this processor will do. This is not used for any underlying implementation but solely for the users of this configuration and MiNiFi agent.
-class                               | The fully qualified java class name of the processor to run. For example for the standard TailFile processor it would be: org.apache.nifi.processors.standard.TailFile
-max concurrent tasks                | The maximum number of tasks that the processor will use.
-scheduling strategy                 | The strategy for executing the processor. Valid options are `CRON_DRIVEN` or `TIMER_DRIVEN`
-scheduling period                   | This property expects different input depending on the scheduling strategy selected. For the `TIMER_DRIVEN` scheduling strategy, this value is a time duration specified by a number followed by a time unit. For example, 1 second or 5 mins. The default value of 0 sec means that the Processor should run as often as possible as long as it has data to process. This is true for any time duration of 0, regardless of the time unit (i.e., 0 sec, 0 mins, 0 days). For an explanation of values that are applicable for the CRON driven scheduling strategy, see the description of the CRON driven scheduling strategy in the scheduling tab section of the [NiFi User documentation](https://nifi.apache.org/docs/nifi-docs/html/user-guide.html#scheduling-tab).
-penalization period                 | Specifies how long FlowFiles will be penalized.
-yield period                        | In the event the processor cannot make progress it should `yield` which will prevent the processor from being scheduled to run for some period of time. That period of time is specific using this property.
-run duration nanos                  | If the processor supports batching this property can be used to control how long the Processor should be scheduled to run each time that it is triggered. Smaller values will have lower latency but larger values will have higher throughput. This period should typically only be set between 0 and 2000000000 (2 seconds).
-auto-terminated relationships list  | A YAML list of the relationships to auto-terminate for the processor.
-
-#### Processor Properties
-
-Within the Processor Configuration section, there is the `Properties` subsection. The keys and values in this section are the property names and values for the processor. For example the TailFile processor would have a section like this:
-
-    Properties:
-        File to Tail: logs/nifi-app.log
-        Rolling Filename Pattern: nifi-app*
-        State File: ./conf/state/tail-file
-        Initial Start Position: Beginning of File
-
-## Connections
-
-There can be multiple connections in this version of MiNiFi. The "Connections" subsection is a list of connections. Each connection must specify these properties.
-
-*Property*               | *Description*
---------------------     | -------------
-name                     | The name of what this connection will do. This is used for the id of the connection so it must be unique.
-source name              | The name of what of the processor that is the source for this connection.
-source relationship name | The name of the processors relationship to route to this connection
-destination name         | The name of the component to receive this connection.
-max work queue size      | This property is the max number of FlowFiles that can be in the queue before back pressure is applied. When back pressure is applied the source processor will no longer be scheduled to run.
-max work queue data size | This property specifies the maximum amount of data (in size) that should be queued up before applying back pressure.  When back pressure is applied the source processor will no longer be scheduled to run.
-flowfile expiration      | Indicates how long FlowFiles are allowed to exist in the connection before be expired (automatically removed from the flow).
-queue prioritizer class  | This configuration option specifies the fully qualified java class path of a queue prioritizer to use. If no special prioritizer is desired then it should be left blank. An example value of this property is: org.apache.nifi.prioritizer.NewestFlowFileFirstPrioritizer
-
-## Remote Processing Groups
-
-MiNiFi can be used to send data using the Site to Site protocol (via a Remote Processing Group) or a Processor. These properties configure the Remote Processing Groups that use Site-To-Site to send data to a core instance.
-
-*Property*   | *Description*
------------- | -------------
-name         | The name of what this Remote Processing Group points to. This is not used for any underlying implementation but solely for the users of this configuration and MiNiFi agent.
-comment      | A comment about the Remote Processing Group. This is not used for any underlying implementation but solely for the users of this configuration and MiNiFi agent.
-url          | The URL of the core NiFi instance.
-timeout      | How long MiNiFi should wait before timing out the connection.
-yield period | When communication with this Remote Processing Group fails, it will not be scheduled again for this amount of time.
-
-
-#### Input Ports Subsection
-
-When connecting via Site to Site, MiNiFi needs to know which input port to communicate to of the core NiFi instance. These properties designate and configure communication with that port.
-
-*Property*           | *Description*
--------------------- | -------------
-id                   | The id of the input port as it exists on the core NiFi instance. To get this information access the UI of the core instance, right the input port that is desired to be connect to and select "configure". The id of the port should under the "Id" section.
-name                 | The name of the input port as it exists on the core NiFi instance. To get this information access the UI of the core instance, right the input port that is desired to be connect to and select "configure". The id of the port should under the "Port name" section.
-comments:            | A comment about the Input Port. This is not used for any underlying implementation but solely for the users of this configuration and MiNiFi agent.
-max concurrent tasks | The number of tasks that this port should be scheduled for at maximum.
-use compression      | Whether or not compression should be used when communicating with the port. This is a boolean value of either "true" or "false"
-
-## Provenance Reporting
-
-MiNiFi is currently designed only to report provenance data using the Site to Site protocol. These properties configure the underlying reporting task that sends the provenance events.
-
-*Property*           | *Description*
--------------------- | -------------
-comment              | A comment about the Provenance reporting. This is not used for any underlying implementation but solely for the users of this configuration and MiNiFi agent.
-scheduling strategy  | The strategy for executing the Reporting Task. Valid options are `CRON_DRIVEN` or `TIMER_DRIVEN`
-scheduling period    | This property expects different input depending on the scheduling strategy selected. For the `TIMER_DRIVEN` scheduling strategy, this value is a time duration specified by a number followed by a time unit. For example, 1 second or 5 mins. The default value of 0 sec means that the Processor should run as often as possible as long as it has data to process. This is true for any time duration of 0, regardless of the time unit (i.e., 0 sec, 0 mins, 0 days). For an explanation of values that are applicable for the CRON driven scheduling strategy, see the description of the CRON driven scheduling strategy in the scheduling tab section of the [NiFi User documentation](https://nifi.apache.org/docs/nifi-docs/html/user-guide.html#scheduling-tab).
-destination url      | The URL to post the Provenance Events to.
-port name            | The name of the input port as it exists on the receiving NiFi instance. To get this information access the UI of the core instance, right the input port that is desired to be connect to and select "configure". The id of the port should under the "Port name" section.
-originating url      | The URL of this MiNiFi instance. This is used to include the Content URI to send to the destination.
-use compression      | Indicates whether or not to compress the events when being sent.
-timeout              | How long MiNiFi should wait before timing out the connection.
-batch size           | Specifies how many records to send in a single batch, at most. This should be significantly above the expected amount of records generated between scheduling. If it is not, then there is the potential for the Provenance reporting to lag behind event generation and never catch up.
-
-
-
-# Example Config File
-
-Below are two example config YAML files. The first tails the minifi-app.log, send the tailed log and provenance data back to a secure instance of NiFi. The second uses a series of processors to tail the app log, routes off only lines that contain "WriteAheadFlowFileRepository" and puts it as a file in the "./" directory.
-
-
-``` yaml
-Flow Controller:
-    name: MiNiFi Flow
-    comment:
-
-Core Properties:
-    flow controller graceful shutdown period: 10 sec
-    flow service write delay interval: 500 ms
-    administrative yield duration: 30 sec
-    bored yield duration: 10 millis
-
-FlowFile Repository:
-    partitions: 256
-    checkpoint interval: 2 mins
-    always sync: false
-    Swap:
-        threshold: 20000
-        in period: 5 sec
-        in threads: 1
-        out period: 5 sec
-        out threads: 4
-
-Provenance Repository:
-    provenance rollover time: 1 min
-
-Content Repository:
-    content claim max appendable size: 10 MB
-    content claim max flow files: 100
-    always sync: false
-
-Component Status Repository:
-    buffer size: 1440
-    snapshot frequency: 1 min
-
-Security Properties:
-    keystore: /tmp/ssl/localhost-ks.jks
-    keystore type: JKS
-    keystore password: localtest
-    key password: localtest
-    truststore: /tmp/ssl/localhost-ts.jks
-    truststore type: JKS
-    truststore password: localtest
-    ssl protocol: TLS
-    Sensitive Props:
-        key:
-        algorithm: PBEWITHMD5AND256BITAES-CBC-OPENSSL
-        provider: BC
-
-Processors:
-    - name: TailFile
-      class: org.apache.nifi.processors.standard.TailFile
-      max concurrent tasks: 1
-      scheduling strategy: TIMER_DRIVEN
-      scheduling period: 1 sec
-      penalization period: 30 sec
-      yield period: 1 sec
-      run duration nanos: 0
-      auto-terminated relationships list:
-      Properties:
-          File to Tail: logs/minifi-app.log
-          Rolling Filename Pattern: minifi-app*
-          Initial Start Position: Beginning of File
-
-Connections:
-    - name: TailToS2S
-      source name: TailFile
-      source relationship name: success
-      destination name: 8644cbcc-a45c-40e0-964d-5e536e2ada61
-      max work queue size: 0
-      max work queue data size: 1 MB
-      flowfile expiration: 60 sec
-      queue prioritizer class: org.apache.nifi.prioritizer.NewestFlowFileFirstPrioritizer
-
-Remote Processing Groups:
-    - name: NiFi Flow
-      comment:
-      url: https://localhost:8090/nifi
-      timeout: 30 secs
-      yield period: 10 sec
-      Input Ports:
-          - id: 8644cbcc-a45c-40e0-964d-5e536e2ada61
-            name: tailed log
-            comments:
-            max concurrent tasks: 1
-            use compression: false
-
-Provenance Reporting:
-    comment:
-    scheduling strategy: TIMER_DRIVEN
-    scheduling period: 30 sec
-    destination url: https://localhost:8090/
-    port name: provenance
-    originating url: http://${hostname(true)}:8081/nifi
-    use compression: true
-    timeout: 30 secs
-    batch size: 1000
-```
-
-
-``` yaml
-Flow Controller:
-    name: MiNiFi Flow
-    comment:
-
-Core Properties:
-    flow controller graceful shutdown period: 10 sec
-    flow service write delay interval: 500 ms
-    administrative yield duration: 30 sec
-    bored yield duration: 10 millis
-    max concurrent threads: 1
-
-FlowFile Repository:
-    partitions: 256
-    checkpoint interval: 2 mins
-    always sync: false
-    Swap:
-        threshold: 20000
-        in period: 5 sec
-        in threads: 1
-        out period: 5 sec
-        out threads: 4
-
-Content Repository:
-    content claim max appendable size: 10 MB
-    content claim max flow files: 100
-    always sync: false
-
-Component Status Repository:
-    buffer size: 1440
-    snapshot frequency: 1 min
-
-Security Properties:
-    keystore: /tmp/ssl/localhost-ks.jks
-    keystore type: JKS
-    keystore password: localtest
-    key password: localtest
-    truststore: /tmp/ssl/localhost-ts.jks
-    truststore type: JKS
-    truststore password: localtest
-    ssl protocol: TLS
-    Sensitive Props:
-        key:
-        algorithm: PBEWITHMD5AND256BITAES-CBC-OPENSSL
-        provider: BC
-
-Processors:
-    - name: TailAppLog
-      class: org.apache.nifi.processors.standard.TailFile
-      max concurrent tasks: 1
-      scheduling strategy: TIMER_DRIVEN
-      scheduling period: 10 sec
-      penalization period: 30 sec
-      yield period: 1 sec
-      run duration nanos: 0
-      auto-terminated relationships list:
-      Properties:
-          File to Tail: logs/minifi-app.log
-          Rolling Filename Pattern: minifi-app*
-          Initial Start Position: Beginning of File
-    - name: SplitIntoSingleLines
-      class: org.apache.nifi.processors.standard.SplitText
-      max concurrent tasks: 1
-      scheduling strategy: TIMER_DRIVEN
-      scheduling period: 0 sec
-      penalization period: 30 sec
-      yield period: 1 sec
-      run duration nanos: 0
-      auto-terminated relationships list:
-          - failure
-          - original
-      Properties:
-          Line Split Count: 1
-          Header Line Count: 0
-          Remove Trailing Newlines: true
-    - name: RouteErrors
-      class: org.apache.nifi.processors.standard.RouteText
-      max concurrent tasks: 1
-      scheduling strategy: TIMER_DRIVEN
-      scheduling period: 0 sec
-      penalization period: 30 sec
-      yield period: 1 sec
-      run duration nanos: 0
-      auto-terminated relationships list:
-          - unmatched
-          - original
-      Properties:
-          Routing Strategy: Route to 'matched' if line matches all conditions
-          Matching Strategy: Contains
-          Character Set: UTF-8
-          Ignore Leading/Trailing Whitespace: true
-          Ignore Case: true
-          Grouping Regular Expression:
-          WALFFR: WriteAheadFlowFileRepository
-    - name: PutFile
-      class: org.apache.nifi.processors.standard.PutFile
-      max concurrent tasks: 1
-      scheduling strategy: TIMER_DRIVEN
-      scheduling period: 0 sec
-      penalization period: 30 sec
-      yield period: 1 sec
-      run duration nanos: 0
-      auto-terminated relationships list:
-          - failure
-          - success
-      Properties:
-          Directory: ./
-          Conflict Resolution Strategy: replace
-          Create Missing Directories: true
-          Maximum File Count:
-          Last Modified Time:
-          Permissions:
-          Owner:
-          Group:
-
-Connections:
-    - name: TailToSplit
-      source name: TailAppLog
-      source relationship name: success
-      destination name: SplitIntoSingleLines
-      max work queue size: 0
-      max work queue data size: 1 MB
-      flowfile expiration: 60 sec
-      queue prioritizer class: org.apache.nifi.prioritizer.NewestFlowFileFirstPrioritizer
-    - name: SplitToRoute
-      source name: SplitIntoSingleLines
-      source relationship name: splits
-      destination name: RouteErrors
-      max work queue size: 0
-      max work queue data size: 1 MB
-      flowfile expiration: 60 sec
-      queue prioritizer class: org.apache.nifi.prioritizer.NewestFlowFileFirstPrioritizer
-    - name: RouteToS2S
-      source name: RouteErrors
-      source relationship name: matched
-      destination name: PutFile
-      max work queue size: 0
-      max work queue data size: 1 MB
-      flowfile expiration: 60 sec
-      queue prioritizer class: org.apache.nifi.prioritizer.NewestFlowFileFirstPrioritizer
-
-Provenance Reporting:
-    comment:
-    scheduling strategy: TIMER_DRIVEN
-    scheduling period: 30 sec
-    destination url: https://localhost:8080/
-    port name: provenance
-    originating url: http://${hostname(true)}:8081/nifi
-    use compression: true
-    timeout: 30 secs
-    batch size: 1000
-```


[3/3] nifi-minifi git commit: MINIFI-50 * Updating the root project README and providing READMEs for both the minifi and minifi-toolkit assemblies. * Adjusting needed LICENSE and NOTICE files. * Adding System Admin Guide to docs folder in generated minif

Posted by jp...@apache.org.
MINIFI-50 * Updating the root project README and providing READMEs for both the minifi and minifi-toolkit assemblies. * Adjusting needed LICENSE and NOTICE files. * Adding System Admin Guide to docs folder in generated minifi-assembly. * Adding KEYS file to repository.

This closes #29

Signed-off-by: Joseph Percivall <jo...@yahoo.com>


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

Branch: refs/heads/master
Commit: 52d19dd3955c6e36968b8000292ceee2a7d902cc
Parents: 264f663
Author: Aldrin Piri <al...@apache.org>
Authored: Wed Jul 6 15:34:22 2016 -0400
Committer: Joseph Percivall <jo...@yahoo.com>
Committed: Wed Jul 6 18:04:51 2016 -0400

----------------------------------------------------------------------
 KEYS                                            | 404 ++++++++++++
 LICENSE                                         | 202 ++++++
 NOTICE                                          |   5 +
 README.md                                       | 117 ++++
 minifi-assembly/LICENSE                         | 258 +++++++-
 minifi-assembly/NOTICE                          | 646 ++++++++++++++++++-
 minifi-assembly/README.md                       | 115 ++++
 minifi-assembly/pom.xml                         |   7 +
 .../src/main/assembly/dependencies.xml          |  27 +
 minifi-docs/LICENSE                             | 202 ++++++
 minifi-docs/NOTICE                              |   5 +
 minifi-docs/System_Admin_Guide.md               | 620 ------------------
 minifi-docs/pom.xml                             |  70 ++
 minifi-docs/src/main/assembly/dependencies.xml  |  45 ++
 .../src/main/markdown/System_Admin_Guide.md     | 620 ++++++++++++++++++
 .../minifi-toolkit-assembly/README.md           | 106 +++
 .../src/main/assembly/dependencies.xml          |   7 +
 pom.xml                                         |  12 +-
 18 files changed, 2841 insertions(+), 627 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/52d19dd3/KEYS
----------------------------------------------------------------------
diff --git a/KEYS b/KEYS
new file mode 100644
index 0000000..311ed84
--- /dev/null
+++ b/KEYS
@@ -0,0 +1,404 @@
+This file contains the PGP keys of various developers.
+
+Users: pgp < KEYS
+       gpg --import KEYS
+Developers: 
+        pgp -kxa <your name> and append it to this file.
+        (pgpk -ll <your name> && pgpk -xa <your name>) >> this file.
+        (gpg --list-sigs <your name>
+             && gpg --armor --export <your name>) >> this file.
+
+pub   4096R/98B1CC53 2010-10-23
+uid                  Benson Margulies <bi...@apache.org>
+sub   4096R/C5E91334 2010-10-23
+
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v1
+
+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
+EaWfWeQZ4Q==
+=b8+3
+-----END PGP PUBLIC KEY BLOCK-----
+
+
+pub   2048R/4F811A1A 2014-08-26
+uid                  Joseph Witt <jo...@apache.org>
+sig 3        4F811A1A 2015-01-15  Joseph Witt <jo...@apache.org>
+uid                  Joseph Witt <jo...@gmail.com>
+sig 3        4F811A1A 2014-11-27  Joseph Witt <jo...@apache.org>
+sub   2048R/E45C0258 2014-08-26
+sig          4F811A1A 2014-08-26  Joseph Witt <jo...@apache.org>
+
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v2.0.22 (GNU/Linux)
+
+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
+=2Pk/
+-----END PGP PUBLIC KEY BLOCK-----
+
+
+pub   2048R/3DD8317F 2014-08-31
+uid                  Tony Kurc <tk...@apache.org>
+sig 3        3DD8317F 2015-01-15  Tony Kurc <tk...@apache.org>
+uid                  Tony Kurc <tk...@gizmolabs.org>
+sig 3        3DD8317F 2014-08-31  Tony Kurc <tk...@apache.org>
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v1.4.7 (FreeBSD)
+
+mQENBFQCZ5kBCACvnOSvPUnKeLKvbO/QYi/cyPmjVaANucftepG9G5Hu/BAaCfW+
+71cSiSkQvr16THoiNP/wsTOkrxk+ZtSVayGJTXSY9FGsnLOVMPkdXiDcV3sDIH6t
+HM76Eve+yHLoVbMW9qFc0LbvxFiHouFg4cyH85WSIoORRJ+k6JdxqklrS4XIrcir
+6rVP/7vfijOykvRXtWPCBCmOrFVIa6AIl+BGm3VoDMdmD0nDEw7n8ekpbMdwkxax
+5K+9rkwSPQTSLPxLhSeFpw8dPMSPsg6YnAypjhSKCSqDTOZ0TQYXbBLiW5oz2gWU
+RJiI0JSHMcMnZnUm7blw1ZdASzNsQAbq9E1PABEBAAG0H1RvbnkgS3VyYyA8dGt1
+cmNAZ2l6bW9sYWJzLm9yZz6JATkEEwECACMFAlQCZ5kCGw8HCwkIBwMCAQYVCAIJ
+CgsEFgIDAQIeAQIXgAAKCRCOXXo4Pdgxf53bB/46xPAd8B+iIcP/qTUuuCpUPPH5
+zJh429qhkpGuyLCnLLJMD36b3c2NKfZw+7HDRNyEwj5aBrMQ66YmR8d+vfo501LK
+VuWZOU1v/wBg10kf6K7GmUd244DlE6xSZPr1MOh1wxPPY7sQor4Mv90wIvDDDU90
++u0Wp0ppEQWFnG9TXoM05efRwnMG20YMWrD/N9V/eREcCCLFkJsROmH6qGwJpW+V
+X7vngJIfQC4/MlThKDIQShzbkk+qxHh4wApSOk5vP8H7pX7BFf7dWTRDJyd0SN3K
+InNFrbkq6QdhOwkiKCiRJ03Yxj3NY1k+Hk5wHPfv2oSX2TuYFqsigf1mzO43tBxU
+b255IEt1cmMgPHRrdXJjQGFwYWNoZS5vcmc+iQE2BBMBAgAgBQJUtwTQAhsPBgsJ
+CAcDAgQVAggDBBYCAwECHgECF4AACgkQjl16OD3YMX/rXAgAnILAzf74QiIp5Y8k
+zv7Ozy2ZWY9Ut1uBOVXl9OCL347hKq8AnCq49KJiJ4ojEIh3adJ02OLJ/w388PV1
+PKExavDgdPxbpPIRx1fz1uweBRCXDVcgZjJPp+r0NFXmnqv7zc6OMVNyalCg3Wff
+yURMTcrp0pc+tA0SjTmhpK7MChwx8YFor21AGAXb6Ho9InUt8/nE8dEUX4N1lFhb
+ClstwrDTw0l6kzXkcCs3LxTaX1XkEkO/7ZBwOFQGLuNTWEcrBLCmn9Z9UqRcBv39
+lLqlJSFiuV7mNyu7u15/EO9S+ITRYdvsncRRYYdQdYZCyvgxP038P2WUeyRMtQSp
+F9jzEw==
+=IZsE
+-----END PGP PUBLIC KEY BLOCK-----
+pub   4096R/432AEE37 2015-05-04
+uid                  Matt Gilman (CODE SIGNING KEY) <mc...@apache.org>
+sig 3        432AEE37 2015-05-04  Matt Gilman (CODE SIGNING KEY) <mc...@apache.org>
+sub   4096R/69B51990 2015-05-04
+sig          432AEE37 2015-05-04  Matt Gilman (CODE SIGNING KEY) <mc...@apache.org>
+
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v1
+
+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
+xbKM3K7lORLPg4LK0hcG2ZaO
+=gvH7
+-----END PGP PUBLIC KEY BLOCK-----
+
+pub   4096R/3E91C23B 2016-02-06
+uid                  Tony Kurc (CODE SIGNING KEY) <tk...@apache.org>
+sig 3        3E91C23B 2016-02-06  Tony Kurc (CODE SIGNING KEY) <tk...@apache.org>
+sub   4096R/A1439924 2016-02-06
+sig          3E91C23B 2016-02-06  Tony Kurc (CODE SIGNING KEY) <tk...@apache.org>
+
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v1
+
+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
+Ga09Iyl5frGdyh8xqg==
+=oTLB
+-----END PGP PUBLIC KEY BLOCK-----
+
+pub   4096R/2F7DEF69 2015-12-02 [expires: 2019-12-02]
+uid       [ultimate] Andy LoPresto <al...@apache.org>
+uid       [ultimate] Andy LoPresto <al...@gmail.com>
+sub   4096R/04AA6F62 2015-12-02 [expires: 2019-12-02]
+
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Comment: GPGTools - https://gpgtools.org
+
+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
+=B5Xe
+-----END PGP PUBLIC KEY BLOCK-----
+
+pub   4096R/4CFE5D00 2015-07-21
+uid                  Aldrin Piri (Code Signing Key) <al...@apache.org>
+sig 3        4CFE5D00 2015-07-21  Aldrin Piri (Code Signing Key) <al...@apache.org>
+sub   4096R/B8258E0E 2015-07-21
+sig          4CFE5D00 2015-07-21  Aldrin Piri (Code Signing Key) <al...@apache.org>
+
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v1
+
+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
+nZXKJoUBejGeOk7n8SAs6rg=
+=XJk0
+-----END PGP PUBLIC KEY BLOCK-----

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/52d19dd3/LICENSE
----------------------------------------------------------------------
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..d645695
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,202 @@
+
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      "License" shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      "Licensor" shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      "Legal Entity" shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      "control" means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      "You" (or "Your") shall mean an individual or Legal Entity
+      exercising permissions granted by this License.
+
+      "Source" form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      "Object" form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      "Work" shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      "Derivative Works" shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      "Contribution" shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, "submitted"
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as "Not a Contribution."
+
+      "Contributor" shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a "NOTICE" text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an "AS IS" BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets "[]"
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same "printed page" as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright [yyyy] [name of copyright owner]
+
+   Licensed 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.

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/52d19dd3/NOTICE
----------------------------------------------------------------------
diff --git a/NOTICE b/NOTICE
new file mode 100644
index 0000000..d0c3098
--- /dev/null
+++ b/NOTICE
@@ -0,0 +1,5 @@
+Apache NiFi - MiNiFi
+Copyright 2014-2016 The Apache Software Foundation
+
+This product includes software developed at
+The Apache Software Foundation (http://www.apache.org/).

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/52d19dd3/README.md
----------------------------------------------------------------------
diff --git a/README.md b/README.md
index 2554317..e7d7f5a 100644
--- a/README.md
+++ b/README.md
@@ -18,7 +18,94 @@ MiNiFi is a child project effort of Apache NiFi
 
 ## Table of Contents
 
+- [Features](#features)
+- [Requirements](#requirements)
+- [Getting Started](#getting-started)
+- [Getting Help](#getting-help)
+- [Documentation](#documentation)
 - [License](#license)
+- [Export Control](#export-control)
+
+## Features
+
+Apache NiFi - MiNiFi is a complementary data collection approach that supplements the core tenets of [NiFi](http://nifi.apache.org/) in dataflow management, focusing on the collection of data at the source of its creation.
+
+Specific goals for MiNiFi are comprised of:
+- small and lightweight footprint
+- central management of agents
+- generation of data provenance
+- integration with NiFi for follow-on dataflow management and full chain of custody of information
+
+Perspectives of the role of MiNiFi should be from the perspective of the agent acting immediately at, or directly adjacent to, source sensors, systems, or servers.
+
+## Requirements
+* JDK 1.8 or higher
+* Apache Maven 3.1.0 or higher
+
+## Getting Started
+
+To build:
+- Execute `mvn clean install` or for parallel build execute `mvn -T 2.0C clean install`. On a
+  modest development laptop that is a couple of years old, the latter build takes a bit under ten
+  minutes. After a large amount of output you should eventually see a success message.
+
+        $ mvn -T 2.0C clean install
+        [INFO] Scanning for projects...
+        [INFO] Inspecting build with total of 26 modules...
+            ...tens of thousands of lines elided...
+        [INFO] ------------------------------------------------------------------------
+        [INFO] BUILD SUCCESS
+        [INFO] ------------------------------------------------------------------------
+        [INFO] Total time: 47.373 s (Wall Clock)
+        [INFO] Finished at: 2016-07-06T13:07:28-04:00
+        [INFO] Final Memory: 36M/1414M
+        [INFO] ------------------------------------------------------------------------
+
+To run:
+- Change directory to 'minifi-assembly'. In the target directory, there should be a build of minifi.
+
+        $ cd minifi-assembly
+        $ ls -lhd target/minifi*
+        drwxr-xr-x  3 user  staff   102B Jul  6 13:07 minifi-0.0.1-SNAPSHOT-bin
+        -rw-r--r--  1 user  staff    39M Jul  6 13:07 minifi-0.0.1-SNAPSHOT-bin.tar.gz
+        -rw-r--r--  1 user  staff    39M Jul  6 13:07 minifi-0.0.1-SNAPSHOT-bin.zip
+
+- For testing ongoing development you could use the already unpacked build present in the directory
+  named "minifi-*version*-bin", where *version* is the current project version. To deploy in another
+  location make use of either the tarball or zipfile and unpack them wherever you like. The
+  distribution will be within a common parent directory named for the version.
+
+        $ mkdir ~/example-nifi-deploy
+        $ tar xzf target/minifi-*-bin.tar.gz -C ~/example-minifi-deploy
+        $ ls -lh ~/example-minifi-deploy/
+        total 0
+        drwxr-xr-x  10 user  staff   340B Jul 6 01:06 minifi-0.0.1-SNAPSHOT
+
+To run MiNiFi:
+- Change directory to the location where you installed NiFi and run it.
+
+        $ cd ~/example-minifi-deploy/minifi-*
+        $ ./bin/minifi.sh start
+
+- View the logs located in the logs folder
+        $ tail -F ~/example-minifi-deploy/logs/minifi-app.log
+
+- For help building your first data flow and sending data to a NiFi instance see the System Admin Guide located in the docs folder or making use of the minifi-toolkit, which aids in adapting NiFi templates to MiNiFi YAML configuration file format.
+
+- If you are testing ongoing development, you will likely want to stop your instance.
+
+        $ cd ~/example-minifi-deploy/minifi-*
+        $ ./bin/minifi.sh stop
+
+## Getting Help
+If you have questions, you can reach out to our mailing list: dev@nifi.apache.org
+([archive](http://mail-archives.apache.org/mod_mbox/nifi-dev)).
+We're also often available in IRC: #nifi on
+[irc.freenode.net](http://webchat.freenode.net/?channels=#nifi).
+
+## Documentation
+
+See http://nifi.apache.org/minifi and https://cwiki.apache.org/confluence/display/NIFI/MiNiFi for the latest documentation.
 
 ## License
 
@@ -36,3 +123,33 @@ 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.
+
+## Export Control
+
+This distribution includes cryptographic software. The country in which you
+currently reside may have restrictions on the import, possession, use, and/or
+re-export to another country, of encryption software. BEFORE using any
+encryption software, please check your country's laws, regulations and
+policies concerning the import, possession, or use, and re-export of encryption
+software, to see if this is permitted. See <http://www.wassenaar.org/> for more
+information.
+
+The U.S. Government Department of Commerce, Bureau of Industry and Security
+(BIS), has classified this software as Export Commodity Control Number (ECCN)
+5D002.C.1, which includes information security software using or performing
+cryptographic functions with asymmetric algorithms. The form and manner of this
+Apache Software Foundation distribution makes it eligible for export under the
+License Exception ENC Technology Software Unrestricted (TSU) exception (see the
+BIS Export Administration Regulations, Section 740.13) for both object code and
+source code.
+
+The following provides more details on the included cryptographic software:
+
+Apache NiFi - MiNiFi uses BouncyCastle, Jasypt, JCraft Inc., and the built-in
+java cryptography libraries for SSL, SSH, and the protection
+of sensitive configuration parameters. See
+http://bouncycastle.org/about.html
+http://www.jasypt.org/faq.html
+http://jcraft.com/c-info.html
+http://www.oracle.com/us/products/export/export-regulations-345813.html
+for more details on each of these libraries cryptography features.

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/52d19dd3/minifi-assembly/LICENSE
----------------------------------------------------------------------
diff --git a/minifi-assembly/LICENSE b/minifi-assembly/LICENSE
index 9864230..dda1222 100644
--- a/minifi-assembly/LICENSE
+++ b/minifi-assembly/LICENSE
@@ -209,9 +209,91 @@ notices and license terms. Your use of the source code for the these
 subcomponents is subject to the terms and conditions of the following
 licenses.
 
-
-  The binary distribution of this product bundles 'Slf4j' which is available
-  under a "3-clause BSD" license.  For details see http://www.slf4j.org/
+  The binary distribution of this product bundles 'Antlr 3' which is available
+  under a "3-clause BSD" license.  For details see http://www.antlr3.org/license.html
+
+    Copyright (c) 2010 Terence Parr
+    All rights reserved.
+
+    Redistribution and use in source and binary forms, with or without
+    modification, are permitted provided that the following conditions are met:
+
+    Redistributions of source code must retain the above copyright notice, this
+    list of conditions and the following disclaimer.
+    Redistributions in binary form must reproduce the above copyright notice,
+    this list of conditions and the following disclaimer in the documentation
+    and/or other materials provided with the distribution.
+    Neither the name of the author nor the names of its contributors may be used
+    to endorse or promote products derived from this software without specific
+    prior written permission.
+    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+    ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+    THE POSSIBILITY OF SUCH DAMAGE.
+
+  The binary distribution of this product bundles 'Bouncy Castle JDK 1.5 Provider'
+  under an MIT style license.
+
+    Copyright (c) 2000 - 2015 The Legion of the Bouncy Castle Inc. (http://www.bouncycastle.org)
+
+    Permission is hereby granted, free of charge, to any person obtaining a copy
+    of this software and associated documentation files (the "Software"), to deal
+    in the Software without restriction, including without limitation the rights
+    to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+    copies of the Software, and to permit persons to whom the Software is
+    furnished to do so, subject to the following conditions:
+
+    The above copyright notice and this permission notice shall be included in
+    all copies or substantial portions of the Software.
+
+    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+    IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+    FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+    AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+    LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+    OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+    THE SOFTWARE.
+
+  The binary distribution of this product bundles 'XMLENC' which is available
+  under a BSD license.  More details found here: http://xmlenc.sourceforge.net.
+
+    Copyright 2003-2005, Ernst de Haan <wf...@gmail.com>
+    All rights reserved.
+
+    Redistribution and use in source and binary forms, with or without
+    modification, are permitted provided that the following conditions are met:
+
+    1. Redistributions of source code must retain the above copyright notice, this
+       list of conditions and the following disclaimer.
+
+    2. Redistributions in binary form must reproduce the above copyright notice,
+       this list of conditions and the following disclaimer in the documentation
+       and/or other materials provided with the distribution.
+
+    3. Neither the name of the copyright holder nor the names of its contributors
+       may be used to endorse or promote products derived from this software
+       without specific prior written permission.
+
+    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS "AS IS"
+    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+    DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+    FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+    DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+    SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+    CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+    OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+    OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+  The binary distribution of this product bundles 'Slf4j' which is available under
+  an MIT license.
 
     Copyright (c) 2004-2013 QOS.ch
      All rights reserved.
@@ -233,4 +315,172 @@ licenses.
      NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
      LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
      OF CONTRACT, TORT OR OTHERWISE,  ARISING FROM, OUT OF OR IN CONNECTION
-     WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
\ No newline at end of file
+     WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+  The binary distribution of this product bundles 'JCraft Jsch' which is available
+  under a BSD style license.
+    Copyright (c) 2002-2015 Atsuhiko Yamanaka, JCraft,Inc.
+    All rights reserved.
+
+    Redistribution and use in source and binary forms, with or without
+    modification, are permitted provided that the following conditions are met:
+
+      1. Redistributions of source code must retain the above copyright notice,
+         this list of conditions and the following disclaimer.
+
+      2. Redistributions in binary form must reproduce the above copyright
+         notice, this list of conditions and the following disclaimer in
+         the documentation and/or other materials provided with the distribution.
+
+      3. The names of the authors may not be used to endorse or promote products
+         derived from this software without specific prior written permission.
+
+    THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
+    INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
+    FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL JCRAFT,
+    INC. OR ANY CONTRIBUTORS TO THIS SOFTWARE BE LIABLE FOR ANY DIRECT, INDIRECT,
+    INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+    LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
+    OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+    LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+    NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+    EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+  This product bundles 'JCraft Jzlib' which is available under a 3-Clause BSD License.
+
+    Copyright (c) 2002-2014 Atsuhiko Yamanaka, JCraft,Inc.
+    All rights reserved.
+
+    Redistribution and use in source and binary forms, with or without
+    modification, are permitted provided that the following conditions are met:
+
+      1. Redistributions of source code must retain the above copyright notice,
+         this list of conditions and the following disclaimer.
+
+      2. Redistributions in binary form must reproduce the above copyright
+         notice, this list of conditions and the following disclaimer in
+         the documentation and/or other materials provided with the distribution.
+
+      3. The names of the authors may not be used to endorse or promote products
+         derived from this software without specific prior written permission.
+
+    THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
+    INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
+    FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL JCRAFT,
+    INC. OR ANY CONTRIBUTORS TO THIS SOFTWARE BE LIABLE FOR ANY DIRECT, INDIRECT,
+    INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+    LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
+    OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+    LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+    NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+    EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+This product bundles 'asm' which is available under a 3-Clause BSD style license.
+For details see http://asm.ow2.org/asmdex-license.html
+
+    Copyright (c) 2012 France T�l�com
+    All rights reserved.
+
+    Redistribution and use in source and binary forms, with or without
+    modification, are permitted provided that the following conditions
+    are met:
+    1. Redistributions of source code must retain the above copyright
+       notice, this list of conditions and the following disclaimer.
+    2. Redistributions in binary form must reproduce the above copyright
+       notice, this list of conditions and the following disclaimer in the
+       documentation and/or other materials provided with the distribution.
+    3. Neither the name of the copyright holders nor the names of its
+       contributors may be used to endorse or promote products derived from
+       this software without specific prior written permission.
+
+    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+    ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+    THE POSSIBILITY OF SUCH DAMAGE.
+
+The binary distribution of this product bundles 'Hamcrest' which is available
+under a BSD license.  More details found here: http://hamcrest.org.
+
+	Copyright (c) 2000-2006, www.hamcrest.org
+	All rights reserved.
+
+	Redistribution and use in source and binary forms, with or without
+	modification, are permitted provided that the following conditions are met:
+
+	Redistributions of source code must retain the above copyright notice, this list of
+	conditions and the following disclaimer. Redistributions in binary form must reproduce
+	the above copyright notice, this list of conditions and the following disclaimer in
+	the documentation and/or other materials provided with the distribution.
+
+	Neither the name of Hamcrest nor the names of its contributors may be used to endorse
+	or promote products derived from this software without specific prior written
+	permission.
+
+	THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
+	EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+	OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
+	SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+	INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
+	TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+	BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+	CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
+	WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+	DAMAGE.
+
+The binary distribution of this product bundles 'leveldbjni-all-1.8.jar' which is available
+   under a BSD style license
+
+    Copyright (c) 2011 FuseSource Corp. All rights reserved.
+
+    Redistribution and use in source and binary forms, with or without
+    modification, are permitted provided that the following conditions are
+    met:
+
+       * Redistributions of source code must retain the above copyright
+    notice, this list of conditions and the following disclaimer.
+       * Redistributions in binary form must reproduce the above
+    copyright notice, this list of conditions and the following disclaimer
+    in the documentation and/or other materials provided with the
+    distribution.
+       * Neither the name of FuseSource Corp. nor the names of its
+    contributors may be used to endorse or promote products derived from
+    this software without specific prior written permission.
+
+    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+    "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+    LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+    A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+    OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+    SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+    LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+    DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+    THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+    (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+    OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+The binary distribution of this product bundles 'Woodstox StAX 2 API' which is
+     "licensed under standard BSD license"
+
+This product bundles 'jBCrypt' which is available under a BSD license.
+For details see https://github.com/svenkubiak/jBCrypt/blob/0.4.1/LICENSE
+
+    Copyright (c) 2006 Damien Miller <dj...@mindrot.org>
+
+    Permission to use, copy, modify, and distribute this software for any
+    purpose with or without fee is hereby granted, provided that the above
+    copyright notice and this permission notice appear in all copies.
+
+    THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+    WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+    MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+    ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+    WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+    ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+    OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
\ No newline at end of file