This is an automated email from the ASF dual-hosted git repository.

namelchev pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ignite.git


The following commit(s) were added to refs/heads/master by this push:
     new 16b2edd8392 IGNITE-21110 Added the management event to all management 
commands (#11121)
16b2edd8392 is described below

commit 16b2edd8392a6787f316d748f1ca3a6b0d176b98
Author: Nikita Amelchev <nsamelc...@gmail.com>
AuthorDate: Wed Feb 7 13:01:13 2024 +0300

    IGNITE-21110 Added the management event to all management commands (#11121)
---
 .../internal/management/ClusterChangeTagTask.java  |   2 -
 .../internal/management/ShutdownPolicyTask.java    |   2 -
 .../ignite/internal/management/SystemViewTask.java |   2 -
 .../internal/management/api/CommandUtils.java      |   4 +-
 .../internal/management/api/ComputeCommand.java    |   5 +-
 .../internal/management/baseline/BaselineTask.java |   2 -
 .../management/cache/CacheMetricsTask.java         |   3 +-
 .../internal/management/cache/CacheScanTask.java   |   2 -
 .../internal/management/cache/CacheStopTask.java   |   2 -
 .../defragmentation/DefragmentationTask.java       |   2 -
 .../management/kill/CancelServiceTask.java         |   2 -
 .../management/kill/ClientConnectionDropTask.java  |   2 -
 .../management/kill/ComputeCancelSessionTask.java  |   2 -
 .../management/kill/ContinuousQueryCancelTask.java |   2 -
 .../kill/QueryCancelOnInitiatorTask.java           |   2 -
 .../management/kill/ScanQueryCancelTask.java       |   2 -
 .../internal/management/metric/MetricTask.java     |   2 -
 .../PerformanceStatisticsTask.java                 |   2 -
 .../management/persistence/PersistenceTask.java    |   3 +-
 .../tracing/TracingConfigurationTask.java          |   2 -
 .../managers/deployment/GridDeployment.java        |  11 +-
 .../processors/task/GridVisorManagementTask.java   |  38 ------
 .../compute/VisorComputeCancelSessionsTask.java    |   2 -
 .../internal/visor/misc/VisorIdAndTagViewTask.java |   2 -
 .../main/resources/META-INF/classnames.properties  |   1 -
 .../internal/TestManagementVisorMultiNodeTask.java |  66 -----------
 .../internal/TestManagementVisorOneNodeTask.java   |   2 -
 .../TestNotManagementVisorMultiNodeTask.java       |  64 ----------
 .../TestNotManagementVisorOneNodeTask.java         |  64 ----------
 .../internal/VisorManagementEventSelfTest.java     | 132 +++------------------
 30 files changed, 30 insertions(+), 399 deletions(-)

diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/management/ClusterChangeTagTask.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/management/ClusterChangeTagTask.java
index 9eb20fcc9c7..86d92f10bdd 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/management/ClusterChangeTagTask.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/management/ClusterChangeTagTask.java
@@ -21,7 +21,6 @@ import org.apache.ignite.IgniteCheckedException;
 import org.apache.ignite.IgniteException;
 import org.apache.ignite.internal.cluster.IgniteClusterEx;
 import org.apache.ignite.internal.processors.task.GridInternal;
-import org.apache.ignite.internal.processors.task.GridVisorManagementTask;
 import org.apache.ignite.internal.visor.VisorJob;
 import org.apache.ignite.internal.visor.VisorOneNodeTask;
 
@@ -29,7 +28,6 @@ import org.apache.ignite.internal.visor.VisorOneNodeTask;
  *
  */
 @GridInternal
-@GridVisorManagementTask
 public class ClusterChangeTagTask extends 
VisorOneNodeTask<ChangeTagCommandArg, ClusterChangeTagTaskResult> {
     /** */
     private static final long serialVersionUID = 0L;
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/management/ShutdownPolicyTask.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/management/ShutdownPolicyTask.java
index 27d0046faf1..e648389407c 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/management/ShutdownPolicyTask.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/management/ShutdownPolicyTask.java
@@ -20,7 +20,6 @@ package org.apache.ignite.internal.management;
 import org.apache.ignite.IgniteException;
 import org.apache.ignite.IgniteLogger;
 import org.apache.ignite.internal.processors.task.GridInternal;
-import org.apache.ignite.internal.processors.task.GridVisorManagementTask;
 import org.apache.ignite.internal.visor.VisorJob;
 import org.apache.ignite.internal.visor.VisorOneNodeTask;
 import org.apache.ignite.resources.LoggerResource;
@@ -29,7 +28,6 @@ import org.apache.ignite.resources.LoggerResource;
  * Shutdown policy task.
  */
 @GridInternal
-@GridVisorManagementTask
 public class ShutdownPolicyTask extends 
VisorOneNodeTask<ShutdownPolicyCommandArg, ShutdownPolicyTaskResult> {
     /** Serial version id. */
     private static final long serialVersionUID = 0L;
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/management/SystemViewTask.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/management/SystemViewTask.java
index ce20ad3412f..31fae2c6963 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/management/SystemViewTask.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/management/SystemViewTask.java
@@ -28,7 +28,6 @@ import org.apache.ignite.IgniteException;
 import org.apache.ignite.compute.ComputeJobResult;
 import org.apache.ignite.internal.managers.systemview.GridSystemViewManager;
 import org.apache.ignite.internal.processors.task.GridInternal;
-import org.apache.ignite.internal.processors.task.GridVisorManagementTask;
 import org.apache.ignite.internal.util.typedef.internal.U;
 import org.apache.ignite.internal.visor.VisorJob;
 import org.apache.ignite.internal.visor.VisorMultiNodeTask;
@@ -46,7 +45,6 @@ import static 
org.apache.ignite.internal.processors.metric.impl.MetricUtils.toSq
 
 /** Reperesents visor task for obtaining system view content. */
 @GridInternal
-@GridVisorManagementTask
 public class SystemViewTask extends VisorMultiNodeTask<SystemViewCommandArg, 
SystemViewTaskResult, SystemViewTaskResult> {
     /** */
     private static final long serialVersionUID = 0L;
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/management/api/CommandUtils.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/management/api/CommandUtils.java
index 5d751f30db6..4fb79b9794d 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/management/api/CommandUtils.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/management/api/CommandUtils.java
@@ -42,7 +42,6 @@ import java.util.stream.Collectors;
 import org.apache.ignite.Ignite;
 import org.apache.ignite.IgniteException;
 import org.apache.ignite.cluster.ClusterNode;
-import org.apache.ignite.compute.ComputeTask;
 import org.apache.ignite.internal.client.GridClient;
 import org.apache.ignite.internal.client.GridClientCacheMode;
 import org.apache.ignite.internal.client.GridClientCompute;
@@ -54,6 +53,7 @@ import 
org.apache.ignite.internal.dto.IgniteDataTransferObject;
 import org.apache.ignite.internal.util.typedef.F;
 import org.apache.ignite.internal.util.typedef.internal.SB;
 import org.apache.ignite.internal.util.typedef.internal.U;
+import org.apache.ignite.internal.visor.VisorMultiNodeTask;
 import org.apache.ignite.internal.visor.VisorTaskArgument;
 import org.apache.ignite.lang.IgniteExperimental;
 import org.apache.ignite.lang.IgniteUuid;
@@ -764,7 +764,7 @@ public class CommandUtils {
     public static <A, R> R execute(
         @Nullable GridClient cli,
         @Nullable Ignite ignite,
-        Class<? extends ComputeTask<VisorTaskArgument<A>, R>> taskCls,
+        Class<? extends VisorMultiNodeTask<A, R, ?>> taskCls,
         A arg,
         Collection<GridClientNode> nodes
     ) throws GridClientException {
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/management/api/ComputeCommand.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/management/api/ComputeCommand.java
index 26da81496a8..b773bfd3f4b 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/management/api/ComputeCommand.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/management/api/ComputeCommand.java
@@ -19,10 +19,9 @@ package org.apache.ignite.internal.management.api;
 
 import java.util.Collection;
 import java.util.function.Consumer;
-import org.apache.ignite.compute.ComputeTask;
 import org.apache.ignite.internal.client.GridClientNode;
 import org.apache.ignite.internal.dto.IgniteDataTransferObject;
-import org.apache.ignite.internal.visor.VisorTaskArgument;
+import org.apache.ignite.internal.visor.VisorMultiNodeTask;
 import org.jetbrains.annotations.Nullable;
 
 /**
@@ -30,7 +29,7 @@ import org.jetbrains.annotations.Nullable;
  */
 public interface ComputeCommand<A extends IgniteDataTransferObject, R> extends 
Command<A, R> {
     /** @return Task class. */
-    public Class<? extends ComputeTask<VisorTaskArgument<A>, R>> taskClass();
+    public Class<? extends VisorMultiNodeTask<A, R, ?>> taskClass();
 
     /**
      * Prints command result to the user.
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/management/baseline/BaselineTask.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/management/baseline/BaselineTask.java
index e18c3e943fb..abfb8142fbe 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/management/baseline/BaselineTask.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/management/baseline/BaselineTask.java
@@ -30,7 +30,6 @@ import org.apache.ignite.internal.cluster.IgniteClusterEx;
 import 
org.apache.ignite.internal.management.baseline.BaselineCommand.BaselineTaskArg;
 import 
org.apache.ignite.internal.processors.cluster.baseline.autoadjust.BaselineAutoAdjustStatus;
 import org.apache.ignite.internal.processors.task.GridInternal;
-import org.apache.ignite.internal.processors.task.GridVisorManagementTask;
 import org.apache.ignite.internal.util.typedef.F;
 import org.apache.ignite.internal.util.typedef.internal.S;
 import org.apache.ignite.internal.visor.VisorJob;
@@ -41,7 +40,6 @@ import org.jetbrains.annotations.Nullable;
  * Task that will collect information about baseline topology and can change 
its state.
  */
 @GridInternal
-@GridVisorManagementTask
 public class BaselineTask extends VisorOneNodeTask<BaselineTaskArg, 
BaselineTaskResult> {
     /** */
     private static final long serialVersionUID = 0L;
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheMetricsTask.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheMetricsTask.java
index 42bc26a33cd..79e18d91260 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheMetricsTask.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheMetricsTask.java
@@ -24,18 +24,17 @@ import java.util.TreeMap;
 import org.apache.ignite.IgniteException;
 import org.apache.ignite.internal.processors.cache.IgniteInternalCache;
 import org.apache.ignite.internal.processors.task.GridInternal;
-import org.apache.ignite.internal.processors.task.GridVisorManagementTask;
 import org.apache.ignite.internal.util.typedef.F;
 import org.apache.ignite.internal.visor.VisorJob;
 import org.apache.ignite.internal.visor.VisorOneNodeTask;
 import org.jetbrains.annotations.Nullable;
+
 import static 
org.apache.ignite.internal.management.cache.CacheMetricsOperation.ENABLE;
 
 /**
  * Task for a cache metrics command.
  */
 @GridInternal
-@GridVisorManagementTask
 public class CacheMetricsTask extends VisorOneNodeTask<CacheMetricsCommandArg, 
CacheMetricsTaskResult> {
     /** Serial version uid. */
     private static final long serialVersionUID = 0L;
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheScanTask.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheScanTask.java
index b419177d46d..646693ed92e 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheScanTask.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheScanTask.java
@@ -30,7 +30,6 @@ import org.apache.ignite.cache.query.QueryCursor;
 import org.apache.ignite.cache.query.ScanQuery;
 import org.apache.ignite.internal.binary.BinaryObjectEx;
 import org.apache.ignite.internal.processors.task.GridInternal;
-import org.apache.ignite.internal.processors.task.GridVisorManagementTask;
 import org.apache.ignite.internal.util.IgniteUtils;
 import org.apache.ignite.internal.util.typedef.F;
 import org.apache.ignite.internal.util.typedef.internal.S;
@@ -47,7 +46,6 @@ import static 
org.apache.ignite.plugin.security.SecurityPermissionSetBuilder.NO_
  * Task that scan cache entries.
  */
 @GridInternal
-@GridVisorManagementTask
 public class CacheScanTask extends VisorOneNodeTask<CacheScanCommandArg, 
CacheScanTaskResult> {
     /** */
     private static final long serialVersionUID = 0L;
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheStopTask.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheStopTask.java
index cb7a6973996..39f4fd15bcc 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheStopTask.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/management/cache/CacheStopTask.java
@@ -21,7 +21,6 @@ import java.util.Arrays;
 import java.util.Collection;
 import java.util.HashSet;
 import org.apache.ignite.internal.processors.task.GridInternal;
-import org.apache.ignite.internal.processors.task.GridVisorManagementTask;
 import org.apache.ignite.internal.util.typedef.F;
 import org.apache.ignite.internal.util.typedef.internal.S;
 import org.apache.ignite.internal.visor.VisorJob;
@@ -34,7 +33,6 @@ import static 
org.apache.ignite.plugin.security.SecurityPermissionSetBuilder.NO_
  * Task that stop specified caches on specified node.
  */
 @GridInternal
-@GridVisorManagementTask
 public class CacheStopTask extends VisorOneNodeTask<CacheDestroyCommandArg, 
Void> {
     /** */
     private static final long serialVersionUID = 0L;
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/management/defragmentation/DefragmentationTask.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/management/defragmentation/DefragmentationTask.java
index 92195a09569..42a90a5009a 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/management/defragmentation/DefragmentationTask.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/management/defragmentation/DefragmentationTask.java
@@ -26,7 +26,6 @@ import 
org.apache.ignite.internal.management.defragmentation.DefragmentationComm
 import 
org.apache.ignite.internal.management.defragmentation.DefragmentationCommand.DefragmentationStatusCommandArg;
 import 
org.apache.ignite.internal.processors.cache.persistence.defragmentation.IgniteDefragmentation;
 import org.apache.ignite.internal.processors.task.GridInternal;
-import org.apache.ignite.internal.processors.task.GridVisorManagementTask;
 import org.apache.ignite.internal.util.typedef.F;
 import org.apache.ignite.internal.visor.VisorJob;
 import org.apache.ignite.internal.visor.VisorMultiNodeTask;
@@ -34,7 +33,6 @@ import org.jetbrains.annotations.Nullable;
 
 /** */
 @GridInternal
-@GridVisorManagementTask
 public class DefragmentationTask extends VisorMultiNodeTask
     <DefragmentationStatusCommandArg, DefragmentationTaskResult, 
DefragmentationTaskResult> {
     /** Serial version uid. */
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/management/kill/CancelServiceTask.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/management/kill/CancelServiceTask.java
index 24a7b95b35b..2cd4f24717d 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/management/kill/CancelServiceTask.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/management/kill/CancelServiceTask.java
@@ -19,7 +19,6 @@ package org.apache.ignite.internal.management.kill;
 
 import org.apache.ignite.internal.ServiceMXBeanImpl;
 import org.apache.ignite.internal.processors.task.GridInternal;
-import org.apache.ignite.internal.processors.task.GridVisorManagementTask;
 import org.apache.ignite.internal.util.typedef.internal.S;
 import org.apache.ignite.internal.visor.VisorJob;
 import org.apache.ignite.internal.visor.VisorOneNodeTask;
@@ -28,7 +27,6 @@ import org.apache.ignite.internal.visor.VisorOneNodeTask;
  * Task for cancel services with specified name.
  */
 @GridInternal
-@GridVisorManagementTask
 public class CancelServiceTask extends VisorOneNodeTask<KillServiceCommandArg, 
Void> {
     /** */
     private static final long serialVersionUID = 0L;
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ClientConnectionDropTask.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ClientConnectionDropTask.java
index 7c9a90b06aa..c3bfe8f955b 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ClientConnectionDropTask.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ClientConnectionDropTask.java
@@ -21,7 +21,6 @@ import java.util.List;
 import org.apache.ignite.IgniteException;
 import org.apache.ignite.compute.ComputeJobResult;
 import org.apache.ignite.internal.processors.task.GridInternal;
-import org.apache.ignite.internal.processors.task.GridVisorManagementTask;
 import org.apache.ignite.internal.visor.VisorJob;
 import org.apache.ignite.internal.visor.VisorMultiNodeTask;
 import org.apache.ignite.mxbean.ClientProcessorMXBean;
@@ -31,7 +30,6 @@ import org.jetbrains.annotations.Nullable;
  * Task to cancel client connection(s).
  */
 @GridInternal
-@GridVisorManagementTask
 public class ClientConnectionDropTask extends 
VisorMultiNodeTask<KillClientCommandArg, Void, Boolean> {
     /** */
     private static final long serialVersionUID = 0L;
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ComputeCancelSessionTask.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ComputeCancelSessionTask.java
index d2c5f1f210c..2ffc7be8138 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ComputeCancelSessionTask.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ComputeCancelSessionTask.java
@@ -21,7 +21,6 @@ import java.util.List;
 import org.apache.ignite.compute.ComputeJobResult;
 import org.apache.ignite.internal.ComputeMXBeanImpl;
 import org.apache.ignite.internal.processors.task.GridInternal;
-import org.apache.ignite.internal.processors.task.GridVisorManagementTask;
 import org.apache.ignite.internal.util.typedef.internal.S;
 import org.apache.ignite.internal.visor.VisorJob;
 import org.apache.ignite.internal.visor.VisorOneNodeTask;
@@ -31,7 +30,6 @@ import org.jetbrains.annotations.Nullable;
  * Cancels given tasks sessions on all cluster nodes.
  */
 @GridInternal
-@GridVisorManagementTask
 public class ComputeCancelSessionTask extends 
VisorOneNodeTask<KillComputeCommandArg, Void> {
     /** */
     private static final long serialVersionUID = 0L;
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ContinuousQueryCancelTask.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ContinuousQueryCancelTask.java
index ab406e9a19a..986fe57484f 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ContinuousQueryCancelTask.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ContinuousQueryCancelTask.java
@@ -21,7 +21,6 @@ import org.apache.ignite.IgniteException;
 import org.apache.ignite.IgniteLogger;
 import org.apache.ignite.internal.QueryMXBeanImpl;
 import org.apache.ignite.internal.processors.task.GridInternal;
-import org.apache.ignite.internal.processors.task.GridVisorManagementTask;
 import org.apache.ignite.internal.visor.VisorJob;
 import org.apache.ignite.internal.visor.VisorOneNodeTask;
 import org.jetbrains.annotations.Nullable;
@@ -30,7 +29,6 @@ import org.jetbrains.annotations.Nullable;
  * Task to cancel continuous query.
  */
 @GridInternal
-@GridVisorManagementTask
 public class ContinuousQueryCancelTask extends 
VisorOneNodeTask<KillContinuousCommandArg, Void> {
     /** */
     private static final long serialVersionUID = 0L;
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/management/kill/QueryCancelOnInitiatorTask.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/management/kill/QueryCancelOnInitiatorTask.java
index 97a3ce1c44d..76f26d6edc5 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/management/kill/QueryCancelOnInitiatorTask.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/management/kill/QueryCancelOnInitiatorTask.java
@@ -22,7 +22,6 @@ import org.apache.ignite.IgniteException;
 import org.apache.ignite.compute.ComputeJobResult;
 import org.apache.ignite.internal.QueryMXBeanImpl;
 import org.apache.ignite.internal.processors.task.GridInternal;
-import org.apache.ignite.internal.processors.task.GridVisorManagementTask;
 import org.apache.ignite.internal.visor.VisorJob;
 import org.apache.ignite.internal.visor.VisorOneNodeTask;
 import org.jetbrains.annotations.Nullable;
@@ -31,7 +30,6 @@ import org.jetbrains.annotations.Nullable;
  * Task to cancel queries on initiator node.
  */
 @GridInternal
-@GridVisorManagementTask
 public class QueryCancelOnInitiatorTask extends 
VisorOneNodeTask<KillSqlCommandArg, Void> {
     /** */
     private static final long serialVersionUID = 0L;
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ScanQueryCancelTask.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ScanQueryCancelTask.java
index cc0c8a59894..8b9946f2ee0 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ScanQueryCancelTask.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/management/kill/ScanQueryCancelTask.java
@@ -20,7 +20,6 @@ package org.apache.ignite.internal.management.kill;
 import org.apache.ignite.IgniteException;
 import org.apache.ignite.internal.QueryMXBeanImpl;
 import org.apache.ignite.internal.processors.task.GridInternal;
-import org.apache.ignite.internal.processors.task.GridVisorManagementTask;
 import org.apache.ignite.internal.visor.VisorJob;
 import org.apache.ignite.internal.visor.VisorOneNodeTask;
 
@@ -28,7 +27,6 @@ import org.apache.ignite.internal.visor.VisorOneNodeTask;
  * Task to cancel scan queries.
  */
 @GridInternal
-@GridVisorManagementTask
 public class ScanQueryCancelTask extends VisorOneNodeTask<KillScanCommandArg, 
Void> {
     /** */
     private static final long serialVersionUID = 0L;
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/management/metric/MetricTask.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/management/metric/MetricTask.java
index c06b0f55709..cd3e66b5c8c 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/management/metric/MetricTask.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/management/metric/MetricTask.java
@@ -24,7 +24,6 @@ import org.apache.ignite.IgniteCheckedException;
 import org.apache.ignite.IgniteException;
 import org.apache.ignite.internal.processors.metric.GridMetricManager;
 import org.apache.ignite.internal.processors.task.GridInternal;
-import org.apache.ignite.internal.processors.task.GridVisorManagementTask;
 import org.apache.ignite.internal.visor.VisorJob;
 import org.apache.ignite.internal.visor.VisorOneNodeTask;
 import org.apache.ignite.spi.metric.BooleanMetric;
@@ -43,7 +42,6 @@ import static 
org.apache.ignite.spi.metric.jmx.MetricRegistryMBean.searchHistogr
 
 /** Reperesents visor task for obtaining metric values. */
 @GridInternal
-@GridVisorManagementTask
 public class MetricTask extends VisorOneNodeTask<MetricCommandArg, Map<String, 
?>> {
     /** */
     private static final long serialVersionUID = 0L;
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/management/performancestatistics/PerformanceStatisticsTask.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/management/performancestatistics/PerformanceStatisticsTask.java
index b13455d44b2..2cbe5dd2ec6 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/management/performancestatistics/PerformanceStatisticsTask.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/management/performancestatistics/PerformanceStatisticsTask.java
@@ -25,14 +25,12 @@ import 
org.apache.ignite.internal.management.performancestatistics.PerformanceSt
 import 
org.apache.ignite.internal.management.performancestatistics.PerformanceStatisticsCommand.PerformanceStatisticsStatusCommandArg;
 import 
org.apache.ignite.internal.management.performancestatistics.PerformanceStatisticsCommand.PerformanceStatisticsStopCommandArg;
 import org.apache.ignite.internal.processors.task.GridInternal;
-import org.apache.ignite.internal.processors.task.GridVisorManagementTask;
 import org.apache.ignite.internal.util.typedef.internal.U;
 import org.apache.ignite.internal.visor.VisorJob;
 import org.apache.ignite.internal.visor.VisorOneNodeTask;
 
 /** Represents visor task to manage performance statistics. */
 @GridInternal
-@GridVisorManagementTask
 public class PerformanceStatisticsTask extends 
VisorOneNodeTask<IgniteDataTransferObject, String> {
     /** Performance statistics enabled status. */
     public static final String STATUS_ENABLED = "Enabled.";
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/management/persistence/PersistenceTask.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/management/persistence/PersistenceTask.java
index 39adab4a45d..4394e4c0af3 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/management/persistence/PersistenceTask.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/management/persistence/PersistenceTask.java
@@ -46,7 +46,6 @@ import 
org.apache.ignite.internal.processors.cache.persistence.CheckCorruptedCac
 import 
org.apache.ignite.internal.processors.cache.persistence.CleanCacheStoresMaintenanceAction;
 import 
org.apache.ignite.internal.processors.cache.persistence.file.FilePageStoreManager;
 import org.apache.ignite.internal.processors.task.GridInternal;
-import org.apache.ignite.internal.processors.task.GridVisorManagementTask;
 import org.apache.ignite.internal.util.typedef.internal.CU;
 import org.apache.ignite.internal.util.typedef.internal.U;
 import org.apache.ignite.internal.visor.VisorJob;
@@ -56,12 +55,12 @@ import org.apache.ignite.maintenance.MaintenanceAction;
 import org.apache.ignite.maintenance.MaintenanceRegistry;
 import org.apache.ignite.maintenance.MaintenanceTask;
 import org.jetbrains.annotations.Nullable;
+
 import static 
org.apache.ignite.internal.processors.cache.persistence.file.FilePageStoreManager.CORRUPTED_DATA_FILES_MNTC_TASK_NAME;
 import static 
org.apache.ignite.internal.processors.cache.persistence.file.FilePageStoreManager.cacheDirName;
 
 /** */
 @GridInternal
-@GridVisorManagementTask
 public class PersistenceTask extends VisorOneNodeTask<PersistenceTaskArg, 
PersistenceTaskResult> {
     /** */
     private static final long serialVersionUID = 0L;
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/management/tracing/TracingConfigurationTask.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/management/tracing/TracingConfigurationTask.java
index 0e7d2ac2ccb..68039b1e968 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/management/tracing/TracingConfigurationTask.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/management/tracing/TracingConfigurationTask.java
@@ -26,7 +26,6 @@ import 
org.apache.ignite.internal.management.tracing.TracingConfigurationCommand
 import 
org.apache.ignite.internal.management.tracing.TracingConfigurationCommand.TracingConfigurationResetAllCommandArg;
 import 
org.apache.ignite.internal.management.tracing.TracingConfigurationCommand.TracingConfigurationResetCommandArg;
 import org.apache.ignite.internal.processors.task.GridInternal;
-import org.apache.ignite.internal.processors.task.GridVisorManagementTask;
 import org.apache.ignite.internal.util.typedef.internal.S;
 import org.apache.ignite.internal.visor.VisorJob;
 import org.apache.ignite.internal.visor.VisorOneNodeTask;
@@ -40,7 +39,6 @@ import org.jetbrains.annotations.Nullable;
  * Task that will collect and update tracing configuration.
  */
 @GridInternal
-@GridVisorManagementTask
 public class TracingConfigurationTask
     extends VisorOneNodeTask<TracingConfigurationCommandArg, 
TracingConfigurationTaskResult> {
     /** */
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/managers/deployment/GridDeployment.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/managers/deployment/GridDeployment.java
index a961c492d9f..e99b8a27bb7 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/managers/deployment/GridDeployment.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/managers/deployment/GridDeployment.java
@@ -38,7 +38,6 @@ import org.apache.ignite.IgniteException;
 import org.apache.ignite.compute.ComputeTask;
 import org.apache.ignite.configuration.DeploymentMode;
 import org.apache.ignite.internal.processors.task.GridInternal;
-import org.apache.ignite.internal.processors.task.GridVisorManagementTask;
 import org.apache.ignite.internal.util.GridLeanSet;
 import org.apache.ignite.internal.util.lang.GridMetadataAwareAdapter;
 import org.apache.ignite.internal.util.lang.GridPeerDeployAware;
@@ -48,6 +47,7 @@ import org.apache.ignite.internal.util.typedef.F;
 import org.apache.ignite.internal.util.typedef.X;
 import org.apache.ignite.internal.util.typedef.internal.S;
 import org.apache.ignite.internal.util.typedef.internal.U;
+import org.apache.ignite.internal.visor.VisorMultiNodeTask;
 import org.apache.ignite.lang.IgniteBiTuple;
 import org.apache.ignite.lang.IgniteUuid;
 import org.jetbrains.annotations.NotNull;
@@ -387,16 +387,15 @@ public class GridDeployment extends 
GridMetadataAwareAdapter implements GridDepl
     }
 
     /**
-     * Checks whether task class is annotated with {@link 
GridVisorManagementTask}.
+     * Checks whether task class is a management task.
      *
      * @param task Task.
      * @param taskCls Task class.
      * @return {@code True} if task is internal.
      */
-    public boolean visorManagementTask(@Nullable ComputeTask task, @NotNull 
Class<?> taskCls) {
-        return annotation(task instanceof GridPeerDeployAware ?
-                ((GridPeerDeployAware)task).deployClass() : taskCls,
-            GridVisorManagementTask.class) != null;
+    public boolean visorManagementTask(@Nullable ComputeTask<?, ?> task, 
@NotNull Class<?> taskCls) {
+        return VisorMultiNodeTask.class.isAssignableFrom(task instanceof 
GridPeerDeployAware ?
+                ((GridPeerDeployAware)task).deployClass() : taskCls);
     }
 
     /**
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridVisorManagementTask.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridVisorManagementTask.java
deleted file mode 100644
index 09c87bf0179..00000000000
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridVisorManagementTask.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.internal.processors.task;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Inherited;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-/**
- * Indicates that annotated task is a visor task that was invoked by user. 
They can be handled by event listeners.
- *
- * This annotation intended for internal use only.
- */
-@Documented
-@Inherited
-@Retention(RetentionPolicy.RUNTIME)
-@Target({ElementType.TYPE})
-public @interface GridVisorManagementTask {
-    // No-op.
-}
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/visor/compute/VisorComputeCancelSessionsTask.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/visor/compute/VisorComputeCancelSessionsTask.java
index 71aab6f3d1c..88fdb4faea3 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/visor/compute/VisorComputeCancelSessionsTask.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/visor/compute/VisorComputeCancelSessionsTask.java
@@ -24,7 +24,6 @@ import org.apache.ignite.IgniteCompute;
 import org.apache.ignite.compute.ComputeJobResult;
 import org.apache.ignite.compute.ComputeTaskFuture;
 import org.apache.ignite.internal.processors.task.GridInternal;
-import org.apache.ignite.internal.processors.task.GridVisorManagementTask;
 import org.apache.ignite.internal.util.typedef.internal.S;
 import org.apache.ignite.internal.visor.VisorJob;
 import org.apache.ignite.internal.visor.VisorOneNodeTask;
@@ -35,7 +34,6 @@ import org.jetbrains.annotations.Nullable;
  * Cancels given task session.
  */
 @GridInternal
-@GridVisorManagementTask
 public class VisorComputeCancelSessionsTask extends 
VisorOneNodeTask<VisorComputeCancelSessionsTaskArg, Void> {
     /** */
     private static final long serialVersionUID = 0L;
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/visor/misc/VisorIdAndTagViewTask.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/visor/misc/VisorIdAndTagViewTask.java
index 7b6cf3152f9..0fdcc95836f 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/visor/misc/VisorIdAndTagViewTask.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/visor/misc/VisorIdAndTagViewTask.java
@@ -20,7 +20,6 @@ package org.apache.ignite.internal.visor.misc;
 import org.apache.ignite.IgniteException;
 import org.apache.ignite.internal.cluster.IgniteClusterEx;
 import org.apache.ignite.internal.processors.task.GridInternal;
-import org.apache.ignite.internal.processors.task.GridVisorManagementTask;
 import org.apache.ignite.internal.visor.VisorJob;
 import org.apache.ignite.internal.visor.VisorOneNodeTask;
 import org.jetbrains.annotations.Nullable;
@@ -29,7 +28,6 @@ import org.jetbrains.annotations.Nullable;
  *
  */
 @GridInternal
-@GridVisorManagementTask
 public class VisorIdAndTagViewTask extends VisorOneNodeTask<Void, 
VisorIdAndTagViewTaskResult> {
     /** */
     private static final long serialVersionUID = 0L;
diff --git a/modules/core/src/main/resources/META-INF/classnames.properties 
b/modules/core/src/main/resources/META-INF/classnames.properties
index 8ce87810e04..98f58f676b2 100644
--- a/modules/core/src/main/resources/META-INF/classnames.properties
+++ b/modules/core/src/main/resources/META-INF/classnames.properties
@@ -367,7 +367,6 @@ 
org.apache.ignite.internal.commandline.cache.distribution.CacheDistributionTaskR
 
org.apache.ignite.internal.commandline.cache.reset_lost_partitions.CacheResetLostPartitionsTask
 
org.apache.ignite.internal.commandline.cache.reset_lost_partitions.CacheResetLostPartitionsTask$CacheResetLostPartitionsJob
 
org.apache.ignite.internal.commandline.cache.reset_lost_partitions.CacheResetLostPartitionsTaskResult
-org.apache.ignite.internal.commandline.meta.subcommands.VoidDto
 org.apache.ignite.internal.management.meta.MetadataInfoTask
 org.apache.ignite.internal.management.meta.MetadataInfoTask$MetadataListJob
 org.apache.ignite.internal.management.meta.MetadataListResult
diff --git 
a/modules/core/src/test/java/org/apache/ignite/internal/TestManagementVisorMultiNodeTask.java
 
b/modules/core/src/test/java/org/apache/ignite/internal/TestManagementVisorMultiNodeTask.java
deleted file mode 100644
index beccd799043..00000000000
--- 
a/modules/core/src/test/java/org/apache/ignite/internal/TestManagementVisorMultiNodeTask.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.internal;
-
-import java.util.List;
-import org.apache.ignite.compute.ComputeJobResult;
-import org.apache.ignite.internal.processors.task.GridVisorManagementTask;
-import org.apache.ignite.internal.visor.VisorJob;
-import org.apache.ignite.internal.visor.VisorMultiNodeTask;
-import org.apache.ignite.internal.visor.VisorTaskArgument;
-import org.jetbrains.annotations.Nullable;
-
-/**
- *
- */
-@GridVisorManagementTask
-public class TestManagementVisorMultiNodeTask extends 
VisorMultiNodeTask<VisorTaskArgument, Object, Object> {
-    /** */
-    private static final long serialVersionUID = 0L;
-
-    /** {@inheritDoc} */
-    @Override protected VisorValidMultiNodeJob job(VisorTaskArgument arg) {
-        return new VisorValidMultiNodeJob(arg, debug);
-    }
-
-    /** {@inheritDoc} */
-    @Nullable @Override protected Object reduce0(List<ComputeJobResult> 
results) {
-        return null;
-    }
-
-    /**
-     * Valid Management multi node visor job.
-     */
-    private static class VisorValidMultiNodeJob extends 
VisorJob<VisorTaskArgument, Object> {
-        /** */
-        private static final long serialVersionUID = 0L;
-
-        /**
-         * @param arg Argument.
-         * @param debug Debug flag.
-         */
-        protected VisorValidMultiNodeJob(VisorTaskArgument arg, boolean debug) 
{
-            super(arg, debug);
-        }
-
-        /** {@inheritDoc} */
-        @Override protected Object run(VisorTaskArgument arg) {
-            return null;
-        }
-    }
-}
diff --git 
a/modules/core/src/test/java/org/apache/ignite/internal/TestManagementVisorOneNodeTask.java
 
b/modules/core/src/test/java/org/apache/ignite/internal/TestManagementVisorOneNodeTask.java
index f7479af08b1..a1861c9870b 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/internal/TestManagementVisorOneNodeTask.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/internal/TestManagementVisorOneNodeTask.java
@@ -19,7 +19,6 @@ package org.apache.ignite.internal;
 
 import java.util.List;
 import org.apache.ignite.compute.ComputeJobResult;
-import org.apache.ignite.internal.processors.task.GridVisorManagementTask;
 import org.apache.ignite.internal.visor.VisorJob;
 import org.apache.ignite.internal.visor.VisorOneNodeTask;
 import org.apache.ignite.internal.visor.VisorTaskArgument;
@@ -28,7 +27,6 @@ import org.jetbrains.annotations.Nullable;
 /**
  *
  */
-@GridVisorManagementTask
 public class TestManagementVisorOneNodeTask extends 
VisorOneNodeTask<VisorTaskArgument, Object> {
     /** */
     private static final long serialVersionUID = 0L;
diff --git 
a/modules/core/src/test/java/org/apache/ignite/internal/TestNotManagementVisorMultiNodeTask.java
 
b/modules/core/src/test/java/org/apache/ignite/internal/TestNotManagementVisorMultiNodeTask.java
deleted file mode 100644
index d8f27936338..00000000000
--- 
a/modules/core/src/test/java/org/apache/ignite/internal/TestNotManagementVisorMultiNodeTask.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.internal;
-
-import java.util.List;
-import org.apache.ignite.compute.ComputeJobResult;
-import org.apache.ignite.internal.visor.VisorJob;
-import org.apache.ignite.internal.visor.VisorMultiNodeTask;
-import org.apache.ignite.internal.visor.VisorTaskArgument;
-import org.jetbrains.annotations.Nullable;
-
-/**
- *
- */
-public class TestNotManagementVisorMultiNodeTask extends 
VisorMultiNodeTask<VisorTaskArgument, Object, Object> {
-    /** */
-    private static final long serialVersionUID = 0L;
-
-    /** {@inheritDoc} */
-    @Override protected VisorNotManagementMultiNodeJob job(VisorTaskArgument 
arg) {
-        return new VisorNotManagementMultiNodeJob(arg, debug);
-    }
-
-    /** {@inheritDoc} */
-    @Nullable @Override protected Object reduce0(List<ComputeJobResult> 
results) {
-        return null;
-    }
-
-    /**
-     * Not management multi node visor job.
-     */
-    private static class VisorNotManagementMultiNodeJob extends 
VisorJob<VisorTaskArgument, Object> {
-        /** */
-        private static final long serialVersionUID = 0L;
-
-        /**
-         * @param arg Argument.
-         * @param debug Debug flag.
-         */
-        protected VisorNotManagementMultiNodeJob(VisorTaskArgument arg, 
boolean debug) {
-            super(arg, debug);
-        }
-
-        /** {@inheritDoc} */
-        @Override protected Object run(VisorTaskArgument arg) {
-            return null;
-        }
-    }
-}
diff --git 
a/modules/core/src/test/java/org/apache/ignite/internal/TestNotManagementVisorOneNodeTask.java
 
b/modules/core/src/test/java/org/apache/ignite/internal/TestNotManagementVisorOneNodeTask.java
deleted file mode 100644
index 1106f94ec6f..00000000000
--- 
a/modules/core/src/test/java/org/apache/ignite/internal/TestNotManagementVisorOneNodeTask.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.internal;
-
-import java.util.List;
-import org.apache.ignite.compute.ComputeJobResult;
-import org.apache.ignite.internal.visor.VisorJob;
-import org.apache.ignite.internal.visor.VisorOneNodeTask;
-import org.apache.ignite.internal.visor.VisorTaskArgument;
-import org.jetbrains.annotations.Nullable;
-
-/**
- *
- */
-public class TestNotManagementVisorOneNodeTask extends 
VisorOneNodeTask<VisorTaskArgument, Object> {
-    /** */
-    private static final long serialVersionUID = 0L;
-
-    /** {@inheritDoc} */
-    @Override protected VisorNotManagementOneNodeJob job(VisorTaskArgument 
arg) {
-        return new VisorNotManagementOneNodeJob(arg, debug);
-    }
-
-    /** {@inheritDoc} */
-    @Nullable @Override protected Object reduce0(List<ComputeJobResult> 
results) {
-        return null;
-    }
-
-    /**
-     * Not management one node visor job.
-     */
-    private static class VisorNotManagementOneNodeJob extends 
VisorJob<VisorTaskArgument, Object> {
-        /** */
-        private static final long serialVersionUID = 0L;
-
-        /**
-         * @param arg Argument.
-         * @param debug Debug flag.
-         */
-        protected VisorNotManagementOneNodeJob(VisorTaskArgument arg, boolean 
debug) {
-            super(arg, debug);
-        }
-
-        /** {@inheritDoc} */
-        @Override protected Object run(VisorTaskArgument arg) {
-            return null;
-        }
-    }
-}
diff --git 
a/modules/core/src/test/java/org/apache/ignite/internal/VisorManagementEventSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/internal/VisorManagementEventSelfTest.java
index 673057ff2c1..2da03f38ce7 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/internal/VisorManagementEventSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/internal/VisorManagementEventSelfTest.java
@@ -17,21 +17,17 @@
 
 package org.apache.ignite.internal;
 
-import java.util.Arrays;
-import java.util.List;
 import java.util.concurrent.CountDownLatch;
 import java.util.concurrent.TimeUnit;
 import java.util.concurrent.atomic.AtomicReference;
 import org.apache.ignite.cluster.ClusterNode;
 import org.apache.ignite.compute.ComputeTask;
-import org.apache.ignite.configuration.CacheConfiguration;
 import org.apache.ignite.configuration.IgniteConfiguration;
 import org.apache.ignite.events.EventType;
 import org.apache.ignite.events.TaskEvent;
+import org.apache.ignite.internal.client.thin.TestTask;
 import org.apache.ignite.internal.visor.VisorTaskArgument;
 import org.apache.ignite.lang.IgnitePredicate;
-import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi;
-import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder;
 import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
 import org.junit.Test;
 
@@ -43,138 +39,43 @@ import static 
org.apache.ignite.events.EventType.EVT_MANAGEMENT_TASK_STARTED;
 public class VisorManagementEventSelfTest extends GridCommonAbstractTest {
     /** {@inheritDoc} */
     @Override protected IgniteConfiguration getConfiguration(String gridName) 
throws Exception {
-        IgniteConfiguration cfg = new IgniteConfiguration();
+        IgniteConfiguration cfg = super.getConfiguration(gridName);
 
         // Enable visor management events.
         cfg.setIncludeEventTypes(
             EVT_MANAGEMENT_TASK_STARTED
         );
 
-        cfg.setCacheConfiguration(
-            new CacheConfiguration<Integer, Integer>()
-                .setName("TEST")
-                .setIndexedTypes(Integer.class, Integer.class)
-                .setStatisticsEnabled(true)
-        );
-
-        TcpDiscoveryVmIpFinder ipFinder = new TcpDiscoveryVmIpFinder();
-
-        List<String> addrs = Arrays.asList("127.0.0.1:47500..47502");
-
-        ipFinder.setAddresses(addrs);
-
-        TcpDiscoverySpi discoSpi = new TcpDiscoverySpi();
-
-        discoSpi.setIpFinder(ipFinder);
-
-        cfg.setDiscoverySpi(discoSpi);
-
         return cfg;
     }
 
     /** {@inheritDoc} */
     @Override protected void afterTest() throws Exception {
-        stopAllGrids();
-
-        cleanPersistenceDir();
-
         super.afterTest();
-    }
 
-    /**
-     * Current test case start valid one node visor task that has 
GridVisorManagementTask annotation.
-     * No exceptions are expected.
-     *
-     * @throws Exception If failed.
-     */
-    @Test
-    public void testManagementOneNodeVisorTask() throws Exception {
-        IgniteEx ignite = startGrid(0);
-
-        doTestVisorTask(TestManagementVisorOneNodeTask.class, new 
VisorTaskArgument(), ignite);
-    }
-
-    /**
-     * Current test case start valid multi node visor task that has 
GridVisorManagementTask annotation.
-     * No exceptions are expected.
-     *
-     * @throws Exception If failed.
-     */
-    @Test
-    public void testManagementMultiNodeVisorTask() throws Exception {
-        IgniteEx ignite = startGrid(0);
-
-        doTestVisorTask(TestManagementVisorMultiNodeTask.class, new 
VisorTaskArgument(), ignite);
+        stopAllGrids();
     }
 
-    /**
-     * Current test case start one node visor task that has not 
GridVisorManagementTask annotation.
-     * No exceptions are expected.
-     *
-     * @throws Exception If failed.
-     */
+    /** @throws Exception If failed. */
     @Test
-    public void testNotManagementOneNodeVisorTask() throws Exception {
-        IgniteEx ignite = startGrid(0);
-
-        doTestNotManagementVisorTask(TestNotManagementVisorOneNodeTask.class, 
new VisorTaskArgument(), ignite);
+    public void testManagementTask() throws Exception {
+        doTestVisorTask(TestManagementVisorOneNodeTask.class, true);
     }
 
-    /**
-     * Current test case start multi node visor task that has not 
GridVisorManagementTask annotation.
-     * No exceptions are expected.
-     *
-     * @throws Exception If failed.
-     */
+    /** @throws Exception If failed. */
     @Test
-    public void testNotManagementMultiNodeVisorTask() throws Exception {
-        IgniteEx ignite = startGrid(0);
-
-        
doTestNotManagementVisorTask(TestNotManagementVisorMultiNodeTask.class, new 
VisorTaskArgument(), ignite);
+    public void testNotManagementTask() throws Exception {
+        doTestVisorTask(TestTask.class, false);
     }
 
     /**
      * @param cls class of the task.
-     * @param arg argument.
-     * @param ignite instance of Ignite.
      *
      * @throws Exception If failed.
      */
-    private <T, R> void doTestVisorTask(
-        Class<? extends ComputeTask<VisorTaskArgument<T>, R>> cls, T arg, 
IgniteEx ignite
-    ) throws Exception {
-        final AtomicReference<TaskEvent> evt = new AtomicReference<>();
-
-        final CountDownLatch evtLatch = new CountDownLatch(1);
-
-        ignite.events().localListen(new IgnitePredicate<TaskEvent>() {
-            @Override public boolean apply(TaskEvent e) {
-                evt.set(e);
-
-                evtLatch.countDown();
-
-                return false;
-            }
-        }, EventType.EVT_MANAGEMENT_TASK_STARTED);
-
-        for (ClusterNode node : ignite.cluster().forServers().nodes())
-            ignite.compute().executeAsync(cls, new 
VisorTaskArgument<>(node.id(), arg, true));
-
-        assertTrue(evtLatch.await(10000, TimeUnit.MILLISECONDS));
-
-        assertNotNull(evt.get());
-    }
+    private void doTestVisorTask(Class<? extends ComputeTask<?, ?>> cls, 
boolean expEvt) throws Exception {
+        IgniteEx ignite = startGrid(0);
 
-    /**
-     * @param cls class of the task.
-     * @param arg argument.
-     * @param ignite instance of Ignite.
-     *
-     * @throws Exception If failed.
-     */
-    private <T, R> void doTestNotManagementVisorTask(
-        Class<? extends ComputeTask<VisorTaskArgument<T>, R>> cls, T arg, 
IgniteEx ignite
-    ) throws Exception {
         final AtomicReference<TaskEvent> evt = new AtomicReference<>();
 
         final CountDownLatch evtLatch = new CountDownLatch(1);
@@ -190,8 +91,13 @@ public class VisorManagementEventSelfTest extends 
GridCommonAbstractTest {
         }, EventType.EVT_MANAGEMENT_TASK_STARTED);
 
         for (ClusterNode node : ignite.cluster().forServers().nodes())
-            ignite.compute().executeAsync(cls, new 
VisorTaskArgument<>(node.id(), arg, true));
-
-        assertFalse(evtLatch.await(10000, TimeUnit.MILLISECONDS));
+            ignite.compute().executeAsync(cls.getName(), new 
VisorTaskArgument<>(node.id(), new VisorTaskArgument(), true));
+
+        if (expEvt) {
+            assertTrue(evtLatch.await(10000, TimeUnit.MILLISECONDS));
+            assertTrue(evt.get() instanceof TaskEvent);
+        }
+        else
+            assertFalse(evtLatch.await(1000, TimeUnit.MILLISECONDS));
     }
 }

Reply via email to