public void removeLabel(final Long labelId, final Long issueId, final Long customFieldId) { final CacheKey key = new CacheKey(issueId, customFieldId); try { delegateStore.removeLabel(labelId, issueId, customFieldId); //clear the cache so that the next read will fix up the cache again. } finally { cache.remove(key); } }
public Set<Label> setLabels(final Long issueId, final Long customFieldId, final Set<String> labels) { final CacheKey key = new CacheKey(issueId, customFieldId); try { return delegateStore.setLabels(issueId, customFieldId, labels); } finally { cache.remove(key); } }
public Label addLabel(final Long issueId, final Long customFieldId, final String label) { final CacheKey key = new CacheKey(issueId, customFieldId); try { return delegateStore.addLabel(issueId, customFieldId, label); } finally { cache.remove(key); } }
public Set<Label> getLabels(final Long issueId, final Long customFieldId) { final CacheKey key = new CacheKey(issueId, customFieldId); return cache.get(key); }