[generator] Added new generator to feature.xml and parent pom.xml,

added @Mandatory to some properties,
added test for nested StringConcatenationClients

Signed-off-by: Miro Spönemann <miro.spoenemann@itemis.de>
This commit is contained in:
Miro Spönemann 2015-07-08 09:42:22 +02:00
parent 5e5d636d22
commit 2ee457fd8d
2 changed files with 15 additions and 1 deletions

View file

@ -23,6 +23,7 @@ import org.eclipse.emf.ecore.EValidator
import org.eclipse.emf.ecore.resource.Resource
import org.eclipse.emf.ecore.resource.ResourceSet
import org.eclipse.emf.ecore.util.EcoreUtil
import org.eclipse.emf.mwe2.runtime.Mandatory
import org.eclipse.xtend.lib.annotations.Accessors
import org.eclipse.xtend2.lib.StringConcatenationClient
import org.eclipse.xtext.Grammar
@ -46,12 +47,13 @@ import static extension org.eclipse.xtext.xtext.generator.model.TypeReference.*
@Log
class LanguageConfig2 extends CompositeGeneratorFragment2 {
@Accessors
@Accessors(PUBLIC_GETTER)
String uri
@Accessors(PUBLIC_GETTER)
Grammar grammar
@Accessors(PUBLIC_GETTER)
List<String> fileExtensions
@Accessors
@ -70,6 +72,11 @@ class LanguageConfig2 extends CompositeGeneratorFragment2 {
@Inject IXtextProjectConfig projectConfig
@Mandatory
def void setUri(String uri) {
this.uri = uri
}
def void setFileExtensions(String fileExtensions) {
this.fileExtensions = fileExtensions.trim.split("\\s*,\\s*").toList
}
@ -89,6 +96,7 @@ class LanguageConfig2 extends CompositeGeneratorFragment2 {
override initialize(Injector injector) {
super.initialize(injector)
val rs = resourceSetProvider.get()
for (String loadedResource : loadedResources) {
val loadedResourceUri = URI.createURI(loadedResource)

View file

@ -9,6 +9,7 @@ package org.eclipse.xtext.xtext.generator.model
import com.google.inject.Injector
import org.eclipse.emf.mwe.core.issues.Issues
import org.eclipse.emf.mwe2.runtime.Mandatory
import org.eclipse.xtend.lib.annotations.Accessors
import org.eclipse.xtext.xtext.generator.XtextGenerator
@ -29,6 +30,11 @@ class WizardConfig extends XtextProjectConfig {
boolean mavenLayout = false
@Mandatory
def void setRuntimeBase(String runtimeBase) {
this.runtimeBase = runtimeBase
}
override checkConfiguration(XtextGenerator generator, Issues issues) {
super.checkConfiguration(generator, issues)
if (runtimeBase.nullOrEmpty)