package org.xpect.xtext.lib.setup.workspace;
import java.io.IOException;
import org.eclipse.core.resources.IContainer;
import org.eclipse.core.resources.IFolder;
import org.eclipse.core.runtime.CoreException;
import org.xpect.setup.XpectSetupComponent;
import org.xpect.xtext.lib.setup.FileSetupContext;
import org.xpect.xtext.lib.setup.workspace.Workspace.Instance;
import org.xpect.xtext.lib.util.IFileUtil;
@XpectSetupComponent
public class Folder extends Container<IFolder> implements IResourceFactory<IFolder, IContainer> {
private final org.xpect.xtext.lib.setup.generic.Folder delegate;
public Folder(String name) {
this.delegate = new org.xpect.xtext.lib.setup.generic.Folder(name);
}
public Folder(org.xpect.xtext.lib.setup.generic.Folder delegate) {
super();
this.delegate = delegate;
}
public IFolder create(FileSetupContext ctx, IContainer container, Instance instance) throws IOException, CoreException {
IFolder folder = IFileUtil.createFolder(container, delegate.getLocalURI(ctx).toString());
configure(ctx, folder);
createMembers(ctx, folder, instance);
return folder;
}
}