Class: Lifter::FileUpload
- Inherits:
-
Object
- Object
- Lifter::FileUpload
- Defined in:
- lib/lifter/file_upload.rb
Constant Summary collapse
- DEFAULT_PROLOGUE_SIZE =
10 * 1024
Instance Attribute Summary collapse
-
#original_name ⇒ Object
readonly
Returns the value of attribute original_name.
-
#original_request ⇒ Object
readonly
Returns the value of attribute original_request.
-
#param ⇒ Object
readonly
Returns the value of attribute param.
-
#prologue ⇒ Object
readonly
Returns the value of attribute prologue.
Instance Method Summary collapse
- #close ⇒ Object
- #flush ⇒ Object
- #full_path ⇒ Object
- #hash ⇒ Object
-
#initialize(file, opts = {}) ⇒ FileUpload
constructor
A new instance of FileUpload.
- #mv(new_path) ⇒ Object
- #rm ⇒ Object
- #write(data) ⇒ Object
Constructor Details
#initialize(file, opts = {}) ⇒ FileUpload
Returns a new instance of FileUpload.
12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/lifter/file_upload.rb', line 12 def initialize(file, opts = {}) @file = file @hash = setup_hash(opts[:hash_method]) @prologue_limit = opts[:prologue_size] || DEFAULT_PROLOGUE_SIZE @prologue = '' @original_request = opts[:original_request] @original_name = opts[:original_name] @param = opts[:param] end |
Instance Attribute Details
#original_name ⇒ Object (readonly)
Returns the value of attribute original_name.
10 11 12 |
# File 'lib/lifter/file_upload.rb', line 10 def original_name @original_name end |
#original_request ⇒ Object (readonly)
Returns the value of attribute original_request.
10 11 12 |
# File 'lib/lifter/file_upload.rb', line 10 def original_request @original_request end |
#param ⇒ Object (readonly)
Returns the value of attribute param.
10 11 12 |
# File 'lib/lifter/file_upload.rb', line 10 def param @param end |
#prologue ⇒ Object (readonly)
Returns the value of attribute prologue.
10 11 12 |
# File 'lib/lifter/file_upload.rb', line 10 def prologue @prologue end |
Instance Method Details
#close ⇒ Object
39 40 41 |
# File 'lib/lifter/file_upload.rb', line 39 def close @file.close end |
#flush ⇒ Object
35 36 37 |
# File 'lib/lifter/file_upload.rb', line 35 def flush @file.flush end |
#full_path ⇒ Object
51 52 53 |
# File 'lib/lifter/file_upload.rb', line 51 def full_path File.(@file.path) end |
#hash ⇒ Object
55 56 57 |
# File 'lib/lifter/file_upload.rb', line 55 def hash @hash.hexdigest end |
#mv(new_path) ⇒ Object
47 48 49 |
# File 'lib/lifter/file_upload.rb', line 47 def mv(new_path) FileUtils.mv(full_path, new_path) end |
#rm ⇒ Object
43 44 45 |
# File 'lib/lifter/file_upload.rb', line 43 def rm FileUtils.rm(full_path) end |
#write(data) ⇒ Object
25 26 27 28 29 30 31 32 33 |
# File 'lib/lifter/file_upload.rb', line 25 def write(data) @file.write(data) @hash << data if @prologue.length < @prologue_limit @prologue << data[0, @prologue_limit - @prologue.length] end end |