Class PermissionCacheFactory.Default

java.lang.Object
org.eclipse.net4j.util.factory.Factory
org.eclipse.emf.cdo.server.spi.security.PermissionCacheFactory
org.eclipse.emf.cdo.server.spi.security.PermissionCacheFactory.Default
All Implemented Interfaces:
org.eclipse.net4j.util.factory.IFactory, org.eclipse.net4j.util.factory.IFactoryKeyAware
Enclosing class:
PermissionCacheFactory

public static class PermissionCacheFactory.Default extends PermissionCacheFactory
Built-in bounded, LRU-like permission-cache creator factory.

Its configured capacity limits the creator-wide backing store; it is not a separate capacity for every repository, user, or branch. The returned logical cache generations remain isolated by their repository/user/ branch scope even though the backing store is shared. The default capacity is 100000. A configured capacity that is not a positive integer causes product creation, and therefore repository startup, to fail.

Author:
Eike Stepper
  • Nested Class Summary

    Nested classes/interfaces inherited from class org.eclipse.emf.cdo.server.spi.security.PermissionCacheFactory

    PermissionCacheFactory.Default
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
    Default capacity of the built-in creator's shared backing store.
    static final String
    Repository property configuring the capacity of the default creator's shared backing store.
    static final String
    The built-in factory type.

    Fields inherited from class org.eclipse.emf.cdo.server.spi.security.PermissionCacheFactory

    PRODUCT_GROUP, PROP_DESCRIPTION, PROP_TYPE

    Fields inherited from class org.eclipse.net4j.util.factory.Factory

    NO_DESCRIPTION
  • Constructor Summary

    Constructors
    Constructor
    Description
    Creates the built-in default permission-cache factory.
  • Method Summary

    Modifier and Type
    Method
    Description
    create(String repositoryName, String description)
    Creates a creator for the named repository with implementation-specific configuration.

    Methods inherited from class org.eclipse.emf.cdo.server.spi.security.PermissionCacheFactory

    create, get, get

    Methods inherited from class org.eclipse.net4j.util.factory.Factory

    getDescriptionFor, getFactoryKey, getKey, getProductGroup, getType, productCreationException, productCreationException, setFactoryKey, toString

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Field Details

    • TYPE

      public static final String TYPE
      The built-in factory type.
      See Also:
    • PROP_CAPACITY

      public static final String PROP_CAPACITY
      Repository property configuring the capacity of the default creator's shared backing store.
      See Also:
    • DEFAULT_CAPACITY

      public static final int DEFAULT_CAPACITY
      Default capacity of the built-in creator's shared backing store.
      See Also:
  • Constructor Details

    • Default

      public Default()
      Creates the built-in default permission-cache factory.
  • Method Details

    • create

      protected PermissionCache.Creator create(String repositoryName, String description) throws org.eclipse.net4j.util.factory.ProductCreationException
      Description copied from class: PermissionCacheFactory
      Creates a creator for the named repository with implementation-specific configuration.
      Specified by:
      create in class PermissionCacheFactory
      Parameters:
      repositoryName - the name of the repository whose SecurityManager resolves this factory
      description - implementation-specific configuration, or null when none was supplied
      Returns:
      the creator for the repository
      Throws:
      org.eclipse.net4j.util.factory.ProductCreationException - if the creator cannot be created