Java源码示例:org.eclipse.xtext.build.IndexState

示例1
protected BuildRequest newBuildRequest(Procedure1<? super BuildRequest> init) {
	BuildRequest result = new BuildRequest();
	ResourceDescriptionsData newIndex = indexState.getResourceDescriptions().copy();
	result.setBaseDir(uri(""));
	XtextResourceSet rs = resourceSetProvider.get();
	rs.getURIConverter().getURIHandlers().clear();
	rs.getURIConverter().getURIHandlers().add(inMemoryURIHandler);
	rs.setClasspathURIContext(AbstractIncrementalBuilderTest.class.getClassLoader());
	ProjectDescription projectDescription = new ProjectDescription();
	projectDescription.setName("test-project");
	projectDescription.attachToEmfObject(rs);
	ChunkedResourceDescriptions index = new ChunkedResourceDescriptions(Collections.emptyMap(), rs);
	index.setContainer(projectDescription.getName(), newIndex);
	result.setResourceSet(rs);
	result.setDirtyFiles(new ArrayList<>());
	result.setDeletedFiles(new ArrayList<>());
	result.setAfterValidate((uri, issues) -> {
		Iterables.addAll(this.issues, issues);
		return Iterables.isEmpty(issues);
	});
	result.setAfterDeleteFile(f -> deleted.add(f));
	result.setAfterGenerateFile((source, target) -> generated.put(source, target));
	result.setState(new IndexState(newIndex, indexState.getFileMappings().copy()));
	init.apply(result);
	return result;
}
 
示例2
/**
 * Creates a new build request for this project.
 */
protected BuildRequest newBuildRequest(List<URI> changedFiles, List<URI> deletedFiles,
		List<IResourceDescription.Delta> externalDeltas, CancelIndicator cancelIndicator) {
	BuildRequest result = new BuildRequest();
	result.setBaseDir(baseDir);
	result.setState(
			new IndexState(indexState.getResourceDescriptions().copy(), indexState.getFileMappings().copy()));
	result.setResourceSet(createFreshResourceSet(result.getState().getResourceDescriptions()));
	result.setDirtyFiles(changedFiles);
	result.setDeletedFiles(deletedFiles);
	result.setExternalDeltas(externalDeltas);
	result.setAfterValidate((URI uri, Iterable<Issue> issues) -> {
		issueAcceptor.apply(uri, issues);
		return true;
	});
	result.setCancelIndicator(cancelIndicator);
	result.setIndexOnly(projectConfig.isIndexOnly());
	return result;
}
 
示例3
@Override
public void setUp() throws Exception {
	super.setUp();
	if (ReusedTypeProviderTest.typeProvider == null) {
		String pathToSources = "/org/eclipse/xtext/common/types/testSetups";
		List<String> files = ReusedTypeProviderTest.readResource(pathToSources + "/files.list");
		ResourceDescriptionsData part = new ResourceDescriptionsData(Collections.emptySet());
		XtextResourceSet resourceSet = resourceSetProvider.get();
		ProjectDescription projectDesc = new ProjectDescription();
		projectDesc.setName("my-test-project");
		projectDesc.attachToEmfObject(resourceSet);
		ChunkedResourceDescriptions index = new ChunkedResourceDescriptions(Collections.emptyMap(), resourceSet);
		index.setContainer(projectDesc.getName(), part);
		resourceSet.setClasspathURIContext(ReusedTypeProviderTest.class.getClassLoader());

		typeProviderFactory.createTypeProvider(resourceSet);
		BuildRequest buildRequest = new BuildRequest();
		for (String file : files) {
			if (file != null) {
				String fullPath = pathToSources + "/" + file;
				URL url = ReusedTypeProviderTest.class.getResource(fullPath);
				buildRequest.getDirtyFiles().add(URI.createURI(url.toExternalForm()));
			}
		}
		buildRequest.setResourceSet(resourceSet);
		buildRequest.setState(new IndexState(part, new Source2GeneratedMapping()));
		builder.build(buildRequest, (URI it) -> {
			return resourceServiceProviderRegistry.getResourceServiceProvider(it);
		});
		ReusedTypeProviderTest.typeProvider = typeProviderFactory.findTypeProvider(resourceSet);
	}
}
 
示例4
protected IndexState build(final BuildRequest buildRequest) {
  this.clean();
  final Function1<URI, IResourceServiceProvider> _function = (URI it) -> {
    return this.getLanguages().getResourceServiceProvider(it);
  };
  this.indexState = this.incrementalBuilder.build(buildRequest, _function).getIndexState();
  return this.indexState;
}
 
示例5
protected IndexState build(BuildRequest buildRequest) {
	clean();
	indexState = incrementalBuilder.build(buildRequest, it -> getLanguages().getResourceServiceProvider(it))
			.getIndexState();
	return indexState;
}
 
示例6
public IndexState getIndexState() {
	return indexState;
}
 
示例7
protected void setIndexState(IndexState indexState) {
	this.indexState = indexState;
}