org.schmant.project.intellij
Interface IntelliJModuleCreatorPlugin

All Superinterfaces:
Plugin
All Known Implementing Classes:
IntelliJJavaModuleCreatorPlugin

public interface IntelliJModuleCreatorPlugin
extends Plugin

This interface defines a Plugin that is used by the IntelliJModuleInfoCollector and IntelliJProjectInfoCollector to create a Project object based on the contents of an .iml file.

Since:
0.8
Author:
Karl Gustafsson

Field Summary
static String INTELLIJ_PROJECT_CREATOR_PLUGIN_NAME
          This is the name that this plugin is registered under in the PluginRegistry.
 
Method Summary
 Project createModule(IntelliJWorkspace wos, DirectoryView moduleDir, NamedReadableFile imlFile, Map<String,List<JavaProjectClasspathEntry>> projectLibs, IntelliJWorkspaceSettings settings)
          Create an IntelliJ module (a project) from the contents of the supplied .iml file.
 

Field Detail

INTELLIJ_PROJECT_CREATOR_PLUGIN_NAME

static final String INTELLIJ_PROJECT_CREATOR_PLUGIN_NAME
This is the name that this plugin is registered under in the PluginRegistry.

See Also:
Constant Field Values
Method Detail

createModule

Project createModule(IntelliJWorkspace wos,
                     DirectoryView moduleDir,
                     NamedReadableFile imlFile,
                     Map<String,List<JavaProjectClasspathEntry>> projectLibs,
                     IntelliJWorkspaceSettings settings)
                     throws IOException,
                            SchmantException
Create an IntelliJ module (a project) from the contents of the supplied .iml file.

Parameters:
wos - The workspace object.
moduleDir - The module root directory. Not locked when this method is called unless locked by the build script.
imlFile - The .iml file. Not locked when this method is called unless locked by the build script.
projectLibs - The project libraries. May be null
settings - Workspace settings. May be null.
Returns:
A project, if the plugin was able to create one from the provided information, otherwise null. If this method returns null, the caller will go on and try to use the next registered plugin to create a project.
Throws:
IOException - On I/O errors.
SchmantException - On other errors.