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.controller.sal.binding.model.api;
10 import java.util.List;
13 * Every Java interface has to be specified with:
15 * <li><code>package</code> that belongs into</li>
16 * <li><code>interface</code> name (with commentary that <b>SHOULD</b> be
17 * present to proper define interface and base <i>contracts</i> specified for
19 * <li><code>enum</code> and <code>constant</code> definitions (i.e. each
20 * constant definition is by default defined as <code>public static final</code>
21 * + type (either primitive or object) and constant name</li>
22 * <li><code>method definitions</code> with specified input parameters (with
23 * types) and return values</li>
26 * By the definition of the interface constant, enum and method definitions MUST
27 * be public, so there is no need to specify the scope of visibility.
31 public interface GeneratedType extends Type {
33 public Type getParentType();
35 public String getComment();
37 public List<AnnotationType> getAnnotations();
40 * Returns Set of all Enumerator definitions associated with interface.
42 * @return Set of all Enumerator definitions associated with interface.
44 public List<Enumeration> getEnumDefintions();
51 public List<Constant> getConstantDefinitions();
58 public List<MethodSignature> getMethodDefinitions();