com.atlassian.jira.bc.project.component
Interface ProjectComponentManager

All Known Implementing Classes:
DefaultProjectComponentManager

public interface ProjectComponentManager

Implement this interface to validate project component values and to provide methods for accessing and persisting project components.


Method Summary
 boolean containsName(java.lang.String name, java.lang.Long projectId)
          Implement this method in order to check whether component with specified name is stored.
 org.ofbiz.core.entity.GenericValue convertToGenericValue(ProjectComponent projectComponent)
          Deprecated. don't use GenericValue use the ProjectComponent instead.
 java.util.Collection<org.ofbiz.core.entity.GenericValue> convertToGenericValues(java.util.Collection<ProjectComponent> projectComponents)
          Deprecated. don't use GenericValue use the ProjectComponent instead.
 ProjectComponent create(java.lang.String name, java.lang.String description, java.lang.String lead, long assigneeType, java.lang.Long projectId)
          Implement this method to create a new ProjectComponent object associated with the project with the ID specified and with the values given.
 void delete(java.lang.Long componentId)
          Implement this method to delete the component.
 ProjectComponent find(java.lang.Long id)
          Implement this method to find the component with the specified ID.
 java.util.Collection<ProjectComponent> findAll()
          Implement this method to find all components.
 java.util.Collection<ProjectComponent> findAllForProject(java.lang.Long projectId)
          Implement this method to find all components associated with the project with the ID specified.
 ProjectComponent findByComponentName(java.lang.Long projectId, java.lang.String componentName)
          Finds the ProjectComponent with the given name in the project with the given id.
 java.util.Collection<ProjectComponent> findByComponentNameCaseInSensitive(java.lang.String componentName)
          Finds all ProjectComponents with the given name with comparisons case insenstive.
 java.util.Collection<ProjectComponent> findComponentsByIssue(Issue issue)
           
 java.util.Collection<org.ofbiz.core.entity.GenericValue> findComponentsByIssueGV(Issue issue)
          Deprecated. use findComponentsByIssue that returns a Collection instead
 java.util.Collection<ProjectComponent> findComponentsByLead(java.lang.String userName)
          Retrieve a collection of ProjectComponents - where the lead of each component is the specified user.
 java.lang.Long findProjectIdForComponent(java.lang.Long componentId)
          Implement this method to look up the project ID for the given component ID.
 java.util.List<ProjectComponent> getComponents(java.util.List<java.lang.Long> ids)
          Creates a list of ProjectComponent objects from the given list of IDs.
 ProjectComponent update(MutableProjectComponent component)
          Implement this method to update the component specified with the values given.
 

Method Detail

create

ProjectComponent create(java.lang.String name,
                        java.lang.String description,
                        java.lang.String lead,
                        long assigneeType,
                        java.lang.Long projectId)
                        throws java.lang.IllegalArgumentException
Implement this method to create a new ProjectComponent object associated with the project with the ID specified and with the values given. It should also validate the values - store and return the ProjectComponent if validation succeeds. Otherwise, throw ValidationErrorsException.

Parameters:
name - name of component
description - description of component
lead - user name associated with component
assigneeType - assignee type
projectId - ID of project that component is associated with
Returns:
new instance of ProjectComponent with the values specified
Throws:
java.lang.IllegalArgumentException - if one or more arguments have invalid values

find

ProjectComponent find(java.lang.Long id)
                      throws EntityNotFoundException
Implement this method to find the component with the specified ID.

Parameters:
id - component ID to search for
Returns:
ProjectComponent with the specified ID
Throws:
EntityNotFoundException - if the component is not found

findAllForProject

java.util.Collection<ProjectComponent> findAllForProject(java.lang.Long projectId)
Implement this method to find all components associated with the project with the ID specified.

Parameters:
projectId - ID of project to search for
Returns:
collection of ProjectComponent objects associated with the project with the ID specified

findAll

java.util.Collection<ProjectComponent> findAll()
Implement this method to find all components.

Returns:
collection of all ProjectComponent objects

getComponents

java.util.List<ProjectComponent> getComponents(java.util.List<java.lang.Long> ids)
                                               throws EntityNotFoundException
Creates a list of ProjectComponent objects from the given list of IDs.

Parameters:
ids - The List of ProjectComponent IDs.
Returns:
a list of ProjectComponent objects from the given list of IDs.
Throws:
EntityNotFoundException - if no ProjectComponent exists for any of the given IDs.

update

ProjectComponent update(MutableProjectComponent component)
                        throws EntityNotFoundException
Implement this method to update the component specified with the values given.

Parameters:
component - component to be updated
Returns:
ProjectComponent with updated values as specified
Throws:
EntityNotFoundException - if component is not found

delete

void delete(java.lang.Long componentId)
            throws EntityNotFoundException
Implement this method to delete the component.

Parameters:
componentId - component id
Throws:
EntityNotFoundException - if the component is not found

containsName

boolean containsName(java.lang.String name,
                     java.lang.Long projectId)
Implement this method in order to check whether component with specified name is stored.

Parameters:
name - component name, null will cause IllegalArgumentException
projectId - project ID
Returns:
true if new name is stored

findProjectIdForComponent

java.lang.Long findProjectIdForComponent(java.lang.Long componentId)
                                         throws EntityNotFoundException
Implement this method to look up the project ID for the given component ID. If project is not found, throws EntityNotFoundException.

Parameters:
componentId - component ID
Returns:
project ID
Throws:
EntityNotFoundException - if component with the specified id cannot be found

convertToGenericValue

org.ofbiz.core.entity.GenericValue convertToGenericValue(ProjectComponent projectComponent)
Deprecated. don't use GenericValue use the ProjectComponent instead.

Converts the ProjectComponent to GenericValue form, provided as a transitional measure until GenericValue is eradicated from the front end.

Parameters:
projectComponent - project component
Returns:
the ProjectComponent as a GenericValue.

convertToGenericValues

java.util.Collection<org.ofbiz.core.entity.GenericValue> convertToGenericValues(java.util.Collection<ProjectComponent> projectComponents)
Deprecated. don't use GenericValue use the ProjectComponent instead.

Temporary method to allow conversion of a collection of ProjectComponent objects to a collection of GenericValues representing a project component.

Parameters:
projectComponents - a collection of project components
Returns:
Collection of GenericValues representing the collection of ProjectComponent objects passed in

findByComponentName

ProjectComponent findByComponentName(java.lang.Long projectId,
                                     java.lang.String componentName)
Finds the ProjectComponent with the given name in the project with the given id.

Parameters:
projectId - id of the project.
componentName - name of the component.
Returns:
the ProjectComponent or null if there is no such ProjectComponent.

findByComponentNameCaseInSensitive

java.util.Collection<ProjectComponent> findByComponentNameCaseInSensitive(java.lang.String componentName)
Finds all ProjectComponents with the given name with comparisons case insenstive.

Parameters:
componentName - name of the component.
Returns:
all ProjectComponents with the given name or an empty collection if there is no such ProjectComponent.

findComponentsByLead

java.util.Collection<ProjectComponent> findComponentsByLead(java.lang.String userName)
Retrieve a collection of ProjectComponents - where the lead of each component is the specified user.

Parameters:
userName - the lead user name
Returns:
collection of components - where the lead of each component is the specified user

findComponentsByIssue

java.util.Collection<ProjectComponent> findComponentsByIssue(Issue issue)
Parameters:
issue - find components on this issue
Returns:
collection of project components associated with this issue
Since:
4.2

findComponentsByIssueGV

java.util.Collection<org.ofbiz.core.entity.GenericValue> findComponentsByIssueGV(Issue issue)
Deprecated. use findComponentsByIssue that returns a Collection instead

This code used to live directly in the IssueImpl but it has been refactored into the ProjectComponentManager to make things a little cleaner. That's why it is "new in 4.2" but immediately marked as deprecated

Parameters:
issue - find components for this issue
Returns:
collection of generic values representing the components assigned to the issue
Since:
4.2


Copyright © 2002-2010 Atlassian. All Rights Reserved.