com.atlassian.jira.issue.customfields.impl
Class SelectCFType

java.lang.Object
  extended by com.atlassian.jira.issue.customfields.impl.AbstractCustomFieldType
      extended by com.atlassian.jira.issue.customfields.impl.AbstractSingleFieldType
          extended by com.atlassian.jira.issue.customfields.impl.StringCFType
              extended by com.atlassian.jira.issue.customfields.impl.TextCFType
                  extended by com.atlassian.jira.issue.customfields.impl.SelectCFType
All Implemented Interfaces:
CustomFieldType, MultipleCustomFieldType, MultipleSettableCustomFieldType, SortableCustomField

public class SelectCFType
extends TextCFType
implements MultipleSettableCustomFieldType, MultipleCustomFieldType, SortableCustomField


Field Summary
 
Fields inherited from class com.atlassian.jira.issue.customfields.impl.AbstractSingleFieldType
customFieldPersister, FIELD_TYPE_DATE, FIELD_TYPE_NUMBER, FIELD_TYPE_STRING, FIELD_TYPE_TEXT
 
Constructor Summary
SelectCFType(CustomFieldPersister customFieldPersister, StringConverter stringConverter, SelectConverter selectConverter, OptionsManager optionsManager)
           
 
Method Summary
 int compare(java.lang.Object customFieldObjectValue1, java.lang.Object customFieldObjectValue2, CustomField customField)
           
 java.util.Set getIssueIdsWithValue(CustomField field, Option option)
          Returns a Set with of Long Objects representing the issue ids that the value has been set for
 Options getOptions(CustomField customField, ProjectIssueType projectIssueType)
           
 java.lang.Object getSingularObjectFromString(java.lang.String string)
          Returns a Singular Object, given the string value as passed by the presentation tier.
 java.lang.String getStringFromSingularObject(java.lang.Object value)
          Returns the String representation of a single value within the CustomFieldType.
 java.util.Set remove(CustomField field)
          called when removing a field.
 void removeValue(CustomField field, org.ofbiz.core.entity.GenericValue issue, Option option)
          This default implementation will remove all values from the custom field for an issue.
 
Methods inherited from class com.atlassian.jira.issue.customfields.impl.TextCFType
getDatabaseType
 
Methods inherited from class com.atlassian.jira.issue.customfields.impl.StringCFType
getDbValueFromObject, getObjectFromDbValue
 
Methods inherited from class com.atlassian.jira.issue.customfields.impl.AbstractSingleFieldType
createValue, getChangelogValue, getDefaultValue, getValueFromCustomFieldParams, getValueFromIssue, setDefaultValue, updateValue, validateFromParams
 
Methods inherited from class com.atlassian.jira.issue.customfields.impl.AbstractCustomFieldType
assertObjectImplementsType, getDescription, getDescriptor, getKey, getName, getVelocityParameters, init
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.atlassian.jira.issue.customfields.CustomFieldType
createValue, getChangelogValue, getDefaultValue, getDescription, getDescriptor, getKey, getName, getValueFromCustomFieldParams, getValueFromIssue, getVelocityParameters, init, setDefaultValue, updateValue, validateFromParams
 

Constructor Detail

SelectCFType

public SelectCFType(CustomFieldPersister customFieldPersister,
                    StringConverter stringConverter,
                    SelectConverter selectConverter,
                    OptionsManager optionsManager)
Method Detail

remove

public java.util.Set remove(CustomField field)
Description copied from class: AbstractSingleFieldType
called when removing a field. return issue IDs affected.

Subclasses should override this if they have specific cleanup that they need to do (such as removing select list values)

Specified by:
remove in interface CustomFieldType
Overrides:
remove in class AbstractSingleFieldType
Parameters:
field - The custom field that is being removed, so any data stored for any issues for that field can be deleted.
Returns:
Set of issue ids that has been affected

removeValue

public void removeValue(CustomField field,
                        org.ofbiz.core.entity.GenericValue issue,
                        Option option)
This default implementation will remove all values from the custom field for an issue. Since there can only be one value for each CustomField instance, this implemenation can safely ignore the objectValue

Specified by:
removeValue in interface MultipleSettableCustomFieldType
Parameters:
field -
issue -
option - - ignored

getSingularObjectFromString

public java.lang.Object getSingularObjectFromString(java.lang.String string)
                                             throws CustomFieldValidationException
Description copied from interface: CustomFieldType
Returns a Singular Object, given the string value as passed by the presentation tier. Throws CustomFieldValidationException if the string is an invalid representation of the Object.

Specified by:
getSingularObjectFromString in interface CustomFieldType
Overrides:
getSingularObjectFromString in class TextCFType
Returns:
singularObject instance
Throws:
CustomFieldValidationException

getStringFromSingularObject

public java.lang.String getStringFromSingularObject(java.lang.Object value)
Description copied from interface: CustomFieldType
Returns the String representation of a single value within the CustomFieldType. This is the value that will is passed to the presentation tier for editing. For single CustomFieldTypes the Singular Object is the same as a Transport Object. However, for multi-dimensional CustomFieldTypes, the Singular Object is the Object contained within the Collection or CustomFieldParams

Specified by:
getStringFromSingularObject in interface CustomFieldType
Overrides:
getStringFromSingularObject in class TextCFType
Returns:
String representation of the Object

getIssueIdsWithValue

public java.util.Set getIssueIdsWithValue(CustomField field,
                                          Option option)
Description copied from interface: MultipleSettableCustomFieldType
Returns a Set with of Long Objects representing the issue ids that the value has been set for

Specified by:
getIssueIdsWithValue in interface MultipleSettableCustomFieldType
Parameters:
field - the CustomField to search on
option - the Object representing a single value to search on.
Returns:
Set of Longs

getOptions

public Options getOptions(CustomField customField,
                          ProjectIssueType projectIssueType)
Specified by:
getOptions in interface MultipleCustomFieldType

compare

public int compare(java.lang.Object customFieldObjectValue1,
                   java.lang.Object customFieldObjectValue2,
                   CustomField customField)
Specified by:
compare in interface SortableCustomField
Overrides:
compare in class TextCFType


Copyright © 2002-2006 Atlassian. All Rights Reserved.