Repository: incubator-ignite
Updated Branches:
  refs/heads/ignite-737 9467c469b -> d9a675621


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0ea5f8ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheProxy.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheProxy.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheProxy.java
index cef7da9..e05094b 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheProxy.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheProxy.java
@@ -72,7 +72,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
     private IgniteInternalCache<K, V> delegate;
 
     /** Projection. */
-    private CacheProjectionContext prjCtx;
+    private CacheOperationContext prjCtx;
 
     /** */
     @GridToStringExclude
@@ -98,7 +98,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
     public IgniteCacheProxy(
         GridCacheContext<K, V> ctx,
         IgniteInternalCache<K, V> delegate,
-        CacheProjectionContext prjCtx,
+        CacheOperationContext prjCtx,
         boolean async
     ) {
         super(async);
@@ -134,7 +134,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
 
     /** {@inheritDoc} */
     @Override public CacheMetrics metrics() {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             return ctx.cache().metrics();
@@ -146,7 +146,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
 
     /** {@inheritDoc} */
     @Override public CacheMetrics metrics(ClusterGroup grp) {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             List<CacheMetrics> metrics = new ArrayList<>(grp.nodes().size());
@@ -171,7 +171,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
 
     /** {@inheritDoc} */
     @Override public CacheMetricsMXBean mxBean() {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             return ctx.cache().mxBean();
@@ -193,7 +193,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
 
     /** {@inheritDoc} */
     @Nullable @Override public Entry<K, V> randomEntry() {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             return ctx.cache().randomEntry();
@@ -205,10 +205,10 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
 
     /** {@inheritDoc} */
     @Override public IgniteCache<K, V> withExpiryPolicy(ExpiryPolicy plc) {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
-            CacheProjectionContext prj0 = prjCtx.withExpiryPolicy(plc);
+            CacheOperationContext prj0 = prjCtx.withExpiryPolicy(plc);
 
             return new IgniteCacheProxy<>(ctx, delegate, prj0, isAsync());
         }
@@ -225,7 +225,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
     /** {@inheritDoc} */
     @Override public void loadCache(@Nullable IgniteBiPredicate<K, V> p, 
@Nullable Object... args) {
         try {
-            CacheProjectionContext prev = gate.enter(prjCtx);
+            CacheOperationContext prev = gate.enter(prjCtx);
 
             try {
                 if (isAsync())
@@ -245,7 +245,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
     /** {@inheritDoc} */
     @Override public void localLoadCache(@Nullable IgniteBiPredicate<K, V> p, 
@Nullable Object... args) {
         try {
-            CacheProjectionContext prev = gate.enter(prjCtx);
+            CacheOperationContext prev = gate.enter(prjCtx);
 
             try {
                 if (isAsync())
@@ -265,7 +265,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
     /** {@inheritDoc} */
     @Nullable @Override public V getAndPutIfAbsent(K key, V val) throws 
CacheException {
         try {
-            CacheProjectionContext prev = gate.enter(prjCtx);
+            CacheOperationContext prev = gate.enter(prjCtx);
 
             try {
                 if (isAsync()) {
@@ -297,7 +297,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
 
     /** {@inheritDoc} */
     @Override public boolean isLocalLocked(K key, boolean byCurrThread) {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             return byCurrThread ? delegate.isLockedByThread(key) : 
delegate.isLocked(key);
@@ -452,7 +452,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
     @Override public <R> QueryCursor<R> query(Query<R> qry) {
         A.notNull(qry, "qry");
 
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             ctx.checkSecurity(SecurityPermission.CACHE_READ);
@@ -514,7 +514,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
 
     /** {@inheritDoc} */
     @Override public Iterable<Entry<K, V>> localEntries(CachePeekMode... 
peekModes) throws CacheException {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             return delegate.localEntries(peekModes);
@@ -529,7 +529,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
 
     /** {@inheritDoc} */
     @Override public QueryMetrics queryMetrics() {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             return delegate.queries().metrics();
@@ -541,7 +541,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
 
     /** {@inheritDoc} */
     @Override public void localEvict(Collection<? extends K> keys) {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             delegate.evictAll(keys);
@@ -553,7 +553,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
 
     /** {@inheritDoc} */
     @Nullable @Override public V localPeek(K key, CachePeekMode... peekModes) {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             return delegate.localPeek(key, peekModes, null);
@@ -569,7 +569,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
     /** {@inheritDoc} */
     @Override public void localPromote(Set<? extends K> keys) throws 
CacheException {
         try {
-            CacheProjectionContext prev = gate.enter(prjCtx);
+            CacheOperationContext prev = gate.enter(prjCtx);
 
             try {
                 delegate.promoteAll(keys);
@@ -585,7 +585,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
 
     /** {@inheritDoc} */
     @Override public int size(CachePeekMode... peekModes) throws 
CacheException {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             if (isAsync()) {
@@ -606,7 +606,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
 
     /** {@inheritDoc} */
     @Override public int localSize(CachePeekMode... peekModes) {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             return delegate.localSize(peekModes);
@@ -622,7 +622,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
     /** {@inheritDoc} */
     @Override public V get(K key) {
         try {
-            CacheProjectionContext prev = gate.enter(prjCtx);
+            CacheOperationContext prev = gate.enter(prjCtx);
 
             boolean deserializePortables = prjCtx == null ? false : 
prjCtx.deserializePortables();
 
@@ -647,7 +647,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
     /** {@inheritDoc} */
     @Override public Map<K, V> getAll(Set<? extends K> keys) {
         try {
-            CacheProjectionContext prev = gate.enter(prjCtx);
+            CacheOperationContext prev = gate.enter(prjCtx);
 
             boolean deserializePortables = prjCtx == null ? false : 
prjCtx.deserializePortables();
 
@@ -675,7 +675,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
      */
     public Map<K, V> getAll(Collection<? extends K> keys) {
         try {
-            CacheProjectionContext prev = gate.enter(prjCtx);
+            CacheOperationContext prev = gate.enter(prjCtx);
 
             boolean deserializePortables = prjCtx == null ? false : 
prjCtx.deserializePortables();
 
@@ -704,7 +704,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
      * @return Entry set.
      */
     public Set<Entry<K, V>> entrySetx(CacheEntryPredicate... filter) {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             return delegate.entrySetx(filter);
@@ -716,7 +716,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
 
     /** {@inheritDoc} */
     @Override public boolean containsKey(K key) {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             if (isAsync()) {
@@ -734,7 +734,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
 
     /** {@inheritDoc} */
     @Override public boolean containsKeys(Set<? extends K> keys) {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             if (isAsync()) {
@@ -756,7 +756,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
         boolean replaceExisting,
         @Nullable final CompletionListener completionLsnr
     ) {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             IgniteInternalFuture<?> fut = ctx.cache().loadAll(keys, 
replaceExisting);
@@ -784,7 +784,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
     /** {@inheritDoc} */
     @Override public void put(K key, V val) {
         try {
-            CacheProjectionContext prev = gate.enter(prjCtx);
+            CacheOperationContext prev = gate.enter(prjCtx);
 
             try {
                 if (isAsync())
@@ -804,7 +804,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
     /** {@inheritDoc} */
     @Override public V getAndPut(K key, V val) {
         try {
-            CacheProjectionContext prev = gate.enter(prjCtx);
+            CacheOperationContext prev = gate.enter(prjCtx);
 
             try {
                 if (isAsync()) {
@@ -827,7 +827,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
     /** {@inheritDoc} */
     @Override public void putAll(Map<? extends K, ? extends V> map) {
         try {
-            CacheProjectionContext prev = gate.enter(prjCtx);
+            CacheOperationContext prev = gate.enter(prjCtx);
 
             try {
                 if (isAsync())
@@ -847,7 +847,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
     /** {@inheritDoc} */
     @Override public boolean putIfAbsent(K key, V val) {
         try {
-            CacheProjectionContext prev = gate.enter(prjCtx);
+            CacheOperationContext prev = gate.enter(prjCtx);
 
             try {
                 if (isAsync()) {
@@ -870,7 +870,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
     /** {@inheritDoc} */
     @Override public boolean remove(K key) {
         try {
-            CacheProjectionContext prev = gate.enter(prjCtx);
+            CacheOperationContext prev = gate.enter(prjCtx);
 
             try {
                 if (isAsync()) {
@@ -893,7 +893,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
     /** {@inheritDoc} */
     @Override public boolean remove(K key, V oldVal) {
         try {
-            CacheProjectionContext prev = gate.enter(prjCtx);
+            CacheOperationContext prev = gate.enter(prjCtx);
 
             try {
                 if (isAsync()) {
@@ -916,7 +916,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
     /** {@inheritDoc} */
     @Override public V getAndRemove(K key) {
         try {
-            CacheProjectionContext prev = gate.enter(prjCtx);
+            CacheOperationContext prev = gate.enter(prjCtx);
 
             try {
                 if (isAsync()) {
@@ -939,7 +939,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
     /** {@inheritDoc} */
     @Override public boolean replace(K key, V oldVal, V newVal) {
         try {
-            CacheProjectionContext prev = gate.enter(prjCtx);
+            CacheOperationContext prev = gate.enter(prjCtx);
 
             try {
                 if (isAsync()) {
@@ -962,7 +962,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
     /** {@inheritDoc} */
     @Override public boolean replace(K key, V val) {
         try {
-            CacheProjectionContext prev = gate.enter(prjCtx);
+            CacheOperationContext prev = gate.enter(prjCtx);
 
             try {
                 if (isAsync()) {
@@ -985,7 +985,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
     /** {@inheritDoc} */
     @Override public V getAndReplace(K key, V val) {
         try {
-            CacheProjectionContext prev = gate.enter(prjCtx);
+            CacheOperationContext prev = gate.enter(prjCtx);
 
             try {
                 if (isAsync()) {
@@ -1008,7 +1008,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
     /** {@inheritDoc} */
     @Override public void removeAll(Set<? extends K> keys) {
         try {
-            CacheProjectionContext prev = gate.enter(prjCtx);
+            CacheOperationContext prev = gate.enter(prjCtx);
 
             try {
                 if (isAsync())
@@ -1027,7 +1027,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
 
     /** {@inheritDoc} */
     @Override public void removeAll() {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             if (isAsync())
@@ -1045,7 +1045,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
 
     /** {@inheritDoc} */
     @Override public void clear(K key) {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             if (isAsync())
@@ -1063,7 +1063,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
 
     /** {@inheritDoc} */
     @Override public void clearAll(Set<? extends K> keys) {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             if (isAsync())
@@ -1081,7 +1081,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
 
     /** {@inheritDoc} */
     @Override public void clear() {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             if (isAsync())
@@ -1099,7 +1099,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
 
     /** {@inheritDoc} */
     @Override public void localClear(K key) {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             delegate.clearLocally(key);
@@ -1111,7 +1111,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
 
     /** {@inheritDoc} */
     @Override public void localClearAll(Set<? extends K> keys) {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             for (K key : keys)
@@ -1126,7 +1126,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
     @Override public <T> T invoke(K key, EntryProcessor<K, V, T> 
entryProcessor, Object... args)
         throws EntryProcessorException {
         try {
-            CacheProjectionContext prev = gate.enter(prjCtx);
+            CacheOperationContext prev = gate.enter(prjCtx);
 
             try {
                 if (isAsync()) {
@@ -1164,7 +1164,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
     @Override public <T> T invoke(K key, CacheEntryProcessor<K, V, T> 
entryProcessor, Object... args)
         throws EntryProcessorException {
         try {
-            CacheProjectionContext prev = gate.enter(prjCtx);
+            CacheOperationContext prev = gate.enter(prjCtx);
 
             try {
                 if (isAsync()) {
@@ -1203,7 +1203,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
                                                                    
EntryProcessor<K, V, T> entryProcessor,
                                                                    Object... 
args) {
         try {
-            CacheProjectionContext prev = gate.enter(prjCtx);
+            CacheOperationContext prev = gate.enter(prjCtx);
 
             try {
                 if (isAsync()) {
@@ -1228,7 +1228,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
         CacheEntryProcessor<K, V, T> entryProcessor,
         Object... args) {
         try {
-            CacheProjectionContext prev = gate.enter(prjCtx);
+            CacheOperationContext prev = gate.enter(prjCtx);
 
             try {
                 if (isAsync()) {
@@ -1253,7 +1253,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
         Map<? extends K, ? extends EntryProcessor<K, V, T>> map,
         Object... args) {
         try {
-            CacheProjectionContext prev = gate.enter(prjCtx);
+            CacheOperationContext prev = gate.enter(prjCtx);
 
             try {
                 if (isAsync()) {
@@ -1347,7 +1347,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
 
     /** {@inheritDoc} */
     @Override public void 
registerCacheEntryListener(CacheEntryListenerConfiguration<K, V> lsnrCfg) {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             ctx.continuousQueries().executeJCacheQuery(lsnrCfg, false);
@@ -1362,7 +1362,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
 
     /** {@inheritDoc} */
     @Override public void 
deregisterCacheEntryListener(CacheEntryListenerConfiguration<K, V> lsnrCfg) {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             ctx.continuousQueries().cancelJCacheQuery(lsnrCfg);
@@ -1377,7 +1377,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
 
     /** {@inheritDoc} */
     @Override public Iterator<Cache.Entry<K, V>> iterator() {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             return ctx.cache().igniteIterator();
@@ -1416,10 +1416,10 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
      * @return Projection for portable objects.
      */
     public <K1, V1> IgniteCache<K1, V1> keepPortable() {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
-            CacheProjectionContext prj = new CacheProjectionContext(
+            CacheOperationContext prj = new CacheOperationContext(
                 prjCtx != null ? prjCtx.skipStore() : false,
                 prjCtx != null ? prjCtx.subjectId() : null,
                 true,
@@ -1439,7 +1439,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
      * @return Cache with skip store enabled.
      */
     public IgniteCache<K, V> skipStore() {
-        CacheProjectionContext prev = gate.enter(prjCtx);
+        CacheOperationContext prev = gate.enter(prjCtx);
 
         try {
             boolean skip = prjCtx != null && prjCtx.skipStore();
@@ -1447,7 +1447,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
             if (skip)
                 return this;
 
-            CacheProjectionContext prj0 = new CacheProjectionContext(
+            CacheOperationContext prj0 = new CacheOperationContext(
                 true,
                 prjCtx != null ? prjCtx.subjectId() : null,
                 prjCtx != null && prjCtx.isKeepPortable(),
@@ -1502,7 +1502,7 @@ public class IgniteCacheProxy<K, V> extends 
AsyncSupportAdapter<IgniteCache<K, V
 
         delegate = (IgniteInternalCache<K, V>)in.readObject();
 
-        prjCtx = (CacheProjectionContext)in.readObject();
+        prjCtx = (CacheOperationContext)in.readObject();
 
         gate = ctx.gate();
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0ea5f8ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/affinity/GridCacheAffinityProxy.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/affinity/GridCacheAffinityProxy.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/affinity/GridCacheAffinityProxy.java
index e11a75d..d7d4eca 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/affinity/GridCacheAffinityProxy.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/affinity/GridCacheAffinityProxy.java
@@ -60,7 +60,7 @@ public class GridCacheAffinityProxy<K, V> implements 
Affinity<K>, Externalizable
 
     /** {@inheritDoc} */
     @Override public int partitions() {
-        CacheProjectionContext old = gate.enter(null);
+        CacheOperationContext old = gate.enter(null);
 
         try {
             return delegate.partitions();
@@ -72,7 +72,7 @@ public class GridCacheAffinityProxy<K, V> implements 
Affinity<K>, Externalizable
 
     /** {@inheritDoc} */
     @Override public int partition(K key) {
-        CacheProjectionContext old = gate.enter(null);
+        CacheOperationContext old = gate.enter(null);
 
         try {
             return delegate.partition(key);
@@ -84,7 +84,7 @@ public class GridCacheAffinityProxy<K, V> implements 
Affinity<K>, Externalizable
 
     /** {@inheritDoc} */
     @Override public boolean isPrimary(ClusterNode n, K key) {
-        CacheProjectionContext old = gate.enter(null);
+        CacheOperationContext old = gate.enter(null);
 
         try {
             return delegate.isPrimary(n, key);
@@ -96,7 +96,7 @@ public class GridCacheAffinityProxy<K, V> implements 
Affinity<K>, Externalizable
 
     /** {@inheritDoc} */
     @Override public boolean isBackup(ClusterNode n, K key) {
-        CacheProjectionContext old = gate.enter(null);
+        CacheOperationContext old = gate.enter(null);
 
         try {
             return delegate.isBackup(n, key);
@@ -108,7 +108,7 @@ public class GridCacheAffinityProxy<K, V> implements 
Affinity<K>, Externalizable
 
     /** {@inheritDoc} */
     @Override public boolean isPrimaryOrBackup(ClusterNode n, K key) {
-        CacheProjectionContext old = gate.enter(null);
+        CacheOperationContext old = gate.enter(null);
 
         try {
             return delegate.isPrimaryOrBackup(n, key);
@@ -120,7 +120,7 @@ public class GridCacheAffinityProxy<K, V> implements 
Affinity<K>, Externalizable
 
     /** {@inheritDoc} */
     @Override public int[] primaryPartitions(ClusterNode n) {
-        CacheProjectionContext old = gate.enter(null);
+        CacheOperationContext old = gate.enter(null);
 
         try {
             return delegate.primaryPartitions(n);
@@ -132,7 +132,7 @@ public class GridCacheAffinityProxy<K, V> implements 
Affinity<K>, Externalizable
 
     /** {@inheritDoc} */
     @Override public int[] backupPartitions(ClusterNode n) {
-        CacheProjectionContext old = gate.enter(null);
+        CacheOperationContext old = gate.enter(null);
 
         try {
             return delegate.backupPartitions(n);
@@ -144,7 +144,7 @@ public class GridCacheAffinityProxy<K, V> implements 
Affinity<K>, Externalizable
 
     /** {@inheritDoc} */
     @Override public int[] allPartitions(ClusterNode n) {
-        CacheProjectionContext old = gate.enter(null);
+        CacheOperationContext old = gate.enter(null);
 
         try {
             return delegate.allPartitions(n);
@@ -156,7 +156,7 @@ public class GridCacheAffinityProxy<K, V> implements 
Affinity<K>, Externalizable
 
     /** {@inheritDoc} */
     @Override public ClusterNode mapPartitionToNode(int part) {
-        CacheProjectionContext old = gate.enter(null);
+        CacheOperationContext old = gate.enter(null);
 
         try {
             return delegate.mapPartitionToNode(part);
@@ -168,7 +168,7 @@ public class GridCacheAffinityProxy<K, V> implements 
Affinity<K>, Externalizable
 
     /** {@inheritDoc} */
     @Override public Map<Integer, ClusterNode> 
mapPartitionsToNodes(Collection<Integer> parts) {
-        CacheProjectionContext old = gate.enter(null);
+        CacheOperationContext old = gate.enter(null);
 
         try {
             return delegate.mapPartitionsToNodes(parts);
@@ -180,7 +180,7 @@ public class GridCacheAffinityProxy<K, V> implements 
Affinity<K>, Externalizable
 
     /** {@inheritDoc} */
     @Override public Object affinityKey(K key) {
-        CacheProjectionContext old = gate.enter(null);
+        CacheOperationContext old = gate.enter(null);
 
         try {
             return delegate.affinityKey(key);
@@ -193,7 +193,7 @@ public class GridCacheAffinityProxy<K, V> implements 
Affinity<K>, Externalizable
 
     /** {@inheritDoc} */
     @Override @Nullable public ClusterNode mapKeyToNode(K key) {
-        CacheProjectionContext old = gate.enter(null);
+        CacheOperationContext old = gate.enter(null);
 
         try {
             return delegate.mapKeyToNode(key);
@@ -205,7 +205,7 @@ public class GridCacheAffinityProxy<K, V> implements 
Affinity<K>, Externalizable
 
     /** {@inheritDoc} */
     @Override public Map<ClusterNode, Collection<K>> mapKeysToNodes(@Nullable 
Collection<? extends K> keys) {
-        CacheProjectionContext old = gate.enter(null);
+        CacheOperationContext old = gate.enter(null);
 
         try {
             return delegate.mapKeysToNodes(keys);
@@ -217,7 +217,7 @@ public class GridCacheAffinityProxy<K, V> implements 
Affinity<K>, Externalizable
 
     /** {@inheritDoc} */
     @Override public Collection<ClusterNode> mapKeyToPrimaryAndBackups(K key) {
-        CacheProjectionContext old = gate.enter(null);
+        CacheOperationContext old = gate.enter(null);
 
         try {
             return delegate.mapKeyToPrimaryAndBackups(key);
@@ -229,7 +229,7 @@ public class GridCacheAffinityProxy<K, V> implements 
Affinity<K>, Externalizable
 
     /** {@inheritDoc} */
     @Override public Collection<ClusterNode> 
mapPartitionToPrimaryAndBackups(int part) {
-        CacheProjectionContext old = gate.enter(null);
+        CacheOperationContext old = gate.enter(null);
 
         try {
             return delegate.mapPartitionToPrimaryAndBackups(part);

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0ea5f8ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java
index f2c443a..d85bc75 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheAdapter.java
@@ -396,9 +396,9 @@ public abstract class GridDhtCacheAdapter<K, V> extends 
GridDistributedCacheAdap
 
         final AffinityTopologyVersion topVer = 
ctx.affinity().affinityTopologyVersion();
 
-        CacheProjectionContext prj = ctx.projectionPerCall();
+        CacheOperationContext opCtx = ctx.operationContextPerCall();
 
-        ExpiryPolicy plc0 = prj != null ? prj.expiry() : null;
+        ExpiryPolicy plc0 = opCtx != null ? opCtx.expiry() : null;
 
         final ExpiryPolicy plc = plc0 != null ? plc0 : ctx.expiry();
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0ea5f8ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
index 5f75879..3843b50 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
@@ -267,13 +267,13 @@ public class GridDhtAtomicCache<K, V> extends 
GridDhtCacheAdapter<K, V> {
         if (keyCheck)
             validateCacheKeys(keys);
 
-        CacheProjectionContext prj = ctx.projectionPerCall();
+        CacheOperationContext opCtx = ctx.operationContextPerCall();
 
-        subjId = ctx.subjectIdPerCall(null, prj);
+        subjId = ctx.subjectIdPerCall(null, opCtx);
 
         final UUID subjId0 = subjId;
 
-        final ExpiryPolicy expiryPlc = skipVals ? null : prj != null ? 
prj.expiry() : null;
+        final ExpiryPolicy expiryPlc = skipVals ? null : opCtx != null ? 
opCtx.expiry() : null;
 
         return asyncOp(new CO<IgniteInternalFuture<Map<K, V>>>() {
             @Override public IgniteInternalFuture<Map<K, V>> apply() {
@@ -748,9 +748,9 @@ public class GridDhtAtomicCache<K, V> extends 
GridDhtCacheAdapter<K, V> {
 
         ctx.checkSecurity(SecurityPermission.CACHE_PUT);
 
-        CacheProjectionContext prj = ctx.projectionPerCall();
+        CacheOperationContext opCtx = ctx.operationContextPerCall();
 
-        UUID subjId = ctx.subjectIdPerCall(null, prj);
+        UUID subjId = ctx.subjectIdPerCall(null, opCtx);
 
         int taskNameHash = ctx.kernalContext().job().currentTaskNameHash();
 
@@ -767,7 +767,7 @@ public class GridDhtAtomicCache<K, V> extends 
GridDhtCacheAdapter<K, V> {
             conflictRmvMap != null ? conflictRmvMap.values() : null,
             retval,
             rawRetval,
-            prj != null ? prj.expiry() : null,
+            opCtx != null ? opCtx.expiry() : null,
             filter,
             subjId,
             taskNameHash);
@@ -809,9 +809,9 @@ public class GridDhtAtomicCache<K, V> extends 
GridDhtCacheAdapter<K, V> {
 
         ctx.checkSecurity(SecurityPermission.CACHE_REMOVE);
 
-        CacheProjectionContext prj = ctx.projectionPerCall();
+        CacheOperationContext opCtx = ctx.operationContextPerCall();
 
-        UUID subjId = ctx.subjectIdPerCall(null, prj);
+        UUID subjId = ctx.subjectIdPerCall(null, opCtx);
 
         int taskNameHash = ctx.kernalContext().job().currentTaskNameHash();
 
@@ -827,7 +827,7 @@ public class GridDhtAtomicCache<K, V> extends 
GridDhtCacheAdapter<K, V> {
             keys != null ? null : conflictMap.values(),
             retval,
             rawRetval,
-            (filter != null && prj != null) ? prj.expiry() : null,
+            (filter != null && opCtx != null) ? opCtx.expiry() : null,
             filter,
             subjId,
             taskNameHash);

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0ea5f8ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedCache.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedCache.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedCache.java
index 6b210ff..9c59354 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedCache.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/colocated/GridDhtColocatedCache.java
@@ -179,9 +179,9 @@ public class GridDhtColocatedCache<K, V> extends 
GridDhtTransactionalCacheAdapte
 
         AffinityTopologyVersion topVer = tx == null ? 
ctx.affinity().affinityTopologyVersion() : tx.topologyVersion();
 
-        CacheProjectionContext prj = ctx.projectionPerCall();
+        CacheOperationContext opCtx = ctx.operationContextPerCall();
 
-        subjId = ctx.subjectIdPerCall(subjId, prj);
+        subjId = ctx.subjectIdPerCall(subjId, opCtx);
 
         return loadAsync(
             ctx.cacheKeysView(keys),
@@ -192,7 +192,7 @@ public class GridDhtColocatedCache<K, V> extends 
GridDhtTransactionalCacheAdapte
             subjId,
             taskName,
             deserializePortable,
-            skipVals ? null : expiryPolicy(prj != null ? prj.expiry() : null),
+            skipVals ? null : expiryPolicy(opCtx != null ? opCtx.expiry() : 
null),
             skipVals);
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0ea5f8ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearAtomicCache.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearAtomicCache.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearAtomicCache.java
index 8655aea..786f028 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearAtomicCache.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearAtomicCache.java
@@ -372,9 +372,9 @@ public class GridNearAtomicCache<K, V> extends 
GridNearCacheAdapter<K, V> {
         if (keyCheck)
             validateCacheKeys(keys);
 
-        CacheProjectionContext prj = ctx.projectionPerCall();
+        CacheOperationContext opCtx = ctx.operationContextPerCall();
 
-        subjId = ctx.subjectIdPerCall(subjId, prj);
+        subjId = ctx.subjectIdPerCall(subjId, opCtx);
 
         return loadAsync(null,
             ctx.cacheKeysView(keys),
@@ -383,7 +383,7 @@ public class GridNearAtomicCache<K, V> extends 
GridNearCacheAdapter<K, V> {
             subjId,
             taskName,
             deserializePortable,
-            skipVals ? null : prj != null ? prj.expiry() : null,
+            skipVals ? null : opCtx != null ? opCtx.expiry() : null,
             skipVals);
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0ea5f8ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTransactionalCache.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTransactionalCache.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTransactionalCache.java
index 81d0791..a0197c7 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTransactionalCache.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTransactionalCache.java
@@ -126,9 +126,9 @@ public class GridNearTransactionalCache<K, V> extends 
GridNearCacheAdapter<K, V>
             });
         }
 
-        CacheProjectionContext prj = ctx.projectionPerCall();
+        CacheOperationContext opCtx = ctx.operationContextPerCall();
 
-        subjId = ctx.subjectIdPerCall(subjId, prj);
+        subjId = ctx.subjectIdPerCall(subjId, opCtx);
 
         return loadAsync(null,
             ctx.cacheKeysView(keys),
@@ -137,7 +137,7 @@ public class GridNearTransactionalCache<K, V> extends 
GridNearCacheAdapter<K, V>
             subjId,
             taskName,
             deserializePortable,
-            skipVals ? null : prj != null ? prj.expiry() : null,
+            skipVals ? null : opCtx != null ? opCtx.expiry() : null,
             skipVals);
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0ea5f8ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/atomic/GridLocalAtomicCache.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/atomic/GridLocalAtomicCache.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/atomic/GridLocalAtomicCache.java
index 6724baa..00a7e06 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/atomic/GridLocalAtomicCache.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/atomic/GridLocalAtomicCache.java
@@ -478,16 +478,16 @@ public class GridLocalAtomicCache<K, V> extends 
GridCacheAdapter<K, V> {
         if (F.isEmpty(keys))
             return Collections.emptyMap();
 
-        CacheProjectionContext prj = ctx.projectionPerCall();
+        CacheOperationContext opCtx = ctx.operationContextPerCall();
 
-        UUID subjId = ctx.subjectIdPerCall(null, prj);
+        UUID subjId = ctx.subjectIdPerCall(null, opCtx);
 
         Map<K, V> vals = new HashMap<>(keys.size(), 1.0f);
 
         if (keyCheck)
             validateCacheKeys(keys);
 
-        final IgniteCacheExpiryPolicy expiry = expiryPolicy(prj != null ? 
prj.expiry() : null);
+        final IgniteCacheExpiryPolicy expiry = expiryPolicy(opCtx != null ? 
opCtx.expiry() : null);
 
         boolean success = true;
 
@@ -1440,9 +1440,9 @@ public class GridLocalAtomicCache<K, V> extends 
GridCacheAdapter<K, V> {
      * @return Expiry policy.
      */
     @Nullable private ExpiryPolicy expiryPerCall() {
-        CacheProjectionContext prj = ctx.projectionPerCall();
+        CacheOperationContext opCtx = ctx.operationContextPerCall();
 
-        ExpiryPolicy expiry = prj != null ? prj.expiry() : null;
+        ExpiryPolicy expiry = opCtx != null ? opCtx.expiry() : null;
 
         if (expiry == null)
             expiry = ctx.expiry();

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0ea5f8ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/CacheQueriesProxy.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/CacheQueriesProxy.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/CacheQueriesProxy.java
index a37a18e..f28b2bd 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/CacheQueriesProxy.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/CacheQueriesProxy.java
@@ -40,7 +40,7 @@ public class CacheQueriesProxy<K, V> implements 
CacheQueries<K, V>, Externalizab
     private GridCacheContext<K, V> cctx;
 
     /** */
-    private CacheProjectionContext prj;
+    private CacheOperationContext prj;
 
     /** */
     private CacheQueries<K, V> delegate;
@@ -59,7 +59,7 @@ public class CacheQueriesProxy<K, V> implements 
CacheQueries<K, V>, Externalizab
      * @param prj Optional cache projection.
      * @param delegate Delegate object.
      */
-    public CacheQueriesProxy(GridCacheContext<K, V> cctx, @Nullable 
CacheProjectionContext prj,
+    public CacheQueriesProxy(GridCacheContext<K, V> cctx, @Nullable 
CacheOperationContext prj,
         CacheQueries<K, V> delegate) {
         assert cctx != null;
         assert delegate != null;
@@ -76,13 +76,13 @@ public class CacheQueriesProxy<K, V> implements 
CacheQueries<K, V>, Externalizab
      *
      * @return Cache projection.
      */
-    public CacheProjectionContext projection() {
+    public CacheOperationContext projection() {
         return prj;
     }
 
     /** {@inheritDoc} */
     @Override public CacheQuery<List<?>> createSqlFieldsQuery(String qry) {
-        CacheProjectionContext prev = gate.enter(prj);
+        CacheOperationContext prev = gate.enter(prj);
 
         try {
             return delegate.createSqlFieldsQuery(qry);
@@ -94,7 +94,7 @@ public class CacheQueriesProxy<K, V> implements 
CacheQueries<K, V>, Externalizab
 
     /** {@inheritDoc} */
     @Override public CacheQuery<Map.Entry<K, V>> createFullTextQuery(String 
clsName, String search) {
-        CacheProjectionContext prev = gate.enter(prj);
+        CacheOperationContext prev = gate.enter(prj);
 
         try {
             return delegate.createFullTextQuery(clsName, search);
@@ -106,7 +106,7 @@ public class CacheQueriesProxy<K, V> implements 
CacheQueries<K, V>, Externalizab
 
     /** {@inheritDoc} */
     @Override public CacheQuery<Map.Entry<K, V>> createScanQuery(@Nullable 
IgniteBiPredicate<K, V> filter) {
-        CacheProjectionContext prev = gate.enter(prj);
+        CacheOperationContext prev = gate.enter(prj);
 
         try {
             return delegate.createScanQuery(filter);
@@ -118,7 +118,7 @@ public class CacheQueriesProxy<K, V> implements 
CacheQueries<K, V>, Externalizab
 
     /** {@inheritDoc} */
     @Override public <R> CacheQuery<R> createSpiQuery() {
-        CacheProjectionContext prev = gate.enter(prj);
+        CacheOperationContext prev = gate.enter(prj);
 
         try {
             return delegate.createSpiQuery();
@@ -130,7 +130,7 @@ public class CacheQueriesProxy<K, V> implements 
CacheQueries<K, V>, Externalizab
 
     /** {@inheritDoc} */
     @Override public QueryCursor<List<?>> execute(String space, 
GridCacheTwoStepQuery qry) {
-        CacheProjectionContext prev = gate.enter(prj);
+        CacheOperationContext prev = gate.enter(prj);
 
         try {
             return delegate.execute(space, qry);
@@ -142,7 +142,7 @@ public class CacheQueriesProxy<K, V> implements 
CacheQueries<K, V>, Externalizab
 
     /** {@inheritDoc} */
     @Override public QueryCursor<List<?>> executeTwoStepQuery(String space, 
String sqlQry, Object[] params) {
-        CacheProjectionContext prev = gate.enter(prj);
+        CacheOperationContext prev = gate.enter(prj);
 
         try {
             return delegate.executeTwoStepQuery(space, sqlQry, params);
@@ -154,7 +154,7 @@ public class CacheQueriesProxy<K, V> implements 
CacheQueries<K, V>, Externalizab
 
     /** {@inheritDoc} */
     @Override public QueryMetrics metrics() {
-        CacheProjectionContext prev = gate.enter(prj);
+        CacheOperationContext prev = gate.enter(prj);
 
         try {
             return delegate.metrics();
@@ -166,7 +166,7 @@ public class CacheQueriesProxy<K, V> implements 
CacheQueries<K, V>, Externalizab
 
     /** {@inheritDoc} */
     @Override public Collection<GridCacheSqlMetadata> sqlMetadata() throws 
IgniteCheckedException {
-        CacheProjectionContext prev = gate.enter(prj);
+        CacheOperationContext prev = gate.enter(prj);
 
         try {
             return delegate.sqlMetadata();
@@ -178,7 +178,7 @@ public class CacheQueriesProxy<K, V> implements 
CacheQueries<K, V>, Externalizab
 
     /** {@inheritDoc} */
     @Override public CacheQuery<List<?>> createSqlFieldsQuery(String qry, 
boolean incMeta) {
-        CacheProjectionContext prev = gate.enter(prj);
+        CacheOperationContext prev = gate.enter(prj);
 
         try {
             return delegate.createSqlFieldsQuery(qry, incMeta);
@@ -198,7 +198,7 @@ public class CacheQueriesProxy<K, V> implements 
CacheQueries<K, V>, Externalizab
     /** {@inheritDoc} */
     @Override public void readExternal(ObjectInput in) throws IOException, 
ClassNotFoundException {
         cctx = (GridCacheContext<K,V>)in.readObject();
-        prj = (CacheProjectionContext)in.readObject();
+        prj = (CacheOperationContext)in.readObject();
         delegate = (CacheQueries<K, V>)in.readObject();
 
         gate = cctx.gate();

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0ea5f8ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java
index 00d3f16..046a829 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java
@@ -1614,9 +1614,9 @@ public abstract class IgniteTxLocalAdapter extends 
IgniteTxAdapter
 
             final Map<KeyCacheObject, GridCacheVersion> missed = new 
GridLeanMap<>(pessimistic() ? keysCnt : 0);
 
-            CacheProjectionContext prj = cacheCtx.projectionPerCall();
+            CacheOperationContext opCtx = cacheCtx.operationContextPerCall();
 
-            ExpiryPolicy expiryPlc = prj != null ? prj.expiry() : null;
+            ExpiryPolicy expiryPlc = opCtx != null ? opCtx.expiry() : null;
 
             final Collection<KeyCacheObject> lockKeys = enlistRead(cacheCtx,
                 keys,
@@ -2583,13 +2583,13 @@ public abstract class IgniteTxLocalAdapter extends 
IgniteTxAdapter
 
             Collection<KeyCacheObject> enlisted = new ArrayList<>();
 
-            CacheProjectionContext prj = cacheCtx.projectionPerCall();
+            CacheOperationContext opCtx = cacheCtx.operationContextPerCall();
 
             final IgniteInternalFuture<Set<KeyCacheObject>> loadFut = 
enlistWrite(
                 cacheCtx,
                 keySet,
                 cached,
-                prj != null ? prj.expiry() : null,
+                opCtx != null ? opCtx.expiry() : null,
                 implicit,
                 map0,
                 invokeMap0,
@@ -2794,9 +2794,9 @@ public abstract class IgniteTxLocalAdapter extends 
IgniteTxAdapter
             ExpiryPolicy plc;
 
             if (!F.isEmpty(filter)) {
-                CacheProjectionContext prj = cacheCtx.projectionPerCall();
+                CacheOperationContext opCtx = 
cacheCtx.operationContextPerCall();
 
-                plc = prj != null ? prj.expiry() : null;
+                plc = opCtx != null ? opCtx.expiry() : null;
             }
             else
                 plc = null;
@@ -2939,9 +2939,9 @@ public abstract class IgniteTxLocalAdapter extends 
IgniteTxAdapter
      * @return {@code True} if portables should be deserialized, {@code false} 
otherwise.
      */
     private boolean deserializePortables(GridCacheContext cacheCtx) {
-        CacheProjectionContext prj = cacheCtx.projectionPerCall();
+        CacheOperationContext opCtx = cacheCtx.operationContextPerCall();
 
-        return prj == null || prj.deserializePortables();
+        return opCtx == null || opCtx.deserializePortables();
     }
 
     /**

Reply via email to