2 * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
8 package org.opendaylight.mdsal.binding.model.api;
10 import java.util.List;
11 import org.opendaylight.yangtools.yang.model.api.DocumentedNode;
14 * Interface provide methods for reading data of enumeration class.
16 public interface Enumeration extends GeneratedType {
20 * Returns list of annotation definitions associated with enumeration type.
22 * @return list of annotation definitions associated with enumeration type.
26 List<AnnotationType> getAnnotations();
32 * Returns list of the couples - name and value.
34 * @return list of the enumeration pairs.
36 List<Pair> getValues();
39 * Formats enumeration according to rules of the programming language.
41 * @return string with source code in some programming language
43 String toFormattedString();
46 * Interface is used for reading enumeration item. It means item's name and
49 interface Pair extends DocumentedNode.WithStatus {
52 * Returns the name of the enumeration item as it is specified in the input yang.
54 * @return the name of the enumeration item as it is specified in the input yang.
59 * Returns the binding representation for the name of the enumeration item.
61 * @return the binding representation for the name of the enumeration item.
63 String getMappedName();
66 * Returns value of the enumeration item.
68 * @return the value of the enumeration item.