Sha256: cd369ac86f56cbb4bdb874f9848b215f8fe35737aa165d9bf930ea996065d948
Contents?: true
Size: 991 Bytes
Versions: 3
Compression:
Stored size: 991 Bytes
Contents
require 'data_provider' class XsdExplanationProvider include DataProvider::Base provider_missing do raise 'XsdExplanationProvider needs an xsd reader' if (reader = get_data(:xsd_reader)).nil? logger.debug "XsdExplanationProvider got provider id: #{missing_provider}" item = reader[missing_provider] if item.is_a?(XsdReader::Attribute) item.type elsif item.is_a?(XsdReader::Element) && item.child_elements? # return self, the data provider, so the populator can continue with the child elements self elsif item if item.complex_type && item.complex_type.simple_content && item.complex_type.simple_content.extension item.complex_type.simple_content.extension.base else item.type end else logger.warn "XsdExplanationProvider could not find XSD information for provider `#{missing_provider.inspect}` in XSD file `#{reader.options[:xsd_file]}`" nil end end end # class XsdExplanationProvider
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
xsd-populator-0.2.1 | lib/xsd_explanation_provider.rb |
xsd-populator-0.2.0 | lib/xsd_explanation_provider.rb |
xsd-populator-0.1.0 | lib/xsd_explanation_provider.rb |