@ApplicationScoped
public class FoloRecordCache
extends com.google.common.cache.CacheLoader<org.commonjava.indy.folo.model.TrackingKey,org.commonjava.indy.folo.model.TrackedContentRecord>
implements com.google.common.cache.RemovalListener<org.commonjava.indy.folo.model.TrackingKey,org.commonjava.indy.folo.model.TrackedContentRecord>
| Modifier and Type | Class and Description |
|---|---|
static interface |
FoloRecordCache.FoloRecordCacheConfigurator
Mostly useful for testing, this allows fine-tuning of the configuration for the underlying Guava cache.
|
| Modifier and Type | Field and Description |
|---|---|
protected com.google.common.cache.Cache<org.commonjava.indy.folo.model.TrackingKey,org.commonjava.indy.folo.model.TrackedContentRecord> |
recordCache |
| Modifier | Constructor and Description |
|---|---|
protected |
FoloRecordCache() |
|
FoloRecordCache(FoloFiler filer,
org.commonjava.indy.model.core.io.IndyObjectMapper objectMapper,
FoloConfig config) |
| Modifier and Type | Method and Description |
|---|---|
protected com.google.common.cache.Cache<org.commonjava.indy.folo.model.TrackingKey,org.commonjava.indy.folo.model.TrackedContentRecord> |
buildCache() |
protected com.google.common.cache.Cache<org.commonjava.indy.folo.model.TrackingKey,org.commonjava.indy.folo.model.TrackedContentRecord> |
buildCache(FoloRecordCache.FoloRecordCacheConfigurator builderConfigurator) |
void |
delete(org.commonjava.indy.folo.model.TrackingKey key) |
org.commonjava.indy.folo.model.TrackedContentRecord |
getIfExists(org.commonjava.indy.folo.model.TrackingKey key) |
org.commonjava.indy.folo.model.TrackedContentRecord |
getOrCreate(org.commonjava.indy.folo.model.TrackingKey key) |
boolean |
hasRecord(org.commonjava.indy.folo.model.TrackingKey key) |
org.commonjava.indy.folo.model.TrackedContentRecord |
load(org.commonjava.indy.folo.model.TrackingKey key) |
void |
onRemoval(com.google.common.cache.RemovalNotification<org.commonjava.indy.folo.model.TrackingKey,org.commonjava.indy.folo.model.TrackedContentRecord> notification) |
org.commonjava.indy.folo.model.TrackedContentRecord |
recordArtifact(org.commonjava.indy.folo.model.TrackingKey key,
org.commonjava.indy.model.core.StoreKey affectedStore,
String path,
org.commonjava.indy.folo.model.StoreEffect effect)
Add a new artifact upload/download item to given affected store within a tracked-content record.
|
void |
shutdown() |
void |
startCache() |
protected void |
write(org.commonjava.indy.folo.model.TrackedContentRecord record) |
protected com.google.common.cache.Cache<org.commonjava.indy.folo.model.TrackingKey,org.commonjava.indy.folo.model.TrackedContentRecord> recordCache
protected FoloRecordCache()
public FoloRecordCache(FoloFiler filer, org.commonjava.indy.model.core.io.IndyObjectMapper objectMapper, FoloConfig config)
@PreDestroy public void shutdown()
@PostConstruct public void startCache()
protected com.google.common.cache.Cache<org.commonjava.indy.folo.model.TrackingKey,org.commonjava.indy.folo.model.TrackedContentRecord> buildCache()
protected com.google.common.cache.Cache<org.commonjava.indy.folo.model.TrackingKey,org.commonjava.indy.folo.model.TrackedContentRecord> buildCache(FoloRecordCache.FoloRecordCacheConfigurator builderConfigurator)
public org.commonjava.indy.folo.model.TrackedContentRecord recordArtifact(org.commonjava.indy.folo.model.TrackingKey key,
org.commonjava.indy.model.core.StoreKey affectedStore,
String path,
org.commonjava.indy.folo.model.StoreEffect effect)
throws FoloContentException
key - The key to the tracking recordaffectedStore - The store where the artifact was downloaded via / uploaded topath - The artifact's file path in the repoeffect - Whether this is an upload or download eventFoloContentException - In case there is some problem loading an existing record from disk.public void onRemoval(com.google.common.cache.RemovalNotification<org.commonjava.indy.folo.model.TrackingKey,org.commonjava.indy.folo.model.TrackedContentRecord> notification)
onRemoval in interface com.google.common.cache.RemovalListener<org.commonjava.indy.folo.model.TrackingKey,org.commonjava.indy.folo.model.TrackedContentRecord>protected void write(org.commonjava.indy.folo.model.TrackedContentRecord record)
public org.commonjava.indy.folo.model.TrackedContentRecord load(org.commonjava.indy.folo.model.TrackingKey key)
throws Exception
load in class com.google.common.cache.CacheLoader<org.commonjava.indy.folo.model.TrackingKey,org.commonjava.indy.folo.model.TrackedContentRecord>Exceptionpublic void delete(org.commonjava.indy.folo.model.TrackingKey key)
public boolean hasRecord(org.commonjava.indy.folo.model.TrackingKey key)
public org.commonjava.indy.folo.model.TrackedContentRecord getOrCreate(org.commonjava.indy.folo.model.TrackingKey key)
throws FoloContentException
FoloContentExceptionpublic org.commonjava.indy.folo.model.TrackedContentRecord getIfExists(org.commonjava.indy.folo.model.TrackingKey key)
Copyright © 2011-2016. All Rights Reserved.