Class: Zimbra::DistributionListService
Defined Under Namespace
Modules: Builder, Parser
Instance Method Summary
collapse
#on_create_document, #on_response_document
#envelope_namespace, #request_content_type, #uri
#request_namespaces, #response_namespaces
#http_error?, #http_not_found?, #on_after_create_http_request, #on_http_error, #report_error, #soap_fault_not_found?
Instance Method Details
#add_member(distribution_list, member) ⇒ Object
111
112
113
114
115
|
# File 'lib/zimbra/distribution_list.rb', line 111
def add_member(distribution_list, member)
xml = invoke("n2:AddDistributionListMemberRequest") do |message|
Builder.add_member(message, distribution_list.id, member)
end
end
|
#all ⇒ Object
65
66
67
68
|
# File 'lib/zimbra/distribution_list.rb', line 65
def all
xml = invoke("n2:GetAllDistributionListsRequest")
Parser.get_all_response(xml)
end
|
#create(name) ⇒ Object
86
87
88
89
90
91
|
# File 'lib/zimbra/distribution_list.rb', line 86
def create(name)
xml = invoke("n2:CreateDistributionListRequest") do |message|
Builder.create(message, name)
end
Parser.distribution_list_response(xml/'//n2:dl')
end
|
#delete(dist) ⇒ Object
123
124
125
126
127
|
# File 'lib/zimbra/distribution_list.rb', line 123
def delete(dist)
xml = invoke("n2:DeleteDistributionListRequest") do |message|
Builder.delete(message, dist.id)
end
end
|
#get_by_id(id) ⇒ Object
70
71
72
73
74
75
76
|
# File 'lib/zimbra/distribution_list.rb', line 70
def get_by_id(id)
xml = invoke("n2:GetDistributionListRequest") do |message|
Builder.get_by_id(message, id)
end
return nil if soap_fault_not_found?
Parser.distribution_list_response(xml/'//n2:dl')
end
|
#get_by_name(name) ⇒ Object
78
79
80
81
82
83
84
|
# File 'lib/zimbra/distribution_list.rb', line 78
def get_by_name(name)
xml = invoke("n2:GetDistributionListRequest") do |message|
Builder.get_by_name(message, name)
end
return nil if soap_fault_not_found?
Parser.distribution_list_response(xml/'//n2:dl')
end
|
#modify(dist) ⇒ Object
93
94
95
96
97
98
99
100
|
# File 'lib/zimbra/distribution_list.rb', line 93
def modify(dist)
xml = invoke("n2:ModifyDistributionListRequest") do |message|
Builder.modify(message, dist)
end
Parser.distribution_list_response(xml/'//n2:dl')
modify_members(dist)
end
|
#modify_members(distribution_list) ⇒ Object
102
103
104
105
106
107
108
109
|
# File 'lib/zimbra/distribution_list.rb', line 102
def modify_members(distribution_list)
distribution_list.new_members.each do |member|
add_member(distribution_list, member)
end
distribution_list.removed_members.each do |member|
remove_member(distribution_list, member)
end
end
|
#remove_member(distribution_list, member) ⇒ Object
117
118
119
120
121
|
# File 'lib/zimbra/distribution_list.rb', line 117
def remove_member(distribution_list, member)
xml = invoke("n2:RemoveDistributionListMemberRequest") do |message|
Builder.remove_member(message, distribution_list.id, member)
end
end
|