Exemplo n.º 1
0
        private static bool ProcessArgs(string[] args, MailSimOptions options)
        {
            if (args.Length > 0 && args[0] == "/t")
            {
                // Execute smoke test
                var testClass = new MailSimTest(options, args.Length > 1 ? args[1] : null);
                testClass.Execute();
                return false;
            }

            if (args.Length != 1)
            {
                Log.Out(Log.Severity.Error, "", "Invalid arguments");
            }
            else if (!File.Exists(args[0]))
            {
                Log.Out(Log.Severity.Error, "", "Invalid argument, file does not exist");
            }
            else
            {
                return true;
            }

            PrintUsage();
            return false;
        }
Exemplo n.º 2
0
        private static bool ProcessArgs(string[] args, MailSimOptions options)
        {
            if (args.Length > 0 && args[0] == "/t")
            {
                // Execute smoke test
                var testClass = new MailSimTest(options, args.Length > 1 ? args[1] : null);
                testClass.Execute();
                return(false);
            }

            if (args.Length != 1)
            {
                Log.Out(Log.Severity.Error, "", "Invalid arguments");
            }
            else if (!File.Exists(args[0]))
            {
                Log.Out(Log.Severity.Error, "", "Invalid argument, file does not exist");
            }
            else
            {
                return(true);
            }

            PrintUsage();
            return(false);
        }
Exemplo n.º 3
0
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="seq">Sequence file content </param>
        internal ExecuteSequence(MailSimSequence seq, MailSimOptions options)
        {
            typeFuncs[typeof(MailSimOperationsMailSend)] = (oper) => MailSend((MailSimOperationsMailSend)oper);
            typeFuncs[typeof(MailSimOperationsMailDelete)] = (oper) => MailDelete((MailSimOperationsMailDelete)oper);
            typeFuncs[typeof(MailSimOperationsMailReply)] = (oper) => MailReply((MailSimOperationsMailReply)oper);
            typeFuncs[typeof(MailSimOperationsMailForward)] = (oper) => MailForward((MailSimOperationsMailForward)oper);
            typeFuncs[typeof(MailSimOperationsMailMove)] = (oper) => MailMove((MailSimOperationsMailMove)oper);
            typeFuncs[typeof(MailSimOperationsFolderCreate)] = (oper) => FolderCreate((MailSimOperationsFolderCreate)oper);
            typeFuncs[typeof(MailSimOperationsFolderDelete)] = (oper) => FolderDelete((MailSimOperationsFolderDelete)oper);
            typeFuncs[typeof(MailSimOperationsEventMonitor)] = (oper) => EventMonitor((MailSimOperationsEventMonitor)oper);

            sequence = seq;

            if (sequence != null)
            {
                try
                {
                    olMailStore = ProviderFactory.CreateMailStore(null, options);
                }
                catch (Exception)
                {
                    Log.Out(Log.Severity.Error, "Run", "Error encountered during initialization");
                    throw;
                }
            }
        }
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="seq">Sequence file content </param>
        internal ExecuteSequence(MailSimSequence seq, MailSimOptions options)
        {
            typeFuncs[typeof(MailSimOperationsMailSend)]     = (oper) => MailSend((MailSimOperationsMailSend)oper);
            typeFuncs[typeof(MailSimOperationsMailDelete)]   = (oper) => MailDelete((MailSimOperationsMailDelete)oper);
            typeFuncs[typeof(MailSimOperationsMailReply)]    = (oper) => MailReply((MailSimOperationsMailReply)oper);
            typeFuncs[typeof(MailSimOperationsMailForward)]  = (oper) => MailForward((MailSimOperationsMailForward)oper);
            typeFuncs[typeof(MailSimOperationsMailMove)]     = (oper) => MailMove((MailSimOperationsMailMove)oper);
            typeFuncs[typeof(MailSimOperationsFolderCreate)] = (oper) => FolderCreate((MailSimOperationsFolderCreate)oper);
            typeFuncs[typeof(MailSimOperationsFolderDelete)] = (oper) => FolderDelete((MailSimOperationsFolderDelete)oper);
            typeFuncs[typeof(MailSimOperationsEventMonitor)] = (oper) => EventMonitor((MailSimOperationsEventMonitor)oper);

            sequence = seq;

            if (sequence != null)
            {
                try
                {
                    olMailStore = ProviderFactory.CreateMailStore(null, options);
                }
                catch (Exception)
                {
                    Log.Out(Log.Severity.Error, "Run", "Error encountered during initialization");
                    throw;
                }
            }
        }
Exemplo n.º 5
0
        public static IMailStore CreateMailStore(string mailboxName, MailSimOptions options)
        {
            switch (options.ProviderType)
            {
                case MailSimOptionsProviderType.OOM:
                    return new ProvidersOM.MailStoreProviderOM(mailboxName, options.DisableOutlookPrompts);

                case MailSimOptionsProviderType.HTTP:
                    return new ProvidersREST.MailStoreProviderHTTP(options.UserName, options.Password);

                case MailSimOptionsProviderType.SDK:
                    return new ProvidersREST.MailStoreProviderSDK(options.UserName, options.Password);

                default:
                    throw new Exception(string.Format("Unknown provider type: {0}!", options.ProviderType));
            }
        }
Exemplo n.º 6
0
        /// <summary>
        /// Starting main execution engine
        /// </summary>
        /// <param name="args"></param>
        private static void ProcessSequense(string[] args, MailSimOptions options)
        {
            Log.Initialize(args[0]);
            MailSimSequence seq = ConfigurationFile.LoadSequenceFile(args[0]);

            if (seq == null)
            {
                Log.Out(Log.Severity.Error, Process.GetCurrentProcess().ProcessName, "Unable to load sequence XML file {0}", args[0]);
                return;
            }

            ExecuteSequence exeSeq = new ExecuteSequence(seq, options);

            // initializes logging
            Log.LogFileLocation(seq.LogFileLocation);

            exeSeq.Execute();
        }
Exemplo n.º 7
0
        public static IMailStore CreateMailStore(string mailboxName, MailSimOptions options)
        {
            Log.Out(Log.Severity.Info, "CreateMailStore", "Starting execution for provider " + options.ProviderType);

            switch (options.ProviderType)
            {
            case MailSimOptionsProviderType.OOM:
                return(new ProvidersOM.MailStoreProviderOM(mailboxName, options.DisableOutlookPrompts));

            case MailSimOptionsProviderType.HTTP:
                return(new ProvidersREST.MailStoreProviderHTTP(options.UserName, options.Password));

            case MailSimOptionsProviderType.SDK:
                return(new ProvidersREST.MailStoreProviderSDK(options.UserName, options.Password));

            default:
                throw new Exception(string.Format("Unknown provider type: {0}!", options.ProviderType));
            }
        }
Exemplo n.º 8
0
 internal MailSimTest(MailSimOptions options, string mailboxName)
 {
     _options = options;
     _mailboxName = mailboxName;
 }
Exemplo n.º 9
0
        /// <summary>
        /// Starting main execution engine
        /// </summary>
        /// <param name="args"></param>
        private static void ProcessSequense(string[] args, MailSimOptions options)
        {
            Log.Initialize(args[0]);
            MailSimSequence seq = ConfigurationFile.LoadSequenceFile(args[0]);

            if (seq == null)
            {
                Log.Out(Log.Severity.Error, Process.GetCurrentProcess().ProcessName, "Unable to load sequence XML file {0}", args[0]);
                return;
            }

            ExecuteSequence exeSeq = new ExecuteSequence(seq, options);

            // initializes logging
            Log.LogFileLocation(seq.LogFileLocation);

            exeSeq.Execute();
        }
Exemplo n.º 10
0
 internal MailSimTest(MailSimOptions options, string mailboxName)
 {
     _options     = options;
     _mailboxName = mailboxName;
 }