|
||||||||||
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<Collection<S>,S>
com.atlassian.jira.issue.customfields.impl.AbstractMultiCFType<Version>
com.atlassian.jira.issue.customfields.impl.VersionCFType
public class VersionCFType
Custom Field Type to select multiple Version
s.
Collection
of Version
sVersion
Long
of the Version's id
Nested Class Summary | |
---|---|
static interface |
VersionCFType.Visitor<X>
|
Nested classes/interfaces inherited from class com.atlassian.jira.issue.customfields.impl.AbstractCustomFieldType |
---|
AbstractCustomFieldType.VisitorBase<X> |
Field Summary |
---|
Fields inherited from class com.atlassian.jira.issue.customfields.impl.AbstractMultiCFType |
---|
customFieldValuePersister, genericConfigManager |
Fields inherited from interface com.atlassian.jira.issue.customfields.CustomFieldType |
---|
DEFAULT_VALUE_TYPE |
Constructor Summary | |
---|---|
VersionCFType(PermissionManager permissionManager,
JiraAuthenticationContext jiraAuthenticationContext,
VersionManager versionManager,
CustomFieldValuePersister customFieldValuePersister,
GenericConfigManager genericConfigManager,
VersionHelperBean versionHelperBean,
JiraBaseUrls jiraBaseUrls)
|
Method Summary | |
---|---|
Object |
accept(AbstractCustomFieldType.VisitorBase visitor)
|
String |
availableForBulkEdit(BulkEditBean bulkEditBean)
Allow the custom field type perform a specific check as to its availability for bulk editing. |
int |
compare(Object customFieldObjectValue1,
Object customFieldObjectValue2,
FieldConfig fieldConfig)
Compares the two custom field objects. |
protected Version |
convertDbValueToType(Object input)
Converts a given db value to Single form of Transport Object |
protected Object |
convertTypeToDbValue(Version value)
Converts a given underlying type to its db storage value. |
String |
getChangelogString(CustomField field,
Collection<Version> versions)
Returns a String of representing values to be stored in the change log, an example is the name of a version field that a version id will resolve to within JIRA. |
List<FieldConfigItemType> |
getConfigurationItemTypes()
Returns a List of FieldConfigItemType objects. |
protected PersistenceFieldType |
getDatabaseType()
Type of database field needed to store this field. |
FieldTypeInfo |
getFieldTypeInfo(FieldTypeInfoContext fieldTypeInfoContext)
Returns lower level Information about the field. |
JsonData |
getJsonDefaultValue(IssueContext issueCtx,
CustomField field)
Return The default data for this system field. |
FieldJsonRepresentation |
getJsonFromIssue(CustomField field,
Issue issue,
boolean renderedVersionRequested,
FieldLayoutItem fieldLayoutItem)
Return a JsonData representation of the field value |
JsonType |
getJsonSchema(CustomField customField)
Return a description of the shape of this field when represented as JSON. |
ProjectCustomFieldImporter |
getProjectImporter()
Returns the object that will perform the actual project import functions for the custom field type. |
RestFieldOperationsHandler |
getRestFieldOperation(CustomField field)
Returns the RestFieldOperationsHandler for this field. |
Version |
getSingularObjectFromString(String string)
Returns a Singular Object, given the string value as passed by the presentation tier. |
String |
getStringFromSingularObject(Version version)
Returns the String representation of a single value within the CustomFieldType. |
Object |
getStringValueFromCustomFieldParams(CustomFieldParams parameters)
Return the String value object from the CustomFieldParams. |
protected Comparator<Version> |
getTypeComparator()
Returns a comparator for underlying type of this custom field. |
Collection<Version> |
getValueFromCustomFieldParams(CustomFieldParams parameters)
Retrieves the Transport Object representing the CustomField value instance from the CustomFieldParams of Strings. |
Map<String,Object> |
getVelocityParameters(Issue issue,
CustomField field,
FieldLayoutItem fieldLayoutItem)
The custom field may wish to pass parameters to the velocity context beyond the getValueFromIssue methods (eg managers). |
boolean |
isMultiple()
|
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.AbstractMultiCFType |
---|
convertDbObjectToTypes, convertTypesToDbObjects, createValue, getChangelogValue, getDefaultValue, getValueFromIssue, remove, setDefaultValue, updateValue |
Methods inherited from class com.atlassian.jira.issue.customfields.impl.AbstractCustomFieldType |
---|
assertObjectImplementsType, getDescription, getDescriptor, getI18nBean, getKey, getName, getRelatedIndexers, getVelocityParameters, init, isRenderable, valuesEqual |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public VersionCFType(PermissionManager permissionManager, JiraAuthenticationContext jiraAuthenticationContext, VersionManager versionManager, CustomFieldValuePersister customFieldValuePersister, GenericConfigManager genericConfigManager, VersionHelperBean versionHelperBean, JiraBaseUrls jiraBaseUrls)
Method Detail |
---|
public 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<Collection<Version>,Version>
relevantParams
- parameter object of StringserrorCollectionToAddTo
- errorCollection to which any erros should be added (never null)config
- FieldConfigpublic Collection<Version> getValueFromCustomFieldParams(CustomFieldParams parameters) throws FieldValidationException
CustomFieldType
getValueFromCustomFieldParams
in interface CustomFieldType<Collection<Version>,Version>
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<Collection<Version>,Version>
parameters
- - CustomFieldParams containing String values
public String getChangelogString(CustomField field, Collection<Version> versions)
CustomFieldType
getChangelogString
in interface CustomFieldType<Collection<Version>,Version>
getChangelogString
in class AbstractCustomFieldType<Collection<Version>,Version>
field
- CustomField that the value belongs toversions
- Transport Object representing the value instance of the CustomField
public String getStringFromSingularObject(Version version)
CustomFieldType
String
representation of a single value within the CustomFieldType. This is the value that
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 Map
getStringFromSingularObject
in interface CustomFieldType<Collection<Version>,Version>
version
- the object
public Version getSingularObjectFromString(String string) throws FieldValidationException
CustomFieldType
getSingularObjectFromString
in interface CustomFieldType<Collection<Version>,Version>
string
- the String
FieldValidationException
- if the string is an invalid representation of the Object.public int compare(@NotNull Object customFieldObjectValue1, @NotNull Object customFieldObjectValue2, FieldConfig fieldConfig)
SortableCustomField
compare
in interface SortableCustomField
customFieldObjectValue1
- Never nullcustomFieldObjectValue2
- 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<Collection<Version>,Version>
getConfigurationItemTypes
in class AbstractCustomFieldType<Collection<Version>,Version>
FieldConfigItemType
public String availableForBulkEdit(BulkEditBean bulkEditBean)
CustomFieldType
availableForBulkEdit
in interface CustomFieldType<Collection<Version>,Version>
availableForBulkEdit
in class AbstractCustomFieldType<Collection<Version>,Version>
bulkEditBean
- BulkEditBean
@NotNull public Map<String,Object> getVelocityParameters(Issue issue, CustomField field, FieldLayoutItem fieldLayoutItem)
CustomFieldType
getVelocityParameters
in interface CustomFieldType<Collection<Version>,Version>
getVelocityParameters
in class AbstractCustomFieldType<Collection<Version>,Version>
issue
- The issue currently in context (Note: this will be null in cases like 'default value')field
- CustomFieldfieldLayoutItem
- FieldLayoutItem
Map
of parameters to add to the velocity context, or an empty Map otherwise (never null)public ProjectCustomFieldImporter getProjectImporter()
ProjectImportableCustomField
getProjectImporter
in interface ProjectImportableCustomField
public boolean isMultiple()
protected Comparator<Version> getTypeComparator()
AbstractMultiCFType
getTypeComparator
in class AbstractMultiCFType<Version>
protected Object convertTypeToDbValue(Version value)
AbstractMultiCFType
PersistenceFieldType
returned by AbstractMultiCFType.getDatabaseType()
convertTypeToDbValue
in class AbstractMultiCFType<Version>
value
- Single form of Transport Object
protected Version convertDbValueToType(Object input)
AbstractMultiCFType
convertDbValueToType
in class AbstractMultiCFType<Version>
input
- db representation as returned by AbstractMultiCFType.convertTypeToDbValue(Object)
@NotNull protected PersistenceFieldType getDatabaseType()
AbstractMultiCFType
getDatabaseType
in class AbstractMultiCFType<Version>
PersistenceFieldType
types.public Object accept(AbstractCustomFieldType.VisitorBase visitor)
accept
in class AbstractMultiCFType<Version>
public RestFieldOperationsHandler getRestFieldOperation(CustomField field)
RestCustomFieldTypeOperations
getRestFieldOperation
in interface RestCustomFieldTypeOperations
field
- the Custom Field
public JsonData getJsonDefaultValue(IssueContext issueCtx, CustomField field)
RestCustomFieldTypeOperations
getJsonDefaultValue
in interface RestCustomFieldTypeOperations
issueCtx
- Issue (This should really only need to be an issue context, but for historical reasons we need an issue object.field
- the Custom Field
public FieldTypeInfo getFieldTypeInfo(FieldTypeInfoContext fieldTypeInfoContext)
RestAwareCustomFieldType
getFieldTypeInfo
in interface RestAwareCustomFieldType
fieldTypeInfoContext
- context information for generating the FieldTypeInfo
.
public JsonType getJsonSchema(CustomField customField)
RestAwareCustomFieldType
getJsonSchema
in interface RestAwareCustomFieldType
public FieldJsonRepresentation getJsonFromIssue(CustomField field, Issue issue, boolean renderedVersionRequested, @Nullable FieldLayoutItem fieldLayoutItem)
RestAwareCustomFieldType
getJsonFromIssue
in interface RestAwareCustomFieldType
field
- configuration of the current fieldissue
- to get field data fromrenderedVersionRequested
- whether the use requested the return of rendered/pretty data as well as raw datafieldLayoutItem
- field layout for this field.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |