NIFI-396 updated the javadocs of ProcessSession to reflect that a 
FlowFileAccessExcpetion will be thrown if an Input/Output Stream is attempted 
to be accessed after the callback is executed.


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

Branch: refs/heads/NIFI-250
Commit: cd183be4410bdc88de7d3a0026452ab62eb10621
Parents: e2760f8
Author: Bobby Owolabi <[email protected]>
Authored: Thu Mar 19 01:18:22 2015 -0400
Committer: Bobby Owolabi <[email protected]>
Committed: Thu Mar 19 01:18:22 2015 -0400

----------------------------------------------------------------------
 .../apache/nifi/processor/ProcessSession.java   | 40 +++++++++++++++-----
 1 file changed, 31 insertions(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/cd183be4/nifi/nifi-api/src/main/java/org/apache/nifi/processor/ProcessSession.java
----------------------------------------------------------------------
diff --git 
a/nifi/nifi-api/src/main/java/org/apache/nifi/processor/ProcessSession.java 
b/nifi/nifi-api/src/main/java/org/apache/nifi/processor/ProcessSession.java
index d3de916..7b855f2 100644
--- a/nifi/nifi-api/src/main/java/org/apache/nifi/processor/ProcessSession.java
+++ b/nifi/nifi-api/src/main/java/org/apache/nifi/processor/ProcessSession.java
@@ -484,6 +484,9 @@ public interface ProcessSession {
     /**
      * Executes the given callback against the contents corresponding to the
      * given FlowFile.
+     * 
+     * <i>Note</i>: The OutputStream provided to the given 
OutputStreamCallback 
+     * will not be accessible once this method has completed its execution.
      *
      * @param source
      * @param reader
@@ -498,9 +501,11 @@ public interface ProcessSession {
      * destroyed, and the session is automatically rolled back and what is left
      * of the FlowFile is destroyed.
      * @throws FlowFileAccessException if some IO problem occurs accessing
-     * FlowFile content
+     * FlowFile content; if an attempt is made to access the  InputStream 
+     * provided to the given InputStreamCallback after this method completed 
its
+     * execution
      */
-    void read(FlowFile source, InputStreamCallback reader);
+    void read(FlowFile source, InputStreamCallback reader) throws 
FlowFileAccessException;
 
     /**
      * Combines the content of all given source FlowFiles into a single given
@@ -560,7 +565,10 @@ public interface ProcessSession {
 
     /**
      * Executes the given callback against the content corresponding to the
-     * given FlowFile
+     * given FlowFile.
+     * 
+     * <i>Note</i>: The OutputStream provided to the given 
OutputStreamCallback 
+     * will not be accessible once this method has completed its execution.    
 
      *
      * @param source
      * @param writer
@@ -576,13 +584,19 @@ public interface ProcessSession {
      * destroyed, and the session is automatically rolled back and what is left
      * of the FlowFile is destroyed.
      * @throws FlowFileAccessException if some IO problem occurs accessing
-     * FlowFile content
+     * FlowFile content; if an attempt is made to access the OutputStream 
+     * provided to the given OutputStreamCallaback after this method completed 
+     * its execution
      */
-    FlowFile write(FlowFile source, OutputStreamCallback writer);
+    FlowFile write(FlowFile source, OutputStreamCallback writer) throws 
FlowFileAccessException;
 
     /**
      * Executes the given callback against the content corresponding to the
-     * given flow file
+     * given flow file.
+     * 
+     * <i>Note</i>: The InputStream & OutputStream provided to the given 
+     * StreamCallback will not be accessible once this method has completed 
its 
+     * execution.     
      *
      * @param source
      * @param writer
@@ -598,20 +612,28 @@ public interface ProcessSession {
      * destroyed, and the session is automatically rolled back and what is left
      * of the FlowFile is destroyed.
      * @throws FlowFileAccessException if some IO problem occurs accessing
-     * FlowFile content
+     * FlowFile content; if an attempt is made to access the InputStream or 
+     * OutputStream provided to the given StreamCallback after this method 
+     * completed its execution
      */
-    FlowFile write(FlowFile source, StreamCallback writer);
+    FlowFile write(FlowFile source, StreamCallback writer) throws 
FlowFileAccessException;
 
     /**
      * Executes the given callback against the content corresponding to the
      * given FlowFile, such that any data written to the OutputStream of the
      * content will be appended to the end of FlowFile.
+     * 
+     * <i>Note</i>: The OutputStream provided to the given 
OutputStreamCallback 
+     * will not be accessible once this method has completed its execution.
      *
      * @param source
      * @param writer
      * @return
+     * @throws FlowFileAccessException if an attempt is made to access the 
+     * OutputStream provided to the given OutputStreamCallaback after this 
method
+     * completed its execution
      */
-    FlowFile append(FlowFile source, OutputStreamCallback writer);
+    FlowFile append(FlowFile source, OutputStreamCallback writer) throws 
FlowFileAccessException;
 
     /**
      * Writes to the given FlowFile all content from the given content path.

Reply via email to