Interface FieldConfigManager
- All Known Implementing Classes:
FieldConfigManagerImpl
@PublicApi
public interface FieldConfigManager
Manager for field configurations.
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptioncreateFieldConfig(FieldConfig newConfig, List<FieldConfigItemType> configurationItemTypes) getFieldConfig(Long configId) Retrieve field configuration by database ID.voidremoveConfigsForConfigScheme(Long fieldConfigSchemeId) Removes FieldConfig objects that are only associated to the specified FieldConfigScheme.updateFieldConfig(FieldConfig newConfig)
-
Method Details
-
getFieldConfig
Retrieve field configuration by database ID.- Parameters:
configId- the database id- Returns:
- the FieldConfig object
-
createFieldConfig
FieldConfig createFieldConfig(FieldConfig newConfig, List<FieldConfigItemType> configurationItemTypes) -
updateFieldConfig
-
createWithDefaultValues
-
removeConfigsForConfigScheme
Removes FieldConfig objects that are only associated to the specified FieldConfigScheme. In theory, a FieldConfig should only ever be associated to one FieldConfigScheme, but here we take a defensive approach.When FieldConfig objects are removed, their associated OptionSets and GenericConfigs are also removed.
Note that the mapping from FieldConfig to FieldConfigScheme in FieldConfigSchemeIssueType is not removed until FieldConfigScheme#remove() is called. Thus, if someone calls FieldConfigSchemeManager#getFieldConfigScheme() after this method is called but before the FieldConfigScheme is removed, a NullPointerException will occur because the FieldConfig referenced by the mapping record no longer exists.
- Parameters:
fieldConfigSchemeId- the scheme id of the fieldConfigScheme the fieldConfigs are exclusive to.
-