soap4r_es 0.0.8 → 0.0.10
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/lib/soap/mapping/encodedregistry.rb +4 -3
- data/lib/soap/mapping/literalregistry.rb +5 -0
- data/lib/soap/mapping/mapping.rb +1 -0
- data/lib/soap/rpc/router.rb +6 -2
- data/lib/soap/version.rb +1 -1
- data/lib/xsd/datatypes.rb +0 -1
- metadata +3 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 4fc1acea7a562334f9d5bc519fb7011f91d54043f0062f7d3db72d8e9319e656
|
4
|
+
data.tar.gz: fe5f31469bee8fba84a07a76f6bd2e482b853a9a17067f449512cde10733ffe2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 535c6147f813ac7dae0b15bdee9953dbf37c361adf553278e5dba7e3e7389d4accc8954d7810274731f7175571641d8b181b45a5f64c0f549a940dadaf3e20a0
|
7
|
+
data.tar.gz: 9abd9b0351b4e9b23db9eeeba7c11e0a9de4c750264e0c3d0bc9c8162cb0c4ab0054ae00021fd928df29767131495157d2f347106ad73e25ba4de7e404165c44
|
@@ -77,7 +77,7 @@ class EncodedRegistry
|
|
77
77
|
end
|
78
78
|
nil
|
79
79
|
end
|
80
|
-
|
80
|
+
#estrae i dati dall'XML di origine
|
81
81
|
def soap2obj(node, klass = nil)
|
82
82
|
if map = @soap2obj[node.class]
|
83
83
|
map.each do |obj_class, factory, info|
|
@@ -146,7 +146,7 @@ class EncodedRegistry
|
|
146
146
|
{:derived_class => true}],
|
147
147
|
[::Float, ::SOAP::SOAPFloat, BasetypeFactory,
|
148
148
|
{:derived_class => true}],
|
149
|
-
[::
|
149
|
+
[::Integer, ::SOAP::SOAPInt, FixnumFactory],
|
150
150
|
[::Integer, ::SOAP::SOAPInt, BasetypeFactory,
|
151
151
|
{:derived_class => true}],
|
152
152
|
[::Integer, ::SOAP::SOAPLong, BasetypeFactory,
|
@@ -212,7 +212,7 @@ class EncodedRegistry
|
|
212
212
|
{:derived_class => true}],
|
213
213
|
[::Float, ::SOAP::SOAPFloat, BasetypeFactory,
|
214
214
|
{:derived_class => true}],
|
215
|
-
[::
|
215
|
+
[::Integer, ::SOAP::SOAPInt, FixnumFactory],
|
216
216
|
[::Integer, ::SOAP::SOAPInt, BasetypeFactory,
|
217
217
|
{:derived_class => true}],
|
218
218
|
[::Integer, ::SOAP::SOAPLong, BasetypeFactory,
|
@@ -375,6 +375,7 @@ private
|
|
375
375
|
conv, obj = @rubytype_factory.soap2obj(nil, node, nil, self)
|
376
376
|
return obj if conv
|
377
377
|
end
|
378
|
+
#recupera il dato dall'xml in "obj" mentre con restituisce un boolean
|
378
379
|
conv, obj = @map.soap2obj(node)
|
379
380
|
return obj if conv
|
380
381
|
conv, obj = @default_factory.soap2obj(nil, node, nil, self)
|
@@ -224,6 +224,7 @@ private
|
|
224
224
|
# element name next
|
225
225
|
definition ||= schema_definition_from_elename(node.elename)
|
226
226
|
# class defined in parent type last
|
227
|
+
#Qui entra se obj_class non è nil e non è uno di quelli sopra... o meglio se definition non è vuota allora assegnerà gli elementi
|
227
228
|
if obj_class
|
228
229
|
definition ||= schema_definition_from_class(obj_class)
|
229
230
|
end
|
@@ -249,6 +250,7 @@ private
|
|
249
250
|
elsif obj_class < ::String and node.respond_to?(:text)
|
250
251
|
obj = obj_class.new(node.text)
|
251
252
|
else
|
253
|
+
#Qui crea l'istanza dell'oggetto e poi va ad aggiungere gli elementi alla classe
|
252
254
|
obj = Mapping.create_empty_object(obj_class)
|
253
255
|
add_elesoap2stubobj(node, obj, definition)
|
254
256
|
end
|
@@ -277,6 +279,7 @@ private
|
|
277
279
|
|
278
280
|
def add_elesoap2stubobj(node, obj, definition)
|
279
281
|
vars = {}
|
282
|
+
#Cicla su ogni elemento del nodo nella SOAP::Mapping::LiteralRegistry
|
280
283
|
node.each do |name, value|
|
281
284
|
item = definition.elements.find_element(value.elename)
|
282
285
|
if item
|
@@ -301,6 +304,8 @@ private
|
|
301
304
|
end
|
302
305
|
|
303
306
|
def elesoapchild2obj(value, eledef)
|
307
|
+
#Se è definita la proprità mapped_class allora entra qui dentro
|
308
|
+
#altrimenti se è un elemento singolo dovrebbe andare nell'Else
|
304
309
|
if eledef.mapped_class
|
305
310
|
if eledef.mapped_class.include?(::SOAP::SOAPBasetype)
|
306
311
|
base2obj(value, eledef.mapped_class)
|
data/lib/soap/mapping/mapping.rb
CHANGED
data/lib/soap/rpc/router.rb
CHANGED
@@ -33,6 +33,7 @@ class Router
|
|
33
33
|
attr_accessor :use_default_namespace
|
34
34
|
attr_accessor :external_ces
|
35
35
|
attr_reader :filterchain
|
36
|
+
attr_reader :original_request
|
36
37
|
|
37
38
|
def initialize(actor)
|
38
39
|
@actor = actor
|
@@ -46,6 +47,7 @@ class Router
|
|
46
47
|
@operation_by_qname = {}
|
47
48
|
@headerhandlerfactory = []
|
48
49
|
@filterchain = Filter::FilterChain.new
|
50
|
+
@original_request = nil
|
49
51
|
end
|
50
52
|
|
51
53
|
###
|
@@ -158,11 +160,12 @@ class Router
|
|
158
160
|
require 'soap/mapping/mapping'
|
159
161
|
def route(conn_data)
|
160
162
|
# we cannot set request_default_encodingsyle before parsing the content.
|
161
|
-
|
162
163
|
env = unmarshal(conn_data)
|
163
164
|
if env.nil?
|
164
165
|
raise ArgumentError.new("illegal SOAP marshal format")
|
165
166
|
end
|
167
|
+
#Qui ho inserito il raw_post che arriva
|
168
|
+
@original_request = conn_data.receive_string
|
166
169
|
op = lookup_operation(conn_data.soapaction, env)
|
167
170
|
#add_request_headerhandler(ServerAuthHeaderHandler)
|
168
171
|
|
@@ -177,7 +180,8 @@ require 'soap/mapping/mapping'
|
|
177
180
|
#ricavo l'handler configurato
|
178
181
|
my_handler = headerhandler.get_handler(@headerhandlerfactory[0])
|
179
182
|
#chiamo il metodo che mi ritorna l'oggetto
|
180
|
-
header_soap =
|
183
|
+
header_soap = nil
|
184
|
+
header_soap = my_handler.on_mapping_outbound if my_handler
|
181
185
|
soap_response = op.call(env, header_soap, @mapping_registry, @literal_mapping_registry,
|
182
186
|
create_mapping_opt)
|
183
187
|
conn_data.is_fault = true if soap_response.is_a?(SOAPFault)
|
data/lib/soap/version.rb
CHANGED
data/lib/xsd/datatypes.rb
CHANGED
@@ -609,7 +609,6 @@ class XSDDateTime < XSDAnySimpleType
|
|
609
609
|
private
|
610
610
|
|
611
611
|
def screen_data_str(t)
|
612
|
-
debugger
|
613
612
|
/^([+\-]?\d{4,})-(\d\d)-(\d\d)T(\d\d):(\d\d):(\d\d(?:\.(\d*))?)(Z|(?:[+\-]\d\d:\d\d)?)?$/ =~ t.to_s.strip
|
614
613
|
unless Regexp.last_match
|
615
614
|
raise ValueSpaceError.new("#{ type }: cannot accept '#{ t }'.")
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: soap4r_es
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Laurence A. Lee, Hiroshi NAKAMURA, Fabiano Pavan
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-09-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: httpclient
|
@@ -231,8 +231,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
231
231
|
version: '0'
|
232
232
|
requirements:
|
233
233
|
- none
|
234
|
-
|
235
|
-
rubygems_version: 2.4.6
|
234
|
+
rubygems_version: 3.2.3
|
236
235
|
signing_key:
|
237
236
|
specification_version: 4
|
238
237
|
summary: Soap4R-ng - Soap4R (as maintained by RubyJedi) for Ruby 1.8 thru 2.1 and
|