# Ignite-593 Reworked cache configurations collect and process.

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

Branch: refs/heads/ignite-639
Commit: fe57a53c3b4fca401969dba6acd85f5726ea1101
Parents: c0d6e89
Author: AKuznetsov <akuznet...@gridgain.com>
Authored: Mon Apr 6 22:43:43 2015 +0700
Committer: AKuznetsov <akuznet...@gridgain.com>
Committed: Mon Apr 6 22:43:43 2015 +0700

----------------------------------------------------------------------
 .../VisorCacheConfigurationCollectorTask.java   |  2 +-
 .../commands/cache/VisorCacheCommand.scala      | 19 ++++-------
 .../config/VisorConfigurationCommand.scala      | 15 +++++----
 .../visor/commands/gc/VisorGcCommand.scala      | 15 +++++----
 .../scala/org/apache/ignite/visor/visor.scala   | 34 ++++++++++++++++----
 5 files changed, 52 insertions(+), 33 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/fe57a53c/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 53d1105..a92dd3c 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
@@ -28,7 +28,7 @@ import java.util.*;
  */
 @GridInternal
 public class VisorCacheConfigurationCollectorTask
-    extends VisorOneNodeTask<Collection<IgniteUuid>, 
Collection<VisorCacheConfiguration>> {
+    extends VisorOneNodeTask<Collection<IgniteUuid>, Map<IgniteUuid, 
VisorCacheConfiguration>> {
     /** */
     private static final long serialVersionUID = 0L;
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/fe57a53c/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 2d7e14b..91317c9 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,7 +20,6 @@ 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.util.VisorTaskUtils._
@@ -28,7 +27,7 @@ import org.apache.ignite.lang.{IgniteUuid, IgniteBiTuple}
 import org.jetbrains.annotations._
 
 import java.lang.{Boolean => JavaBoolean}
-import java.util.{Collections, UUID}
+import java.util.{Collection => JavaCollection, Collections, UUID}
 
 import org.apache.ignite.visor.VisorTag
 import org.apache.ignite.visor.commands.cache.VisorCacheCommand._
@@ -387,10 +386,10 @@ class VisorCacheCommand {
                         println("  Total number of failures:   " + 
ad.failsQuery)
 
                         gCfg.foreach(ccfgs => ccfgs.find(ccfg => 
safeEquals(ccfg.name(), ad.cacheName()))
-                            .foreach(cfg => {
+                            .foreach(ccfg => {
                                 nl()
 
-                                showCacheConfiguration("Cache configuration:", 
cfg)
+                                showCacheConfiguration("Cache configuration:", 
ccfg)
                         }))
                     })
                 }
@@ -463,21 +462,17 @@ class VisorCacheCommand {
      * Gets configuration of grid from specified node for callecting of node 
cache's configuration.
      *
      * @param node Specified node.
-     * @return Grid configuration for specified node.
+     * @return Cache configurations for specified node.
      */
-    private def config(node: ClusterNode) = {
+    private def config(node: ClusterNode): 
JavaCollection[VisorCacheConfiguration] = {
         try {
-            val z = Collections.emptySet()[IgniteUuid]
-
-            ignite.compute(ignite.cluster.forNode(node)).withNoFailover()
-                .execute(classOf[VisorCacheConfigurationCollectorTask],
-                    toTaskArgument(node.id(), 
z.asInstanceOf[util.Collection[IgniteUuid]]))
+            cacheConfigurations(node.id())
         }
         catch {
             case e: IgniteException =>
                 scold(e.getMessage)
 
-                null
+                Collections.emptyList()
         }
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/fe57a53c/modules/visor-console/src/main/scala/org/apache/ignite/visor/commands/config/VisorConfigurationCommand.scala
----------------------------------------------------------------------
diff --git 
a/modules/visor-console/src/main/scala/org/apache/ignite/visor/commands/config/VisorConfigurationCommand.scala
 
b/modules/visor-console/src/main/scala/org/apache/ignite/visor/commands/config/VisorConfigurationCommand.scala
index c4ac1c0..447667a 100644
--- 
a/modules/visor-console/src/main/scala/org/apache/ignite/visor/commands/config/VisorConfigurationCommand.scala
+++ 
b/modules/visor-console/src/main/scala/org/apache/ignite/visor/commands/config/VisorConfigurationCommand.scala
@@ -20,7 +20,6 @@ package org.apache.ignite.visor.commands.config
 import org.apache.ignite._
 import org.apache.ignite.cluster.ClusterNode
 import org.apache.ignite.internal.util.{IgniteUtils => U}
-import 
org.apache.ignite.internal.visor.node.VisorNodeConfigurationCollectorTask
 import org.apache.ignite.internal.visor.util.VisorTaskUtils._
 import org.apache.ignite.lang.IgniteBiTuple
 
@@ -184,9 +183,7 @@ class VisorConfigurationCommand {
             assert(node != null)
 
             val cfg = try
-                ignite.compute(ignite.cluster.forNode(node))
-                    .withNoFailover()
-                    .execute(classOf[VisorNodeConfigurationCollectorTask], 
emptyTaskArgument(node.id()))
+                nodeConfiguration(node.id())
             catch {
                 case e: IgniteException =>
                     scold(e.getMessage)
@@ -392,9 +389,13 @@ class VisorConfigurationCommand {
             } else
                 println("\nNo system properties defined.")
 
-            cfg.caches().foreach(cacheCfg => {
-                VisorCacheCommand.showCacheConfiguration("\nCache '" + 
escapeName(cacheCfg.name()) + "':", cacheCfg)
-            })
+            try
+                cacheConfigurations(node.id).foreach(cacheCfg =>
+                    VisorCacheCommand.showCacheConfiguration("\nCache '" + 
escapeName(cacheCfg.name()) + "':", cacheCfg))
+            catch {
+                case e: IgniteException =>
+                    scold(e.getMessage)
+            }
         }
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/fe57a53c/modules/visor-console/src/main/scala/org/apache/ignite/visor/commands/gc/VisorGcCommand.scala
----------------------------------------------------------------------
diff --git 
a/modules/visor-console/src/main/scala/org/apache/ignite/visor/commands/gc/VisorGcCommand.scala
 
b/modules/visor-console/src/main/scala/org/apache/ignite/visor/commands/gc/VisorGcCommand.scala
index 446f07c..5ec85a7 100644
--- 
a/modules/visor-console/src/main/scala/org/apache/ignite/visor/commands/gc/VisorGcCommand.scala
+++ 
b/modules/visor-console/src/main/scala/org/apache/ignite/visor/commands/gc/VisorGcCommand.scala
@@ -148,16 +148,17 @@ class VisorGcCommand {
                 val NULL: Void = null
 
                 
ignite.compute(prj).withNoFailover().execute(classOf[VisorNodeGcTask],
-                    toTaskArgument(nids, NULL)).foreach { case (nid, stat) =>
-                    val roundHb = stat.get1() / (1024L * 1024L)
-                    val roundHa = stat.get2() / (1024L * 1024L)
+                    toTaskArgument(nids, NULL)).foreach {
+                        case (nid, stat) =>
+                            val roundHb = stat.get1() / (1024L * 1024L)
+                            val roundHa = stat.get2() / (1024L * 1024L)
 
-                    val sign = if (roundHa > roundHb) "+" else ""
+                            val sign = if (roundHa > roundHb) "+" else ""
 
-                    val deltaPercent = math.round(roundHa * 100d / roundHb - 
100)
+                            val deltaPercent = math.round(roundHa * 100d / 
roundHb - 100)
 
-                    t += (nodeId8(nid), roundHb + "mb", roundHa + "mb", sign + 
deltaPercent + "%")
-                }
+                            t += (nodeId8(nid), roundHb + "mb", roundHa + 
"mb", sign + deltaPercent + "%")
+                    }
 
                 println("Garbage collector procedure results:")
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/fe57a53c/modules/visor-console/src/main/scala/org/apache/ignite/visor/visor.scala
----------------------------------------------------------------------
diff --git 
a/modules/visor-console/src/main/scala/org/apache/ignite/visor/visor.scala 
b/modules/visor-console/src/main/scala/org/apache/ignite/visor/visor.scala
index 7b6d1b4..5710458 100644
--- a/modules/visor-console/src/main/scala/org/apache/ignite/visor/visor.scala
+++ b/modules/visor-console/src/main/scala/org/apache/ignite/visor/visor.scala
@@ -32,10 +32,11 @@ import org.apache.ignite.internal.util.lang.{GridFunc => F}
 import org.apache.ignite.internal.util.typedef._
 import org.apache.ignite.internal.util.{GridConfigurationFinder, IgniteUtils 
=> U}
 import org.apache.ignite.internal.visor.VisorTaskArgument
-import org.apache.ignite.internal.visor.node.VisorNodeEventsCollectorTask
+import org.apache.ignite.internal.visor.cache._
+import org.apache.ignite.internal.visor.node._
 import 
org.apache.ignite.internal.visor.node.VisorNodeEventsCollectorTask.VisorNodeEventsCollectorTaskArg
 import org.apache.ignite.internal.visor.util.VisorTaskUtils._
-import org.apache.ignite.lang.{IgniteNotPeerDeployable, IgnitePredicate}
+import org.apache.ignite.lang._
 import org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi
 import org.apache.ignite.thread.IgniteThreadPoolExecutor
 import org.apache.ignite.visor.commands.VisorConsole.consoleReader
@@ -46,7 +47,7 @@ import java.io._
 import java.net._
 import java.text._
 import java.util.concurrent._
-import java.util.{HashSet => JHashSet, _}
+import java.util.{Collection => JavaCollection, HashSet => JavaHashSet, _}
 
 import scala.collection.JavaConversions._
 import scala.collection.immutable
@@ -836,7 +837,7 @@ object visor extends VisorTag {
      * Extract node from command arguments.
      *
      * @param argLst Command arguments.
-     * @return error message or node ref.
+     * @return Error message or node ref.
      */
     def parseNode(argLst: ArgList) = {
         val id8 = argValue("id8", argLst)
@@ -1827,7 +1828,7 @@ object visor extends VisorTag {
     /** Convert to task argument. */
     def emptyTaskArgument[A](nid: UUID): VisorTaskArgument[Void] = new 
VisorTaskArgument(nid, false)
 
-    def emptyTaskArgument[A](nids: Iterable[UUID]): VisorTaskArgument[Void] = 
new VisorTaskArgument(new JHashSet(nids),
+    def emptyTaskArgument[A](nids: Iterable[UUID]): VisorTaskArgument[Void] = 
new VisorTaskArgument(new JavaHashSet(nids),
       false)
 
     /** Convert to task argument. */
@@ -1835,7 +1836,28 @@ object visor extends VisorTag {
 
     /** Convert to task argument. */
     def toTaskArgument[A](nids: Iterable[UUID], arg: A): VisorTaskArgument[A] 
= new VisorTaskArgument(
-        new JHashSet(nids), arg, false)
+        new JavaHashSet(nids), arg, false)
+
+    def compute(nid: UUID): IgniteCompute = 
ignite.compute(ignite.cluster.forNodeId(nid)).withNoFailover()
+
+    /**
+     * Gets configuration from specified node.
+     *
+     * @param nid Node ID to collect configuration from.
+     * @return Grid configuration.
+     */
+    def nodeConfiguration(nid: UUID): VisorGridConfiguration =
+        compute(nid).execute(classOf[VisorNodeConfigurationCollectorTask], 
emptyTaskArgument(nid))
+
+    /**
+     * Gets caches configurations from specified node.
+     *
+     * @param nid Node ID to collect configuration from.
+     * @return Collection of cache configurations.
+     */
+    def cacheConfigurations(nid: UUID): 
JavaCollection[VisorCacheConfiguration] =
+        compute(nid).execute(classOf[VisorCacheConfigurationCollectorTask],
+            toTaskArgument(nid, 
null.asInstanceOf[JavaCollection[IgniteUuid]])).values()
 
     /**
      * Asks user to select a node from the list.

Reply via email to