org.schmant.plugin.intellij.java
Interface ImlFileParser

All Known Implementing Classes:
ImlFileParserImpl

public interface ImlFileParser

This interface defines a parser for an IntelliJ IDEA's workspace's .iml files. It is used by the IntelliJProjectInfoCollector.

Parser objects are reused and can potentially be used simultaneously by several threads, so they cannot contain any mutable internal state that is not properly guarded.

Since:
0.7.1
Author:
Karl Gustafsson
Task_package:
org.schmant.task.base

Method Summary
 Project parse(IntelliJWorkspace wos, DirectoryView moduleDir, NamedReadableFile imlFile, Map<String,List<JavaProjectClasspathEntry>> projectLibs, IntelliJWorkspaceSettings settings)
          Parse the module file and create a project.
 

Method Detail

parse

Project parse(IntelliJWorkspace wos,
              DirectoryView moduleDir,
              NamedReadableFile imlFile,
              Map<String,List<JavaProjectClasspathEntry>> projectLibs,
              IntelliJWorkspaceSettings settings)
              throws IOException
Parse the module file and create a project.

Parameters:
wos - The IntelliJ workspace being constructed. Don't call any methods on this object.
moduleDir - The project's root directory
imlFile - The .iml file.
projectLibs - The project libraries.
settings - Workspace settings. May be null.
Returns:
The project, or null if the project should be ignored.
Throws:
IOException - On I/O errors