org.eclipse.xtext.ui.wizard
Class AbstractProjectCreator

java.lang.Object
  extended by org.eclipse.ui.actions.WorkspaceModifyOperation
      extended by org.eclipse.xtext.ui.wizard.AbstractProjectCreator
All Implemented Interfaces:
org.eclipse.jface.operation.IRunnableWithProgress, org.eclipse.jface.operation.IThreadListener, IProjectCreator
Direct Known Subclasses:
AbstractPluginProjectCreator, XtextProjectCreator

public abstract class AbstractProjectCreator
extends org.eclipse.ui.actions.WorkspaceModifyOperation
implements IProjectCreator

Author:
Peter Friese - Initial contribution and API, Sebastian Zarnekow

Constructor Summary
AbstractProjectCreator()
           
 
Method Summary
protected  ProjectFactory configureProjectBuilder(ProjectFactory factory)
          Deprecated. use configureProjectFactory(ProjectFactory) instead.
protected  ProjectFactory configureProjectFactory(ProjectFactory factory)
           
protected  org.eclipse.core.resources.IProject createProject(org.eclipse.core.runtime.IProgressMonitor monitor)
           
protected abstract  ProjectFactory createProjectFactory()
           
protected  void enhanceProject(org.eclipse.core.resources.IProject project, org.eclipse.core.runtime.IProgressMonitor monitor)
           
protected  void execute(org.eclipse.core.runtime.IProgressMonitor monitor)
          Performs the steps that are to be treated as a single logical workspace change.
protected abstract  java.util.List<java.lang.String> getAllFolders()
           
protected  java.lang.String[] getBuilders()
           
protected  java.lang.String getCreateModelProjectMessage()
           
protected  java.lang.String getEncoding()
           
protected  org.eclipse.core.resources.IFile getModelFile(org.eclipse.core.resources.IProject project)
           
protected abstract  java.lang.String getModelFolderName()
           
protected  java.lang.String getPrimaryModelFileExtension()
           
protected  IProjectInfo getProjectInfo()
           
protected  java.lang.String[] getProjectNatures()
           
protected  java.util.List<org.eclipse.core.resources.IProject> getReferencedProjects()
           
 org.eclipse.core.resources.IFile getResult()
           
 void setProjectInfo(IProjectInfo projectInfo)
           
protected  void setResult(org.eclipse.core.resources.IFile result)
           
 
Methods inherited from class org.eclipse.ui.actions.WorkspaceModifyOperation
getRule, run, threadChange
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.eclipse.jface.operation.IRunnableWithProgress
run
 

Constructor Detail

AbstractProjectCreator

public AbstractProjectCreator()
Method Detail

getResult

public org.eclipse.core.resources.IFile getResult()
Specified by:
getResult in interface IProjectCreator

setResult

protected void setResult(org.eclipse.core.resources.IFile result)

setProjectInfo

public void setProjectInfo(IProjectInfo projectInfo)
Specified by:
setProjectInfo in interface IProjectCreator

getProjectInfo

protected IProjectInfo getProjectInfo()

getEncoding

protected java.lang.String getEncoding()
                                throws org.eclipse.core.runtime.CoreException
Throws:
org.eclipse.core.runtime.CoreException

execute

protected void execute(org.eclipse.core.runtime.IProgressMonitor monitor)
                throws org.eclipse.core.runtime.CoreException,
                       java.lang.reflect.InvocationTargetException,
                       java.lang.InterruptedException
Description copied from class: org.eclipse.ui.actions.WorkspaceModifyOperation
Performs the steps that are to be treated as a single logical workspace change.

Subclasses must implement this method.

Specified by:
execute in class org.eclipse.ui.actions.WorkspaceModifyOperation
Parameters:
monitor - the progress monitor to use to display progress and field user requests to cancel
Throws:
org.eclipse.core.runtime.CoreException - if the operation fails due to a CoreException
java.lang.reflect.InvocationTargetException - if the operation fails due to an exception other than CoreException
java.lang.InterruptedException - if the operation detects a request to cancel, using IProgressMonitor.isCanceled(), it should exit by throwing InterruptedException. It is also possible to throw OperationCanceledException, which gets mapped to InterruptedException by the run method.

getCreateModelProjectMessage

protected java.lang.String getCreateModelProjectMessage()

getModelFile

protected org.eclipse.core.resources.IFile getModelFile(org.eclipse.core.resources.IProject project)
                                                 throws org.eclipse.core.runtime.CoreException
Throws:
org.eclipse.core.runtime.CoreException

createProject

protected org.eclipse.core.resources.IProject createProject(org.eclipse.core.runtime.IProgressMonitor monitor)

configureProjectBuilder

@Deprecated
protected ProjectFactory configureProjectBuilder(ProjectFactory factory)
Deprecated. use configureProjectFactory(ProjectFactory) instead.


configureProjectFactory

protected ProjectFactory configureProjectFactory(ProjectFactory factory)

createProjectFactory

protected abstract ProjectFactory createProjectFactory()

enhanceProject

protected void enhanceProject(org.eclipse.core.resources.IProject project,
                              org.eclipse.core.runtime.IProgressMonitor monitor)
                       throws org.eclipse.core.runtime.CoreException
Throws:
org.eclipse.core.runtime.CoreException

getPrimaryModelFileExtension

protected java.lang.String getPrimaryModelFileExtension()

getModelFolderName

protected abstract java.lang.String getModelFolderName()

getAllFolders

protected abstract java.util.List<java.lang.String> getAllFolders()

getReferencedProjects

protected java.util.List<org.eclipse.core.resources.IProject> getReferencedProjects()

getProjectNatures

protected java.lang.String[] getProjectNatures()

getBuilders

protected java.lang.String[] getBuilders()