Ejemplo n.º 1
0
 public static void InstallUpdate()
 {
     if (ApplicationDeployment.IsNetworkDeployed)
     {
         ApplicationDeployment ad = ApplicationDeployment.CurrentDeployment;
         if (info.UpdateAvailable)
         {
             try
             {
                 ad.Update();
                 if (OnUpdateSuccess != null)
                 {
                     OnUpdateSuccess();
                     OnUpdateFail    = null;
                     OnUpdateSuccess = null;
                 }
             }
             catch (DeploymentDownloadException dde)
             {
                 LoggerManager.Error(dde, "Update deployement failed");
                 if (OnUpdateFail != null)
                 {
                     OnUpdateFail();
                     OnUpdateFail    = null;
                     OnUpdateSuccess = null;
                 }
             }
         }
     }
 }
 /// <summary>
 /// 保存自定义引流标签
 /// </summary>
 /// <param name="productUserId"></param>
 /// <param name="tags"></param>
 /// <returns></returns>
 public ResultModel Save(long productUserId, IList <string> tags)
 {
     if (tags == null || tags.Count > 2)
     {
         return(ResultCode.Error.GetResultModel());
     }
     if (!_yinLiuTagBll.Value.Delete(productUserId))
     {
         return(ResultCode.Error.GetResultModel());
     }
     if (tags.Any())//为空,则代表删除
     {
         var sort = 0;
         foreach (var tag in tags)
         {
             sort++;
             try
             {
                 _yinLiuTagBll.Value.Add(new YinLiuTagEntity()
                 {
                     CreatedTime   = DateTime.Now,
                     Name          = tag,
                     Type          = PublicEnum.YinLiuTagTypeEnum.Custom,
                     ProductUserId = productUserId,
                     Sort          = sort
                 });
             }
             catch (Exception ex)
             {
                 LoggerManager.Error(GetType().Name, "添加引流标签异常", ex);
             }
         }
     }
     return(ResultCode.Success.GetResultModel());
 }
Ejemplo n.º 3
0
        protected override void OnProcess(Action.IAction action)
        {
            KeyboardAction keyboardAction = action as KeyboardAction;

            if (keyboardAction == null)
            {
                return;
            }

            LoggerManager.Debug(action.AutomationActionData);

            HtmlElement element = this.GetData(action) as HtmlElement;

            if (element == null)
            {
                LoggerManager.Error("Element Not Found");
                throw new ElementNoFoundException("Element Not Found", action);
            }

            if (keyboardAction.KeyDown)
            {
                this.Call <HtmlElement>(Down, element);
            }

            if (keyboardAction.KeyUp)
            {
                this.Call <HtmlElement>(Up, element);
            }
        }
Ejemplo n.º 4
0
        protected override void OnProcess(IAction action)
        {
            base.OnProcess(action);

            LoggerManager.Debug(action.AutomationActionData);

            TextAction textAction = action as TextAction;

            HtmlElement element = GetData(action) as HtmlElement;

            if (element == null)
            {
                LoggerManager.Error("Element Not Found");
                throw new ElementNoFoundException("Element Not Found", action);
            }

            string value = null;

            if (!string.IsNullOrEmpty(textAction.Attrbute))
            {
                value = element.GetAttribute(textAction.Attrbute);
            }
            if (!string.IsNullOrEmpty(textAction.AttrbuteRegex))
            {
                Match match = Regex.Match(value, textAction.AttrbuteRegex, RegexOptions.IgnoreCase);
                if (match.Success)
                {
                    value = match.Groups[1].Value;
                }
            }

            this.SaveData <string>(textAction.TextSaveKey, value);
        }
Ejemplo n.º 5
0
        public override async Task Execute()
        {
            if (!await Aria.Start())
            {
                LoggerManager.Fatal("Could not start aria");
                return;
            }

            LoggerManager.Info("Aria2 is up and running");

            var links = await Hltv.GetLinks(true);

            await Hltv.SetProcessing(links.Id);

            foreach (var linkId in links)
            {
                try
                {
                    var result = await Aria.AddUri(new[] { new Uri(linkId.Url) });

                    Storage.SaveLinkId(linkId.Id, links.Id, linkId.Url, result.Value);
                }
                catch (Exception e)
                {
                    LoggerManager.Error(e, "Error adding URI and saving linkId");
                    continue;
                }
            }
        }
Ejemplo n.º 6
0
        protected override void OnProcess(Action.IAction action)
        {
            SendKeyAction sendKeyAction = action as SendKeyAction;

            if (sendKeyAction == null)
            {
                return;
            }

            LoggerManager.Debug(action.AutomationActionData);

            HtmlElement element = this.GetData(action) as HtmlElement;

            if (element == null)
            {
                LoggerManager.Error("Element Not Found");
                throw new ElementNoFoundException("Element Not Found", action);
            }

            this.Call <HtmlElement>(delegate(HtmlElement e)
            {
                e.Focus();
                SendKey(sendKeyAction);
            }, element);
        }
Ejemplo n.º 7
0
        public async virtual Task <T> Get <T>(string url, object data)
        {
            if (data != null)
            {
                var strParams = FormatUrlParams(data);
                if (url.Contains("?"))
                {
                    url += "&" + strParams;
                }
                else
                {
                    url += "?" + strParams;
                }
            }
            HttpClient client = new HttpClient();

            try
            {
                var response = await client.GetAsync(url);

                if (response.IsSuccessStatusCode)
                {
                    var result = await response.Content.ReadAsStringAsync();

                    return(result.ToObject <ResponseModel <T> >().Data);
                }
                LoggerManager.Warn($"调用接口返回失败(get)。{(new { url, input = data, output = response }).ToJson()}", SystemInfo.SystemId, "Api");
                return(default(T));
            }
            catch (Exception ex)
            {
                LoggerManager.Error($"调用接口返回失败(get)。{(new { url, input = data, exception = ex }).ToJson()}", SystemInfo.SystemId, "Api");
                return(default(T));
            }
        }
Ejemplo n.º 8
0
        public override bool Add(OutSideMapEntity entity)
        {
            var description = "添加外部地址映射表";

            try
            {
                var sql = @"INSERT INTO OutSideMap(OutSideUrl,OutSideUrlMd5,UrlType,CreatedTime) VALUES(@OutSideUrl,@OutSideUrlMd5,@UrlType,getdate());";
                IDataParameter[] parameters =
                {
                    new SqlParameter("@OutSideUrl",    SqlDbType.NVarChar, 1024)
                    {
                        Value = entity.OutSideUrl
                    },
                    new SqlParameter("@OutSideUrlMd5", SqlDbType.VarChar, 32)
                    {
                        Value = entity.OutSideUrlMd5
                    },
                    new SqlParameter("@UrlType",       SqlDbType.Int, 4)
                    {
                        Value = entity.UrlType
                    }
                };
                LoggerManager.Debug(GetType().Name, $"{description},sql:{sql}{Environment.NewLine}参数:{entity.SerializeToJSON()}");
                return(DataBaseManager.MainDb().ExecuteNonQuery(sql, parameters).CInt(0, false) > 0);
            }
            catch (Exception ex)
            {
                LoggerManager.Error(GetType().Name, $"{description}异常", ex);
                return(false);
            }
        }
Ejemplo n.º 9
0
        public void AsynchronousSendTask(object o)
        {
            IMessageTree tree = null;

            while (_mActive)
            {
                while (_mQueue.Count == 0 || _mActiveConnection == null || !_mActiveConnection.Connected)
                {
                    if (_mActiveConnection != null && !_mActiveConnection.Connected)
                    {
                        LoggerManager.Warn("AsynchronousSendTask中,Socket关闭");
                    }
                    Thread.Sleep(5);
                }
                lock (_mQueue)
                {
                    tree = _mQueue.Dequeue();
                }
                try
                {
                    SendInternal(tree);
                }
                catch (Exception t)
                {
                    LoggerManager.Error("Error when sending message over TCP socket! Error: {0}", t);
                }
            }
        }
Ejemplo n.º 10
0
        public override async Task Execute()
        {
            var linkId = Storage.GetLinkIdByGid(_gid);

            if (!string.IsNullOrEmpty(_path))
            {
                await Growl.Notify($"Download complete!\n{_path}");
            }

            if (string.IsNullOrEmpty(linkId))
            {
                await RemoveDownloadResult(_gid);

                return;
            }

            if (!await Hltv.SetState(linkId, LinkState.Finished))
            {
                LoggerManager.Error("Error from server for setting link {0} to finished", linkId);
                await ShutdownAriaIfNoLinksLeft();

                return;
            }

            Storage.RemoveLinkId(_gid);
            await RemoveDownloadResult(_gid);
        }
Ejemplo n.º 11
0
        public void OnException(ExceptionContext filterContext)
        {
            Exception exception = filterContext.Exception;

            if (filterContext.ExceptionHandled == true)
            {
                return;
            }
            //filterContext.Exception.Message可获取错误信息

            /*
             * 1、根据对应的HTTP错误码跳转到错误页面
             * 2、先对Action方法里引发的HTTP 404/400错误进行捕捉和处理
             * 3、其他错误默认为HTTP 500服务器错误
             */
            //if (httpException != null && (httpException.GetHttpCode() == 400 || httpException.GetHttpCode() == 404))
            //{
            //    filterContext.HttpContext.Response.StatusCode = 404;
            //    filterContext.HttpContext.Response.WriteFile("~/HttpError/404.html");
            //}
            //else
            //{
            //    filterContext.HttpContext.Response.StatusCode = 500;
            //    filterContext.HttpContext.Response.WriteFile("~/HttpError/500.html");
            //}

            /*---------------------------------------------------------
            * 这里可进行相关自定义业务处理,比如日志记录等
            *  ---------------------------------------------------------*/
            LoggerManager.Error(exception.ToString());
            //设置异常已经处理,否则会被其他异常过滤器覆盖
            filterContext.ExceptionHandled = true;

            //在派生类中重写时,获取或设置一个值,该值指定是否禁用IIS自定义错误。
        }
Ejemplo n.º 12
0
        public override void OnException(ExceptionContext filterContext)
        {
            if (filterContext.ExceptionHandled || !filterContext.HttpContext.IsCustomErrorEnabled)
            {
                return;
            }

            if (new HttpException(null, filterContext.Exception).GetHttpCode() != 500)
            {
                return;
            }

            if (!ExceptionType.IsInstanceOfType(filterContext.Exception))
            {
                return;
            }

            //如果是AJAX请求返回json
            if (filterContext.HttpContext.Request.IsAjaxRequest())
            {
                filterContext.Result = new JsonResult()
                {
                    JsonRequestBehavior = JsonRequestBehavior.AllowGet,
                    Data = new
                    {
                        error   = true,
                        message = filterContext.Exception.Message
                    }
                };
            }
            else
            {
                var controllerName = (string)filterContext.RouteData.Values["controller"];
                var actionName     = (string)filterContext.RouteData.Values["action"];
                var model          = new HandleErrorInfo(filterContext.Exception, controllerName, actionName);

                filterContext.Result = new ViewResult()
                {
                    ViewName   = View,
                    MasterName = Master,
                    ViewData   = new ViewDataDictionary(model),
                    TempData   = filterContext.Controller.TempData
                };
            }

            LoggerManager.Error(filterContext.Exception.Message);
            filterContext.ExceptionHandled = true;
            filterContext.HttpContext.Response.Clear();
            filterContext.HttpContext.Response.StatusCode = 500;

            filterContext.HttpContext.Response.TrySkipIisCustomErrors = true;
        }
Ejemplo n.º 13
0
        private void WriteEndLog(LogMetadata metadata)
        {
            string message;

            if (metadata.ResponseException != null)
            {
                message = string.Format("[{0}] - EXCEPTION - STATUS: {1} - MESSAGE: {2}\r\nStackTrace: {3}", metadata.RequestMethod, metadata.ResponseException.ErrorCode, metadata.ResponseException.ErrorMessage, metadata.ResponseException.Exception.StackTrace);
                LoggerManager.Error(message);
            }

            message = string.Format("[{0}] - END: {1} [Status: {2}]", metadata.RequestMethod, metadata.RequestUri, metadata.ResponseCode);
            LoggerManager.Info(message);
        }
Ejemplo n.º 14
0
        public static IDbConnection GetInstance(String driverType, string connectionStr)
        {
            //这样根据类型确定连接是mysql还是sqlserver
            var type  = Type.GetType(driverType);
            var iconn = Activator.CreateInstance(type, connectionStr) as IDbConnection;

            LoggerManager.Error(null, iconn.ConnectionString + "数据库连接");
            if (iconn == null)
            {
                throw new Exception(" is null");
            }
            return(iconn);
        }
Ejemplo n.º 15
0
        protected override void RunCore(RunArgs args)
        {
            if (args.TryGetFirst(out var type))
            {
                if (!args.TryGetSecondAsInt(out int count))
                {
                    count = 100;
                }
                switch (type)
                {
                case "m":
                    Task.Run((() =>
                    {
                        LoggerManager.Log($"ManagedLeak Work On {Thread.CurrentThread.ManagedThreadId} Begin");
                        try
                        {
                            for (int i = 0; i < count; i++)
                            {
                                ManagedLeak();
                            }
                        } catch (Exception e)
                        {
                            LoggerManager.Error(e);
                        }
                        LoggerManager.Log($"ManagedLeak Work On {Thread.CurrentThread.ManagedThreadId} End");
                    }));
                    break;

                case "n":
                    Task.Run((() =>
                    {
                        LoggerManager.Log($"NativeLeak Work On {Thread.CurrentThread.ManagedThreadId} Begin");

                        try
                        {
                            for (int i = 0; i < count; i++)
                            {
                                NativeLeak($"Prod_{count}");
                            }
                        } catch (Exception e)
                        {
                            LoggerManager.Error(e);
                        }

                        LoggerManager.Log($"NativeLeak Work On {Thread.CurrentThread.ManagedThreadId} End");
                    }));
                    break;
                }
            }
        }
        public void RefreshAccessToken()
        {
            _Downloader.SetAccessCodeAndRequestToken(_AccessCode, (Success) =>
            {
                if (Success == false)
                {
                    string message = "Fail in requesting new Refresh Token and Access Token. Access Code cannot be empty.";
                    _Logger.Error(message);
                }
            });
            _Logger.WriteLine(string.Format("[TokenInfo] Access Token: {0}", _Downloader.GetAccessToken()));
            var ExpiryDate = _Downloader.GetAccessTokenExpiryDate;

            _Logger.WriteLine(string.Format("[TokenInfo] Expiry At: {0} {1}", ExpiryDate.ToShortDateString(), ExpiryDate.ToShortTimeString()));
            _Logger.WriteLine(string.Format("[TokenInfo] Refresh Token: {0}", _Downloader.GetRefreshToken()));
        }
Ejemplo n.º 17
0
        protected async Task RemoveDownloadResult(string gid)
        {
            try
            {
                await Aria.RemoveDownloadResult(gid);

                LoggerManager.Debug($"Removed gid #{gid}");
            }
            catch (Exception ex)
            {
                LoggerManager.Error(ex, "Error removing download result!");
            }
            finally
            {
                await ShutdownAriaIfNoLinksLeft();
            }
        }
Ejemplo n.º 18
0
        private TcpClient CreateConnection(int index)
        {
            Server server = _mClientConfig.Servers[index];

            if (!server.Enabled)
            {
                return(null);
            }

            TcpClient tcpClient = new TcpClient();

            tcpClient.NoDelay        = true;
            tcpClient.ReceiveTimeout = 5 * 1000; // 2 seconds

            string ip   = server.Ip;
            int    port = server.Port;

            LoggerManager.Info("Connecting to server({0}:{1}) ...", ip, port);

            try
            {
                tcpClient.Connect(ip, port);

                if (tcpClient.Connected)
                {
                    LoggerManager.Info("Connected to server({0}:{1}).", ip, port);

                    return(tcpClient);
                }
                LoggerManager.Error("Failed to connect to server({0}:{1}).", ip, port);
            }
            catch (Exception e)
            {
                LoggerManager.Error(
                    "Failed to connect to server({0}:{1}). Error: {2}.",
                    ip,
                    port,
                    e.Message
                    );
            }

            return(null);
        }
Ejemplo n.º 19
0
        public async virtual Task <T> Post <T>(string url, object data)
        {
            HttpClient client = new HttpClient();

            client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));
            try
            {
                var response = await client.PostAsync(url, new StringContent(data.ToJson(), Encoding.UTF8, "application/json"));

                if (response.IsSuccessStatusCode)
                {
                    return((await response.Content.ReadAsStringAsync()).ToObject <ResponseModel <T> >().Data);
                }
                LoggerManager.Warn($"调用接口返回失败(post)。{(new { url, input = data, output = response }).ToJson()}", SystemInfo.SystemId, "Api");
                return(default(T));
            }
            catch (Exception ex)
            {
                LoggerManager.Error($"调用接口返回失败(post)。{(new { url, input = data, exception = ex }).ToJson()}", SystemInfo.SystemId, "Api");
                return(default(T));
            }
        }
Ejemplo n.º 20
0
        private void SetValue(AttributeAction action)
        {
            if (!string.IsNullOrEmpty(action.SetValue))
            {
                HtmlElementCollection elementCollection = GetData(action) as HtmlElementCollection;
                if (elementCollection != null)
                {
                    SetValue(elementCollection, "value", action.SetValue);
                }
                else
                {
                    HtmlElement element = GetData(action) as HtmlElement;
                    if (element == null)
                    {
                        LoggerManager.Error("Element Not Found");
                        throw new ElementNoFoundException("Element Not Found", action);
                    }

                    SetValue(element, "value", action.SetValue);
                }
            }
        }
Ejemplo n.º 21
0
        public override bool Exist(long id)
        {
            var description = "检查外部地址映射表是否存在";

            try
            {
                var sql = @"IF EXISTS(SELECT Id FROM OutSideMap with(nolock) WHERE ID=@Id) BEGIN SELECT 1 END ELSE BEGIN SELECT 0 END";
                IDataParameter[] parameters =
                {
                    new SqlParameter("@Id", SqlDbType.BigInt, 8)
                    {
                        Value = id
                    },
                };
                LoggerManager.Debug(GetType().Name, $"{description},sql:{sql}{Environment.NewLine}参数:id={id}");
                return(DataBaseManager.MainDb().ExecuteScalar(sql, parameters).CInt(0, false) > 0);
            }
            catch (Exception ex)
            {
                LoggerManager.Error(GetType().Name, $"{description}异常", ex);
                return(false);
            }
        }
Ejemplo n.º 22
0
        public override bool Delete(long id)
        {
            var description = "根据id删除外部地址映射表";

            try
            {
                var sql = @"DELETE OutSideMap WHERE Id=@Id";
                IDataParameter[] parameters =
                {
                    new SqlParameter("@Id", SqlDbType.BigInt, 8)
                    {
                        Value = id
                    },
                };
                LoggerManager.Debug(GetType().Name, $"{description}sql:{sql}{Environment.NewLine}参数:id={id}");
                return(DataBaseManager.MainDb().ExecuteNonQuery(sql, parameters).CInt(0, false) > 0);
            }
            catch (Exception ex)
            {
                LoggerManager.Error(GetType().Name, $"{description}异常", ex);
                return(false);
            }
        }
Ejemplo n.º 23
0
        public OutSideMapEntity GetByOutSideUrlMd5(string outSideUrlMd5)
        {
            var description = "根据外部地址查询映射表";

            try
            {
                var sql = @"SELECT * FROM  OutSideMap WITH(NOLOCK) WHERE OutSideUrlMd5=@OutSideUrlMd5";
                IDataParameter[] parameters =
                {
                    new SqlParameter("@OutSideUrlMd5", SqlDbType.VarChar)
                    {
                        Value = outSideUrlMd5
                    },
                };
                LoggerManager.Debug(GetType().Name, $"{description}sql:{sql}{Environment.NewLine}参数:outSideUrlMd5={outSideUrlMd5}");
                return(RPoney.Data.ModelConvertHelper <OutSideMapEntity> .ToModel(DataBaseManager.MainDb().ExecuteFillDataTable(sql, parameters)));
            }
            catch (Exception ex)
            {
                LoggerManager.Error(GetType().Name, $"{description}异常", ex);
                return(null);
            }
        }
Ejemplo n.º 24
0
        public static bool CheckForUpdate()
        {
            if (!System.Diagnostics.Debugger.IsAttached && ApplicationDeployment.IsNetworkDeployed)
            {
                ApplicationDeployment ad = ApplicationDeployment.CurrentDeployment;

                try
                {
                    info = ad.CheckForDetailedUpdate();
                }
                catch (Exception ex)
                {
                    LoggerManager.Error(ex, "Update check failed");
                    return(false);
                }

                if (info.UpdateAvailable)
                {
                    return(true);
                }
            }
            return(false);
        }
Ejemplo n.º 25
0
        public override OutSideMapEntity Get(long id)
        {
            var description = "根据id查询外部地址映射表";

            try
            {
                var sql = @"SELECT * FROM  OutSideMap WITH(NOLOCK) WHERE Id=@Id";
                IDataParameter[] parameters =
                {
                    new SqlParameter("@Id", SqlDbType.BigInt, 8)
                    {
                        Value = id
                    },
                };
                LoggerManager.Debug(GetType().Name, $"{description}sql:{sql}{Environment.NewLine}参数:id={id}");
                return(RPoney.Data.ModelConvertHelper <OutSideMapEntity> .ToModel(DataBaseManager.MainDb().ExecuteFillDataTable(sql, parameters)));
            }
            catch (Exception ex)
            {
                LoggerManager.Error(GetType().Name, $"{description}异常", ex);
                return(null);
            }
        }
Ejemplo n.º 26
0
        protected override void OnProcess(IAction action)
        {
            base.OnProcess(action);

            HtmlElement element = this.GetData(action) as HtmlElement;

            if (element == null)
            {
                LoggerManager.Error("Element Not Found");
                throw new ElementNoFoundException("Element Not Found", action);
            }

            LoggerManager.Debug(action.AutomationActionData);

            ClickAction clickAction = action as ClickAction;

            if (clickAction == null)
            {
                return;
            }

            if (clickAction.Click)
            {
                LoggerManager.Debug("Trigger Click");
                this.Call <HtmlElement>(Click, element);
            }
            if (clickAction.ClickNew)
            {
                LoggerManager.Debug("Trigger ClickNew");
                this.Call <HtmlElement>(ClickNew, element);
            }
            if (clickAction.MouseClick)
            {
                LoggerManager.Debug("Trigger MouseClick");
                this.Call <HtmlElement>(MouseClick, element);
            }
        }
Ejemplo n.º 27
0
        public override bool Update(OutSideMapEntity entity)
        {
            var description = "更新外部地址映射表";

            try
            {
                var sql = @"UPDATE OutSideMap  SET                                
            OutSideUrl=@OutSideUrl,                                     
            OutSideUrlMd5=@OutSideUrlMd5,                                     
            UrlType=@UrlType,                       
			WHERE Id=@Id ;
                ";
                IDataParameter[] parameters =
                {
                    new SqlParameter("@OutSideUrl",    SqlDbType.NVarChar, 1024)
                    {
                        Value = entity.OutSideUrl
                    },
                    new SqlParameter("@OutSideUrlMd5", SqlDbType.VarChar, 32)
                    {
                        Value = entity.OutSideUrlMd5
                    },
                    new SqlParameter("@UrlType",       SqlDbType.Int, 4)
                    {
                        Value = entity.UrlType
                    }
                };
                LoggerManager.Debug(GetType().Name, $"{description},sql:{sql}{Environment.NewLine}参数:{entity.SerializeToJSON()}");
                return(DataBaseManager.MainDb().ExecuteNonQuery(sql, parameters).CInt(0, false) > 0);
            }
            catch (Exception ex)
            {
                LoggerManager.Error(GetType().Name, $"{description}异常", ex);
                return(false);
            }
        }
Ejemplo n.º 28
0
        protected override void OnProcess(Action.IAction action)
        {
            ScrollAction scrollAction = action as ScrollAction;

            if (scrollAction == null)
            {
                return;
            }

            LoggerManager.Debug(action.AutomationActionData);

            // page
            if (scrollAction.Position == Position.None)
            {
                return;
            }

            InitScroll();

            this.period = scrollAction.Period;

            if (scrollAction.Position == Position.PageBottom)
            {
                bottom = GetMaxPosition();
            }
            else if (scrollAction.Position == Position.Middle)
            {
                bottom = GetMaxPosition();
                bottom = bottom / 2;
            }
            else if (scrollAction.Position == Position.Element)
            {
                HtmlElement element = this.GetData(action) as HtmlElement;
                if (element == null)
                {
                    LoggerManager.Error("Element Not Found");
                    throw new ElementNoFoundException("Element Not Found", action);
                }
                bottom = GetY(element);

                if (bottom == 0)
                {
                    bottom = GetYoffset(element);
                }
            }

            if (scrollAction.Factor > 0)
            {
                bottom = bottom / scrollAction.Factor;
            }

            int current = GetY();

            if (bottom == current)
            {
                return;
            }
            else if (bottom > current)
            {
                positive = true;
                bottom  += scrollAction.Offset;
            }
            else
            {
                positive = false;
                bottom  -= scrollAction.Offset;
            }

            timer.Change(this.period, Timeout.Infinite);
        }
Ejemplo n.º 29
0
 public void LBS_RegisterListenerError(string error)
 {
     LoggerManager.Error(error);
     m_PlatformMsgManageModule.TriggerPlatformMessage(PlatformMessageManageModule.LBS_RegisterListenerError, error);
 }
Ejemplo n.º 30
0
        protected override void OnProcess(IAction action)
        {
            base.OnProcess(action);

            LoggerManager.Debug(action.AutomationActionData);

            HtmlElement element = this.GetData(action) as HtmlElement;

            if (element == null)
            {
                LoggerManager.Error("Element Not Found");
                throw new ElementNoFoundException("Element Not Found", action);
            }

            MouseAction mouseAction = action as MouseAction;

            if (mouseAction == null)
            {
                return;
            }

            if (mouseAction.Click)
            {
                LoggerManager.Debug("MouseTask Trigger Click");
                this.Call <HtmlElement>(Click, element);
            }
            if (mouseAction.ClickNew)
            {
                LoggerManager.Debug("MouseTask Trigger ClickNew");
                this.Call <HtmlElement>(ClickNew, element);
            }
            if (mouseAction.MouseClick)
            {
                LoggerManager.Debug("MouseTask Trigger MouseClick");
                this.Call <HtmlElement>(MouseClick, element);
            }
            if (mouseAction.Over)
            {
                LoggerManager.Debug("MouseTask Trigger Mouse Over");
                this.Call <HtmlElement>(Over, element);
            }
            if (mouseAction.OverNew)
            {
                LoggerManager.Debug("MouseTask Trigger Mouse OverNew");
                this.Call <HtmlElement>(OverNew, element);
            }
            if (mouseAction.Down)
            {
                LoggerManager.Debug("MouseTask Trigger Mouse Down");
                this.Call <HtmlElement>(Down, element);
            }
            if (mouseAction.Up)
            {
                LoggerManager.Debug("MouseTask Trigger Mouse Up");
                this.Call <HtmlElement>(Up, element);
            }
            if (mouseAction.Focus)
            {
                LoggerManager.Debug("MouseTask Trigger Mouse Focus");
                this.Call <HtmlElement>(Focus, element);
            }
            if (mouseAction.Move)
            {
                LoggerManager.Debug("MouseTask Trigger Mouse Move");
                this.Call <HtmlElement>(Move, element);
            }
            if (mouseAction.MoveNew)
            {
                LoggerManager.Debug("MouseTask Trigger Mouse MoveNew");
                this.Call <HtmlElement>(MoveNew, element);
            }
            if (mouseAction.MoveEnter)
            {
                LoggerManager.Debug("MouseTask Trigger Mouse MoveEnter");
                this.Call <HtmlElement>(MoveEnter, element);
            }
        }