use of org.eclipse.xtext.ui.notification.StateChangeEventBroker in project xtext-eclipse by eclipse.
the class DirtyStateEditorSupportTest method setUp.
@Override
public void setUp() throws Exception {
super.setUp();
document = this;
resourceSet = new ResourceSetImpl();
resourceURI = URI.createURI("scheme://foo");
resource = new XtextResource(resourceURI);
resource.setLanguageName("FooLanguage");
final DefaultResourceServiceProvider resourceServiceProvider = new DefaultResourceServiceProvider() {
@Override
public org.eclipse.xtext.resource.IResourceDescription.Manager getResourceDescriptionManager() {
return DirtyStateEditorSupportTest.this;
}
@SuppressWarnings("unchecked")
@Override
public <T> T get(Class<T> t) {
if (DirtyStateResourceDescription.Manager.class.isAssignableFrom(t))
return (T) new DirtyStateResourceDescription.Manager(DirtyStateEditorSupportTest.this);
if (LanguageInfo.class.isAssignableFrom(t))
return (T) new LanguageInfo("FooLanguage");
return super.get(t);
}
};
ResourceServiceProviderRegistryImpl registry = new ResourceServiceProviderRegistryImpl() {
@Override
public IResourceServiceProvider getResourceServiceProvider(URI uri) {
return resourceServiceProvider;
}
};
resource.setResourceServiceProvider(resourceServiceProvider);
resourceSet.getResources().add(resource);
dirtyStateSupport = new DirtyStateEditorSupport();
dirtyStateSupport.setConcurrentEditingWarningDialog(this);
dirtyStateSupport.setResourceDescriptions(this);
dirtyStateManager = new DirtyStateManager();
stateChangeEventBroker = new StateChangeEventBroker();
dirtyStateManager.addListener(stateChangeEventBroker);
dirtyStateSupport.setDirtyStateManager(dirtyStateManager);
dirtyStateSupport.setStateChangeEventBroker(stateChangeEventBroker);
dirtyResource = new DocumentBasedDirtyResource();
dirtyStateSupport.setDirtyResource(dirtyResource);
dirtyStateSupport.setResourceServiceProviderRegistry(registry);
ignoreConcurrentEditing = Lists.newLinkedList();
exportedObjects = Collections.emptyList();
}
Aggregations