class Gem::Package::TarWriter::BoundedStream
IO wrapper that allows writing a limited amount of data
Attributes
          limit[R]
        
        Maximum number of bytes that can be written
          written[R]
        
        Number of bytes written
Public Class Methods
          new(io, limit)
          
          click to toggle source
          
        
        
        Wraps io and allows up to limit bytes to be written
# File lib/rubygems/package/tar_writer.rb, line 34 def initialize(io, limit) @io = io @limit = limit @written = 0 end
Public Instance Methods
          write(data)
          
          click to toggle source
          
        
        
        Writes data onto the IO, raising a FileOverflow exception if the number of bytes will be more than limit
# File lib/rubygems/package/tar_writer.rb, line 44 def write(data) if data.bytesize + @written > @limit raise FileOverflow, "You tried to feed more data than fits in the file." end @io.write data @written += data.bytesize data.bytesize end