Class: Net::IMAP::Atom

Inherits:
CommandData show all
Defined in:
lib/net/imap/command_data.rb

Overview

:nodoc:

Direct Known Subclasses

Flag

Instance Method Summary collapse

Methods inherited from CommandData

validate

Constructor Details

#initializeAtom

Returns a new instance of Atom.



275
276
277
278
# File 'lib/net/imap/command_data.rb', line 275

def initialize(**)
  super
  validate
end

Instance Method Details

#send_data(imap, tag) ⇒ Object



289
290
291
# File 'lib/net/imap/command_data.rb', line 289

def send_data(imap, tag)
  imap.__send__(:put_string, data.to_s)
end

#validateObject



280
281
282
283
284
285
286
287
# File 'lib/net/imap/command_data.rb', line 280

def validate
  data.to_s.ascii_only? \
    or raise DataFormatError, "#{self.class} must be ASCII only"
  data.match?(ResponseParser::Patterns::ATOM_SPECIALS) \
    and raise DataFormatError, "#{self.class} must not contain atom-specials"
  data.empty? \
    and raise DataFormatError, "#{self.class} must not be empty"
end