com.atlassian.jira.issue.fields.config.persistence
Class CachedFieldConfigSchemePersister
java.lang.Object
com.atlassian.jira.issue.fields.config.persistence.FieldConfigSchemePersisterImpl
com.atlassian.jira.issue.fields.config.persistence.CachedFieldConfigSchemePersister
- All Implemented Interfaces:
- FieldConfigSchemePersister
public class CachedFieldConfigSchemePersister
- extends FieldConfigSchemePersisterImpl
A simple caching wrapper
NOTE : you may be wondering about the cache invalidation strategy on this cache. Will the top level classes
that use this cache such as com.atlassian.jira.issue.CustomFieldManager@refreshCache
call init()
and this clears the cache.
TODO: This probably should be rewritten so that the upper lays of code are not responsible for clearing the lower level caches
and also the "cache inheritance" pattern should be removed.
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
CachedFieldConfigSchemePersister
public CachedFieldConfigSchemePersister(OfBizDelegator delegator,
ConstantsManager constantsManager,
FieldConfigPersister fieldConfigPersister,
FieldConfigContextPersister fieldContextPersister,
com.atlassian.cache.CacheManager cacheManager,
FieldConfigManager fieldConfigManager)
init
public void init()
- Specified by:
init
in interface FieldConfigSchemePersister
- Overrides:
init
in class FieldConfigSchemePersisterImpl
onClearCache
@EventListener
public void onClearCache(ClearCacheEvent event)
getFieldConfigScheme
@Nullable
public FieldConfigScheme getFieldConfigScheme(Long configSchemeId)
- Specified by:
getFieldConfigScheme
in interface FieldConfigSchemePersister
- Overrides:
getFieldConfigScheme
in class FieldConfigSchemePersisterImpl
getConfigSchemesForCustomField
@Nullable
public List<FieldConfigScheme> getConfigSchemesForCustomField(ConfigurableField field)
- Specified by:
getConfigSchemesForCustomField
in interface FieldConfigSchemePersister
- Overrides:
getConfigSchemesForCustomField
in class FieldConfigSchemePersisterImpl
getConfigSchemeForFieldConfig
@Nullable
public FieldConfigScheme getConfigSchemeForFieldConfig(FieldConfig fieldConfig)
- Description copied from interface:
FieldConfigSchemePersister
- Finds the
FieldConfigScheme
that contains
the FieldConfig
- Specified by:
getConfigSchemeForFieldConfig
in interface FieldConfigSchemePersister
- Overrides:
getConfigSchemeForFieldConfig
in class FieldConfigSchemePersisterImpl
- Parameters:
fieldConfig
- the config to find the containing FieldConfigScheme
of; cannot be null.
- Returns:
- the first scheme that contains the
FieldConfig
. Not Null.
update
public FieldConfigScheme update(FieldConfigScheme configScheme)
- Specified by:
update
in interface FieldConfigSchemePersister
- Overrides:
update
in class FieldConfigSchemePersisterImpl
removeRelatedConfigsForUpdate
protected void removeRelatedConfigsForUpdate(@Nonnull
FieldConfigScheme configScheme,
@Nonnull
org.ofbiz.core.entity.GenericValue gv)
throws org.ofbiz.core.entity.GenericEntityException
- Overrides:
removeRelatedConfigsForUpdate
in class FieldConfigSchemePersisterImpl
- Throws:
org.ofbiz.core.entity.GenericEntityException
remove
public void remove(Long fieldConfigSchemeId)
- Specified by:
remove
in interface FieldConfigSchemePersister
- Overrides:
remove
in class FieldConfigSchemePersisterImpl
Copyright © 2002-2014 Atlassian. All Rights Reserved.