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%2Ftype%2FBinaryEffectiveStatementImpl.java;fp=yang%2Fyang-parser-impl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fyangtools%2Fyang%2Fparser%2Fstmt%2Frfc6020%2Feffective%2Ftype%2FBinaryEffectiveStatementImpl.java;h=3e94190e508cd7b11912e035b1441e5ac9d1806f;hb=30c67c4d780e897d972d60bb79d546b512516f90;hp=0000000000000000000000000000000000000000;hpb=1f53275ab208027b01a60c697f576ce9fca7db22;p=yangtools.git diff --git a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/effective/type/BinaryEffectiveStatementImpl.java b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/effective/type/BinaryEffectiveStatementImpl.java new file mode 100644 index 0000000000..3e94190e50 --- /dev/null +++ b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/effective/type/BinaryEffectiveStatementImpl.java @@ -0,0 +1,92 @@ +package org.opendaylight.yangtools.yang.parser.stmt.rfc6020.effective.type; + +import org.opendaylight.yangtools.yang.parser.stmt.rfc6020.effective.EffectiveStatementBase; + +import com.google.common.base.Optional; +import java.util.Collections; +import java.util.List; +import org.opendaylight.yangtools.yang.common.QName; +import org.opendaylight.yangtools.yang.common.YangConstants; +import org.opendaylight.yangtools.yang.model.api.SchemaPath; +import org.opendaylight.yangtools.yang.model.api.Status; +import org.opendaylight.yangtools.yang.model.api.UnknownSchemaNode; +import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement; +import org.opendaylight.yangtools.yang.model.api.stmt.TypeStatement; +import org.opendaylight.yangtools.yang.model.api.type.BinaryTypeDefinition; +import org.opendaylight.yangtools.yang.model.api.type.LengthConstraint; +import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext; + +public class BinaryEffectiveStatementImpl extends + EffectiveStatementBase implements + BinaryTypeDefinition { + + private static final String DESCRIPTION = "The binary built-in type represents any binary data, i.e., a sequence of octets."; + private static final String REFERENCE = "https://tools.ietf.org/html/rfc6020#section-9.8"; + private static final String UNITS = ""; + + private final static QName QNAME = QName.create( + YangConstants.RFC6020_YANG_MODULE, "binary"); + + private final static SchemaPath PATH = SchemaPath.create(true, QNAME); + private final List defaultValue = Collections.emptyList(); + private final List lengthConstraints; + + public BinaryEffectiveStatementImpl( + final StmtContext> ctx) { + super(ctx); + + final LengthConstraint lengthConstraint = new LengthConstraintEffectiveImpl( + 0, Long.MAX_VALUE, Optional.of(""), Optional.of("")); + lengthConstraints = Collections.singletonList(lengthConstraint); + } + + @Override + public List getLengthConstraints() { + return lengthConstraints; + } + + @Override + public BinaryTypeDefinition getBaseType() { + return null; + } + + @Override + public String getUnits() { + return UNITS; + } + + @Override + public Object getDefaultValue() { + return defaultValue; + } + + @Override + public QName getQName() { + return QNAME; + } + + @Override + public SchemaPath getPath() { + return PATH; + } + + @Override + public List getUnknownSchemaNodes() { + return Collections.emptyList(); + } + + @Override + public String getDescription() { + return DESCRIPTION; + } + + @Override + public String getReference() { + return REFERENCE; + } + + @Override + public Status getStatus() { + return Status.CURRENT; + } +}