All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.avaje.ebean.annotation.CacheBeanTuning Maven / Gradle / Ivy

There is a newer version: 8.1.1
Show newest version
package com.avaje.ebean.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * Cache tuning hints for the L2 bean cache of a specific entity type.
 * 

* Note that this is not useful when distributed L2 bean caches are used like * ElasticSearch, Hazelcast, Ignite etc. *

*/ @Target({ ElementType.TYPE }) @Retention(RetentionPolicy.RUNTIME) public @interface CacheBeanTuning { /** * The maximum size for the cache. *

* This defaults to 0 which means unlimited. *

*/ int maxSize() default 0; /** * The maximum time (in seconds) that a cache entry is allowed to stay in the * cache when it has not been accessed. *

* This defaults to 0 which means unlimited. *

*/ int maxIdleSecs() default 0; /** * The maximum time (in seconds) a cache entry is allowed to stay in the * cache. *

* This is not generally required as the cache entries are automatically * evicted when related data changes are committed. *

*

* This defaults to 0 which means unlimited. *

*/ int maxSecsToLive() default 0; /** * The frequency (in seconds) that cache trimming should occur. *

* This is a hint for cache implementations that use background cache trimming. *

*/ int trimFrequency() default 0; }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy