org.schmant.project
Interface ProjectRepositoryInfoCollector<T extends ProjectRepository,U extends ProjectRepositoryConfiguration>

Type Parameters:
T - The type of project repository that the implementation collects info for.
U - The type of project repository configuration object created by the implementation.
All Known Implementing Classes:
AbstractIntelliJInfoCollector, EclipseWorkspaceInfoCollector, IntelliJModuleInfoCollector, IntelliJProjectInfoCollector

public interface ProjectRepositoryInfoCollector<T extends ProjectRepository,U extends ProjectRepositoryConfiguration>

This interface is implemented by classes that collect information that is used to populate a ProjectRepository.

Implementations are encouraged to provide a good toString method since that is used when reporting errors.

An instance of this object is meant to be used once for collecting information on a project repository and then it should be discarded.

Since:
0.7
Author:
Karl Gustafsson

Method Summary
 ProjectRepositoryInfo<U> collect(T pr)
          Collect information for the workspace and return an object containing the parsed information.
 

Method Detail

collect

ProjectRepositoryInfo<U> collect(T pr)
Collect information for the workspace and return an object containing the parsed information.

Parameters:
pr - A reference to the workspace object. This method is called from the workspace constructor, so no methods may be called on this object since it is not fully initialized yet. The created projects can save it for future reference, though.
Returns:
Workspace information.