com.atlassian.jira.imports.project.core
Interface BackupOverviewBuilder

All Known Implementing Classes:
BackupOverviewBuilderImpl

public interface BackupOverviewBuilder

This is the intermediate object that collects information from the SAX parser and is able to produce a BackupOverview.
This object is used to build up data gleaned from an XML backup. This contains the JIRA information (build number, edition, plugins, etc.) and all the project information (components, versions, etc.) about the data stored in an XML backup.
NOTE: This object only collates all its project data when the getBackupOverview() method is called. This object is not meant to be used as a transfer object, instead it is an incrementally populated builder.

Since:
v3.13

Method Summary
 void addComponent(ExternalComponent component)
          Allows you to add a reference to an ExternalComponent.
 void addConfigurationContext(BackupOverviewBuilderImpl.ConfigurationContext configuration)
          Regiserters a portion of a projects custom field configuration so that the builder can collate this with the addFieldConfigSchemeIssueType(com.atlassian.jira.imports.project.core.BackupOverviewBuilderImpl.FieldConfigSchemeIssueType) and addExternalCustomField(com.atlassian.jira.external.beans.ExternalCustomField) data to produce a project relevant custom field configuration.
 void addExternalCustomField(ExternalCustomField externalCustomField)
          Registers the custom field information portion of a projects custom field configuration so that the builder can collate this with the addConfigurationContext(com.atlassian.jira.imports.project.core.BackupOverviewBuilderImpl.ConfigurationContext) and addFieldConfigSchemeIssueType(com.atlassian.jira.imports.project.core.BackupOverviewBuilderImpl.FieldConfigSchemeIssueType) data to produce a project relevant custom field configuration.
 void addFieldConfigSchemeIssueType(BackupOverviewBuilderImpl.FieldConfigSchemeIssueType fieldConfigSchemeIssueType)
          Regiserters a portion of a projects custom field configuration so that the builder can collate this with the addConfigurationContext(com.atlassian.jira.imports.project.core.BackupOverviewBuilderImpl.ConfigurationContext) and addExternalCustomField(com.atlassian.jira.external.beans.ExternalCustomField) data to produce a project relevant custom field configuration.
 void addIssue(ExternalIssue issue)
          Allows you to register an issue against a project.
 void addPluginVersion(PluginVersion pluginVersion)
          Allows you to add a reference to a PluginVersion.
 void addProject(ExternalProject project)
          Allows you to add a reference to an ExternalProject.
 void addVersion(ExternalVersion version)
          Allows you to add a reference to an ExternalVersion.
 BackupOverview getBackupOverview()
          Returns a BackupOverview that is populated by the current state of the builder.
 void populateInformationFromElement(java.lang.String elementName, java.util.Map attributes)
          Used to handle populating the builder from a SAX parser.
 void setBuildNumber(java.lang.String buildNumber)
          Registers the JIRA build number with this object.
 void setEdition(java.lang.String edition)
          Registers the JIRA edition with this object.
 void setUnassignedIssuesAllowed(boolean unassignedIssuesAllowed)
          Registers the value of the "UnassignedIssuesAllowed" setting.
 

Method Detail

getBackupOverview

BackupOverview getBackupOverview()
Returns a BackupOverview that is populated by the current state of the builder.

Returns:
backupOverview that contains the BackupProject's and JIRA system information that has been registered with the builder.

addProject

void addProject(ExternalProject project)
Allows you to add a reference to an ExternalProject.

Parameters:
project - the project to add.

addPluginVersion

void addPluginVersion(PluginVersion pluginVersion)
Allows you to add a reference to a PluginVersion.

Parameters:
pluginVersion - the plugin version to add.

addVersion

void addVersion(ExternalVersion version)
Allows you to add a reference to an ExternalVersion.

Parameters:
version - the version information to associate with the project.

addComponent

void addComponent(ExternalComponent component)
Allows you to add a reference to an ExternalComponent.

Parameters:
component - the component information to associate with the project.

addIssue

void addIssue(ExternalIssue issue)
Allows you to register an issue against a project. The issue id's are made available via the BackupProject.getIssueIds() method.

Parameters:
issue - which has its id and project set. We should be able to convert the issue id to a long.

setBuildNumber

void setBuildNumber(java.lang.String buildNumber)
Registers the JIRA build number with this object.

Parameters:
buildNumber - the build number as contained in the JIRA backup.

setEdition

void setEdition(java.lang.String edition)
Registers the JIRA edition with this object.

Parameters:
edition - the edition as contained in the JIRA backup.

setUnassignedIssuesAllowed

void setUnassignedIssuesAllowed(boolean unassignedIssuesAllowed)
Registers the value of the "UnassignedIssuesAllowed" setting.

Parameters:
unassignedIssuesAllowed - The value of the "UnassignedIssuesAllowed" setting.

addConfigurationContext

void addConfigurationContext(BackupOverviewBuilderImpl.ConfigurationContext configuration)
Regiserters a portion of a projects custom field configuration so that the builder can collate this with the addFieldConfigSchemeIssueType(com.atlassian.jira.imports.project.core.BackupOverviewBuilderImpl.FieldConfigSchemeIssueType) and addExternalCustomField(com.atlassian.jira.external.beans.ExternalCustomField) data to produce a project relevant custom field configuration.

Parameters:
configuration - is the configuration represented in the backup XML.

addFieldConfigSchemeIssueType

void addFieldConfigSchemeIssueType(BackupOverviewBuilderImpl.FieldConfigSchemeIssueType fieldConfigSchemeIssueType)
Regiserters a portion of a projects custom field configuration so that the builder can collate this with the addConfigurationContext(com.atlassian.jira.imports.project.core.BackupOverviewBuilderImpl.ConfigurationContext) and addExternalCustomField(com.atlassian.jira.external.beans.ExternalCustomField) data to produce a project relevant custom field configuration.

Parameters:
fieldConfigSchemeIssueType - is the linked issue type information represented in the backup XML.

addExternalCustomField

void addExternalCustomField(ExternalCustomField externalCustomField)
Registers the custom field information portion of a projects custom field configuration so that the builder can collate this with the addConfigurationContext(com.atlassian.jira.imports.project.core.BackupOverviewBuilderImpl.ConfigurationContext) and addFieldConfigSchemeIssueType(com.atlassian.jira.imports.project.core.BackupOverviewBuilderImpl.FieldConfigSchemeIssueType) data to produce a project relevant custom field configuration.

Parameters:
externalCustomField - is the custom field information represented in the backup XML.

populateInformationFromElement

void populateInformationFromElement(java.lang.String elementName,
                                    java.util.Map attributes)
                                    throws ParseException
Used to handle populating the builder from a SAX parser. This method will delegate the actual handling of the element and attributes to an instance of a BackupOverviewPopulator. This will then populate this object with the information it gains from the XML information.

Parameters:
elementName - identifies the XML element.
attributes - identifies the attributes associated with the XML element.
Throws:
ParseException - if the attributes are invalid for this element.


Copyright © 2002-2010 Atlassian. All Rights Reserved.