blob: 66ab4b4233e7436e28802665cfe396fa1ad5a9fb [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<fcore:FactoryComponent xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI" xmlns:domain="http://www.eclipse.org/egf/1.0.0/domain"
xmlns:fcore="http://www.eclipse.org/egf/1.0.0/fcore" xmlns:fprod="http://www.eclipse.org/egf/1.0.0/fprod"
xmlns:jetpattern="http://www.eclipse.org/egf/1.0.0/jetpattern" xmlns:pattern="http://www.eclipse.org/egf/1.0.0/pattern" xmi:id="_zpFW8HOfEd-d5cqrgbkp6A"
description="This factory component exemplifies how to redefine get/set features during the EMF generation"
name="EMF_UC2_2_Library_ClassGetSetGenFeature">
<viewpointContainer xmi:id="_04DrgHOfEd-d5cqrgbkp6A">
<viewpoints xmi:type="domain:DomainViewpoint" xmi:id="_04DrgXOfEd-d5cqrgbkp6A">
<domains xmi:type="domain:EMFDomain" xmi:id="_04DrgnOfEd-d5cqrgbkp6A" helperImplementation="org.eclipse.egf.domain.emf.EMFDomainHelper"
uri="platform:/resource/org.eclipse.egf.usecase.emf.uc1/model/extlibrary.genmodel"/>
</viewpoints>
<viewpoints xmi:type="pattern:PatternViewpoint" xmi:id="_BnCDEHOhEd-d5cqrgbkp6A">
<libraries xmi:id="_iASbUQUKEeCBZ9B8yM_rcg" name="org.eclipse.egf.usecase.emf.library.model.Class.getsetgenfeature">
<elements xmi:id="_2TwikHOhEd-d5cqrgbkp6A" description="This pattern redefines the method body of the operation &quot;getName&quot; of the class &quot;Writer&quot;.&#xD;&#xA;&#xD;&#xA;It overloads the &quot;Class.getGenFeature.TODO.override&quot; pattern.&#xD;&#xA;It is applied when the pattern precondition is satisfied, i.e. the class name equals &quot;Writer&quot; and the operation name to be implemented equals &quot;name&quot;.&#xD;&#xA;By polymorphism, the super-method &quot;doGenerate&quot; is implemented in this pattern and taken into account in the super-pattern orchestration."
name="Writer_Name_Class_getGenFeature_TODO_override" superPattern="platform:/plugin/org.eclipse.egf.emf.pattern/egf/EMF_Pattern.fcore#_0lbPAWJ-Ed-FqczH3ESmRw"
headerMethod="#_2TwikXOhEd-d5cqrgbkp6A" conditionMethod="#_2Twik3OhEd-d5cqrgbkp6A"
initMethod="#_2TwiknOhEd-d5cqrgbkp6A" footerMethod="#_2TwilXOhEd-d5cqrgbkp6A">
<nature xmi:type="jetpattern:JetNature" xmi:id="_2Twil3OhEd-d5cqrgbkp6A"
name="JET"/>
<methods xmi:id="_2TwikXOhEd-d5cqrgbkp6A" name="header" patternFilePath="templates/pattern._2TwikHOhEd-d5cqrgbkp6A/method._2TwikXOhEd-d5cqrgbkp6A.pt"/>
<methods xmi:id="_2TwiknOhEd-d5cqrgbkp6A" name="init" patternFilePath="templates/pattern._2TwikHOhEd-d5cqrgbkp6A/method._2TwiknOhEd-d5cqrgbkp6A.pt"/>
<methods xmi:id="_2Twik3OhEd-d5cqrgbkp6A" name="preCondition" patternFilePath="templates/pattern._2TwikHOhEd-d5cqrgbkp6A/method._2Twik3OhEd-d5cqrgbkp6A.pt"/>
<methods xmi:id="_2TwilHOhEd-d5cqrgbkp6A" name="doGenerate" patternFilePath="templates/pattern._2TwikHOhEd-d5cqrgbkp6A/method._2TwilHOhEd-d5cqrgbkp6A.pt"/>
<methods xmi:id="_2TwilXOhEd-d5cqrgbkp6A" name="footer" patternFilePath="templates/pattern._2TwikHOhEd-d5cqrgbkp6A/method._2TwilXOhEd-d5cqrgbkp6A.pt"/>
<orchestration xmi:type="pattern:SuperCall" xmi:id="_2TwilnOhEd-d5cqrgbkp6A"/>
</elements>
<elements xmi:id="_6gbXUHOhEd-d5cqrgbkp6A" description="This pattern redefines the method body of the operation &quot;setName&quot; of the class &quot;Writer&quot;.&#xD;&#xA;&#xD;&#xA;It overloads the &quot;Class.setGenFeature.TODO.override&quot; pattern.&#xD;&#xA;It is applied when the pattern precondition is satisfied, i.e. the class name equals &quot;Writer&quot; and the operation name to be implemented equals &quot;name&quot;.&#xD;&#xA;By polymorphism, the super-method &quot;doGenerate&quot; is implemented in this pattern and taken into account in the super-pattern orchestration."
name="Writer_Name_Class_setGenFeature_TODO_override" superPattern="platform:/plugin/org.eclipse.egf.emf.pattern/egf/EMF_Pattern.fcore#_0qMaRWJ-Ed-FqczH3ESmRw"
headerMethod="#_6gbXUXOhEd-d5cqrgbkp6A" conditionMethod="#_6gbXU3OhEd-d5cqrgbkp6A"
initMethod="#_6gbXUnOhEd-d5cqrgbkp6A" footerMethod="#_6gbXVXOhEd-d5cqrgbkp6A">
<nature xmi:type="jetpattern:JetNature" xmi:id="_6gbXV3OhEd-d5cqrgbkp6A"
name="JET"/>
<methods xmi:id="_6gbXUXOhEd-d5cqrgbkp6A" name="header" patternFilePath="templates/pattern._6gbXUHOhEd-d5cqrgbkp6A/method._6gbXUXOhEd-d5cqrgbkp6A.pt"/>
<methods xmi:id="_6gbXUnOhEd-d5cqrgbkp6A" name="init" patternFilePath="templates/pattern._6gbXUHOhEd-d5cqrgbkp6A/method._6gbXUnOhEd-d5cqrgbkp6A.pt"/>
<methods xmi:id="_6gbXU3OhEd-d5cqrgbkp6A" name="preCondition" patternFilePath="templates/pattern._6gbXUHOhEd-d5cqrgbkp6A/method._6gbXU3OhEd-d5cqrgbkp6A.pt"/>
<methods xmi:id="_6gbXVHOhEd-d5cqrgbkp6A" name="doGenerate" patternFilePath="templates/pattern._6gbXUHOhEd-d5cqrgbkp6A/method._6gbXVHOhEd-d5cqrgbkp6A.pt"/>
<methods xmi:id="_6gbXVXOhEd-d5cqrgbkp6A" name="footer" patternFilePath="templates/pattern._6gbXUHOhEd-d5cqrgbkp6A/method._6gbXVXOhEd-d5cqrgbkp6A.pt"/>
<orchestration xmi:type="pattern:SuperCall" xmi:id="_6gbXVnOhEd-d5cqrgbkp6A"/>
</elements>
<elements xmi:id="_A3OhUHOiEd-d5cqrgbkp6A" description="This pattern redefines the method body of the operation &quot;getBooks&quot; of the class &quot;Library&quot;.&#xD;&#xA;The methods did[Add/Remove/Set] are implemented.&#xD;&#xA;&#xD;&#xA;It overloads the &quot;Class.getGenFeature.TODO.override&quot; pattern.&#xD;&#xA;It is applied when the pattern precondition is satisfied, i.e. the class name equals &quot;Library&quot; and the operation name to be implemented equals &quot;books&quot;.&#xD;&#xA;By polymorphism, the super-method &quot;doGenerate&quot; is implemented in this pattern and taken into account in the super-pattern orchestration."
name="Library_Books_Class_getGenFeature_override" superPattern="platform:/plugin/org.eclipse.egf.emf.pattern/egf/EMF_Pattern.fcore#_0kh3EGJ-Ed-FqczH3ESmRw"
headerMethod="#_A3OhUXOiEd-d5cqrgbkp6A" conditionMethod="#_A3OhU3OiEd-d5cqrgbkp6A"
initMethod="#_A3OhUnOiEd-d5cqrgbkp6A" footerMethod="#_A3OhVXOiEd-d5cqrgbkp6A">
<nature xmi:type="jetpattern:JetNature" xmi:id="_A3OhV3OiEd-d5cqrgbkp6A"
name="JET"/>
<methods xmi:id="_A3OhUXOiEd-d5cqrgbkp6A" name="header" patternFilePath="templates/pattern._A3OhUHOiEd-d5cqrgbkp6A/method._A3OhUXOiEd-d5cqrgbkp6A.pt"/>
<methods xmi:id="_A3OhUnOiEd-d5cqrgbkp6A" name="init" patternFilePath="templates/pattern._A3OhUHOiEd-d5cqrgbkp6A/method._A3OhUnOiEd-d5cqrgbkp6A.pt"/>
<methods xmi:id="_A3OhU3OiEd-d5cqrgbkp6A" name="preCondition" patternFilePath="templates/pattern._A3OhUHOiEd-d5cqrgbkp6A/method._A3OhU3OiEd-d5cqrgbkp6A.pt"/>
<methods xmi:id="_A3OhVHOiEd-d5cqrgbkp6A" name="doGenerate" patternFilePath="templates/pattern._A3OhUHOiEd-d5cqrgbkp6A/method._A3OhVHOiEd-d5cqrgbkp6A.pt"/>
<methods xmi:id="_A3OhVXOiEd-d5cqrgbkp6A" name="footer" patternFilePath="templates/pattern._A3OhUHOiEd-d5cqrgbkp6A/method._A3OhVXOiEd-d5cqrgbkp6A.pt"/>
<orchestration xmi:type="pattern:SuperCall" xmi:id="_A3OhVnOiEd-d5cqrgbkp6A"/>
</elements>
<elements xmi:id="_0Lo9UXh0Ed-1nLW_IBnxTQ" description="This pattern redefines the method body of the operation &quot;getStock&quot; of the class &quot;Library&quot;.&#xD;&#xA;The methods did[Add/Remove/Set] are implemented.&#xD;&#xA;&#xD;&#xA;It overloads the &quot;Class.getGenFeature.TODO.override&quot; pattern.&#xD;&#xA;It is applied when the pattern precondition is satisfied, i.e. the class name equals &quot;Library&quot; and the operation name to be implemented equals &quot;stock&quot;.&#xD;&#xA;By polymorphism, the super-method &quot;doGenerate&quot; is implemented in this pattern and taken into account in the super-pattern orchestration."
name="Library_Stock_Class_getGenFeature_override" superPattern="platform:/plugin/org.eclipse.egf.emf.pattern/egf/EMF_Pattern.fcore#_0kh3EGJ-Ed-FqczH3ESmRw"
headerMethod="#_0Lo9Unh0Ed-1nLW_IBnxTQ" conditionMethod="#_0Lo9VHh0Ed-1nLW_IBnxTQ"
initMethod="#_0Lo9U3h0Ed-1nLW_IBnxTQ" footerMethod="#_0Lo9Vnh0Ed-1nLW_IBnxTQ">
<nature xmi:type="jetpattern:JetNature" xmi:id="_0Lo9WHh0Ed-1nLW_IBnxTQ"
name="JET"/>
<methods xmi:id="_0Lo9Unh0Ed-1nLW_IBnxTQ" name="header" patternFilePath="templates/pattern._0Lo9UXh0Ed-1nLW_IBnxTQ/method._0Lo9Unh0Ed-1nLW_IBnxTQ.pt"/>
<methods xmi:id="_0Lo9U3h0Ed-1nLW_IBnxTQ" name="init" patternFilePath="templates/pattern._0Lo9UXh0Ed-1nLW_IBnxTQ/method._0Lo9U3h0Ed-1nLW_IBnxTQ.pt"/>
<methods xmi:id="_0Lo9VHh0Ed-1nLW_IBnxTQ" name="preCondition" patternFilePath="templates/pattern._0Lo9UXh0Ed-1nLW_IBnxTQ/method._0Lo9VHh0Ed-1nLW_IBnxTQ.pt"/>
<methods xmi:id="_0Lo9VXh0Ed-1nLW_IBnxTQ" name="doGenerate" patternFilePath="templates/pattern._0Lo9UXh0Ed-1nLW_IBnxTQ/method._0Lo9VXh0Ed-1nLW_IBnxTQ.pt"/>
<methods xmi:id="_0Lo9Vnh0Ed-1nLW_IBnxTQ" name="footer" patternFilePath="templates/pattern._0Lo9UXh0Ed-1nLW_IBnxTQ/method._0Lo9Vnh0Ed-1nLW_IBnxTQ.pt"/>
<orchestration xmi:type="pattern:SuperCall" xmi:id="_0Lo9V3h0Ed-1nLW_IBnxTQ"/>
</elements>
</libraries>
</viewpoints>
</viewpointContainer>
<orchestration xmi:type="fprod:ProductionPlan" xmi:id="_-mCMsHOfEd-d5cqrgbkp6A">
<invocations xmi:id="_-mCMsXOfEd-d5cqrgbkp6A" invokedActivity="fcore:FactoryComponent platform:/plugin/org.eclipse.egf.emf.pattern/egf/EMF_Pattern.fcore#_Pcm9sDG0Ed-kc8dEZsdm2w">
<invocationContractContainer xmi:id="_-mCMsnOfEd-d5cqrgbkp6A">
<invocationContracts xmi:id="_-mCMs3OfEd-d5cqrgbkp6A" invokedContract="fcore:FactoryComponentContract platform:/plugin/org.eclipse.egf.emf.pattern/egf/EMF_Pattern.fcore#_Prg8ZTG0Ed-kc8dEZsdm2w">
<type xmi:type="domain:TypeDomain" xmi:id="_-mCMtHOfEd-d5cqrgbkp6A" domain="#_04DrgnOfEd-d5cqrgbkp6A"/>
</invocationContracts>
<invocationContracts xmi:id="_Hym64XOpEd-vyu9xvy1R2w" invokedContract="fcore:FactoryComponentContract platform:/plugin/org.eclipse.egf.emf.pattern/egf/EMF_Pattern.fcore#_OVsagFHVEd-dr9AWwNwIMQ">
<type xmi:type="pattern:TypePatternSubstitution" xmi:id="_JjRAMHOpEd-vyu9xvy1R2w">
<substitutions xmi:id="_KcVWMHOpEd-vyu9xvy1R2w" replacedElement="platform:/plugin/org.eclipse.egf.emf.pattern/egf/EMF_Pattern.fcore#_0kh3EGJ-Ed-FqczH3ESmRw"
replacement="#_A3OhUHOiEd-d5cqrgbkp6A"/>
<substitutions xmi:id="_OHg0AHh2Ed-1nLW_IBnxTQ" replacedElement="platform:/plugin/org.eclipse.egf.emf.pattern/egf/EMF_Pattern.fcore#_0kh3EGJ-Ed-FqczH3ESmRw"
replacement="#_0Lo9UXh0Ed-1nLW_IBnxTQ"/>
<substitutions xmi:id="_KsIFsHOpEd-vyu9xvy1R2w" replacedElement="platform:/plugin/org.eclipse.egf.emf.pattern/egf/EMF_Pattern.fcore#_0lbPAWJ-Ed-FqczH3ESmRw"
replacement="#_2TwikHOhEd-d5cqrgbkp6A"/>
<substitutions xmi:id="_J5K-wHOpEd-vyu9xvy1R2w" replacedElement="platform:/plugin/org.eclipse.egf.emf.pattern/egf/EMF_Pattern.fcore#_0qMaRWJ-Ed-FqczH3ESmRw"
replacement="#_6gbXUHOhEd-d5cqrgbkp6A"/>
</type>
</invocationContracts>
</invocationContractContainer>
</invocations>
<invocations xmi:id="_-mCMtXOfEd-d5cqrgbkp6A" invokedActivity="fcore:FactoryComponent platform:/plugin/org.eclipse.egf.emf.pattern/egf/EMF_Pattern.fcore#_PiIW4DG0Ed-kc8dEZsdm2w">
<invocationContractContainer xmi:id="_-mCMtnOfEd-d5cqrgbkp6A">
<invocationContracts xmi:id="_-mCMt3OfEd-d5cqrgbkp6A" invokedContract="fcore:FactoryComponentContract platform:/plugin/org.eclipse.egf.emf.pattern/egf/EMF_Pattern.fcore#_Prg8cDG0Ed-kc8dEZsdm2w">
<type xmi:type="domain:TypeDomain" xmi:id="_-mCMuHOfEd-d5cqrgbkp6A" domain="#_04DrgnOfEd-d5cqrgbkp6A"/>
</invocationContracts>
</invocationContractContainer>
</invocations>
<invocations xmi:id="_-mCMuXOfEd-d5cqrgbkp6A" invokedActivity="fcore:FactoryComponent platform:/plugin/org.eclipse.egf.emf.pattern/egf/EMF_Pattern.fcore#_PkqGcDG0Ed-kc8dEZsdm2w">
<invocationContractContainer xmi:id="_-mCMunOfEd-d5cqrgbkp6A">
<invocationContracts xmi:id="_-mCMu3OfEd-d5cqrgbkp6A" invokedContract="fcore:FactoryComponentContract platform:/plugin/org.eclipse.egf.emf.pattern/egf/EMF_Pattern.fcore#_Prg8ezG0Ed-kc8dEZsdm2w">
<type xmi:type="domain:TypeDomain" xmi:id="_-mCMvHOfEd-d5cqrgbkp6A" domain="#_04DrgnOfEd-d5cqrgbkp6A"/>
</invocationContracts>
</invocationContractContainer>
</invocations>
</orchestration>
</fcore:FactoryComponent>