Пример #1
0
        public override CommandResult Execute()
        {
            CommandResult result = new CommandResult(Command, Args);

            if (Shell.CurrentFolder == null)
            {                
                return CommandResult.CreateError(Command, Args, "This folder does not contain any messages");
            }

            
            List<IMessage> newMsgs = new List<IMessage>();
            Shell.Client.RequestManager.SubmitAndWait(new MessageListRequest(Shell.CurrentFolder, null), false);                        
            Shell.Client.RequestManager.SubmitAndWait(new SearchRequest(Shell.CurrentFolder, new SearchCriteria(true), 
                delegate(IRequest req)
                    {
                        SearchProcessor sp = req.GetProcessorAsType<SearchProcessor>();
                        newMsgs.AddRange(sp.Messages);
                        
                    }), false);
            

            foreach (IMessage msg in newMsgs)
                Console.WriteLine(msg.UID);

            ColorConsole.WriteLine("\n^11:00{0} new message(s) found\n", newMsgs.Count);

            return result;
        }
Пример #2
0
        public override CommandResult Execute()
        {
            CommandResult result = new CommandResult(Command, Args);

            if (Shell.CurrentFolder == null)
            {
                return(CommandResult.CreateError(Command, Args, "This folder does not contain any messages"));
            }


            List <IMessage> newMsgs = new List <IMessage>();

            Shell.Client.RequestManager.SubmitAndWait(new MessageListRequest(Shell.CurrentFolder, null), false);
            Shell.Client.RequestManager.SubmitAndWait(new SearchRequest(Shell.CurrentFolder, new SearchCriteria(true),
                                                                        delegate(IRequest req)
            {
                SearchProcessor sp = req.GetProcessorAsType <SearchProcessor>();
                newMsgs.AddRange(sp.Messages);
            }), false);


            foreach (IMessage msg in newMsgs)
            {
                Console.WriteLine(msg.UID);
            }

            ColorConsole.WriteLine("\n^11:00{0} new message(s) found\n", newMsgs.Count);

            return(result);
        }