package org.xpect.xtext.lib.setup.workspace;
import java.io.IOException;
import java.util.List;
import org.eclipse.core.resources.IResource;
import org.xpect.xtext.lib.setup.FileSetupContext;
import com.google.common.collect.Lists;
public class Resource<R extends IResource> {
private final List<IResourceConfigurator<? super R>> configurators = Lists.newArrayList();
public void add(IResourceConfigurator<? super R> configurator) {
this.configurators.add(configurator);
}
protected void configure(FileSetupContext ctx, R resource) throws IOException {
for (IResourceConfigurator<? super R> configurator : configurators)
configurator.configure(ctx, resource);
}
public List<IResourceConfigurator<? super R>> getConfigurators() {
return configurators;
}
}