Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Instrument ¶ added in v0.4.0
func Instrument( client aurestclientapi.Client, cacheHitMetricsCallback aurestclientapi.MetricsCallbackFunction, cacheMissMetricsCallback aurestclientapi.MetricsCallbackFunction, cacheInvalidMetricsCallback aurestclientapi.MetricsCallbackFunction, )
Instrument adds instrumentation to a http client.
Either of the callbacks may be nil.
func New ¶
func New( wrapped aurestclientapi.Client, useCacheCondition aurestclientapi.CacheConditionCallback, storeResponseInCacheCondition aurestclientapi.CacheResponseConditionCallback, cacheKeyFunction aurestclientapi.CacheKeyFunction, retentionTime time.Duration, cacheSize int, ) aurestclientapi.Client
Types ¶
type CacheEntry ¶
type CachingImpl ¶
type CachingImpl struct {
Wrapped aurestclientapi.Client
UseCacheCondition aurestclientapi.CacheConditionCallback
StoreResponseInCacheCondition aurestclientapi.CacheResponseConditionCallback
CacheKeyFunction aurestclientapi.CacheKeyFunction
RetentionTime time.Duration
Cache *tinylru.LRU
CacheHitMetricsCallback aurestclientapi.MetricsCallbackFunction
CacheMissMetricsCallback aurestclientapi.MetricsCallbackFunction
CacheInvalidMetricsCallback aurestclientapi.MetricsCallbackFunction
// Now is exposed so tests can fixate the time by overwriting this field
Now func() time.Time
}
func (*CachingImpl) Perform ¶
func (c *CachingImpl) Perform(ctx context.Context, method string, requestUrl string, requestBody interface{}, response *aurestclientapi.ParsedResponse) error
Click to show internal directories.
Click to hide internal directories.