Class | WEBrick::HTTPUtils::FormData |
In: |
lib/webrick/httputils.rb
|
Parent: | String |
EmptyRawHeader | = | [].freeze |
EmptyHeader | = | {}.freeze |
filename | [RW] | |
name | [RW] | |
next_data | [RW] |
# File lib/webrick/httputils.rb, line 210 210: def initialize(*args) 211: @name = @filename = @next_data = nil 212: if args.empty? 213: @raw_header = [] 214: @header = nil 215: super("") 216: else 217: @raw_header = EmptyRawHeader 218: @header = EmptyHeader 219: super(args.shift) 220: unless args.empty? 221: @next_data = self.class.new(*args) 222: end 223: end 224: end
# File lib/webrick/httputils.rb, line 234 234: def <<(str) 235: if @header 236: super 237: elsif str == CRLF 238: @header = HTTPUtils::parse_header(@raw_header) 239: if cd = self['content-disposition'] 240: if /\s+name="(.*?)"/ =~ cd then @name = $1 end 241: if /\s+filename="(.*?)"/ =~ cd then @filename = $1 end 242: end 243: else 244: @raw_header << str 245: end 246: self 247: end
# File lib/webrick/httputils.rb, line 226 226: def [](*key) 227: begin 228: @header[key[0].downcase].join(", ") 229: rescue StandardError, NameError 230: super 231: end 232: end
# File lib/webrick/httputils.rb, line 249 249: def append_data(data) 250: tmp = self 251: while tmp 252: unless tmp.next_data 253: tmp.next_data = data 254: break 255: end 256: tmp = tmp.next_data 257: end 258: self 259: end
# File lib/webrick/httputils.rb, line 261 261: def each_data 262: tmp = self 263: while tmp 264: next_data = tmp.next_data 265: yield(tmp) 266: tmp = next_data 267: end 268: end