| /** |
| * Licensed to the Apache Software Foundation (ASF) under one or more |
| * contributor license agreements. See the NOTICE file distributed with |
| * this work for additional information regarding copyright ownership. |
| * The ASF licenses this file to You under the Apache License, Version 2.0 |
| * (the "License"); you may not use this file except in compliance with |
| * the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| package org.apache.camel.component.cache.springboot; |
| |
| import javax.annotation.Generated; |
| import net.sf.ehcache.store.MemoryStoreEvictionPolicy; |
| import org.apache.camel.component.cache.CacheEventListenerRegistry; |
| import org.apache.camel.component.cache.CacheLoaderRegistry; |
| import org.apache.camel.component.cache.CacheManagerFactory; |
| import org.apache.camel.spring.boot.ComponentConfigurationPropertiesCommon; |
| import org.springframework.boot.context.properties.ConfigurationProperties; |
| import org.springframework.boot.context.properties.DeprecatedConfigurationProperty; |
| import org.springframework.boot.context.properties.NestedConfigurationProperty; |
| |
| /** |
| * The cache component enables you to perform caching operations using EHCache |
| * as the Cache Implementation. |
| * |
| * Generated by camel-package-maven-plugin - do not edit this file! |
| */ |
| @Generated("org.apache.camel.maven.packaging.SpringBootAutoConfigurationMojo") |
| @ConfigurationProperties(prefix = "camel.component.cache") |
| public class CacheComponentConfiguration |
| extends |
| ComponentConfigurationPropertiesCommon { |
| |
| /** |
| * To use the given CacheManagerFactory for creating the CacheManager. By |
| * default the DefaultCacheManagerFactory is used. |
| */ |
| private CacheManagerFactory cacheManagerFactory; |
| /** |
| * Sets the Cache configuration |
| */ |
| private CacheConfigurationNestedConfiguration configuration; |
| /** |
| * Sets the location of the ehcache.xml file to load from classpath or file |
| * system. By default the file is loaded from classpath:ehcache.xml |
| */ |
| private String configurationFile = "classpath:ehcache.xml"; |
| /** |
| * Whether the component should resolve property placeholders on itself when |
| * starting. Only properties which are of String type can use property |
| * placeholders. |
| */ |
| private Boolean resolvePropertyPlaceholders = true; |
| |
| public CacheManagerFactory getCacheManagerFactory() { |
| return cacheManagerFactory; |
| } |
| |
| public void setCacheManagerFactory(CacheManagerFactory cacheManagerFactory) { |
| this.cacheManagerFactory = cacheManagerFactory; |
| } |
| |
| public CacheConfigurationNestedConfiguration getConfiguration() { |
| return configuration; |
| } |
| |
| public void setConfiguration( |
| CacheConfigurationNestedConfiguration configuration) { |
| this.configuration = configuration; |
| } |
| |
| public String getConfigurationFile() { |
| return configurationFile; |
| } |
| |
| public void setConfigurationFile(String configurationFile) { |
| this.configurationFile = configurationFile; |
| } |
| |
| public Boolean getResolvePropertyPlaceholders() { |
| return resolvePropertyPlaceholders; |
| } |
| |
| public void setResolvePropertyPlaceholders( |
| Boolean resolvePropertyPlaceholders) { |
| this.resolvePropertyPlaceholders = resolvePropertyPlaceholders; |
| } |
| |
| public static class CacheConfigurationNestedConfiguration { |
| public static final Class CAMEL_NESTED_CLASS = org.apache.camel.component.cache.CacheConfiguration.class; |
| /** |
| * Name of the cache |
| */ |
| private String cacheName; |
| /** |
| * The number of elements that may be stored in the defined cache in |
| * memory. |
| */ |
| private Integer maxElementsInMemory = 1000; |
| /** |
| * Which eviction strategy to use when maximum number of elements in |
| * memory is reached. The strategy defines which elements to be removed. |
| * <ul> |
| * <li>LRU - Lest Recently Used</li> |
| * <li>LFU - Lest Frequently Used</li> |
| * <li>FIFO - First In First Out</li> |
| * </ul> |
| */ |
| @NestedConfigurationProperty |
| private MemoryStoreEvictionPolicy memoryStoreEvictionPolicy; |
| /** |
| * Specifies whether cache may overflow to disk |
| */ |
| private Boolean overflowToDisk = true; |
| /** |
| * This parameter is ignored. CacheManager sets it using setter |
| * injection. |
| */ |
| @Deprecated |
| private String diskStorePath; |
| /** |
| * Sets whether elements are eternal. If eternal, timeouts are ignored |
| * and the element never expires. |
| */ |
| private Boolean eternal = false; |
| /** |
| * The maximum time between creation time and when an element expires. |
| * Is used only if the element is not eternal |
| */ |
| private Long timeToLiveSeconds = 300L; |
| /** |
| * The maximum amount of time between accesses before an element expires |
| */ |
| private Long timeToIdleSeconds = 300L; |
| /** |
| * Whether the disk store persists between restarts of the application. |
| */ |
| private Boolean diskPersistent = false; |
| /** |
| * The number of seconds between runs of the disk expiry thread. |
| */ |
| private Long diskExpiryThreadIntervalSeconds; |
| /** |
| * To configure event listeners using the CacheEventListenerRegistry |
| */ |
| @NestedConfigurationProperty |
| private CacheEventListenerRegistry eventListenerRegistry; |
| /** |
| * To configure cache loader using the CacheLoaderRegistry |
| */ |
| @NestedConfigurationProperty |
| private CacheLoaderRegistry cacheLoaderRegistry; |
| /** |
| * Whether to turn on allowing to store non serializable objects in the |
| * cache. If this option is enabled then overflow to disk cannot be |
| * enabled as well. |
| */ |
| private Boolean objectCache = false; |
| |
| public String getCacheName() { |
| return cacheName; |
| } |
| |
| public void setCacheName(String cacheName) { |
| this.cacheName = cacheName; |
| } |
| |
| public Integer getMaxElementsInMemory() { |
| return maxElementsInMemory; |
| } |
| |
| public void setMaxElementsInMemory(Integer maxElementsInMemory) { |
| this.maxElementsInMemory = maxElementsInMemory; |
| } |
| |
| public MemoryStoreEvictionPolicy getMemoryStoreEvictionPolicy() { |
| return memoryStoreEvictionPolicy; |
| } |
| |
| public void setMemoryStoreEvictionPolicy( |
| MemoryStoreEvictionPolicy memoryStoreEvictionPolicy) { |
| this.memoryStoreEvictionPolicy = memoryStoreEvictionPolicy; |
| } |
| |
| public Boolean getOverflowToDisk() { |
| return overflowToDisk; |
| } |
| |
| public void setOverflowToDisk(Boolean overflowToDisk) { |
| this.overflowToDisk = overflowToDisk; |
| } |
| |
| @Deprecated |
| @DeprecatedConfigurationProperty |
| public String getDiskStorePath() { |
| return diskStorePath; |
| } |
| |
| @Deprecated |
| public void setDiskStorePath(String diskStorePath) { |
| this.diskStorePath = diskStorePath; |
| } |
| |
| public Boolean getEternal() { |
| return eternal; |
| } |
| |
| public void setEternal(Boolean eternal) { |
| this.eternal = eternal; |
| } |
| |
| public Long getTimeToLiveSeconds() { |
| return timeToLiveSeconds; |
| } |
| |
| public void setTimeToLiveSeconds(Long timeToLiveSeconds) { |
| this.timeToLiveSeconds = timeToLiveSeconds; |
| } |
| |
| public Long getTimeToIdleSeconds() { |
| return timeToIdleSeconds; |
| } |
| |
| public void setTimeToIdleSeconds(Long timeToIdleSeconds) { |
| this.timeToIdleSeconds = timeToIdleSeconds; |
| } |
| |
| public Boolean getDiskPersistent() { |
| return diskPersistent; |
| } |
| |
| public void setDiskPersistent(Boolean diskPersistent) { |
| this.diskPersistent = diskPersistent; |
| } |
| |
| public Long getDiskExpiryThreadIntervalSeconds() { |
| return diskExpiryThreadIntervalSeconds; |
| } |
| |
| public void setDiskExpiryThreadIntervalSeconds( |
| Long diskExpiryThreadIntervalSeconds) { |
| this.diskExpiryThreadIntervalSeconds = diskExpiryThreadIntervalSeconds; |
| } |
| |
| public CacheEventListenerRegistry getEventListenerRegistry() { |
| return eventListenerRegistry; |
| } |
| |
| public void setEventListenerRegistry( |
| CacheEventListenerRegistry eventListenerRegistry) { |
| this.eventListenerRegistry = eventListenerRegistry; |
| } |
| |
| public CacheLoaderRegistry getCacheLoaderRegistry() { |
| return cacheLoaderRegistry; |
| } |
| |
| public void setCacheLoaderRegistry( |
| CacheLoaderRegistry cacheLoaderRegistry) { |
| this.cacheLoaderRegistry = cacheLoaderRegistry; |
| } |
| |
| public Boolean getObjectCache() { |
| return objectCache; |
| } |
| |
| public void setObjectCache(Boolean objectCache) { |
| this.objectCache = objectCache; |
| } |
| } |
| } |