public class

OfBizCustomFieldValuePersister

extends Object
implements CustomFieldValuePersister
java.lang.Object
   ↳ com.atlassian.jira.issue.customfields.persistence.OfBizCustomFieldValuePersister
Known Direct Subclasses

Summary

Constants
String DEFAULT_VALUE_TYPE
String ENTITY_CUSTOMFIELD_ID
String ENTITY_ISSUE_ID
String ENTITY_PARENT_KEY
String ENTITY_VALUE_TYPE
String FIELD_TYPE_DATE
String FIELD_TYPE_NUMBER
String FIELD_TYPE_STRING
String FIELD_TYPE_TEXT
String TABLE_CUSTOMFIELD_VALUE
Fields
public static final Long DEFAULT_VALUE_ISSUE_ID
protected final OfBizDelegator delegator
Public Constructors
OfBizCustomFieldValuePersister(OfBizDelegator delegator)
Public Methods
void createValues(CustomField field, Long issueId, PersistenceFieldType persistenceFieldType, Collection values)
void createValues(CustomField field, Long issueId, PersistenceFieldType persistenceFieldType, Collection values, String parentKey)
Set<Long> getIssueIdsWithValue(CustomField field, PersistenceFieldType persistenceFieldType, Object value)
Return a set of issue ids that have a certain value.
List<Object> getValues(CustomField field, Long issueId, PersistenceFieldType persistenceFieldType, String parentKey)
List<Object> getValues(CustomField field, Long issueId, PersistenceFieldType persistenceFieldType)
Set<Long> removeAllValues(String customFieldId)
Called when removing a field.
Set<Long> removeValue(CustomField field, Long issueId, PersistenceFieldType persistenceFieldType, Object value)
Removes a specific custom field value for the given custom field, from a given issue, of a particular type.
void updateValues(CustomField field, Long issueId, PersistenceFieldType persistenceFieldType, Collection values, String parentKey)
void updateValues(CustomField field, Long issueId, PersistenceFieldType persistenceFieldType, Collection values)
Protected Methods
List<GenericValue> getValuesForType(CustomField field, Long issueId)
List<GenericValue> getValuesForTypeAndParent(CustomField field, Long issueId, String parentKey)
[Expand]
Inherited Methods
From class java.lang.Object
From interface com.atlassian.jira.issue.customfields.persistence.CustomFieldValuePersister

Constants

public static final String DEFAULT_VALUE_TYPE

Constant Value: "DEFAULT"

protected static final String ENTITY_CUSTOMFIELD_ID

Constant Value: "customfield"

protected static final String ENTITY_ISSUE_ID

Constant Value: "issue"

protected static final String ENTITY_PARENT_KEY

Constant Value: "parentkey"

public static final String ENTITY_VALUE_TYPE

Constant Value: "valuetype"

public static final String FIELD_TYPE_DATE

Constant Value: "datevalue"

public static final String FIELD_TYPE_NUMBER

Constant Value: "numbervalue"

public static final String FIELD_TYPE_STRING

Constant Value: "stringvalue"

public static final String FIELD_TYPE_TEXT

Constant Value: "textvalue"

protected static final String TABLE_CUSTOMFIELD_VALUE

Constant Value: "CustomFieldValue"

Fields

public static final Long DEFAULT_VALUE_ISSUE_ID

protected final OfBizDelegator delegator

Public Constructors

public OfBizCustomFieldValuePersister (OfBizDelegator delegator)

Public Methods

public void createValues (CustomField field, Long issueId, PersistenceFieldType persistenceFieldType, Collection values)

public void createValues (CustomField field, Long issueId, PersistenceFieldType persistenceFieldType, Collection values, String parentKey)

public Set<Long> getIssueIdsWithValue (CustomField field, PersistenceFieldType persistenceFieldType, Object value)

Return a set of issue ids that have a certain value. This is used when you need to do a global 'swap' of a certain custom field value.

Parameters
field CustomField
persistenceFieldType PersistenceFieldType
value Value object
Returns
  • Set of Issue IDs

public List<Object> getValues (CustomField field, Long issueId, PersistenceFieldType persistenceFieldType, String parentKey)

public List<Object> getValues (CustomField field, Long issueId, PersistenceFieldType persistenceFieldType)

public Set<Long> removeAllValues (String customFieldId)

Called when removing a field. Removes all the customfield values linked to the customfield Id provided.

Parameters
customFieldId the id of the custom field
Returns
  • issue IDs affected.

public Set<Long> removeValue (CustomField field, Long issueId, PersistenceFieldType persistenceFieldType, Object value)

Removes a specific custom field value for the given custom field, from a given issue, of a particular type.

Parameters
field the custom field.
issueId the issue.
persistenceFieldType the data type of the value
value the value to delete.
Returns
  • returns the set of ids of issues that were affected for some reason (should be 1, just the given issue!).

public void updateValues (CustomField field, Long issueId, PersistenceFieldType persistenceFieldType, Collection values, String parentKey)

public void updateValues (CustomField field, Long issueId, PersistenceFieldType persistenceFieldType, Collection values)

Protected Methods

protected List<GenericValue> getValuesForType (CustomField field, Long issueId)

protected List<GenericValue> getValuesForTypeAndParent (CustomField field, Long issueId, String parentKey)