<!--
/********************************************************************************
 * Copyright (c) 2009 INRIA. 
 * All rights reserved. This program and the accompanying materials 
 * are made available under the terms of the Eclipse Public License v1.0 
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 * 
 * Contributors: 
 *     INRIA - Initial implementation
 *     
 ******************************************************************************/
-->

<!-- author: Hugo Bruneliere -->

<project name="MetricsVisualizationBuilder" default="buildVisualizations">

	<property name="metricsName" value=""/>
	<property name="metricsModelPath" value=""/>
	<property name="outputFilesDirectoryPath" value=""/>

	<target name="buildVisualizations" depends="loadMetamodels">

		<!-- Load the Metrics model -->
		<am3.loadModel modelHandler="EMF" name="metricsModel" metamodel="Metrics" path="${metricsModelPath}"/>

		<!-- Generate the Table model from the Metrics model -->
		<am3.atl path="Transformations/Metrics2Table.atl">
			<inModel name="IN" model="metricsModel"/>
			<inModel name="Metrics" model="Metrics"/>
			<inModel name="Table" model="Table"/>
			<outModel name="OUT" model="tableModel" metamodel="Table"/>
		</am3.atl>
		<!--
		<am3.saveModel model="tableModel" path="${outputFilesDirectoryPath}/${metricsName}-Table.xmi"/>
		-->

		<!-- Generate the Excel file from the Table model -->

		<!-- Generate the SpreadsheetMLSimplified model from the Table model -->
		<am3.atl path="Transformations/Table2XXX/Table2SpreadsheetMLSimplified.atl">
			<inModel name="IN" model="tableModel"/>
			<inModel name="Table" model="Table"/>
			<inModel name="SpreadsheetMLSimplified" model="SpreadsheetMLSimplified"/>
			<outModel name="OUT" model="excelModel" metamodel="SpreadsheetMLSimplified"/>
		</am3.atl>
		<!--
		<am3.saveModel model="excelModel" path="${outputFilesDirectoryPath}/${metricsName}-Excel.xmi"/>
		-->

		<!-- Generate the XML model from the SpreadsheetMLSimplified model -->
		<am3.atl path="Transformations/Table2XXX/Extractors/SpreadsheetMLSimplified2XML.atl">
			<inModel name="IN" model="excelModel"/>
			<inModel name="SpreadsheetMLSimplified" model="SpreadsheetMLSimplified"/>
			<inModel name="XML" model="XML"/>
			<outModel name="OUT" model="excelXmlModel" metamodel="XML"/>
		</am3.atl>
		<!--
		<am3.saveModel model="excelXmlModel" path="${outputFilesDirectoryPath}/${metricsName}-ExcelXml.xmi"/>
		-->

		<!-- Extract the Excel file (XML format) from Excel XML model -->
		<am3.saveModel model="excelXmlModel" path="${outputFilesDirectoryPath}/${metricsName}.xml">
			<extractor name="xml"/>
		</am3.saveModel>

	</target>

	<target name="loadMetamodels">

		<!-- Load Metrics metamodel -->
		<am3.loadModel modelHandler="EMF" name="Metrics" metamodel="MOF" path="Metamodels/Metrics.ecore" />

		<!-- Load Table metamodel -->
		<am3.loadModel modelHandler="EMF" name="Table" metamodel="MOF" path="Metamodels/Table.ecore" />

		<!-- Load XML metamodel -->
		<am3.loadModel modelHandler="EMF" name="XML" metamodel="MOF" path="Metamodels/XML.ecore" />

		<!-- Load SpreadsheetMLSimplified metamodel -->
		<am3.loadModel modelHandler="EMF" name="SpreadsheetMLSimplified" metamodel="MOF" path="Metamodels/MSOfficeExcel_SpreadsheetMLSimplified.ecore" />

	</target>

</project>