コード例 #1
0
        public void execute(string filter_field_name, string filter_value)
        {
            //CommandInvoker invoker = new CommandInvoker(svd);

            CreateFilterCommand cmd = new CreateFilterCommand(receiver, filter_field_name, filter_value);

            invoker.add_command(cmd);

            invoker.execute_commands_and_iterate();
        }
コード例 #2
0
        public List <string> execute(
            string idx_field_name,
            string filter_field_name,
            string filter_value
            )
        {
            Field         f_idx   = receiver.findInDict(idx_field_name);
            Field         f_ftr   = receiver.findInDict(filter_field_name);
            List <string> rtn_idx = receiver.get_index(idx_field_name);

            if (rtn_idx == null)
            {
                //CommandInvoker invoker = new CommandInvoker(receiver);

                CreateIndexCommand cmd1 = new CreateIndexCommand(receiver, idx_field_name);
                invoker.add_command(cmd1);

                CreateFilterCommand cmd2 = new CreateFilterCommand(receiver, filter_field_name, filter_value);
                invoker.add_command(cmd2);

                invoker.execute_commands_and_iterate();

                rtn_idx = receiver.get_index(idx_field_name);
            }

            // By now this should either be set from the cache value
            // or recalculated.
            if (rtn_idx != null)
            {
                return(rtn_idx);
            }
            else
            {
                return(null); // throw exception
            }
        }