public void Execute(Selection selection, string[] args, AbstractTableWriter writer)
        {
            if (args == null || args.Length != 3)
            {
                return;
            }

            var s = args[0].Split(new[] { "::" }, StringSplitOptions.RemoveEmptyEntries);

            if (s.Length != 2)
            {
                return;
            }

            var query = QueryParser.Parse(args[0]);

            if (query is FilterQueryUnsupportedParserFeature feature)
            {
                UnsupportedQueryParserFeatureHelper.Handle(selection, feature, args[1], writer);
                return;
            }

            var sub = selection.Create(new[] { query }, Path.GetFileNameWithoutExtension(args[1]), false);

            writer.WriteTable(args[2], sub.GetDocumentGuidAndDisplaynamesAsDataTable());
        }
        public void Execute(Selection selection, string[] args, AbstractTableWriter writer)
        {
            if (args.Length != 1)
            {
                return;
            }

            var query = QueryParser.Parse(args[0]);

            if (!(query is FilterQueryUnsupportedParserFeature))
            {
                return;
            }

            var selections =
                UnsupportedQueryParserFeatureHelper.Handle(selection, (FilterQueryUnsupportedParserFeature)query);

            if (selections == null)
            {
                return;
            }

            foreach (var sub in selections)
            {
                writer.WriteTable(sub.Displayname, sub.GetDocumentGuidAndDisplaynamesAsDataTable());
            }
        }
Пример #3
0
        public void Execute(Selection selection, string[] args, AbstractTableWriter writer)
        {
            if (args == null || args.Length < 1)
            {
                return;
            }

            var dt = new DataTable();

            dt.Columns.Add(Resources.Query, typeof(string));
            dt.Columns.Add(Resources.Frequency, typeof(double));

            dt.BeginLoadData();
            if (args[0].StartsWith("FILE:"))
            {
                var lines = File.ReadAllLines(args[0].Replace("FILE:", string.Empty), Configuration.Encoding);
                foreach (var x in lines.ToDictionary(x => x, QueryParser.Parse))
                {
                    dt.Rows.Add(x.Key, QuickQuery.CountOnWordLevel(selection, new[] { x.Value }));
                }
            }
            else
            {
                var s = args[0].Split(new[] { "::" }, StringSplitOptions.RemoveEmptyEntries);
                if (s.Length != 2)
                {
                    return;
                }

                var query = QueryParser.Parse(args[0]);
                if (query is FilterQueryUnsupportedParserFeature feature)
                {
                    UnsupportedQueryParserFeatureHelper.Handle(selection, feature, args[1], writer);
                    return;
                }

                dt.Rows.Add(args[0], QuickQuery.CountOnWordLevel(selection, new[] { query }));
            }

            dt.EndLoadData();

            writer.WriteTable(selection.Displayname, dt);
        }
Пример #4
0
        public void Execute(Selection selection, string[] args, AbstractTableWriter writer)
        {
            if (args.Length < 2 || args[1].ToLower() == "cluster")
            {
                return;
            }

            var query = QueryParser.Parse(args[0]);

            if (!(query is FilterQueryUnsupportedParserFeature))
            {
                return;
            }

            var selections =
                UnsupportedQueryParserFeatureHelper.Handle(selection, (FilterQueryUnsupportedParserFeature)query);

            if (selections == null)
            {
                return;
            }

            var nargs = new List <string>(args);

            nargs.RemoveAt(0);
            var task   = nargs[0];
            var action = Configuration.GetConsoleAction(task);

            if (action == null)
            {
                return;
            }

            nargs.RemoveAt(0);
            foreach (var s in selections)
            {
                action.Execute(s, nargs.ToArray(), writer);
            }
        }
        public void Execute(Selection selection, string[] args, AbstractTableWriter writer)
        {
            if (args == null || args.Length != 2)
            {
                return;
            }

            Selection sub;

            if (args[0].StartsWith("FILE:"))
            {
                var lines   = File.ReadAllLines(args[0].Replace("FILE:", string.Empty), Configuration.Encoding);
                var queries = lines.Select(QueryParser.Parse);
                sub = queries.Aggregate(selection,
                                        (current, q) => current.Create(new[] { q }, Path.GetFileNameWithoutExtension(args[1]), false));
            }
            else
            {
                var s = args[0].Split(new[] { "::" }, StringSplitOptions.RemoveEmptyEntries);
                if (s.Length != 2)
                {
                    return;
                }

                var query = QueryParser.Parse(args[0]);
                if (query is FilterQueryUnsupportedParserFeature feature)
                {
                    UnsupportedQueryParserFeatureHelper.Handle(selection, feature, args[1], writer);
                    return;
                }

                sub = selection.Create(new[] { query }, Path.GetFileNameWithoutExtension(args[1]), false);
            }

            var export = new ConvertAction();

            export.Execute(sub, new[] { args[1] }, writer);
        }