|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.atlassian.jira.issue.customfields.impl.AbstractCustomFieldType<T,S>
com.atlassian.jira.issue.customfields.impl.CalculatedCFType<T,S>
T
- Transport Object as defined in CustomFieldType
S
- Single Object contained within the Transport Object as defined in CustomFieldType
@PublicSpi public abstract class CalculatedCFType<T,S>
A CustomFieldType which is calculated rather than set. Transport Object is defined by subclass
Nested Class Summary | |
---|---|
static interface |
CalculatedCFType.Visitor<X>
|
Nested classes/interfaces inherited from class com.atlassian.jira.issue.customfields.impl.AbstractCustomFieldType |
---|
AbstractCustomFieldType.VisitorBase<X> |
Field Summary |
---|
Fields inherited from interface com.atlassian.jira.issue.customfields.CustomFieldType |
---|
DEFAULT_VALUE_TYPE |
Constructor Summary | |
---|---|
CalculatedCFType()
|
Method Summary | |
---|---|
Object |
accept(AbstractCustomFieldType.VisitorBase visitor)
|
int |
compare(T o1,
T o2,
FieldConfig fieldConfig)
Compares the two custom field objects. |
void |
createValue(CustomField field,
Issue issue,
T value)
Save the value for this Custom Field in a particular issue to the database. |
String |
getChangelogValue(CustomField field,
T value)
Returns a values to be stored in the change log, example is the id of the changed item. |
List<FieldConfigItemType> |
getConfigurationItemTypes()
Returns a List of FieldConfigItemType objects. |
T |
getDefaultValue(FieldConfig fieldConfig)
Retrieves the Object representing the default CustomField value for the Custom Field. |
Object |
getStringValueFromCustomFieldParams(CustomFieldParams parameters)
Return the String value object from the CustomFieldParams. |
T |
getValueFromCustomFieldParams(CustomFieldParams parameters)
Retrieves the Transport Object representing the CustomField value instance from the CustomFieldParams of Strings. |
Set<Long> |
remove(CustomField field)
Performs additional tasks when an entire CustomField of this type is being removed CustomField.remove() . |
void |
setDefaultValue(FieldConfig fieldConfig,
T value)
Sets the default value for a Custom Field |
void |
updateValue(CustomField field,
Issue issue,
T value)
Upadte the value for this Custom Field in a particular issue currently stored in the database. |
void |
validateFromParams(CustomFieldParams relevantParams,
ErrorCollection errorCollectionToAddTo,
FieldConfig config)
Ensures that the CustomFieldParams of Strings is a valid representation of the Custom Field values. |
Methods inherited from class com.atlassian.jira.issue.customfields.impl.AbstractCustomFieldType |
---|
assertObjectImplementsType, availableForBulkEdit, getChangelogString, getDescription, getDescriptor, getI18nBean, getKey, getName, getRelatedIndexers, getVelocityParameters, getVelocityParameters, init, isRenderable, valuesEqual |
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 |
---|
getSingularObjectFromString, getStringFromSingularObject, getValueFromIssue |
Constructor Detail |
---|
public CalculatedCFType()
Method Detail |
---|
public Set<Long> remove(CustomField field)
CustomFieldType
CustomField.remove()
.
This includes removal of values & options.
remove
in interface CustomFieldType<T,S>
field
- The custom field that is being removed, so any data stored for
any issues for that field can be deleted.
Set
of issue ids that has been affectedpublic void validateFromParams(CustomFieldParams relevantParams, ErrorCollection errorCollectionToAddTo, FieldConfig config)
CustomFieldType
CustomFieldParams
of Strings is a valid representation of the Custom Field values.
Any errors should be added to the ErrorCollection
under the appropriate key as required.
validateFromParams
in interface CustomFieldType<T,S>
relevantParams
- parameter object of StringserrorCollectionToAddTo
- errorCollection to which any erros should be added (never null)config
- FieldConfigpublic void createValue(CustomField field, Issue issue, T value)
CustomFieldType
createValue
in interface CustomFieldType<T,S>
field
- CustomField
for which the value is being storedissue
- The Issue
to be stored against.value
- Transport Object representing the value instance of the CustomField.public void updateValue(CustomField field, Issue issue, T value)
CustomFieldType
updateValue
in interface CustomFieldType<T,S>
field
- CustomField
for which the value is being storedissue
- The Issue
to be stored against.value
- Transport Object representing the value instance of the CustomField.public T getDefaultValue(FieldConfig fieldConfig)
CustomFieldType
getDefaultValue
in interface CustomFieldType<T,S>
fieldConfig
- CustomField for default value
public void setDefaultValue(FieldConfig fieldConfig, T value)
CustomFieldType
setDefaultValue
in interface CustomFieldType<T,S>
fieldConfig
- CustomField for which the default is being storedvalue
- Transport Object representing the value instance of the CustomFieldpublic String getChangelogValue(CustomField field, T value)
CustomFieldType
getChangelogValue
in interface CustomFieldType<T,S>
field
- CustomField that the value belongs tovalue
- Transport Object representing the value instance of the CustomField
public T getValueFromCustomFieldParams(CustomFieldParams parameters) throws FieldValidationException
CustomFieldType
getValueFromCustomFieldParams
in interface CustomFieldType<T,S>
parameters
- CustomFieldParams of String objects. Will contain one value for Singular field types.
CustomFieldType.createValue(com.atlassian.jira.issue.fields.CustomField, com.atlassian.jira.issue.Issue, T)
, CustomFieldType.updateValue(com.atlassian.jira.issue.fields.CustomField, com.atlassian.jira.issue.Issue, T)
FieldValidationException
- if the String value fails to convert into ObjectsCustomFieldType.createValue(com.atlassian.jira.issue.fields.CustomField, com.atlassian.jira.issue.Issue, Object)
,
CustomFieldType.updateValue(com.atlassian.jira.issue.fields.CustomField, com.atlassian.jira.issue.Issue, Object)
,
CustomFieldType.getValueFromIssue(com.atlassian.jira.issue.fields.CustomField, com.atlassian.jira.issue.Issue)
public Object getStringValueFromCustomFieldParams(CustomFieldParams parameters)
CustomFieldType
getStringValueFromCustomFieldParams
in interface CustomFieldType<T,S>
parameters
- - CustomFieldParams containing String values
public int compare(@NotNull T o1, @NotNull T o2, FieldConfig fieldConfig)
SortableCustomField
compare
in interface SortableCustomField<T>
o1
- Never nullo2
- Never null
@NotNull public List<FieldConfigItemType> getConfigurationItemTypes()
CustomFieldType
FieldConfigItemType
objects. Can not be immutable.
This opens up possibilties for configurable custom fields.
getConfigurationItemTypes
in interface CustomFieldType<T,S>
getConfigurationItemTypes
in class AbstractCustomFieldType<T,S>
FieldConfigItemType
public Object accept(AbstractCustomFieldType.VisitorBase visitor)
accept
in class AbstractCustomFieldType<T,S>
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |