blob: f6749fbe3e3cb3fcf55d367c343d211b97a6d024 [file] [log] [blame]
/**
*
* Copyright (c) 2011, 2016 - Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*
* Contributors:
* Christophe Loetz (Loetz GmbH&Co.KG) - initial implementation
*
*
* This copyright notice shows up in the generated Java code
*
*/
package org.eclipse.osbp.xtext.messagedsl.generator
import com.google.inject.Inject
import java.util.Locale
import org.eclipse.emf.ecore.EObject
import org.eclipse.emf.ecore.resource.Resource
import org.eclipse.osbp.xtext.basic.generator.BasicDslGeneratorUtils
import org.eclipse.osbp.xtext.i18n.I18NModelGenerator
import org.eclipse.osbp.xtext.messagedsl.common.IMessageCategory
import org.eclipse.osbp.xtext.messagedsl.common.Message
import org.eclipse.xtext.generator.IFileSystemAccess
import org.eclipse.xtext.xbase.compiler.GeneratorConfig
import org.eclipse.xtext.xbase.compiler.ImportManager
import org.slf4j.Logger
class MessageDslGenerator extends I18NModelGenerator {
@Inject extension BasicDslGeneratorUtils
override doGenerate(Resource input, IFileSystemAccess fsa) {
super.doGenerate(input, fsa)
fsa.generateI18n(input)
}
override createAppendable(EObject context, ImportManager importManager, GeneratorConfig config) {
// required to initialize the needed builder to avoid deprecated methods
builder = context.eResource
// ---------
addImportFor(importManager, _typeReferenceBuilder
, IMessageCategory
, Logger
, Message
, Locale)
super.createAppendable(context, importManager, config)
}
}