com.atlassian.jira.issue.fields.config.manager
Class CachedFieldConfigSchemeManagerImpl

java.lang.Object
  extended by com.atlassian.jira.issue.fields.config.manager.FieldConfigSchemeManagerImpl
      extended by com.atlassian.jira.issue.fields.config.manager.CachedFieldConfigSchemeManagerImpl
All Implemented Interfaces:
FieldConfigSchemeManager, JiraCachedManager

public class CachedFieldConfigSchemeManagerImpl
extends FieldConfigSchemeManagerImpl
implements JiraCachedManager

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. *


Field Summary
 
Fields inherited from class com.atlassian.jira.issue.fields.config.manager.FieldConfigSchemeManagerImpl
configManager, schemePersister
 
Fields inherited from interface com.atlassian.jira.issue.fields.config.manager.FieldConfigSchemeManager
ALL_ISSUE_TYPES
 
Constructor Summary
CachedFieldConfigSchemeManagerImpl(FieldConfigSchemePersister configSchemePersister, FieldConfigContextPersister contextPersister, JiraContextTreeManager treeManager, FieldConfigManager configManager)
           
 
Method Summary
 long getCacheSize()
           
 Object getValue(com.atlassian.bandana.BandanaContext context, String key, boolean lookUp)
           
 void init()
           
 void refreshCache()
           
 
Methods inherited from class com.atlassian.jira.issue.fields.config.manager.FieldConfigSchemeManagerImpl
createDefaultScheme, createDefaultScheme, createFieldConfigScheme, getAssociatedProjects, getConfigSchemesForField, getFieldConfigScheme, getInvalidFieldConfigSchemesForIssueTypeRemoval, getRelevantConfig, getRelevantConfigScheme, getValue, removeFieldConfigScheme, removeInvalidFieldConfigSchemesForIssueType, removeSchemeAssociation, setValue, updateFieldConfigScheme, updateFieldConfigScheme
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CachedFieldConfigSchemeManagerImpl

public CachedFieldConfigSchemeManagerImpl(FieldConfigSchemePersister configSchemePersister,
                                          FieldConfigContextPersister contextPersister,
                                          JiraContextTreeManager treeManager,
                                          FieldConfigManager configManager)
Method Detail

init

public void init()
Specified by:
init in interface FieldConfigSchemeManager
Overrides:
init in class FieldConfigSchemeManagerImpl

getValue

public Object getValue(com.atlassian.bandana.BandanaContext context,
                       String key,
                       boolean lookUp)
Specified by:
getValue in interface FieldConfigSchemeManager
Overrides:
getValue in class FieldConfigSchemeManagerImpl

getCacheSize

public long getCacheSize()
Specified by:
getCacheSize in interface JiraCachedManager

refreshCache

public void refreshCache()
Specified by:
refreshCache in interface JiraCachedManager


Copyright © 2002-2007 Atlassian. All Rights Reserved.