Class: MailHandler::Receiver
- Inherits:
-
Object
- Object
- MailHandler::Receiver
- Includes:
- MailHandler::Receiving::Observer
- Defined in:
- lib/mailhandler/receiver.rb
Defined Under Namespace
Modules: DEFAULTS Classes: Search
Instance Attribute Summary collapse
-
#checker ⇒ Object
Returns the value of attribute checker.
-
#max_search_duration ⇒ Object
Returns the value of attribute max_search_duration.
-
#search ⇒ Object
Returns the value of attribute search.
-
#search_frequency ⇒ Object
Returns the value of attribute search_frequency.
Instance Method Summary collapse
- #find_email(options) ⇒ Object
-
#initialize(checker) ⇒ Receiver
constructor
A new instance of Receiver.
Methods included from MailHandler::Receiving::Observer
#add_observer, #delete_observer, #init_observer, #notify_observers
Constructor Details
#initialize(checker) ⇒ Receiver
Returns a new instance of Receiver.
36 37 38 39 40 41 42 |
# File 'lib/mailhandler/receiver.rb', line 36 def initialize(checker) @checker = checker @max_search_duration = DEFAULTS::MAX_SEARCH_DURATION @search_frequency = DEFAULTS::SEARCH_FREQUENCY end |
Instance Attribute Details
#checker ⇒ Object
Returns the value of attribute checker.
12 13 14 |
# File 'lib/mailhandler/receiver.rb', line 12 def checker @checker end |
#max_search_duration ⇒ Object
Returns the value of attribute max_search_duration.
12 13 14 |
# File 'lib/mailhandler/receiver.rb', line 12 def max_search_duration @max_search_duration end |
#search ⇒ Object
Returns the value of attribute search.
12 13 14 |
# File 'lib/mailhandler/receiver.rb', line 12 def search @search end |
#search_frequency ⇒ Object
Returns the value of attribute search_frequency.
12 13 14 |
# File 'lib/mailhandler/receiver.rb', line 12 def search_frequency @search_frequency end |
Instance Method Details
#find_email(options) ⇒ Object
44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 |
# File 'lib/mailhandler/receiver.rb', line 44 def find_email() init_search_details() checker.start until search_time_expired? received = checker.find() update_search_details notify_observers(search) break if received sleep search_frequency end notify_observers(search) checker.search_result ensure checker.stop end |