public interface

CachingAwareRepository

implements Repository
com.atlassian.bamboo.repository.CachingAwareRepository
Known Indirect Subclasses

Class Overview

Should be implemented by repositories supporting caching of its method calls.

Summary

Nested Classes
enum CachingAwareRepository.CachableOperation  
[Expand]
Inherited Constants
From interface com.atlassian.bamboo.repository.Repository
Public Methods
@Nullable CacheId getCacheId(CachingAwareRepository.CachableOperation cachableOperation)
Cache id has to fulfill the following: Given two Repository objects A and B, returning equal CacheId (in terms of equals()) and a cachable operation foo(), in the following sequence of calls made in a short time period: 1.
boolean isCachingSupportedFor(CachingAwareRepository.CachableOperation cachableOperation)
[Expand]
Inherited Methods
From interface com.atlassian.bamboo.fieldvalue.ConvertibleFromConfig
From interface com.atlassian.bamboo.plugin.InitablePluginModule
From interface com.atlassian.bamboo.repository.Repository
From interface com.atlassian.bamboo.utils.DescriptionProvider
From interface com.atlassian.bamboo.utils.NameProvider
From interface com.atlassian.bamboo.v2.build.BuildConfigurationAwarePlugin
From interface com.atlassian.bamboo.v2.build.ConfigurablePlugin
From interface com.atlassian.bamboo.v2.build.RenderableBuildConfiguration
From interface com.atlassian.bamboo.v2.build.repository.RepositoryV2

Public Methods

@Nullable public CacheId getCacheId (CachingAwareRepository.CachableOperation cachableOperation)

Cache id has to fulfill the following: Given two Repository objects A and B, returning equal CacheId (in terms of equals()) and a cachable operation foo(), in the following sequence of calls made in a short time period: 1. A::foo() 2. B::foo() 3. A::foo() the result of B::foo() should be the same as either the first or the second call to A::foo().

Returns
  • the cache id of repository, null if the supplied operation cannot be cached

public boolean isCachingSupportedFor (CachingAwareRepository.CachableOperation cachableOperation)

Returns
  • true if the repository supports generation of CacheIds for a given operation