-
For Removal Element Description org.opendaylight.yangtools.yang.model.api.AugmentationSchemaNode.getOriginalDefinition() This method has only a single user, who should be able to do without it.org.opendaylight.yangtools.yang.model.api.DataSchemaNode.isConfiguration() UseDataSchemaNode.effectiveConfig()
instead.org.opendaylight.yangtools.yang.model.api.DerivableSchemaNode This interface's sole purpose is to aid MD-SAL binding generator, which is now in a position to provide to implement its logic without this interface.org.opendaylight.yangtools.yang.model.api.SchemaNode.getPath() The idea of identifying SchemaNodes through a global path does not work. There are two problems:- SchemaPath does not work because it does not discern namespaces, i.e. we do not known whether
the
QName
refers to agrouping
, atypedef
or acontainer
. - Such a path needs to be maintained by each SchemaNode and requires us to instantiate each
effective statement as a separate object (because
SchemaNode.getPath()
is effectively an identity within a givenEffectiveModelContext
.
EffectiveStatementInference
and its ecosystem. This method is scheduled for removal in the next major release.org.opendaylight.yangtools.yang.model.api.stmt.SchemaNodeIdentifier.asSchemaPath() This method is scheduled for removal along withSchemaPath
. This method performs memoization, which should not be needed most of the time. If you need memoization, you probably can do better, as you probably want to attach more state. If you just need a SchemaPath, useSchemaPath.of(SchemaNodeIdentifier)
instead.org.opendaylight.yangtools.yang.model.api.UnknownSchemaNode.getExtensionDefinition() This method is can cause cyclic dependencies in the object graph. UseSchemaContext.getExtensions()
withUnknownSchemaNode.getNodeType()
instead. - SchemaPath does not work because it does not discern namespaces, i.e. we do not known whether
the
-
Interfaces Interface Description org.opendaylight.yangtools.yang.model.api.AddedByUsesAware The only user of this trait is MD-SAL's binding component. As such, we provide enough information in EffectiveStatement tree to reconstruct this information.org.opendaylight.yangtools.yang.model.api.DerivableSchemaNode This interface's sole purpose is to aid MD-SAL binding generator, which is now in a position to provide to implement its logic without this interface.
-
Classes Class Description org.opendaylight.yangtools.yang.model.api.SchemaPath This path is not really unique, as it does not handle YANG namespace overlap correctly. There are two different replacements for this class:SchemaNodeIdentifier
for use in YANG schema addressing contextsEffectiveStatementInference
for use in contexts where the intent is to exchange pointer to a specific statement. Unlike SchemaPath, though, it does not require additional lookup in most cases