com.atlassian.jira.issue
Interface IssueInputParameters

All Known Implementing Classes:
IssueInputParametersImpl

public interface IssueInputParameters

This represents an issue builder and can be used to provide parameters that can be used to create and update an issue through the IssueService.

Any fields that are set on this object will have the values used for validation and population of the issue object created via the validate methods on the IssueService. This object is forgiving as possible so if you try to set a null value for a field no exceptions will be thrown, the value will just be ignored.

Some users might want to provide a FieldValuesHolder to the validation calls with some pre-populated data, if this is the case then you can set the field values holder on this object and the IssueService will clone the contents and pass them along to any field invocations it might make.

If you wish to indicate to the IssueService that you do not want to validate against all fields configured for the create screen then you can set the setProvidedFields(java.util.Collection) with the field id's that you want to have validated. All other fields that exist on the screen will be populated with the system default.

NOTE: this object is not thread-safe and is only meant to be used as a transport object.

Since:
v4.1

Method Summary
 IssueInputParameters addCustomFieldValue(java.lang.Long customFieldId, java.lang.String... values)
          Adds a value for a custom field with the specified id.
 IssueInputParameters addCustomFieldValue(java.lang.String fullCustomFieldKey, java.lang.String... values)
          Adds a value for a custom field with the specified full key.
 java.util.Map<java.lang.String,java.lang.String[]> getActionParameters()
          This provides the "web-style" parameters that JIRA fields expect to perform their functions.
 java.lang.Long[] getAffectedVersionIds()
           
 java.lang.String getAssigneeId()
           
 java.lang.String getCommentValue()
           
 java.lang.Long[] getComponentIds()
           
 java.lang.String[] getCustomFieldValue(java.lang.Long customFieldId)
           
 java.lang.String[] getCustomFieldValue(java.lang.String fullCustomFieldKey)
           
 java.lang.String getDescription()
           
 java.lang.String getDueDate()
           
 java.lang.String getEnvironment()
           
 java.util.Map<java.lang.String,java.lang.Object> getFieldValuesHolder()
           
 java.lang.Long[] getFixVersionIds()
           
 java.lang.String getIssueTypeId()
           
 java.lang.Long getOriginalEstimate()
           
 java.lang.String getPriorityId()
           
 java.lang.Long getProjectId()
           
 java.util.Collection<java.lang.String> getProvidedFields()
           
 java.lang.String getReporterId()
           
 java.lang.String getResolutionDate()
           
 java.lang.String getResolutionId()
           
 java.lang.Long getSecurityLevelId()
           
 java.lang.String getStatusId()
           
 java.lang.String getSummary()
           
 java.lang.Long getTimeSpent()
           
 boolean isFieldPresent(java.lang.String fieldId)
           
 boolean isFieldSet(java.lang.String fieldId)
           
 boolean retainExistingValuesWhenParameterNotProvided()
           
 IssueInputParameters setAffectedVersionIds(java.lang.Long... affectedVersionIds)
           
 IssueInputParameters setAssigneeId(java.lang.String assigneeId)
           
 IssueInputParameters setComment(java.lang.String comment)
          Set a comment value with no visibility restrictions.
 IssueInputParameters setComment(java.lang.String comment, java.lang.Long projectRoleId)
          Set a comment value with a project role restriction.
 IssueInputParameters setComment(java.lang.String comment, java.lang.String groupId)
          Set a comment value with a group restriction.
 IssueInputParameters setComponentIds(java.lang.Long... componentIds)
           
 IssueInputParameters setDescription(java.lang.String description)
           
 IssueInputParameters setDueDate(java.lang.String dueDate)
           
 IssueInputParameters setEnvironment(java.lang.String environment)
           
 void setFieldValuesHolder(java.util.Map<java.lang.String,java.lang.Object> fieldValuesHolder)
          If set the validation will use the seed values from this field values holder.
 IssueInputParameters setFixVersionIds(java.lang.Long... fixVersionIds)
           
 IssueInputParameters setIssueTypeId(java.lang.String issueTypeId)
           
 IssueInputParameters setOriginalEstimate(java.lang.Long originalEstimate)
           
 IssueInputParameters setPriorityId(java.lang.String priorityId)
           
 IssueInputParameters setProjectId(java.lang.Long projectId)
           
 void setProvidedFields(java.util.Collection<java.lang.String> providedFields)
          Use this to indicate which fields validation should be performed on, if left alone then the systems configured fields for either create/update will be used.
 IssueInputParameters setReporterId(java.lang.String reporterId)
           
 IssueInputParameters setResolutionDate(java.lang.String resolutionDate)
           
 IssueInputParameters setResolutionId(java.lang.String resolutionId)
           
 void setRetainExistingValuesWhenParameterNotProvided(boolean retain)
           
 IssueInputParameters setSecurityLevelId(java.lang.Long securityLevelId)
           
 IssueInputParameters setStatusId(java.lang.String statusId)
           
 IssueInputParameters setSummary(java.lang.String summary)
           
 IssueInputParameters setTimeSpent(java.lang.Long timeSpent)
           
 

Method Detail

retainExistingValuesWhenParameterNotProvided

boolean retainExistingValuesWhenParameterNotProvided()
Returns:
true if the issues value should be retained when a parameter has not been provided, false if the missing parameter should be treated as an update.

setRetainExistingValuesWhenParameterNotProvided

void setRetainExistingValuesWhenParameterNotProvided(boolean retain)
Parameters:
retain - true if non-provided parameters should have the values retained, false otherwise.
See Also:
retainExistingValuesWhenParameterNotProvided()

getCustomFieldValue

java.lang.String[] getCustomFieldValue(java.lang.Long customFieldId)
Parameters:
customFieldId - uniquely identifies the custom field value you are looking for.
Returns:
the values for the provided custom field if they exist, null otherwise.

getCustomFieldValue

java.lang.String[] getCustomFieldValue(java.lang.String fullCustomFieldKey)
Parameters:
fullCustomFieldKey - identifies the custom field values you are looking for.
Returns:
the values for the provided custom field if they exist, null otherwise.

addCustomFieldValue

IssueInputParameters addCustomFieldValue(java.lang.Long customFieldId,
                                         java.lang.String... values)
Adds a value for a custom field with the specified id. This will put a value in the web-style parameters with a key of the form "customfield_PROVIDED_ID". If you want to specify the key then use the method addCustomFieldValue(String, String...).

Parameters:
customFieldId - the unique identifier of the custom field.
values - the custom field values, must be in the format the field expects.
Returns:
this object.

addCustomFieldValue

IssueInputParameters addCustomFieldValue(java.lang.String fullCustomFieldKey,
                                         java.lang.String... values)
Adds a value for a custom field with the specified full key. This will put a value in the web-style parameters with a key as provided.

Parameters:
fullCustomFieldKey - used in the "web-style" parameters as the key, the custom field should expect this value as the key in its populate from parameters method.
values - the custom field values, must be in the format the field expects.
Returns:
this object.

getCommentValue

java.lang.String getCommentValue()
Returns:
the comment string value if it has been set, null otherwise.

setComment

IssueInputParameters setComment(java.lang.String comment)
Set a comment value with no visibility restrictions.

Parameters:
comment - the comment value.
Returns:
this object.

setComment

IssueInputParameters setComment(java.lang.String comment,
                                java.lang.Long projectRoleId)
Set a comment value with a project role restriction.

Parameters:
comment - the comment value.
projectRoleId - the id of the project role the comment must be restricted by.
Returns:
this object.

setComment

IssueInputParameters setComment(java.lang.String comment,
                                java.lang.String groupId)
Set a comment value with a group restriction.

Parameters:
comment - the comment value.
groupId - the group name that the comment must be restricted by.
Returns:
this object.

getActionParameters

java.util.Map<java.lang.String,java.lang.String[]> getActionParameters()
This provides the "web-style" parameters that JIRA fields expect to perform their functions.

Returns:
this is a raw map of "web" style input parameters. These parameters are used to allow the fields to attain the user inputted values. This map is of the style: <field_name> <String [] {value}>.

setFieldValuesHolder

void setFieldValuesHolder(java.util.Map<java.lang.String,java.lang.Object> fieldValuesHolder)
If set the validation will use the seed values from this field values holder.

Parameters:
fieldValuesHolder - provides the seed values for the field values holder.

getFieldValuesHolder

java.util.Map<java.lang.String,java.lang.Object> getFieldValuesHolder()
Returns:
the provided field values holder or an empty map, never null.

getProvidedFields

java.util.Collection<java.lang.String> getProvidedFields()
Returns:
the field id's that should be validated, null if not specified.

setProvidedFields

void setProvidedFields(java.util.Collection<java.lang.String> providedFields)
Use this to indicate which fields validation should be performed on, if left alone then the systems configured fields for either create/update will be used.

Parameters:
providedFields - a collection of Field.getId()'s which identify the fields.

isFieldSet

boolean isFieldSet(java.lang.String fieldId)
Parameters:
fieldId - identifies the field in question, this will be the Field.getId().
Returns:
true if a non-null, non-empty value has been set for the field, false if not.

isFieldPresent

boolean isFieldPresent(java.lang.String fieldId)
Parameters:
fieldId - identifies the field in question, this will be the Field.getId().
Returns:
true if the field has been set, even with an empty value, false if not.

setProjectId

IssueInputParameters setProjectId(java.lang.Long projectId)
Parameters:
projectId - sets the project id for the issue.
Returns:
this object.

getProjectId

java.lang.Long getProjectId()
Returns:
the set project id, null if one does not exist or if it is not a valid number.

setIssueTypeId

IssueInputParameters setIssueTypeId(java.lang.String issueTypeId)
Parameters:
issueTypeId - sets the issue type for the issue.
Returns:
this object.

getIssueTypeId

java.lang.String getIssueTypeId()
Returns:
the set issue type id, null if one does not exist.

setPriorityId

IssueInputParameters setPriorityId(java.lang.String priorityId)
Parameters:
priorityId - sets the priority for the issue.
Returns:
this object.

getPriorityId

java.lang.String getPriorityId()
Returns:
the set priority id, null if one does not exist.

setResolutionId

IssueInputParameters setResolutionId(java.lang.String resolutionId)
Parameters:
resolutionId - sets the resolution for the issue.
Returns:
this object.

getResolutionId

java.lang.String getResolutionId()
Returns:
the set resolution id, null if one does not exist.

setStatusId

IssueInputParameters setStatusId(java.lang.String statusId)
Parameters:
statusId - sets the status of the issue.
Returns:
this object.

getStatusId

java.lang.String getStatusId()
Returns:
the set status id, null if one does not exist.

setSummary

IssueInputParameters setSummary(java.lang.String summary)
Parameters:
summary - sets the summary for the issue.
Returns:
this object.

getSummary

java.lang.String getSummary()
Returns:
the set summary, null if one does not exist.

setDescription

IssueInputParameters setDescription(java.lang.String description)
Parameters:
description - sets the description for the issue.
Returns:
this object.

getDescription

java.lang.String getDescription()
Returns:
the set description, null if one does not exist.

setEnvironment

IssueInputParameters setEnvironment(java.lang.String environment)
Parameters:
environment - sets the environment of the issue.
Returns:
this object.

getEnvironment

java.lang.String getEnvironment()
Returns:
the set environment, null if one does not exist.

setAssigneeId

IssueInputParameters setAssigneeId(java.lang.String assigneeId)
Parameters:
assigneeId - sets the assignee id for the issue.
Returns:
this object.

getAssigneeId

java.lang.String getAssigneeId()
Returns:
the set assginee, null if one does not exist.

setReporterId

IssueInputParameters setReporterId(java.lang.String reporterId)
Parameters:
reporterId - sets the reporter id for the issue.
Returns:
this object.

getReporterId

java.lang.String getReporterId()
Returns:
the set reporter, null if one does not exist.

setComponentIds

IssueInputParameters setComponentIds(java.lang.Long... componentIds)
Parameters:
componentIds - sets the components id's on the issue.
Returns:
this object.

getComponentIds

java.lang.Long[] getComponentIds()
Returns:
the set component id's, null if they do not exist or if they are not valid numbers.

setFixVersionIds

IssueInputParameters setFixVersionIds(java.lang.Long... fixVersionIds)
Parameters:
fixVersionIds - sets the fix version id's on the issue.
Returns:
this object.

getFixVersionIds

java.lang.Long[] getFixVersionIds()
Returns:
the set fix version id's, null if they do not exist or if they are not valid numbers.

setAffectedVersionIds

IssueInputParameters setAffectedVersionIds(java.lang.Long... affectedVersionIds)
Parameters:
affectedVersionIds - sets the affected version id's= on the issue.
Returns:
this object.

getAffectedVersionIds

java.lang.Long[] getAffectedVersionIds()
Returns:
the set affected version id's, null if they do not exist or if they are not valid numbers.

setDueDate

IssueInputParameters setDueDate(java.lang.String dueDate)
Parameters:
dueDate - the formatted string that JIRA will accept as a date that will be set on the issue.
Returns:
this object.

getDueDate

java.lang.String getDueDate()
Returns:
the set due date, null if one does not exist.

setResolutionDate

IssueInputParameters setResolutionDate(java.lang.String resolutionDate)
Parameters:
resolutionDate - the formatted string that JIRA will accept as a date that will be set on the issue.
Returns:
this object.

getResolutionDate

java.lang.String getResolutionDate()
Returns:
the set resolution date, null if one does not exist.

setSecurityLevelId

IssueInputParameters setSecurityLevelId(java.lang.Long securityLevelId)
Parameters:
securityLevelId - sets the security level id on the issue.
Returns:
this object.

getSecurityLevelId

java.lang.Long getSecurityLevelId()
Returns:
the set security level id, null if one does not exist or it is not a valid number.

setOriginalEstimate

IssueInputParameters setOriginalEstimate(java.lang.Long originalEstimate)
Parameters:
originalEstimate - sets the original estimate on the issue.
Returns:
this object.

getOriginalEstimate

java.lang.Long getOriginalEstimate()
Returns:
the set original estimate, null if one does not exist or it is not a valid number.

setTimeSpent

IssueInputParameters setTimeSpent(java.lang.Long timeSpent)
Parameters:
timeSpent - sets the time spent on the issue.
Returns:
this object.

getTimeSpent

java.lang.Long getTimeSpent()
Returns:
the set time spent, null if one does not exist or it is not a valid number.


Copyright © 2002-2010 Atlassian. All Rights Reserved.