コード例 #1
0
ファイル: Program.cs プロジェクト: MikeKMiller/weavver
//-------------------------------------------------------------------------------------------
        static void Main(string[] args)
        {
            AppDomain appdomain = AppDomain.CurrentDomain;

            appdomain.UnhandledException += new UnhandledExceptionEventHandler(AppDomain_UnhandledException);

            Environment.ExitCode = 1;

            CommandLineArguments parsedArgs = new CommandLineArguments(args);

            if (parsedArgs["run-cron"] == "true")
            {
                var type  = typeof(ICRON);
                var types = AppDomain.CurrentDomain.GetAssemblies().ToList()
                            .SelectMany(s => s.GetTypes())
                            .Where(p => type.IsAssignableFrom(p) && p.IsClass);

                foreach (var interfacedClassType in types)
                {
                    object o             = Activator.CreateInstance(interfacedClassType);
                    var    cronInterface = o as ICRON;
                    cronInterface.RunCronTasks(parsedArgs);
                }

                Environment.ExitCode = 0;
            }

            if (parsedArgs["ejabberd-extauth"] == "true")
            {
                Weavver.Vendors.ejabberdAuth ejabberAuth = new Weavver.Vendors.ejabberdAuth();
                ejabberAuth.Check();

                Environment.ExitCode = 0;
            }
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: weavver/weavver
        //-------------------------------------------------------------------------------------------
        static void Main(string[] args)
        {
            AppDomain appdomain = AppDomain.CurrentDomain;
               appdomain.UnhandledException += new UnhandledExceptionEventHandler(AppDomain_UnhandledException);

               Environment.ExitCode = 1;

               CommandLineArguments parsedArgs = new CommandLineArguments(args);

               if (parsedArgs["run-cron"] == "true")
               {
                    var type = typeof(ICRON);
                    var types = AppDomain.CurrentDomain.GetAssemblies().ToList()
                        .SelectMany(s => s.GetTypes())
                        .Where(p => type.IsAssignableFrom(p) && p.IsClass);

                    foreach (var interfacedClassType in types)
                    {
                         object o = Activator.CreateInstance(interfacedClassType);
                         var cronInterface = o as ICRON;
                         cronInterface.RunCronTasks(parsedArgs);
                    }

                    Environment.ExitCode = 0;
               }

               if (parsedArgs["ejabberd-extauth"] == "true")
               {
                    Weavver.Vendors.ejabberdAuth ejabberAuth = new Weavver.Vendors.ejabberdAuth();
                    ejabberAuth.Check();

                    Environment.ExitCode = 0;
               }
        }