###############################################################################
# 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
###############################################################################
Report_0=Discovery Progress
Report_12=Java Discover Benchmark
Report_17=Java Discover Benchmark
Report_24=Summary
Report_28=Total discovery time (ms)
Report_30=Save time (ms)
Report_32=Initialization time (ms)
serverDescription=
JavaDiscovererCDO_1=LRU_CACHE
JavaDiscovererCDO_10=Resource name=
JavaDiscovererCDO_11=ePackage is null. this.getEFactory()=
JavaDiscovererCDO_12=:
JavaDiscovererCDO_13=/
JavaDiscovererCDO_18=Incremental
JavaDiscovererCDO_2=DEFAULT_CACHE
JavaDiscovererCDO_22=Saving model
JavaDiscovererCDO_3=MEM_CACHE
JavaDiscovererCDO_4=TWO_LEVEL_CACHE
JavaDiscovererCDO_5=CDO_CACHE_TYPE
JavaDiscovererCDO_6=CURRENT_LRU_CAPACITY
JavaDiscovererCDO_7=REVISED_LRU_CAPACITY
JavaDiscovererCDO_8=CDO_VERSION
JavaDiscovererCDO_9=CDO_SERVER_DESCRIPTION
JavaDiscovererCDOWithoutTrace_0=Incremental without tracing
JavaDiscovererCDONoUsages_0=No usages
JavaDiscoverEMFNoUsages_0=No usages
JavaDiscoverIncrementalClassicalEMF_0=Incremental
JavaDiscoverIncrementalEMF_0=Incremental
