1 package com.atlassian.cache.ehcache.wrapper;
2
3 import net.sf.ehcache.Element;
4
5 import java.util.ArrayList;
6 import java.util.Collection;
7 import java.util.List;
8
9 public class WrapperUtils {
10
11 @SuppressWarnings("unchecked")
12 public static List<Object> unwrapAllKeys(final Collection<Object> objects, ValueProcessor valueProcessor) {
13 final List<Object> result = new ArrayList<>(objects.size());
14 for (final Object object : objects) {
15 result.add(valueProcessor.unwrap(object));
16 }
17 return result;
18 }
19
20 public static Element unwrapElement(Element element, ValueProcessor valueProcessor) {
21 return element == null ?
22 null :
23 new Element(
24 valueProcessor.unwrap(element.getObjectKey()),
25 valueProcessor.unwrap(element.getObjectValue()),
26 element.getVersion(),
27 element.getCreationTime(),
28 element.getLastAccessTime(),
29 element.getHitCount(),
30 element.usesCacheDefaultLifespan(),
31 element.getTimeToLive(),
32 element.getTimeToIdle(),
33 element.getLastUpdateTime());
34 }
35 }