/** {@inheritDoc} */ @Override public long timeToLive() { assert impl != null; return impl.timeToLive(); }
/** {@inheritDoc} */ @Override public void timeToLive(long ttl) { assert impl != null; impl.timeToLive(ttl); }
/** {@inheritDoc} */ @Override public GridFuture<?> applyx(GridCacheProjection<Object, Object> c, GridKernalContext ctx) { GridCacheEntry<Object, Object> entry = c.entry(key); if (entry != null) { if (ttl != null) entry.timeToLive(ttl); return entry.replacexAsync(val); } else return new GridFinishedFuture<Object>(ctx, false); } }
@Nullable @Override public <K, V> V putIfAbsent(String cacheName, K key, V val, long ttl) throws GridException { GridCacheEntry<K, V> e = ctx.cache().<K, V>cache(cacheName).entry(key); assert e != null; e.timeToLive(ttl); return e.setIfAbsent(val); }
/** {@inheritDoc} */ @Override public GridFuture<?> applyx(GridCacheProjection<Object, Object> c, GridKernalContext ctx) { GridCacheEntry<Object, Object> entry = c.entry(key); if (entry != null) { if (ttl != null) entry.timeToLive(ttl); return entry.setxIfAbsentAsync(val); } else return new GridFinishedFuture<Object>(ctx, false); } }
@Nullable @Override public <K, V> V put(String cacheName, K key, V val, long ttl) throws GridException { GridCacheEntry<K, V> e = ctx.cache().<K, V>cache(cacheName).entry(key); assert e != null; e.timeToLive(ttl); return e.set(val); }
/** {@inheritDoc} */ @Override public GridFuture<?> applyx(GridCacheProjection<Object, Object> c, GridKernalContext ctx) { if (ttl != null) { GridCacheEntry<Object, Object> entry = c.entry(key); if (entry != null) { entry.timeToLive(ttl); return entry.setxAsync(val); } else return new GridFinishedFuture<Object>(ctx, false); } else return c.putxAsync(key, val); } }