| Class | SOAP::Header::HandlerSet |
| In: |
lib/soap/header/handlerset.rb
|
| Parent: | Object |
# File lib/soap/header/handlerset.rb, line 17
17: def initialize
18: @store = XSD::NamedElements.new
19: end
# File lib/soap/header/handlerset.rb, line 32
32: def delete(handler)
33: @store.delete(handler)
34: end
# File lib/soap/header/handlerset.rb, line 21
21: def dup
22: obj = HandlerSet.new
23: obj.store = @store.dup
24: obj
25: end
# File lib/soap/header/handlerset.rb, line 36
36: def include?(handler)
37: @store.include?(handler)
38: end
headers: SOAPHeaderItem enumerable object
# File lib/soap/header/handlerset.rb, line 48
48: def on_inbound(headers)
49: headers.each do |name, item|
50: handler = @store.find { |handler|
51: handler.elename == item.element.elename
52: }
53: if handler
54: handler.on_inbound_headeritem(item)
55: elsif item.mustunderstand
56: raise UnhandledMustUnderstandHeaderError.new(item.element.elename.to_s)
57: end
58: end
59: end
returns: Array of SOAPHeaderItem
# File lib/soap/header/handlerset.rb, line 41
41: def on_outbound
42: @store.collect { |handler|
43: handler.on_outbound_headeritem
44: }.compact
45: end