Class: FailMail::Subscription

Inherits:
Base
  • Object
show all
Defined in:
lib/fail_mail/subscription.rb

Instance Attribute Summary collapse

Attributes inherited from Base

#client

Instance Method Summary collapse

Methods inherited from Base

#call

Constructor Details

#initialize(list_name, member_id, member, client = FailMail.client) ⇒ Subscription

Returns a new instance of Subscription.



5
6
7
8
9
10
# File 'lib/fail_mail/subscription.rb', line 5

def initialize list_name, member_id, member, client=FailMail.client
  super client
  @list_name = list_name
  @member_id = member_id
  @member = member
end

Instance Attribute Details

#list_nameObject (readonly)

Returns the value of attribute list_name.



3
4
5
# File 'lib/fail_mail/subscription.rb', line 3

def list_name
  @list_name
end

#memberObject (readonly)

Returns the value of attribute member.



3
4
5
# File 'lib/fail_mail/subscription.rb', line 3

def member
  @member
end

#member_idObject (readonly)

Returns the value of attribute member_id.



3
4
5
# File 'lib/fail_mail/subscription.rb', line 3

def member_id
  @member_id
end

Instance Method Details

#unsubscribe!Object



12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/fail_mail/subscription.rb', line 12

def unsubscribe!
  response = call :unsubscribe, message: {
    SimpleMemberStructArrayIn: {
      item: {
        MemberID: member_id,
        EmailAddress: member.email,
        ListName: list_name
      }
    }
  }
  response.body[:unsubscribe_response][:return] == "1"
end