Commit 1e1f9c89 authored by Ådne Karstad's avatar Ådne Karstad

[minor] Add generated code

parent fb7cd75e
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: tdt4250.spp.model
Bundle-SymbolicName: tdt4250.spp.model; singleton:=true
Bundle-Name: %pluginName
Bundle-SymbolicName: tdt4250.spp.model;singleton:=true
Automatic-Module-Name: tdt4250.spp.model
Bundle-Version: 0.1.0.qualifier
Require-Bundle: org.eclipse.emf.ecore
Bundle-ClassPath: .
Bundle-Vendor: %providerName
Bundle-Localization: plugin
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Export-Package: tdt4250.spp,
tdt4250.spp.impl,
tdt4250.spp.util
Require-Bundle: org.eclipse.core.runtime,
org.eclipse.emf.ecore;visibility:=reexport
Bundle-ActivationPolicy: lazy
#
bin.includes = .,\
model/,\
META-INF/,\
plugin.xml,\
plugin.properties
jars.compile.order = .
source.. = src/
output.. = bin/
......@@ -17,6 +17,9 @@
eOpposite="#//University/institutes"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Program">
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="needsEnoughSemesters semestersNeedToBeUniqueByYearAndSeason"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="duration" eType="#//LevelType"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="semesters" upperBound="-1"
......@@ -30,8 +33,8 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Semester">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="season" eType="#//SeasonType"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="year" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
defaultValueLiteral=""/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="year" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"
defaultValueLiteral="1"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="program" eType="#//Program"
eOpposite="#//Program/semesters"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="selectedCourses" upperBound="-1"
......
<?xml version="1.0" encoding="UTF-8"?>
<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/tdt4250.spp.model/src" modelPluginID="tdt4250.spp.model"
modelName="Spp" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
importerID="org.eclipse.emf.importer.ecore" complianceLevel="8.0" copyrightFields="false"
operationReflection="true" importOrganizing="true">
<foreignModel>spp.ecore</foreignModel>
<genPackages prefix="Spp" basePackage="tdt4250" disposableProviderFactory="true"
ecorePackage="spp.ecore#/">
<genEnums typeSafeEnumCompatible="false" ecoreEnum="spp.ecore#//LevelType">
<genEnumLiterals ecoreEnumLiteral="spp.ecore#//LevelType/Bachelor"/>
<genEnumLiterals ecoreEnumLiteral="spp.ecore#//LevelType/Master"/>
<genEnumLiterals ecoreEnumLiteral="spp.ecore#//LevelType/IntegratedMasters"/>
</genEnums>
<genEnums typeSafeEnumCompatible="false" ecoreEnum="spp.ecore#//SeasonType">
<genEnumLiterals ecoreEnumLiteral="spp.ecore#//SeasonType/Fall"/>
<genEnumLiterals ecoreEnumLiteral="spp.ecore#//SeasonType/Spring"/>
<genEnumLiterals ecoreEnumLiteral="spp.ecore#//SeasonType/Both"/>
</genEnums>
<genEnums typeSafeEnumCompatible="false" ecoreEnum="spp.ecore#//CourseLevelType">
<genEnumLiterals ecoreEnumLiteral="spp.ecore#//CourseLevelType/FoundationCourse"/>
<genEnumLiterals ecoreEnumLiteral="spp.ecore#//CourseLevelType/IntermediateCourse"/>
<genEnumLiterals ecoreEnumLiteral="spp.ecore#//CourseLevelType/ThirdYearCourse"/>
<genEnumLiterals ecoreEnumLiteral="spp.ecore#//CourseLevelType/SecoundDegreeCourse"/>
</genEnums>
<genClasses ecoreClass="spp.ecore#//University">
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference spp.ecore#//University/programs"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute spp.ecore#//University/name"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference spp.ecore#//University/institutes"/>
</genClasses>
<genClasses ecoreClass="spp.ecore#//Institute">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute spp.ecore#//Institute/name"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference spp.ecore#//Institute/courses"/>
<genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference spp.ecore#//Institute/university"/>
</genClasses>
<genClasses ecoreClass="spp.ecore#//Program">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute spp.ecore#//Program/name"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute spp.ecore#//Program/duration"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference spp.ecore#//Program/semesters"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference spp.ecore#//Program/specialisation"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference spp.ecore#//Program/mandatoryCourses"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference spp.ecore#//Program/electiveCourses"/>
</genClasses>
<genClasses ecoreClass="spp.ecore#//Semester">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute spp.ecore#//Semester/season"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute spp.ecore#//Semester/year"/>
<genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference spp.ecore#//Semester/program"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference spp.ecore#//Semester/selectedCourses"/>
</genClasses>
<genClasses ecoreClass="spp.ecore#//Course">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute spp.ecore#//Course/code"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute spp.ecore#//Course/name"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute spp.ecore#//Course/credits"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute spp.ecore#//Course/level"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute spp.ecore#//Course/season"/>
<genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference spp.ecore#//Course/responsibleUnit"/>
</genClasses>
<genClasses ecoreClass="spp.ecore#//Specialisation">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute spp.ecore#//Specialisation/name"/>
<genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference spp.ecore#//Specialisation/program"/>
</genClasses>
<genClasses ecoreClass="spp.ecore#//MandatoryCourses">
<genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference spp.ecore#//MandatoryCourses/program"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference spp.ecore#//MandatoryCourses/courses"/>
</genClasses>
<genClasses ecoreClass="spp.ecore#//ElectiveCourses">
<genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference spp.ecore#//ElectiveCourses/program"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference spp.ecore#//ElectiveCourses/courses"/>
</genClasses>
</genPackages>
</genmodel:GenModel>
#
pluginName = tdt4250.spp.model
providerName = www.example.org
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<!--
-->
<plugin>
<extension point="org.eclipse.emf.ecore.generated_package">
<!-- @generated spp -->
<package
uri="platform:/plugin/tdt4250.spp.model/model/spp.ecore"
class="tdt4250.spp.SppPackage"
genModel="model/spp.genmodel"/>
</extension>
</plugin>
/**
*/
package tdt4250.spp;
import org.eclipse.emf.ecore.EObject;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Course</b></em>'.
* <!-- end-user-doc -->
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link tdt4250.spp.Course#getCode <em>Code</em>}</li>
* <li>{@link tdt4250.spp.Course#getName <em>Name</em>}</li>
* <li>{@link tdt4250.spp.Course#getCredits <em>Credits</em>}</li>
* <li>{@link tdt4250.spp.Course#getLevel <em>Level</em>}</li>
* <li>{@link tdt4250.spp.Course#getSeason <em>Season</em>}</li>
* <li>{@link tdt4250.spp.Course#getResponsibleUnit <em>Responsible Unit</em>}</li>
* </ul>
*
* @see tdt4250.spp.SppPackage#getCourse()
* @model
* @generated
*/
public interface Course extends EObject {
/**
* Returns the value of the '<em><b>Code</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Code</em>' attribute.
* @see #setCode(String)
* @see tdt4250.spp.SppPackage#getCourse_Code()
* @model
* @generated
*/
String getCode();
/**
* Sets the value of the '{@link tdt4250.spp.Course#getCode <em>Code</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Code</em>' attribute.
* @see #getCode()
* @generated
*/
void setCode(String value);
/**
* Returns the value of the '<em><b>Name</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Name</em>' attribute.
* @see #setName(String)
* @see tdt4250.spp.SppPackage#getCourse_Name()
* @model
* @generated
*/
String getName();
/**
* Sets the value of the '{@link tdt4250.spp.Course#getName <em>Name</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Name</em>' attribute.
* @see #getName()
* @generated
*/
void setName(String value);
/**
* Returns the value of the '<em><b>Credits</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Credits</em>' attribute.
* @see #setCredits(float)
* @see tdt4250.spp.SppPackage#getCourse_Credits()
* @model
* @generated
*/
float getCredits();
/**
* Sets the value of the '{@link tdt4250.spp.Course#getCredits <em>Credits</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Credits</em>' attribute.
* @see #getCredits()
* @generated
*/
void setCredits(float value);
/**
* Returns the value of the '<em><b>Level</b></em>' attribute.
* The literals are from the enumeration {@link tdt4250.spp.CourseLevelType}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Level</em>' attribute.
* @see tdt4250.spp.CourseLevelType
* @see #setLevel(CourseLevelType)
* @see tdt4250.spp.SppPackage#getCourse_Level()
* @model
* @generated
*/
CourseLevelType getLevel();
/**
* Sets the value of the '{@link tdt4250.spp.Course#getLevel <em>Level</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Level</em>' attribute.
* @see tdt4250.spp.CourseLevelType
* @see #getLevel()
* @generated
*/
void setLevel(CourseLevelType value);
/**
* Returns the value of the '<em><b>Season</b></em>' attribute.
* The literals are from the enumeration {@link tdt4250.spp.SeasonType}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Season</em>' attribute.
* @see tdt4250.spp.SeasonType
* @see #setSeason(SeasonType)
* @see tdt4250.spp.SppPackage#getCourse_Season()
* @model
* @generated
*/
SeasonType getSeason();
/**
* Sets the value of the '{@link tdt4250.spp.Course#getSeason <em>Season</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Season</em>' attribute.
* @see tdt4250.spp.SeasonType
* @see #getSeason()
* @generated
*/
void setSeason(SeasonType value);
/**
* Returns the value of the '<em><b>Responsible Unit</b></em>' container reference.
* It is bidirectional and its opposite is '{@link tdt4250.spp.Institute#getCourses <em>Courses</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Responsible Unit</em>' container reference.
* @see #setResponsibleUnit(Institute)
* @see tdt4250.spp.SppPackage#getCourse_ResponsibleUnit()
* @see tdt4250.spp.Institute#getCourses
* @model opposite="courses" transient="false"
* @generated
*/
Institute getResponsibleUnit();
/**
* Sets the value of the '{@link tdt4250.spp.Course#getResponsibleUnit <em>Responsible Unit</em>}' container reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Responsible Unit</em>' container reference.
* @see #getResponsibleUnit()
* @generated
*/
void setResponsibleUnit(Institute value);
} // Course
/**
*/
package tdt4250.spp;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import org.eclipse.emf.common.util.Enumerator;
/**
* <!-- begin-user-doc -->
* A representation of the literals of the enumeration '<em><b>Course Level Type</b></em>',
* and utility methods for working with them.
* <!-- end-user-doc -->
* @see tdt4250.spp.SppPackage#getCourseLevelType()
* @model
* @generated
*/
public enum CourseLevelType implements Enumerator {
/**
* The '<em><b>Foundation Course</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #FOUNDATION_COURSE_VALUE
* @generated
* @ordered
*/
FOUNDATION_COURSE(1, "FoundationCourse", "FoundationCourse"),
/**
* The '<em><b>Intermediate Course</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #INTERMEDIATE_COURSE_VALUE
* @generated
* @ordered
*/
INTERMEDIATE_COURSE(2, "IntermediateCourse", "IntermediateCourse"),
/**
* The '<em><b>Third Year Course</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #THIRD_YEAR_COURSE_VALUE
* @generated
* @ordered
*/
THIRD_YEAR_COURSE(3, "ThirdYearCourse", "ThirdYearCourse"),
/**
* The '<em><b>Secound Degree Course</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #SECOUND_DEGREE_COURSE_VALUE
* @generated
* @ordered
*/
SECOUND_DEGREE_COURSE(4, "SecoundDegreeCourse", "SecoundDegreeCourse");
/**
* The '<em><b>Foundation Course</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #FOUNDATION_COURSE
* @model name="FoundationCourse"
* @generated
* @ordered
*/
public static final int FOUNDATION_COURSE_VALUE = 1;
/**
* The '<em><b>Intermediate Course</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #INTERMEDIATE_COURSE
* @model name="IntermediateCourse"
* @generated
* @ordered
*/
public static final int INTERMEDIATE_COURSE_VALUE = 2;
/**
* The '<em><b>Third Year Course</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #THIRD_YEAR_COURSE
* @model name="ThirdYearCourse"
* @generated
* @ordered
*/
public static final int THIRD_YEAR_COURSE_VALUE = 3;
/**
* The '<em><b>Secound Degree Course</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #SECOUND_DEGREE_COURSE
* @model name="SecoundDegreeCourse"
* @generated
* @ordered
*/
public static final int SECOUND_DEGREE_COURSE_VALUE = 4;
/**
* An array of all the '<em><b>Course Level Type</b></em>' enumerators.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private static final CourseLevelType[] VALUES_ARRAY =
new CourseLevelType[] {
FOUNDATION_COURSE,
INTERMEDIATE_COURSE,
THIRD_YEAR_COURSE,
SECOUND_DEGREE_COURSE,
};
/**
* A public read-only list of all the '<em><b>Course Level Type</b></em>' enumerators.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public static final List<CourseLevelType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
/**
* Returns the '<em><b>Course Level Type</b></em>' literal with the specified literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param literal the literal.
* @return the matching enumerator or <code>null</code>.
* @generated
*/
public static CourseLevelType get(String literal) {
for (int i = 0; i < VALUES_ARRAY.length; ++i) {
CourseLevelType result = VALUES_ARRAY[i];
if (result.toString().equals(literal)) {
return result;
}
}
return null;
}
/**
* Returns the '<em><b>Course Level Type</b></em>' literal with the specified name.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param name the name.
* @return the matching enumerator or <code>null</code>.
* @generated
*/
public static CourseLevelType getByName(String name) {
for (int i = 0; i < VALUES_ARRAY.length; ++i) {
CourseLevelType result = VALUES_ARRAY[i];
if (result.getName().equals(name)) {
return result;
}
}
return null;
}
/**
* Returns the '<em><b>Course Level Type</b></em>' literal with the specified integer value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the integer value.
* @return the matching enumerator or <code>null</code>.
* @generated
*/
public static CourseLevelType get(int value) {
switch (value) {
case FOUNDATION_COURSE_VALUE: return FOUNDATION_COURSE;
case INTERMEDIATE_COURSE_VALUE: return INTERMEDIATE_COURSE;
case THIRD_YEAR_COURSE_VALUE: return THIRD_YEAR_COURSE;
case SECOUND_DEGREE_COURSE_VALUE: return SECOUND_DEGREE_COURSE;
}
return null;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private final int value;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private final String name;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private final String literal;
/**
* Only this class can construct instances.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private CourseLevelType(int value, String name, String literal) {
this.value = value;
this.name = name;
this.literal = literal;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public int getValue() {
return value;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String getName() {
return name;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String getLiteral() {
return literal;
}
/**
* Returns the literal value of the enumerator, which is its string representation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String toString() {
return literal;
}
} //CourseLevelType
/**
*/
package tdt4250.spp;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EObject;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Elective Courses</b></em>'.
* <!-- end-user-doc -->
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link tdt4250.spp.ElectiveCourses#getProgram <em>Program</em>}</li>
* <li>{@link tdt4250.spp.ElectiveCourses#getCourses <em>Courses</em>}</li>
* </ul>
*
* @see tdt4250.spp.SppPackage#getElectiveCourses()
* @model
* @generated
*/
public interface ElectiveCourses extends EObject {
/**
* Returns the value of the '<em><b>Program</b></em>' container reference.
* It is bidirectional and its opposite is '{@link tdt4250.spp.Program#getElectiveCourses <em>Elective Courses</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Program</em>' container reference.
* @see #setProgram(Program)
* @see tdt4250.spp.SppPackage#getElectiveCourses_Program()
* @see tdt4250.spp.Program#getElectiveCourses
* @model opposite="electiveCourses" transient="false"
* @generated
*/
Program getProgram();
/**
* Sets the value of the '{@link tdt4250.spp.ElectiveCourses#getProgram <em>Program</em>}' container reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Program</em>' container reference.
* @see #getProgram()
* @generated
*/
void setProgram(Program value);
/**
* Returns the value of the '<em><b>Courses</b></em>' reference list.
* The list contents are of type {@link tdt4250.spp.Course}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Courses</em>' reference list.
* @see tdt4250.spp.SppPackage#getElectiveCourses_Courses()
* @model
* @generated
*/
EList<Course> getCourses();
} // ElectiveCourses
/**
*/
package tdt4250.spp;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EObject;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Institute</b></em>'.
* <!-- end-user-doc -->
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link tdt4250.spp.Institute#getName <em>Name</em>}</li>
* <li>{@link tdt4250.spp.Institute#getCourses <em>Courses</em>}</li>
* <li>{@link tdt4250.spp.Institute#getUniversity <em>University</em>}</li>
* </ul>
*
* @see tdt4250.spp.SppPackage#getInstitute()
* @model
* @generated
*/
public interface Institute extends EObject {
/**
* Returns the value of the '<em><b>Name</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Name</em>' attribute.
* @see #setName(String)
* @see tdt4250.spp.SppPackage#getInstitute_Name()
* @model
* @generated
*/
String getName();
/**
* Sets the value of the '{@link tdt4250.spp.Institute#getName <em>Name</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Name</em>' attribute.
* @see #getName()
* @generated
*/
void setName(String value);
/**
* Returns the value of the '<em><b>Courses</b></em>' containment reference list.
* The list contents are of type {@link tdt4250.spp.Course}.
* It is bidirectional and its opposite is '{@link tdt4250.spp.Course#getResponsibleUnit <em>Responsible Unit</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Courses</em>' containment reference list.
* @see tdt4250.spp.SppPackage#getInstitute_Courses()
* @see tdt4250.spp.Course#getResponsibleUnit
* @model opposite="responsibleUnit" containment="true"
* @generated
*/
EList<Course> getCourses();
/**
* Returns the value of the '<em><b>University</b></em>' container reference.