mirror of
https://github.com/sigmasternchen/xtext-core
synced 2025-03-16 08:48:55 +00:00
Make XtextInjectorProvider accessible for all test projects
Signed-off-by: Moritz Eysholdt <moritz.eysholdt@itemis.de>
This commit is contained in:
parent
4d064aa885
commit
2b95508568
3 changed files with 15 additions and 16 deletions
|
@ -8,7 +8,7 @@ Bundle-RequiredExecutionEnvironment: JavaSE-1.6
|
|||
Export-Package: org.eclipse.xtext.junit4,
|
||||
org.eclipse.xtext.junit4.build,
|
||||
org.eclipse.xtext.junit4.formatter;x-friends:="org.eclipse.xtext.xbase.tests",
|
||||
org.eclipse.xtext.junit4.internal;x-internal:=true,
|
||||
org.eclipse.xtext.junit4.internal;x-friends:="org.eclipse.xtext.tests,org.eclipse.xtext.junit4.tests",
|
||||
org.eclipse.xtext.junit4.logging;x-internal:=true,
|
||||
org.eclipse.xtext.junit4.serializer;x-internal:=true,
|
||||
org.eclipse.xtext.junit4.smoketest,
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
package org.eclipse.xtext.junit4;
|
||||
package org.eclipse.xtext.junit4.internal;
|
||||
|
||||
import org.eclipse.xtext.XtextStandaloneSetup;
|
||||
import org.eclipse.xtext.junit4.GlobalRegistries;
|
||||
|
@ -8,22 +8,22 @@ import org.eclipse.xtext.junit4.IRegistryConfigurator;
|
|||
|
||||
import com.google.inject.Injector;
|
||||
|
||||
public class XtextInjectorProvider implements IInjectorProvider, IRegistryConfigurator
|
||||
{
|
||||
/**
|
||||
* @since 2.9
|
||||
*/
|
||||
public class XtextInjectorProvider implements IInjectorProvider, IRegistryConfigurator {
|
||||
|
||||
protected GlobalStateMemento stateBeforeInjectorCreation;
|
||||
protected GlobalStateMemento stateAfterInjectorCreation;
|
||||
protected Injector injector;
|
||||
|
||||
static
|
||||
{
|
||||
static {
|
||||
GlobalRegistries.initializeDefaults();
|
||||
}
|
||||
|
||||
public Injector getInjector()
|
||||
{
|
||||
if (injector == null)
|
||||
{
|
||||
@Override
|
||||
public Injector getInjector() {
|
||||
if (injector == null) {
|
||||
stateBeforeInjectorCreation = GlobalRegistries.makeCopyOfGlobalState();
|
||||
this.injector = new XtextStandaloneSetup().createInjectorAndDoEMFRegistration();
|
||||
stateAfterInjectorCreation = GlobalRegistries.makeCopyOfGlobalState();
|
||||
|
@ -31,13 +31,13 @@ public class XtextInjectorProvider implements IInjectorProvider, IRegistryConfig
|
|||
return injector;
|
||||
}
|
||||
|
||||
public void restoreRegistry()
|
||||
{
|
||||
@Override
|
||||
public void restoreRegistry() {
|
||||
stateBeforeInjectorCreation.restoreGlobalState();
|
||||
}
|
||||
|
||||
public void setupRegistry()
|
||||
{
|
||||
@Override
|
||||
public void setupRegistry() {
|
||||
getInjector();
|
||||
stateAfterInjectorCreation.restoreGlobalState();
|
||||
}
|
|
@ -9,8 +9,7 @@ package org.eclipse.xtext.junit4;
|
|||
|
||||
import org.eclipse.emf.ecore.EValidator;
|
||||
import org.eclipse.xtext.XtextPackage;
|
||||
import org.eclipse.xtext.junit4.InjectWith;
|
||||
import org.eclipse.xtext.junit4.XtextRunner;
|
||||
import org.eclipse.xtext.junit4.internal.XtextInjectorProvider;
|
||||
import org.eclipse.xtext.validation.CompositeEValidator;
|
||||
import org.junit.Assert;
|
||||
import org.junit.Test;
|
||||
|
|
Loading…
Reference in a new issue