/* * Copyright (c) 2015 Cisco Systems, Inc. and others. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ package org.opendaylight.yangtools.yang.parser.stmt.rfc6020; import java.util.Collection; import org.opendaylight.yangtools.yang.model.api.meta.DeclaredStatement; import org.opendaylight.yangtools.yang.model.api.stmt.AugmentStatement; import org.opendaylight.yangtools.yang.model.api.stmt.BodyGroup; import org.opendaylight.yangtools.yang.model.api.stmt.ContactStatement; import org.opendaylight.yangtools.yang.model.api.stmt.DataDefinitionStatement; import org.opendaylight.yangtools.yang.model.api.stmt.DescriptionStatement; import org.opendaylight.yangtools.yang.model.api.stmt.DeviationStatement; import org.opendaylight.yangtools.yang.model.api.stmt.ExtensionStatement; import org.opendaylight.yangtools.yang.model.api.stmt.FeatureStatement; import org.opendaylight.yangtools.yang.model.api.stmt.GroupingStatement; import org.opendaylight.yangtools.yang.model.api.stmt.IdentityStatement; import org.opendaylight.yangtools.yang.model.api.stmt.ImportStatement; import org.opendaylight.yangtools.yang.model.api.stmt.IncludeStatement; import org.opendaylight.yangtools.yang.model.api.stmt.LinkageGroup; import org.opendaylight.yangtools.yang.model.api.stmt.MetaGroup; import org.opendaylight.yangtools.yang.model.api.stmt.NotificationStatement; import org.opendaylight.yangtools.yang.model.api.stmt.OrganizationStatement; import org.opendaylight.yangtools.yang.model.api.stmt.ReferenceStatement; import org.opendaylight.yangtools.yang.model.api.stmt.RevisionGroup; import org.opendaylight.yangtools.yang.model.api.stmt.RevisionStatement; import org.opendaylight.yangtools.yang.model.api.stmt.RpcStatement; import org.opendaylight.yangtools.yang.model.api.stmt.TypedefStatement; import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractDeclaredStatement; import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext; public abstract class AbstractRootStatement> extends AbstractDeclaredStatement implements LinkageGroup, MetaGroup, RevisionGroup, BodyGroup { protected AbstractRootStatement(StmtContext context) { super(context); } @Override public final Collection getImports() { return allDeclared(ImportStatement.class); } @Override public final Collection getIncludes() { return allDeclared(IncludeStatement.class); } @Override public DescriptionStatement getDescription() { return firstDeclared(DescriptionStatement.class); } @Override public ReferenceStatement getReference() { return firstDeclared(ReferenceStatement.class); } @Override public final OrganizationStatement getOrganization() { return firstDeclared(OrganizationStatement.class); } @Override public final ContactStatement getContact() { return firstDeclared(ContactStatement.class); } @Override public final Collection getRevisions() { return allDeclared(RevisionStatement.class); } @Override public final Collection getExtensions() { return allDeclared(ExtensionStatement.class); } @Override public final Collection getFeatures() { return allDeclared(FeatureStatement.class); } @Override public final Collection getIdentities() { return allDeclared(IdentityStatement.class); } @Override public Collection getTypedefs() { return allDeclared(TypedefStatement.class); } @Override public Collection getGroupings() { return allDeclared(GroupingStatement.class); } @Override public Collection getDataDefinitions() { return allDeclared(DataDefinitionStatement.class); } @Override public final Collection getAugments() { return allDeclared(AugmentStatement.class); } @Override public final Collection getRpcs() { return allDeclared(RpcStatement.class); } @Override public final Collection getNotifications() { return allDeclared(NotificationStatement.class); } @Override public final Collection getDeviations() { return allDeclared(DeviationStatement.class); } }