Package org.exoplatform.services.cache.impl.jboss

Source Code of org.exoplatform.services.cache.impl.jboss.AbstractExoCacheCreator

package org.exoplatform.services.cache.impl.jboss;

import org.exoplatform.services.cache.ExoCacheConfig;
import org.jboss.cache.Cache;
import org.jboss.cache.Fqn;
import org.jboss.cache.Region;
import org.jboss.cache.config.EvictionAlgorithmConfig;
import org.jboss.cache.config.EvictionRegionConfig;

import java.io.Serializable;

/**
* This class is used to propose a set of common methods generally needed by {@link ExoCacheCreator}
* implementations
*
* @author <a href="mailto:nicolas.filotto@exoplatform.com">Nicolas Filotto</a>
* @version $Id$
*
*/
public abstract class AbstractExoCacheCreator implements ExoCacheCreator
{
  
   /**
    * Create a new region to the given cache.
    * @param config The ExoCacheConfig from which we get the name of the region.
    * @param cache the cache instance to which we want to add the new region
    * @param eac The Eviction Algorithm to use for the new region to create.
    * @return The root Fqn of the new created region
    */
   protected Fqn<String> addEvictionRegion(ExoCacheConfig config, Cache<Serializable, Object> cache,
      EvictionAlgorithmConfig eac)
   {
      Fqn<String> fqn = Fqn.fromElements(config.getName());
      // Create the region
      Region region = cache.getRegion(fqn, true);
      // Set the eviction region config
      region.setEvictionRegionConfig(new EvictionRegionConfig(fqn, eac));
      return fqn;
   }

}
TOP

Related Classes of org.exoplatform.services.cache.impl.jboss.AbstractExoCacheCreator

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.