public interface FieldConfigSchemePersister
FieldConfigScheme create(FieldConfigScheme configScheme, ConfigurableField field)
FieldConfigScheme update(FieldConfigScheme configScheme)
void remove(Long fieldConfigSchemeId)
FieldConfigScheme getFieldConfigScheme(Long configSchemeId)
List<FieldConfigScheme> getConfigSchemesForCustomField(ConfigurableField field)
FieldConfigScheme getConfigSchemeForFieldConfig(FieldConfig fieldConfig)
FieldConfigScheme
that contains
the FieldConfig
fieldConfig
- the config to find the containing FieldConfigScheme
of; cannot be null.FieldConfig
. Not Null.{@link
- com.atlassian.jira.exception.DataAccessException} if the FieldConfigScheme
is not found.List<Long> getConfigSchemeIdsForCustomFieldId(String customFieldId)
FieldConfigScheme
domain objects are not required, for
example when removing them from the system.customFieldId
- the id of the customfieldFieldConfigScheme
objects associated with this customfield. Should not be
null.FieldConfigScheme createWithDefaultValues(ConfigurableField field, Map<String,FieldConfig> configs)
Collection<FieldConfigScheme> getInvalidFieldConfigSchemeAfterIssueTypeRemoval(IssueType issueType)
FieldConfigScheme
s that will be made invalid if the issueType is
removed (that is the FieldConfigScheme would no longer be bound to ANY issue types).
If there are still any other issue types that a FieldConfigScheme will be bound to after
the removal then it will not be included in the collection returned.issueType
- to be removedFieldConfigScheme
s or an empty collection.void removeByIssueType(IssueType issueType)
FieldConfigScheme
associations for the given issue type. Please note that this method call
on it's own is NOT safe. it removes rows from a many-to-many table without considering other entities in
the many-to-many relationship. What this means is that if there's only one row left in the table, this
method may remove it, and you'll end up with orphaned values. Only use this in conjunction with
getInvalidFieldConfigSchemeAfterIssueTypeRemoval(com.atlassian.jira.issue.issuetype.IssueType)
.
Also see FieldConfigSchemeManagerImpl.removeInvalidFieldConfigSchemesForIssueType(com.atlassian.jira.issue.issuetype.IssueType)
for correct usage.
issueType
- the issue type to remove the associations forvoid init()
Copyright © 2002-2021 Atlassian. All Rights Reserved.