org.infinispan.config
Class CacheLoaderManagerConfig

java.lang.Object
  extended by org.infinispan.config.AbstractConfigurationBean
      extended by org.infinispan.config.AbstractNamedCacheConfigurationBean
          extended by org.infinispan.config.CacheLoaderManagerConfig
All Implemented Interfaces:
Serializable, Cloneable, CloneableConfigurationComponent, JAXBUnmarshallable

public class CacheLoaderManagerConfig
extends AbstractNamedCacheConfigurationBean

Holds the configuration of the cache loader chain. All cache loaders should be defined using this class, adding individual cache loaders to the chain by calling addCacheLoaderConfig(org.infinispan.loaders.CacheLoaderConfig)

Since:
4.0
Author:
Manik Surtani (manik@jboss.org), Brian Stansberry, Vladimir Blagojevic, Galder Zamarreno
See Also:
Configuration reference, Serialized Form

Field Summary
protected  List<CacheLoaderConfig> cacheLoaderConfigs
           
protected  Boolean passivation
           
protected  Boolean preload
           
protected  Boolean shared
           
 
Fields inherited from class org.infinispan.config.AbstractNamedCacheConfigurationBean
cr
 
Fields inherited from class org.infinispan.config.AbstractConfigurationBean
EMPTY_PROPERTIES, log, overriddenConfigurationElements
 
Constructor Summary
CacheLoaderManagerConfig()
           
 
Method Summary
 void accept(ConfigurationBeanVisitor v)
           
 void addCacheLoaderConfig(CacheLoaderConfig clc)
           
 CacheLoaderManagerConfig clone()
           
 boolean equals(Object obj)
           
 List<CacheLoaderConfig> getCacheLoaderConfigs()
           
 CacheLoaderConfig getFirstCacheLoaderConfig()
           
 int hashCode()
           
 Boolean isFetchPersistentState()
          Loops through all individual cache loader configs and checks if fetchPersistentState is set on any of them
 Boolean isPassivation()
           
 Boolean isPreload()
           
 Boolean isShared()
           
 void setCacheLoaderConfigs(List<CacheLoaderConfig> configs)
           
 void setPassivation(Boolean passivation)
          If true, data is only written to the cache store when it is evicted from memory, a phenomenon known as 'passivation'.
 void setPreload(Boolean preload)
          If true, when the cache starts, data stored in the cache store will be pre-loaded into memory.
 void setShared(Boolean shared)
          This setting should be set to true when multiple cache instances share the same cache store (e.g., multiple nodes in a cluster using a JDBC-based CacheStore pointing to the same, shared database.) Setting this to true avoids multiple cache instances writing the same modification multiple times.
 String toString()
           
 boolean useChainingCacheLoader()
           
 
Methods inherited from class org.infinispan.config.AbstractNamedCacheConfigurationBean
hasComponentStarted, inject
 
Methods inherited from class org.infinispan.config.AbstractConfigurationBean
testImmutability, toTypedProperties, toTypedProperties, uc, willUnmarshall
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

passivation

protected Boolean passivation

preload

protected Boolean preload

shared

protected Boolean shared

cacheLoaderConfigs

protected List<CacheLoaderConfig> cacheLoaderConfigs
Constructor Detail

CacheLoaderManagerConfig

public CacheLoaderManagerConfig()
Method Detail

isPreload

public Boolean isPreload()

setPreload

public void setPreload(Boolean preload)
If true, when the cache starts, data stored in the cache store will be pre-loaded into memory. This is particularly useful when data in the cache store will be needed immediately after startup and you want to avoid cache operations being delayed as a result of loading this data lazily. Can be used to provide a 'warm-cache' on startup, however there is a performance penalty as startup time is affected by this process.

Parameters:
preload -

setPassivation

public void setPassivation(Boolean passivation)
If true, data is only written to the cache store when it is evicted from memory, a phenomenon known as 'passivation'. Next time the data is requested, it will be 'activated' which means that data will be brought back to memory and removed from the persistent store. This gives you the ability to 'overflow' to disk, similar to swapping in an operating system.

If false, the cache store contains a copy of the contents in memory, so writes to cache result in cache store writes. This essentially gives you a 'write-through' configuration.

Parameters:
passivation -

isPassivation

public Boolean isPassivation()

setShared

public void setShared(Boolean shared)
This setting should be set to true when multiple cache instances share the same cache store (e.g., multiple nodes in a cluster using a JDBC-based CacheStore pointing to the same, shared database.) Setting this to true avoids multiple cache instances writing the same modification multiple times. If enabled, only the node where the modification originated will write to the cache store.

If disabled, each individual cache reacts to a potential remote update by storing the data to the cache store. Note that this could be useful if each individual node has its own cache store - perhaps local on-disk.

Parameters:
shared -

isShared

public Boolean isShared()

addCacheLoaderConfig

public void addCacheLoaderConfig(CacheLoaderConfig clc)

getCacheLoaderConfigs

public List<CacheLoaderConfig> getCacheLoaderConfigs()

setCacheLoaderConfigs

public void setCacheLoaderConfigs(List<CacheLoaderConfig> configs)

getFirstCacheLoaderConfig

public CacheLoaderConfig getFirstCacheLoaderConfig()

isFetchPersistentState

public Boolean isFetchPersistentState()
Loops through all individual cache loader configs and checks if fetchPersistentState is set on any of them


useChainingCacheLoader

public boolean useChainingCacheLoader()

toString

public String toString()
Overrides:
toString in class Object

equals

public boolean equals(Object obj)
Overrides:
equals in class Object

accept

public void accept(ConfigurationBeanVisitor v)

hashCode

public int hashCode()
Overrides:
hashCode in class Object

clone

public CacheLoaderManagerConfig clone()
                               throws CloneNotSupportedException
Specified by:
clone in interface CloneableConfigurationComponent
Overrides:
clone in class AbstractNamedCacheConfigurationBean
Throws:
CloneNotSupportedException

Google Analytics

Copyright © 2011 JBoss, a division of Red Hat. All Rights Reserved.