/** @since 2.3 */ protected List<IResourceDescription.Delta> getRelevantDeltas(IBuildContext context) { List<IResourceDescription.Delta> result = newArrayList(); for (IResourceDescription.Delta delta : context.getDeltas()) { if (resourceServiceProvider.canHandle(delta.getUri())) result.add(delta); } return result; }
/** @since 2.3 */ protected List<IResourceDescription.Delta> getRelevantDeltas(IBuildContext context) { List<IResourceDescription.Delta> result = newArrayList(); for (IResourceDescription.Delta delta : context.getDeltas()) { if (resourceServiceProvider.canHandle(delta.getUri()) && (resourceServiceProvider instanceof IResourceServiceProviderExtension) && !((IResourceServiceProviderExtension) resourceServiceProvider) .isReadOnly(delta.getUri())) { result.add(delta); } } return result; }
@Override public void build(IBuildContext context, IProgressMonitor monitor) throws CoreException { if (!context.getBuiltProject().hasNature(KarelNature.NATURE_ID)) return; for (Delta delta : context.getDeltas()) { IResourceDescription newRes = delta.getNew(); if (newRes == null) continue; try { IWorkspaceRoot workspaceRoot = ResourcesPlugin.getWorkspace().getRoot(); URI uri = CommonPlugin.resolve(newRes.getURI()); if (!uri.isFile()) continue; IPath path = new Path(uri.toFileString()); IFile file = workspaceRoot.getFileForLocation(path); if (file == null) continue; generate(context.getBuiltProject(), file, monitor); } catch (Exception e) { IStatus status = new Status(IStatus.ERROR, Activator.PLUGIN_ID, e.getMessage(), e); Activator.getDefault().getLog().log(status); } } context.getResourceSet(); }