Package org.eclipse.ui.dialogs

# Class ContainerGenerator

java.lang.Object
org.eclipse.ui.dialogs.ContainerGenerator

public class ContainerGenerator extends Object
For creating folder resources that currently do not exist, along a given workspace path.

This class may be instantiated; it is not intended to be subclassed.

Example usage:

     ContainerGenerator gen = new ContainerGenerator(IPath.fromOSString("/A/B"));
     IContainer res = null;
     try {
            res = gen.getContainer(monitor); // creates project A and folder B if required
     } catch (CoreException e) {
            // handle failure
     } catch (OperationCanceledException e) {
            // handle cancelation
     }

Restriction:
  This class is not intended to be subclassed by clients.

## Constructor Summary

Constructors
Constructor
Description
`ContainerGenerator(IPath containerPath)`
Creates a generator for the container resource (folder or project) at the given workspace path.

## Method Summary

Modifier and Type
Method
Description
`IContainer`
`generateContainer(IProgressMonitor monitor)`
Ensures that this generator's container resource exists.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### ContainerGenerator

public ContainerGenerator(IPath containerPath)
Creates a generator for the container resource (folder or project) at the given workspace path. Assumes the path has already been validated.

Call `getContainer` to create any missing resources along the path.

Parameters:
  `containerPath` - the workspace path of the container

## Method Details

### generateContainer

public IContainer generateContainer(IProgressMonitor monitor) throws CoreException
Ensures that this generator's container resource exists. Creates any missing resource containers along the path; does nothing if the container resource already exists.

Note: This method should be called within a workspace modify operation since it may create resources.

Parameters:
  `monitor` - a progress monitor
Returns:
  the container resource
Throws:
  `CoreException` - if the operation fails
  `OperationCanceledException` - if the operation is canceled