001    /**
002     * <copyright>
003     * </copyright>
004     *
005     * $Id$
006     */
007    package com.hammurapi.review;
008    
009    import com.hammurapi.config.Named;
010    import com.hammurapi.config.Factory;
011    import com.hammurapi.config.NamedObjectDefinition;
012    
013    import org.eclipse.emf.common.util.EList;
014    
015    /**
016     * <!-- begin-user-doc -->
017     * A representation of the model object '<em><b>Governor</b></em>'.
018     * <!-- end-user-doc -->
019     *
020     * <!-- begin-model-doc -->
021     * Base interface for inspectors and inspector sets.
022     * <!-- end-model-doc -->
023     *
024     * <p>
025     * The following features are supported:
026     * <ul>
027     *   <li>{@link com.hammurapi.review.Governor#getLanguageModules <em>Language Modules</em>}</li>
028     *   <li>{@link com.hammurapi.review.Governor#getEnforcedBy <em>Enforced By</em>}</li>
029     * </ul>
030     * </p>
031     *
032     * @see com.hammurapi.review.ReviewPackage#getGovernor()
033     * @model interface="true" abstract="true"
034     * @generated
035     */
036    public interface Governor extends NamedObjectDefinition {
037            /**
038             * Returns the value of the '<em><b>Language Modules</b></em>' reference list.
039             * The list contents are of type {@link com.hammurapi.config.Named}.
040             * <!-- begin-user-doc -->
041             * <!-- end-user-doc -->
042             * <!-- begin-model-doc -->
043             * Language modules which this governor depends on. This information is used only for documentation purposes.
044             * <!-- end-model-doc -->
045             * @return the value of the '<em>Language Modules</em>' reference list.
046             * @see com.hammurapi.review.ReviewPackage#getGovernor_LanguageModules()
047             * @model
048             * @generated
049             */
050            EList<Named> getLanguageModules();
051    
052            /**
053             * Returns the value of the '<em><b>Enforced By</b></em>' reference list.
054             * The list contents are of type {@link com.hammurapi.review.ToolVersion}.
055             * It is bidirectional and its opposite is '{@link com.hammurapi.review.ToolVersion#getEnforces <em>Enforces</em>}'.
056             * <!-- begin-user-doc -->
057             * <!-- end-user-doc -->
058             * <!-- begin-model-doc -->
059             * Tools versions which enforce this inspector (guideline) or inspector set.
060             * <!-- end-model-doc -->
061             * @return the value of the '<em>Enforced By</em>' reference list.
062             * @see com.hammurapi.review.ReviewPackage#getGovernor_EnforcedBy()
063             * @see com.hammurapi.review.ToolVersion#getEnforces
064             * @model opposite="enforces"
065             * @generated
066             */
067            EList<ToolVersion> getEnforcedBy();
068    
069    } // Governor