Beispiel #1
0
        public override void OpenSettings(INIParser parser)
        {
            stringsetname = parser.GetValue("Module", "ReactorStringset");
            var duration_val  = parser.GetValue("Cycle", "Duration");
            var variation_val = parser.GetValue("Cycle", "Variation");

            stringset = StringSetsManager.GetStrings(stringsetname);

            if (!string.IsNullOrEmpty(duration_val))
            {
                duration = int.Parse(duration_val);
            }
            else
            {
                duration = 10;
            }

            if (!string.IsNullOrEmpty(variation_val))
            {
                variation = int.Parse(variation_val);
            }
            else
            {
                variation = 5;
            }
        }
Beispiel #2
0
        static void Body( )
        {
            #region Initialize Program

            Log.Init( );
            InitDirectories( );

            var    setting        = new INIParser("Globals.ini");
            var    AuthData       = "Authenticate";
            string consumerKey    = setting.GetValue(AuthData, "ConsumerKey");
            string consumerSecret = setting.GetValue(AuthData, "CconsumerSecret");
            string accessToken    = setting.GetValue(AuthData, "AccessToken");
            string accessSecret   = setting.GetValue(AuthData, "AccessSecret");
            if (
                string.IsNullOrEmpty(consumerKey) ||
                string.IsNullOrEmpty(consumerSecret) ||
                string.IsNullOrEmpty(accessToken) ||
                string.IsNullOrEmpty(accessSecret))
            {
                Log.Error(LogHeader, "유저 인증 정보를 찾을 수 없습니다. 토큰 발급 창으로 이동합니다.");
                var frm = new Display.Authenticate();
                frm.ShowDialog( );
                if (frm.Result == true)
                {
                }
                else
                {
                    Log.Error(LogHeader, "유저 인증에 실패했습니다. 프로그램을 종료합니다.");
                    Exit( );
                    return;
                }
            }
            else
            {
                //TODO: User가 null일 경우의 대처
                Globals.Instance.Initialize(consumerKey, consumerSecret, accessToken, accessSecret);
            }
            #endregion

            SetDebugParams( );

            Globals.Instance.OwnerID = long.Parse(setting.GetValue("AppInfo", "OwnerID"));
            StringSetsManager.LoadStringsets("Stringsets");
            ModuleManager.Initialize( );
            ModuleManager.LoadAllModules("Modules");

            new Display.AppConsole( ).ShowDialog( );

            foreach (var module in ModuleManager.Modules)
            {
                var parser = new INIParser(Path.Combine("Modules", module.Name + ".ini"));
                module.SaveSettings(parser);
                parser.Save( );
            }
            Exit( );
        }
Beispiel #3
0
        /// <summary>
        /// 새 모듈을 생성합니다.
        /// </summary>
        /// <param name="parser">모듈 INI</param>
        /// <returns></returns>
        public static Module Create(INIParser parser)
        {
            var running = parser.GetValue("Module", "IsRunning");
            var type    = parser.GetValue("Module", "Type");
            var name    = parser.GetValue("Module", "Name");

            Module module = null;

            if (type == typeof(ReactorModule).FullName)
            {
                module = new ReactorModule(name);
            }
            else if (type == typeof(ControllerModule).FullName)
            {
                module = new ControllerModule(name);
            }
            else if (type == typeof(ReflectorModule).FullName)
            {
                module = new ReflectorModule(name);
            }
            else if (type == typeof(SchedulerModule).FullName)
            {
                module = new SchedulerModule(name);
            }
            else if (type == typeof(WeatherModule).FullName)
            {
                module = new WeatherModule(name);
            }
            else if (type == typeof(RegularTweet).FullName)
            {
                module = new RegularTweet(name);
            }
            else
            {
                return(null);
            }

            module.OpenSettings(parser);

            if (!string.IsNullOrEmpty(running))
            {
                module.IsRunning = bool.Parse(running);
            }
            else
            {
                module.IsRunning = true;
            }

            return(module);
        }
Beispiel #4
0
        public override void OpenSettings(INIParser parser)
        {
            stringset = parser.GetValue("Module", "ReactorStringset");

            var expiretime  = parser.GetValue("Expire", "Time");
            var expiredelay = parser.GetValue("Expire", "Delay");

            var starttime = parser.GetValue("TimeLimit", "StartTime");
            var endtime   = parser.GetValue("TimeLimit", "EndTime");

            LoadStringsets(stringset);

            if (!string.IsNullOrEmpty(expiretime))
            {
                ExpireTime = int.Parse(expiretime);
            }
            else
            {
                ExpireTime = 10;
            }

            if (!string.IsNullOrEmpty(expiredelay))
            {
                ExpireDelay = int.Parse(expiredelay);
            }
            else
            {
                ExpireDelay = 5;
            }

            if (!string.IsNullOrEmpty(starttime))
            {
                this.moduleWakeup = TimeSet.FromString(starttime);
            }
            else
            {
                this.moduleWakeup = new TimeSet(-1);
            }

            if (!string.IsNullOrEmpty(endtime))
            {
                this.moduleSleep = TimeSet.FromString(endtime);
            }
            else
            {
                this.moduleSleep = new TimeSet(-1);
            }
        }
Beispiel #5
0
        public override void OpenSettings(INIParser parser)
        {
            var ownerID = parser.GetValue("Module", "OwnerID");

            if (string.IsNullOrEmpty(ownerID))
            {
                IsRunning    = false;
                this.OwnerID = 0;
            }
            else
            {
                this.OwnerID = long.Parse(ownerID);
            }
        }
Beispiel #6
0
        public override void OpenSettings(INIParser parser)
        {
            stringset = parser.GetValue("Module", "ReactorStringset");

            LoadStringsets(stringset);
        }