public interface FieldConfigSchemePersister
Modifier and Type | Method and Description |
---|---|
FieldConfigScheme |
create(FieldConfigScheme configScheme,
ConfigurableField field) |
FieldConfigScheme |
createWithDefaultValues(ConfigurableField field,
Map<String,FieldConfig> configs) |
Set<String> |
filterRelevantFields(IssueContext issueContext,
Set<String> candidateFields)
Given a set of candidate fields, returns only those applicable to a given project and issue type.
|
FieldConfigScheme |
getConfigSchemeForFieldConfig(FieldConfig fieldConfig)
Finds the
FieldConfigScheme that contains
the FieldConfig |
List<Long> |
getConfigSchemeIdsForCustomFieldId(String customFieldId)
Retrieves the ids of the field config schemes for the specified customfield id.
|
List<FieldConfigScheme> |
getConfigSchemesForCustomField(ConfigurableField field) |
FieldConfigScheme |
getFieldConfigScheme(Long configSchemeId) |
Collection<FieldConfigScheme> |
getInvalidFieldConfigSchemeAfterIssueTypeRemoval(IssueType issueType)
Returns a collection of the
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). |
Set<String> |
getRelevantFields(Long projectId,
String issueTypeId)
Deprecated.
since 8.12 use
filterRelevantFields(IssueContext, Set) instead |
void |
init() |
void |
remove(Long fieldConfigSchemeId) |
void |
removeByIssueType(IssueType issueType)
Removes
FieldConfigScheme associations for the given issue type. |
FieldConfigScheme |
update(FieldConfigScheme configScheme) |
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()
@Deprecated @Internal Set<String> getRelevantFields(Long projectId, String issueTypeId)
filterRelevantFields(IssueContext, Set)
insteadCopyright © 2002-2021 Atlassian. All Rights Reserved.