postal 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,5 @@
1
+ README.rdoc
2
+ lib/**/*.rb
3
+ bin/*
4
+ features/**/*.feature
5
+ LICENSE
@@ -0,0 +1,8 @@
1
+ *.sw?
2
+ .DS_Store
3
+ coverage
4
+ rdoc
5
+ pkg
6
+ test/run*.rb
7
+ run*.rb
8
+ test/lyris.yml
data/LICENSE ADDED
@@ -0,0 +1,20 @@
1
+ Copyright (c) 2009 Rob Cameron
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,108 @@
1
+ == Introduction
2
+
3
+ Postal is a gem for working with the Lyris API. "But the Lyris API is just a SOAP service, why
4
+ don't I use something like Soap4r?" Well you could, but it wouldn't be very pretty. When the
5
+ interface is created all properties passed to a method are required and always in a certain order.
6
+
7
+ Postal does use the Soap4r interface behind the scenes but gives you a simple ActiveRecord-like
8
+ interface for search and adding records.
9
+
10
+ == Installation
11
+
12
+ Get the gem:
13
+
14
+ gem sources -a http://gems.github.com
15
+ sudo gem install cannikin-postal
16
+
17
+ Then to use just add the require to your script:
18
+
19
+ require 'rubygems'
20
+ require 'postal'
21
+
22
+ == Usage
23
+
24
+ Postal feels a lot like using ActiveRecord. You create/save new Members, find existing ones, etc.
25
+ All of the examples below assume you've already set up Postal with your username, password and WSDL
26
+ endpoint, and optionally the name of the list that all operations should use:
27
+
28
+ Postal.options[:wsdl] = 'http://mymailserver.com:82/?wsdl'
29
+ Postal.options[:username] = 'username'
30
+ Postal.options[:password] = 'password'
31
+ Postal.options[:list_name] = 'my-test-list'
32
+
33
+ If you don't set your list name in the options you can pass it in with each method call.
34
+
35
+ See the /test directory for examples of just about everything you can do with Postal.
36
+
37
+ === Lists
38
+
39
+ # find a list based on its name
40
+ Postal::List.find('my-list-name')
41
+
42
+ === Members
43
+
44
+ # add a member to a list (the list saved to Postal.options)
45
+ new_member = Postal::Member.new(:email => "john.doe@anonymous.com", :name => "John Doe")
46
+ id = new_member.save
47
+ # id => 1234567 (the new member_id in Lyris)
48
+
49
+ # add a member to a specific list and save in one call (both lines are equivalent)
50
+ Postal::Member.new(:email => "john.doe@anonymous.com", :name => "John Doe", :list_name => "new-list").save
51
+ Postal::Member.create(:email => "john.doe@anonymous.com", :name => "John Doe", :list_name => "new-list")
52
+
53
+ Postal also has a `save!` method that throws an error if the person can't be saved, rather than just
54
+ returning false.
55
+
56
+ # update a member's demographics
57
+ new_member = Postal::Member.new(:email => "john.doe@anonymous.com", :name => "John Doe")
58
+ new_member.save
59
+ new_member.update_attributes(:field_0 => 'Male')
60
+
61
+ # find a member's id based on an email address
62
+ Postal::Member.find('john.doe@anonymous.com')
63
+
64
+ # find a member based on member_id
65
+ Postal::Member.find(1234567)
66
+
67
+ # find a member based on Lyris "filters" (see Lyris API docs for syntax)
68
+ Postal::Member.find_by_filter('EmailAddress like john.doe%')
69
+
70
+ # delete member(s) based on filters
71
+ Postal::Member.destroy("EmailAddress like john.doe-delete%")
72
+
73
+ === Mailings
74
+
75
+ # directly send an email to an array of email addresses
76
+ mail = Postal::Mailing.new( :to => ['john.doe@anonymous.com','jane.doe@anonymous.com'],
77
+ :html_message => "<p>Test from Postal at #{Time.now.to_s}</p>",
78
+ :text_message => 'Test test from Postal at #{Time.now.to_s}',
79
+ :from => 'Postmaster <postmaster@company.com>',
80
+ :subject => 'Test from Postal')
81
+ mail.valid?
82
+ mail.send
83
+
84
+ Mailings require a couple things to be valid, mainly someone to send to, a subject, and
85
+ the name of a list to send to. `mail.valid?` will return false if any of these do not exist.
86
+
87
+ == To Do
88
+
89
+ * Implement wrappers for remaining Lyris methods
90
+
91
+ == Thanks
92
+
93
+ Special thanks to this article: http://markthomas.org/2007/09/12/getting-started-with-soap4r/
94
+ Mark details how to use Soap4r (for which there is very little documentation in the world) and
95
+ his example includes talking to Lyris! Postal probably couldn't have happened without his article.
96
+
97
+ == Note on Patches/Pull Requests
98
+
99
+ * Fork the project.
100
+ * Make your feature addition or bug fix.
101
+ * Add tests for it. This is important so I don't break it in a
102
+ future version unintentionally.
103
+ * Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
104
+ * Send me a pull request. Bonus points for topic branches.
105
+
106
+ == Copyright
107
+
108
+ Copyright (c) 2009 Rob Cameron. See LICENSE for details.
@@ -0,0 +1,60 @@
1
+ require 'rubygems'
2
+ require 'rake'
3
+
4
+ begin
5
+ require 'jeweler'
6
+ Jeweler::Tasks.new do |gem|
7
+ gem.name = "postal"
8
+ gem.summary = %Q{Gem for talking to the Lyris API}
9
+ gem.description = %Q{Lyris is an enterprise email service. Postal makes it easy for Ruby to talk to Lyris's API.}
10
+ gem.email = "cannikinn@gmail.com"
11
+ gem.homepage = "http://github.com/cannikin/postal"
12
+ gem.authors = ["Rob Cameron"]
13
+ gem.add_dependency('soap4r','>= 1.5.8')
14
+ # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
15
+ end
16
+
17
+ rescue LoadError
18
+ puts "Jeweler (or a dependency) not available. Install it with: sudo gem install jeweler"
19
+ end
20
+
21
+ require 'rake/testtask'
22
+ Rake::TestTask.new(:test) do |test|
23
+ test.libs << 'lib' << 'test'
24
+ test.pattern = 'test/**/*_test.rb'
25
+ test.verbose = true
26
+ end
27
+
28
+ begin
29
+ require 'rcov/rcovtask'
30
+ Rcov::RcovTask.new do |test|
31
+ test.libs << 'test'
32
+ test.pattern = 'test/**/*_test.rb'
33
+ test.verbose = true
34
+ end
35
+ rescue LoadError
36
+ task :rcov do
37
+ abort "RCov is not available. In order to run rcov, you must: sudo gem install spicycode-rcov"
38
+ end
39
+ end
40
+
41
+
42
+
43
+
44
+ task :default => :test
45
+
46
+ require 'rake/rdoctask'
47
+ Rake::RDocTask.new do |rdoc|
48
+ if File.exist?('VERSION.yml')
49
+ config = YAML.load(File.read('VERSION.yml'))
50
+ version = "#{config[:major]}.#{config[:minor]}.#{config[:patch]}"
51
+ else
52
+ version = ""
53
+ end
54
+
55
+ rdoc.rdoc_dir = 'rdoc'
56
+ rdoc.title = "postal #{version}"
57
+ rdoc.rdoc_files.include('README*')
58
+ rdoc.rdoc_files.include('lib/**/*.rb')
59
+ end
60
+
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 0.1.4
@@ -0,0 +1,47 @@
1
+ $:.unshift File.dirname(__FILE__) # for use/testing when no gem is installed
2
+
3
+ # external
4
+ require 'logger'
5
+
6
+ # internal
7
+ require 'postal/lmapi/lmapi.rb'
8
+ require 'postal/lmapi/lmapi_driver.rb'
9
+ require 'postal/lmapi/lmapi_mapping_registry.rb'
10
+ require 'postal/base'
11
+ require 'postal/list'
12
+ require 'postal/member'
13
+ require 'postal/mailing'
14
+
15
+ module Postal
16
+
17
+ # error classes
18
+ class CouldNotCreateMember < StandardError; end;
19
+ class CouldNotUpdateMember < StandardError; end;
20
+ class CouldNotSendMailing < StandardError; end;
21
+ class WouldDeleteAllMembers < StandardError; end;
22
+
23
+ VERSION = '0.1.0'
24
+ LOGGER = Logger.new(STDOUT)
25
+
26
+ DEFAULT_OPTIONS = { :debug => false }
27
+
28
+ @options = { :wsdl => nil,
29
+ :username => nil,
30
+ :password => nil }
31
+ @driver = nil
32
+
33
+ attr_accessor :options
34
+
35
+ # Make a driver instance available at Postal.driver
36
+ def driver
37
+ unless @driver
38
+ @driver = Postal::Lmapi::Soap.new
39
+ @driver.options['protocol.http.basic_auth'] << [@options[:wsdl], @options[:username], @options[:password]]
40
+ end
41
+ return @driver
42
+ end
43
+
44
+ # make @options available so it can be set externally when using the library
45
+ extend self
46
+
47
+ end
@@ -0,0 +1,47 @@
1
+ module Postal
2
+ class Base
3
+
4
+ class << self
5
+
6
+ # Find objects based on some options
7
+ def find(*args)
8
+ options = extract_options(args)
9
+ case args.first
10
+ when :all then find_all(options)
11
+ else find_some(args,options)
12
+ end
13
+ end
14
+
15
+
16
+ # Alias for find(:all)
17
+ def all
18
+ find(:all)
19
+ end
20
+
21
+
22
+ # Make a new user and immediately save to Lyris
23
+ def create(*args)
24
+ instance = self.new(*args)
25
+ instance.save
26
+ return instance
27
+ end
28
+
29
+
30
+ # Make a new user and immediately save to Lyris, but throw an error if the save fails.
31
+ def create!(*args)
32
+ instance = self.new(*args)
33
+ instance.save!
34
+ return instance
35
+ end
36
+
37
+
38
+ private
39
+
40
+ def extract_options(opts)
41
+ opts.last.is_a?(::Hash) ? opts.pop : {}
42
+ end
43
+
44
+ end
45
+
46
+ end
47
+ end
@@ -0,0 +1,28 @@
1
+ module Postal
2
+ class List < Postal::Base
3
+
4
+ class << self
5
+
6
+ protected
7
+
8
+ # Find one or more lists by name
9
+ def find_some(names,options={})
10
+ return Postal.driver.selectLists(names,'')
11
+ end
12
+
13
+
14
+ # Find all lists
15
+ def find_all(options)
16
+ return Postal.driver.selectLists('','')
17
+ end
18
+
19
+ private
20
+
21
+ def extract_options(opts)
22
+ opts.last.is_a?(::Hash) ? opts.pop : {}
23
+ end
24
+
25
+ end
26
+
27
+ end
28
+ end
@@ -0,0 +1,1311 @@
1
+ # All the data structures for Lyris
2
+
3
+ require 'xsd/qname'
4
+
5
+ module Postal
6
+ module Lmapi
7
+ # {http://tempuri.org/ns1.xsd}SimpleMailingStruct
8
+ # subject - SOAP::SOAPString
9
+ # isHtmlSectionEncoded - SOAP::SOAPBoolean
10
+ # htmlSectionEncoding - SOAP::SOAPInt
11
+ # htmlMessage - SOAP::SOAPString
12
+ # to - SOAP::SOAPString
13
+ # charSetID - SOAP::SOAPInt
14
+ # isTextSectionEncoded - SOAP::SOAPBoolean
15
+ # textSectionEncoding - SOAP::SOAPInt
16
+ # title - SOAP::SOAPString
17
+ # textMessage - SOAP::SOAPString
18
+ # attachments - SOAP::SOAPString
19
+ # from - SOAP::SOAPString
20
+ # additionalHeaders - SOAP::SOAPString
21
+ class SimpleMailingStruct
22
+ attr_accessor :subject
23
+ attr_accessor :isHtmlSectionEncoded
24
+ attr_accessor :htmlSectionEncoding
25
+ attr_accessor :htmlMessage
26
+ attr_accessor :to
27
+ attr_accessor :charSetID
28
+ attr_accessor :isTextSectionEncoded
29
+ attr_accessor :textSectionEncoding
30
+ attr_accessor :title
31
+ attr_accessor :textMessage
32
+ attr_accessor :attachments
33
+ attr_accessor :from
34
+ attr_accessor :additionalHeaders
35
+
36
+ def initialize(subject = nil, isHtmlSectionEncoded = nil, htmlSectionEncoding = nil, htmlMessage = nil, to = nil, charSetID = nil, isTextSectionEncoded = nil, textSectionEncoding = nil, title = nil, textMessage = nil, attachments = nil, from = nil, additionalHeaders = nil)
37
+ @subject = subject
38
+ @isHtmlSectionEncoded = isHtmlSectionEncoded
39
+ @htmlSectionEncoding = htmlSectionEncoding
40
+ @htmlMessage = htmlMessage
41
+ @to = to
42
+ @charSetID = charSetID
43
+ @isTextSectionEncoded = isTextSectionEncoded
44
+ @textSectionEncoding = textSectionEncoding
45
+ @title = title
46
+ @textMessage = textMessage
47
+ @attachments = attachments
48
+ @from = from
49
+ @additionalHeaders = additionalHeaders
50
+ end
51
+ end
52
+
53
+ # {http://tempuri.org/ns1.xsd}MessageStruct
54
+ # recipientEmailsIn - ArrayOfstring
55
+ # recipientMemberIDsIn - ArrayOfint
56
+ # headersIn - ArrayOfKeyValueType
57
+ # body - SOAP::SOAPString
58
+ # segmentID - SOAP::SOAPInt
59
+ # listName - SOAP::SOAPString
60
+ class MessageStruct
61
+ attr_accessor :recipientEmailsIn
62
+ attr_accessor :recipientMemberIDsIn
63
+ attr_accessor :headersIn
64
+ attr_accessor :body
65
+ attr_accessor :segmentID
66
+ attr_accessor :listName
67
+
68
+ def initialize(recipientEmailsIn = nil, recipientMemberIDsIn = nil, headersIn = nil, body = nil, segmentID = nil, listName = nil)
69
+ @recipientEmailsIn = recipientEmailsIn
70
+ @recipientMemberIDsIn = recipientMemberIDsIn
71
+ @headersIn = headersIn
72
+ @body = body
73
+ @segmentID = segmentID
74
+ @listName = listName
75
+ end
76
+ end
77
+
78
+ # {http://tempuri.org/ns1.xsd}DocPart
79
+ # body - SOAP::SOAPString
80
+ # mimePartName - SOAP::SOAPString
81
+ # charSetID - SOAP::SOAPInt
82
+ # encoding - MailSectionEncodingEnum
83
+ class DocPart
84
+ attr_accessor :body
85
+ attr_accessor :mimePartName
86
+ attr_accessor :charSetID
87
+ attr_accessor :encoding
88
+
89
+ def initialize(body = nil, mimePartName = nil, charSetID = nil, encoding = nil)
90
+ @body = body
91
+ @mimePartName = mimePartName
92
+ @charSetID = charSetID
93
+ @encoding = encoding
94
+ end
95
+ end
96
+
97
+ # {http://tempuri.org/ns1.xsd}ContentStruct
98
+ # headerTo - SOAP::SOAPString
99
+ # isTemplate - SOAP::SOAPBoolean
100
+ # docType - DocTypeEnum
101
+ # contentID - SOAP::SOAPInt
102
+ # description - SOAP::SOAPString
103
+ # nativeTitle - SOAP::SOAPString
104
+ # headerFrom - SOAP::SOAPString
105
+ # title - SOAP::SOAPString
106
+ # listName - SOAP::SOAPString
107
+ # siteName - SOAP::SOAPString
108
+ # isReadOnly - SOAP::SOAPBoolean
109
+ # dateCreated - SOAP::SOAPDateTime
110
+ # docParts - ArrayOfDocPart
111
+ class ContentStruct
112
+ attr_accessor :headerTo
113
+ attr_accessor :isTemplate
114
+ attr_accessor :docType
115
+ attr_accessor :contentID
116
+ attr_accessor :description
117
+ attr_accessor :nativeTitle
118
+ attr_accessor :headerFrom
119
+ attr_accessor :title
120
+ attr_accessor :listName
121
+ attr_accessor :siteName
122
+ attr_accessor :isReadOnly
123
+ attr_accessor :dateCreated
124
+ attr_accessor :docParts
125
+
126
+ def initialize(headerTo = nil, isTemplate = nil, docType = nil, contentID = nil, description = nil, nativeTitle = nil, headerFrom = nil, title = nil, listName = nil, siteName = nil, isReadOnly = nil, dateCreated = nil, docParts = nil)
127
+ @headerTo = headerTo
128
+ @isTemplate = isTemplate
129
+ @docType = docType
130
+ @contentID = contentID
131
+ @description = description
132
+ @nativeTitle = nativeTitle
133
+ @headerFrom = headerFrom
134
+ @title = title
135
+ @listName = listName
136
+ @siteName = siteName
137
+ @isReadOnly = isReadOnly
138
+ @dateCreated = dateCreated
139
+ @docParts = docParts
140
+ end
141
+ end
142
+
143
+ # {http://tempuri.org/ns1.xsd}UrlTrackingStruct
144
+ # uniqueOpens - SOAP::SOAPString
145
+ # opens - SOAP::SOAPString
146
+ # url - SOAP::SOAPString
147
+ class UrlTrackingStruct
148
+ attr_accessor :uniqueOpens
149
+ attr_accessor :opens
150
+ attr_accessor :url
151
+
152
+ def initialize(uniqueOpens = nil, opens = nil, url = nil)
153
+ @uniqueOpens = uniqueOpens
154
+ @opens = opens
155
+ @url = url
156
+ end
157
+ end
158
+
159
+ # {http://tempuri.org/ns1.xsd}MemberStruct
160
+ # additional - SOAP::SOAPString
161
+ # membershipKind - MemberKindEnum
162
+ # approvalNeeded - SOAP::SOAPBoolean
163
+ # password - SOAP::SOAPString
164
+ # notifyError - SOAP::SOAPBoolean
165
+ # expireDate - SOAP::SOAPDateTime
166
+ # comment - SOAP::SOAPString
167
+ # userID - SOAP::SOAPString
168
+ # readsHtml - SOAP::SOAPBoolean
169
+ # receiveAdminEmail - SOAP::SOAPBoolean
170
+ # mailFormat - MailFormatEnum
171
+ # dateConfirm - SOAP::SOAPDateTime
172
+ # numberOfBounces - SOAP::SOAPInt
173
+ # numApprovalsNeeded - SOAP::SOAPInt
174
+ # notifySubmission - SOAP::SOAPBoolean
175
+ # noRepro - SOAP::SOAPBoolean
176
+ # memberID - SOAP::SOAPInt
177
+ # demographics - ArrayOfKeyValueType
178
+ # emailAddress - SOAP::SOAPString
179
+ # dateJoined - SOAP::SOAPDateTime
180
+ # isListAdmin - SOAP::SOAPBoolean
181
+ # receiveAcknowlegment - SOAP::SOAPBoolean
182
+ # dateBounce - SOAP::SOAPDateTime
183
+ # dateHeld - SOAP::SOAPDateTime
184
+ # memberStatus - MemberStatusEnum
185
+ # fullName - SOAP::SOAPString
186
+ # canApprovePending - SOAP::SOAPBoolean
187
+ # cleanAuto - SOAP::SOAPBoolean
188
+ # listName - SOAP::SOAPString
189
+ # dateUnsubscribed - SOAP::SOAPDateTime
190
+ class MemberStruct
191
+ attr_accessor :additional
192
+ attr_accessor :membershipKind
193
+ attr_accessor :approvalNeeded
194
+ attr_accessor :password
195
+ attr_accessor :notifyError
196
+ attr_accessor :expireDate
197
+ attr_accessor :comment
198
+ attr_accessor :userID
199
+ attr_accessor :readsHtml
200
+ attr_accessor :receiveAdminEmail
201
+ attr_accessor :mailFormat
202
+ attr_accessor :dateConfirm
203
+ attr_accessor :numberOfBounces
204
+ attr_accessor :numApprovalsNeeded
205
+ attr_accessor :notifySubmission
206
+ attr_accessor :noRepro
207
+ attr_accessor :memberID
208
+ attr_accessor :demographics
209
+ attr_accessor :emailAddress
210
+ attr_accessor :dateJoined
211
+ attr_accessor :isListAdmin
212
+ attr_accessor :receiveAcknowlegment
213
+ attr_accessor :dateBounce
214
+ attr_accessor :dateHeld
215
+ attr_accessor :memberStatus
216
+ attr_accessor :fullName
217
+ attr_accessor :canApprovePending
218
+ attr_accessor :cleanAuto
219
+ attr_accessor :listName
220
+ attr_accessor :dateUnsubscribed
221
+
222
+ def initialize(additional = nil, membershipKind = nil, approvalNeeded = nil, password = nil, notifyError = nil, expireDate = nil, comment = nil, userID = nil, readsHtml = nil, receiveAdminEmail = nil, mailFormat = nil, dateConfirm = nil, numberOfBounces = nil, numApprovalsNeeded = nil, notifySubmission = nil, noRepro = nil, memberID = nil, demographics = nil, emailAddress = nil, dateJoined = nil, isListAdmin = nil, receiveAcknowlegment = nil, dateBounce = nil, dateHeld = nil, memberStatus = nil, fullName = nil, canApprovePending = nil, cleanAuto = nil, listName = nil, dateUnsubscribed = nil)
223
+ @additional = additional
224
+ @membershipKind = membershipKind
225
+ @approvalNeeded = approvalNeeded
226
+ @password = password
227
+ @notifyError = notifyError
228
+ @expireDate = expireDate
229
+ @comment = comment
230
+ @userID = userID
231
+ @readsHtml = readsHtml
232
+ @receiveAdminEmail = receiveAdminEmail
233
+ @mailFormat = mailFormat
234
+ @dateConfirm = dateConfirm
235
+ @numberOfBounces = numberOfBounces
236
+ @numApprovalsNeeded = numApprovalsNeeded
237
+ @notifySubmission = notifySubmission
238
+ @noRepro = noRepro
239
+ @memberID = memberID
240
+ @demographics = demographics
241
+ @emailAddress = emailAddress
242
+ @dateJoined = dateJoined
243
+ @isListAdmin = isListAdmin
244
+ @receiveAcknowlegment = receiveAcknowlegment
245
+ @dateBounce = dateBounce
246
+ @dateHeld = dateHeld
247
+ @memberStatus = memberStatus
248
+ @fullName = fullName
249
+ @canApprovePending = canApprovePending
250
+ @cleanAuto = cleanAuto
251
+ @listName = listName
252
+ @dateUnsubscribed = dateUnsubscribed
253
+ end
254
+ end
255
+
256
+ # {http://tempuri.org/ns1.xsd}CharSetStruct
257
+ # description - SOAP::SOAPString
258
+ # name - SOAP::SOAPString
259
+ # charSetID - SOAP::SOAPInt
260
+ class CharSetStruct
261
+ attr_accessor :description
262
+ attr_accessor :name
263
+ attr_accessor :charSetID
264
+
265
+ def initialize(description = nil, name = nil, charSetID = nil)
266
+ @description = description
267
+ @name = name
268
+ @charSetID = charSetID
269
+ end
270
+ end
271
+
272
+ # {http://tempuri.org/ns1.xsd}TinyMemberStruct
273
+ # fullName - SOAP::SOAPString
274
+ # emailAddress - SOAP::SOAPString
275
+ class TinyMemberStruct
276
+ attr_accessor :fullName
277
+ attr_accessor :emailAddress
278
+
279
+ def initialize(fullName = nil, emailAddress = nil)
280
+ @fullName = fullName
281
+ @emailAddress = emailAddress
282
+ end
283
+ end
284
+
285
+ # {http://tempuri.org/ns1.xsd}MailingStruct
286
+ # enableRecency - SOAP::SOAPBoolean
287
+ # isHtmlSectionEncoded - SOAP::SOAPBoolean
288
+ # subject - SOAP::SOAPString
289
+ # campaign - SOAP::SOAPString
290
+ # htmlSectionEncoding - SOAP::SOAPInt
291
+ # htmlMessage - SOAP::SOAPString
292
+ # to - SOAP::SOAPString
293
+ # recencyWhich - RecencyWhichEnum
294
+ # resendAfterDays - SOAP::SOAPInt
295
+ # sampleSize - SOAP::SOAPInt
296
+ # charSetID - SOAP::SOAPInt
297
+ # replyTo - SOAP::SOAPString
298
+ # isTextSectionEncoded - SOAP::SOAPBoolean
299
+ # textSectionEncoding - SOAP::SOAPInt
300
+ # title - SOAP::SOAPString
301
+ # textMessage - SOAP::SOAPString
302
+ # trackOpens - SOAP::SOAPBoolean
303
+ # recencyNumberOfMailings - SOAP::SOAPInt
304
+ # recencyDays - SOAP::SOAPInt
305
+ # bypassModeration - SOAP::SOAPBoolean
306
+ # attachments - SOAP::SOAPString
307
+ # dontAttemptAfterDate - SOAP::SOAPDateTime
308
+ # rewriteDateWhenSent - SOAP::SOAPBoolean
309
+ # from - SOAP::SOAPString
310
+ # additionalHeaders - SOAP::SOAPString
311
+ # listName - SOAP::SOAPString
312
+ # detectHtml - SOAP::SOAPBoolean
313
+ class MailingStruct
314
+
315
+ attr_accessor :enableRecency
316
+ attr_accessor :isHtmlSectionEncoded
317
+ attr_accessor :subject
318
+ attr_accessor :campaign
319
+ attr_accessor :htmlSectionEncoding
320
+ attr_accessor :htmlMessage
321
+ attr_accessor :to
322
+ attr_accessor :recencyWhich
323
+ attr_accessor :resendAfterDays
324
+ attr_accessor :sampleSize
325
+ attr_accessor :charSetID
326
+ attr_accessor :replyTo
327
+ attr_accessor :isTextSectionEncoded
328
+ attr_accessor :textSectionEncoding
329
+ attr_accessor :title
330
+ attr_accessor :textMessage
331
+ attr_accessor :trackOpens
332
+ attr_accessor :recencyNumberOfMailings
333
+ attr_accessor :recencyDays
334
+ attr_accessor :bypassModeration
335
+ attr_accessor :attachments
336
+ attr_accessor :dontAttemptAfterDate
337
+ attr_accessor :rewriteDateWhenSent
338
+ attr_accessor :from
339
+ attr_accessor :additionalHeaders
340
+ attr_accessor :listName
341
+ attr_accessor :detectHtml
342
+
343
+ DEFAULT_ATTRIBUTES = {:enableRecency => nil,
344
+ :isHtmlSectionEncoded => nil,
345
+ :subject => nil,
346
+ :campaign => nil,
347
+ :htmlSectionEncoding => nil,
348
+ :htmlMessage => nil,
349
+ :to => nil,
350
+ :recencyWhich => nil,
351
+ :resendAfterDays => nil,
352
+ :sampleSize => nil,
353
+ :charSetID => nil,
354
+ :replyTo => nil,
355
+ :isTextSectionEncoded => nil,
356
+ :textSectionEncoding => nil,
357
+ :title => nil,
358
+ :textMessage => nil,
359
+ :trackOpens => nil,
360
+ :recencyNumberOfMailings => nil,
361
+ :recencyDays => nil,
362
+ :bypassModeration => nil,
363
+ :attachments => nil,
364
+ :dontAttemptAfterDate => nil,
365
+ :rewriteDateWhenSent => nil,
366
+ :from => nil,
367
+ :additionalHeaders => nil,
368
+ :listName => nil,
369
+ :detectHtml => nil}
370
+
371
+ def initialize(attributes={})
372
+ @enableRecency = attributes[:enableRecency]
373
+ @isHtmlSectionEncoded = attributes[:isHtmlSectionEncoded]
374
+ @subject = attributes[:subject]
375
+ @campaign = attributes[:campaign]
376
+ @htmlSectionEncoding = attributes[:htmlSectionEncoding]
377
+ @htmlMessage = attributes[:htmlMessage]
378
+ @to = attributes[:to]
379
+ @recencyWhich = attributes[:recencyWhich]
380
+ @resendAfterDays = attributes[:resendAfterDays]
381
+ @sampleSize = attributes[:sampleSize]
382
+ @charSetID = attributes[:charSetID]
383
+ @replyTo = attributes[:replyTo]
384
+ @isTextSectionEncoded = attributes[:isTextSectionEncoded]
385
+ @textSectionEncoding = attributes[:textSectionEncoding]
386
+ @title = attributes[:title]
387
+ @textMessage = attributes[:textMessage]
388
+ @trackOpens = attributes[:trackOpens]
389
+ @recencyNumberOfMailings = attributes[:recencyNumberOfMailings]
390
+ @recencyDays = attributes[:recencyDays]
391
+ @bypassModeration = attributes[:bypassModeration]
392
+ @attachments = attributes[:attachments]
393
+ @dontAttemptAfterDate = attributes[:dontAttemptAfterDate]
394
+ @rewriteDateWhenSent = attributes[:rewriteDateWhenSent]
395
+ @from = attributes[:from]
396
+ @additionalHeaders = attributes[:additionalHeaders]
397
+ @listName = attributes[:listName]
398
+ @detectHtml = attributes[:detectHtml]
399
+ end
400
+ end
401
+
402
+ # {http://tempuri.org/ns1.xsd}SegmentStruct
403
+ # segmentID - SOAP::SOAPInt
404
+ # segmentName - SOAP::SOAPString
405
+ # description - SOAP::SOAPString
406
+ # segmentType - SegmentTypeEnum
407
+ # listName - SOAP::SOAPString
408
+ # numTestRecords - SOAP::SOAPInt
409
+ # clauseAdd - SOAP::SOAPString
410
+ # clauseWhere - SOAP::SOAPString
411
+ # clauseAfterSelect - SOAP::SOAPString
412
+ # clauseFrom - SOAP::SOAPString
413
+ # clauseOrderBy - SOAP::SOAPString
414
+ # clauseSelect - SOAP::SOAPString
415
+ # addWhereList - SOAP::SOAPBoolean
416
+ # addWhereMemberType - SOAP::SOAPBoolean
417
+ # addWhereSubType - SOAP::SOAPBoolean
418
+ class SegmentStruct
419
+ attr_accessor :segmentID
420
+ attr_accessor :segmentName
421
+ attr_accessor :description
422
+ attr_accessor :segmentType
423
+ attr_accessor :listName
424
+ attr_accessor :numTestRecords
425
+ attr_accessor :clauseAdd
426
+ attr_accessor :clauseWhere
427
+ attr_accessor :clauseAfterSelect
428
+ attr_accessor :clauseFrom
429
+ attr_accessor :clauseOrderBy
430
+ attr_accessor :clauseSelect
431
+ attr_accessor :addWhereList
432
+ attr_accessor :addWhereMemberType
433
+ attr_accessor :addWhereSubType
434
+
435
+ def initialize(segmentID = nil, segmentName = nil, description = nil, segmentType = nil, listName = nil, numTestRecords = nil, clauseAdd = nil, clauseWhere = nil, clauseAfterSelect = nil, clauseFrom = nil, clauseOrderBy = nil, clauseSelect = nil, addWhereList = nil, addWhereMemberType = nil, addWhereSubType = nil)
436
+ @segmentID = segmentID
437
+ @segmentName = segmentName
438
+ @description = description
439
+ @segmentType = segmentType
440
+ @listName = listName
441
+ @numTestRecords = numTestRecords
442
+ @clauseAdd = clauseAdd
443
+ @clauseWhere = clauseWhere
444
+ @clauseAfterSelect = clauseAfterSelect
445
+ @clauseFrom = clauseFrom
446
+ @clauseOrderBy = clauseOrderBy
447
+ @clauseSelect = clauseSelect
448
+ @addWhereList = addWhereList
449
+ @addWhereMemberType = addWhereMemberType
450
+ @addWhereSubType = addWhereSubType
451
+ end
452
+ end
453
+
454
+ # {http://tempuri.org/ns1.xsd}TrackingSummaryStruct
455
+ # transientFailure - SOAP::SOAPInt
456
+ # success - SOAP::SOAPInt
457
+ # expired - SOAP::SOAPInt
458
+ # paused - SOAP::SOAPInt
459
+ # mailMergeSkipped - SOAP::SOAPInt
460
+ # active - SOAP::SOAPInt
461
+ # opens - SOAP::SOAPInt
462
+ # created - SOAP::SOAPDateTime
463
+ # notAttempted - SOAP::SOAPInt
464
+ # clickthroughs - SOAP::SOAPInt
465
+ # title - SOAP::SOAPString
466
+ # totalRecipients - SOAP::SOAPInt
467
+ # permanentFailure - SOAP::SOAPInt
468
+ # totalUndelivered - SOAP::SOAPInt
469
+ # mailMergeAbort - SOAP::SOAPInt
470
+ # uniqueOpens - SOAP::SOAPInt
471
+ # clickstreams - SOAP::SOAPInt
472
+ # pending - SOAP::SOAPInt
473
+ # urls - ArrayOfUrlTrackingStruct
474
+ # mailingID - SOAP::SOAPInt
475
+ # m_retry - SOAP::SOAPInt
476
+ class TrackingSummaryStruct
477
+ attr_accessor :transientFailure
478
+ attr_accessor :success
479
+ attr_accessor :expired
480
+ attr_accessor :paused
481
+ attr_accessor :mailMergeSkipped
482
+ attr_accessor :active
483
+ attr_accessor :opens
484
+ attr_accessor :created
485
+ attr_accessor :notAttempted
486
+ attr_accessor :clickthroughs
487
+ attr_accessor :title
488
+ attr_accessor :totalRecipients
489
+ attr_accessor :permanentFailure
490
+ attr_accessor :totalUndelivered
491
+ attr_accessor :mailMergeAbort
492
+ attr_accessor :uniqueOpens
493
+ attr_accessor :clickstreams
494
+ attr_accessor :pending
495
+ attr_accessor :urls
496
+ attr_accessor :mailingID
497
+
498
+ def m_retry
499
+ @v_retry
500
+ end
501
+
502
+ def m_retry=(value)
503
+ @v_retry = value
504
+ end
505
+
506
+ def initialize(transientFailure = nil, success = nil, expired = nil, paused = nil, mailMergeSkipped = nil, active = nil, opens = nil, created = nil, notAttempted = nil, clickthroughs = nil, title = nil, totalRecipients = nil, permanentFailure = nil, totalUndelivered = nil, mailMergeAbort = nil, uniqueOpens = nil, clickstreams = nil, pending = nil, urls = nil, mailingID = nil, v_retry = nil)
507
+ @transientFailure = transientFailure
508
+ @success = success
509
+ @expired = expired
510
+ @paused = paused
511
+ @mailMergeSkipped = mailMergeSkipped
512
+ @active = active
513
+ @opens = opens
514
+ @created = created
515
+ @notAttempted = notAttempted
516
+ @clickthroughs = clickthroughs
517
+ @title = title
518
+ @totalRecipients = totalRecipients
519
+ @permanentFailure = permanentFailure
520
+ @totalUndelivered = totalUndelivered
521
+ @mailMergeAbort = mailMergeAbort
522
+ @uniqueOpens = uniqueOpens
523
+ @clickstreams = clickstreams
524
+ @pending = pending
525
+ @urls = urls
526
+ @mailingID = mailingID
527
+ @v_retry = v_retry
528
+ end
529
+ end
530
+
531
+ # {http://tempuri.org/ns1.xsd}SimpleMemberStruct
532
+ # listName - SOAP::SOAPString
533
+ # memberID - SOAP::SOAPInt
534
+ # emailAddress - SOAP::SOAPString
535
+ class SimpleMemberStruct
536
+ attr_accessor :listName
537
+ attr_accessor :memberID
538
+ attr_accessor :emailAddress
539
+
540
+ def initialize(listName = nil, memberID = nil, emailAddress = nil)
541
+ @listName = listName
542
+ @memberID = memberID
543
+ @emailAddress = emailAddress
544
+ end
545
+ end
546
+
547
+ # {http://tempuri.org/ns1.xsd}KeyValueType
548
+ # value - SOAP::SOAPString
549
+ # name - SOAP::SOAPString
550
+ class KeyValueType
551
+ attr_accessor :value
552
+ attr_accessor :name
553
+
554
+ def initialize(value = nil, name = nil)
555
+ @value = value
556
+ @name = name
557
+ end
558
+ end
559
+
560
+ # {http://tempuri.org/ns1.xsd}ListStruct
561
+ # sMTPHeaders - SOAP::SOAPString
562
+ # errHold - SOAP::SOAPInt
563
+ # admin - SOAP::SOAPString
564
+ # maxMembers - SOAP::SOAPInt
565
+ # referralsPerDay - SOAP::SOAPInt
566
+ # detectOpenByDefault - SOAP::SOAPBoolean
567
+ # subscribePassword - SOAP::SOAPString
568
+ # messageHeader - SOAP::SOAPString
569
+ # tclMergeInit - SOAP::SOAPString
570
+ # replyTo - SOAP::SOAPString
571
+ # modifyHeaderDate - SOAP::SOAPBoolean
572
+ # sponsOrgID - SOAP::SOAPString
573
+ # defaultTo - SOAP::SOAPString
574
+ # runProgAfterSub - SOAP::SOAPString
575
+ # noListHeader - SOAP::SOAPBoolean
576
+ # archiveNum - SOAP::SOAPInt
577
+ # confirmSubscribes - SOAP::SOAPBoolean
578
+ # allowInfo - SOAP::SOAPBoolean
579
+ # simpleSub - SOAP::SOAPBoolean
580
+ # memberListSecurity - MemberListSecurityEnum
581
+ # runProgAfterUnsub - SOAP::SOAPString
582
+ # runProgBeforePosting - SOAP::SOAPString
583
+ # passwordRequired - PasswordRequiredEnum
584
+ # onlyAllowAdminSend - SOAP::SOAPBoolean
585
+ # noEmail - SOAP::SOAPBoolean
586
+ # approveNum - SOAP::SOAPInt
587
+ # recencySequentialEnabled - SOAP::SOAPBoolean
588
+ # headerRemove - SOAP::SOAPString
589
+ # recencyTriggeredEnabled - SOAP::SOAPBoolean
590
+ # purgeExpiredInterval - SOAP::SOAPInt
591
+ # runProgBeforeSub - SOAP::SOAPString
592
+ # nameRequired - NameRequiredEnum
593
+ # descLongDocID - SOAP::SOAPString
594
+ # comment - SOAP::SOAPString
595
+ # commentsID - SOAP::SOAPString
596
+ # purgeHeldInterval - SOAP::SOAPInt
597
+ # purgeUnsubInterval - SOAP::SOAPInt
598
+ # dateCreated - SOAP::SOAPDateTime
599
+ # autoReleaseHour - SOAP::SOAPInt
600
+ # disabled - SOAP::SOAPBoolean
601
+ # digestHeader - SOAP::SOAPString
602
+ # recencyWebEnabled - SOAP::SOAPBoolean
603
+ # dontRewriteMessageIDHeader - SOAP::SOAPBoolean
604
+ # addHeadersAndFooters - AddHeadersAndFootersEnum
605
+ # visitors - SOAP::SOAPBoolean
606
+ # noSearch - SOAP::SOAPBoolean
607
+ # subscriptionReports - ArrayOfstring
608
+ # noNNTP - SOAP::SOAPBoolean
609
+ # maxMessageSize - SOAP::SOAPInt
610
+ # purgeReferredInterval - SOAP::SOAPInt
611
+ # makePostsAnonymous - SOAP::SOAPBoolean
612
+ # keywords - SOAP::SOAPString
613
+ # additional - SOAP::SOAPString
614
+ # addListNameToSubject - SOAP::SOAPBoolean
615
+ # recipientLoggingLevel - LoggingLevelEnum
616
+ # enableScripting - EnableScriptingEnum
617
+ # to - SOAP::SOAPString
618
+ # topic - SOAP::SOAPString
619
+ # runProgAfterPosting - SOAP::SOAPString
620
+ # cleanNotif - SOAP::SOAPInt
621
+ # deliveryReports - ArrayOfstring
622
+ # recencyMailCount - SOAP::SOAPInt
623
+ # runProgBeforeUnsub - SOAP::SOAPString
624
+ # moderated - ModeratedEnum
625
+ # allowCrossPosting - SOAP::SOAPBoolean
626
+ # maxPostsPerUser - SOAP::SOAPInt
627
+ # confirmUnsubscribes - ConfirmUnsubEnum
628
+ # noArchive - SOAP::SOAPBoolean
629
+ # recencyDayCount - SOAP::SOAPInt
630
+ # purgeUnconfirmedInterval - SOAP::SOAPInt
631
+ # removeDuplicateCrossPostings - SOAP::SOAPBoolean
632
+ # archiveDays - SOAP::SOAPInt
633
+ # notifyHeldInterval - SOAP::SOAPInt
634
+ # trackAllUrls - SOAP::SOAPBoolean
635
+ # purgeUnapprovedInterval - SOAP::SOAPInt
636
+ # messageFooter - SOAP::SOAPString
637
+ # recencyOperator - RecencyOperatorEnum
638
+ # listName - SOAP::SOAPString
639
+ # maxQuoting - SOAP::SOAPInt
640
+ # defaultSubject - SOAP::SOAPString
641
+ # releasePending - SOAP::SOAPInt
642
+ # keepOutmailPostings - SOAP::SOAPInt
643
+ # privApprov - SOAP::SOAPString
644
+ # postPassword - PostPasswordEnum
645
+ # defaultFrom - SOAP::SOAPString
646
+ # anyoneCanPost - SOAP::SOAPBoolean
647
+ # scriptingLevel - ScriptingLevelEnum
648
+ # child - SOAP::SOAPBoolean
649
+ # shortDescription - SOAP::SOAPString
650
+ # noEmailSubscriptions - SOAP::SOAPBoolean
651
+ # detectHtmlByDefault - SOAP::SOAPBoolean
652
+ # sMTPFrom - SOAP::SOAPString
653
+ # mriVisibility - MriVisibilityEnum
654
+ # listID - SOAP::SOAPInt
655
+ # blankSubjectOk - SOAP::SOAPBoolean
656
+ # allowDuplicatePosts - SOAP::SOAPBoolean
657
+ # recencyEmailEnabled - SOAP::SOAPBoolean
658
+ # mergeCapOverride - ScriptingLevelEnum
659
+ # cleanAuto - SOAP::SOAPBoolean
660
+ # from - SOAP::SOAPString
661
+ # noBodyOk - SOAP::SOAPBoolean
662
+ # newSubscriberSecurity - NewSubscriberPolicyEnum
663
+ # maxMessNum - SOAP::SOAPInt
664
+ # digestFooter - SOAP::SOAPString
665
+ class ListStruct
666
+ attr_accessor :sMTPHeaders
667
+ attr_accessor :errHold
668
+ attr_accessor :admin
669
+ attr_accessor :maxMembers
670
+ attr_accessor :referralsPerDay
671
+ attr_accessor :detectOpenByDefault
672
+ attr_accessor :subscribePassword
673
+ attr_accessor :messageHeader
674
+ attr_accessor :tclMergeInit
675
+ attr_accessor :replyTo
676
+ attr_accessor :modifyHeaderDate
677
+ attr_accessor :sponsOrgID
678
+ attr_accessor :defaultTo
679
+ attr_accessor :runProgAfterSub
680
+ attr_accessor :noListHeader
681
+ attr_accessor :archiveNum
682
+ attr_accessor :confirmSubscribes
683
+ attr_accessor :allowInfo
684
+ attr_accessor :simpleSub
685
+ attr_accessor :memberListSecurity
686
+ attr_accessor :runProgAfterUnsub
687
+ attr_accessor :runProgBeforePosting
688
+ attr_accessor :passwordRequired
689
+ attr_accessor :onlyAllowAdminSend
690
+ attr_accessor :noEmail
691
+ attr_accessor :approveNum
692
+ attr_accessor :recencySequentialEnabled
693
+ attr_accessor :headerRemove
694
+ attr_accessor :recencyTriggeredEnabled
695
+ attr_accessor :purgeExpiredInterval
696
+ attr_accessor :runProgBeforeSub
697
+ attr_accessor :nameRequired
698
+ attr_accessor :descLongDocID
699
+ attr_accessor :comment
700
+ attr_accessor :commentsID
701
+ attr_accessor :purgeHeldInterval
702
+ attr_accessor :purgeUnsubInterval
703
+ attr_accessor :dateCreated
704
+ attr_accessor :autoReleaseHour
705
+ attr_accessor :disabled
706
+ attr_accessor :digestHeader
707
+ attr_accessor :recencyWebEnabled
708
+ attr_accessor :dontRewriteMessageIDHeader
709
+ attr_accessor :addHeadersAndFooters
710
+ attr_accessor :visitors
711
+ attr_accessor :noSearch
712
+ attr_accessor :subscriptionReports
713
+ attr_accessor :noNNTP
714
+ attr_accessor :maxMessageSize
715
+ attr_accessor :purgeReferredInterval
716
+ attr_accessor :makePostsAnonymous
717
+ attr_accessor :keywords
718
+ attr_accessor :additional
719
+ attr_accessor :addListNameToSubject
720
+ attr_accessor :recipientLoggingLevel
721
+ attr_accessor :enableScripting
722
+ attr_accessor :to
723
+ attr_accessor :topic
724
+ attr_accessor :runProgAfterPosting
725
+ attr_accessor :cleanNotif
726
+ attr_accessor :deliveryReports
727
+ attr_accessor :recencyMailCount
728
+ attr_accessor :runProgBeforeUnsub
729
+ attr_accessor :moderated
730
+ attr_accessor :allowCrossPosting
731
+ attr_accessor :maxPostsPerUser
732
+ attr_accessor :confirmUnsubscribes
733
+ attr_accessor :noArchive
734
+ attr_accessor :recencyDayCount
735
+ attr_accessor :purgeUnconfirmedInterval
736
+ attr_accessor :removeDuplicateCrossPostings
737
+ attr_accessor :archiveDays
738
+ attr_accessor :notifyHeldInterval
739
+ attr_accessor :trackAllUrls
740
+ attr_accessor :purgeUnapprovedInterval
741
+ attr_accessor :messageFooter
742
+ attr_accessor :recencyOperator
743
+ attr_accessor :listName
744
+ attr_accessor :maxQuoting
745
+ attr_accessor :defaultSubject
746
+ attr_accessor :releasePending
747
+ attr_accessor :keepOutmailPostings
748
+ attr_accessor :privApprov
749
+ attr_accessor :postPassword
750
+ attr_accessor :defaultFrom
751
+ attr_accessor :anyoneCanPost
752
+ attr_accessor :scriptingLevel
753
+ attr_accessor :child
754
+ attr_accessor :shortDescription
755
+ attr_accessor :noEmailSubscriptions
756
+ attr_accessor :detectHtmlByDefault
757
+ attr_accessor :sMTPFrom
758
+ attr_accessor :mriVisibility
759
+ attr_accessor :listID
760
+ attr_accessor :blankSubjectOk
761
+ attr_accessor :allowDuplicatePosts
762
+ attr_accessor :recencyEmailEnabled
763
+ attr_accessor :mergeCapOverride
764
+ attr_accessor :cleanAuto
765
+ attr_accessor :from
766
+ attr_accessor :noBodyOk
767
+ attr_accessor :newSubscriberSecurity
768
+ attr_accessor :maxMessNum
769
+ attr_accessor :digestFooter
770
+
771
+ def initialize(sMTPHeaders = nil, errHold = nil, admin = nil, maxMembers = nil, referralsPerDay = nil, detectOpenByDefault = nil, subscribePassword = nil, messageHeader = nil, tclMergeInit = nil, replyTo = nil, modifyHeaderDate = nil, sponsOrgID = nil, defaultTo = nil, runProgAfterSub = nil, noListHeader = nil, archiveNum = nil, confirmSubscribes = nil, allowInfo = nil, simpleSub = nil, memberListSecurity = nil, runProgAfterUnsub = nil, runProgBeforePosting = nil, passwordRequired = nil, onlyAllowAdminSend = nil, noEmail = nil, approveNum = nil, recencySequentialEnabled = nil, headerRemove = nil, recencyTriggeredEnabled = nil, purgeExpiredInterval = nil, runProgBeforeSub = nil, nameRequired = nil, descLongDocID = nil, comment = nil, commentsID = nil, purgeHeldInterval = nil, purgeUnsubInterval = nil, dateCreated = nil, autoReleaseHour = nil, disabled = nil, digestHeader = nil, recencyWebEnabled = nil, dontRewriteMessageIDHeader = nil, addHeadersAndFooters = nil, visitors = nil, noSearch = nil, subscriptionReports = nil, noNNTP = nil, maxMessageSize = nil, purgeReferredInterval = nil, makePostsAnonymous = nil, keywords = nil, additional = nil, addListNameToSubject = nil, recipientLoggingLevel = nil, enableScripting = nil, to = nil, topic = nil, runProgAfterPosting = nil, cleanNotif = nil, deliveryReports = nil, recencyMailCount = nil, runProgBeforeUnsub = nil, moderated = nil, allowCrossPosting = nil, maxPostsPerUser = nil, confirmUnsubscribes = nil, noArchive = nil, recencyDayCount = nil, purgeUnconfirmedInterval = nil, removeDuplicateCrossPostings = nil, archiveDays = nil, notifyHeldInterval = nil, trackAllUrls = nil, purgeUnapprovedInterval = nil, messageFooter = nil, recencyOperator = nil, listName = nil, maxQuoting = nil, defaultSubject = nil, releasePending = nil, keepOutmailPostings = nil, privApprov = nil, postPassword = nil, defaultFrom = nil, anyoneCanPost = nil, scriptingLevel = nil, child = nil, shortDescription = nil, noEmailSubscriptions = nil, detectHtmlByDefault = nil, sMTPFrom = nil, mriVisibility = nil, listID = nil, blankSubjectOk = nil, allowDuplicatePosts = nil, recencyEmailEnabled = nil, mergeCapOverride = nil, cleanAuto = nil, from = nil, noBodyOk = nil, newSubscriberSecurity = nil, maxMessNum = nil, digestFooter = nil)
772
+ @sMTPHeaders = sMTPHeaders
773
+ @errHold = errHold
774
+ @admin = admin
775
+ @maxMembers = maxMembers
776
+ @referralsPerDay = referralsPerDay
777
+ @detectOpenByDefault = detectOpenByDefault
778
+ @subscribePassword = subscribePassword
779
+ @messageHeader = messageHeader
780
+ @tclMergeInit = tclMergeInit
781
+ @replyTo = replyTo
782
+ @modifyHeaderDate = modifyHeaderDate
783
+ @sponsOrgID = sponsOrgID
784
+ @defaultTo = defaultTo
785
+ @runProgAfterSub = runProgAfterSub
786
+ @noListHeader = noListHeader
787
+ @archiveNum = archiveNum
788
+ @confirmSubscribes = confirmSubscribes
789
+ @allowInfo = allowInfo
790
+ @simpleSub = simpleSub
791
+ @memberListSecurity = memberListSecurity
792
+ @runProgAfterUnsub = runProgAfterUnsub
793
+ @runProgBeforePosting = runProgBeforePosting
794
+ @passwordRequired = passwordRequired
795
+ @onlyAllowAdminSend = onlyAllowAdminSend
796
+ @noEmail = noEmail
797
+ @approveNum = approveNum
798
+ @recencySequentialEnabled = recencySequentialEnabled
799
+ @headerRemove = headerRemove
800
+ @recencyTriggeredEnabled = recencyTriggeredEnabled
801
+ @purgeExpiredInterval = purgeExpiredInterval
802
+ @runProgBeforeSub = runProgBeforeSub
803
+ @nameRequired = nameRequired
804
+ @descLongDocID = descLongDocID
805
+ @comment = comment
806
+ @commentsID = commentsID
807
+ @purgeHeldInterval = purgeHeldInterval
808
+ @purgeUnsubInterval = purgeUnsubInterval
809
+ @dateCreated = dateCreated
810
+ @autoReleaseHour = autoReleaseHour
811
+ @disabled = disabled
812
+ @digestHeader = digestHeader
813
+ @recencyWebEnabled = recencyWebEnabled
814
+ @dontRewriteMessageIDHeader = dontRewriteMessageIDHeader
815
+ @addHeadersAndFooters = addHeadersAndFooters
816
+ @visitors = visitors
817
+ @noSearch = noSearch
818
+ @subscriptionReports = subscriptionReports
819
+ @noNNTP = noNNTP
820
+ @maxMessageSize = maxMessageSize
821
+ @purgeReferredInterval = purgeReferredInterval
822
+ @makePostsAnonymous = makePostsAnonymous
823
+ @keywords = keywords
824
+ @additional = additional
825
+ @addListNameToSubject = addListNameToSubject
826
+ @recipientLoggingLevel = recipientLoggingLevel
827
+ @enableScripting = enableScripting
828
+ @to = to
829
+ @topic = topic
830
+ @runProgAfterPosting = runProgAfterPosting
831
+ @cleanNotif = cleanNotif
832
+ @deliveryReports = deliveryReports
833
+ @recencyMailCount = recencyMailCount
834
+ @runProgBeforeUnsub = runProgBeforeUnsub
835
+ @moderated = moderated
836
+ @allowCrossPosting = allowCrossPosting
837
+ @maxPostsPerUser = maxPostsPerUser
838
+ @confirmUnsubscribes = confirmUnsubscribes
839
+ @noArchive = noArchive
840
+ @recencyDayCount = recencyDayCount
841
+ @purgeUnconfirmedInterval = purgeUnconfirmedInterval
842
+ @removeDuplicateCrossPostings = removeDuplicateCrossPostings
843
+ @archiveDays = archiveDays
844
+ @notifyHeldInterval = notifyHeldInterval
845
+ @trackAllUrls = trackAllUrls
846
+ @purgeUnapprovedInterval = purgeUnapprovedInterval
847
+ @messageFooter = messageFooter
848
+ @recencyOperator = recencyOperator
849
+ @listName = listName
850
+ @maxQuoting = maxQuoting
851
+ @defaultSubject = defaultSubject
852
+ @releasePending = releasePending
853
+ @keepOutmailPostings = keepOutmailPostings
854
+ @privApprov = privApprov
855
+ @postPassword = postPassword
856
+ @defaultFrom = defaultFrom
857
+ @anyoneCanPost = anyoneCanPost
858
+ @scriptingLevel = scriptingLevel
859
+ @child = child
860
+ @shortDescription = shortDescription
861
+ @noEmailSubscriptions = noEmailSubscriptions
862
+ @detectHtmlByDefault = detectHtmlByDefault
863
+ @sMTPFrom = sMTPFrom
864
+ @mriVisibility = mriVisibility
865
+ @listID = listID
866
+ @blankSubjectOk = blankSubjectOk
867
+ @allowDuplicatePosts = allowDuplicatePosts
868
+ @recencyEmailEnabled = recencyEmailEnabled
869
+ @mergeCapOverride = mergeCapOverride
870
+ @cleanAuto = cleanAuto
871
+ @from = from
872
+ @noBodyOk = noBodyOk
873
+ @newSubscriberSecurity = newSubscriberSecurity
874
+ @maxMessNum = maxMessNum
875
+ @digestFooter = digestFooter
876
+ end
877
+ end
878
+
879
+ # {http://tempuri.org/ns1.xsd}MemberBanStruct
880
+ # domain - SOAP::SOAPString
881
+ # userName - SOAP::SOAPString
882
+ # listName - SOAP::SOAPString
883
+ # siteName - SOAP::SOAPString
884
+ # banLogic - BanLogicEnum
885
+ class MemberBanStruct
886
+ attr_accessor :domain
887
+ attr_accessor :userName
888
+ attr_accessor :listName
889
+ attr_accessor :siteName
890
+ attr_accessor :banLogic
891
+
892
+ def initialize(domain = nil, userName = nil, listName = nil, siteName = nil, banLogic = nil)
893
+ @domain = domain
894
+ @userName = userName
895
+ @listName = listName
896
+ @siteName = siteName
897
+ @banLogic = banLogic
898
+ end
899
+ end
900
+
901
+ # {http://tempuri.org/ns1.xsd}TopicStruct
902
+ # topicName - SOAP::SOAPString
903
+ # topicDescription - SOAP::SOAPString
904
+ # siteName - SOAP::SOAPString
905
+ # hiddenTopic - SOAP::SOAPBoolean
906
+ class TopicStruct
907
+ attr_accessor :topicName
908
+ attr_accessor :topicDescription
909
+ attr_accessor :siteName
910
+ attr_accessor :hiddenTopic
911
+
912
+ def initialize(topicName = nil, topicDescription = nil, siteName = nil, hiddenTopic = nil)
913
+ @topicName = topicName
914
+ @topicDescription = topicDescription
915
+ @siteName = siteName
916
+ @hiddenTopic = hiddenTopic
917
+ end
918
+ end
919
+
920
+ # {http://tempuri.org/ns1.xsd}SiteStruct
921
+ # siteID - SOAP::SOAPInt
922
+ # siteName - SOAP::SOAPString
923
+ # siteDescription - SOAP::SOAPString
924
+ # hostName - SOAP::SOAPString
925
+ # webInterfaceURL - SOAP::SOAPString
926
+ class SiteStruct
927
+ attr_accessor :siteID
928
+ attr_accessor :siteName
929
+ attr_accessor :siteDescription
930
+ attr_accessor :hostName
931
+ attr_accessor :webInterfaceURL
932
+
933
+ def initialize(siteID = nil, siteName = nil, siteDescription = nil, hostName = nil, webInterfaceURL = nil)
934
+ @siteID = siteID
935
+ @siteName = siteName
936
+ @siteDescription = siteDescription
937
+ @hostName = hostName
938
+ @webInterfaceURL = webInterfaceURL
939
+ end
940
+ end
941
+
942
+ # {http://tempuri.org/ns1.xsd}PreviewStruct
943
+ # textToMerge - SOAP::SOAPString
944
+ # memberID - SOAP::SOAPInt
945
+ # subsetID - SOAP::SOAPInt
946
+ class PreviewStruct
947
+ attr_accessor :textToMerge
948
+ attr_accessor :memberID
949
+ attr_accessor :subsetID
950
+
951
+ def initialize(textToMerge = nil, memberID = nil, subsetID = nil)
952
+ @textToMerge = textToMerge
953
+ @memberID = memberID
954
+ @subsetID = subsetID
955
+ end
956
+ end
957
+
958
+ # {http://tempuri.org/ns1.xsd}ServerAdminStruct
959
+ # adminID - SOAP::SOAPInt
960
+ # name - SOAP::SOAPString
961
+ # emailAddress - SOAP::SOAPString
962
+ # password - SOAP::SOAPString
963
+ class ServerAdminStruct
964
+ attr_accessor :adminID
965
+ attr_accessor :name
966
+ attr_accessor :emailAddress
967
+ attr_accessor :password
968
+
969
+ def initialize(adminID = nil, name = nil, emailAddress = nil, password = nil)
970
+ @adminID = adminID
971
+ @name = name
972
+ @emailAddress = emailAddress
973
+ @password = password
974
+ end
975
+ end
976
+
977
+ # {http://tempuri.org/ns1.xsd}SiteAdminStruct
978
+ # adminID - SOAP::SOAPInt
979
+ # name - SOAP::SOAPString
980
+ # emailAddress - SOAP::SOAPString
981
+ # password - SOAP::SOAPString
982
+ # whatSites - ArrayOfstring
983
+ class SiteAdminStruct
984
+ attr_accessor :adminID
985
+ attr_accessor :name
986
+ attr_accessor :emailAddress
987
+ attr_accessor :password
988
+ attr_accessor :whatSites
989
+
990
+ def initialize(adminID = nil, name = nil, emailAddress = nil, password = nil, whatSites = nil)
991
+ @adminID = adminID
992
+ @name = name
993
+ @emailAddress = emailAddress
994
+ @password = password
995
+ @whatSites = whatSites
996
+ end
997
+ end
998
+
999
+ # {http://www.lyris.com/lmapi}ArrayOfDocPart
1000
+ class ArrayOfDocPart < ::Array
1001
+ end
1002
+
1003
+ # {http://www.lyris.com/lmapi}ArrayOfSimpleMemberStruct
1004
+ class ArrayOfSimpleMemberStruct < ::Array
1005
+ end
1006
+
1007
+ # {http://www.lyris.com/lmapi}ArrayOfCharSetStruct
1008
+ class ArrayOfCharSetStruct < ::Array
1009
+ end
1010
+
1011
+ # {http://www.lyris.com/lmapi}ArrayOfKeyValueType
1012
+ class ArrayOfKeyValueType < ::Array
1013
+ end
1014
+
1015
+ # {http://www.lyris.com/lmapi}ArrayOfListStruct
1016
+ class ArrayOfListStruct < ::Array
1017
+ end
1018
+
1019
+ # {http://www.lyris.com/lmapi}ArrayOfMailingStruct
1020
+ class ArrayOfMailingStruct < ::Array
1021
+ end
1022
+
1023
+ # {http://www.lyris.com/lmapi}ArrayOfSegmentStruct
1024
+ class ArrayOfSegmentStruct < ::Array
1025
+ end
1026
+
1027
+ # {http://www.lyris.com/lmapi}ArrayOfint
1028
+ class ArrayOfint < ::Array
1029
+ end
1030
+
1031
+ # {http://www.lyris.com/lmapi}ArrayOfTrackingSummaryStruct
1032
+ class ArrayOfTrackingSummaryStruct < ::Array
1033
+ end
1034
+
1035
+ # {http://www.lyris.com/lmapi}ArrayOfArrayOfstring
1036
+ class ArrayOfArrayOfstring < ::Array
1037
+ end
1038
+
1039
+ # {http://www.lyris.com/lmapi}ArrayOfMemberStruct
1040
+ class ArrayOfMemberStruct < ::Array
1041
+ end
1042
+
1043
+ # {http://www.lyris.com/lmapi}ArrayOfTinyMemberStruct
1044
+ class ArrayOfTinyMemberStruct < ::Array
1045
+ end
1046
+
1047
+ # {http://www.lyris.com/lmapi}ArrayOfMemberBanStruct
1048
+ class ArrayOfMemberBanStruct < ::Array
1049
+ end
1050
+
1051
+ # {http://www.lyris.com/lmapi}ArrayOfstring
1052
+ class ArrayOfstring < ::Array
1053
+ end
1054
+
1055
+ # {http://www.lyris.com/lmapi}ArrayOfSimpleMailingStruct
1056
+ class ArrayOfSimpleMailingStruct < ::Array
1057
+ end
1058
+
1059
+ # {http://www.lyris.com/lmapi}ArrayOfContentStruct
1060
+ class ArrayOfContentStruct < ::Array
1061
+ end
1062
+
1063
+ # {http://www.lyris.com/lmapi}ArrayOfUrlTrackingStruct
1064
+ class ArrayOfUrlTrackingStruct < ::Array
1065
+ end
1066
+
1067
+ # {http://tempuri.org/ns1.xsd}LicenseLevelEnum
1068
+ class LicenseLevelEnum < ::String
1069
+ E = LicenseLevelEnum.new("E")
1070
+ P = LicenseLevelEnum.new("P")
1071
+ S = LicenseLevelEnum.new("S")
1072
+ end
1073
+
1074
+ # {http://tempuri.org/ns1.xsd}ListTypeEnum
1075
+ class ListTypeEnum < ::String
1076
+ AnnouncementModerated = ListTypeEnum.new("announcement-moderated")
1077
+ DiscussionModerated = ListTypeEnum.new("discussion-moderated")
1078
+ DiscussionUnmoderated = ListTypeEnum.new("discussion-unmoderated")
1079
+ Marketing = ListTypeEnum.new("marketing")
1080
+ end
1081
+
1082
+ # {http://tempuri.org/ns1.xsd}MriVisibilityEnum
1083
+ class MriVisibilityEnum < ::String
1084
+ H = MriVisibilityEnum.new("H")
1085
+ I = MriVisibilityEnum.new("I")
1086
+ V = MriVisibilityEnum.new("V")
1087
+ end
1088
+
1089
+ # {http://tempuri.org/ns1.xsd}MemberStatusEnum
1090
+ class MemberStatusEnum < ::String
1091
+ Confirm = MemberStatusEnum.new("confirm")
1092
+ ConfirmFailed = MemberStatusEnum.new("confirm-failed")
1093
+ Expired = MemberStatusEnum.new("expired")
1094
+ Held = MemberStatusEnum.new("held")
1095
+ Member = MemberStatusEnum.new("member")
1096
+ NeedsConfirm = MemberStatusEnum.new("needs-confirm")
1097
+ NeedsGoodbye = MemberStatusEnum.new("needs-goodbye")
1098
+ NeedsHello = MemberStatusEnum.new("needs-hello")
1099
+ Normal = MemberStatusEnum.new("normal")
1100
+ Private = MemberStatusEnum.new("private")
1101
+ Referred = MemberStatusEnum.new("referred")
1102
+ Unsub = MemberStatusEnum.new("unsub")
1103
+ end
1104
+
1105
+ # {http://tempuri.org/ns1.xsd}MessageTypeEnum
1106
+ class MessageTypeEnum < ::String
1107
+ Confirm = MessageTypeEnum.new("confirm")
1108
+ Delivery = MessageTypeEnum.new("delivery")
1109
+ Goodbye = MessageTypeEnum.new("goodbye")
1110
+ Held = MessageTypeEnum.new("held")
1111
+ Hello = MessageTypeEnum.new("hello")
1112
+ Private = MessageTypeEnum.new("private")
1113
+ end
1114
+
1115
+ # {http://tempuri.org/ns1.xsd}ModeratedEnum
1116
+ class ModeratedEnum < ::String
1117
+ All = ModeratedEnum.new("all")
1118
+ No = ModeratedEnum.new("no")
1119
+ Number = ModeratedEnum.new("number")
1120
+ end
1121
+
1122
+ # {http://tempuri.org/ns1.xsd}ConferenceVisibilityEnum
1123
+ class ConferenceVisibilityEnum < ::String
1124
+ D = ConferenceVisibilityEnum.new("D")
1125
+ E = ConferenceVisibilityEnum.new("E")
1126
+ M = ConferenceVisibilityEnum.new("M")
1127
+ end
1128
+
1129
+ # {http://tempuri.org/ns1.xsd}ConferencePostEnum
1130
+ class ConferencePostEnum < ::String
1131
+ A = ConferencePostEnum.new("A")
1132
+ E = ConferencePostEnum.new("E")
1133
+ M = ConferencePostEnum.new("M")
1134
+ end
1135
+
1136
+ # {http://tempuri.org/ns1.xsd}ConferenceDurationEnum
1137
+ class ConferenceDurationEnum < ::String
1138
+ C_1 = ConferenceDurationEnum.new("1")
1139
+ C_10 = ConferenceDurationEnum.new("10")
1140
+ C_12 = ConferenceDurationEnum.new("12")
1141
+ C_120 = ConferenceDurationEnum.new("120")
1142
+ C_144 = ConferenceDurationEnum.new("144")
1143
+ C_168 = ConferenceDurationEnum.new("168")
1144
+ C_192 = ConferenceDurationEnum.new("192")
1145
+ C_2 = ConferenceDurationEnum.new("2")
1146
+ C_24 = ConferenceDurationEnum.new("24")
1147
+ C_3 = ConferenceDurationEnum.new("3")
1148
+ C_4 = ConferenceDurationEnum.new("4")
1149
+ C_48 = ConferenceDurationEnum.new("48")
1150
+ C_6 = ConferenceDurationEnum.new("6")
1151
+ C_72 = ConferenceDurationEnum.new("72")
1152
+ C_96 = ConferenceDurationEnum.new("96")
1153
+ end
1154
+
1155
+ # {http://tempuri.org/ns1.xsd}ConfirmUnsubEnum
1156
+ class ConfirmUnsubEnum < ::String
1157
+ C_0 = ConfirmUnsubEnum.new("0")
1158
+ C_1 = ConfirmUnsubEnum.new("1")
1159
+ C_2 = ConfirmUnsubEnum.new("2")
1160
+ end
1161
+
1162
+ # {http://tempuri.org/ns1.xsd}PasswordRequiredEnum
1163
+ class PasswordRequiredEnum < ::String
1164
+ C_0 = PasswordRequiredEnum.new("0")
1165
+ C_1 = PasswordRequiredEnum.new("1")
1166
+ C_2 = PasswordRequiredEnum.new("2")
1167
+ end
1168
+
1169
+ # {http://tempuri.org/ns1.xsd}MemberListSecurityEnum
1170
+ class MemberListSecurityEnum < ::String
1171
+ C_0 = MemberListSecurityEnum.new("0")
1172
+ C_1 = MemberListSecurityEnum.new("1")
1173
+ C_2 = MemberListSecurityEnum.new("2")
1174
+ end
1175
+
1176
+ # {http://tempuri.org/ns1.xsd}RecencyOperatorEnum
1177
+ class RecencyOperatorEnum < ::String
1178
+ E = RecencyOperatorEnum.new("e")
1179
+ F = RecencyOperatorEnum.new("f")
1180
+ M = RecencyOperatorEnum.new("m")
1181
+ end
1182
+
1183
+ # {http://tempuri.org/ns1.xsd}MemberKindEnum
1184
+ class MemberKindEnum < ::String
1185
+ Daymimedigest = MemberKindEnum.new("daymimedigest")
1186
+ Digest = MemberKindEnum.new("digest")
1187
+ Expired = MemberKindEnum.new("expired")
1188
+ Index = MemberKindEnum.new("index")
1189
+ Mail = MemberKindEnum.new("mail")
1190
+ Mimedigest = MemberKindEnum.new("mimedigest")
1191
+ Nomail = MemberKindEnum.new("nomail")
1192
+ end
1193
+
1194
+ # {http://tempuri.org/ns1.xsd}NewSubscriberPolicyEnum
1195
+ class NewSubscriberPolicyEnum < ::String
1196
+ Closed = NewSubscriberPolicyEnum.new("closed")
1197
+ Open = NewSubscriberPolicyEnum.new("open")
1198
+ Password = NewSubscriberPolicyEnum.new("password")
1199
+ Private = NewSubscriberPolicyEnum.new("private")
1200
+ end
1201
+
1202
+ # {http://tempuri.org/ns1.xsd}BanLogicEnum
1203
+ class BanLogicEnum < ::String
1204
+ A = BanLogicEnum.new("A")
1205
+ C = BanLogicEnum.new("C")
1206
+ R = BanLogicEnum.new("R")
1207
+ end
1208
+
1209
+ # {http://tempuri.org/ns1.xsd}PostPasswordEnum
1210
+ class PostPasswordEnum < ::String
1211
+ C_0 = PostPasswordEnum.new("0")
1212
+ C_1 = PostPasswordEnum.new("1")
1213
+ C_2 = PostPasswordEnum.new("2")
1214
+ end
1215
+
1216
+ # {http://tempuri.org/ns1.xsd}NameRequiredEnum
1217
+ class NameRequiredEnum < ::String
1218
+ C_0 = NameRequiredEnum.new("0")
1219
+ C_1 = NameRequiredEnum.new("1")
1220
+ C_2 = NameRequiredEnum.new("2")
1221
+ end
1222
+
1223
+ # {http://tempuri.org/ns1.xsd}ScriptingLevelEnum
1224
+ class ScriptingLevelEnum < ::String
1225
+ C_0 = ScriptingLevelEnum.new("0")
1226
+ C_1 = ScriptingLevelEnum.new("1")
1227
+ C_2 = ScriptingLevelEnum.new("2")
1228
+ C_3 = ScriptingLevelEnum.new("3")
1229
+ end
1230
+
1231
+ # {http://tempuri.org/ns1.xsd}SegmentTypeEnum
1232
+ class SegmentTypeEnum < ::String
1233
+ Normal = SegmentTypeEnum.new("normal")
1234
+ Sequential = SegmentTypeEnum.new("sequential")
1235
+ Triggered = SegmentTypeEnum.new("triggered")
1236
+ end
1237
+
1238
+ # {http://tempuri.org/ns1.xsd}LoggingLevelEnum
1239
+ class LoggingLevelEnum < ::String
1240
+ E = LoggingLevelEnum.new("E")
1241
+ F = LoggingLevelEnum.new("F")
1242
+ M = LoggingLevelEnum.new("M")
1243
+ N = LoggingLevelEnum.new("N")
1244
+ end
1245
+
1246
+ # {http://tempuri.org/ns1.xsd}AddHeadersAndFootersEnum
1247
+ class AddHeadersAndFootersEnum < ::String
1248
+ A = AddHeadersAndFootersEnum.new("A")
1249
+ I = AddHeadersAndFootersEnum.new("I")
1250
+ N = AddHeadersAndFootersEnum.new("N")
1251
+ end
1252
+
1253
+ # {http://tempuri.org/ns1.xsd}DocTypeEnum
1254
+ class DocTypeEnum < ::String
1255
+ BILLING = DocTypeEnum.new("BILLING")
1256
+ CONTENTv2 = DocTypeEnum.new("CONTENTv2")
1257
+ end
1258
+
1259
+ # {http://tempuri.org/ns1.xsd}EnableScriptingEnum
1260
+ class EnableScriptingEnum < ::String
1261
+ C_0 = EnableScriptingEnum.new("0")
1262
+ C_1 = EnableScriptingEnum.new("1")
1263
+ C_2 = EnableScriptingEnum.new("2")
1264
+ end
1265
+
1266
+ # {http://tempuri.org/ns1.xsd}RecencyWhichEnum
1267
+ class RecencyWhichEnum < ::String
1268
+ E = RecencyWhichEnum.new("e")
1269
+ L = RecencyWhichEnum.new("l")
1270
+ M = RecencyWhichEnum.new("m")
1271
+ end
1272
+
1273
+ # {http://tempuri.org/ns1.xsd}MailFormatEnum
1274
+ class MailFormatEnum < ::String
1275
+ H = MailFormatEnum.new("H")
1276
+ M = MailFormatEnum.new("M")
1277
+ T = MailFormatEnum.new("T")
1278
+ end
1279
+
1280
+ # {http://tempuri.org/ns1.xsd}MailSectionEncodingEnum
1281
+ class MailSectionEncodingEnum < ::String
1282
+ Base64 = MailSectionEncodingEnum.new("base64")
1283
+ C_7bit = MailSectionEncodingEnum.new("7bit")
1284
+ C_8bit = MailSectionEncodingEnum.new("8bit")
1285
+ QuotedPrintable = MailSectionEncodingEnum.new("quoted-printable")
1286
+ end
1287
+
1288
+ # {http://tempuri.org/ns1.xsd}FieldTypeEnum
1289
+ class FieldTypeEnum < ::String
1290
+ C_Integer = FieldTypeEnum.new("integer")
1291
+ Char1 = FieldTypeEnum.new("char1")
1292
+ Char2 = FieldTypeEnum.new("char2")
1293
+ Char3 = FieldTypeEnum.new("char3")
1294
+ Date = FieldTypeEnum.new("date")
1295
+ Varchar10 = FieldTypeEnum.new("varchar10")
1296
+ Varchar100 = FieldTypeEnum.new("varchar100")
1297
+ Varchar150 = FieldTypeEnum.new("varchar150")
1298
+ Varchar20 = FieldTypeEnum.new("varchar20")
1299
+ Varchar200 = FieldTypeEnum.new("varchar200")
1300
+ Varchar250 = FieldTypeEnum.new("varchar250")
1301
+ Varchar30 = FieldTypeEnum.new("varchar30")
1302
+ Varchar40 = FieldTypeEnum.new("varchar40")
1303
+ Varchar5 = FieldTypeEnum.new("varchar5")
1304
+ Varchar50 = FieldTypeEnum.new("varchar50")
1305
+ Varchar60 = FieldTypeEnum.new("varchar60")
1306
+ Varchar70 = FieldTypeEnum.new("varchar70")
1307
+ Varchar80 = FieldTypeEnum.new("varchar80")
1308
+ Varchar90 = FieldTypeEnum.new("varchar90")
1309
+ end
1310
+ end
1311
+ end