Class: Fragmenter::Services::Uploader
- Inherits:
-
Object
- Object
- Fragmenter::Services::Uploader
- Defined in:
- lib/fragmenter/services/uploader.rb
Instance Attribute Summary collapse
-
#request ⇒ Object
readonly
Returns the value of attribute request.
- #storer ⇒ Object
-
#validators ⇒ Object
readonly
Returns the value of attribute validators.
Instance Method Summary collapse
- #complete? ⇒ Boolean
- #errors ⇒ Object
-
#initialize(request, validators = []) ⇒ Uploader
constructor
A new instance of Uploader.
- #parts_valid? ⇒ Boolean
- #rebuilt_valid? ⇒ Boolean
- #store ⇒ Object
Constructor Details
#initialize(request, validators = []) ⇒ Uploader
Returns a new instance of Uploader.
9 10 11 12 |
# File 'lib/fragmenter/services/uploader.rb', line 9 def initialize(request, validators = []) @request = request @validators = validators end |
Instance Attribute Details
#request ⇒ Object (readonly)
Returns the value of attribute request.
6 7 8 |
# File 'lib/fragmenter/services/uploader.rb', line 6 def request @request end |
#storer ⇒ Object
14 15 16 |
# File 'lib/fragmenter/services/uploader.rb', line 14 def storer @storer ||= Fragmenter::Services::Storer.new(request) end |
#validators ⇒ Object (readonly)
Returns the value of attribute validators.
6 7 8 |
# File 'lib/fragmenter/services/uploader.rb', line 6 def validators @validators end |
Instance Method Details
#complete? ⇒ Boolean
33 34 35 |
# File 'lib/fragmenter/services/uploader.rb', line 33 def complete? !!@complete end |
#errors ⇒ Object
29 30 31 |
# File 'lib/fragmenter/services/uploader.rb', line 29 def errors [validator_instances.map(&:errors), storer.errors].flatten end |
#parts_valid? ⇒ Boolean
37 38 39 |
# File 'lib/fragmenter/services/uploader.rb', line 37 def parts_valid? validator_instances.select(&:part?).all?(&:valid?) end |
#rebuilt_valid? ⇒ Boolean
41 42 43 |
# File 'lib/fragmenter/services/uploader.rb', line 41 def rebuilt_valid? validator_instances.reject(&:part?).all?(&:valid?) end |
#store ⇒ Object
18 19 20 21 22 23 24 25 26 27 |
# File 'lib/fragmenter/services/uploader.rb', line 18 def store stored = parts_valid? && storer.store && rebuilt_valid? @complete = fragmenter.complete? if stored && complete? rebuild_fragments end stored end |