Class: WsdlMapper::DomParsing::Parser
- Inherits:
-
ParserBase
- Object
- Parsing::Base
- ParserBase
- WsdlMapper::DomParsing::Parser
- Includes:
- Xsd
- Defined in:
- lib/wsdl_mapper/dom_parsing/parser.rb
Defined Under Namespace
Classes: InvalidNsException, InvalidRootException, ParserException
Constant Summary
Constants included from Xsd
Xsd::ALL, Xsd::ANNOTATION, Xsd::ANY_ATTRIBUTE, Xsd::APPINFO, Xsd::ATTRIBUTE, Xsd::ATTRIBUTE_FORM_DEFAULT, Xsd::CHOICE, Xsd::COMPLEX_CONTENT, Xsd::COMPLEX_TYPE, Xsd::DEFAULT_BOUNDS, Xsd::DOCUMENTATION, Xsd::ELEMENT, Xsd::ELEMENT_FORM_DEFAULT, Xsd::ENUMERATION, Xsd::EXTENSION, Xsd::FRACTION_DIGITS, Xsd::IMPORT, Xsd::MAX_INCLUSIVE, Xsd::MAX_LENGTH, Xsd::MIN_INCLUSIVE, Xsd::MIN_LENGTH, Xsd::NS, Xsd::PATTERN, Xsd::RESTRICTION, Xsd::SCHEMA, Xsd::SEQUENCE, Xsd::SIMPLE_CONTENT, Xsd::SIMPLE_TYPE, Xsd::TOTAL_DIGITS, Xsd::UNIQUE
Constants inherited from Parsing::Base
Parsing::Base::NS_DECL_PREFIX, Parsing::Base::TARGET_NS
Instance Attribute Summary collapse
-
#default_namespace ⇒ Object
readonly
Returns the value of attribute default_namespace.
-
#import_resolver ⇒ Object
readonly
Returns the value of attribute import_resolver.
-
#log_msgs ⇒ Object
readonly
Returns the value of attribute log_msgs.
-
#namespaces ⇒ Object
readonly
Returns the value of attribute namespaces.
-
#parsers ⇒ Object
readonly
Returns the value of attribute parsers.
-
#schema ⇒ Object
readonly
Returns the value of attribute schema.
-
#target_namespace ⇒ Object
readonly
Returns the value of attribute target_namespace.
Instance Method Summary collapse
- #dup ⇒ WsdlMapper::DomParsing::Parser
-
#initialize(import_resolver: nil) ⇒ Parser
constructor
A new instance of Parser.
- #parse(doc, parse_only: false) ⇒ WsdlMapper::Dom::Schema
Methods inherited from Parsing::Base
Methods included from Parsing::Logging
Constructor Details
#initialize(import_resolver: nil) ⇒ Parser
Returns a new instance of Parser.
27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/wsdl_mapper/dom_parsing/parser.rb', line 27 def initialize(import_resolver: nil) @base = self @schema = WsdlMapper::Dom::Schema.new @parsers = { COMPLEX_TYPE => ComplexTypeParser.new(self), ANNOTATION => AnnotationParser.new(self), SIMPLE_TYPE => SimpleTypeParser.new(self), IMPORT => ImportParser.new(self), ELEMENT => ElementParser.new(self), ATTRIBUTE => AttributeParser.new(self) } @import_resolver = import_resolver @namespaces = Namespaces.new @target_namespace = nil @default_namespace = nil @linker = Linker.new schema end |
Instance Attribute Details
#default_namespace ⇒ Object (readonly)
Returns the value of attribute default_namespace.
24 25 26 |
# File 'lib/wsdl_mapper/dom_parsing/parser.rb', line 24 def default_namespace @default_namespace end |
#import_resolver ⇒ Object (readonly)
Returns the value of attribute import_resolver.
24 25 26 |
# File 'lib/wsdl_mapper/dom_parsing/parser.rb', line 24 def import_resolver @import_resolver end |
#log_msgs ⇒ Object (readonly)
Returns the value of attribute log_msgs.
24 25 26 |
# File 'lib/wsdl_mapper/dom_parsing/parser.rb', line 24 def log_msgs @log_msgs end |
#namespaces ⇒ Object (readonly)
Returns the value of attribute namespaces.
24 25 26 |
# File 'lib/wsdl_mapper/dom_parsing/parser.rb', line 24 def namespaces @namespaces end |
#parsers ⇒ Object (readonly)
Returns the value of attribute parsers.
24 25 26 |
# File 'lib/wsdl_mapper/dom_parsing/parser.rb', line 24 def parsers @parsers end |
#schema ⇒ Object (readonly)
Returns the value of attribute schema.
24 25 26 |
# File 'lib/wsdl_mapper/dom_parsing/parser.rb', line 24 def schema @schema end |
#target_namespace ⇒ Object (readonly)
Returns the value of attribute target_namespace.
24 25 26 |
# File 'lib/wsdl_mapper/dom_parsing/parser.rb', line 24 def target_namespace @target_namespace end |
Instance Method Details
#dup ⇒ WsdlMapper::DomParsing::Parser
64 65 66 |
# File 'lib/wsdl_mapper/dom_parsing/parser.rb', line 64 def dup self.class.new import_resolver: @import_resolver end |
#parse(doc, parse_only: false) ⇒ WsdlMapper::Dom::Schema
49 50 51 52 53 54 55 56 57 58 59 60 61 |
# File 'lib/wsdl_mapper/dom_parsing/parser.rb', line 49 def parse(doc, parse_only: false) # Phase 1: Parsing parse_doc doc # Phase 2: Linking unless parse_only @linker.link end collect_logs @schema end |