about summary refs log tree commit homepage
path: root/lib/rainbows/tee_input.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/rainbows/tee_input.rb')
-rw-r--r--lib/rainbows/tee_input.rb16
1 files changed, 16 insertions, 0 deletions
diff --git a/lib/rainbows/tee_input.rb b/lib/rainbows/tee_input.rb
new file mode 100644
index 0000000..d405a5c
--- /dev/null
+++ b/lib/rainbows/tee_input.rb
@@ -0,0 +1,16 @@
+module Rainbows
+
+  # acts like tee(1) on an input input to provide a input-like stream
+  # while providing rewindable semantics through a File/StringIO
+  # backing store.  On the first pass, the input is only read on demand
+  # so your Rack application can use input notification (upload progress
+  # and like).  This should fully conform to the Rack::InputWrapper
+  # specification on the public API.  This class is intended to be a
+  # strict interpretation of Rack::InputWrapper functionality and will
+  # not support any deviations from it.
+  class TeeInput < Unicorn::TeeInput
+
+    # empty class, this is to avoid unecessarily modifying Unicorn::TeeInput
+    # when MaxBody::Limit is included
+  end
+end