class ReadMailState

Attributes

protocol[RW]

Public Class Methods

new(protocol = nil) click to toggle source
# File lib/smtp_states.rb, line 78
def initialize(protocol = nil)
  @protocol = protocol
end

Public Instance Methods

not_end_of_message(line) click to toggle source
# File lib/smtp_states.rb, line 102
def not_end_of_message(line)
  not line.strip.eql?('.')
end
read_message(io) click to toggle source
# File lib/smtp_states.rb, line 90
def read_message(io)
  message = ''
  
  line = io.readline
  while not_end_of_message(line)
    message << line
    line = io.readline
  end
  
  message
end
serve(io) click to toggle source
# File lib/smtp_states.rb, line 82
def serve(io)
  message = read_message(io)
  @protocol.new_message_received(message)
  ok(io)

  :quit
end