1 /* 2 * #%L 3 * EUGene :: EUGene 4 * %% 5 * Copyright (C) 2004 - 2010 CodeLutin 6 * %% 7 * This program is free software: you can redistribute it and/or modify 8 * it under the terms of the GNU Lesser General Public License as 9 * published by the Free Software Foundation, either version 3 of the 10 * License, or (at your option) any later version. 11 * 12 * This program is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Lesser Public License for more details. 16 * 17 * You should have received a copy of the GNU General Lesser Public 18 * License along with this program. If not, see 19 * <http://www.gnu.org/licenses/lgpl-3.0.html>. 20 * #L% 21 */ 22 23 package org.nuiton.eugene.models.object; 24 25 import org.nuiton.eugene.models.extension.tagvalue.WithTagValuesOrStereotypes; 26 27 import java.util.List; 28 29 /** 30 * ObjectModelElement. 31 * 32 * @author Cédric Pineau - pineau@codelutin.com 33 */ 34 public interface ObjectModelElement extends WithTagValuesOrStereotypes { 35 36 /** 37 * Returns the name of this element. 38 * 39 * @return the name of this element. 40 */ 41 String getName(); 42 43 /** 44 * Returns the element in which this element is defined, or null if there's none. 45 * 46 * @return the ObjectModelElement in which this element is defined, or null if there's none. 47 */ 48 ObjectModelElement getDeclaringElement(); 49 50 /** 51 * Returns the whole documentation associated with this element (description + source documentation). 52 * 53 * @return the whole documentation associated with this element. 54 */ 55 String getDocumentation(); 56 57 /** 58 * The description of this element is the upper part of the element's 59 * documentation. 60 * 61 * The other part of the document can be accessed with 62 * {@link #getSourceDocumentation()} 63 * 64 * @return the description associated with this element. 65 */ 66 String getDescription(); 67 68 /** 69 * Returns the source documentation part associated with this element. 70 * Source documentation is at end of documentation and are separated of 71 * over documentation by "--" 72 * 73 * @return the source documentation part associated with this element. 74 */ 75 String getSourceDocumentation(); 76 77 /** 78 * Return if this element has static declaration, only valid when 79 * getDeclaringElement is classifier. Not possible for the moment 80 * to have static innerClass (from XMI 1.2 and 2.1). 81 * 82 * @return true if element is static 83 */ 84 boolean isStatic(); 85 86 /** 87 * Returns all comments lied to this particular model element 88 * 89 * @return a List containing all comments for this element as Strings. 90 */ 91 List<String> getComments(); 92 93 } //ObjectModelElement