|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.atlassian.jira.issue.managers.DefaultCustomFieldManager
public class DefaultCustomFieldManager
| Field Summary |
|---|
| Fields inherited from interface com.atlassian.jira.issue.CustomFieldManager |
|---|
PLUGIN_KEY |
| Constructor Summary | |
|---|---|
DefaultCustomFieldManager(com.atlassian.plugin.PluginAccessor pluginAccessor,
OfBizDelegator delegator,
FieldConfigSchemeManager fieldConfigSchemeManager,
JiraAuthenticationContext authenticationContext,
ConstantsManager constantsManager,
ProjectManager projectManager,
PermissionManager permissionManager,
FieldConfigContextPersister contextPersister,
FieldScreenManager fieldScreenManager,
RendererManager rendererManager,
CustomFieldValuePersister customFieldValuePersister,
NotificationSchemeManager notificationSchemeManager,
FieldManager fieldManager,
FieldConfigSchemeClauseContextUtil fieldConfigSchemeClauseContextUtil)
|
|
| Method Summary | |
|---|---|
void |
associateCustomFieldContext(CustomField customField,
List contexts,
List issueTypes)
|
CustomField |
createCustomField(String fieldName,
String description,
CustomFieldType fieldType,
CustomFieldSearcher customFieldSearcher,
List contexts,
List issueTypes)
Creates a custom field with the given name and description of the given CustomFieldType using the given CustomFieldSearcher that is displayed in the given list of contexts available to the given list of issueTypes. |
CustomField |
getCustomFieldInstance(org.ofbiz.core.entity.GenericValue customFieldGv)
Converts a customfield GenericValue to a CustomField instance. |
CustomField |
getCustomFieldObject(Long id)
Get a CustomField by ID. |
CustomField |
getCustomFieldObject(String key)
Get a CustomField by its text key (eg 'customfield_10000'). |
CustomField |
getCustomFieldObjectByName(String customFieldName)
Retrieve the first custom field object with the specified name. |
List<CustomField> |
getCustomFieldObjects()
Returns all custom fields. |
List<CustomField> |
getCustomFieldObjects(org.ofbiz.core.entity.GenericValue issue)
Deprecated. Use getCustomFieldObjects(com.atlassian.jira.issue.Issue) |
List<CustomField> |
getCustomFieldObjects(Issue issue)
Get all CustomFields in scope for this issue's project/type. |
List<CustomField> |
getCustomFieldObjects(Long projectId,
List<String> issueTypeIds)
Returns the same as CustomFieldManager.getCustomFieldObjects(Long,String) but allows
to specify a list of issueTypes. |
List<CustomField> |
getCustomFieldObjects(Long projectId,
String issueTypeId)
Gets a list of custom fields for a particular project and issue type. |
List<CustomField> |
getCustomFieldObjects(SearchContext searchContext)
Returns all customfields in a particular SearchContext. |
Collection<CustomField> |
getCustomFieldObjectsByName(String customFieldName)
Retrieve custom field(s) of a certain name. |
List |
getCustomFields(String issueType,
Long projectId,
int customFieldType)
|
CustomFieldSearcher |
getCustomFieldSearcher(String key)
Retrieve a custom field searcher by its type key. |
Class |
getCustomFieldSearcherClass(String key)
Retrieve a custom field searcher by its type key. |
List<CustomFieldSearcher> |
getCustomFieldSearchers(CustomFieldType customFieldType)
Retrieves all the searchers registered for a particular custom Field. |
CustomFieldType |
getCustomFieldType(String key)
Retrieve a custom field type by its type key. |
List |
getCustomFieldTypes()
Retrieve all customfieldtypes registered in the sytem. |
List<CustomField> |
getGlobalCustomFieldObjects()
Returns a list of custom fields where the CustomField.isGlobal()
is true. |
void |
refresh()
reloads all customfields into the cache from the DB. |
void |
removeCustomField(CustomField customField)
Removes the customfield supplied including all associations and values. |
void |
removeCustomFieldPossiblyLeavingOrphanedData(Long customFieldId)
Removes the customfield supplied. |
void |
removeCustomFieldValues(org.ofbiz.core.entity.GenericValue issue)
Removes the values stored by customfields for a particular Issue. |
void |
removeProjectAssociations(org.ofbiz.core.entity.GenericValue project)
Used if a project is deleted to remove the project field associations. |
void |
removeProjectCategoryAssociations(org.ofbiz.core.entity.GenericValue projectCategory)
Used if a project category is deleted to remove the field associations. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public DefaultCustomFieldManager(com.atlassian.plugin.PluginAccessor pluginAccessor,
OfBizDelegator delegator,
FieldConfigSchemeManager fieldConfigSchemeManager,
JiraAuthenticationContext authenticationContext,
ConstantsManager constantsManager,
ProjectManager projectManager,
PermissionManager permissionManager,
FieldConfigContextPersister contextPersister,
FieldScreenManager fieldScreenManager,
RendererManager rendererManager,
CustomFieldValuePersister customFieldValuePersister,
NotificationSchemeManager notificationSchemeManager,
FieldManager fieldManager,
FieldConfigSchemeClauseContextUtil fieldConfigSchemeClauseContextUtil)
| Method Detail |
|---|
public CustomField createCustomField(String fieldName,
String description,
CustomFieldType fieldType,
CustomFieldSearcher customFieldSearcher,
List contexts,
List issueTypes)
throws org.ofbiz.core.entity.GenericEntityException
CustomFieldManager
createCustomField in interface CustomFieldManagerorg.ofbiz.core.entity.GenericEntityException - if the CustomField could not be created.
public void associateCustomFieldContext(CustomField customField,
List contexts,
List issueTypes)
public List getCustomFieldTypes()
CustomFieldManager
getCustomFieldTypes in interface CustomFieldManagerCustomFieldTypespublic CustomFieldType getCustomFieldType(String key)
CustomFieldManager
getCustomFieldType in interface CustomFieldManagerkey - Type identifier constructed from plugin XML. Eg. the system types are specified in system-customfiedltypes-plugin.xml:
<atlassian-plugin key="com.atlassian.jira.plugin.system.customfieldtypes" name="Custom Field Types & Searchers">
...
<customfield-type key="float" name="Number Field"
...
To access the 'Number Field' type, the key would then be 'com.atlassian.jira.plugin.system.customfieldtypes:float'
(the first part can be referred to via CreateCustomField.FIELD_TYPE_PREFIX).public List<CustomFieldSearcher> getCustomFieldSearchers(CustomFieldType customFieldType)
CustomFieldManager
<customfield-searcher key="daterange" name="Date Range picker"
i18n-name-key="admin.customfield.searcher.daterange.name"
class="com.atlassian.jira.issue.customfields.searchers.DateRangeSearcher">
getCustomFieldSearchers in interface CustomFieldManagerCustomFieldSearcherspublic CustomFieldSearcher getCustomFieldSearcher(String key)
CustomFieldManager
getCustomFieldSearcher in interface CustomFieldManagerkey - Type identifier constructed from plugin XML. Eg. the system types are specified in system-customfiedltypes-plugin.xml:
<atlassian-plugin key="com.atlassian.jira.plugin.system.customfieldtypes" name="Custom Field Types & Searchers">
...
<customfield-searcher key="exactnumber" name="Number Searcher"
...
To access the 'Number Searcher' searcher, the key would then be 'com.atlassian.jira.plugin.system.customfieldtypes:exactnumber'
(the first part can be referred to via CreateCustomField.FIELD_TYPE_PREFIX).public Class getCustomFieldSearcherClass(String key)
CustomFieldManager
getCustomFieldSearcherClass in interface CustomFieldManagerkey - Type identifier constructed from plugin XML. Eg. the system types are specified in system-customfiedltypes-plugin.xml:
<atlassian-plugin key="com.atlassian.jira.plugin.system.customfieldtypes" name="Custom Field Types & Searchers">
...
<customfield-type key="float" name="Number Field"
...
To access the 'Number Field' type, the key would then be 'com.atlassian.jira.plugin.system.customfieldtypes:float'
(the first part can be referred to via CreateCustomField.FIELD_TYPE_PREFIX).public List<CustomField> getCustomFieldObjects(Issue issue)
CustomFields in scope for this issue's project/type.
getCustomFieldObjects in interface CustomFieldManagerissue - A Issue object
CustomFieldspublic List<CustomField> getCustomFieldObjects(org.ofbiz.core.entity.GenericValue issue)
getCustomFieldObjects(com.atlassian.jira.issue.Issue)
CustomFieldManagerCustomFields that apply to a particular issue.
getCustomFieldObjects in interface CustomFieldManagerissue - A GenericValue of the issue
CustomFields
public List<CustomField> getCustomFieldObjects(Long projectId,
String issueTypeId)
CustomFieldManager
getCustomFieldObjects in interface CustomFieldManagerprojectId - Id of the projectissueTypeId - An issue type. See ConstantsManager.ALL_ISSUE_TYPES,
ConstantsManager.ALL_STANDARD_ISSUE_TYPES and ConstantsManager.ALL_SUB_TASK_ISSUE_TYPES
CustomFields
public List<CustomField> getCustomFieldObjects(Long projectId,
List<String> issueTypeIds)
CustomFieldManagerCustomFieldManager.getCustomFieldObjects(Long,String) but allows
to specify a list of issueTypes.
getCustomFieldObjects in interface CustomFieldManagerprojectId - Id of the projectissueTypeIds - A list of issue types. See ConstantsManager.ALL_ISSUE_TYPES,
ConstantsManager.ALL_STANDARD_ISSUE_TYPES and ConstantsManager.ALL_SUB_TASK_ISSUE_TYPES
CustomFieldspublic List<CustomField> getCustomFieldObjects(SearchContext searchContext)
CustomFieldManagerSearchContext. Also
see CustomField.isInScope(com.opensymphony.user.User,com.atlassian.jira.issue.search.SearchContext).
getCustomFieldObjects in interface CustomFieldManagerCustomFieldspublic CustomField getCustomFieldObject(Long id)
CustomFieldManager
getCustomFieldObject in interface CustomFieldManagerid - ID of field, eg. 10000
CustomField or null.public CustomField getCustomFieldObject(String key)
CustomFieldManager
getCustomFieldObject in interface CustomFieldManagerkey - Eg. 'customfield_10000'
CustomField or null if not found.public CustomField getCustomFieldObjectByName(String customFieldName)
CustomFieldManagerCustomFieldManager.getCustomFieldObjectsByName(String) to retrieve all custom fields.
getCustomFieldObjectByName in interface CustomFieldManagerCustomField, or null if not found.public Collection<CustomField> getCustomFieldObjectsByName(String customFieldName)
CustomFieldManager
getCustomFieldObjectsByName in interface CustomFieldManagerCustomFields.public List<CustomField> getCustomFieldObjects()
CustomFieldManager
getCustomFieldObjects in interface CustomFieldManagerCustomFields.public List<CustomField> getGlobalCustomFieldObjects()
CustomFieldManagerCustomField.isGlobal()
is true.
getGlobalCustomFieldObjects in interface CustomFieldManagerCustomFieldspublic void refresh()
CustomFieldManager
refresh in interface CustomFieldManager
public List getCustomFields(String issueType,
Long projectId,
int customFieldType)
throws org.ofbiz.core.entity.GenericEntityException
org.ofbiz.core.entity.GenericEntityException
public void removeCustomFieldPossiblyLeavingOrphanedData(Long customFieldId)
throws RemoveException
CustomFieldManagerCustomFieldManager.removeCustomField(com.atlassian.jira.issue.fields.CustomField) method, which will not leave any orphaned
data behind.
NOTE: Generally you should use the CustomFieldManager.removeCustomField(com.atlassian.jira.issue.fields.CustomField)
method to remove a custom field, as it is guaranteed to remove all data. This method should only be used if
a customfield needs to be removed when the customfieldtype for that field is no longer available!
If however the customfield object cannot be retrieved via the manager, which may be the case if the custom field
type is no longer available (a plugin may have been removed), then this method will try to lookup the custom
field directly in the database. If it doesn't exist in the database, an IllegalArgumentException will
be thrown. Otherwise, the customfield and all associated configurations will be removed. This method
will also call to the CustomFieldValuePersister.removeAllValues(String)
method to delete any values. Please note however, that if your custom field stores any other values (such
as options for example), they will have to be removed by the caller of this method, as the custom field type
is not accessible (which is usually responsible for removing such values).
removeCustomFieldPossiblyLeavingOrphanedData in interface CustomFieldManagercustomFieldId - The id of the customField to be removed.
RemoveException - On any error removing the custom field
public void removeCustomField(CustomField customField)
throws RemoveException
CustomFieldManager
removeCustomField in interface CustomFieldManagercustomField - The CustomField to be removed.
RemoveException - On any error removing the custom field
public void removeCustomFieldValues(org.ofbiz.core.entity.GenericValue issue)
throws org.ofbiz.core.entity.GenericEntityException
CustomFieldManager
removeCustomFieldValues in interface CustomFieldManagerissue - The issue GenericValue
org.ofbiz.core.entity.GenericEntityExceptionpublic CustomField getCustomFieldInstance(org.ofbiz.core.entity.GenericValue customFieldGv)
CustomFieldManagerGenericValue to a CustomField instance.
getCustomFieldInstance in interface CustomFieldManagerCustomField instancepublic void removeProjectAssociations(org.ofbiz.core.entity.GenericValue project)
CustomFieldManager
removeProjectAssociations in interface CustomFieldManagerproject - The project being deleted.public void removeProjectCategoryAssociations(org.ofbiz.core.entity.GenericValue projectCategory)
CustomFieldManager
removeProjectCategoryAssociations in interface CustomFieldManagerprojectCategory - The project category being deleted.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||