001    /**
002     * <copyright>
003     * </copyright>
004     *
005     * $Id$
006     */
007    package com.hammurapi.review;
008    
009    import com.hammurapi.party.Identity;
010    
011    import org.eclipse.emf.common.util.EList;
012    
013    /**
014     * <!-- begin-user-doc -->
015     * A representation of the model object '<em><b>Tool Version</b></em>'.
016     * <!-- end-user-doc -->
017     *
018     * <p>
019     * The following features are supported:
020     * <ul>
021     *   <li>{@link com.hammurapi.review.ToolVersion#getIdentity <em>Identity</em>}</li>
022     *   <li>{@link com.hammurapi.review.ToolVersion#getGoverns <em>Governs</em>}</li>
023     *   <li>{@link com.hammurapi.review.ToolVersion#getEnforces <em>Enforces</em>}</li>
024     *   <li>{@link com.hammurapi.review.ToolVersion#getTool <em>Tool</em>}</li>
025     * </ul>
026     * </p>
027     *
028     * @see com.hammurapi.review.ReviewPackage#getToolVersion()
029     * @model
030     * @generated
031     */
032    public interface ToolVersion extends GovernanaceObject {
033            /**
034             * Returns the value of the '<em><b>Identity</b></em>' containment reference list.
035             * The list contents are of type {@link com.hammurapi.party.Identity}.
036             * <!-- begin-user-doc -->
037             * <!-- end-user-doc -->
038             * <!-- begin-model-doc -->
039             * External version identities, e.g. registration number of the version in the company's inventory system.
040             * <!-- end-model-doc -->
041             * @return the value of the '<em>Identity</em>' containment reference list.
042             * @see com.hammurapi.review.ReviewPackage#getToolVersion_Identity()
043             * @model containment="true"
044             * @generated
045             */
046            EList<Identity> getIdentity();
047    
048            /**
049             * Returns the value of the '<em><b>Governs</b></em>' reference list.
050             * The list contents are of type {@link com.hammurapi.review.InspectorCategory}.
051             * It is bidirectional and its opposite is '{@link com.hammurapi.review.InspectorCategory#getGovernedBy <em>Governed By</em>}'.
052             * <!-- begin-user-doc -->
053             * <p>
054             * If the meaning of the '<em>Governs</em>' reference list isn't clear,
055             * there really should be more of a description here...
056             * </p>
057             * <!-- end-user-doc -->
058             * @return the value of the '<em>Governs</em>' reference list.
059             * @see com.hammurapi.review.ReviewPackage#getToolVersion_Governs()
060             * @see com.hammurapi.review.InspectorCategory#getGovernedBy
061             * @model opposite="governedBy"
062             * @generated
063             */
064            EList<InspectorCategory> getGoverns();
065    
066            /**
067             * Returns the value of the '<em><b>Enforces</b></em>' reference list.
068             * The list contents are of type {@link com.hammurapi.review.Governor}.
069             * It is bidirectional and its opposite is '{@link com.hammurapi.review.Governor#getEnforcedBy <em>Enforced By</em>}'.
070             * <!-- begin-user-doc -->
071             * <!-- end-user-doc -->
072             * <!-- begin-model-doc -->
073             * Inspectors (guidelines) and inspector sets enforced by this tool.
074             * <!-- end-model-doc -->
075             * @return the value of the '<em>Enforces</em>' reference list.
076             * @see com.hammurapi.review.ReviewPackage#getToolVersion_Enforces()
077             * @see com.hammurapi.review.Governor#getEnforcedBy
078             * @model opposite="enforcedBy"
079             * @generated
080             */
081            EList<Governor> getEnforces();
082    
083            /**
084             * Returns the value of the '<em><b>Tool</b></em>' container reference.
085             * It is bidirectional and its opposite is '{@link com.hammurapi.review.Tool#getVersions <em>Versions</em>}'.
086             * <!-- begin-user-doc -->
087             * <p>
088             * If the meaning of the '<em>Tool</em>' container reference isn't clear,
089             * there really should be more of a description here...
090             * </p>
091             * <!-- end-user-doc -->
092             * @return the value of the '<em>Tool</em>' container reference.
093             * @see #setTool(Tool)
094             * @see com.hammurapi.review.ReviewPackage#getToolVersion_Tool()
095             * @see com.hammurapi.review.Tool#getVersions
096             * @model opposite="versions" required="true" transient="false"
097             * @generated
098             */
099            Tool getTool();
100    
101            /**
102             * Sets the value of the '{@link com.hammurapi.review.ToolVersion#getTool <em>Tool</em>}' container reference.
103             * <!-- begin-user-doc -->
104             * <!-- end-user-doc -->
105             * @param value the new value of the '<em>Tool</em>' container reference.
106             * @see #getTool()
107             * @generated
108             */
109            void setTool(Tool value);
110    
111    } // ToolVersion