import org.opendaylight.yangtools.yang.common.QName;
import org.opendaylight.yangtools.yang.common.QNameModule;
import org.opendaylight.yangtools.yang.common.Revision;
+import org.opendaylight.yangtools.yang.common.XMLNamespace;
import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext;
-import org.opendaylight.yangtools.yang.model.parser.api.YangParser;
-import org.opendaylight.yangtools.yang.model.parser.api.YangParserException;
+import org.opendaylight.yangtools.yang.parser.api.YangParser;
+import org.opendaylight.yangtools.yang.parser.api.YangParserException;
import org.opendaylight.yangtools.yang.model.repo.api.YangTextSchemaSource;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
// specification of YANG module
private static final QNameModule CONFIG_MODULE = QNameModule.create(
- URI.create("urn:ietf:params:xml:ns:yang:config"), Revision.of("2020-12-08"));
+ XMLNamespace.of("urn:ietf:params:xml:ns:yang:config"), Revision.of("2020-12-08"));
// path to 'configuration' container (it is a root container)
private static final YangInstanceIdentifier CONFIGURATION_PATH = YangInstanceIdentifier.builder()
.node(QName.create(CONFIG_MODULE, "configuration"))
final EffectiveModelContext schemaContext = parser.buildEffectiveModel();
// (2) parsing of configuration into binding-independent format
- final NormalizedNode<?, ?> data = DomParser.parseJsonFile("/example.json", schemaContext);
+ final NormalizedNode data = DomParser.parseJsonFile("/example.json", schemaContext);
// (3) conversion into binding-aware format (md-sal codec needs to know about path on which data is placed)
final Configuration config = (Configuration) domContext.getBindingNormalizedNodeSerializer().fromNormalizedNode(CONFIGURATION_PATH, data)
// (4) printing some useful information
LOG.info("Value of 'config1': {}", config.getConfig1());
- LOG.info("Value of 'config2': {}", config.isConfig2());
+ LOG.info("Value of 'config2': {}", config.requireConfig2());
Objects.requireNonNull(config.getEntry()).forEach((entryKey, entry) ->
LOG.info("Value of '{}' setting: {}", entry.getSetting(), entry.getValue()));
}