require 'soap/element'
module SOAP
module Header
class Handler
attr_reader :elename
attr_reader :mustunderstand
attr_reader :encodingstyle
def initialize(elename)
@elename = elename
@mustunderstand = false
@encodingstyle = nil
end
def on_outbound
nil
end
def on_inbound(header, mustunderstand = false)
end
def on_outbound_headeritem
item = on_outbound
if item.nil?
nil
elsif item.is_a?(::SOAP::SOAPHeaderItem)
item.elename = @elename
item
else
item.elename = @elename
::SOAP::SOAPHeaderItem.new(item, @mustunderstand, @encodingstyle)
end
end
def on_inbound_headeritem(header)
on_inbound(header.element, header.mustunderstand)
end
end
end
end