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.
- data/Rakefile +13 -176
- metadata +57 -117
- data/COPYING +0 -340
- data/LICENSE +0 -13
- data/README +0 -17
- data/examples/gbip.rb +0 -12
- data/examples/onix/stream_reader.rb +0 -13
- data/examples/pacstream.rb +0 -13
- data/examples/titlepage.rb +0 -14
- data/examples/titlepage_with_proxy.rb +0 -14
- data/examples/titlepage_www.rb +0 -18
- data/examples/www/find_all.rb +0 -23
- data/examples/www/find_cover_from_amazon.rb +0 -16
- data/examples/www/find_url_from_rainbow.rb +0 -12
- data/examples/www/list.rb +0 -13
- data/lib/rbook/bisac.rb +0 -31
- data/lib/rbook/bisac/message.rb +0 -99
- data/lib/rbook/bisac/po.rb +0 -97
- data/lib/rbook/bisac/po_line_item.rb +0 -33
- data/lib/rbook/bisac/product.rb +0 -176
- data/lib/rbook/errors.rb +0 -8
- data/lib/rbook/gbip.rb +0 -21
- data/lib/rbook/gbip/pos.rb +0 -118
- data/lib/rbook/gbip/title.rb +0 -36
- data/lib/rbook/gbip/warehouse.rb +0 -27
- data/lib/rbook/isbn.rb +0 -255
- data/lib/rbook/onix.rb +0 -70
- data/lib/rbook/onix/contributor.rb +0 -60
- data/lib/rbook/onix/lists.rb +0 -2
- data/lib/rbook/onix/lists/contributor_role.rb +0 -10
- data/lib/rbook/onix/lists/product_form.rb +0 -100
- data/lib/rbook/onix/message.rb +0 -112
- data/lib/rbook/onix/product.rb +0 -189
- data/lib/rbook/onix/sales_restriction.rb +0 -51
- data/lib/rbook/onix/stream_reader.rb +0 -120
- data/lib/rbook/onix/stream_writer.rb +0 -40
- data/lib/rbook/onix/supply_detail.rb +0 -68
- data/lib/rbook/onix/xchar.rb +0 -98
- data/lib/rbook/pacstream.rb +0 -64
- data/lib/rbook/titlepage.rb +0 -37
- data/lib/rbook/titlepage/client.rb +0 -126
- data/lib/rbook/titlepage/titlepage_driver.rb +0 -137
- data/lib/rbook/titlepage/titlepage_utils.rb +0 -379
- data/lib/rbook/titlepage/wwwclient.rb +0 -96
- data/lib/rbook/www.rb +0 -172
- data/lib/rbook/www/aau_scraper.rb +0 -76
- data/lib/rbook/www/amazon_uk_scraper.rb +0 -44
- data/lib/rbook/www/ban_scraper.rb +0 -62
- data/lib/rbook/www/base.rb +0 -87
- data/lib/rbook/www/harper_au_scraper.rb +0 -56
- data/lib/rbook/www/harper_us_scraper.rb +0 -55
- data/lib/rbook/www/hha_scraper.rb +0 -50
- data/lib/rbook/www/macmillan_scraper.rb +0 -62
- data/lib/rbook/www/orbis_scraper.rb +0 -48
- data/lib/rbook/www/oup_scraper.rb +0 -64
- data/lib/rbook/www/paulist_scraper.rb +0 -53
- data/lib/rbook/www/pearson_au_scraper.rb +0 -52
- data/lib/rbook/www/penguin_scraper.rb +0 -45
- data/lib/rbook/www/random_au_scraper.rb +0 -90
- data/lib/rbook/www/random_us_scraper.rb +0 -59
- data/lib/rbook/www/sas_scraper.rb +0 -54
- data/lib/rbook/www/unireps_scraper.rb +0 -58
- data/lib/rbook/www/wiley_us_scraper.rb +0 -54
- data/test/data/abingdon.xml +0 -38931
- data/test/data/augsburg.xml +0 -39009
- data/test/data/bisac_po.txt +0 -112
- data/test/data/chalice.xml +0 -10851
- data/test/data/eerdsman.xml +0 -36942
- data/test/data/invalid_no_product.xml +0 -9
- data/test/data/not_xml.csv +0 -1
- data/test/data/single_product.xml +0 -50
- data/test/data/valid_bisac.txt +0 -213
- data/test/data/xml_not_onix.xml +0 -7
- data/test/mocks/titlepage_driver.rb +0 -111
- data/test/unit/bisac/bisac_test.rb +0 -96
- data/test/unit/bisac/po_line_item_test.rb +0 -38
- data/test/unit/bisac/po_test.rb +0 -82
- data/test/unit/isbn_test.rb +0 -153
- data/test/unit/onix/contributor_test.rb +0 -50
- data/test/unit/onix/message_test.rb +0 -119
- data/test/unit/onix/product_test.rb +0 -101
- data/test/unit/onix/sales_restriction_test.rb +0 -48
- data/test/unit/onix/stream_reader_test.rb +0 -22
- data/test/unit/onix/stream_writer_test.rb +0 -32
- data/test/unit/onix/supply_detail_test.rb +0 -53
- data/test/unit/onix/xchar_test.rb +0 -37
- 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
|