public class DateCFType extends AbstractSingleFieldType<Date> implements SortableCustomField<Date>, ProjectImportableCustomField, DateField, RestAwareCustomFieldType, RestCustomFieldTypeOperations
Modifier and Type | Class and Description |
---|---|
static interface |
DateCFType.Visitor<T> |
AbstractCustomFieldType.VisitorBase<X>
Modifier and Type | Field and Description |
---|---|
protected DatePickerConverter |
dateConverter |
customFieldValuePersister, FIELD_TYPE_DATE, FIELD_TYPE_NUMBER, FIELD_TYPE_STRING, FIELD_TYPE_TEXT, genericConfigManager, log
DEFAULT_VALUE_TYPE, RESOURCE_PREVIEW
Constructor and Description |
---|
DateCFType(CustomFieldValuePersister customFieldValuePersister,
DatePickerConverter dateConverter,
GenericConfigManager genericConfigManager,
DateTimeFieldChangeLogHelper dateTimeFieldChangeLogHelper,
DateFieldFormat dateFieldFormat,
DateTimeFormatterFactory dateTimeFormatterFactory) |
Modifier and Type | Method and Description |
---|---|
Object |
accept(AbstractCustomFieldType.VisitorBase visitor) |
int |
compare(Date v1,
Date v2,
FieldConfig fieldConfig)
Compares the two custom field objects.
|
String |
getChangelogString(CustomField field,
Date value)
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.
|
String |
getChangelogValue(CustomField field,
Date value)
Returns a values to be stored in the change log, example is the id of the changed item.
|
protected PersistenceFieldType |
getDatabaseType()
Type of database field needed to store this field.
|
protected Object |
getDbValueFromObject(Date customFieldObject)
Returns the database representation of the Java object as stored for that CustomField.
|
Date |
getDefaultValue(FieldConfig fieldConfig)
Retrieves the Object representing the default CustomField value for the Custom Field.
|
FieldTypeInfo |
getFieldTypeInfo(FieldTypeInfoContext fieldTypeInfoContext)
Returns lower level Information about the 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.
|
String |
getNow() |
protected Date |
getObjectFromDbValue(Object databaseValue)
Returns the Transport Object for the given Custom Field value as represented by the value
stored in the database
|
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.
|
Date |
getSingularObjectFromString(String string)
Returns a Singular Object, given the string value as passed by the presentation tier.
|
String |
getStringFromSingularObject(Date customFieldObject)
Returns the
String representation of a single value within the CustomFieldType. |
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 |
isUseNow(Date date) |
boolean |
isUseNow(FieldConfig fieldConfig) |
createValue, getJsonDefaultValue, getStringValueFromCustomFieldParams, getValueFromCustomFieldParams, getValueFromIssue, getValueFromIssue, remove, setDefaultValue, updateValue, validateFromParams
assertObjectImplementsType, availableForBulkEdit, getConfigurationItemTypes, getDescription, getDescriptor, getI18nBean, getKey, getName, getRelatedIndexers, getVelocityParameters, init, isRenderable, valuesEqual
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getJsonDefaultValue
protected final DatePickerConverter dateConverter
public DateCFType(CustomFieldValuePersister customFieldValuePersister, DatePickerConverter dateConverter, GenericConfigManager genericConfigManager, DateTimeFieldChangeLogHelper dateTimeFieldChangeLogHelper, DateFieldFormat dateFieldFormat, DateTimeFormatterFactory dateTimeFormatterFactory)
@Nonnull protected PersistenceFieldType getDatabaseType()
AbstractSingleFieldType
getDatabaseType
in class AbstractSingleFieldType<Date>
PersistenceFieldType
types.protected Object getDbValueFromObject(Date customFieldObject)
AbstractSingleFieldType
AbstractSingleFieldType.getDatabaseType()
getDbValueFromObject
in class AbstractSingleFieldType<Date>
customFieldObject
- the Transport Objectprotected Date getObjectFromDbValue(@Nonnull Object databaseValue) throws FieldValidationException
AbstractSingleFieldType
getObjectFromDbValue
in class AbstractSingleFieldType<Date>
databaseValue
- - String, Double or Date objects as returned from AbstractSingleFieldType.getDbValueFromObject(Object)
FieldValidationException
- if field validation fails.public String getChangelogString(CustomField field, Date value)
CustomFieldType
getChangelogString
in interface CustomFieldType<Date,Date>
getChangelogString
in class AbstractCustomFieldType<Date,Date>
field
- CustomField that the value belongs tovalue
- Transport Object representing the value instance of the CustomFieldpublic String getChangelogValue(CustomField field, Date value)
CustomFieldType
getChangelogValue
in interface CustomFieldType<Date,Date>
getChangelogValue
in class AbstractSingleFieldType<Date>
field
- CustomField that the value belongs tovalue
- Transport Object representing the value instance of the CustomFieldpublic String getStringFromSingularObject(Date customFieldObject)
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<Date,Date>
customFieldObject
- the objectpublic Date getSingularObjectFromString(String string) throws FieldValidationException
CustomFieldType
getSingularObjectFromString
in interface CustomFieldType<Date,Date>
string
- the StringFieldValidationException
- if the string is an invalid representation of the Object.public int compare(@Nonnull Date v1, @Nonnull Date v2, FieldConfig fieldConfig)
SortableCustomField
compare
in interface SortableCustomField<Date>
v1
- Never nullv2
- Never nullpublic Date getDefaultValue(FieldConfig fieldConfig)
CustomFieldType
getDefaultValue
in interface CustomFieldType<Date,Date>
getDefaultValue
in class AbstractSingleFieldType<Date>
fieldConfig
- CustomField for default valuepublic boolean isUseNow(Date date)
public boolean isUseNow(FieldConfig fieldConfig)
public String getNow()
public ProjectCustomFieldImporter getProjectImporter()
ProjectImportableCustomField
getProjectImporter
in interface ProjectImportableCustomField
@Nonnull public Map<String,Object> getVelocityParameters(Issue issue, CustomField field, FieldLayoutItem fieldLayoutItem)
CustomFieldType
The values are added to the context for all velocity views (edit, search, view, xml)
getVelocityParameters
in interface CustomFieldType<Date,Date>
getVelocityParameters
in class AbstractCustomFieldType<Date,Date>
issue
- The issue currently in context (Note: this will be null in cases like 'default value')field
- CustomFieldfieldLayoutItem
- FieldLayoutItemMap
of parameters to add to the velocity context, or an empty Map otherwise (never null)public Object accept(AbstractCustomFieldType.VisitorBase visitor)
accept
in class AbstractSingleFieldType<Date>
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.public RestFieldOperationsHandler getRestFieldOperation(CustomField field)
RestCustomFieldTypeOperations
getRestFieldOperation
in interface RestCustomFieldTypeOperations
field
- the Custom FieldCopyright © 2002-2015 Atlassian. All Rights Reserved.