postal 0.1.4
Sign up to get free protection for your applications and to get access to all the features.
- data/.document +5 -0
- data/.gitignore +8 -0
- data/LICENSE +20 -0
- data/README.rdoc +108 -0
- data/Rakefile +60 -0
- data/VERSION +1 -0
- data/lib/postal.rb +47 -0
- data/lib/postal/base.rb +47 -0
- data/lib/postal/list.rb +28 -0
- data/lib/postal/lmapi/lmapi.rb +1311 -0
- data/lib/postal/lmapi/lmapi_driver.rb +687 -0
- data/lib/postal/lmapi/lmapi_mapping_registry.rb +1237 -0
- data/lib/postal/mailing.rb +171 -0
- data/lib/postal/member.rb +141 -0
- data/postal.gemspec +66 -0
- data/test/list_test.rb +20 -0
- data/test/lmapiClient.rb +854 -0
- data/test/lyris_sample.yml +16 -0
- data/test/mailing_test.rb +60 -0
- data/test/member_test.rb +89 -0
- data/test/postal_suite.rb +4 -0
- data/test/test_helper.rb +23 -0
- metadata +91 -0
@@ -0,0 +1,687 @@
|
|
1
|
+
# Main class used by client programs
|
2
|
+
|
3
|
+
# require File.expand_path('lib/postal/lmapi/lmapi.rb')
|
4
|
+
# require File.expand_path('lib/postal/lmapi/lmapiMappingRegistry.rb')
|
5
|
+
gem 'soap4r'
|
6
|
+
require 'soap/rpc/driver'
|
7
|
+
|
8
|
+
module Postal
|
9
|
+
module Lmapi
|
10
|
+
class Soap < ::SOAP::RPC::Driver
|
11
|
+
DefaultEndpointUrl = "http://mail.active.com:82/"
|
12
|
+
NsLmapi = "http://www.lyris.com/lmapi"
|
13
|
+
|
14
|
+
Methods = [
|
15
|
+
[ XSD::QName.new(NsLmapi, "ApiVersion"),
|
16
|
+
"",
|
17
|
+
"apiVersion",
|
18
|
+
[ ["retval", "return", ["::SOAP::SOAPString"]] ],
|
19
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
20
|
+
:response_style => :rpc, :response_use => :encoded,
|
21
|
+
:faults => {} }
|
22
|
+
],
|
23
|
+
[ XSD::QName.new(NsLmapi, "CurrentUserEmailAddress"),
|
24
|
+
"",
|
25
|
+
"currentUserEmailAddress",
|
26
|
+
[ ["retval", "return", ["::SOAP::SOAPString"]] ],
|
27
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
28
|
+
:response_style => :rpc, :response_use => :encoded,
|
29
|
+
:faults => {} }
|
30
|
+
],
|
31
|
+
[ XSD::QName.new(NsLmapi, "DeleteMembers"),
|
32
|
+
"",
|
33
|
+
"deleteMembers",
|
34
|
+
[ ["in", "FilterCriteriaArray", ["ArrayOfstring", "http://www.lyris.com/lmapi", "ArrayOfstring"]],
|
35
|
+
["retval", "return", ["::SOAP::SOAPInt"]] ],
|
36
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
37
|
+
:response_style => :rpc, :response_use => :encoded,
|
38
|
+
:faults => {} }
|
39
|
+
],
|
40
|
+
[ XSD::QName.new(NsLmapi, "GetMemberID"),
|
41
|
+
"",
|
42
|
+
"getMemberID",
|
43
|
+
[ ["in", "SimpleMemberStructIn", ["SimpleMemberStruct", "http://tempuri.org/ns1.xsd", "SimpleMemberStruct"]],
|
44
|
+
["retval", "return", ["::SOAP::SOAPInt"]] ],
|
45
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
46
|
+
:response_style => :rpc, :response_use => :encoded,
|
47
|
+
:faults => {} }
|
48
|
+
],
|
49
|
+
[ XSD::QName.new(NsLmapi, "CreateSingleMember"),
|
50
|
+
"",
|
51
|
+
"createSingleMember",
|
52
|
+
[ ["in", "EmailAddress", ["::SOAP::SOAPString"]],
|
53
|
+
["in", "FullName", ["::SOAP::SOAPString"]],
|
54
|
+
["in", "ListName", ["::SOAP::SOAPString"]],
|
55
|
+
["retval", "return", ["::SOAP::SOAPInt"]] ],
|
56
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
57
|
+
:response_style => :rpc, :response_use => :encoded,
|
58
|
+
:faults => {} }
|
59
|
+
],
|
60
|
+
[ XSD::QName.new(NsLmapi, "CreateManyMembers"),
|
61
|
+
"",
|
62
|
+
"createManyMembers",
|
63
|
+
[ ["in", "ArrayOfTinyMemberStructIn", ["ArrayOfTinyMemberStruct", "http://www.lyris.com/lmapi", "ArrayOfTinyMemberStruct"]],
|
64
|
+
["in", "ListName", ["::SOAP::SOAPString"]],
|
65
|
+
["in", "SkipBadRecords", ["::SOAP::SOAPBoolean"]],
|
66
|
+
["retval", "return", ["::SOAP::SOAPInt"]] ],
|
67
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
68
|
+
:response_style => :rpc, :response_use => :encoded,
|
69
|
+
:faults => {} }
|
70
|
+
],
|
71
|
+
[ XSD::QName.new(NsLmapi, "SqlSelect"),
|
72
|
+
"",
|
73
|
+
"sqlSelect",
|
74
|
+
[ ["in", "SqlStatement", ["::SOAP::SOAPString"]],
|
75
|
+
["retval", "return", ["ArrayOfArrayOfstring", "http://www.lyris.com/lmapi", "ArrayOfArrayOfstring"]] ],
|
76
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
77
|
+
:response_style => :rpc, :response_use => :encoded,
|
78
|
+
:faults => {} }
|
79
|
+
],
|
80
|
+
[ XSD::QName.new(NsLmapi, "SqlInsert"),
|
81
|
+
"",
|
82
|
+
"sqlInsert",
|
83
|
+
[ ["in", "SqlStatement", ["::SOAP::SOAPString"]],
|
84
|
+
["in", "DataArray", ["ArrayOfKeyValueType", "http://www.lyris.com/lmapi", "ArrayOfKeyValueType"]],
|
85
|
+
["in", "ReturnID", ["::SOAP::SOAPBoolean"]],
|
86
|
+
["retval", "return", ["::SOAP::SOAPInt"]] ],
|
87
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
88
|
+
:response_style => :rpc, :response_use => :encoded,
|
89
|
+
:faults => {} }
|
90
|
+
],
|
91
|
+
[ XSD::QName.new(NsLmapi, "SqlUpdate"),
|
92
|
+
"",
|
93
|
+
"sqlUpdate",
|
94
|
+
[ ["in", "SqlStatement", ["::SOAP::SOAPString"]],
|
95
|
+
["in", "DataArray", ["ArrayOfKeyValueType", "http://www.lyris.com/lmapi", "ArrayOfKeyValueType"]],
|
96
|
+
["in", "SqlWhere", ["::SOAP::SOAPString"]],
|
97
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
98
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
99
|
+
:response_style => :rpc, :response_use => :encoded,
|
100
|
+
:faults => {} }
|
101
|
+
],
|
102
|
+
[ XSD::QName.new(NsLmapi, "SqlDelete"),
|
103
|
+
"",
|
104
|
+
"sqlDelete",
|
105
|
+
[ ["in", "TableName", ["::SOAP::SOAPString"]],
|
106
|
+
["in", "SqlWhere", ["::SOAP::SOAPString"]],
|
107
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
108
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
109
|
+
:response_style => :rpc, :response_use => :encoded,
|
110
|
+
:faults => {} }
|
111
|
+
],
|
112
|
+
[ XSD::QName.new(NsLmapi, "UpdateMemberPassword"),
|
113
|
+
"",
|
114
|
+
"updateMemberPassword",
|
115
|
+
[ ["in", "SimpleMemberStructIn", ["SimpleMemberStruct", "http://tempuri.org/ns1.xsd", "SimpleMemberStruct"]],
|
116
|
+
["in", "Password", ["::SOAP::SOAPString"]],
|
117
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
118
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
119
|
+
:response_style => :rpc, :response_use => :encoded,
|
120
|
+
:faults => {} }
|
121
|
+
],
|
122
|
+
[ XSD::QName.new(NsLmapi, "CheckMemberPassword"),
|
123
|
+
"",
|
124
|
+
"checkMemberPassword",
|
125
|
+
[ ["in", "SimpleMemberStructIn", ["SimpleMemberStruct", "http://tempuri.org/ns1.xsd", "SimpleMemberStruct"]],
|
126
|
+
["in", "Password", ["::SOAP::SOAPString"]],
|
127
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
128
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
129
|
+
:response_style => :rpc, :response_use => :encoded,
|
130
|
+
:faults => {} }
|
131
|
+
],
|
132
|
+
[ XSD::QName.new(NsLmapi, "CopyMember"),
|
133
|
+
"",
|
134
|
+
"copyMember",
|
135
|
+
[ ["in", "SimpleMemberStructIn", ["SimpleMemberStruct", "http://tempuri.org/ns1.xsd", "SimpleMemberStruct"]],
|
136
|
+
["in", "EmailAddress", ["::SOAP::SOAPString"]],
|
137
|
+
["in", "FullName", ["::SOAP::SOAPString"]],
|
138
|
+
["in", "ListName", ["::SOAP::SOAPString"]],
|
139
|
+
["retval", "return", ["::SOAP::SOAPInt"]] ],
|
140
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
141
|
+
:response_style => :rpc, :response_use => :encoded,
|
142
|
+
:faults => {} }
|
143
|
+
],
|
144
|
+
[ XSD::QName.new(NsLmapi, "CreateList"),
|
145
|
+
"",
|
146
|
+
"createList",
|
147
|
+
[ ["in", "ListTypeEnumIn", [nil, "http://tempuri.org/ns1.xsd", "ListTypeEnum"]],
|
148
|
+
["in", "ListName", ["::SOAP::SOAPString"]],
|
149
|
+
["in", "ShortDescription", ["::SOAP::SOAPString"]],
|
150
|
+
["in", "AdminName", ["::SOAP::SOAPString"]],
|
151
|
+
["in", "AdminEmail", ["::SOAP::SOAPString"]],
|
152
|
+
["in", "AdminPassword", ["::SOAP::SOAPString"]],
|
153
|
+
["in", "Topic", ["::SOAP::SOAPString"]],
|
154
|
+
["retval", "return", ["::SOAP::SOAPInt"]] ],
|
155
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
156
|
+
:response_style => :rpc, :response_use => :encoded,
|
157
|
+
:faults => {} }
|
158
|
+
],
|
159
|
+
[ XSD::QName.new(NsLmapi, "DeleteList"),
|
160
|
+
"",
|
161
|
+
"deleteList",
|
162
|
+
[ ["in", "ListName", ["::SOAP::SOAPString"]],
|
163
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
164
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
165
|
+
:response_style => :rpc, :response_use => :encoded,
|
166
|
+
:faults => {} }
|
167
|
+
],
|
168
|
+
[ XSD::QName.new(NsLmapi, "EmailOnWhatLists"),
|
169
|
+
"",
|
170
|
+
"emailOnWhatLists",
|
171
|
+
[ ["in", "EmailAddress", ["::SOAP::SOAPString"]],
|
172
|
+
["retval", "return", ["ArrayOfstring", "http://www.lyris.com/lmapi", "ArrayOfstring"]] ],
|
173
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
174
|
+
:response_style => :rpc, :response_use => :encoded,
|
175
|
+
:faults => {} }
|
176
|
+
],
|
177
|
+
[ XSD::QName.new(NsLmapi, "EmailPasswordOnWhatLists"),
|
178
|
+
"",
|
179
|
+
"emailPasswordOnWhatLists",
|
180
|
+
[ ["in", "EmailAddress", ["::SOAP::SOAPString"]],
|
181
|
+
["in", "Password", ["::SOAP::SOAPString"]],
|
182
|
+
["retval", "return", ["ArrayOfstring", "http://www.lyris.com/lmapi", "ArrayOfstring"]] ],
|
183
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
184
|
+
:response_style => :rpc, :response_use => :encoded,
|
185
|
+
:faults => {} }
|
186
|
+
],
|
187
|
+
[ XSD::QName.new(NsLmapi, "CreateListAdmin"),
|
188
|
+
"",
|
189
|
+
"createListAdmin",
|
190
|
+
[ ["in", "AdminEmail", ["::SOAP::SOAPString"]],
|
191
|
+
["in", "AdminPassword", ["::SOAP::SOAPString"]],
|
192
|
+
["in", "AdminListName", ["::SOAP::SOAPString"]],
|
193
|
+
["in", "AdminFullName", ["::SOAP::SOAPString"]],
|
194
|
+
["in", "ReceiveListAdminMail", ["::SOAP::SOAPBoolean"]],
|
195
|
+
["in", "ReceiveModerationNotification", ["::SOAP::SOAPBoolean"]],
|
196
|
+
["in", "BypassListModeration", ["::SOAP::SOAPBoolean"]],
|
197
|
+
["retval", "return", ["::SOAP::SOAPInt"]] ],
|
198
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
199
|
+
:response_style => :rpc, :response_use => :encoded,
|
200
|
+
:faults => {} }
|
201
|
+
],
|
202
|
+
[ XSD::QName.new(NsLmapi, "CreateMemberBan"),
|
203
|
+
"",
|
204
|
+
"createMemberBan",
|
205
|
+
[ ["in", "MemberBanStructIn", ["MemberBanStruct", "http://tempuri.org/ns1.xsd", "MemberBanStruct"]],
|
206
|
+
["retval", "return", ["::SOAP::SOAPInt"]] ],
|
207
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
208
|
+
:response_style => :rpc, :response_use => :encoded,
|
209
|
+
:faults => {} }
|
210
|
+
],
|
211
|
+
[ XSD::QName.new(NsLmapi, "GetEmailFromMemberID"),
|
212
|
+
"",
|
213
|
+
"getEmailFromMemberID",
|
214
|
+
[ ["in", "MemberID", ["::SOAP::SOAPInt"]],
|
215
|
+
["retval", "return", ["::SOAP::SOAPString"]] ],
|
216
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
217
|
+
:response_style => :rpc, :response_use => :encoded,
|
218
|
+
:faults => {} }
|
219
|
+
],
|
220
|
+
[ XSD::QName.new(NsLmapi, "GetListID"),
|
221
|
+
"",
|
222
|
+
"getListID",
|
223
|
+
[ ["in", "ListName", ["::SOAP::SOAPString"]],
|
224
|
+
["retval", "return", ["::SOAP::SOAPInt"]] ],
|
225
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
226
|
+
:response_style => :rpc, :response_use => :encoded,
|
227
|
+
:faults => {} }
|
228
|
+
],
|
229
|
+
[ XSD::QName.new(NsLmapi, "GetListnameFromMemberID"),
|
230
|
+
"",
|
231
|
+
"getListnameFromMemberID",
|
232
|
+
[ ["in", "MemberID", ["::SOAP::SOAPInt"]],
|
233
|
+
["retval", "return", ["::SOAP::SOAPString"]] ],
|
234
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
235
|
+
:response_style => :rpc, :response_use => :encoded,
|
236
|
+
:faults => {} }
|
237
|
+
],
|
238
|
+
[ XSD::QName.new(NsLmapi, "ImportContent"),
|
239
|
+
"",
|
240
|
+
"importContent",
|
241
|
+
[ ["in", "ContentID", ["::SOAP::SOAPInt"]],
|
242
|
+
["retval", "return", ["SimpleMailingStruct", "http://tempuri.org/ns1.xsd", "SimpleMailingStruct"]] ],
|
243
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
244
|
+
:response_style => :rpc, :response_use => :encoded,
|
245
|
+
:faults => {} }
|
246
|
+
],
|
247
|
+
[ XSD::QName.new(NsLmapi, "SelectMembers"),
|
248
|
+
"",
|
249
|
+
"selectMembers",
|
250
|
+
[ ["in", "FilterCriteriaArray", ["ArrayOfstring", "http://www.lyris.com/lmapi", "ArrayOfstring"]],
|
251
|
+
["retval", "return", ["ArrayOfMemberStruct", "http://www.lyris.com/lmapi", "ArrayOfMemberStruct"]] ],
|
252
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
253
|
+
:response_style => :rpc, :response_use => :encoded,
|
254
|
+
:faults => {} }
|
255
|
+
],
|
256
|
+
[ XSD::QName.new(NsLmapi, "SelectSimpleMembers"),
|
257
|
+
"",
|
258
|
+
"selectSimpleMembers",
|
259
|
+
[ ["in", "FilterCriteriaArray", ["ArrayOfstring", "http://www.lyris.com/lmapi", "ArrayOfstring"]],
|
260
|
+
["retval", "return", ["ArrayOfSimpleMemberStruct", "http://www.lyris.com/lmapi", "ArrayOfSimpleMemberStruct"]] ],
|
261
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
262
|
+
:response_style => :rpc, :response_use => :encoded,
|
263
|
+
:faults => {} }
|
264
|
+
],
|
265
|
+
[ XSD::QName.new(NsLmapi, "SendMailing"),
|
266
|
+
"",
|
267
|
+
"sendMailing",
|
268
|
+
[ ["in", "SegmentID", ["::SOAP::SOAPInt"]],
|
269
|
+
["in", "MailingStructIn", ["MailingStruct", "http://tempuri.org/ns1.xsd", "MailingStruct"]],
|
270
|
+
["retval", "return", ["::SOAP::SOAPInt"]] ],
|
271
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
272
|
+
:response_style => :rpc, :response_use => :encoded,
|
273
|
+
:faults => {} }
|
274
|
+
],
|
275
|
+
[ XSD::QName.new(NsLmapi, "MailingStatus"),
|
276
|
+
"",
|
277
|
+
"mailingStatus",
|
278
|
+
[ ["in", "MailingID", ["::SOAP::SOAPInt"]],
|
279
|
+
["retval", "return", ["::SOAP::SOAPString"]] ],
|
280
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
281
|
+
:response_style => :rpc, :response_use => :encoded,
|
282
|
+
:faults => {} }
|
283
|
+
],
|
284
|
+
[ XSD::QName.new(NsLmapi, "ScheduleMailing"),
|
285
|
+
"",
|
286
|
+
"scheduleMailing",
|
287
|
+
[ ["in", "SegmentID", ["::SOAP::SOAPInt"]],
|
288
|
+
["in", "SendDate", ["::SOAP::SOAPDateTime"]],
|
289
|
+
["in", "MailingStructIn", ["MailingStruct", "http://tempuri.org/ns1.xsd", "MailingStruct"]],
|
290
|
+
["retval", "return", ["::SOAP::SOAPInt"]] ],
|
291
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
292
|
+
:response_style => :rpc, :response_use => :encoded,
|
293
|
+
:faults => {} }
|
294
|
+
],
|
295
|
+
[ XSD::QName.new(NsLmapi, "ModerateMailing"),
|
296
|
+
"",
|
297
|
+
"moderateMailing",
|
298
|
+
[ ["in", "ModerateID", ["::SOAP::SOAPInt"]],
|
299
|
+
["in", "Accept", ["::SOAP::SOAPBoolean"]],
|
300
|
+
["in", "SendRejectMessage", ["::SOAP::SOAPBoolean"]],
|
301
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
302
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
303
|
+
:response_style => :rpc, :response_use => :encoded,
|
304
|
+
:faults => {} }
|
305
|
+
],
|
306
|
+
[ XSD::QName.new(NsLmapi, "SelectContent"),
|
307
|
+
"",
|
308
|
+
"selectContent",
|
309
|
+
[ ["in", "FilterCriteriaArray", ["ArrayOfstring", "http://www.lyris.com/lmapi", "ArrayOfstring"]],
|
310
|
+
["retval", "return", ["ArrayOfContentStruct", "http://www.lyris.com/lmapi", "ArrayOfContentStruct"]] ],
|
311
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
312
|
+
:response_style => :rpc, :response_use => :encoded,
|
313
|
+
:faults => {} }
|
314
|
+
],
|
315
|
+
[ XSD::QName.new(NsLmapi, "SelectLists"),
|
316
|
+
"",
|
317
|
+
"selectLists",
|
318
|
+
[ ["in", "ListName", ["::SOAP::SOAPString"]],
|
319
|
+
["in", "SiteName", ["::SOAP::SOAPString"]],
|
320
|
+
["retval", "return", ["ArrayOfListStruct", "http://www.lyris.com/lmapi", "ArrayOfListStruct"]] ],
|
321
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
322
|
+
:response_style => :rpc, :response_use => :encoded,
|
323
|
+
:faults => {} }
|
324
|
+
],
|
325
|
+
[ XSD::QName.new(NsLmapi, "SelectSegments"),
|
326
|
+
"",
|
327
|
+
"selectSegments",
|
328
|
+
[ ["in", "FilterCriteriaArray", ["ArrayOfstring", "http://www.lyris.com/lmapi", "ArrayOfstring"]],
|
329
|
+
["retval", "return", ["ArrayOfSegmentStruct", "http://www.lyris.com/lmapi", "ArrayOfSegmentStruct"]] ],
|
330
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
331
|
+
:response_style => :rpc, :response_use => :encoded,
|
332
|
+
:faults => {} }
|
333
|
+
],
|
334
|
+
[ XSD::QName.new(NsLmapi, "SendMailingDirect"),
|
335
|
+
"",
|
336
|
+
"sendMailingDirect",
|
337
|
+
[ ["in", "EmailAddressArray", ["ArrayOfstring", "http://www.lyris.com/lmapi", "ArrayOfstring"]],
|
338
|
+
["in", "MemberIDArray", ["ArrayOfint", "http://www.lyris.com/lmapi", "ArrayOfint"]],
|
339
|
+
["in", "MailingStructIn", ["MailingStruct", "http://tempuri.org/ns1.xsd", "MailingStruct"]],
|
340
|
+
["retval", "return", ["::SOAP::SOAPInt"]] ],
|
341
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
342
|
+
:response_style => :rpc, :response_use => :encoded,
|
343
|
+
:faults => {} }
|
344
|
+
],
|
345
|
+
[ XSD::QName.new(NsLmapi, "SendMemberDoc"),
|
346
|
+
"",
|
347
|
+
"sendMemberDoc",
|
348
|
+
[ ["in", "SimpleMemberStructIn", ["SimpleMemberStruct", "http://tempuri.org/ns1.xsd", "SimpleMemberStruct"]],
|
349
|
+
["in", "DocTypeIn", [nil, "http://tempuri.org/ns1.xsd", "MessageTypeEnum"]],
|
350
|
+
["retval", "return", ["::SOAP::SOAPInt"]] ],
|
351
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
352
|
+
:response_style => :rpc, :response_use => :encoded,
|
353
|
+
:faults => {} }
|
354
|
+
],
|
355
|
+
[ XSD::QName.new(NsLmapi, "TrackingSummary"),
|
356
|
+
"",
|
357
|
+
"trackingSummary",
|
358
|
+
[ ["in", "OutMailID", ["::SOAP::SOAPInt"]],
|
359
|
+
["retval", "return", ["TrackingSummaryStruct", "http://tempuri.org/ns1.xsd", "TrackingSummaryStruct"]] ],
|
360
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
361
|
+
:response_style => :rpc, :response_use => :encoded,
|
362
|
+
:faults => {} }
|
363
|
+
],
|
364
|
+
[ XSD::QName.new(NsLmapi, "Unsubscribe"),
|
365
|
+
"",
|
366
|
+
"unsubscribe",
|
367
|
+
[ ["in", "SimpleMemberStructArrayIn", ["ArrayOfSimpleMemberStruct", "http://www.lyris.com/lmapi", "ArrayOfSimpleMemberStruct"]],
|
368
|
+
["retval", "return", ["::SOAP::SOAPInt"]] ],
|
369
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
370
|
+
:response_style => :rpc, :response_use => :encoded,
|
371
|
+
:faults => {} }
|
372
|
+
],
|
373
|
+
[ XSD::QName.new(NsLmapi, "UpdateMemberEmail"),
|
374
|
+
"",
|
375
|
+
"updateMemberEmail",
|
376
|
+
[ ["in", "SimpleMemberStructIn", ["SimpleMemberStruct", "http://tempuri.org/ns1.xsd", "SimpleMemberStruct"]],
|
377
|
+
["in", "EmailAddress", ["::SOAP::SOAPString"]],
|
378
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
379
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
380
|
+
:response_style => :rpc, :response_use => :encoded,
|
381
|
+
:faults => {} }
|
382
|
+
],
|
383
|
+
[ XSD::QName.new(NsLmapi, "UpdateMemberKind"),
|
384
|
+
"",
|
385
|
+
"updateMemberKind",
|
386
|
+
[ ["in", "SimpleMemberStructIn", ["SimpleMemberStruct", "http://tempuri.org/ns1.xsd", "SimpleMemberStruct"]],
|
387
|
+
["in", "MemberKind", [nil, "http://tempuri.org/ns1.xsd", "MemberKindEnum"]],
|
388
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
389
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
390
|
+
:response_style => :rpc, :response_use => :encoded,
|
391
|
+
:faults => {} }
|
392
|
+
],
|
393
|
+
[ XSD::QName.new(NsLmapi, "UpdateMemberStatus"),
|
394
|
+
"",
|
395
|
+
"updateMemberStatus",
|
396
|
+
[ ["in", "SimpleMemberStructIn", ["SimpleMemberStruct", "http://tempuri.org/ns1.xsd", "SimpleMemberStruct"]],
|
397
|
+
["in", "MemberStatus", [nil, "http://tempuri.org/ns1.xsd", "MemberStatusEnum"]],
|
398
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
399
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
400
|
+
:response_style => :rpc, :response_use => :encoded,
|
401
|
+
:faults => {} }
|
402
|
+
],
|
403
|
+
[ XSD::QName.new(NsLmapi, "UpdateList"),
|
404
|
+
"",
|
405
|
+
"updateList",
|
406
|
+
[ ["in", "ListStructIn", ["ListStruct", "http://tempuri.org/ns1.xsd", "ListStruct"]],
|
407
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
408
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
409
|
+
:response_style => :rpc, :response_use => :encoded,
|
410
|
+
:faults => {} }
|
411
|
+
],
|
412
|
+
[ XSD::QName.new(NsLmapi, "UpdateListAdmin"),
|
413
|
+
"",
|
414
|
+
"updateListAdmin",
|
415
|
+
[ ["in", "SimpleMemberStructIn", ["SimpleMemberStruct", "http://tempuri.org/ns1.xsd", "SimpleMemberStruct"]],
|
416
|
+
["in", "IsListAdmin", ["::SOAP::SOAPBoolean"]],
|
417
|
+
["in", "ReceiveListAdminMail", ["::SOAP::SOAPBoolean"]],
|
418
|
+
["in", "ReceiveModerationNotification", ["::SOAP::SOAPBoolean"]],
|
419
|
+
["in", "BypassListModeration", ["::SOAP::SOAPBoolean"]],
|
420
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
421
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
422
|
+
:response_style => :rpc, :response_use => :encoded,
|
423
|
+
:faults => {} }
|
424
|
+
],
|
425
|
+
[ XSD::QName.new(NsLmapi, "UpdateMemberDemographics"),
|
426
|
+
"",
|
427
|
+
"updateMemberDemographics",
|
428
|
+
[ ["in", "SimpleMemberStructIn", ["SimpleMemberStruct", "http://tempuri.org/ns1.xsd", "SimpleMemberStruct"]],
|
429
|
+
["in", "DemographicsArray", ["ArrayOfKeyValueType", "http://www.lyris.com/lmapi", "ArrayOfKeyValueType"]],
|
430
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
431
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
432
|
+
:response_style => :rpc, :response_use => :encoded,
|
433
|
+
:faults => {} }
|
434
|
+
],
|
435
|
+
[ XSD::QName.new(NsLmapi, "CreateMemberColumn"),
|
436
|
+
"",
|
437
|
+
"createMemberColumn",
|
438
|
+
[ ["in", "FieldName", ["::SOAP::SOAPString"]],
|
439
|
+
["in", "FieldType", [nil, "http://tempuri.org/ns1.xsd", "FieldTypeEnum"]],
|
440
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
441
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
442
|
+
:response_style => :rpc, :response_use => :encoded,
|
443
|
+
:faults => {} }
|
444
|
+
],
|
445
|
+
[ XSD::QName.new(NsLmapi, "DeleteMemberColumn"),
|
446
|
+
"",
|
447
|
+
"deleteMemberColumn",
|
448
|
+
[ ["in", "FieldName", ["::SOAP::SOAPString"]],
|
449
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
450
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
451
|
+
:response_style => :rpc, :response_use => :encoded,
|
452
|
+
:faults => {} }
|
453
|
+
],
|
454
|
+
[ XSD::QName.new(NsLmapi, "CreateSegment"),
|
455
|
+
"",
|
456
|
+
"createSegment",
|
457
|
+
[ ["in", "SegmentStructIn", ["SegmentStruct", "http://tempuri.org/ns1.xsd", "SegmentStruct"]],
|
458
|
+
["retval", "return", ["::SOAP::SOAPInt"]] ],
|
459
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
460
|
+
:response_style => :rpc, :response_use => :encoded,
|
461
|
+
:faults => {} }
|
462
|
+
],
|
463
|
+
[ XSD::QName.new(NsLmapi, "UpdateSegment"),
|
464
|
+
"",
|
465
|
+
"updateSegment",
|
466
|
+
[ ["in", "SegmentStructIn", ["SegmentStruct", "http://tempuri.org/ns1.xsd", "SegmentStruct"]],
|
467
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
468
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
469
|
+
:response_style => :rpc, :response_use => :encoded,
|
470
|
+
:faults => {} }
|
471
|
+
],
|
472
|
+
[ XSD::QName.new(NsLmapi, "DeleteSegment"),
|
473
|
+
"",
|
474
|
+
"deleteSegment",
|
475
|
+
[ ["in", "SegmentID", ["::SOAP::SOAPInt"]],
|
476
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
477
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
478
|
+
:response_style => :rpc, :response_use => :encoded,
|
479
|
+
:faults => {} }
|
480
|
+
],
|
481
|
+
[ XSD::QName.new(NsLmapi, "SendMessage"),
|
482
|
+
"",
|
483
|
+
"sendMessage",
|
484
|
+
[ ["in", "MessageStructIn", ["MessageStruct", "http://tempuri.org/ns1.xsd", "MessageStruct"]],
|
485
|
+
["retval", "return", ["::SOAP::SOAPInt"]] ],
|
486
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
487
|
+
:response_style => :rpc, :response_use => :encoded,
|
488
|
+
:faults => {} }
|
489
|
+
],
|
490
|
+
[ XSD::QName.new(NsLmapi, "CreateSite"),
|
491
|
+
"",
|
492
|
+
"createSite",
|
493
|
+
[ ["in", "SiteStructIn", ["SiteStruct", "http://tempuri.org/ns1.xsd", "SiteStruct"]],
|
494
|
+
["retval", "return", ["::SOAP::SOAPInt"]] ],
|
495
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
496
|
+
:response_style => :rpc, :response_use => :encoded,
|
497
|
+
:faults => {} }
|
498
|
+
],
|
499
|
+
[ XSD::QName.new(NsLmapi, "UpdateSite"),
|
500
|
+
"",
|
501
|
+
"updateSite",
|
502
|
+
[ ["in", "SiteStructIn", ["SiteStruct", "http://tempuri.org/ns1.xsd", "SiteStruct"]],
|
503
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
504
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
505
|
+
:response_style => :rpc, :response_use => :encoded,
|
506
|
+
:faults => {} }
|
507
|
+
],
|
508
|
+
[ XSD::QName.new(NsLmapi, "DeleteSite"),
|
509
|
+
"",
|
510
|
+
"deleteSite",
|
511
|
+
[ ["in", "SiteID", ["::SOAP::SOAPInt"]],
|
512
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
513
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
514
|
+
:response_style => :rpc, :response_use => :encoded,
|
515
|
+
:faults => {} }
|
516
|
+
],
|
517
|
+
[ XSD::QName.new(NsLmapi, "CreateTopic"),
|
518
|
+
"",
|
519
|
+
"createTopic",
|
520
|
+
[ ["in", "TopicStructIn", ["TopicStruct", "http://tempuri.org/ns1.xsd", "TopicStruct"]],
|
521
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
522
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
523
|
+
:response_style => :rpc, :response_use => :encoded,
|
524
|
+
:faults => {} }
|
525
|
+
],
|
526
|
+
[ XSD::QName.new(NsLmapi, "UpdateTopic"),
|
527
|
+
"",
|
528
|
+
"updateTopic",
|
529
|
+
[ ["in", "TopicStructIn", ["TopicStruct", "http://tempuri.org/ns1.xsd", "TopicStruct"]],
|
530
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
531
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
532
|
+
:response_style => :rpc, :response_use => :encoded,
|
533
|
+
:faults => {} }
|
534
|
+
],
|
535
|
+
[ XSD::QName.new(NsLmapi, "DeleteTopic"),
|
536
|
+
"",
|
537
|
+
"deleteTopic",
|
538
|
+
[ ["in", "TopicTitle", ["::SOAP::SOAPString"]],
|
539
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
540
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
541
|
+
:response_style => :rpc, :response_use => :encoded,
|
542
|
+
:faults => {} }
|
543
|
+
],
|
544
|
+
[ XSD::QName.new(NsLmapi, "GetPreviewMailing"),
|
545
|
+
"",
|
546
|
+
"getPreviewMailing",
|
547
|
+
[ ["in", "PreviewStructIn", ["PreviewStruct", "http://tempuri.org/ns1.xsd", "PreviewStruct"]],
|
548
|
+
["retval", "return", ["::SOAP::SOAPString"]] ],
|
549
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
550
|
+
:response_style => :rpc, :response_use => :encoded,
|
551
|
+
:faults => {} }
|
552
|
+
],
|
553
|
+
[ XSD::QName.new(NsLmapi, "CreateServerAdmin"),
|
554
|
+
"",
|
555
|
+
"createServerAdmin",
|
556
|
+
[ ["in", "ServerAdminStructIn", ["ServerAdminStruct", "http://tempuri.org/ns1.xsd", "ServerAdminStruct"]],
|
557
|
+
["retval", "return", ["::SOAP::SOAPInt"]] ],
|
558
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
559
|
+
:response_style => :rpc, :response_use => :encoded,
|
560
|
+
:faults => {} }
|
561
|
+
],
|
562
|
+
[ XSD::QName.new(NsLmapi, "UpdateServerAdmin"),
|
563
|
+
"",
|
564
|
+
"updateServerAdmin",
|
565
|
+
[ ["in", "ServerAdminStructIn", ["ServerAdminStruct", "http://tempuri.org/ns1.xsd", "ServerAdminStruct"]],
|
566
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
567
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
568
|
+
:response_style => :rpc, :response_use => :encoded,
|
569
|
+
:faults => {} }
|
570
|
+
],
|
571
|
+
[ XSD::QName.new(NsLmapi, "DeleteServerAdmin"),
|
572
|
+
"",
|
573
|
+
"deleteServerAdmin",
|
574
|
+
[ ["in", "ServerAdminStructIn", ["ServerAdminStruct", "http://tempuri.org/ns1.xsd", "ServerAdminStruct"]],
|
575
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
576
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
577
|
+
:response_style => :rpc, :response_use => :encoded,
|
578
|
+
:faults => {} }
|
579
|
+
],
|
580
|
+
[ XSD::QName.new(NsLmapi, "CreateSiteAdmin"),
|
581
|
+
"",
|
582
|
+
"createSiteAdmin",
|
583
|
+
[ ["in", "SiteAdminStructIn", ["SiteAdminStruct", "http://tempuri.org/ns1.xsd", "SiteAdminStruct"]],
|
584
|
+
["retval", "return", ["::SOAP::SOAPInt"]] ],
|
585
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
586
|
+
:response_style => :rpc, :response_use => :encoded,
|
587
|
+
:faults => {} }
|
588
|
+
],
|
589
|
+
[ XSD::QName.new(NsLmapi, "UpdateSiteAdmin"),
|
590
|
+
"",
|
591
|
+
"updateSiteAdmin",
|
592
|
+
[ ["in", "SiteAdminStructIn", ["SiteAdminStruct", "http://tempuri.org/ns1.xsd", "SiteAdminStruct"]],
|
593
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
594
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
595
|
+
:response_style => :rpc, :response_use => :encoded,
|
596
|
+
:faults => {} }
|
597
|
+
],
|
598
|
+
[ XSD::QName.new(NsLmapi, "DeleteSiteAdmin"),
|
599
|
+
"",
|
600
|
+
"deleteSiteAdmin",
|
601
|
+
[ ["in", "SiteAdminStructIn", ["SiteAdminStruct", "http://tempuri.org/ns1.xsd", "SiteAdminStruct"]],
|
602
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
603
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
604
|
+
:response_style => :rpc, :response_use => :encoded,
|
605
|
+
:faults => {} }
|
606
|
+
],
|
607
|
+
[ XSD::QName.new(NsLmapi, "CreateContent"),
|
608
|
+
"",
|
609
|
+
"createContent",
|
610
|
+
[ ["in", "ContentStructIn", ["ContentStruct", "http://tempuri.org/ns1.xsd", "ContentStruct"]],
|
611
|
+
["retval", "return", ["::SOAP::SOAPInt"]] ],
|
612
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
613
|
+
:response_style => :rpc, :response_use => :encoded,
|
614
|
+
:faults => {} }
|
615
|
+
],
|
616
|
+
[ XSD::QName.new(NsLmapi, "UpdateContent"),
|
617
|
+
"",
|
618
|
+
"updateContent",
|
619
|
+
[ ["in", "ContentStructIn", ["ContentStruct", "http://tempuri.org/ns1.xsd", "ContentStruct"]],
|
620
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
621
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
622
|
+
:response_style => :rpc, :response_use => :encoded,
|
623
|
+
:faults => {} }
|
624
|
+
],
|
625
|
+
[ XSD::QName.new(NsLmapi, "DeleteContent"),
|
626
|
+
"",
|
627
|
+
"deleteContent",
|
628
|
+
[ ["in", "ContentStructIn", ["ContentStruct", "http://tempuri.org/ns1.xsd", "ContentStruct"]],
|
629
|
+
["retval", "return", ["::SOAP::SOAPBoolean"]] ],
|
630
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
631
|
+
:response_style => :rpc, :response_use => :encoded,
|
632
|
+
:faults => {} }
|
633
|
+
],
|
634
|
+
[ XSD::QName.new(NsLmapi, "SelectListsEx"),
|
635
|
+
"",
|
636
|
+
"selectListsEx",
|
637
|
+
[ ["in", "ListName", ["::SOAP::SOAPString"]],
|
638
|
+
["in", "SiteName", ["::SOAP::SOAPString"]],
|
639
|
+
["in", "FieldsToFetch", ["ArrayOfstring", "http://www.lyris.com/lmapi", "ArrayOfstring"]],
|
640
|
+
["in", "WhereClause", ["ArrayOfstring", "http://www.lyris.com/lmapi", "ArrayOfstring"]],
|
641
|
+
["retval", "return", ["ArrayOfArrayOfstring", "http://www.lyris.com/lmapi", "ArrayOfArrayOfstring"]] ],
|
642
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
643
|
+
:response_style => :rpc, :response_use => :encoded,
|
644
|
+
:faults => {} }
|
645
|
+
],
|
646
|
+
[ XSD::QName.new(NsLmapi, "SelectMembersEx"),
|
647
|
+
"",
|
648
|
+
"selectMembersEx",
|
649
|
+
[ ["in", "FieldsToFetch", ["ArrayOfstring", "http://www.lyris.com/lmapi", "ArrayOfstring"]],
|
650
|
+
["in", "FilterCriteriaArray", ["ArrayOfstring", "http://www.lyris.com/lmapi", "ArrayOfstring"]],
|
651
|
+
["retval", "return", ["ArrayOfArrayOfstring", "http://www.lyris.com/lmapi", "ArrayOfArrayOfstring"]] ],
|
652
|
+
{ :request_style => :rpc, :request_use => :encoded,
|
653
|
+
:response_style => :rpc, :response_use => :encoded,
|
654
|
+
:faults => {} }
|
655
|
+
]
|
656
|
+
]
|
657
|
+
|
658
|
+
def initialize(endpoint_url = nil)
|
659
|
+
endpoint_url ||= DefaultEndpointUrl
|
660
|
+
super(endpoint_url, nil)
|
661
|
+
self.mapping_registry = MappingRegistry::EncodedRegistry
|
662
|
+
self.literal_mapping_registry = MappingRegistry::LiteralRegistry
|
663
|
+
init_methods
|
664
|
+
end
|
665
|
+
|
666
|
+
private
|
667
|
+
|
668
|
+
def init_methods
|
669
|
+
Methods.each do |definitions|
|
670
|
+
opt = definitions.last
|
671
|
+
if opt[:request_style] == :document
|
672
|
+
add_document_operation(*definitions)
|
673
|
+
else
|
674
|
+
add_rpc_operation(*definitions)
|
675
|
+
qname = definitions[0]
|
676
|
+
name = definitions[2]
|
677
|
+
if qname.name != name and qname.name.capitalize == name.capitalize
|
678
|
+
::SOAP::Mapping.define_singleton_method(self, qname.name) do |*arg|
|
679
|
+
__send__(name, *arg)
|
680
|
+
end
|
681
|
+
end
|
682
|
+
end
|
683
|
+
end
|
684
|
+
end
|
685
|
+
end
|
686
|
+
end
|
687
|
+
end
|