Return-Path: X-Original-To: apmail-ignite-commits-archive@minotaur.apache.org Delivered-To: apmail-ignite-commits-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 551FA9BA6 for ; Fri, 19 Dec 2014 14:10:48 +0000 (UTC) Received: (qmail 25871 invoked by uid 500); 19 Dec 2014 14:10:48 -0000 Delivered-To: apmail-ignite-commits-archive@ignite.apache.org Received: (qmail 25843 invoked by uid 500); 19 Dec 2014 14:10:48 -0000 Mailing-List: contact commits-help@ignite.incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@ignite.incubator.apache.org Delivered-To: mailing list commits@ignite.incubator.apache.org Received: (qmail 25834 invoked by uid 99); 19 Dec 2014 14:10:48 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 19 Dec 2014 14:10:48 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED,T_RP_MATCHES_RCVD X-Spam-Check-By: apache.org Received: from [140.211.11.3] (HELO mail.apache.org) (140.211.11.3) by apache.org (qpsmtpd/0.29) with SMTP; Fri, 19 Dec 2014 14:10:43 +0000 Received: (qmail 25581 invoked by uid 99); 19 Dec 2014 14:10:22 -0000 Received: from tyr.zones.apache.org (HELO tyr.zones.apache.org) (140.211.11.114) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 19 Dec 2014 14:10:22 +0000 Received: by tyr.zones.apache.org (Postfix, from userid 65534) id 8B571A2F1FC; Fri, 19 Dec 2014 14:10:22 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: sboikov@apache.org To: commits@ignite.incubator.apache.org Date: Fri, 19 Dec 2014 14:10:23 -0000 Message-Id: <66271f5617a14690a5741edf7f0dca15@git.apache.org> In-Reply-To: References: X-Mailer: ASF-Git Admin Mailer Subject: [2/2] incubator-ignite git commit: IGNITE-36 Removed GridMetadataAware interface. X-Virus-Checked: Checked by ClamAV on apache.org IGNITE-36 Removed GridMetadataAware interface. Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/1bbd19c9 Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/1bbd19c9 Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/1bbd19c9 Branch: refs/heads/ignite-36 Commit: 1bbd19c933fdd2089dc65ec721574f6dcaff8b94 Parents: 1812040 Author: nikolay_tikhonov Authored: Tue Dec 16 09:45:03 2014 +0300 Committer: nikolay_tikhonov Committed: Fri Dec 19 16:29:31 2014 +0300 ---------------------------------------------------------------------- .../org/apache/ignite/cluster/ClusterNode.java | 39 +++- .../ignite/cluster/ClusterNodeLocalMap.java | 3 +- .../ignite/compute/ComputeJobSibling.java | 3 +- .../ignite/compute/ComputeLoadBalancer.java | 3 +- .../ignite/logger/java/IgniteJavaLogger.java | 4 +- .../org/gridgain/grid/GridMetadataAware.java | 179 ------------------- .../org/gridgain/grid/cache/GridCacheEntry.java | 77 +++++++- .../org/gridgain/grid/cache/GridCacheTx.java | 33 +++- .../grid/cache/store/GridCacheStore.java | 5 +- .../grid/kernal/ClusterNodeLocalMapImpl.java | 80 --------- .../grid/kernal/GridJobContextImpl.java | 4 +- .../grid/kernal/GridJobSiblingImpl.java | 3 +- .../gridgain/grid/kernal/GridKernalContext.java | 3 +- .../grid/kernal/GridKernalContextImpl.java | 4 +- .../gridgain/grid/kernal/GridLoggerProxy.java | 5 +- .../kernal/executor/GridExecutorService.java | 4 +- .../loadbalancer/GridLoadBalancerAdapter.java | 4 +- .../processors/cache/GridCacheAdapter.java | 4 +- .../processors/cache/GridCacheEntryEx.java | 85 ++++++++- .../processors/cache/GridCacheEntryImpl.java | 54 +----- .../cache/GridCacheEvictionEntry.java | 36 ---- .../cache/GridCacheFilterEvaluationEntry.java | 36 ---- .../processors/cache/GridCacheLogger.java | 3 +- .../processors/cache/GridCacheMapEntry.java | 88 +-------- .../processors/cache/GridCacheTxProxyImpl.java | 59 ------ .../GridPartitionedCacheEntryImpl.java | 147 --------------- .../cache/query/GridCacheQueryManager.java | 37 ---- .../GridCacheContinuousQueryEntry.java | 50 ------ .../java/org/gridgain/grid/util/GridUtils.java | 19 -- .../grid/util/lang/GridComputeJobWrapper.java | 14 +- .../org/gridgain/grid/util/lang/GridFunc.java | 146 --------------- .../util/lang/GridMetadataAwareAdapter.java | 159 ++++++++++++---- .../org/gridgain/grid/GridTestJobContext.java | 2 +- .../gridgain/grid/lang/GridTupleSelfTest.java | 85 --------- .../junits/logger/GridTestLog4jLogger.java | 2 +- .../gridgain/grid/logger/jcl/GridJclLogger.java | 2 +- .../ignite/logger/log4j/IgniteLog4jLogger.java | 2 +- .../processors/schedule/ScheduleFutureImpl.java | 5 +- .../grid/logger/slf4j/GridSlf4jLogger.java | 2 +- .../java/org/gridgain/grid/GridSpringBean.java | 2 +- 40 files changed, 381 insertions(+), 1111 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/apache/ignite/cluster/ClusterNode.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/cluster/ClusterNode.java b/modules/core/src/main/java/org/apache/ignite/cluster/ClusterNode.java index a0dd196..72b2840 100644 --- a/modules/core/src/main/java/org/apache/ignite/cluster/ClusterNode.java +++ b/modules/core/src/main/java/org/apache/ignite/cluster/ClusterNode.java @@ -11,11 +11,11 @@ package org.apache.ignite.cluster; import org.apache.ignite.IgniteCluster; import org.apache.ignite.product.*; -import org.gridgain.grid.*; import org.gridgain.grid.kernal.*; import org.jetbrains.annotations.*; import java.util.*; +import java.util.concurrent.*; /** * Interface representing a single grid node. Use {@link #attribute(String)} or @@ -99,7 +99,7 @@ import java.util.*; * that comes with JDK as it also provides ability to view any node parameter * as a graph. */ -public interface ClusterNode extends GridMetadataAware { +public interface ClusterNode { /** * Gets globally unique node ID. A new ID is generated every time a node restarts. * @@ -246,4 +246,39 @@ public interface ClusterNode extends GridMetadataAware { * @return {@code True} if this node is a client node, {@code false} otherwise. */ public boolean isClient(); + + /** + * Adds a new metadata. + * + * @param name Metadata name. + * @param val Metadata value. + * @param Type of the value. + * @return Metadata previously associated with given name, or + * {@code null} if there was none. + */ + @Nullable public V addMeta(String name, V val); + + /** + * Adds given metadata value only if it was absent. + * + * @param name Metadata name. + * @param c Factory closure to produce value to add if it's not attached already. + * Not that unlike {@link #addMeta(String, Object)} method the factory closure will + * not be called unless the value is required and therefore value will only be created + * when it is actually needed. If {@code null} and metadata value is missing - {@code null} + * will be returned from this method. + * @param Type of the value. + * @return The value of the metadata after execution of this method. + */ + @Nullable public V addMetaIfAbsent(String name, @Nullable Callable c); + + + /** + * Gets metadata by name. + * + * @param name Metadata name. + * @param Type of the value. + * @return Metadata value or {@code null}. + */ + @Nullable public V meta(String name); } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/apache/ignite/cluster/ClusterNodeLocalMap.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/cluster/ClusterNodeLocalMap.java b/modules/core/src/main/java/org/apache/ignite/cluster/ClusterNodeLocalMap.java index 770d08f..84d65b0 100644 --- a/modules/core/src/main/java/org/apache/ignite/cluster/ClusterNodeLocalMap.java +++ b/modules/core/src/main/java/org/apache/ignite/cluster/ClusterNodeLocalMap.java @@ -9,7 +9,6 @@ package org.apache.ignite.cluster; -import org.gridgain.grid.*; import org.jetbrains.annotations.*; import java.util.concurrent.*; @@ -26,7 +25,7 @@ import java.util.concurrent.*; *

* You can get an instance of {@code GridNodeLocalMap} by calling {@link org.apache.ignite.IgniteCluster#nodeLocalMap()} method. */ -public interface ClusterNodeLocalMap extends ConcurrentMap, GridMetadataAware { +public interface ClusterNodeLocalMap extends ConcurrentMap { /** * Gets the value with given key. If that value does not exist, calls given closure * to get the default value, puts it into the map and returns it. If closure is {@code null} http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/apache/ignite/compute/ComputeJobSibling.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/compute/ComputeJobSibling.java b/modules/core/src/main/java/org/apache/ignite/compute/ComputeJobSibling.java index 330196a..7876214 100644 --- a/modules/core/src/main/java/org/apache/ignite/compute/ComputeJobSibling.java +++ b/modules/core/src/main/java/org/apache/ignite/compute/ComputeJobSibling.java @@ -11,7 +11,6 @@ package org.apache.ignite.compute; import org.apache.ignite.*; import org.apache.ignite.lang.*; -import org.gridgain.grid.*; import java.util.*; @@ -19,7 +18,7 @@ import java.util.*; * Job sibling interface defines a job from the same split. In other words a sibling is a job returned * from the same {@link ComputeTask#map(List, Object)} method invocation. */ -public interface ComputeJobSibling extends GridMetadataAware { +public interface ComputeJobSibling { /** * Gets ID of this grid job sibling. Note that ID stays constant * throughout job life time, even if a job gets failed over to another http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/apache/ignite/compute/ComputeLoadBalancer.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/compute/ComputeLoadBalancer.java b/modules/core/src/main/java/org/apache/ignite/compute/ComputeLoadBalancer.java index e4ee221..4176aa1 100644 --- a/modules/core/src/main/java/org/apache/ignite/compute/ComputeLoadBalancer.java +++ b/modules/core/src/main/java/org/apache/ignite/compute/ComputeLoadBalancer.java @@ -11,7 +11,6 @@ package org.apache.ignite.compute; import org.apache.ignite.*; import org.apache.ignite.cluster.*; -import org.gridgain.grid.*; import org.jetbrains.annotations.*; import java.util.*; @@ -93,7 +92,7 @@ import java.util.*; * } * */ -public interface ComputeLoadBalancer extends GridMetadataAware { +public interface ComputeLoadBalancer { /** * Gets the next balanced node according to the underlying load balancing policy. * http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/apache/ignite/logger/java/IgniteJavaLogger.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/logger/java/IgniteJavaLogger.java b/modules/core/src/main/java/org/apache/ignite/logger/java/IgniteJavaLogger.java index 9e806fd..0071715 100644 --- a/modules/core/src/main/java/org/apache/ignite/logger/java/IgniteJavaLogger.java +++ b/modules/core/src/main/java/org/apache/ignite/logger/java/IgniteJavaLogger.java @@ -11,8 +11,6 @@ package org.apache.ignite.logger.java; import org.apache.ignite.*; import org.apache.ignite.logger.*; -import org.gridgain.grid.*; -import org.gridgain.grid.util.lang.*; import org.gridgain.grid.util.typedef.*; import org.gridgain.grid.util.typedef.internal.*; import org.jetbrains.annotations.*; @@ -75,7 +73,7 @@ import static org.apache.ignite.IgniteSystemProperties.*; * logger in your task/job code. See {@link org.apache.ignite.resources.IgniteLoggerResource} annotation about logger * injection. */ -public class IgniteJavaLogger extends GridMetadataAwareAdapter implements IgniteLogger, IgniteLoggerNodeIdAware { +public class IgniteJavaLogger implements IgniteLogger, IgniteLoggerNodeIdAware { /** */ private static final long serialVersionUID = 0L; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/GridMetadataAware.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/GridMetadataAware.java b/modules/core/src/main/java/org/gridgain/grid/GridMetadataAware.java deleted file mode 100644 index 7a7c739..0000000 --- a/modules/core/src/main/java/org/gridgain/grid/GridMetadataAware.java +++ /dev/null @@ -1,179 +0,0 @@ -/* @java.file.header */ - -/* _________ _____ __________________ _____ - * __ ____/___________(_)______ /__ ____/______ ____(_)_______ - * _ / __ __ ___/__ / _ __ / _ / __ _ __ `/__ / __ __ \ - * / /_/ / _ / _ / / /_/ / / /_/ / / /_/ / _ / _ / / / - * \____/ /_/ /_/ \_,__/ \____/ \__,_/ /_/ /_/ /_/ - */ - -package org.gridgain.grid; - -import org.jetbrains.annotations.*; -import java.io.*; -import java.util.*; -import java.util.concurrent.*; - -/** - * Allows to attach metadata attributes to any entity that implements - * this interface. This promotes meta-programming technique throughout the - * GridGain APIs by allowing to attach and query the metadata information to top-level - * entities in GridGain APIs. - *

- * Note that unlike other types of attributes the metadata is explicitly - * local to VM. Local metadata does not have any distribution semantic and is not - * specifically distributed in any way. Note, however, that if object that implements this - * interface gets serialized and deserialized on the remote node the attachments may or may not - * be carried over (depending on the implementation). All classes that come with GridGain - * and implement this interface support proper serialization and deserialization. - *

- * For example, this may become useful for cache entries or - * cache transactions. Cache entry attachment can be used whenever entry - * needs to carry additional context and it is too expensive to keep - * looking that context up from a separate map by a key. For example, - * an expiration policy used by caches may add some expiration - * context to cache entries to properly expire them. - */ -public interface GridMetadataAware extends Serializable { - /** - * Copies all metadata from another instance. - * - * @param from Metadata aware instance to copy metadata from. - */ - public void copyMeta(GridMetadataAware from); - - /** - * Copies all metadata from given map. - * - * @param data Map to copy metadata from. - */ - public void copyMeta(Map data); - - /** - * Adds a new metadata. - * - * @param name Metadata name. - * @param val Metadata value. - * @param Type of the value. - * @return Metadata previously associated with given name, or - * {@code null} if there was none. - */ - @Nullable public V addMeta(String name, V val); - - /** - * Adds given metadata value only if it was absent. - * - * @param name Metadata name. - * @param val Value to add if it's not attached already. - * @param Type of the value. - * @return {@code null} if new value was put, or current value if put didn't happen. - */ - @Nullable public V putMetaIfAbsent(String name, V val); - - /** - * Adds given metadata value only if it was absent. - * - * @param name Metadata name. - * @param c Factory closure to produce value to add if it's not attached already. - * Not that unlike {@link #addMeta(String, Object)} method the factory closure will - * not be called unless the value is required and therefore value will only be created - * when it is actually needed. - * @param Type of the value. - * @return {@code null} if new value was put, or current value if put didn't happen. - */ - @Nullable public V putMetaIfAbsent(String name, Callable c); - - /** - * Adds given metadata value only if it was absent. Unlike - * {@link #putMetaIfAbsent(String, Callable)}, this method always returns - * the latest value and never previous one. - * - * @param name Metadata name. - * @param val Value to add if it's not attached already. - * @param Type of the value. - * @return The value of the metadata after execution of this method. - */ - public V addMetaIfAbsent(String name, V val); - - /** - * Adds given metadata value only if it was absent. - * - * @param name Metadata name. - * @param c Factory closure to produce value to add if it's not attached already. - * Not that unlike {@link #addMeta(String, Object)} method the factory closure will - * not be called unless the value is required and therefore value will only be created - * when it is actually needed. If {@code null} and metadata value is missing - {@code null} - * will be returned from this method. - * @param Type of the value. - * @return The value of the metadata after execution of this method. - */ - @Nullable public V addMetaIfAbsent(String name, @Nullable Callable c); - - /** - * Gets metadata by name. - * - * @param name Metadata name. - * @param Type of the value. - * @return Metadata value or {@code null}. - */ - public V meta(String name); - - /** - * Removes metadata by name. - * - * @param name Name of the metadata to remove. - * @param Type of the value. - * @return Value of removed metadata or {@code null}. - */ - public V removeMeta(String name); - - /** - * Removes metadata only if its current value is equal to {@code val} passed in. - * - * @param name Name of metadata attribute. - * @param val Value to compare. - * @param Value type. - * @return {@code True} if value was removed, {@code false} otherwise. - */ - public boolean removeMeta(String name, V val); - - /** - * Gets all metadata in this entry. - * - * @param Type of the value. - * @return All metadata in this entry. - */ - public Map allMeta(); - - /** - * Tests whether or not given metadata is set. - * - * @param name Name of the metadata to test. - * @return Whether or not given metadata is set. - */ - public boolean hasMeta(String name); - - /** - * Tests whether or not metadata with given name and value is set. Returns {@code true} if - * attachment with given name it set and its value is equals to provided value. Otherwise returns - * {@code false}. - * - * @param name Name of the metadata. - * @param val Value to compare. Cannot be {@code null}. - * @param Type of the value. - * @return {@code true} if metadata with given name is set and its value is equals to provided value - - * otherwise returns {@code false}. - */ - public boolean hasMeta(String name, V val); - - /** - * Replaces given metadata with new {@code newVal} value only if its current value - * is equal to {@code curVal}. Otherwise, it is no-op. - * - * @param name Name of the metadata. - * @param curVal Current value to check. - * @param newVal New value. - * @return {@code true} if replacement occurred, {@code false} otherwise. - */ - public boolean replaceMeta(String name, V curVal, V newVal); -} http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/cache/GridCacheEntry.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/cache/GridCacheEntry.java b/modules/core/src/main/java/org/gridgain/grid/cache/GridCacheEntry.java index 725f377..6966cb5 100644 --- a/modules/core/src/main/java/org/gridgain/grid/cache/GridCacheEntry.java +++ b/modules/core/src/main/java/org/gridgain/grid/cache/GridCacheEntry.java @@ -11,11 +11,11 @@ package org.gridgain.grid.cache; import org.apache.ignite.*; import org.apache.ignite.lang.*; -import org.gridgain.grid.*; import org.jetbrains.annotations.*; import java.util.*; import java.util.Map.*; +import java.util.concurrent.*; /** * This interface provides a rich API for working with individual cache entries. It @@ -78,7 +78,7 @@ import java.util.Map.*; * @param Key type. * @param Value type. */ -public interface GridCacheEntry extends Map.Entry, GridMetadataAware { +public interface GridCacheEntry extends Map.Entry { /** * Cache projection to which this entry belongs. Note that entry and its * parent projections have same flags and filters. @@ -557,4 +557,77 @@ public interface GridCacheEntry extends Map.Entry, GridMetadataAware * @throws IgniteCheckedException If failed to evaluate entry size. */ public int memorySize() throws IgniteCheckedException; + + /** + * Removes metadata by name. + * + * @param name Name of the metadata to remove. + * @param Type of the value. + * @return Value of removed metadata or {@code null}. + */ + public V removeMeta(String name); + + /** + * Removes metadata only if its current value is equal to {@code val} passed in. + * + * @param name Name of metadata attribute. + * @param val Value to compare. + * @param Value type. + * @return {@code True} if value was removed, {@code false} otherwise. + */ + public boolean removeMeta(String name, V val); + + /** + * Gets metadata by name. + * + * @param name Metadata name. + * @param Type of the value. + * @return Metadata value or {@code null}. + */ + public V meta(String name); + + /** + * Adds given metadata value only if it was absent. + * + * @param name Metadata name. + * @param c Factory closure to produce value to add if it's not attached already. + * Not that unlike {@link #addMeta(String, Object)} method the factory closure will + * not be called unless the value is required and therefore value will only be created + * when it is actually needed. + * @param Type of the value. + * @return {@code null} if new value was put, or current value if put didn't happen. + */ + @Nullable public V putMetaIfAbsent(String name, Callable c); + + /** + * Adds given metadata value only if it was absent. + * + * @param name Metadata name. + * @param val Value to add if it's not attached already. + * @param Type of the value. + * @return {@code null} if new value was put, or current value if put didn't happen. + */ + @Nullable public V putMetaIfAbsent(String name, V val); + + /** + * Adds a new metadata. + * + * @param name Metadata name. + * @param val Metadata value. + * @param Type of the value. + * @return Metadata previously associated with given name, or + * {@code null} if there was none. + */ + @Nullable public V addMeta(String name, V val); + + /** + * Replaces given metadata with new {@code newVal} value only if its current value + * is equal to {@code curVal}. Otherwise, it is no-op. + * + * @param name Name of the metadata. + * @param curVal Current value to check. + * @param newVal New value. + * @return {@code true} if replacement occurred, {@code false} otherwise. + */ + public boolean replaceMeta(String name, V curVal, V newVal); } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/cache/GridCacheTx.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/cache/GridCacheTx.java b/modules/core/src/main/java/org/gridgain/grid/cache/GridCacheTx.java index 6e8c5bd..dde0ea2 100644 --- a/modules/core/src/main/java/org/gridgain/grid/cache/GridCacheTx.java +++ b/modules/core/src/main/java/org/gridgain/grid/cache/GridCacheTx.java @@ -11,7 +11,7 @@ package org.gridgain.grid.cache; import org.apache.ignite.*; import org.apache.ignite.lang.*; -import org.gridgain.grid.*; +import org.jetbrains.annotations.*; import java.util.*; @@ -105,7 +105,7 @@ import java.util.*; * } * */ -public interface GridCacheTx extends GridMetadataAware, AutoCloseable { +public interface GridCacheTx extends AutoCloseable { /** * Gets unique identifier for this transaction. * @@ -240,4 +240,33 @@ public interface GridCacheTx extends GridMetadataAware, AutoCloseable { * @throws IgniteCheckedException If rollback failed. */ public void rollback() throws IgniteCheckedException; + + /** + * Removes metadata by name. + * + * @param name Name of the metadata to remove. + * @param Type of the value. + * @return Value of removed metadata or {@code null}. + */ + @Nullable public V removeMeta(String name); + + /** + * Gets metadata by name. + * + * @param name Metadata name. + * @param Type of the value. + * @return Metadata value or {@code null}. + */ + @Nullable public V meta(String name); + + /** + * Adds a new metadata. + * + * @param name Metadata name. + * @param val Metadata value. + * @param Type of the value. + * @return Metadata previously associated with given name, or + * {@code null} if there was none. + */ + @Nullable public V addMeta(String name, V val); } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/cache/store/GridCacheStore.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/cache/store/GridCacheStore.java b/modules/core/src/main/java/org/gridgain/grid/cache/store/GridCacheStore.java index 4bf2fc0..974c9a9 100644 --- a/modules/core/src/main/java/org/gridgain/grid/cache/store/GridCacheStore.java +++ b/modules/core/src/main/java/org/gridgain/grid/cache/store/GridCacheStore.java @@ -12,7 +12,6 @@ package org.gridgain.grid.cache.store; import org.apache.ignite.*; import org.apache.ignite.lang.*; import org.apache.ignite.portables.*; -import org.gridgain.grid.*; import org.gridgain.grid.cache.*; import org.gridgain.grid.cache.store.jdbc.*; import org.jetbrains.annotations.*; @@ -43,8 +42,8 @@ import java.util.Date; * *

* All transactional operations of this API are provided with ongoing {@link GridCacheTx}, - * if any. As transaction is {@link GridMetadataAware}, you can attach any metadata to - * it, e.g. to recognize if several operations belong to the same transaction or not. + * if any. You can attach any metadata to it, e.g. to recognize if several operations belong + * to the same transaction or not. * Here is an example of how attach a JDBC connection as transaction metadata: *

  * Connection conn = tx.meta("some.name");

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/kernal/ClusterNodeLocalMapImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/gridgain/grid/kernal/ClusterNodeLocalMapImpl.java b/modules/core/src/main/java/org/gridgain/grid/kernal/ClusterNodeLocalMapImpl.java
index da31c46..54cb206 100644
--- a/modules/core/src/main/java/org/gridgain/grid/kernal/ClusterNodeLocalMapImpl.java
+++ b/modules/core/src/main/java/org/gridgain/grid/kernal/ClusterNodeLocalMapImpl.java
@@ -10,15 +10,12 @@
 package org.gridgain.grid.kernal;
 
 import org.apache.ignite.cluster.*;
-import org.gridgain.grid.*;
 import org.gridgain.grid.util.typedef.*;
 import org.gridgain.grid.util.typedef.internal.*;
-import org.gridgain.grid.util.lang.*;
 import org.jdk8.backport.*;
 import org.jetbrains.annotations.*;
 
 import java.io.*;
-import java.util.*;
 import java.util.concurrent.*;
 
 /**
@@ -33,9 +30,6 @@ public class ClusterNodeLocalMapImpl extends ConcurrentHashMap8 impl
     private static final ThreadLocal stash = new ThreadLocal<>();
 
     /** */
-    private GridMetadataAwareAdapter impl = new GridMetadataAwareAdapter();
-
-    /** */
     private GridKernalContext ctx;
 
     /**
@@ -66,80 +60,6 @@ public class ClusterNodeLocalMapImpl extends ConcurrentHashMap8 impl
     }
 
     /** {@inheritDoc} */
-    @Override public  V addMeta(String name, V val) {
-        return impl.addMeta(name, val);
-    }
-
-    /** {@inheritDoc} */
-    @Override public  V putMetaIfAbsent(String name, V val) {
-        return impl.putMetaIfAbsent(name, val);
-    }
-
-    /** {@inheritDoc} */
-    @Override public  V putMetaIfAbsent(String name, Callable c) {
-        return impl.putMetaIfAbsent(name, c);
-    }
-
-    /** {@inheritDoc} */
-    @Override public  V addMetaIfAbsent(String name, V val) {
-        return impl.addMetaIfAbsent(name, val);
-    }
-
-    /** {@inheritDoc} */
-    @Override public  V addMetaIfAbsent(String name, Callable c) {
-        return impl.addMetaIfAbsent(name, c);
-    }
-
-    /** {@inheritDoc} */
-    @SuppressWarnings("unchecked")
-    @Nullable
-    @Override public  V meta(String name) {
-        return (V)impl.meta(name);
-    }
-
-    /** {@inheritDoc} */
-    @SuppressWarnings("unchecked")
-    @Nullable
-    @Override public  V removeMeta(String name) {
-        return (V)impl.removeMeta(name);
-    }
-
-    /** {@inheritDoc} */
-    @Override public  boolean removeMeta(String name, V val) {
-        return impl.removeMeta(name, val);
-    }
-
-    /** {@inheritDoc} */
-    @Override public  Map allMeta() {
-        return impl.allMeta();
-    }
-
-    /** {@inheritDoc} */
-    @Override public boolean hasMeta(String name) {
-        return impl.hasMeta(name);
-    }
-
-    /** {@inheritDoc} */
-    @Override public  boolean hasMeta(String name, V val) {
-        return impl.hasMeta(name, val);
-    }
-
-    /** {@inheritDoc} */
-    @Override public  boolean replaceMeta(String name, V curVal, V newVal) {
-        return impl.replaceMeta(name, curVal, newVal);
-    }
-
-    /** {@inheritDoc} */
-    @Override public void copyMeta(GridMetadataAware from) {
-        impl.copyMeta(from);
-    }
-
-    /** {@inheritDoc} */
-    @Override public void copyMeta(Map data) {
-        impl.copyMeta(data);
-    }
-
-    /** {@inheritDoc} */
     @Override public void writeExternal(ObjectOutput out) throws IOException {
         U.writeString(out, ctx.gridName());
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/kernal/GridJobContextImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/gridgain/grid/kernal/GridJobContextImpl.java b/modules/core/src/main/java/org/gridgain/grid/kernal/GridJobContextImpl.java
index 7db3f51..9ab9c36 100644
--- a/modules/core/src/main/java/org/gridgain/grid/kernal/GridJobContextImpl.java
+++ b/modules/core/src/main/java/org/gridgain/grid/kernal/GridJobContextImpl.java
@@ -12,14 +12,12 @@ package org.gridgain.grid.kernal;
 import org.apache.ignite.*;
 import org.apache.ignite.compute.*;
 import org.apache.ignite.lang.*;
-import org.gridgain.grid.*;
 import org.gridgain.grid.cache.*;
 import org.gridgain.grid.cache.affinity.*;
 import org.gridgain.grid.kernal.processors.job.*;
 import org.gridgain.grid.kernal.processors.timeout.*;
 import org.gridgain.grid.util.typedef.*;
 import org.gridgain.grid.util.typedef.internal.*;
-import org.gridgain.grid.util.lang.*;
 import org.gridgain.grid.util.tostring.*;
 import org.jetbrains.annotations.*;
 
@@ -31,7 +29,7 @@ import java.util.concurrent.atomic.*;
 /**
  * Remote job context implementation.
  */
-public class GridJobContextImpl extends GridMetadataAwareAdapter implements ComputeJobContext, Externalizable {
+public class GridJobContextImpl implements ComputeJobContext, Externalizable {
     /** */
     private static final long serialVersionUID = 0L;
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/kernal/GridJobSiblingImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/gridgain/grid/kernal/GridJobSiblingImpl.java b/modules/core/src/main/java/org/gridgain/grid/kernal/GridJobSiblingImpl.java
index c8efde8..19fec20 100644
--- a/modules/core/src/main/java/org/gridgain/grid/kernal/GridJobSiblingImpl.java
+++ b/modules/core/src/main/java/org/gridgain/grid/kernal/GridJobSiblingImpl.java
@@ -13,7 +13,6 @@ import org.apache.ignite.*;
 import org.apache.ignite.cluster.*;
 import org.apache.ignite.compute.*;
 import org.apache.ignite.lang.*;
-import org.gridgain.grid.util.lang.*;
 import org.gridgain.grid.util.typedef.internal.*;
 
 import java.io.*;
@@ -25,7 +24,7 @@ import static org.gridgain.grid.kernal.managers.communication.GridIoPolicy.*;
 /**
  * This class provides implementation for job sibling.
  */
-public class GridJobSiblingImpl extends GridMetadataAwareAdapter implements ComputeJobSibling, Externalizable {
+public class GridJobSiblingImpl implements ComputeJobSibling, Externalizable {
     /** */
     private static final long serialVersionUID = 0L;
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/kernal/GridKernalContext.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/gridgain/grid/kernal/GridKernalContext.java b/modules/core/src/main/java/org/gridgain/grid/kernal/GridKernalContext.java
index 7b161a4..85aa3c0 100644
--- a/modules/core/src/main/java/org/gridgain/grid/kernal/GridKernalContext.java
+++ b/modules/core/src/main/java/org/gridgain/grid/kernal/GridKernalContext.java
@@ -13,7 +13,6 @@ import org.apache.ignite.*;
 import org.apache.ignite.configuration.*;
 import org.apache.ignite.plugin.*;
 import org.apache.ignite.product.*;
-import org.gridgain.grid.*;
 import org.gridgain.grid.kernal.managers.security.*;
 import org.gridgain.grid.kernal.managers.checkpoint.*;
 import org.gridgain.grid.kernal.managers.collision.*;
@@ -63,7 +62,7 @@ import java.util.concurrent.*;
  *
  */
 @GridToStringExclude
-public interface GridKernalContext extends GridMetadataAware, Iterable {
+public interface GridKernalContext extends Iterable {
     /**
      * Gets list of all grid components in the order they were added.
      *

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/kernal/GridKernalContextImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/gridgain/grid/kernal/GridKernalContextImpl.java b/modules/core/src/main/java/org/gridgain/grid/kernal/GridKernalContextImpl.java
index b6f4ac8..1ac9f25 100644
--- a/modules/core/src/main/java/org/gridgain/grid/kernal/GridKernalContextImpl.java
+++ b/modules/core/src/main/java/org/gridgain/grid/kernal/GridKernalContextImpl.java
@@ -13,7 +13,6 @@ import org.apache.ignite.*;
 import org.apache.ignite.configuration.*;
 import org.apache.ignite.plugin.*;
 import org.apache.ignite.product.*;
-import org.gridgain.grid.*;
 import org.gridgain.grid.kernal.managers.checkpoint.*;
 import org.gridgain.grid.kernal.managers.collision.*;
 import org.gridgain.grid.kernal.managers.communication.*;
@@ -57,7 +56,6 @@ import org.gridgain.grid.kernal.processors.streamer.*;
 import org.gridgain.grid.kernal.processors.task.*;
 import org.gridgain.grid.kernal.processors.timeout.*;
 import org.gridgain.grid.util.direct.*;
-import org.gridgain.grid.util.lang.*;
 import org.gridgain.grid.util.tostring.*;
 import org.gridgain.grid.util.typedef.*;
 import org.gridgain.grid.util.typedef.internal.*;
@@ -75,7 +73,7 @@ import static org.gridgain.grid.kernal.GridKernalState.*;
  * Implementation of kernal context.
  */
 @GridToStringExclude
-public class GridKernalContextImpl extends GridMetadataAwareAdapter implements GridKernalContext, Externalizable {
+public class GridKernalContextImpl implements GridKernalContext, Externalizable {
     /** */
     private static final long serialVersionUID = 0L;
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/kernal/GridLoggerProxy.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/gridgain/grid/kernal/GridLoggerProxy.java b/modules/core/src/main/java/org/gridgain/grid/kernal/GridLoggerProxy.java
index 065488b..f9e8189 100644
--- a/modules/core/src/main/java/org/gridgain/grid/kernal/GridLoggerProxy.java
+++ b/modules/core/src/main/java/org/gridgain/grid/kernal/GridLoggerProxy.java
@@ -12,10 +12,8 @@ package org.gridgain.grid.kernal;
 import org.apache.ignite.*;
 import org.apache.ignite.lang.*;
 import org.apache.ignite.lifecycle.*;
-import org.gridgain.grid.*;
 import org.gridgain.grid.util.typedef.*;
 import org.gridgain.grid.util.typedef.internal.*;
-import org.gridgain.grid.util.lang.*;
 import org.gridgain.grid.util.tostring.*;
 import org.jetbrains.annotations.*;
 
@@ -27,8 +25,7 @@ import static org.apache.ignite.IgniteSystemProperties.*;
 /**
  *
  */
-public class GridLoggerProxy extends GridMetadataAwareAdapter implements IgniteLogger, LifecycleAware,
-    Externalizable {
+public class GridLoggerProxy implements IgniteLogger, LifecycleAware, Externalizable {
     /** */
     private static final long serialVersionUID = 0L;
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/kernal/executor/GridExecutorService.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/gridgain/grid/kernal/executor/GridExecutorService.java b/modules/core/src/main/java/org/gridgain/grid/kernal/executor/GridExecutorService.java
index 8be6cc1..1122121 100644
--- a/modules/core/src/main/java/org/gridgain/grid/kernal/executor/GridExecutorService.java
+++ b/modules/core/src/main/java/org/gridgain/grid/kernal/executor/GridExecutorService.java
@@ -12,10 +12,8 @@ package org.gridgain.grid.kernal.executor;
 import org.apache.ignite.*;
 import org.apache.ignite.compute.*;
 import org.apache.ignite.lang.*;
-import org.gridgain.grid.*;
 import org.gridgain.grid.kernal.*;
 import org.gridgain.grid.util.future.*;
-import org.gridgain.grid.util.lang.*;
 import org.gridgain.grid.util.typedef.*;
 import org.gridgain.grid.util.typedef.internal.*;
 
@@ -64,7 +62,7 @@ import java.util.concurrent.*;
  * }
  * 
*/ -public class GridExecutorService extends GridMetadataAwareAdapter implements ExecutorService, Externalizable { +public class GridExecutorService implements ExecutorService, Externalizable { /** */ private static final long serialVersionUID = 0L; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/kernal/managers/loadbalancer/GridLoadBalancerAdapter.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/kernal/managers/loadbalancer/GridLoadBalancerAdapter.java b/modules/core/src/main/java/org/gridgain/grid/kernal/managers/loadbalancer/GridLoadBalancerAdapter.java index 0b3b254..75d9331 100644 --- a/modules/core/src/main/java/org/gridgain/grid/kernal/managers/loadbalancer/GridLoadBalancerAdapter.java +++ b/modules/core/src/main/java/org/gridgain/grid/kernal/managers/loadbalancer/GridLoadBalancerAdapter.java @@ -10,15 +10,13 @@ package org.gridgain.grid.kernal.managers.loadbalancer; import org.apache.ignite.compute.*; -import org.gridgain.grid.util.lang.*; import java.io.*; /** * This adapter allows for graceful exception when load balancer gets marshalled. */ -public abstract class GridLoadBalancerAdapter extends GridMetadataAwareAdapter implements ComputeLoadBalancer, - Externalizable { +public abstract class GridLoadBalancerAdapter implements ComputeLoadBalancer, Externalizable { /** */ private static final long serialVersionUID = 0L; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheAdapter.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheAdapter.java b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheAdapter.java index bf40a85..66eb0ac 100644 --- a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheAdapter.java +++ b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheAdapter.java @@ -52,8 +52,6 @@ import static org.gridgain.grid.cache.GridCacheFlag.*; import static org.gridgain.grid.cache.GridCachePeekMode.*; import static org.gridgain.grid.cache.GridCacheTxConcurrency.*; import static org.gridgain.grid.cache.GridCacheTxIsolation.*; -import static org.gridgain.grid.cache.GridCacheTxState.*; -import static org.apache.ignite.events.IgniteEventType.*; import static org.gridgain.grid.kernal.GridClosureCallMode.*; import static org.gridgain.grid.kernal.processors.dr.GridDrType.*; import static org.gridgain.grid.kernal.processors.task.GridTaskThreadContextKey.*; @@ -62,7 +60,7 @@ import static org.gridgain.grid.kernal.processors.task.GridTaskThreadContextKey. * Adapter for different cache implementations. */ @SuppressWarnings("unchecked") -public abstract class GridCacheAdapter extends GridMetadataAwareAdapter implements GridCache, +public abstract class GridCacheAdapter implements GridCache, GridCacheProjectionEx, Externalizable { /** */ private static final long serialVersionUID = 0L; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEntryEx.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEntryEx.java b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEntryEx.java index e94016f..f6eb3c2 100644 --- a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEntryEx.java +++ b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEntryEx.java @@ -11,7 +11,6 @@ package org.gridgain.grid.kernal.processors.cache; import org.apache.ignite.*; import org.apache.ignite.lang.*; -import org.gridgain.grid.*; import org.gridgain.grid.cache.*; import org.gridgain.grid.kernal.processors.cache.distributed.*; import org.gridgain.grid.kernal.processors.dr.*; @@ -19,11 +18,12 @@ import org.gridgain.grid.util.lang.*; import org.jetbrains.annotations.*; import java.util.*; +import java.util.concurrent.*; /** * Internal API for cache entry ({@code 'Ex'} stands for extended). */ -public interface GridCacheEntryEx extends GridMetadataAware { +public interface GridCacheEntryEx { /** * @return Memory size. * @throws IgniteCheckedException If failed. @@ -884,4 +884,85 @@ public interface GridCacheEntryEx extends GridMetadataAware { * @throws IgniteCheckedException If failed. */ @Nullable public V unswap(boolean ignoreFlags, boolean needVal) throws IgniteCheckedException; + + /** + * Tests whether or not given metadata is set. + * + * @param name Name of the metadata to test. + * @return Whether or not given metadata is set. + */ + public boolean hasMeta(String name); + + /** + * Gets metadata by name. + * + * @param name Metadata name. + * @param Type of the value. + * @return Metadata value or {@code null}. + */ + @Nullable public V meta(String name); + + /** + * Adds a new metadata. + * + * @param name Metadata name. + * @param val Metadata value. + * @param Type of the value. + * @return Metadata previously associated with given name, or + * {@code null} if there was none. + */ + @Nullable public V addMeta(String name, V val); + + /** + * Adds given metadata value only if it was absent. + * + * @param name Metadata name. + * @param val Value to add if it's not attached already. + * @param Type of the value. + * @return {@code null} if new value was put, or current value if put didn't happen. + */ + @Nullable public V putMetaIfAbsent(String name, V val); + + /** + * Adds given metadata value only if it was absent. + * + * @param name Metadata name. + * @param c Factory closure to produce value to add if it's not attached already. + * Not that unlike {@link #addMeta(String, Object)} method the factory closure will + * not be called unless the value is required and therefore value will only be created + * when it is actually needed. + * @param Type of the value. + * @return {@code null} if new value was put, or current value if put didn't happen. + */ + @Nullable public V putMetaIfAbsent(String name, Callable c); + + /** + * Replaces given metadata with new {@code newVal} value only if its current value + * is equal to {@code curVal}. Otherwise, it is no-op. + * + * @param name Name of the metadata. + * @param curVal Current value to check. + * @param newVal New value. + * @return {@code true} if replacement occurred, {@code false} otherwise. + */ + public boolean replaceMeta(String name, V curVal, V newVal); + + /** + * Removes metadata by name. + * + * @param name Name of the metadata to remove. + * @param Type of the value. + * @return Value of removed metadata or {@code null}. + */ + @Nullable public V removeMeta(String name); + + /** + * Removes metadata only if its current value is equal to {@code val} passed in. + * + * @param name Name of metadata attribute. + * @param val Value to compare. + * @param Value type. + * @return {@code True} if value was removed, {@code false} otherwise. + */ + public boolean removeMeta(String name, V val); } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEntryImpl.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEntryImpl.java b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEntryImpl.java index 452e074..4184415 100644 --- a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEntryImpl.java +++ b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEntryImpl.java @@ -11,7 +11,6 @@ package org.gridgain.grid.kernal.processors.cache; import org.apache.ignite.*; import org.apache.ignite.lang.*; -import org.gridgain.grid.*; import org.gridgain.grid.cache.*; import org.gridgain.grid.kernal.processors.cache.distributed.dht.*; import org.gridgain.grid.util.lang.*; @@ -565,7 +564,7 @@ public class GridCacheEntryImpl implements GridCacheEntry, Externali /** {@inheritDoc} */ @SuppressWarnings({"unchecked"}) @Override public V1 meta(String name) { - GridCacheEntryEx e = unwrapForMeta(); + GridCacheEntryEx e = unwrapForMeta(); return e.meta(name); } @@ -573,30 +572,9 @@ public class GridCacheEntryImpl implements GridCacheEntry, Externali /** {@inheritDoc} */ @SuppressWarnings({"unchecked"}) @Override public V1 removeMeta(String name) { - GridCacheEntryEx e = unwrapForMeta(); - - return e.removeMeta(name); - } - - /** {@inheritDoc} */ - @Override public Map allMeta() { - GridCacheEntryEx e = unwrapForMeta(); - - return e.allMeta(); - } - - /** {@inheritDoc} */ - @Override public boolean hasMeta(String name) { - GridCacheEntryEx e = unwrapForMeta(); - - return e.hasMeta(name); - } - - /** {@inheritDoc} */ - @Override public boolean hasMeta(String name, Object val) { GridCacheEntryEx e = unwrapForMeta(); - return e.hasMeta(name, val); + return e.removeMeta(name); } /** {@inheritDoc} */ @@ -614,20 +592,6 @@ public class GridCacheEntryImpl implements GridCacheEntry, Externali } /** {@inheritDoc} */ - @Override public V1 addMetaIfAbsent(String name, V1 val) { - GridCacheEntryEx cached = unwrapForMeta(); - - return cached.addMetaIfAbsent(name, val); - } - - /** {@inheritDoc} */ - @Override public V1 addMetaIfAbsent(String name, Callable c) { - GridCacheEntryEx cached = unwrapForMeta(); - - return cached.addMetaIfAbsent(name, c); - } - - /** {@inheritDoc} */ @Override public boolean replaceMeta(String name, V1 curVal, V1 newVal) { GridCacheEntryEx cached = unwrapForMeta(); @@ -635,20 +599,6 @@ public class GridCacheEntryImpl implements GridCacheEntry, Externali } /** {@inheritDoc} */ - @Override public void copyMeta(GridMetadataAware from) { - GridCacheEntryEx cached = unwrapForMeta(); - - cached.copyMeta(from); - } - - /** {@inheritDoc} */ - @Override public void copyMeta(Map data) { - GridCacheEntryEx cached = unwrapForMeta(); - - cached.copyMeta(data); - } - - /** {@inheritDoc} */ @Override public boolean removeMeta(String name, V1 val) { GridCacheEntryEx e = unwrapForMeta(); http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEvictionEntry.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEvictionEntry.java b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEvictionEntry.java index b15b958..df673bd 100644 --- a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEvictionEntry.java +++ b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEvictionEntry.java @@ -11,7 +11,6 @@ package org.gridgain.grid.kernal.processors.cache; import org.apache.ignite.*; import org.apache.ignite.lang.*; -import org.gridgain.grid.*; import org.gridgain.grid.cache.*; import org.gridgain.grid.util.typedef.*; import org.gridgain.grid.util.typedef.internal.*; @@ -383,21 +382,6 @@ public class GridCacheEvictionEntry implements GridCacheEntry, Exter } /** {@inheritDoc} */ - @Override public Map allMeta() { - return cached.allMeta(); - } - - /** {@inheritDoc} */ - @Override public boolean hasMeta(String name) { - return cached.hasMeta(name); - } - - /** {@inheritDoc} */ - @Override public boolean hasMeta(String name, Object val) { - return cached.hasMeta(name, val); - } - - /** {@inheritDoc} */ @Override public V putMetaIfAbsent(String name, V val) { return cached.putMetaIfAbsent(name, val); } @@ -408,31 +392,11 @@ public class GridCacheEvictionEntry implements GridCacheEntry, Exter } /** {@inheritDoc} */ - @Override public V addMetaIfAbsent(String name, V val) { - return cached.addMetaIfAbsent(name, val); - } - - /** {@inheritDoc} */ - @Override public V addMetaIfAbsent(String name, Callable c) { - return cached.addMetaIfAbsent(name, c); - } - - /** {@inheritDoc} */ @Override public boolean replaceMeta(String name, V curVal, V newVal) { return cached.replaceMeta(name, curVal, newVal); } /** {@inheritDoc} */ - @Override public void copyMeta(GridMetadataAware from) { - cached.copyMeta(from); - } - - /** {@inheritDoc} */ - @Override public void copyMeta(Map data) { - cached.copyMeta(data); - } - - /** {@inheritDoc} */ @Override public boolean removeMeta(String name, V val) { return cached.removeMeta(name, val); } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheFilterEvaluationEntry.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheFilterEvaluationEntry.java b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheFilterEvaluationEntry.java index 6862a5e..52cf8f8 100644 --- a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheFilterEvaluationEntry.java +++ b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheFilterEvaluationEntry.java @@ -11,7 +11,6 @@ package org.gridgain.grid.kernal.processors.cache; import org.apache.ignite.*; import org.apache.ignite.lang.*; -import org.gridgain.grid.*; import org.gridgain.grid.cache.*; import org.gridgain.grid.util.typedef.internal.*; import org.jetbrains.annotations.*; @@ -353,16 +352,6 @@ public class GridCacheFilterEvaluationEntry implements GridCacheEntry data) { - impl.copyMeta(data); - } - - /** {@inheritDoc} */ @Nullable @Override public V addMeta(String name, V val) { return impl.addMeta(name, val); } @@ -378,16 +367,6 @@ public class GridCacheFilterEvaluationEntry implements GridCacheEntry V addMetaIfAbsent(String name, V val) { - return impl.addMetaIfAbsent(name, val); - } - - /** {@inheritDoc} */ - @Nullable @Override public V addMetaIfAbsent(String name, @Nullable Callable c) { - return impl.addMetaIfAbsent(name, c); - } - - /** {@inheritDoc} */ @Override public V meta(String name) { return impl.meta(name); } @@ -403,21 +382,6 @@ public class GridCacheFilterEvaluationEntry implements GridCacheEntry Map allMeta() { - return impl.allMeta(); - } - - /** {@inheritDoc} */ - @Override public boolean hasMeta(String name) { - return impl.hasMeta(name); - } - - /** {@inheritDoc} */ - @Override public boolean hasMeta(String name, V val) { - return impl.hasMeta(name, val); - } - - /** {@inheritDoc} */ @Override public boolean replaceMeta(String name, V curVal, V newVal) { return impl.replaceMeta(name, curVal, newVal); } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheLogger.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheLogger.java b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheLogger.java index 7cc4593..a33e7dd 100644 --- a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheLogger.java +++ b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheLogger.java @@ -13,7 +13,6 @@ import org.apache.ignite.*; import org.apache.ignite.lang.*; import org.gridgain.grid.util.typedef.*; import org.gridgain.grid.util.typedef.internal.*; -import org.gridgain.grid.util.lang.*; import org.gridgain.grid.util.tostring.*; import org.jetbrains.annotations.*; @@ -23,7 +22,7 @@ import java.io.*; * Logger which automatically attaches {@code [cacheName]} to every log statement. */ @GridToStringExclude -class GridCacheLogger extends GridMetadataAwareAdapter implements IgniteLogger, Externalizable { +class GridCacheLogger implements IgniteLogger, Externalizable { /** */ private static final long serialVersionUID = 0L; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheMapEntry.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheMapEntry.java b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheMapEntry.java index 32c1485..064ee86 100644 --- a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheMapEntry.java +++ b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheMapEntry.java @@ -11,7 +11,6 @@ package org.gridgain.grid.kernal.processors.cache; import org.apache.ignite.*; import org.apache.ignite.lang.*; -import org.gridgain.grid.*; import org.gridgain.grid.cache.*; import org.gridgain.grid.kernal.managers.deployment.*; import org.gridgain.grid.kernal.processors.cache.distributed.dht.*; @@ -3662,30 +3661,6 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx } /** {@inheritDoc} */ - @Override public void copyMeta(GridMetadataAware from) { - A.notNull(from, "from"); - - synchronized (this) { - Map m = from.allMeta(); - - ensureData(m.size()); - - attributeDataExtras().putAll(from.allMeta()); - } - } - - /** {@inheritDoc} */ - @Override public void copyMeta(Map attrData) { - A.notNull(attrData, "data"); - - synchronized (this) { - ensureData(attrData.size()); - - attributeDataExtras().putAll(attrData); - } - } - - /** {@inheritDoc} */ @SuppressWarnings({"unchecked"}) @Nullable @Override public V1 addMeta(String name, V1 val) { A.notNull(name, "name", val, "val"); @@ -3711,8 +3686,7 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx /** {@inheritDoc} */ @SuppressWarnings({"unchecked"}) - @Nullable - @Override public V1 removeMeta(String name) { + @Nullable @Override public V1 removeMeta(String name) { A.notNull(name, "name"); synchronized (this) { @@ -3757,36 +3731,11 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx } /** {@inheritDoc} */ - @SuppressWarnings( {"unchecked", "RedundantCast"}) - @Override public synchronized Map allMeta() { - GridLeanMap attrData = attributeDataExtras(); - - if (attrData == null) - return Collections.emptyMap(); - - if (attrData.size() <= 5) - // This is a singleton unmodifiable map. - return (Map)attrData; - - // Return a copy. - return new HashMap<>((Map)attrData); - } - - /** {@inheritDoc} */ @Override public boolean hasMeta(String name) { return meta(name) != null; } /** {@inheritDoc} */ - @Override public boolean hasMeta(String name, V1 val) { - A.notNull(name, "name"); - - Object v = meta(name); - - return v != null && v.equals(val); - } - - /** {@inheritDoc} */ @SuppressWarnings({"unchecked"}) @Nullable @Override public V1 putMetaIfAbsent(String name, V1 val) { A.notNull(name, "name", val, "val"); @@ -3822,41 +3771,6 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx } /** {@inheritDoc} */ - @SuppressWarnings({"unchecked"}) - @Override public V1 addMetaIfAbsent(String name, V1 val) { - A.notNull(name, "name", val, "val"); - - synchronized (this) { - V1 v = meta(name); - - if (v == null) - addMeta(name, v = val); - - return v; - } - } - - /** {@inheritDoc} */ - @SuppressWarnings({"unchecked"}) - @Nullable @Override public V1 addMetaIfAbsent(String name, @Nullable Callable c) { - A.notNull(name, "name", c, "c"); - - synchronized (this) { - V1 v = meta(name); - - if (v == null && c != null) - try { - addMeta(name, v = c.call()); - } - catch (Exception e) { - throw F.wrap(e); - } - - return v; - } - } - - /** {@inheritDoc} */ @SuppressWarnings({"RedundantTypeArguments"}) @Override public boolean replaceMeta(String name, V1 curVal, V1 newVal) { A.notNull(name, "name", newVal, "newVal", curVal, "curVal"); http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheTxProxyImpl.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheTxProxyImpl.java b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheTxProxyImpl.java index 4e61db6..0c2ec00 100644 --- a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheTxProxyImpl.java +++ b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheTxProxyImpl.java @@ -11,15 +11,12 @@ package org.gridgain.grid.kernal.processors.cache; import org.apache.ignite.*; import org.apache.ignite.lang.*; -import org.gridgain.grid.*; import org.gridgain.grid.cache.*; import org.gridgain.grid.util.tostring.*; import org.gridgain.grid.util.typedef.internal.*; -import org.jetbrains.annotations.*; import java.io.*; import java.util.*; -import java.util.concurrent.*; /** * Cache transaction proxy. @@ -213,43 +210,12 @@ public class GridCacheTxProxyImpl implements GridCacheTxProxy, Externaliza leave(); } } - - /** {@inheritDoc} */ - @Override public void copyMeta(GridMetadataAware from) { - tx.copyMeta(from); - } - - /** {@inheritDoc} */ - @Override public void copyMeta(Map data) { - tx.copyMeta(data); - } - /** {@inheritDoc} */ @Override public V1 addMeta(String name, V1 val) { return tx.addMeta(name, val); } /** {@inheritDoc} */ - @Override public V1 putMetaIfAbsent(String name, V1 val) { - return tx.putMetaIfAbsent(name, val); - } - - /** {@inheritDoc} */ - @Override public V1 putMetaIfAbsent(String name, Callable c) { - return tx.putMetaIfAbsent(name, c); - } - - /** {@inheritDoc} */ - @Nullable @Override public V1 addMetaIfAbsent(String name, V1 val) { - return tx.addMeta(name, val); - } - - /** {@inheritDoc} */ - @Override public V1 addMetaIfAbsent(String name, @Nullable Callable c) { - return tx.addMetaIfAbsent(name, c); - } - - /** {@inheritDoc} */ @SuppressWarnings({"RedundantTypeArguments"}) @Override public V1 meta(String name) { return tx.meta(name); @@ -262,31 +228,6 @@ public class GridCacheTxProxyImpl implements GridCacheTxProxy, Externaliza } /** {@inheritDoc} */ - @Override public boolean removeMeta(String name, V1 val) { - return tx.removeMeta(name, val); - } - - /** {@inheritDoc} */ - @Override public Map allMeta() { - return tx.allMeta(); - } - - /** {@inheritDoc} */ - @Override public boolean hasMeta(String name) { - return tx.hasMeta(name); - } - - /** {@inheritDoc} */ - @Override public boolean hasMeta(String name, V1 val) { - return tx.hasMeta(name, val); - } - - /** {@inheritDoc} */ - @Override public boolean replaceMeta(String name, V1 curVal, V1 newVal) { - return tx.replaceMeta(name, curVal, newVal); - } - - /** {@inheritDoc} */ @Override public void writeExternal(ObjectOutput out) throws IOException { out.writeObject(tx); } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/distributed/GridPartitionedCacheEntryImpl.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/distributed/GridPartitionedCacheEntryImpl.java b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/distributed/GridPartitionedCacheEntryImpl.java index 7810847..2b138cb 100644 --- a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/distributed/GridPartitionedCacheEntryImpl.java +++ b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/distributed/GridPartitionedCacheEntryImpl.java @@ -11,7 +11,6 @@ package org.gridgain.grid.kernal.processors.cache.distributed; import org.apache.ignite.*; import org.apache.ignite.lang.*; -import org.gridgain.grid.*; import org.gridgain.grid.cache.*; import org.gridgain.grid.kernal.processors.cache.*; import org.gridgain.grid.kernal.processors.cache.distributed.dht.*; @@ -276,120 +275,6 @@ public class GridPartitionedCacheEntryImpl extends GridCacheEntryImpl V1 addMetaIfAbsent(String name, Callable c) { - V1 v = null; - - GridDhtCacheEntry de = dht().peekExx(key); - - if (de != null) - v = de.addMetaIfAbsent(name, c); - - if (ctx.isNear()) { - GridNearCacheEntry ne = de != null ? near().peekExx(key) : - near().entryExx(key, ctx.affinity().affinityTopologyVersion()); - - if (ne != null) { - V1 v1 = ne.addMetaIfAbsent(name, c); - - if (v == null) - v = v1; - } - } - - return v; - } - - /** {@inheritDoc} */ - @Override public V1 addMetaIfAbsent(String name, V1 val) { - V1 v = null; - - GridDhtCacheEntry de = dht().peekExx(key); - - if (de != null) - v = de.addMetaIfAbsent(name, val); - - if (ctx.isNear()) { - GridNearCacheEntry ne = de != null ? near().peekExx(key) : - near().entryExx(key, ctx.affinity().affinityTopologyVersion()); - - if (ne != null) { - V1 v1 = ne.addMetaIfAbsent(name, val); - - if (v == null) - v = v1; - } - } - - return v; - } - - /** {@inheritDoc} */ - @Override public Map allMeta() { - Map m = null; - - GridDhtCacheEntry de = dht().peekExx(key); - - if (de != null) - m = de.allMeta(); - - if (ctx.isNear()) { - GridNearCacheEntry ne = near().peekExx(key); - - if (ne != null) { - Map m1 = ne.allMeta(); - - if (m == null) - m = m1; - else if (!m1.isEmpty()) { - for (Map.Entry e1 : m1.entrySet()) - if (!m.containsKey(e1.getKey())) // Give preference to DHT. - m.put(e1.getKey(), e1.getValue()); - } - } - } - - return m; - } - - /** {@inheritDoc} */ - @Override public boolean hasMeta(String name) { - boolean b = false; - - GridDhtCacheEntry de = dht().peekExx(key); - - if (de != null) - b = de.hasMeta(name); - - if (ctx.isNear()) { - GridNearCacheEntry ne = near().peekExx(key); - - if (ne != null) - b |= ne.hasMeta(name); - } - - return b; - } - - /** {@inheritDoc} */ - @Override public boolean hasMeta(String name, Object val) { - boolean b = false; - - GridDhtCacheEntry de = dht().peekExx(key); - - if (de != null) - b = de.hasMeta(name, val); - - if (ctx.isNear()) { - GridNearCacheEntry ne = near().peekExx(key); - - if (ne != null) - b |= ne.hasMeta(name, val); - } - - return b; - } - - /** {@inheritDoc} */ @SuppressWarnings( {"RedundantCast"}) @Override public V1 meta(String name) { V1 v = null; @@ -524,38 +409,6 @@ public class GridPartitionedCacheEntryImpl extends GridCacheEntryImpl data) { - GridDhtCacheEntry de = dht().peekExx(key); - - if (de != null) - de.copyMeta(data); - - if (ctx.isNear()) { - GridNearCacheEntry ne = de != null ? near().peekExx(key) : - near().entryExx(key, ctx.affinity().affinityTopologyVersion()); - - if (ne != null) - ne.copyMeta(data); - } - } - - /** {@inheritDoc} */ - @Override public void copyMeta(GridMetadataAware from) { - GridDhtCacheEntry de = dht().peekExx(key); - - if (de != null) - de.copyMeta(from); - - if (ctx.isNear()) { - GridNearCacheEntry ne = de != null ? near().peekExx(key) : - near().entryExx(key, ctx.affinity().affinityTopologyVersion()); - - if (ne != null) - ne.copyMeta(from); - } - } - - /** {@inheritDoc} */ @Override public String toString() { return S.toString(GridPartitionedCacheEntryImpl.class, this, super.toString()); } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/query/GridCacheQueryManager.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/query/GridCacheQueryManager.java b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/query/GridCacheQueryManager.java index 25c0668..854a65f 100644 --- a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/query/GridCacheQueryManager.java +++ b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/query/GridCacheQueryManager.java @@ -16,7 +16,6 @@ import org.apache.ignite.lang.*; import org.apache.ignite.resources.*; import org.apache.ignite.spi.*; import org.apache.ignite.spi.indexing.*; -import org.gridgain.grid.*; import org.gridgain.grid.cache.*; import org.gridgain.grid.cache.query.*; import org.gridgain.grid.kernal.*; @@ -2804,17 +2803,6 @@ public abstract class GridCacheQueryManager extends GridCacheManagerAdapte } /** {@inheritDoc} */ - @Override public void copyMeta(GridMetadataAware from) { - throw new UnsupportedOperationException(); - } - - /** {@inheritDoc} */ - @Override public void copyMeta(Map data) { - throw new UnsupportedOperationException(); - - } - - /** {@inheritDoc} */ @Nullable @Override public V addMeta(String name, V val) { throw new UnsupportedOperationException(); } @@ -2830,16 +2818,6 @@ public abstract class GridCacheQueryManager extends GridCacheManagerAdapte } /** {@inheritDoc} */ - @Override public V addMetaIfAbsent(String name, V val) { - throw new UnsupportedOperationException(); - } - - /** {@inheritDoc} */ - @Nullable @Override public V addMetaIfAbsent(String name, @Nullable Callable c) { - throw new UnsupportedOperationException(); - } - - /** {@inheritDoc} */ @Override public V meta(String name) { return null; } @@ -2855,21 +2833,6 @@ public abstract class GridCacheQueryManager extends GridCacheManagerAdapte } /** {@inheritDoc} */ - @Override public Map allMeta() { - return null; - } - - /** {@inheritDoc} */ - @Override public boolean hasMeta(String name) { - return false; - } - - /** {@inheritDoc} */ - @Override public boolean hasMeta(String name, V val) { - return false; - } - - /** {@inheritDoc} */ @Override public boolean replaceMeta(String name, V curVal, V newVal) { throw new UnsupportedOperationException(); } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/query/continuous/GridCacheContinuousQueryEntry.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/query/continuous/GridCacheContinuousQueryEntry.java b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/query/continuous/GridCacheContinuousQueryEntry.java index 75453ee..a0ae428 100644 --- a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/query/continuous/GridCacheContinuousQueryEntry.java +++ b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/query/continuous/GridCacheContinuousQueryEntry.java @@ -12,7 +12,6 @@ package org.gridgain.grid.kernal.processors.cache.query.continuous; import org.apache.ignite.*; import org.apache.ignite.lang.*; import org.apache.ignite.marshaller.*; -import org.gridgain.grid.*; import org.gridgain.grid.cache.*; import org.gridgain.grid.kernal.managers.deployment.*; import org.gridgain.grid.kernal.processors.cache.*; @@ -582,20 +581,6 @@ public class GridCacheContinuousQueryEntry implements GridCacheEntry } /** {@inheritDoc} */ - @Override public void copyMeta(GridMetadataAware from) { - assert impl != null; - - impl.copyMeta(from); - } - - /** {@inheritDoc} */ - @Override public void copyMeta(Map data) { - assert impl != null; - - impl.copyMeta(data); - } - - /** {@inheritDoc} */ @Nullable @Override public V addMeta(String name, V val) { assert impl != null; @@ -617,20 +602,6 @@ public class GridCacheContinuousQueryEntry implements GridCacheEntry } /** {@inheritDoc} */ - @Override public V addMetaIfAbsent(String name, V val) { - assert impl != null; - - return impl.addMetaIfAbsent(name, val); - } - - /** {@inheritDoc} */ - @Nullable @Override public V addMetaIfAbsent(String name, @Nullable Callable c) { - assert impl != null; - - return impl.addMetaIfAbsent(name, c); - } - - /** {@inheritDoc} */ @Override public V meta(String name) { assert impl != null; @@ -652,27 +623,6 @@ public class GridCacheContinuousQueryEntry implements GridCacheEntry } /** {@inheritDoc} */ - @Override public Map allMeta() { - assert impl != null; - - return impl.allMeta(); - } - - /** {@inheritDoc} */ - @Override public boolean hasMeta(String name) { - assert impl != null; - - return impl.hasMeta(name); - } - - /** {@inheritDoc} */ - @Override public boolean hasMeta(String name, V val) { - assert impl != null; - - return impl.hasMeta(name, val); - } - - /** {@inheritDoc} */ @Override public boolean replaceMeta(String name, V curVal, V newVal) { assert impl != null; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/util/GridUtils.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/util/GridUtils.java b/modules/core/src/main/java/org/gridgain/grid/util/GridUtils.java index 803badd..72910a4 100644 --- a/modules/core/src/main/java/org/gridgain/grid/util/GridUtils.java +++ b/modules/core/src/main/java/org/gridgain/grid/util/GridUtils.java @@ -1757,25 +1757,6 @@ public abstract class GridUtils { } /** - * Copies metadata from given object into the passed in metadata aware - * instance - if object is not {@code null} and implements {@link GridMetadataAware}. - * Otherwise - returns passed metadata aware instance unchanged. - * - * @param t Passed in metadata aware instance. - * @param obj Object to copy metadata from. - * @param Type of the metadata aware instance. - * @return Metadata aware instance with metadata potentially copied. - */ - public static T withMeta(T t, @Nullable Object obj) { - assert t != null; - - if (obj instanceof GridMetadataAware) - t.copyMeta((GridMetadataAware)obj); - - return t; - } - - /** * Replace password in URI string with a single '*' character. *

* Parses given URI by applying ".*://(.*:.*)@.*" http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/util/lang/GridComputeJobWrapper.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/util/lang/GridComputeJobWrapper.java b/modules/core/src/main/java/org/gridgain/grid/util/lang/GridComputeJobWrapper.java index 3fe0590..7cf70bb 100644 --- a/modules/core/src/main/java/org/gridgain/grid/util/lang/GridComputeJobWrapper.java +++ b/modules/core/src/main/java/org/gridgain/grid/util/lang/GridComputeJobWrapper.java @@ -11,7 +11,6 @@ package org.gridgain.grid.util.lang; import org.apache.ignite.*; import org.apache.ignite.compute.*; -import org.gridgain.grid.*; import org.gridgain.grid.util.typedef.internal.*; import org.jetbrains.annotations.*; @@ -21,7 +20,7 @@ import java.util.concurrent.*; * Convenient wrapper for grid job. It allows to create a job clone in cases when the same * job needs to be cloned to multiple grid nodes during mapping phase of task execution. */ -public class GridComputeJobWrapper extends GridMetadataAwareAdapter implements ComputeJob, Callable, +public class GridComputeJobWrapper implements ComputeJob, Callable, GridPeerDeployAware { /** */ private static final long serialVersionUID = 0L; @@ -33,21 +32,14 @@ public class GridComputeJobWrapper extends GridMetadataAwareAdapter implements C private transient volatile GridPeerDeployAware p; /** - * Creates a wrapper with given grid {@code job}. If {@code job} implements {@link GridMetadataAware} - * interface and {@code copyMeta} is {@code true} - the metadata information will be - * copied from given {@code job} to this wrapper. + * Creates a wrapper with given grid {@code job}. * * @param job Job to wrap. - * @param cpMeta Whether or not to copy metadata in case when {@code job} - * implements {@link GridMetadataAware} interface. */ - public GridComputeJobWrapper(ComputeJob job, boolean cpMeta) { + public GridComputeJobWrapper(ComputeJob job) { A.notNull(job, "job"); this.job = job; - - if (cpMeta && job instanceof GridMetadataAware) - copyMeta((GridMetadataAware)job); } /** http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1bbd19c9/modules/core/src/main/java/org/gridgain/grid/util/lang/GridFunc.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/gridgain/grid/util/lang/GridFunc.java b/modules/core/src/main/java/org/gridgain/grid/util/lang/GridFunc.java index 3b31ecf..fe80998 100644 --- a/modules/core/src/main/java/org/gridgain/grid/util/lang/GridFunc.java +++ b/modules/core/src/main/java/org/gridgain/grid/util/lang/GridFunc.java @@ -1616,29 +1616,6 @@ public class GridFunc { } /** - * Convenient utility method that returns collections of metadata values for a given - * collection of metadata aware objects. - *

- * Note that this method doesn't create a new collection but simply iterates over the input one. - * - * @param objs Collection of metadata aware object. - * @param name Name of the metadata. - * @param Type of the metadata. - * @return Collections of metadata value for a given collection of metadata aware objects. - */ - public static Collection meta(Collection objs, String name) { - A.notNull(objs, "objs", name, "attach"); - - Collection c = new ArrayList<>(objs.size()); - - for (GridMetadataAware n : objs) { - c.add(n.meta(name)); - } - - return c; - } - - /** * Gets closure that calls {@code System.out.println()} on its bound variable. * * @param Type of the bound variable. @@ -5672,129 +5649,6 @@ public class GridFunc { } /** - * Creates predicate that accepts subclass of {@link GridMetadataAware} - * interface and evaluates to {@code true} if it contains all provided metadata. - * - * @param meta Collection of metadata. - * @param Type of returned predicate. - * @return Predicate that accepts subclass of {@link GridMetadataAware} interface and - * evaluates to {@code true} if it contains all provided metadata. - * @see #meta(String...) - * @see #meta(Iterable) - * @see #meta(String, Object) - */ - public static IgnitePredicate metaEntry(@Nullable Map.Entry... meta) { - return metaEntry(isEmpty(meta) ? Collections.>emptyList() : asList(meta)); - } - - /** - * Creates predicate that accepts subclass of {@link GridMetadataAware} interface - * and evaluates to {@code true} if it contains all provided metadata. - * - * @param meta Collection of metadata. - * @param Type of returned predicate. - * @return Predicate that accepts subclass of {@link GridMetadataAware} interface and - * evaluates to {@code true} if it contains all provided metadata. - * @see #meta(String...) - * @see #meta(Iterable) - * @see #meta(String, Object) - */ - public static IgnitePredicate metaEntry( - @Nullable final Collection> meta) { - return isEmpty(meta) ? GridFunc.alwaysFalse() : new P1() { - @Override public boolean apply(T e) { - assert meta != null; - - for (Map.Entry t : meta) { - if (!F.eq(e.meta(t.getKey()), t.getValue())) - return false; - } - - return true; - } - }; - } - - /** - * Creates predicate that accepts subclass of {@link GridMetadataAware} interface - * and evaluates to {@code true} if it contains all provided metadata. - * - * @param meta Collection of metadata as a map. - * @param Type of returned predicate. - * @return Predicate that accepts subclass of {@link GridMetadataAware} - * interface and evaluates to {@code true} if it contains all provided metadata. - * @see #meta(String...) - * @see #meta(Iterable) - * @see #meta(String, Object) - * @see #metaEntry(Entry[]) - * @see #metaEntry(Collection) - */ - public static IgnitePredicate meta(@Nullable Map meta) { - if (isEmpty(meta)) - return metaEntry(Collections.>emptySet()); - else { - assert meta != null; - - return metaEntry(meta.entrySet()); - } - } - - /** - * Creates predicate that accepts subclass of {@link GridMetadataAware} interface - * and evaluates to {@code true} if it contains given metadata. - * - * @param name Metadata name. - * @param val Metadata value. - * @param Type of returned predicate. - * @return Predicate that accepts subclass of {@link GridMetadataAware} interface - * and evaluates to {@code true} if it contains given metadata. - * @see #metaEntry(Entry[]) - * @see #meta(String...) - * @see #meta(Iterable) - */ - public static IgnitePredicate meta(String name, Object val) { - A.notNull(name, "name", val, "val"); - - return metaEntry(F.t(name, val)); - } - - /** - * Creates predicate that accepts subclass of {@link GridMetadataAware} interface - * and evaluates to {@code true} if it contains given metadata names (values are ignored). - * - * @param names Metadata names to evaluate by. - * @param Type of returned predicate. - * @return Predicate that accepts subclass of {@link GridMetadataAware} interface and - * evaluates to {@code true} if it contains given metadata names (values are ignored). - */ - public static IgnitePredicate meta(@Nullable String... names) { - return meta(isEmpty(names) ? Collections.emptyList() : asList(names)); - } - - /** - * Creates predicate that accepts subclass of {@link GridMetadataAware} interface and - * evaluates to {@code true} if it contains given metadata names (values are ignored). - * - * @param names Metadata names to evaluate by. - * @param Type of returned predicate. - * @return Predicate that accepts subclass of {@link GridMetadataAware} interface and - * evaluates to {@code true} if it contains given metadata names (values are ignored). - */ - public static IgnitePredicate meta(@Nullable final Iterable names) { - return isEmpty(names) ? GridFunc.alwaysFalse() : new P1() { - @Override public boolean apply(T e) { - assert names != null; - - for (String name : names) - if (!e.hasMeta(name)) - return false; - - return true; - } - }; - } - - /** * Adds (copies) to given collection all elements in 'from' array. * * @param to Collection to copy to.