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

nizhikov pushed a commit to branch IGNITE-19676
in repository https://gitbox.apache.org/repos/asf/ignite.git

commit c8a7290348dd227903c418a2c4de8dbf525d4d87
Author: nizhikov <nizhi...@apache.org>
AuthorDate: Thu Jun 15 12:09:29 2023 +0300

    IGNITE-19676 merge errors fix
---
 .../processors/query/calcite/QueryState.java}      |  32 +++---
 .../internal/commandline/ArgumentParser.java       | 119 ---------------------
 .../internal/management/api/HelpCommand.java       |  19 ----
 .../internal/management/api/LocalCommand.java      |  15 +--
 .../query/running/TrackableQuery.java}             |  20 ++--
 .../junits/multijvm/IgniteProcessProxy.java        |   6 ++
 6 files changed, 43 insertions(+), 168 deletions(-)

diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/management/api/LocalCommand.java
 
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/QueryState.java
similarity index 60%
copy from 
modules/core/src/main/java/org/apache/ignite/internal/management/api/LocalCommand.java
copy to 
modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/QueryState.java
index 2f60d073ed8..95a04564559 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/management/api/LocalCommand.java
+++ 
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/QueryState.java
@@ -15,19 +15,25 @@
  * limitations under the License.
  */
 
-package org.apache.ignite.internal.management.api;
+package org.apache.ignite.internal.processors.query.calcite;
 
-import java.util.function.Consumer;
-import org.apache.ignite.internal.client.GridClient;
-import org.apache.ignite.internal.client.GridClientException;
-import org.apache.ignite.internal.dto.IgniteDataTransferObject;
+/** */
+public enum QueryState {
+    /** */
+    INITED,
 
-/**
- * Marker interface only for backward compatibility with {@code ./control.sh}.
- */
-public interface HelpCommand extends Command<NoArg, Void> {
-    /** {@inheritDoc} */
-    @Override public default Class<NoArg> argClass() {
-        return NoArg.class;
-    }
+    /** */
+    PLANNING,
+
+    /** */
+    MAPPING,
+
+    /** */
+    EXECUTING,
+
+    /** */
+    CLOSING,
+
+    /** */
+    CLOSED
 }
diff --git 
a/modules/control-utility/src/main/java/org/apache/ignite/internal/commandline/ArgumentParser.java
 
b/modules/control-utility/src/main/java/org/apache/ignite/internal/commandline/ArgumentParser.java
index 16f9e8ec26a..5abe7ce6f75 100644
--- 
a/modules/control-utility/src/main/java/org/apache/ignite/internal/commandline/ArgumentParser.java
+++ 
b/modules/control-utility/src/main/java/org/apache/ignite/internal/commandline/ArgumentParser.java
@@ -42,9 +42,7 @@ import 
org.apache.ignite.internal.management.api.CliSubcommandsWithPrefix;
 import org.apache.ignite.internal.management.api.Command;
 import org.apache.ignite.internal.management.api.CommandsRegistry;
 import org.apache.ignite.internal.management.api.Positional;
-import org.apache.ignite.internal.util.typedef.F;
 import org.apache.ignite.internal.util.typedef.internal.U;
-import org.apache.ignite.lang.IgniteBiTuple;
 import org.apache.ignite.lang.IgniteExperimental;
 import org.apache.ignite.ssl.SslContextFactory;
 
@@ -380,121 +378,4 @@ public class ArgumentParser {
 
         return new CLIArgumentParser(positionalArgs, namedArgs);
     }
-
-    /**
-     * Fill and vaildate command argument.
-     *
-     * @param argCls Argument class.
-     * @param positionalParamProvider Provider of positional parameters.
-     * @param paramProvider Provider of named parameters.
-     * @return Argument filled with parameters.
-     * @param <A> Argument type.
-     */
-    private static <A extends IgniteDataTransferObject> A argument(
-        Class<A> argCls,
-        BiFunction<Field, Integer, Object> positionalParamProvider,
-        Function<Field, Object> paramProvider
-    ) {
-        try {
-            ArgumentState<A> arg = new ArgumentState<>(argCls);
-
-            visitCommandParams(
-                argCls,
-                fld -> arg.accept(fld, positionalParamProvider.apply(fld, 
arg.nextIdx())),
-                fld -> arg.accept(fld, paramProvider.apply(fld)),
-                (argGrp, flds) -> flds.forEach(fld -> {
-                    if (fld.isAnnotationPresent(Positional.class))
-                        arg.accept(fld, positionalParamProvider.apply(fld, 
arg.nextIdx()));
-                    else
-                        arg.accept(fld, paramProvider.apply(fld));
-                })
-            );
-
-            if (arg.argGrp != null && (!arg.grpOptional() && 
!arg.grpFldExists))
-                throw new IllegalArgumentException("One of " + 
toFormattedNames(argCls, arg.grpdFlds) + " required");
-
-            return arg.res;
-        }
-        catch (InstantiationException | IllegalAccessException e) {
-            throw new IgniteException(e);
-        }
-    }
-
-    /** */
-    private static class ArgumentState<A extends IgniteDataTransferObject> 
implements BiConsumer<Field, Object> {
-        /** */
-        final A res;
-
-        /** */
-        final ArgumentGroup argGrp;
-
-        /** */
-        boolean grpFldExists;
-
-        /** */
-        int idx;
-
-        /** */
-        final Set<String> grpdFlds;
-
-        /** */
-        public ArgumentState(Class<A> argCls) throws InstantiationException, 
IllegalAccessException {
-            res = argCls.newInstance();
-            argGrp = argCls.getAnnotation(ArgumentGroup.class);
-            grpdFlds = argGrp == null
-                ? Collections.emptySet()
-                : new HashSet<>(Arrays.asList(argGrp.value()));
-        }
-
-        /** */
-        public boolean grpOptional() {
-            return argGrp == null || argGrp.optional();
-        }
-
-        /** */
-        private int nextIdx() {
-            int idx0 = idx;
-
-            idx++;
-
-            return idx0;
-        }
-
-        /** {@inheritDoc} */
-        @Override public void accept(Field fld, Object val) {
-            boolean grpdFld = grpdFlds.contains(fld.getName());
-
-            if (val == null) {
-                if (grpdFld || fld.getAnnotation(Argument.class).optional())
-                    return;
-
-                String name = fld.isAnnotationPresent(Positional.class)
-                    ? parameterExample(fld, false)
-                    : toFormattedFieldName(fld);
-
-                throw new IllegalArgumentException("Argument " + name + " 
required.");
-            }
-
-            if (grpdFld) {
-                if (grpFldExists && (argGrp != null && argGrp.onlyOneOf())) {
-                    throw new IllegalArgumentException(
-                        "Only one of " + toFormattedNames(res.getClass(), 
grpdFlds) + " allowed"
-                    );
-                }
-
-                grpFldExists = true;
-            }
-
-            try {
-                res.getClass().getMethod(fld.getName(), 
fld.getType()).invoke(res, val);
-            }
-            catch (NoSuchMethodException | IllegalAccessException e) {
-                throw new IgniteException(e);
-            }
-            catch (InvocationTargetException e) {
-                if (e.getTargetException() != null && e.getTargetException() 
instanceof RuntimeException)
-                    throw (RuntimeException)e.getTargetException();
-            }
-        }
-    }
 }
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/management/api/HelpCommand.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/management/api/HelpCommand.java
index fe2ff7e8ccc..c1a5b51042f 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/management/api/HelpCommand.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/management/api/HelpCommand.java
@@ -16,7 +16,6 @@
  */
 
 package org.apache.ignite.internal.management.api;
-<<<<<<<< 
HEAD:modules/core/src/main/java/org/apache/ignite/internal/management/api/HelpCommand.java
 
 /**
  * Marker interface only for backward compatibility with {@code ./control.sh}.
@@ -26,22 +25,4 @@ public interface HelpCommand extends Command<NoArg, Void> {
     @Override public default Class<NoArg> argClass() {
         return NoArg.class;
     }
-========
-
-import java.util.function.Consumer;
-import org.apache.ignite.internal.client.GridClient;
-import org.apache.ignite.internal.dto.IgniteDataTransferObject;
-
-/**
- * Command that must be executed directly using {@link GridClient} instance.
- */
-public interface LocalCommand<A extends IgniteDataTransferObject, R> extends 
Command<A, R> {
-    /**
-     * @param cli Grid client instance.
-     * @param arg Command argument.
-     * @param printer Results printer.
-     * @return Command result.
-     */
-    public R execute(GridClient cli, A arg, Consumer<String> printer) throws 
Exception;
->>>>>>>> 
master:modules/core/src/main/java/org/apache/ignite/internal/management/api/LocalCommand.java
 }
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/management/api/LocalCommand.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/management/api/LocalCommand.java
index 2f60d073ed8..781e7528cf5 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/management/api/LocalCommand.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/management/api/LocalCommand.java
@@ -23,11 +23,14 @@ import 
org.apache.ignite.internal.client.GridClientException;
 import org.apache.ignite.internal.dto.IgniteDataTransferObject;
 
 /**
- * Marker interface only for backward compatibility with {@code ./control.sh}.
+ * Command that must be executed directly using {@link GridClient} instance.
  */
-public interface HelpCommand extends Command<NoArg, Void> {
-    /** {@inheritDoc} */
-    @Override public default Class<NoArg> argClass() {
-        return NoArg.class;
-    }
+public interface LocalCommand<A extends IgniteDataTransferObject, R> extends 
Command<A, R> {
+    /**
+     * @param cli Grid client instance.
+     * @param arg Command argument.
+     * @param printer Results printer.
+     * @return Command result.
+     */
+    public R execute(GridClient cli, A arg, Consumer<String> printer) throws 
GridClientException;
 }
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/management/api/LocalCommand.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/query/running/TrackableQuery.java
similarity index 61%
copy from 
modules/core/src/main/java/org/apache/ignite/internal/management/api/LocalCommand.java
copy to 
modules/core/src/main/java/org/apache/ignite/internal/processors/query/running/TrackableQuery.java
index 2f60d073ed8..af5a413a088 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/management/api/LocalCommand.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/query/running/TrackableQuery.java
@@ -15,19 +15,17 @@
  * limitations under the License.
  */
 
-package org.apache.ignite.internal.management.api;
+package org.apache.ignite.internal.processors.query.running;
 
-import java.util.function.Consumer;
-import org.apache.ignite.internal.client.GridClient;
-import org.apache.ignite.internal.client.GridClientException;
-import org.apache.ignite.internal.dto.IgniteDataTransferObject;
+import org.jetbrains.annotations.Nullable;
 
 /**
- * Marker interface only for backward compatibility with {@code ./control.sh}.
+ * Query, that can be tracked by {@link HeavyQueriesTracker}.
  */
-public interface HelpCommand extends Command<NoArg, Void> {
-    /** {@inheritDoc} */
-    @Override public default Class<NoArg> argClass() {
-        return NoArg.class;
-    }
+public interface TrackableQuery {
+    /** Query execution time. */
+    public long time();
+
+    /** Query info to print to log. */
+    public String queryInfo(@Nullable String additinalInfo);
 }
diff --git 
a/modules/core/src/test/java/org/apache/ignite/testframework/junits/multijvm/IgniteProcessProxy.java
 
b/modules/core/src/test/java/org/apache/ignite/testframework/junits/multijvm/IgniteProcessProxy.java
index 3b06a49b4b3..8ba65c70433 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/testframework/junits/multijvm/IgniteProcessProxy.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/testframework/junits/multijvm/IgniteProcessProxy.java
@@ -76,6 +76,7 @@ import org.apache.ignite.internal.IgniteEx;
 import org.apache.ignite.internal.IgniteInterruptedCheckedException;
 import org.apache.ignite.internal.binary.BinaryMarshaller;
 import org.apache.ignite.internal.cluster.IgniteClusterEx;
+import org.apache.ignite.internal.management.IgniteCommandRegistry;
 import org.apache.ignite.internal.processors.cache.GridCacheUtilityKey;
 import org.apache.ignite.internal.processors.cache.IgniteInternalCache;
 import org.apache.ignite.internal.util.GridJavaProcess;
@@ -555,6 +556,11 @@ public class IgniteProcessProxy implements IgniteEx {
         throw new UnsupportedOperationException("Operation isn't supported 
yet.");
     }
 
+    /** {@inheritDoc} */
+    @Override public IgniteCommandRegistry commands() {
+        throw new UnsupportedOperationException("Operation isn't supported 
yet.");
+    }
+
     /** {@inheritDoc} */
     @Override public IgniteCompute compute() {
         throw new UnsupportedOperationException("Operation isn't supported 
yet.");

Reply via email to