<?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 "getName" of the class "Writer".

It overloads the "Class.getGenFeature.TODO.override" pattern.
It is applied when the pattern precondition is satisfied, i.e. the class name equals "Writer" and the operation name to be implemented equals "name".
By polymorphism, the super-method "doGenerate" 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 "setName" of the class "Writer".

It overloads the "Class.setGenFeature.TODO.override" pattern.
It is applied when the pattern precondition is satisfied, i.e. the class name equals "Writer" and the operation name to be implemented equals "name".
By polymorphism, the super-method "doGenerate" 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 "getBooks" of the class "Library".
The methods did[Add/Remove/Set] are implemented.

It overloads the "Class.getGenFeature.TODO.override" pattern.
It is applied when the pattern precondition is satisfied, i.e. the class name equals "Library" and the operation name to be implemented equals "books".
By polymorphism, the super-method "doGenerate" 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 "getStock" of the class "Library".
The methods did[Add/Remove/Set] are implemented.

It overloads the "Class.getGenFeature.TODO.override" pattern.
It is applied when the pattern precondition is satisfied, i.e. the class name equals "Library" and the operation name to be implemented equals "stock".
By polymorphism, the super-method "doGenerate" 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> |