Apache NiFi
Copyright 2014-2016 The Apache Software Foundation

This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).

This product includes the following work from the Apache Hadoop project:

BoundedByteArrayOutputStream.java adapted to SoftLimitBoundedByteArrayOutputStream.java
