Sha256: 24ad1ea55942bcbb66e618956b5482cf7a20b25a40376cc7708b1106090aabbc

Contents?: true

Size: 783 Bytes

Versions: 1

Compression:

Stored size: 783 Bytes

Contents

module ActionTexter
  class Message
    include DeliveryMethods
    attr_accessor :from, :to, :body, :reference, :delivery_handler
    attr_reader :delivery_method, :delivery_options

    def initialize(attributes = {})
      @from          = attributes[:from]
      @to            = attributes[:to]
      @body          = attributes[:body]
      @reference     = attributes[:reference]
      wrap_delivery_behavior!(self, ActionTexter.config.delivery_method)
    end

    def deliver
      @delivery_method.deliver(self)
      # request.perform if valid?
    end

    def deliver!
      deliver
    end

    def delivery_method(method = nil, opts = {})
      unless method
        @delivery_method
      else
        @delivery_method = method.new(opts)
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
action-texter-0.1.2.ALPHA lib/action_texter/message.rb