###############################################################################
# Copyright (c) 2009, 2019 Mia-Software 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:
#     Gregoire DUPE (Mia-Software) - initial API and implementation
#     Gregoire DUPE (Mia-Software) - Bug 341752 - Extract report metamodel from the benchmark plug-in to avoid Acceleo troubles.
#     Nicolas Bros (Mia-Software) - extracted java benchmark
###############################################################################
Bundle-Vendor = Eclipse Modeling Project
Bundle-Name = MoDisco Java Discover Benchmark Report Metamodel