# IGNITE-593 WIP.

Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/b6c605c1
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/b6c605c1
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/b6c605c1

Branch: refs/heads/ignite-639
Commit: b6c605c118b511f4191fd70825013c842a1d3a8c
Parents: 903bbdd
Author: AKuznetsov <akuznet...@gridgain.com>
Authored: Mon Apr 6 17:39:16 2015 +0700
Committer: AKuznetsov <akuznet...@gridgain.com>
Committed: Mon Apr 6 17:39:16 2015 +0700

----------------------------------------------------------------------
 .../VisorCacheConfigurationCollectorJob.java    |  8 +++--
 .../VisorCacheConfigurationCollectorTask.java   | 26 ++------------
 .../visor/node/VisorGridConfiguration.java      | 38 --------------------
 .../commands/cache/VisorCacheCommand.scala      | 25 +++++++------
 4 files changed, 22 insertions(+), 75 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/b6c605c1/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCacheConfigurationCollectorJob.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCacheConfigurationCollectorJob.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCacheConfigurationCollectorJob.java
index aee75f6..ef12424 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCacheConfigurationCollectorJob.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCacheConfigurationCollectorJob.java
@@ -28,8 +28,8 @@ import java.util.*;
 /**
  * Job that collect cache metrics from node.
  */
-public class VisorCacheConfigurationCollectorJob extends 
VisorJob<Collection<IgniteUuid>,
-    Map<IgniteUuid, VisorCacheConfiguration>> {
+public class VisorCacheConfigurationCollectorJob
+    extends VisorJob<Collection<IgniteUuid>, Map<IgniteUuid, 
VisorCacheConfiguration>> {
     /** */
     private static final long serialVersionUID = 0L;
 
@@ -47,12 +47,14 @@ public class VisorCacheConfigurationCollectorJob extends 
VisorJob<Collection<Ign
     @Override protected Map<IgniteUuid, VisorCacheConfiguration> 
run(Collection<IgniteUuid> arg) {
         Collection<GridCacheAdapter<?, ?>> caches = 
ignite.context().cache().internalCaches();
 
+        boolean all = arg == null || arg.isEmpty();
+
         Map<IgniteUuid, VisorCacheConfiguration> res = 
U.newHashMap(caches.size());
 
         for (GridCacheAdapter<?, ?> cache : caches) {
             IgniteUuid deploymentId = cache.context().dynamicDeploymentId();
 
-            if (arg.contains(deploymentId))
+            if (all || arg.contains(deploymentId))
                 res.put(deploymentId, config(cache.configuration()));
         }
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/b6c605c1/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCacheConfigurationCollectorTask.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCacheConfigurationCollectorTask.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCacheConfigurationCollectorTask.java
index 9552c86..53d1105 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCacheConfigurationCollectorTask.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCacheConfigurationCollectorTask.java
@@ -17,13 +17,9 @@
 
 package org.apache.ignite.internal.visor.cache;
 
-import org.apache.ignite.*;
-import org.apache.ignite.compute.*;
 import org.apache.ignite.internal.processors.task.*;
-import org.apache.ignite.internal.util.typedef.internal.*;
 import org.apache.ignite.internal.visor.*;
 import org.apache.ignite.lang.*;
-import org.jetbrains.annotations.*;
 
 import java.util.*;
 
@@ -31,8 +27,8 @@ import java.util.*;
  * Task that collect cache metrics from all nodes.
  */
 @GridInternal
-public class VisorCacheConfigurationCollectorTask extends 
VisorMultiNodeTask<Collection<IgniteUuid>,
-    Map<UUID, Map<IgniteUuid, VisorCacheConfiguration>>, Map<IgniteUuid, 
VisorCacheConfiguration>> {
+public class VisorCacheConfigurationCollectorTask
+    extends VisorOneNodeTask<Collection<IgniteUuid>, 
Collection<VisorCacheConfiguration>> {
     /** */
     private static final long serialVersionUID = 0L;
 
@@ -40,22 +36,4 @@ public class VisorCacheConfigurationCollectorTask extends 
VisorMultiNodeTask<Col
     @Override protected VisorCacheConfigurationCollectorJob 
job(Collection<IgniteUuid> arg) {
         return new VisorCacheConfigurationCollectorJob(arg, debug);
     }
-
-    /** {@inheritDoc} */
-    @Nullable @Override protected Map<UUID, Map<IgniteUuid, 
VisorCacheConfiguration>> reduce0(
-        List<ComputeJobResult> results)
-        throws IgniteException {
-        Map<UUID, Map<IgniteUuid, VisorCacheConfiguration>> taskRes = 
U.newHashMap(results.size());
-
-        for (ComputeJobResult jobRes : results) {
-            if (jobRes.getException() != null)
-                throw jobRes.getException();
-
-            Map<IgniteUuid, VisorCacheConfiguration> ccfgs = jobRes.getData();
-
-            taskRes.put(jobRes.getNode().id(), ccfgs);
-        }
-
-        return taskRes;
-    }
 }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/b6c605c1/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorGridConfiguration.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorGridConfiguration.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorGridConfiguration.java
index 6548d07..002596b 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorGridConfiguration.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorGridConfiguration.java
@@ -21,7 +21,6 @@ import org.apache.ignite.*;
 import org.apache.ignite.configuration.*;
 import org.apache.ignite.internal.*;
 import org.apache.ignite.internal.util.typedef.internal.*;
-import org.apache.ignite.internal.visor.cache.*;
 
 import java.io.*;
 import java.util.*;
@@ -68,9 +67,6 @@ public class VisorGridConfiguration implements Serializable {
     /** User attributes. */
     private Map<String, ?> userAttrs;
 
-    /** Caches. */
-    private Iterable<VisorCacheConfiguration> caches;
-
     /** Igfss. */
     private Iterable<VisorIgfsConfiguration> igfss;
 
@@ -106,7 +102,6 @@ public class VisorGridConfiguration implements Serializable 
{
         inclEvtTypes = c.getIncludeEventTypes();
         rest = VisorRestConfiguration.from(c);
         userAttrs = c.getUserAttributes();
-        caches = collectCaches(ignite, c.getCacheConfiguration());
         igfss = VisorIgfsConfiguration.list(c.getFileSystemConfiguration());
         env = new HashMap<>(System.getenv());
         sysProps = IgniteSystemProperties.snapshot();
@@ -194,39 +189,6 @@ public class VisorGridConfiguration implements 
Serializable {
     }
 
     /**
-     * @return List of data transfer objects for caches.
-     */
-    private Iterable<VisorCacheConfiguration> collectCaches(IgniteEx ignite, 
CacheConfiguration[] ccfgs) {
-        if (ccfgs == null)
-            return Collections.emptyList();
-
-        final Collection<VisorCacheConfiguration> res = new 
ArrayList<>(ccfgs.length);
-
-        for (CacheConfiguration ccfg : ccfgs)
-            res.add(collectCache(ignite, ccfg));
-
-        return res;
-    }
-
-    /**
-     * Create data transfer object for cache configuration.
-     *
-     * @param ignite Ignite instance.
-     * @param ccfg Cache configuration.
-     * @return Data transfer objects for cache
-     */
-    protected VisorCacheConfiguration collectCache(IgniteEx ignite, 
CacheConfiguration ccfg) {
-        return new VisorCacheConfiguration().from(ignite, ccfg);
-    }
-
-    /**
-     * @return Caches.
-     */
-    public Iterable<VisorCacheConfiguration> caches() {
-        return caches;
-    }
-
-    /**
      * @return Igfss.
      */
     public Iterable<VisorIgfsConfiguration> igfss() {

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/b6c605c1/modules/visor-console/src/main/scala/org/apache/ignite/visor/commands/cache/VisorCacheCommand.scala
----------------------------------------------------------------------
diff --git 
a/modules/visor-console/src/main/scala/org/apache/ignite/visor/commands/cache/VisorCacheCommand.scala
 
b/modules/visor-console/src/main/scala/org/apache/ignite/visor/commands/cache/VisorCacheCommand.scala
index 539d3d2..2d7e14b 100644
--- 
a/modules/visor-console/src/main/scala/org/apache/ignite/visor/commands/cache/VisorCacheCommand.scala
+++ 
b/modules/visor-console/src/main/scala/org/apache/ignite/visor/commands/cache/VisorCacheCommand.scala
@@ -20,14 +20,15 @@ package org.apache.ignite.visor.commands.cache
 import org.apache.ignite._
 import org.apache.ignite.cluster.ClusterNode
 import org.apache.ignite.internal.util.typedef._
+import java.util
+
 import org.apache.ignite.internal.visor.cache._
-import org.apache.ignite.internal.visor.node.{VisorGridConfiguration, 
VisorNodeConfigurationCollectorTask}
 import org.apache.ignite.internal.visor.util.VisorTaskUtils._
-import org.apache.ignite.lang.IgniteBiTuple
+import org.apache.ignite.lang.{IgniteUuid, IgniteBiTuple}
 import org.jetbrains.annotations._
 
 import java.lang.{Boolean => JavaBoolean}
-import java.util.UUID
+import java.util.{Collections, UUID}
 
 import org.apache.ignite.visor.VisorTag
 import org.apache.ignite.visor.commands.cache.VisorCacheCommand._
@@ -385,13 +386,13 @@ class VisorCacheCommand {
                         println("  Total number of executions: " + 
ad.execsQuery)
                         println("  Total number of failures:   " + 
ad.failsQuery)
 
-                        gCfg.foreach(_.caches().find(_.name() == 
ad.cacheName()).foreach(cfg => {
-                            nl()
+                        gCfg.foreach(ccfgs => ccfgs.find(ccfg => 
safeEquals(ccfg.name(), ad.cacheName()))
+                            .foreach(cfg => {
+                                nl()
 
-                            showCacheConfiguration("Cache configuration:", cfg)
+                                showCacheConfiguration("Cache configuration:", 
cfg)
                         }))
                     })
-
                 }
                 else
                     println("\nUse \"-a\" flag to see detailed statistics.")
@@ -464,10 +465,14 @@ class VisorCacheCommand {
      * @param node Specified node.
      * @return Grid configuration for specified node.
      */
-    private def config(node: ClusterNode): VisorGridConfiguration = {
-        try
+    private def config(node: ClusterNode) = {
+        try {
+            val z = Collections.emptySet()[IgniteUuid]
+
             ignite.compute(ignite.cluster.forNode(node)).withNoFailover()
-                .execute(classOf[VisorNodeConfigurationCollectorTask], 
emptyTaskArgument(node.id()))
+                .execute(classOf[VisorCacheConfigurationCollectorTask],
+                    toTaskArgument(node.id(), 
z.asInstanceOf[util.Collection[IgniteUuid]]))
+        }
         catch {
             case e: IgniteException =>
                 scold(e.getMessage)

Reply via email to