All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.bndtools.builder.CompositeResourceDeltaVisitor Maven / Gradle / Ivy

package org.bndtools.builder;

import java.util.LinkedList;
import java.util.List;

import org.eclipse.core.resources.IResourceDelta;
import org.eclipse.core.resources.IResourceDeltaVisitor;
import org.eclipse.core.runtime.CoreException;

public class CompositeResourceDeltaVisitor implements IResourceDeltaVisitor {

	private final List delegates = new LinkedList<>();

	public void addDelegate(IResourceDeltaVisitor delegate) {
		this.delegates.add(delegate);
	}

	public void removeDelegate(IResourceDeltaVisitor delegate) {
		this.delegates.remove(delegate);
	}

	@Override
	public boolean visit(IResourceDelta delta) throws CoreException {
		boolean recurse = false;

		for (IResourceDeltaVisitor delegate : delegates) {
			recurse = delegate.visit(delta) || recurse;
		}

		return recurse;
	}

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy