rbook 0.4.3 → 0.5
Sign up to get free protection for your applications and to get access to all the features.
- 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
|