/** {@inheritDoc} */ @Override public IgniteInternalFuture<?> applyx(IgniteInternalCache<Object, Object> c, GridKernalContext ctx) { return c.getAndPutIfAbsentAsync(key, val); } }
/** {@inheritDoc} */ @Override public IgniteInternalFuture getAndPutIfAbsentAsync(Object key, Object val) { return delegate.get().getAndPutIfAbsentAsync(keyTransformer.transform(key), val); }
/** {@inheritDoc} */ @Override public IgniteInternalFuture<V> getAndPutIfAbsentAsync(K key, V val) { CacheOperationContext prev = gate.enter(opCtx); try { return delegate.getAndPutIfAbsentAsync(key, val); } finally { gate.leave(prev); } }
/** {@inheritDoc} */ @Override public IgniteFuture<V> getAndPutIfAbsentAsync(K key, V val) throws CacheException { IgniteInternalCache<K, V> delegate = getDelegateSafe(); return createFuture(delegate.getAndPutIfAbsentAsync(key, val)); }
/** {@inheritDoc} */ @Nullable @Override public V getAndPutIfAbsent(K key, V val) throws CacheException { IgniteInternalCache<K, V> delegate = getDelegateSafe(); try { if (isAsync()) { setFuture(delegate.getAndPutIfAbsentAsync(key, val)); return null; } else return delegate.getAndPutIfAbsent(key, val); } catch (IgniteCheckedException | IgniteException e) { throw cacheException(e); } }
/** {@inheritDoc} */ @Override public IgniteInternalFuture<?> applyx(IgniteInternalCache<Object, Object> c, GridKernalContext ctx) { return c.getAndPutIfAbsentAsync(key, val); } }
/** {@inheritDoc} */ @Override public IgniteFuture<V> getAndPutIfAbsentAsync(K key, V val) throws CacheException { return createFuture(delegate.getAndPutIfAbsentAsync(key, val)); }
/** {@inheritDoc} */ @Override public IgniteInternalFuture<V> getAndPutIfAbsentAsync(K key, V val) { CacheOperationContext prev = gate.enter(opCtx); try { return delegate.getAndPutIfAbsentAsync(key, val); } finally { gate.leave(prev); } }
/** {@inheritDoc} */ @Nullable @Override public V getAndPutIfAbsent(K key, V val) throws CacheException { try { if (isAsync()) { setFuture(delegate.getAndPutIfAbsentAsync(key, val)); return null; } else return delegate.getAndPutIfAbsent(key, val); } catch (IgniteCheckedException | IgniteException e) { throw cacheException(e); } }