Uploaded image for project: 'yangtools'
  1. yangtools
  2. YANGTOOLS-1348

Remove Binding-only constructs from YANG parser

XMLWordPrintable

    • Icon: Epic Epic
    • Resolution: Unresolved
    • Icon: Medium Medium
    • None
    • None
    • model-api, parser
    • Binding Damage

      We have a number of constructs which were introduced during the original PoC evaluation of Java Bindings. Some of these have performance implications on the parser, others serve to confuse users with aspects they should not care about.

      There are four distinct parts:

      1. AugmentationSchemaNode.getOriginalDefinition()
      2. DerivableSchemaNode, with its getOriginal()
      3. AddedByUsesAware, with its isAddedByUses()
      4. CopyableNode, with its isAugmenting()

      The first two are used exclusively by mdsal-binding runtime components (runtime-api and generator). As demonstrated by MDSAL-694, mdsal-binding-generator should have enough structural state to be able to have an internal replacement and provide the right details to BindingRuntimeTypes.

      The third is mostly used by the same MD-SAL runtime components, but also two obsolete components (wadl-generator in NETCONF and unified-html-generator in MD-SAL). Parser is giving enough information in DeclaredStatement and Effective}Statement and their layout for mdsal-binding-generator to reconstruct this information for its use and again forward it to BindingRuntimeTypes as needed.

      The fourth is more tricky, as it can be reconstructed like the third item, but there are users in NETCONF and RESTCONF, hence those need to be analyzed and a proper course of action be plotted.

            Unassigned Unassigned
            rovarga Robert Varga
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: