/* * Copyright (c) 2013 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.controller.sal.binding.model.api; import java.util.List; /** * Every Java interface has to be specified with: * * * By the definition of the interface constant, enum, * enclosed types and method definitions MUST * be public, so there is no need to specify the scope of visibility. */ public interface GeneratedType extends Type { /** * Returns the parent type if Generated Type is defined as enclosing type, * otherwise returns null * * @return the parent type if Generated Type is defined as enclosing type, * otherwise returns null */ public Type getParentType(); /** * Returns comment string associated with Generated Type. * * @return comment string associated with Generated Type. */ public String getComment(); /** * Returns List of annotation definitions associated with generated type. * * @return List of annotation definitions associated with generated type. */ public List getAnnotations(); /** * Returns true if The Generated Type is defined as abstract. * * @return true if The Generated Type is defined as abstract. */ public boolean isAbstract(); /** * Returns List of Types that Generated Type will implement. * * @return List of Types that Generated Type will implement. */ public List getImplements(); /** * Returns List of enclosing Generated Types. * * @return List of enclosing Generated Types. */ public List getEnclosedTypes(); /** * Returns List of all Enumerator definitions associated with Generated * Type. * * @return List of all Enumerator definitions associated with Generated * Type. */ public List getEnumerations(); /** * Returns List of Constant definitions associated with Generated Type. * * @return List of Constant definitions associated with Generated Type. */ public List getConstantDefinitions(); /** * Returns List of Method Definitions associated with Generated Type. * * @return List of Method Definitions associated with Generated Type. */ public List getMethodDefinitions(); }