uddi4r 0.7
Sign up to get free protection for your applications and to get access to all the features.
- data/README +19 -0
- data/doc/classes/Uddi4r/BindingDetail.html +120 -0
- data/doc/classes/Uddi4r/BindingTemplate.html +120 -0
- data/doc/classes/Uddi4r/BusinessDetail.html +120 -0
- data/doc/classes/Uddi4r/BusinessEntity.html +120 -0
- data/doc/classes/Uddi4r/BusinessInfo.html +120 -0
- data/doc/classes/Uddi4r/BusinessList.html +120 -0
- data/doc/classes/Uddi4r/BusinessService.html +120 -0
- data/doc/classes/Uddi4r/CategoryBag.html +120 -0
- data/doc/classes/Uddi4r/Client.html +651 -0
- data/doc/classes/Uddi4r/Connection.html +331 -0
- data/doc/classes/Uddi4r/DiscoveryURLs.html +157 -0
- data/doc/classes/Uddi4r/FindQualifiers.html +157 -0
- data/doc/classes/Uddi4r/IdentifierBag.html +120 -0
- data/doc/classes/Uddi4r/KeyedReference.html +120 -0
- data/doc/classes/Uddi4r/Model.html +296 -0
- data/doc/classes/Uddi4r/OverviewDoc.html +120 -0
- data/doc/classes/Uddi4r/RelatedBusinessesList.html +120 -0
- data/doc/classes/Uddi4r/ServiceDetail.html +120 -0
- data/doc/classes/Uddi4r/ServiceInfo.html +120 -0
- data/doc/classes/Uddi4r/ServiceList.html +120 -0
- data/doc/classes/Uddi4r/SoapBuilder.html +356 -0
- data/doc/classes/Uddi4r/TModel.html +120 -0
- data/doc/classes/Uddi4r/TModelBag.html +155 -0
- data/doc/classes/Uddi4r/TModelDetail.html +120 -0
- data/doc/classes/Uddi4r/TModelInstanceInfo.html +120 -0
- data/doc/classes/Uddi4r.html +154 -0
- data/doc/created.rid +1 -0
- data/doc/files/README.html +147 -0
- data/doc/files/lib/client_rb.html +117 -0
- data/doc/files/lib/connection_rb.html +119 -0
- data/doc/files/lib/models_rb.html +115 -0
- data/doc/files/lib/soap_builder_rb.html +108 -0
- data/doc/fr_class_index.html +52 -0
- data/doc/fr_file_index.html +31 -0
- data/doc/fr_method_index.html +54 -0
- data/doc/index.html +24 -0
- data/doc/rdoc-style.css +208 -0
- data/lib/client.rb +203 -0
- data/lib/connection.rb +74 -0
- data/lib/models.rb +207 -0
- data/lib/soap_builder.rb +89 -0
- data/test/fixtures/business_service.xml +40 -0
- data/test/fixtures/test_uddi_servers.rb +31 -0
- data/test/test_client.rb +141 -0
- data/test/test_connection.rb +34 -0
- data/test/test_model.rb +34 -0
- metadata +97 -0
data/lib/soap_builder.rb
ADDED
@@ -0,0 +1,89 @@
|
|
1
|
+
# uddi4r - UDDI Client for Ruby
|
2
|
+
# http://rubyforge.org/projects/uddi4r/
|
3
|
+
|
4
|
+
module Uddi4r
|
5
|
+
# Helper module to be mixed into Uddi4r::Connection
|
6
|
+
module SoapBuilder
|
7
|
+
# Create payload for given body (DOM element)
|
8
|
+
def create_payload(body)
|
9
|
+
content = REXML::Document.new()
|
10
|
+
content << REXML::XMLDecl.new("1.0", "utf-8")
|
11
|
+
envelope = REXML::Element.new("Envelope")
|
12
|
+
envelope.add_attribute("xmlns", "http://schemas.xmlsoap.org/soap/envelope/")
|
13
|
+
envelope << body
|
14
|
+
content << envelope
|
15
|
+
return content
|
16
|
+
end
|
17
|
+
|
18
|
+
# Creates tModelBag with key
|
19
|
+
def create_t_model_bag(keys)
|
20
|
+
bags = []
|
21
|
+
keys.each do |key|
|
22
|
+
t_model_bag = REXML::Element.new("tModelBag")
|
23
|
+
t_model_bag.add_element(create_element("tModelKey", key))
|
24
|
+
bags << t_model_bag
|
25
|
+
end
|
26
|
+
return bags
|
27
|
+
end
|
28
|
+
|
29
|
+
# Create element array
|
30
|
+
def create_elements(name, *values)
|
31
|
+
elems = []
|
32
|
+
values.each do |value|
|
33
|
+
elems << create_element(name, value)
|
34
|
+
end
|
35
|
+
return elems
|
36
|
+
end
|
37
|
+
|
38
|
+
# Create an empty DOM element for SOAP Body
|
39
|
+
def create_body
|
40
|
+
body = REXML::Element.new("Body")
|
41
|
+
end
|
42
|
+
|
43
|
+
# Create a template operation element for given name
|
44
|
+
def create_uddi_operation(name, attribs={})
|
45
|
+
operation = REXML::Element.new(name)
|
46
|
+
# set UDDI attributes
|
47
|
+
operation.add_attribute("generic",@version)
|
48
|
+
operation.add_attribute("xmlns",@uddi_namespace)
|
49
|
+
operation.add_attribute("maxRows",@max_rows) if @max_rows
|
50
|
+
# add passed attributes
|
51
|
+
attribs.each {|k,v| operation.add_attribute(k,v)}
|
52
|
+
return operation
|
53
|
+
end
|
54
|
+
|
55
|
+
# Create a DOM element for given name
|
56
|
+
def create_element(name, value=nil, attributes={})
|
57
|
+
elm = REXML::Element.new(name)
|
58
|
+
elm.text = value if value
|
59
|
+
attributes.each { |k,v| elm.add_attribute(k, v) }
|
60
|
+
return elm
|
61
|
+
end
|
62
|
+
|
63
|
+
# Create the operation for the SOAP body
|
64
|
+
# name:: Name of the element
|
65
|
+
# attribs:: Attributes for the element
|
66
|
+
# elements:: Sub elements varargs (items can be nil, Hash,
|
67
|
+
# Array of Hashes and REXML:Element)
|
68
|
+
def create_operation(name, attribs={}, *elements)
|
69
|
+
operation = create_uddi_operation(name, attribs)
|
70
|
+
elements.each do |elem|
|
71
|
+
add_element(operation, elem)
|
72
|
+
end
|
73
|
+
return operation
|
74
|
+
end
|
75
|
+
private
|
76
|
+
def add_element(operation, element)
|
77
|
+
return unless element
|
78
|
+
if element.is_a? Hash
|
79
|
+
element.each do |key,value|
|
80
|
+
operation.add_element(create_element(key,value)) if value
|
81
|
+
end
|
82
|
+
elsif element.is_a? Array
|
83
|
+
element.each { |e| add_element(operation, e) }
|
84
|
+
else
|
85
|
+
operation.add_element(element)
|
86
|
+
end
|
87
|
+
end
|
88
|
+
end
|
89
|
+
end
|
@@ -0,0 +1,40 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
3
|
+
<soap:Body>
|
4
|
+
<businessList generic="2.0" operator="ms.com" truncated="true" xmlns="urn:uddi-org:api_v2">
|
5
|
+
<businessInfos>
|
6
|
+
<businessInfo businessKey="c13cc7b2-642d-41d0-b2dd-7bb531a18997">
|
7
|
+
<name xml:lang="en">Microsoft DRMS Dev</name>
|
8
|
+
<serviceInfos>
|
9
|
+
<serviceInfo serviceKey="6166f8b2-436d-4001-9f68-f37ff8b47ea3" businessKey="c13cc7b2-642d-41d0-b2dd-7bb531a18997">
|
10
|
+
<name xml:lang="en">Certification</name>
|
11
|
+
</serviceInfo>
|
12
|
+
<serviceInfo serviceKey="7ae6c133-4471-4deb-93a5-1158aaa826b8" businessKey="c13cc7b2-642d-41d0-b2dd-7bb531a18997">
|
13
|
+
<name xml:lang="en">Machine Activation</name>
|
14
|
+
</serviceInfo>
|
15
|
+
<serv serviceKey="52616482-653c-45f3-ae08-e4d4ca8b66c2" businessKey="c13cc7b2-642d-41d0-b2dd-7bb531a18997">
|
16
|
+
<name xml:lang="en">Server Enrollment</name>
|
17
|
+
</serviceInfo>
|
18
|
+
<serviceInfo serviceKey="597ea82b-f005-4972-812b-d8434e58be89" businessKey="c13cc7b2-642d-41d0-b2dd-7bb531a18997">
|
19
|
+
<name xml:lang="en">Licensing</name>
|
20
|
+
</serviceInfo>
|
21
|
+
</serviceInfos>
|
22
|
+
</businessInfo>
|
23
|
+
<businessInfo businessKey="0e3d9bb8-b765-4a68-a329-51548685fed3">
|
24
|
+
<name xml:lang="en">Microsoft DRMS Isv</name>
|
25
|
+
<serviceInfos>
|
26
|
+
<serviceInfo serviceKey="3b9b66a8-f19c-4ece-90f9-d484abbeb803" businessKey="0e3d9bb8-b765-4a68-a329-51548685fed3">
|
27
|
+
<name xml:lang="en">Machine Activation</name>
|
28
|
+
</serviceInfo>
|
29
|
+
<serviceInfo serviceKey="a8261df2-8829-49c6-a9b8-14a1d8a58f1e" businessKey="0e3d9bb8-b765-4a68-a329-51548685fed3">
|
30
|
+
<name xml:lang="en">Certification</name>
|
31
|
+
</serviceInfo>
|
32
|
+
<serviceInfo serviceKey="c4f18db0-9748-41bd-87f6-142640a1fd42" businessKey="0e3d9bb8-b765-4a68-a329-51548685fed3">
|
33
|
+
<name xml:lang="en">Server Enrollment</name>
|
34
|
+
</serviceInfo>
|
35
|
+
</serviceInfos>
|
36
|
+
</businessInfo>
|
37
|
+
</businessInfos>
|
38
|
+
</businessList>
|
39
|
+
</soap:Body>
|
40
|
+
</soap:Envelope>
|
@@ -0,0 +1,31 @@
|
|
1
|
+
class UddiFixture
|
2
|
+
def self.method_missing(property)
|
3
|
+
return @Properties[property]
|
4
|
+
end
|
5
|
+
end
|
6
|
+
|
7
|
+
class MicrosoftUddi < UddiFixture
|
8
|
+
@Properties = {
|
9
|
+
:url=>"http://test.uddi.microsoft.com/inquire",
|
10
|
+
:opeartor=>"Microsoft",
|
11
|
+
:version=>"2.0",
|
12
|
+
:expected_business_names=>["Microsoft DRMS Dev", "Microsoft DRMS Isv"],
|
13
|
+
:business_name=>"Microsoft",
|
14
|
+
:business_key=>"c13cc7b2-642d-41d0-b2dd-7bb531a18997"
|
15
|
+
}
|
16
|
+
end
|
17
|
+
|
18
|
+
class XMethodsUddi < UddiFixture
|
19
|
+
@Properties = {
|
20
|
+
:url=>"http://uddi.xmethods.net/inquire",
|
21
|
+
:operator=>"XMethods",
|
22
|
+
:version=>"2.0",
|
23
|
+
:binding_key=>"9780B801-8CD0-EA03-D6C4-C211A1A46474",
|
24
|
+
:business_key=>"2BF938C6-BFFE-DA78-2AEA-78CA987D1C24",
|
25
|
+
:service_key=>"7CEAB5C2-D40E-1E0C-7942-99C64EF3C1ED",
|
26
|
+
:business_name=>"chaiwat",
|
27
|
+
:service_name=>"Temperature Convert",
|
28
|
+
:t_model_key=>"uuid:928A64AB-E277-32FA-0ABA-A28CE9E5E6A5",
|
29
|
+
:binding_key_2=>"39642DC0-BEB2-07A4-15C0-B3F087E064BC"
|
30
|
+
}
|
31
|
+
end
|
data/test/test_client.rb
ADDED
@@ -0,0 +1,141 @@
|
|
1
|
+
require "test/unit"
|
2
|
+
require "lib/connection"
|
3
|
+
require "lib/client"
|
4
|
+
require "lib/models"
|
5
|
+
require "test/fixtures/test_uddi_servers"
|
6
|
+
|
7
|
+
# Following test run against private UDDI registries. Internet connection
|
8
|
+
# is required. The tests will fail if the source registry is modified.
|
9
|
+
# To resolve, run with debugging and adjust the expected responses.
|
10
|
+
class TestClient < Test::Unit::TestCase
|
11
|
+
@@Report = false
|
12
|
+
@@Debug = false
|
13
|
+
@@UddiVersion = "2.0"
|
14
|
+
|
15
|
+
def uddi_for(fixture)
|
16
|
+
connection = Uddi4r::Connection.new(fixture.url, @@UddiVersion, @@Debug)
|
17
|
+
#connection = Uddi4r::Connection.new(nil, @@UddiVersion, @@Debug)
|
18
|
+
connection.max_rows = 2
|
19
|
+
uddi = Uddi4r::Client.new(connection)
|
20
|
+
return uddi
|
21
|
+
end
|
22
|
+
|
23
|
+
# Test finding a business by name and composed services
|
24
|
+
def test_find_business
|
25
|
+
fix = MicrosoftUddi
|
26
|
+
uddi = uddi_for(fix)
|
27
|
+
business_list = uddi.find_business(:name=>fix.business_name, :business_key=>fix.business_key)
|
28
|
+
businesses = business_list.business_infos
|
29
|
+
assert_equal(2, businesses.size)
|
30
|
+
businesses.each do |biz|
|
31
|
+
assert(fix.expected_business_names.include?(biz.name))
|
32
|
+
if @@Report
|
33
|
+
puts "Business #{biz.name}"
|
34
|
+
biz.service_infos.each { |svc| puts " - Service #{svc.name} - #{svc.service_key}" }
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
# Follow a drill-down use-case for business > service > binding
|
40
|
+
def test_drill_down
|
41
|
+
fix = XMethodsUddi
|
42
|
+
uddi = uddi_for(fix)
|
43
|
+
biz_list = uddi.find_business(:name=>fix.business_name)
|
44
|
+
biz = biz_list.business_infos.first
|
45
|
+
assert_equal(fix.business_name, biz.name)
|
46
|
+
service = biz.service_infos.first
|
47
|
+
assert_equal(fix.service_name, service.name)
|
48
|
+
assert_not_nil(service.service_key)
|
49
|
+
binding = uddi.find_binding(:service_key=>service.service_key,
|
50
|
+
:t_model_keys=>[fix.t_model_key])
|
51
|
+
assert_equal(fix.operator, binding.operator)
|
52
|
+
assert_not_nil(bt = binding.binding_template.first)
|
53
|
+
assert_equal("SOAP binding", bt.description)
|
54
|
+
assert_http_endpoint(bt.access_point)
|
55
|
+
end
|
56
|
+
|
57
|
+
# Find a service
|
58
|
+
def test_find_service
|
59
|
+
fix = XMethodsUddi
|
60
|
+
uddi = uddi_for(fix)
|
61
|
+
services = uddi.find_service(:name=>fix.service_name)
|
62
|
+
service = services.service_infos.first
|
63
|
+
assert_equal(fix.service_name, service.name)
|
64
|
+
assert_not_nil(service.service_key)
|
65
|
+
end
|
66
|
+
|
67
|
+
# Find related businesses
|
68
|
+
def test_find_related_business
|
69
|
+
fix = MicrosoftUddi
|
70
|
+
uddi = uddi_for(fix)
|
71
|
+
biz = uddi.find_business(:name=>fix.business_name).business_infos.first
|
72
|
+
related_biz = uddi.find_related_businesses(:business_key=>fix.business_key)
|
73
|
+
assert_not_nil(related_biz)
|
74
|
+
end
|
75
|
+
|
76
|
+
# Get binding detail
|
77
|
+
def test_get_binding_detail_single
|
78
|
+
fix = XMethodsUddi
|
79
|
+
uddi = uddi_for(fix)
|
80
|
+
binding = uddi.get_binding_detail(:binding_key=>fix.binding_key)
|
81
|
+
assert_not_nil(binding)
|
82
|
+
assert_http_endpoint(binding.binding_template.first.access_point)
|
83
|
+
end
|
84
|
+
|
85
|
+
# Get binding detail
|
86
|
+
def test_get_binding_detail_multi
|
87
|
+
fix = XMethodsUddi
|
88
|
+
uddi = uddi_for(fix)
|
89
|
+
bindings = uddi.get_binding_detail(:binding_keys=>[fix.binding_key, fix.binding_key_2])
|
90
|
+
assert_not_nil(bindings)
|
91
|
+
bts = bindings.binding_template
|
92
|
+
assert_http_endpoint(bts.first.access_point)
|
93
|
+
end
|
94
|
+
|
95
|
+
# Get the business details and validate all sub elements
|
96
|
+
def test_get_business_detail
|
97
|
+
fix = XMethodsUddi
|
98
|
+
uddi = uddi_for(fix)
|
99
|
+
assert_not_nil(bd = uddi.get_business_detail(:business_key=>fix.business_key))
|
100
|
+
assert_not_nil(be = bd.business_entity.first)
|
101
|
+
assert_equal(fix.business_name, be.name)
|
102
|
+
assert_not_nil(be.discovery_url)
|
103
|
+
assert_not_nil(bs = be.business_services.first)
|
104
|
+
assert_equal(fix.service_name, bs.name)
|
105
|
+
assert_not_nil(bt = bs.binding_templates.first)
|
106
|
+
assert_http_endpoint(bt.access_point)
|
107
|
+
assert_not_nil(tmi = bt.t_model_instance_details.first)
|
108
|
+
assert_not_nil(tmi.t_model_key)
|
109
|
+
end
|
110
|
+
|
111
|
+
# Get the tModel detail and validate all sub elements
|
112
|
+
def test_get_t_model_detail
|
113
|
+
fix = XMethodsUddi
|
114
|
+
uddi = uddi_for(fix)
|
115
|
+
assert_not_nil(bd = uddi.get_t_model_detail(:t_model_key=>fix.t_model_key))
|
116
|
+
assert_not_nil(t_model = bd.t_model.first)
|
117
|
+
assert_equal(fix.service_name, t_model.name)
|
118
|
+
assert_not_nil(t_model.description)
|
119
|
+
assert_not_nil(c_bag = t_model.category_bag)
|
120
|
+
assert_equal("uddi-org:types", c_bag.keyed_reference.first.key_name)
|
121
|
+
end
|
122
|
+
|
123
|
+
# Get the service detail and validate all sub elements
|
124
|
+
def test_service_detail
|
125
|
+
fix = XMethodsUddi
|
126
|
+
uddi = uddi_for(fix)
|
127
|
+
assert_not_nil(sd = uddi.get_service_detail(:service_key=>fix.service_key))
|
128
|
+
assert_not_nil(bs = sd.business_service.first)
|
129
|
+
assert_equal(fix.service_name, bs.name)
|
130
|
+
assert_not_nil(bt = bs.binding_templates.first)
|
131
|
+
assert_equal(fix.binding_key, bt.binding_key)
|
132
|
+
assert_equal(fix.t_model_key, bt.t_model_instance_details.first.t_model_key)
|
133
|
+
end
|
134
|
+
|
135
|
+
private
|
136
|
+
|
137
|
+
def assert_http_endpoint(url)
|
138
|
+
assert_equal("http://", url[0..6])
|
139
|
+
end
|
140
|
+
|
141
|
+
end
|
@@ -0,0 +1,34 @@
|
|
1
|
+
require "test/unit"
|
2
|
+
require "lib/connection"
|
3
|
+
|
4
|
+
class TestConnection < Test::Unit::TestCase
|
5
|
+
def setup
|
6
|
+
@TestUddiServer = "http://test.uddi.microsoft.com/inquire"
|
7
|
+
@conn = Uddi4r::Connection.new(@TestUddiServer)
|
8
|
+
end
|
9
|
+
|
10
|
+
def test_connection
|
11
|
+
assert_equal("UDDI connection: #{@TestUddiServer}: 2.0 ns:urn:uddi-org:api_v2",
|
12
|
+
@conn.to_s())
|
13
|
+
end
|
14
|
+
|
15
|
+
def test_create_body
|
16
|
+
body = @conn.create_body()
|
17
|
+
assert_equal("<Body/>", body.to_s())
|
18
|
+
end
|
19
|
+
|
20
|
+
def test_create_operation
|
21
|
+
op = @conn.create_operation("op", {"maxRows"=>"5"})
|
22
|
+
assert_equal("<op maxRows='5' generic='2.0' xmlns='urn:uddi-org:api_v2'/>", op.to_s())
|
23
|
+
end
|
24
|
+
|
25
|
+
def test_create_payload
|
26
|
+
body = @conn.create_body()
|
27
|
+
op = @conn.create_operation("op", {"maxRows"=>"5"})
|
28
|
+
body << op
|
29
|
+
pl = @conn.create_payload(body)
|
30
|
+
expected="<?xml version='1.0' encoding='UTF-8'?><Envelope xmlns='http://schemas.xmlsoap.org/soap/envelope/'><Body><op maxRows='5' generic='2.0' xmlns='urn:uddi-org:api_v2'/></Body></Envelope>"
|
31
|
+
assert_equal(expected, pl.to_s())
|
32
|
+
end
|
33
|
+
|
34
|
+
end
|
data/test/test_model.rb
ADDED
@@ -0,0 +1,34 @@
|
|
1
|
+
require "test/unit"
|
2
|
+
require "lib/models"
|
3
|
+
|
4
|
+
# Test marshalling of UDDI XML objects to Ruby
|
5
|
+
class TestModel < Test::Unit::TestCase
|
6
|
+
def test_business_info
|
7
|
+
xml = <<EOX
|
8
|
+
<businessList generic="2.0" operator="ms.com" truncated="true" xmlns="urn:uddi-org:api_v2">
|
9
|
+
<businessInfos>
|
10
|
+
<businessInfo businessKey="c13cc7b2-642d-41d0-b2dd-7bb531a18997">
|
11
|
+
<name xml:lang="en">Microsoft DRMS Dev</name>
|
12
|
+
<serviceInfos>
|
13
|
+
<serviceInfo serviceKey="6166f8b2-436d-4001-9f68-f37ff8b47ea3" businessKey="c13cc7b2-642d-41d0-b2dd-7bb531a18997">
|
14
|
+
<name xml:lang="en">Certification</name>
|
15
|
+
</serviceInfo>
|
16
|
+
<serviceInfo serviceKey="7ae6c133-4471-4deb-93a5-1158aaa826b8" businessKey="c13cc7b2-642d-41d0-b2dd-7bb531a18997">
|
17
|
+
<name xml:lang="en">Machine Activation</name>
|
18
|
+
</serviceInfo>
|
19
|
+
</serviceInfos>
|
20
|
+
</businessInfo>
|
21
|
+
</businessInfos>
|
22
|
+
</businessList>
|
23
|
+
EOX
|
24
|
+
list = Uddi4r::BusinessList.parse(xml)
|
25
|
+
assert_equal("ms.com", list.operator)
|
26
|
+
biz = list.business_infos.first
|
27
|
+
assert_equal("Microsoft DRMS Dev", biz.name)
|
28
|
+
assert_equal(2, biz.service_infos.size)
|
29
|
+
expected_services = ["Certification", "Machine Activation"]
|
30
|
+
biz.service_infos.each do | svc |
|
31
|
+
expected_services.include? svc.name
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
metadata
ADDED
@@ -0,0 +1,97 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
rubygems_version: 0.9.0
|
3
|
+
specification_version: 1
|
4
|
+
name: uddi4r
|
5
|
+
version: !ruby/object:Gem::Version
|
6
|
+
version: "0.7"
|
7
|
+
date: 2006-07-16 00:00:00 -04:00
|
8
|
+
summary: UDDI for Ruby
|
9
|
+
require_paths:
|
10
|
+
- lib
|
11
|
+
email:
|
12
|
+
homepage: http://uddi4r.rubyforge.org
|
13
|
+
rubyforge_project:
|
14
|
+
description: Uddi4r is a Ruby library designed to make it easier for Ruby developers to work with XML. Using simple annotations, it enables Ruby classes to be mapped to XML. ROXML takes care of the marshalling and unmarshalling of mapped attributes so that developers can focus on building first-class Ruby classes. As a result, ROXML simplifies the development of RESTful applications, Web Services, and XML-RPC.
|
15
|
+
autorequire: uddi4r
|
16
|
+
default_executable:
|
17
|
+
bindir: bin
|
18
|
+
has_rdoc: true
|
19
|
+
required_ruby_version: !ruby/object:Gem::Version::Requirement
|
20
|
+
requirements:
|
21
|
+
- - ">"
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: 0.0.0
|
24
|
+
version:
|
25
|
+
platform: ruby
|
26
|
+
signing_key:
|
27
|
+
cert_chain:
|
28
|
+
post_install_message:
|
29
|
+
authors:
|
30
|
+
- Zak Mandhro
|
31
|
+
files:
|
32
|
+
- lib/models.rb
|
33
|
+
- lib/soap_builder.rb
|
34
|
+
- lib/client.rb
|
35
|
+
- lib/connection.rb
|
36
|
+
- README
|
37
|
+
- test/test_model.rb
|
38
|
+
- test/test_client.rb
|
39
|
+
- test/fixtures
|
40
|
+
- test/test_connection.rb
|
41
|
+
- test/fixtures/business_service.xml
|
42
|
+
- test/fixtures/test_uddi_servers.rb
|
43
|
+
- doc/created.rid
|
44
|
+
- doc/rdoc-style.css
|
45
|
+
- doc/files
|
46
|
+
- doc/classes
|
47
|
+
- doc/fr_file_index.html
|
48
|
+
- doc/fr_class_index.html
|
49
|
+
- doc/fr_method_index.html
|
50
|
+
- doc/index.html
|
51
|
+
- doc/files/README.html
|
52
|
+
- doc/files/lib
|
53
|
+
- doc/files/lib/models_rb.html
|
54
|
+
- doc/files/lib/soap_builder_rb.html
|
55
|
+
- doc/files/lib/client_rb.html
|
56
|
+
- doc/files/lib/connection_rb.html
|
57
|
+
- doc/classes/Uddi4r.html
|
58
|
+
- doc/classes/Uddi4r
|
59
|
+
- doc/classes/Uddi4r/SoapBuilder.html
|
60
|
+
- doc/classes/Uddi4r/BindingDetail.html
|
61
|
+
- doc/classes/Uddi4r/ServiceList.html
|
62
|
+
- doc/classes/Uddi4r/BusinessList.html
|
63
|
+
- doc/classes/Uddi4r/FindQualifiers.html
|
64
|
+
- doc/classes/Uddi4r/IdentifierBag.html
|
65
|
+
- doc/classes/Uddi4r/OverviewDoc.html
|
66
|
+
- doc/classes/Uddi4r/KeyedReference.html
|
67
|
+
- doc/classes/Uddi4r/BindingTemplate.html
|
68
|
+
- doc/classes/Uddi4r/TModelInstanceInfo.html
|
69
|
+
- doc/classes/Uddi4r/Model.html
|
70
|
+
- doc/classes/Uddi4r/BusinessEntity.html
|
71
|
+
- doc/classes/Uddi4r/BusinessService.html
|
72
|
+
- doc/classes/Uddi4r/BusinessInfo.html
|
73
|
+
- doc/classes/Uddi4r/ServiceInfo.html
|
74
|
+
- doc/classes/Uddi4r/Client.html
|
75
|
+
- doc/classes/Uddi4r/RelatedBusinessesList.html
|
76
|
+
- doc/classes/Uddi4r/ServiceDetail.html
|
77
|
+
- doc/classes/Uddi4r/TModelDetail.html
|
78
|
+
- doc/classes/Uddi4r/Connection.html
|
79
|
+
- doc/classes/Uddi4r/TModelBag.html
|
80
|
+
- doc/classes/Uddi4r/DiscoveryURLs.html
|
81
|
+
- doc/classes/Uddi4r/TModel.html
|
82
|
+
- doc/classes/Uddi4r/CategoryBag.html
|
83
|
+
- doc/classes/Uddi4r/BusinessDetail.html
|
84
|
+
test_files:
|
85
|
+
- test/test_client.rb
|
86
|
+
rdoc_options: []
|
87
|
+
|
88
|
+
extra_rdoc_files: []
|
89
|
+
|
90
|
+
executables: []
|
91
|
+
|
92
|
+
extensions: []
|
93
|
+
|
94
|
+
requirements:
|
95
|
+
- roxml
|
96
|
+
dependencies: []
|
97
|
+
|