seban/ruby-getresponse

View on GitHub
lib/get_response/blacklist.rb

Summary

Maintainability
A
0 mins
Test Coverage
require 'forwardable'

module GetResponse

  # Class represents list of blacklisted email addresses.
  class Blacklist
    extend ::Forwardable

    def_delegator :@entries, :size
    def_delegator :@entries, :empty?

    # To instantiate new blacklist object use this method. Blacklist may contain addresses connected
    # with GetResponse account or with one particular campaign.
    #
    # Example:
    #
    #   Blacklist.new(['foo@bar', 'bar@foo'], @connection, @account)
    #
    # @param entries [Array] collection of blacklisted addresses
    # @param connection [GetResponse::Connection] connection of which all operations will be performed
    # @param ancestor [GetResponse::Account, GetResponse::Campaign] object owner of blacklist
    def initialize(entries, connection, ancestor)
      @entries = entries
      @connection = connection
      @ancestor = ancestor
    end
  end

end