Class: Repository::Base::Internals::RecordDeleter
- Inherits:
-
Object
- Object
- Repository::Base::Internals::RecordDeleter
- Includes:
- Support
- Defined in:
- lib/repository/base/internals/record_deleter.rb
Overview
Stows away details of reporting update success/failure.
Instance Attribute Summary collapse
- #dao ⇒ Object readonly private
- #factory ⇒ Object readonly private
- #identifier ⇒ Object readonly private
Instance Method Summary collapse
-
#delete ⇒ Object
Command-pattern method returning indication of success or failure of attempt to delete identified record.
-
#initialize(identifier:, dao:, factory:) ⇒ RecordDeleter
constructor
Initializes a new instance of `SlugFinder`.
Constructor Details
#initialize(identifier:, dao:, factory:) ⇒ RecordDeleter
Initializes a new instance of `SlugFinder`.
23 24 25 26 27 |
# File 'lib/repository/base/internals/record_deleter.rb', line 23 def initialize(identifier:, dao:, factory:) @identifier = identifier @dao = dao @factory = factory end |
Instance Attribute Details
#dao ⇒ Object (readonly, private)
42 43 44 |
# File 'lib/repository/base/internals/record_deleter.rb', line 42 def dao @dao end |
#factory ⇒ Object (readonly, private)
42 43 44 |
# File 'lib/repository/base/internals/record_deleter.rb', line 42 def factory @factory end |
#identifier ⇒ Object (readonly, private)
42 43 44 |
# File 'lib/repository/base/internals/record_deleter.rb', line 42 def identifier @identifier end |
Instance Method Details
#delete ⇒ Object
Command-pattern method returning indication of success or failure of attempt to delete identified record.
32 33 34 35 36 37 38 |
# File 'lib/repository/base/internals/record_deleter.rb', line 32 def delete finder = SlugFinder.new slug: identifier, dao: dao, factory: factory result = finder.find return result unless result.success dao.delete identifier result end |