/** * Copyright (c) 2011-2012 Eclipse contributors and others. * 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 */ package org.eclipse.emf.ecore.xcore; import org.eclipse.emf.codegen.ecore.genmodel.GenModelPackage; import org.eclipse.emf.ecore.EPackage; import org.eclipse.emf.ecore.EcorePackage; import org.eclipse.emf.ecore.resource.Resource; import org.eclipse.emf.ecore.xmi.impl.EcoreResourceFactoryImpl; import org.eclipse.emf.ecore.xml.namespace.XMLNamespacePackage; import org.eclipse.emf.ecore.xml.type.XMLTypePackage; import org.eclipse.xtext.common.types.TypesPackage; import org.eclipse.xtext.xbase.XbasePackage; import com.google.inject.Injector; /** * Initialization support for running Xtext languages * without equinox extension registry */ public class XcoreStandaloneSetup extends XcoreStandaloneSetupGenerated { public static void doSetup() { new XcoreStandaloneSetup().createInjectorAndDoEMFRegistration(); } @Override public void register(Injector injector) { EPackage.Registry packageRegistry = injector.getInstance(EPackage.Registry.class); packageRegistry.put(XcorePackage.eNS_URI, XcorePackage.eINSTANCE); packageRegistry.put(EcorePackage.eNS_URI, EcorePackage.eINSTANCE); packageRegistry.put(XbasePackage.eNS_URI, XbasePackage.eINSTANCE); packageRegistry.put(TypesPackage.eNS_URI, TypesPackage.eINSTANCE); packageRegistry.put(GenModelPackage.eNS_URI, GenModelPackage.eINSTANCE); packageRegistry.put(XMLTypePackage.eNS_URI, XMLTypePackage.eINSTANCE); packageRegistry.put(XMLNamespacePackage.eNS_URI, XMLNamespacePackage.eINSTANCE); Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put("ecore", new EcoreResourceFactoryImpl()); Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put("genmodel", new EcoreResourceFactoryImpl()); super.register(injector); } }