X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=yang%2Fyang-parser-impl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fyangtools%2Fyang%2Fparser%2Fstmt%2Frfc6020%2Feffective%2FAbstractEffectiveDocumentedNode.java;h=39a7adabc2c1f9aa74feb3ecd0065ad47105b466;hb=de990fa7c7840a1ac964a48f00aff1358eaec562;hp=23ecee547575ec4853e1d7ee725c5f45e2e73cb4;hpb=6af38a495f688cbfa0ff2c09db7e62e4d530bb3a;p=yangtools.git diff --git a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/effective/AbstractEffectiveDocumentedNode.java b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/effective/AbstractEffectiveDocumentedNode.java index 23ecee5475..39a7adabc2 100644 --- a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/effective/AbstractEffectiveDocumentedNode.java +++ b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/effective/AbstractEffectiveDocumentedNode.java @@ -1,4 +1,4 @@ -/** +/* * Copyright (c) 2015 Cisco Systems, Inc. and others. All rights reserved. * * This program and the accompanying materials are made available under the @@ -7,36 +7,52 @@ */ package org.opendaylight.yangtools.yang.parser.stmt.rfc6020.effective; -import org.opendaylight.yangtools.yang.model.api.meta.DeclaredStatement; - -import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext; import org.opendaylight.yangtools.yang.model.api.DocumentedNode; import org.opendaylight.yangtools.yang.model.api.Status; +import org.opendaylight.yangtools.yang.model.api.meta.DeclaredStatement; +import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext; -public abstract class AbstractEffectiveDocumentedNode> - extends EffectiveStatementBase implements DocumentedNode { +abstract class AbstractEffectiveDocumentedNode> + extends DeclaredEffectiveStatementBase implements DocumentedNode { private final String description; private final String reference; private final Status status; - AbstractEffectiveDocumentedNode(final StmtContext ctx) { + /** + * Constructor. + * + * @param ctx + * context of statement. + */ + protected AbstractEffectiveDocumentedNode(final StmtContext ctx) { super(ctx); DescriptionEffectiveStatementImpl descStmt = firstEffective(DescriptionEffectiveStatementImpl.class); if (descStmt != null) { description = descStmt.argument(); - } else - description = ""; + } else { + description = null; + } ReferenceEffectiveStatementImpl refStmt = firstEffective(ReferenceEffectiveStatementImpl.class); if (refStmt != null) { reference = refStmt.argument(); - } else - reference = ""; + } else { + RevisionEffectiveStatementImpl revision = firstEffective(RevisionEffectiveStatementImpl.class); + if (revision != null) { + reference = revision.getReference(); + } else { + reference = null; + } + } - // :TODO - status = null; + StatusEffectiveStatementImpl statusStmt = firstEffective(StatusEffectiveStatementImpl.class); + if (statusStmt != null) { + status = statusStmt.argument(); + } else { + status = Status.CURRENT; + } } @Override