rbook 0.4.3 → 0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. data/Rakefile +13 -176
  2. metadata +57 -117
  3. data/COPYING +0 -340
  4. data/LICENSE +0 -13
  5. data/README +0 -17
  6. data/examples/gbip.rb +0 -12
  7. data/examples/onix/stream_reader.rb +0 -13
  8. data/examples/pacstream.rb +0 -13
  9. data/examples/titlepage.rb +0 -14
  10. data/examples/titlepage_with_proxy.rb +0 -14
  11. data/examples/titlepage_www.rb +0 -18
  12. data/examples/www/find_all.rb +0 -23
  13. data/examples/www/find_cover_from_amazon.rb +0 -16
  14. data/examples/www/find_url_from_rainbow.rb +0 -12
  15. data/examples/www/list.rb +0 -13
  16. data/lib/rbook/bisac.rb +0 -31
  17. data/lib/rbook/bisac/message.rb +0 -99
  18. data/lib/rbook/bisac/po.rb +0 -97
  19. data/lib/rbook/bisac/po_line_item.rb +0 -33
  20. data/lib/rbook/bisac/product.rb +0 -176
  21. data/lib/rbook/errors.rb +0 -8
  22. data/lib/rbook/gbip.rb +0 -21
  23. data/lib/rbook/gbip/pos.rb +0 -118
  24. data/lib/rbook/gbip/title.rb +0 -36
  25. data/lib/rbook/gbip/warehouse.rb +0 -27
  26. data/lib/rbook/isbn.rb +0 -255
  27. data/lib/rbook/onix.rb +0 -70
  28. data/lib/rbook/onix/contributor.rb +0 -60
  29. data/lib/rbook/onix/lists.rb +0 -2
  30. data/lib/rbook/onix/lists/contributor_role.rb +0 -10
  31. data/lib/rbook/onix/lists/product_form.rb +0 -100
  32. data/lib/rbook/onix/message.rb +0 -112
  33. data/lib/rbook/onix/product.rb +0 -189
  34. data/lib/rbook/onix/sales_restriction.rb +0 -51
  35. data/lib/rbook/onix/stream_reader.rb +0 -120
  36. data/lib/rbook/onix/stream_writer.rb +0 -40
  37. data/lib/rbook/onix/supply_detail.rb +0 -68
  38. data/lib/rbook/onix/xchar.rb +0 -98
  39. data/lib/rbook/pacstream.rb +0 -64
  40. data/lib/rbook/titlepage.rb +0 -37
  41. data/lib/rbook/titlepage/client.rb +0 -126
  42. data/lib/rbook/titlepage/titlepage_driver.rb +0 -137
  43. data/lib/rbook/titlepage/titlepage_utils.rb +0 -379
  44. data/lib/rbook/titlepage/wwwclient.rb +0 -96
  45. data/lib/rbook/www.rb +0 -172
  46. data/lib/rbook/www/aau_scraper.rb +0 -76
  47. data/lib/rbook/www/amazon_uk_scraper.rb +0 -44
  48. data/lib/rbook/www/ban_scraper.rb +0 -62
  49. data/lib/rbook/www/base.rb +0 -87
  50. data/lib/rbook/www/harper_au_scraper.rb +0 -56
  51. data/lib/rbook/www/harper_us_scraper.rb +0 -55
  52. data/lib/rbook/www/hha_scraper.rb +0 -50
  53. data/lib/rbook/www/macmillan_scraper.rb +0 -62
  54. data/lib/rbook/www/orbis_scraper.rb +0 -48
  55. data/lib/rbook/www/oup_scraper.rb +0 -64
  56. data/lib/rbook/www/paulist_scraper.rb +0 -53
  57. data/lib/rbook/www/pearson_au_scraper.rb +0 -52
  58. data/lib/rbook/www/penguin_scraper.rb +0 -45
  59. data/lib/rbook/www/random_au_scraper.rb +0 -90
  60. data/lib/rbook/www/random_us_scraper.rb +0 -59
  61. data/lib/rbook/www/sas_scraper.rb +0 -54
  62. data/lib/rbook/www/unireps_scraper.rb +0 -58
  63. data/lib/rbook/www/wiley_us_scraper.rb +0 -54
  64. data/test/data/abingdon.xml +0 -38931
  65. data/test/data/augsburg.xml +0 -39009
  66. data/test/data/bisac_po.txt +0 -112
  67. data/test/data/chalice.xml +0 -10851
  68. data/test/data/eerdsman.xml +0 -36942
  69. data/test/data/invalid_no_product.xml +0 -9
  70. data/test/data/not_xml.csv +0 -1
  71. data/test/data/single_product.xml +0 -50
  72. data/test/data/valid_bisac.txt +0 -213
  73. data/test/data/xml_not_onix.xml +0 -7
  74. data/test/mocks/titlepage_driver.rb +0 -111
  75. data/test/unit/bisac/bisac_test.rb +0 -96
  76. data/test/unit/bisac/po_line_item_test.rb +0 -38
  77. data/test/unit/bisac/po_test.rb +0 -82
  78. data/test/unit/isbn_test.rb +0 -153
  79. data/test/unit/onix/contributor_test.rb +0 -50
  80. data/test/unit/onix/message_test.rb +0 -119
  81. data/test/unit/onix/product_test.rb +0 -101
  82. data/test/unit/onix/sales_restriction_test.rb +0 -48
  83. data/test/unit/onix/stream_reader_test.rb +0 -22
  84. data/test/unit/onix/stream_writer_test.rb +0 -32
  85. data/test/unit/onix/supply_detail_test.rb +0 -53
  86. data/test/unit/onix/xchar_test.rb +0 -37
  87. data/test/unit/titlepage_test.rb +0 -140
@@ -1,126 +0,0 @@
1
- $LOAD_PATH.unshift(File.dirname(__FILE__) + "/../")
2
-
3
- require 'rbook/isbn'
4
- require 'rbook/errors'
5
- require 'rbook/titlepage/titlepage_driver'
6
- require 'drb'
7
-
8
- module RBook
9
- module TitlePage
10
-
11
- # a convenience class for accessing the SOAP API for http://www.titlepage.com.
12
- # Uses boilerplate code generated by soap4r.
13
- #
14
- # You should be aware of any limits of query volume imposed by the provider - currently a
15
- # maximum of 30 queries per minute is permitted.
16
- #
17
- # For a basic usage overview, check out RBook::TitlePage
18
- class Client
19
-
20
- @@uri = nil
21
-
22
- # Tells all instances of this class to query the titlepage API via a Distributed Ruby
23
- # proxy. This is useful where multiple machines need to make queries and you need to be
24
- # careful not to exceed the maximum query rate.
25
- #
26
- # There is an example proxy executable available in the bin/ directory of rbook.
27
- #
28
- # Assuming the proxy is running on port 61676 of the local machine, the following
29
- # code can be used to query titlepage:
30
- #
31
- # RBook::TitlePage::Client.use_proxy("druby://127.0.0.1:61676")
32
- # RBook::TitlePage::Client.open("username", "password") do |tp|
33
- # puts tp.find("0091835135").product.title.titleText
34
- # end
35
- def self.use_proxy(uri)
36
- @@uri = uri
37
- end
38
-
39
- # Optional driver parameter allows an alternative SOAP driver to the default to be specified.
40
- # This is primarily for testing purposes and probably isn't useful to anyone in the real world.
41
- def initialize(driver = nil)
42
- @driver = driver || TitleQueryPortType.new
43
- @token = nil
44
- end
45
-
46
- # login to the titlepage API.
47
- def login(username, password)
48
- raise InvalidRubyVersionError, 'Ruby 1.8.3 or higher is required to use this class' unless RUBY_VERSION >= "1.8.3"
49
- logout if @token
50
- @username = username
51
- @password = password
52
- unless @@uri
53
- @token = @driver.login(username, password)
54
- return true if @token
55
- end
56
- end
57
-
58
- # logout from the titlepage API
59
- def logout
60
- @username = nil
61
- @password = nil
62
- if @token and @@uri != nil
63
- @driver.logout(@token)
64
- else
65
- true
66
- end
67
- end
68
-
69
- # retrieve information on a specified ISBN
70
- def find(isbn)
71
- return NotLoggedInError, 'You must login to titlepage API before performing a search' unless @token || @@uri
72
- isbn = ISBN::convert_to_isbn13(isbn)
73
- return nil if isbn.nil?
74
- begin
75
- if @@uri
76
- proxy = DRbObject.new_with_uri(@@uri)
77
- result = proxy.find(@username, @password, isbn)
78
- else
79
- result = @driver.SearchByEAN(@token, isbn)
80
- end
81
- if result.Product.nil?
82
- return nil
83
- else
84
- return result
85
- end
86
- rescue
87
- return nil
88
- end
89
-
90
- end
91
-
92
- # a convenience method to make single queries to title page a little cleaner.
93
- #
94
- # result = RBook::TitlePage.find("username","password","9780091835132")
95
- # puts result.inspect
96
- def self.find(username, password, isbn, driver = nil)
97
- result = nil
98
- RBook::TitlePage::Client.open(username, password, driver) do |tp|
99
- result = tp.find(isbn)
100
- end
101
- return result
102
- end
103
-
104
- # a convenience method to make queries to title page a little cleaner. This function
105
- # essentially calls the login and logout functions for you automatically.
106
- #
107
- # RBook::TitlePage.open("username","password") do |tp|
108
- # result = tp.find("9780091835132")
109
- # end
110
- def self.open(username, password, driver = nil)
111
-
112
- tp = self.new(driver || TitleQueryPortType.new)
113
-
114
- begin
115
- tp.login(username, password)
116
-
117
- yield(tp)
118
-
119
- ensure
120
- tp.logout
121
- end
122
- end
123
-
124
- end
125
- end
126
- end
@@ -1,137 +0,0 @@
1
- require File.dirname(__FILE__) + '/titlepage_utils.rb'
2
-
3
- require 'soap/rpc/driver'
4
-
5
- module RBook
6
- module TitlePage
7
- class TitleQueryPortType < ::SOAP::RPC::Driver
8
- DefaultEndpointUrl = "http://www.titlepage.com.au/ws/TitleQuery.php"
9
- MappingRegistry = ::SOAP::Mapping::Registry.new
10
-
11
- MappingRegistry.set(
12
- SearchResults,
13
- ::SOAP::SOAPStruct,
14
- ::SOAP::Mapping::Registry::TypedStructFactory,
15
- { :type => XSD::QName.new("urn:TitleQuery", "SearchResults") }
16
- )
17
- MappingRegistry.set(
18
- Product,
19
- ::SOAP::SOAPStruct,
20
- ::SOAP::Mapping::Registry::TypedStructFactory,
21
- { :type => XSD::QName.new("urn:TitleQuery", "Product") }
22
- )
23
- MappingRegistry.set(
24
- ArrayOfProductIdentifier,
25
- ::SOAP::SOAPArray,
26
- ::SOAP::Mapping::Registry::TypedArrayFactory,
27
- { :type => XSD::QName.new("urn:TitleQuery", "ProductIdentifier") }
28
- )
29
- MappingRegistry.set(
30
- Title,
31
- ::SOAP::SOAPStruct,
32
- ::SOAP::Mapping::Registry::TypedStructFactory,
33
- { :type => XSD::QName.new("urn:TitleQuery", "Title") }
34
- )
35
- MappingRegistry.set(
36
- ArrayOfContributor,
37
- ::SOAP::SOAPArray,
38
- ::SOAP::Mapping::Registry::TypedArrayFactory,
39
- { :type => XSD::QName.new("urn:TitleQuery", "Contributor") }
40
- )
41
- MappingRegistry.set(
42
- SupplyDetail,
43
- ::SOAP::SOAPStruct,
44
- ::SOAP::Mapping::Registry::TypedStructFactory,
45
- { :type => XSD::QName.new("urn:TitleQuery", "SupplyDetail") }
46
- )
47
- MappingRegistry.set(
48
- Stock,
49
- ::SOAP::SOAPStruct,
50
- ::SOAP::Mapping::Registry::TypedStructFactory,
51
- { :type => XSD::QName.new("urn:TitleQuery", "Stock") }
52
- )
53
- MappingRegistry.set(
54
- Price,
55
- ::SOAP::SOAPStruct,
56
- ::SOAP::Mapping::Registry::TypedStructFactory,
57
- { :type => XSD::QName.new("urn:TitleQuery", "Price") }
58
- )
59
- MappingRegistry.set(
60
- ProductIdentifier,
61
- ::SOAP::SOAPStruct,
62
- ::SOAP::Mapping::Registry::TypedStructFactory,
63
- { :type => XSD::QName.new("urn:TitleQuery", "ProductIdentifier") }
64
- )
65
- MappingRegistry.set(
66
- Contributor,
67
- ::SOAP::SOAPStruct,
68
- ::SOAP::Mapping::Registry::TypedStructFactory,
69
- { :type => XSD::QName.new("urn:TitleQuery", "Contributor") }
70
- )
71
-
72
- Methods = [
73
- [ XSD::QName.new("http://www.titlepage.com/ws", "Login"),
74
- "http://www.titlepage.com.au/ws/TitleQuery.php/Login",
75
- "login",
76
- [ ["in", "UserName", ["::SOAP::SOAPString"]],
77
- ["in", "Password", ["::SOAP::SOAPString"]],
78
- ["retval", "Token", ["::SOAP::SOAPString"]] ],
79
- { :request_style => :rpc, :request_use => :encoded,
80
- :response_style => :rpc, :response_use => :encoded }
81
- ],
82
- [ XSD::QName.new("http://www.titlepage.com/ws", "SearchByISBN"),
83
- "http://www.titlepage.com.au/ws/TitleQuery.php/SearchByISBN",
84
- "searchByISBN",
85
- [ ["in", "Token", ["::SOAP::SOAPString"]],
86
- ["in", "ISBN", ["::SOAP::SOAPString"]],
87
- ["retval", "SearchResults", ["SearchResults", "urn:TitleQuery", "SearchResults"]] ],
88
- { :request_style => :rpc, :request_use => :encoded,
89
- :response_style => :rpc, :response_use => :encoded }
90
- ],
91
- [ XSD::QName.new("http://www.titlepage.com/ws", "SearchByEAN"),
92
- "http://www.titlepage.com.au/ws/TitleQuery.php/SearchByEAN",
93
- "searchByEAN",
94
- [ ["in", "Token", ["::SOAP::SOAPString"]],
95
- ["in", "EAN", ["::SOAP::SOAPString"]],
96
- ["retval", "SearchResults", ["SearchResults", "urn:TitleQuery", "SearchResults"]] ],
97
- { :request_style => :rpc, :request_use => :encoded,
98
- :response_style => :rpc, :response_use => :encoded }
99
- ],
100
- [ XSD::QName.new("http://www.titlepage.com/ws", "Logout"),
101
- "http://www.titlepage.com.au/ws/TitleQuery.php/Logout",
102
- "logout",
103
- [ ["in", "token", ["::SOAP::SOAPString"]] ],
104
- { :request_style => :rpc, :request_use => :encoded,
105
- :response_style => :rpc, :response_use => :encoded }
106
- ]
107
- ]
108
-
109
- def initialize(endpoint_url = nil)
110
- endpoint_url ||= DefaultEndpointUrl
111
- super(endpoint_url, nil)
112
- self.mapping_registry = MappingRegistry
113
- init_methods
114
- end
115
-
116
- private
117
-
118
- def init_methods
119
- Methods.each do |definitions|
120
- opt = definitions.last
121
- if opt[:request_style] == :document
122
- add_document_operation(*definitions)
123
- else
124
- add_rpc_operation(*definitions)
125
- qname = definitions[0]
126
- name = definitions[2]
127
- if qname.name != name and qname.name.capitalize == name.capitalize
128
- ::SOAP::Mapping.define_singleton_method(self, qname.name) do |*arg|
129
- __send__(name, *arg)
130
- end
131
- end
132
- end
133
- end
134
- end
135
- end
136
- end
137
- end
@@ -1,379 +0,0 @@
1
- require 'xsd/qname'
2
-
3
- module RBook
4
- module TitlePage
5
-
6
- # {urn:TitleQuery}ProductIdentifier
7
- class ProductIdentifier
8
- @@schema_type = "ProductIdentifier"
9
- @@schema_ns = "urn:TitleQuery"
10
- @@schema_element = [["productIDType", ["SOAP::SOAPString", XSD::QName.new(nil, "ProductIDType")]], ["iDValue", ["SOAP::SOAPString", XSD::QName.new(nil, "IDValue")]]]
11
-
12
- def ProductIDType
13
- @productIDType
14
- end
15
-
16
- def ProductIDType=(value)
17
- @productIDType = value
18
- end
19
-
20
- def IDValue
21
- @iDValue
22
- end
23
-
24
- def IDValue=(value)
25
- @iDValue = value
26
- end
27
-
28
- def initialize(productIDType = nil, iDValue = nil)
29
- @productIDType = productIDType
30
- @iDValue = iDValue
31
- end
32
- end
33
-
34
- # {urn:TitleQuery}Title
35
- class Title
36
- @@schema_type = "Title"
37
- @@schema_ns = "urn:TitleQuery"
38
- @@schema_element = [["titleType", ["SOAP::SOAPString", XSD::QName.new(nil, "TitleType")]], ["titleText", ["SOAP::SOAPString", XSD::QName.new(nil, "TitleText")]], ["titlePrefix", ["SOAP::SOAPString", XSD::QName.new(nil, "TitlePrefix")]], ["titleWithoutPrefix", ["SOAP::SOAPString", XSD::QName.new(nil, "TitleWithoutPrefix")]], ["subtitle", ["SOAP::SOAPString", XSD::QName.new(nil, "Subtitle")]]]
39
-
40
- def TitleType
41
- @titleType
42
- end
43
-
44
- def TitleType=(value)
45
- @titleType = value
46
- end
47
-
48
- def TitleText
49
- @titleText
50
- end
51
-
52
- def TitleText=(value)
53
- @titleText = value
54
- end
55
-
56
- def TitlePrefix
57
- @titlePrefix
58
- end
59
-
60
- def TitlePrefix=(value)
61
- @titlePrefix = value
62
- end
63
-
64
- def TitleWithoutPrefix
65
- @titleWithoutPrefix
66
- end
67
-
68
- def TitleWithoutPrefix=(value)
69
- @titleWithoutPrefix = value
70
- end
71
-
72
- def Subtitle
73
- @subtitle
74
- end
75
-
76
- def Subtitle=(value)
77
- @subtitle = value
78
- end
79
-
80
- def initialize(titleType = nil, titleText = nil, titlePrefix = nil, titleWithoutPrefix = nil, subtitle = nil)
81
- @titleType = titleType
82
- @titleText = titleText
83
- @titlePrefix = titlePrefix
84
- @titleWithoutPrefix = titleWithoutPrefix
85
- @subtitle = subtitle
86
- end
87
- end
88
-
89
- # {urn:TitleQuery}Contributor
90
- class Contributor
91
- @@schema_type = "Contributor"
92
- @@schema_ns = "urn:TitleQuery"
93
- @@schema_element = [["sequenceNumber", ["SOAP::SOAPInteger", XSD::QName.new(nil, "SequenceNumber")]], ["contributorRole", ["SOAP::SOAPString", XSD::QName.new(nil, "ContributorRole")]], ["personName", ["SOAP::SOAPString", XSD::QName.new(nil, "PersonName")]], ["personNameInverted", ["SOAP::SOAPString", XSD::QName.new(nil, "PersonNameInverted")]], ["titlesBeforeNames", ["SOAP::SOAPString", XSD::QName.new(nil, "TitlesBeforeNames")]], ["keyNames", ["SOAP::SOAPString", XSD::QName.new(nil, "KeyNames")]]]
94
-
95
- def SequenceNumber
96
- @sequenceNumber
97
- end
98
-
99
- def SequenceNumber=(value)
100
- @sequenceNumber = value
101
- end
102
-
103
- def ContributorRole
104
- @contributorRole
105
- end
106
-
107
- def ContributorRole=(value)
108
- @contributorRole = value
109
- end
110
-
111
- def PersonName
112
- @personName
113
- end
114
-
115
- def PersonName=(value)
116
- @personName = value
117
- end
118
-
119
- def PersonNameInverted
120
- @personNameInverted
121
- end
122
-
123
- def PersonNameInverted=(value)
124
- @personNameInverted = value
125
- end
126
-
127
- def TitlesBeforeNames
128
- @titlesBeforeNames
129
- end
130
-
131
- def TitlesBeforeNames=(value)
132
- @titlesBeforeNames = value
133
- end
134
-
135
- def KeyNames
136
- @keyNames
137
- end
138
-
139
- def KeyNames=(value)
140
- @keyNames = value
141
- end
142
-
143
- def initialize(sequenceNumber = nil, contributorRole = nil, personName = nil, personNameInverted = nil, titlesBeforeNames = nil, keyNames = nil)
144
- @sequenceNumber = sequenceNumber
145
- @contributorRole = contributorRole
146
- @personName = personName
147
- @personNameInverted = personNameInverted
148
- @titlesBeforeNames = titlesBeforeNames
149
- @keyNames = keyNames
150
- end
151
- end
152
-
153
- # {urn:TitleQuery}Stock
154
- class Stock
155
- @@schema_type = "Stock"
156
- @@schema_ns = "urn:TitleQuery"
157
- @@schema_element = [["onHand", ["SOAP::SOAPString", XSD::QName.new(nil, "OnHand")]], ["onOrder", ["SOAP::SOAPString", XSD::QName.new(nil, "OnOrder")]]]
158
-
159
- def OnHand
160
- @onHand
161
- end
162
-
163
- def OnHand=(value)
164
- @onHand = value
165
- end
166
-
167
- def OnOrder
168
- @onOrder
169
- end
170
-
171
- def OnOrder=(value)
172
- @onOrder = value
173
- end
174
-
175
- def initialize(onHand = nil, onOrder = nil)
176
- @onHand = onHand
177
- @onOrder = onOrder
178
- end
179
- end
180
-
181
- # {urn:TitleQuery}Price
182
- class Price
183
- @@schema_type = "Price"
184
- @@schema_ns = "urn:TitleQuery"
185
- @@schema_element = [["priceTypeCode", ["SOAP::SOAPString", XSD::QName.new(nil, "PriceTypeCode")]], ["priceAmount", ["SOAP::SOAPDecimal", XSD::QName.new(nil, "PriceAmount")]]]
186
-
187
- def PriceTypeCode
188
- @priceTypeCode
189
- end
190
-
191
- def PriceTypeCode=(value)
192
- @priceTypeCode = value
193
- end
194
-
195
- def PriceAmount
196
- @priceAmount
197
- end
198
-
199
- def PriceAmount=(value)
200
- @priceAmount = value
201
- end
202
-
203
- def initialize(priceTypeCode = nil, priceAmount = nil)
204
- @priceTypeCode = priceTypeCode
205
- @priceAmount = priceAmount
206
- end
207
- end
208
-
209
- # {urn:TitleQuery}SupplyDetail
210
- class SupplyDetail
211
- @@schema_type = "SupplyDetail"
212
- @@schema_ns = "urn:TitleQuery"
213
- @@schema_element = [["supplierName", ["SOAP::SOAPString", XSD::QName.new(nil, "SupplierName")]], ["supplierRole", ["SOAP::SOAPString", XSD::QName.new(nil, "SupplierRole")]], ["productAvailability", ["SOAP::SOAPString", XSD::QName.new(nil, "ProductAvailability")]], ["expectedShipDate", ["SOAP::SOAPString", XSD::QName.new(nil, "ExpectedShipDate")]], ["stock", ["Stock", XSD::QName.new(nil, "Stock")]], ["packQuantity", ["SOAP::SOAPInteger", XSD::QName.new(nil, "PackQuantity")]], ["price", ["Price", XSD::QName.new(nil, "Price")]]]
214
-
215
- def SupplierName
216
- @supplierName
217
- end
218
-
219
- def SupplierName=(value)
220
- @supplierName = value
221
- end
222
-
223
- def SupplierRole
224
- @supplierRole
225
- end
226
-
227
- def SupplierRole=(value)
228
- @supplierRole = value
229
- end
230
-
231
- def ProductAvailability
232
- @productAvailability
233
- end
234
-
235
- def ProductAvailability=(value)
236
- @productAvailability = value
237
- end
238
-
239
- def ExpectedShipDate
240
- @expectedShipDate
241
- end
242
-
243
- def ExpectedShipDate=(value)
244
- @expectedShipDate = value
245
- end
246
-
247
- def Stock
248
- @stock
249
- end
250
-
251
- def Stock=(value)
252
- @stock = value
253
- end
254
-
255
- def PackQuantity
256
- @packQuantity
257
- end
258
-
259
- def PackQuantity=(value)
260
- @packQuantity = value
261
- end
262
-
263
- def Price
264
- @price
265
- end
266
-
267
- def Price=(value)
268
- @price = value
269
- end
270
-
271
- def initialize(supplierName = nil, supplierRole = nil, productAvailability = nil, expectedShipDate = nil, stock = nil, packQuantity = nil, price = nil)
272
- @supplierName = supplierName
273
- @supplierRole = supplierRole
274
- @productAvailability = productAvailability
275
- @expectedShipDate = expectedShipDate
276
- @stock = stock
277
- @packQuantity = packQuantity
278
- @price = price
279
- end
280
- end
281
-
282
- # {urn:TitleQuery}ArrayOfContributor
283
- class ArrayOfContributor < ::Array
284
- @@schema_type = "Contributor"
285
- @@schema_ns = "urn:TitleQuery"
286
- @@schema_element = [["item", ["Contributor", XSD::QName.new(nil, "item")]]]
287
- end
288
-
289
- # {urn:TitleQuery}ArrayOfProductIdentifier
290
- class ArrayOfProductIdentifier < ::Array
291
- @@schema_type = "ProductIdentifier"
292
- @@schema_ns = "urn:TitleQuery"
293
- @@schema_element = [["item", ["ProductIdentifier", XSD::QName.new(nil, "item")]]]
294
- end
295
-
296
- # {urn:TitleQuery}Product
297
- class Product
298
- @@schema_type = "Product"
299
- @@schema_ns = "urn:TitleQuery"
300
- @@schema_element = [["productIdentifiers", ["ArrayOfProductIdentifier", XSD::QName.new(nil, "ProductIdentifiers")]], ["title", ["Title", XSD::QName.new(nil, "Title")]], ["contributors", ["ArrayOfContributor", XSD::QName.new(nil, "Contributors")]], ["supplyDetail", ["SupplyDetail", XSD::QName.new(nil, "SupplyDetail")]]]
301
-
302
- def ProductIdentifiers
303
- @productIdentifiers
304
- end
305
-
306
- def ProductIdentifiers=(value)
307
- @productIdentifiers = value
308
- end
309
-
310
- def Title
311
- @title
312
- end
313
-
314
- def Title=(value)
315
- @title = value
316
- end
317
-
318
- def Contributors
319
- @contributors
320
- end
321
-
322
- def Contributors=(value)
323
- @contributors = value
324
- end
325
-
326
- def SupplyDetail
327
- @supplyDetail
328
- end
329
-
330
- def SupplyDetail=(value)
331
- @supplyDetail = value
332
- end
333
-
334
- def initialize(productIdentifiers = nil, title = nil, contributors = nil, supplyDetail = nil)
335
- @productIdentifiers = productIdentifiers
336
- @title = title
337
- @contributors = contributors
338
- @supplyDetail = supplyDetail
339
- end
340
- end
341
-
342
- # {urn:TitleQuery}SearchResults
343
- class SearchResults
344
- @@schema_type = "SearchResults"
345
- @@schema_ns = "urn:TitleQuery"
346
- @@schema_element = [["iSBN", ["SOAP::SOAPString", XSD::QName.new(nil, "ISBN")]], ["eAN", ["SOAP::SOAPString", XSD::QName.new(nil, "EAN")]], ["product", ["Product", XSD::QName.new(nil, "Product")]]]
347
-
348
- def ISBN
349
- @iSBN
350
- end
351
-
352
- def ISBN=(value)
353
- @iSBN = value
354
- end
355
-
356
- def EAN
357
- @eAN
358
- end
359
-
360
- def EAN=(value)
361
- @eAN = value
362
- end
363
-
364
- def Product
365
- @product
366
- end
367
-
368
- def Product=(value)
369
- @product = value
370
- end
371
-
372
- def initialize(iSBN = nil, eAN = nil, product = nil)
373
- @iSBN = iSBN
374
- @eAN = eAN
375
- @product = product
376
- end
377
- end
378
- end
379
- end