Class RegistryAsynchronouslyRefreshedCache

java.lang.Object
org.alfresco.util.cache.AbstractAsynchronouslyRefreshedCache<T>
org.alfresco.repo.cache.AbstractMTAsynchronouslyRefreshedCache<org.springframework.extensions.webscripts.Registry>
org.alfresco.repo.web.scripts.RegistryAsynchronouslyRefreshedCache
All Implemented Interfaces:
Callable<Void>, AsynchronouslyRefreshedCache<org.springframework.extensions.webscripts.Registry>, RefreshableCache<org.springframework.extensions.webscripts.Registry>, org.alfresco.util.cache.AsynchronouslyRefreshedCache<org.springframework.extensions.webscripts.Registry>, org.alfresco.util.cache.RefreshableCache<org.springframework.extensions.webscripts.Registry>, org.alfresco.util.cache.RefreshableCacheListener, org.alfresco.util.transaction.TransactionListener, org.springframework.beans.factory.Aware, org.springframework.beans.factory.BeanNameAware, org.springframework.beans.factory.InitializingBean

public class RegistryAsynchronouslyRefreshedCache extends AbstractMTAsynchronouslyRefreshedCache<org.springframework.extensions.webscripts.Registry> implements org.springframework.beans.factory.InitializingBean
Asynchronously refreshed cache for repository webscripts.

This does not stop gratuitous calls to refresh but will ensure that, once an instance has been created, a version of the registry is returned even if it is slighly out of date. This can be changed so that it waits for reset but is probably not required.

Since:
4.2.0
Author:
Derek Hulley
  • Constructor Details

    • RegistryAsynchronouslyRefreshedCache

      public RegistryAsynchronouslyRefreshedCache()
  • Method Details

    • setRegistryFactory

      public void setRegistryFactory(org.springframework.beans.factory.ObjectFactory<org.springframework.extensions.webscripts.Registry> registryFactory)
      Parameters:
      registryFactory - factory for web script registries
    • setRetryingTransactionHelper

      public void setRetryingTransactionHelper(RetryingTransactionHelper retryingTransactionHelper)
      Parameters:
      retryingTransactionHelper - the retryingTransactionHelper to set
    • buildCache

      protected org.springframework.extensions.webscripts.Registry buildCache(String tenantId)
      Specified by:
      buildCache in class AbstractMTAsynchronouslyRefreshedCache<org.springframework.extensions.webscripts.Registry>
    • afterPropertiesSet

      public void afterPropertiesSet() throws Exception
      Specified by:
      afterPropertiesSet in interface org.springframework.beans.factory.InitializingBean
      Overrides:
      afterPropertiesSet in class AbstractMTAsynchronouslyRefreshedCache<org.springframework.extensions.webscripts.Registry>
      Throws:
      Exception