Class: Imap::Backup::CLI::FolderEnumerator
- Inherits:
-
Object
- Object
- Imap::Backup::CLI::FolderEnumerator
- Defined in:
- lib/imap/backup/cli/folder_enumerator.rb
Instance Attribute Summary collapse
-
#destination ⇒ Object
readonly
Returns the value of attribute destination.
-
#destination_delimiter ⇒ Object
readonly
Returns the value of attribute destination_delimiter.
-
#source ⇒ Object
readonly
Returns the value of attribute source.
-
#source_delimiter ⇒ Object
readonly
Returns the value of attribute source_delimiter.
Instance Method Summary collapse
- #each ⇒ Object
-
#initialize(destination:, source:, destination_delimiter: "/", destination_prefix: "", source_delimiter: "/", source_prefix: "") ⇒ FolderEnumerator
constructor
A new instance of FolderEnumerator.
Constructor Details
#initialize(destination:, source:, destination_delimiter: "/", destination_prefix: "", source_delimiter: "/", source_prefix: "") ⇒ FolderEnumerator
Returns a new instance of FolderEnumerator.
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/imap/backup/cli/folder_enumerator.rb', line 10 def initialize( destination:, source:, destination_delimiter: "/", destination_prefix: "", source_delimiter: "/", source_prefix: "" ) @destination = destination @destination_delimiter = destination_delimiter @destination_prefix = destination_prefix @source = source @source_delimiter = source_delimiter @source_prefix = source_prefix end |
Instance Attribute Details
#destination ⇒ Object (readonly)
Returns the value of attribute destination.
5 6 7 |
# File 'lib/imap/backup/cli/folder_enumerator.rb', line 5 def destination @destination end |
#destination_delimiter ⇒ Object (readonly)
Returns the value of attribute destination_delimiter.
6 7 8 |
# File 'lib/imap/backup/cli/folder_enumerator.rb', line 6 def destination_delimiter @destination_delimiter end |
#source ⇒ Object (readonly)
Returns the value of attribute source.
7 8 9 |
# File 'lib/imap/backup/cli/folder_enumerator.rb', line 7 def source @source end |
#source_delimiter ⇒ Object (readonly)
Returns the value of attribute source_delimiter.
8 9 10 |
# File 'lib/imap/backup/cli/folder_enumerator.rb', line 8 def source_delimiter @source_delimiter end |
Instance Method Details
#each ⇒ Object
26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/imap/backup/cli/folder_enumerator.rb', line 26 def each return enum_for(:each) if !block_given? glob = File.join(source_local_path, "**", "*.imap") Pathname.glob(glob) do |path| name = source_folder_name(path) serializer = Serializer.new(source_local_path, name) folder = destination_folder_for(name) yield serializer, folder end end |