// Path: RocLang/robotcontrol.parent/robotcontrol.ui/src-gen/robotcontrol/ui/internal/RobotcontrolActivator.java
// public class RobotcontrolActivator extends AbstractUIPlugin {
// 
// 	public static final String ROBOTCONTROL_ROC = "robotcontrol.Roc";
// 	
// 	private static final Logger logger = Logger.getLogger(RobotcontrolActivator.class);
// 	
// 	private static RobotcontrolActivator INSTANCE;
// 	
// 	private Map<String, Injector> injectors = Collections.synchronizedMap(Maps.<String, Injector> newHashMapWithExpectedSize(1));
// 	
// 	@Override
// 	public void start(BundleContext context) throws Exception {
// 		super.start(context);
// 		INSTANCE = this;
// 	}
// 	
// 	@Override
// 	public void stop(BundleContext context) throws Exception {
// 		injectors.clear();
// 		INSTANCE = null;
// 		super.stop(context);
// 	}
// 	
// 	public static RobotcontrolActivator getInstance() {
// 		return INSTANCE;
// 	}
// 	
// 	public Injector getInjector(String language) {
// 		synchronized (injectors) {
// 			Injector injector = injectors.get(language);
// 			if (injector == null) {
// 				injectors.put(language, injector = createInjector(language));
// 			}
// 			return injector;
// 		}
// 	}
// 	
// 	protected Injector createInjector(String language) {
// 		try {
// 			Module runtimeModule = getRuntimeModule(language);
// 			Module sharedStateModule = getSharedStateModule();
// 			Module uiModule = getUiModule(language);
// 			Module mergedModule = Modules2.mixin(runtimeModule, sharedStateModule, uiModule);
// 			return Guice.createInjector(mergedModule);
// 		} catch (Exception e) {
// 			logger.error("Failed to create injector for " + language);
// 			logger.error(e.getMessage(), e);
// 			throw new RuntimeException("Failed to create injector for " + language, e);
// 		}
// 	}
// 	
// 	protected Module getRuntimeModule(String grammar) {
// 		if (ROBOTCONTROL_ROC.equals(grammar)) {
// 			return new RocRuntimeModule();
// 		}
// 		throw new IllegalArgumentException(grammar);
// 	}
// 	
// 	protected Module getUiModule(String grammar) {
// 		if (ROBOTCONTROL_ROC.equals(grammar)) {
// 			return new RocUiModule(this);
// 		}
// 		throw new IllegalArgumentException(grammar);
// 	}
// 	
// 	protected Module getSharedStateModule() {
// 		return new SharedStateModule();
// 	}
// 	
// }


import com.google.inject.Injector;
import org.eclipse.xtext.junit4.IInjectorProvider;
import robotcontrol.ui.internal.RobotcontrolActivator;
/*
 * generated by Xtext 2.10.0
 */
package robotcontrol.ui.tests;


public class RocUiInjectorProvider implements IInjectorProvider {

	@Override
// Path: RocLang/robotcontrol.parent/robotcontrol.ui/src-gen/robotcontrol/ui/internal/RobotcontrolActivator.java
// public class RobotcontrolActivator extends AbstractUIPlugin {
// 
// 	public static final String ROBOTCONTROL_ROC = "robotcontrol.Roc";
// 	
// 	private static final Logger logger = Logger.getLogger(RobotcontrolActivator.class);
// 	
// 	private static RobotcontrolActivator INSTANCE;
// 	
// 	private Map<String, Injector> injectors = Collections.synchronizedMap(Maps.<String, Injector> newHashMapWithExpectedSize(1));
// 	
// 	@Override
// 	public void start(BundleContext context) throws Exception {
// 		super.start(context);
// 		INSTANCE = this;
// 	}
// 	
// 	@Override
// 	public void stop(BundleContext context) throws Exception {
// 		injectors.clear();
// 		INSTANCE = null;
// 		super.stop(context);
// 	}
// 	
// 	public static RobotcontrolActivator getInstance() {
// 		return INSTANCE;
// 	}
// 	
// 	public Injector getInjector(String language) {
// 		synchronized (injectors) {
// 			Injector injector = injectors.get(language);
// 			if (injector == null) {
// 				injectors.put(language, injector = createInjector(language));
// 			}
// 			return injector;
// 		}
// 	}
// 	
// 	protected Injector createInjector(String language) {
// 		try {
// 			Module runtimeModule = getRuntimeModule(language);
// 			Module sharedStateModule = getSharedStateModule();
// 			Module uiModule = getUiModule(language);
// 			Module mergedModule = Modules2.mixin(runtimeModule, sharedStateModule, uiModule);
// 			return Guice.createInjector(mergedModule);
// 		} catch (Exception e) {
// 			logger.error("Failed to create injector for " + language);
// 			logger.error(e.getMessage(), e);
// 			throw new RuntimeException("Failed to create injector for " + language, e);
// 		}
// 	}
// 	
// 	protected Module getRuntimeModule(String grammar) {
// 		if (ROBOTCONTROL_ROC.equals(grammar)) {
// 			return new RocRuntimeModule();
// 		}
// 		throw new IllegalArgumentException(grammar);
// 	}
// 	
// 	protected Module getUiModule(String grammar) {
// 		if (ROBOTCONTROL_ROC.equals(grammar)) {
// 			return new RocUiModule(this);
// 		}
// 		throw new IllegalArgumentException(grammar);
// 	}
// 	
// 	protected Module getSharedStateModule() {
// 		return new SharedStateModule();
// 	}
// 	
// }


// Path: RocLang/robotcontrol.parent/robotcontrol.ui.tests/src-gen/robotcontrol/ui/tests/RocUiInjectorProvider.java
import com.google.inject.Injector;
import org.eclipse.xtext.junit4.IInjectorProvider;
import robotcontrol.ui.internal.RobotcontrolActivator;

/*
 * generated by Xtext 2.10.0
 */
package robotcontrol.ui.tests;


public class RocUiInjectorProvider implements IInjectorProvider {

	@Override
	public Injector getInjector() {