org.apache.maven.plugin.issues
Class AbstractIssueManagementSystem

java.lang.Object
  extended by org.apache.maven.plugin.issues.AbstractIssueManagementSystem
All Implemented Interfaces:
IssueManagementSystem
Direct Known Subclasses:
GitHubIssueManagementSystem, JIRAIssueManagmentSystem, TracIssueManagmentSystem

public abstract class AbstractIssueManagementSystem
extends Object
implements IssueManagementSystem

Historically, this plugin started out working against an IMS-neutral XML file, and then added extensive support for JIRA with some small snippets of code for other issue management systems. This class is intended to start a cleaner modularity for support of multiple systems.
Initially, all it provides is a structure for mapping from per-IMS issue types to the three categories defined in IssueAdapter.
Note that the map in here is not immutable. It contains the default configuration for an IMS. Users are expected to add entries to the map via configuration to reflect their customizations.

Version:
$Id: AbstractIssueManagementSystem.java 1379901 2012-09-01 23:44:49Z dennisl $

Field Summary
protected  Map<String,IssueType> issueTypeMap
           
 
Constructor Summary
protected AbstractIssueManagementSystem()
           
 
Method Summary
 void applyConfiguration(Map<String,String> issueTypes)
          Configure this issue management system.
 Map<String,IssueType> getIssueTypeMap()
          Get a mapping of issue types used in this issue management system to the ones used in a changes.xml file.
abstract  String getName()
          Get the name of the issue management system.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

issueTypeMap

protected Map<String,IssueType> issueTypeMap
Constructor Detail

AbstractIssueManagementSystem

protected AbstractIssueManagementSystem()
Method Detail

getIssueTypeMap

public Map<String,IssueType> getIssueTypeMap()
Description copied from interface: IssueManagementSystem
Get a mapping of issue types used in this issue management system to the ones used in a changes.xml file.

Specified by:
getIssueTypeMap in interface IssueManagementSystem
Returns:
The map from keys used in poms and other config files to issue types.

getName

public abstract String getName()
Description copied from interface: IssueManagementSystem
Get the name of the issue management system.

Specified by:
getName in interface IssueManagementSystem
Returns:
The name of the IMS.

applyConfiguration

public void applyConfiguration(Map<String,String> issueTypes)
                        throws MojoExecutionException
Description copied from interface: IssueManagementSystem
Configure this issue management system.

Specified by:
applyConfiguration in interface IssueManagementSystem
Parameters:
issueTypes - The mapping of issue types used in this issue management system to the ones used in a changes.xml file
Throws:
MojoExecutionException - If the configuration fails


Copyright © 2002–2014 The Apache Software Foundation. All rights reserved.