#  Copyright (c) 2007-2008 Obeo
#  
#  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:
#     Obeo - initial API and implementation

# ====================================================================
# To code developer:
#   Do NOT change the properties between this line and the
#   "%%% END OF TRANSLATED PROPERTIES %%%" line.
#   Make a new property name, append to the end of the file and change
#   the code to use the new property.
# ====================================================================

# ====================================================================
# %%% END OF TRANSLATED PROPERTIES %%%
# ====================================================================

pluginName = Acceleo Examples
providerName = Eclipse Modeling Project

AcceleoCategory = Acceleo Plug-ins
ecore2pythonName = Ecore to Python
ecore2pythonDescription = Creates plug-in projects defining Acceleo templates to generate Python code from an ecore model.
ecore2unittestsName = Ecore to Unit tests
ecore2unittestsDescription = Creates plug-in projects defining Acceleo templates to generate unit tests code for a given ecore genmodel.
uml2javaName = UML to Java (requires the installation of the UML project)
uml2javaDescription = Creates plug-in projects defining Acceleo templates to generate Java code from an UML model.
