/* * 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.yangtools.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, DocumentedType { /** * 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 */ Type getParentType(); /** * Returns comment string associated with Generated Type. * * @return comment string associated with Generated Type. */ String getComment(); /** * Returns List of annotation definitions associated with generated type. * * @return List of annotation definitions associated with generated type. */ List getAnnotations(); /** * Returns true if The Generated Type is defined as abstract. * * @return true if The Generated Type is defined as abstract. */ boolean isAbstract(); /** * Returns List of Types that Generated Type will implement. * * @return List of Types that Generated Type will implement. */ List getImplements(); /** * Returns List of enclosing Generated Types. * * @return List of enclosing Generated Types. */ List getEnclosedTypes(); /** * Returns List of all Enumerator definitions associated with Generated * Type. * * @return List of all Enumerator definitions associated with Generated * Type. */ List getEnumerations(); /** * Returns List of Constant definitions associated with Generated Type. * * @return List of Constant definitions associated with Generated Type. */ List getConstantDefinitions(); /** * Returns List of Method Definitions associated with Generated Type. * * List does not contains getters and setters for properties. * * @return List of Method Definitions associated with Generated Type. */ List getMethodDefinitions(); /** * Returns List of Properties that are declared for Generated Transfer * Object. * * @return List of Properties that are declared for Generated Transfer * Object. */ List getProperties(); }