/*******************************************************************************
 * Copyright (c) 2014 Willink Transformations and others.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v2.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v20.html
 * 
 * Contributors:
 *     E.D.Willink - initial API and implementation
 *******************************************************************************/
module GenerateAllLPGs

import org.eclipse.ocl.examples.xtext2lpg.*
import org.eclipse.ocl.examples.build.utilities.*
import org.eclipse.emf.mwe.utils.*
import org.eclipse.emf.mwe2.runtime.workflow.*

var lpgExe
var lpgIncs
var lpgOpts = ""

/**
 *	Generate all the OCL LPG grammars.
 */
Workflow {
	component = @GenerateLPG {
		syntaxName = "EssentialOCL"
		grammarPath = "platform:/resource/org.eclipse.ocl.xtext.essentialocl/src/org/eclipse/ocl/xtext/essentialocl/EssentialOCL.xtext"
		lpgExe = "${lpgExe}"
		lpgIncs = "${lpgIncs}"
		lpgOpts = "${lpgOpts}"
	}
	component = @GenerateLPG {
		syntaxName = "CompleteOCL"
		grammarPath = "platform:/resource/org.eclipse.ocl.xtext.completeocl/src/org/eclipse/ocl/xtext/completeocl/CompleteOCL.xtext"
		lpgExe = "${lpgExe}"
		lpgIncs = "${lpgIncs}"
		lpgOpts = "${lpgOpts}"
	}
	component = @GenerateLPG {
		syntaxName = "OCLstdlib"
		grammarPath = "platform:/resource/org.eclipse.ocl.xtext.oclstdlib/src/org/eclipse/ocl/xtext/oclstdlib/OCLstdlib.xtext"
		lpgExe = "${lpgExe}"
		lpgIncs = "${lpgIncs}"
		lpgOpts = "${lpgOpts}"
	}
	component = @GenerateLPG {
		syntaxName = "OCLinEcore"
		grammarPath = "platform:/resource/org.eclipse.ocl.xtext.oclinecore/src/org/eclipse/ocl/xtext/oclinecore/OCLinEcore.xtext"
		lpgExe = "${lpgExe}"
		lpgIncs = "${lpgIncs}"
		lpgOpts = "${lpgOpts}"
	}
}

