org.opendaylight.yangtools.openconfig.parser.OpenConfigHashedValueEffectiveStatementImpl Maven / Gradle / Ivy
/*
* Copyright (c) 2021 PANTHEON.tech, s.r.o. 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.openconfig.parser;
import com.google.common.collect.ImmutableList;
import org.eclipse.jdt.annotation.NonNull;
import org.opendaylight.yangtools.openconfig.model.api.OpenConfigHashedValueEffectiveStatement;
import org.opendaylight.yangtools.openconfig.model.api.OpenConfigHashedValueStatement;
import org.opendaylight.yangtools.yang.common.Empty;
import org.opendaylight.yangtools.yang.common.QName;
import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
import org.opendaylight.yangtools.yang.model.api.meta.StatementDefinition;
import org.opendaylight.yangtools.yang.model.spi.meta.AbstractEffectiveUnknownSchmemaNode;
import org.opendaylight.yangtools.yang.parser.spi.meta.EffectiveStmtCtx.Current;
final class OpenConfigHashedValueEffectiveStatementImpl
extends AbstractEffectiveUnknownSchmemaNode
implements OpenConfigHashedValueEffectiveStatement {
private final @NonNull StatementDefinition definition;
OpenConfigHashedValueEffectiveStatementImpl(final Current stmt,
final ImmutableList extends EffectiveStatement, ?>> substatements) {
super(stmt.declared(), stmt.argument(), stmt.history(), substatements);
definition = stmt.publicDefinition();
}
@Override
public QName getQName() {
return definition.getStatementName();
}
@Override
public StatementDefinition statementDefinition() {
return definition;
}
@Override
public OpenConfigHashedValueEffectiveStatement asEffectiveStatement() {
return this;
}
}