Пример #1
0
        public override string ToString()
        {
            var filterParameters = new StringBuilder(100);

            if (TransitionType != FadeTransitionType.In)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "t", Formats.EnumValue(TransitionType));
            }

            if (StartSample.HasValue)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "ss", StartSample.GetValueOrDefault());
            }

            if (NumberOfSamples.HasValue)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "ns", NumberOfSamples.GetValueOrDefault());
            }

            if (StartTime.HasValue)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "st", StartTime.GetValueOrDefault());
            }

            if (Duration.HasValue)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "d", Duration.GetValueOrDefault());
            }

            return(FilterUtility.JoinTypeAndParameters(this, filterParameters));
        }
Пример #2
0
        public override string ToString()
        {
            var numberOfResources = InputCount;

            var filterParameters = new StringBuilder(100);

            if (numberOfResources > 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "n", numberOfResources);
            }
            if (NumberOfVideoOut.HasValue)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "v", NumberOfVideoOut.GetValueOrDefault());
            }
            if (NumberOfAudioOut != DefaultAudioOut)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "a", NumberOfAudioOut.GetValueOrDefault());
            }
            if (UnsafeMode)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "unsafe");
            }

            return(FilterUtility.JoinTypeAndParameters(this, filterParameters));
        }
Пример #3
0
        public async Task <List <TableInfo> > GetTables(string filter)
        {
            filter = FilterUtility.ConvertSearchPatternToRegex(filter);
            List <TableInfo> tables = new List <TableInfo>();

            using (var conn = new NpgsqlConnection(dataSourceInfo.ConnectionString))
            {
                await conn.OpenAsync();

                var tableSchema = conn.GetSchema("Tables");
                foreach (DataRow r in tableSchema.Rows)
                {
                    //var schema = r["table_schema"];
                    var table = r["table_name"].ToString();
                    var type  = r["table_type"].ToString();
                    if (Regex.IsMatch(table, filter, RegexOptions.IgnoreCase))
                    {
                        tables.Add(new TableInfo()
                        {
                            TableName = table, TableType = type
                        });
                    }
                }
            }
            return(tables);
        }
Пример #4
0
        public void TestBasicFilterMatch()
        {
            IEnumerable <FilterMatch> result = null;

            result = FilterUtility.Match("Test Data");
            Assert.IsFalse(result.Any());

            result = FilterUtility.Match("I have this new site, check it: evildomain.evil. Tell me if you like it");
            Assert.IsTrue(result.Any());
            Assert.AreEqual(2, result.First().Filter.ID);

            //Test casing
            result = FilterUtility.Match("I have this new site, check it: EVilDOmAiN.evIL. Tell me if you like it");
            Assert.IsTrue(result.Any());
            Assert.AreEqual(2, result.First().Filter.ID);

            var multipleViolations = "Check out my super awesome content [https://www.google.com/some-made-up-markdown-url/](https://www.google.com/url?q=http%3A%2F%2Fwww.evildomain.evil%2F%3Ftrack%3Dvoat%26keyword%3Dsome%2Bkey%2Bword%26charset%3Dutf-8). Do you like?";

            //should return only first match
            result = FilterUtility.Match(multipleViolations);
            Assert.IsTrue(result.Any());
            Assert.AreEqual(3, result.First().Filter.ID);

            //see if match all returns both violations
            result = FilterUtility.Match(multipleViolations, true);
            Assert.AreEqual(2, result.Count());
        }
Пример #5
0
        public override string ToString()
        {
            var filterParameters = new StringBuilder(100);

            if (!string.IsNullOrWhiteSpace(X))
            {
                FilterUtility.ConcatenateParameter(filterParameters, "x", X);
            }
            if (!string.IsNullOrWhiteSpace(Y))
            {
                FilterUtility.ConcatenateParameter(filterParameters, "y", Y);
            }
            if (Eval != OverlayVideoEvalType.Frame)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "eval", Formats.EnumValue(Eval));
            }
            if (Format != OverlayVideoFormatType.Yuv420)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "format", Formats.EnumValue(Format));
            }
            if (EofAction != OverlayEofActionType.Repeat)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "eof_action", Formats.EnumValue(EofAction));
            }
            if (Shortest)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "shortest", 1);
            }
            if (RepeatLast)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "repeatlast", 1);
            }

            return(FilterUtility.JoinTypeAndParameters(this, filterParameters));
        }
Пример #6
0
        public override string ToString()
        {
            var filterParameters = new StringBuilder(100);

            if (!string.IsNullOrWhiteSpace(Expression))
            {
                FilterUtility.ConcatenateParameter(filterParameters, "volume", Expression);
            }
            if (Precision != VolumePrecisionType.Float)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "precision", Formats.EnumValue(Precision));
            }
            if (ReplayGain != VolumeReplayGainType.Drop)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "replaygain", Formats.EnumValue(ReplayGain));
            }
            if (ReplayGainPreamp.HasValue && ReplayGainPreamp.Value > 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "replaygain_preamp", ReplayGainPreamp);
            }
            if (Eval != VolumeExpressionEvalType.Once)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "eval", Formats.EnumValue(Eval));
            }

            return(FilterUtility.JoinTypeAndParameters(this, filterParameters));
        }
Пример #7
0
        public override string ToString()
        {
            var filterParameters = new StringBuilder(100);

            if (!string.IsNullOrWhiteSpace(Expression))
            {
                FilterUtility.ConcatenateParameter(filterParameters, Expression);

                return(FilterUtility.JoinTypeAndParameters(this, filterParameters));
            }

            if (Dimensions.HasValue && Dimensions.Value.Width != 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "w", Dimensions.Value.Width);
            }
            if (Dimensions.HasValue && Dimensions.Value.Height != 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "h", Dimensions.Value.Height);
            }
            if (Offset.HasValue && Offset.Value.X != 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "x", Offset.Value.X);
            }
            if (Offset.HasValue && Offset.Value.Y != 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "y", Offset.Value.Y);
            }
            if (!string.IsNullOrWhiteSpace(Color))
            {
                FilterUtility.ConcatenateParameter(filterParameters, "color", Color);
            }

            return(FilterUtility.JoinTypeAndParameters(this, filterParameters));
        }
Пример #8
0
        public async Task <List <string> > GetDatabases(string filter)
        {
            if (string.IsNullOrWhiteSpace(filter))
            {
                filter = "*";
            }
            List <string> databases = new List <string>();

            filter = FilterUtility.ConvertSearchPatternToRegex(filter);

            using (var conn = new MySqlConnection(ConnectionString))
            {
                await conn.OpenAsync();

                var cmd = conn.CreateCommand();
                cmd.CommandText = "show databases";
                using (var reader = await cmd.ExecuteReaderAsync())
                {
                    while (await reader.ReadAsync())
                    {
                        var dbname = reader[0].ToString();
                        if (Regex.IsMatch(dbname, filter, RegexOptions.IgnoreCase))
                        {
                            databases.Add(dbname);
                        }
                    }
                }
            }
            return(databases);
        }
Пример #9
0
        public EntityHierarchyTree(Session session, TreeViewState state) : base(state)
        {
            useScrollView           = true;
            m_Session               = session;
            m_EntityManager         = session.GetManager <IWorldManager>().EntityManager;
            m_CachedSceneItems      = new Dictionary <SceneGuid, TreeViewItem>();
            m_SceneManager          = m_Session.GetManager <IEditorSceneManagerInternal>();
            m_ComponentCache        = m_Session.GetManager <UnityComponentCacheManager>();
            m_HierarchySearchFilter = FilterUtility.CreateHierarchyFilter(m_EntityManager, string.Empty);
            foldoutOverride         = HandleFoldout;

            m_DroppedOnMethod = new Dictionary <System.Type, DropOnItemAction>
            {
                { typeof(SceneItem), DropUponSceneItem },
                { typeof(EntityItem), DropUponEntityItem },
            };

            m_DroppedBetweenMethod = new Dictionary <System.Type, DropBetweenAction>
            {
                { typeof(HierarchyItem), DropBetweenSceneItems },
                { typeof(SceneItem), DropBetweenRootEntities },
                { typeof(EntityItem), DropBetweenChildrenEntities },
            };

            IdsToExpand = new List <int>();
            Reload();
        }
Пример #10
0
        public override string ToString()
        {
            var filterParameters = new StringBuilder(100);

            if (Start.HasValue && Start > 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "start", Start);
            }
            if (End.HasValue && End > 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "end", End);
            }
            if (StartPts.HasValue && StartPts > 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "start_pts", StartPts);
            }
            if (EndPts.HasValue && EndPts > 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "end_pts", EndPts);
            }
            if (StartFrame.HasValue && StartFrame > 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "start_frame", StartFrame);
            }
            if (EndFrame.HasValue && EndFrame > 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "end_frame", EndFrame);
            }
            if (Duration.HasValue && Duration > 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "duration", Duration);
            }

            return(FilterUtility.JoinTypeAndParameters(this, filterParameters));
        }
Пример #11
0
        public override string ToString()
        {
            var filterParameters = new StringBuilder(100);

            FilterUtility.ConcatenateParameter(filterParameters, "1");

            return(FilterUtility.JoinTypeAndParameters(this, filterParameters));
        }
Пример #12
0
        public void TestBadData()
        {
            IEnumerable <FilterMatch> result = null;

            result = FilterUtility.Match("");
            Assert.IsFalse(result.Any());

            result = FilterUtility.Match(null);
            Assert.IsFalse(result.Any());
        }
Пример #13
0
        public override string ToString()
        {
            var filterParameters = new StringBuilder(100);

            if (Ratio != null)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "sar", Ratio);
            }

            return(FilterUtility.JoinTypeAndParameters(this, filterParameters));
        }
Пример #14
0
        public override string ToString()
        {
            var filterParameters = new StringBuilder(100);

            if (!string.IsNullOrWhiteSpace(Expression))
            {
                FilterUtility.ConcatenateParameter(filterParameters, Expression);
            }

            return(FilterUtility.JoinTypeAndParameters(this, filterParameters));
        }
Пример #15
0
        public override string ToString()
        {
            var filterParameters = new StringBuilder(100);

            if (FrameRate.HasValue)
            {
                FilterUtility.ConcatenateParameter(filterParameters, FrameRate);
            }

            return(FilterUtility.JoinTypeAndParameters(this, filterParameters));
        }
        public HtmlActionResult <SearchModel> Search([FromUri] SearchQuery search)
        {
            IStateQuery           syslogState   = base.GetSyslogState();
            TagMessagesCollection msgCollection = syslogState.GetTagMessages(search.Host, search.Tag);

            //msgCollection.Messages.Sort((x, y) => y.Timestamp.CompareTo(x.Timestamp));
            //TODO: This is stable sort but not in-place => possible memory pressure
            msgCollection.Messages = msgCollection.Messages.OrderByDescending(x => x.Timestamp).ToList();
            SearchModel searchModel = FilterUtility.ApplyFilters(search, msgCollection);

            return(new HtmlActionResult <SearchModel>(Path.Combine(base.GetViewDirectory(), "Search.cshtml"), searchModel));
        }
        public override List <SearcherItem> Search(string query, out float localMaxScore)
        {
            localMaxScore = 0;
            if (!string.IsNullOrEmpty(query))
            {
                var filter = FilterUtility.CreateAddComponentFilter(query);

                MatchFilter = (s, item) =>
                {
                    if (!(item is TypeSearcherItem))
                    {
                        return(false);
                    }

                    return(filter.Keep(item.Name));
                };
            }
            else
            {
                MatchFilter = null;
                return(m_ItemList);
            }

            var finalResults = new List <SearcherItem> {
                null
            };
            var max = new Result();

            // ReSharper disable once RedundantLogicalConditionalExpressionOperand
            if (m_ItemList.Count > 100)
            {
                SearchMultithreaded(query, max, finalResults);
            }
            else
            {
                SearchSingleThreaded(query, max, finalResults);
            }

            localMaxScore = max.maxScore;
            if (max.item != null)
            {
                finalResults[0] = max.item;
            }
            else
            {
                finalResults.RemoveAt(0);
            }

            return(finalResults);
        }
Пример #18
0
        public override string ToString()
        {
            var filterParameters = new StringBuilder(100);

            switch (Option)
            {
            case BlendVideoOptionType.all_expr:
                FilterUtility.ConcatenateParameter(filterParameters, Formats.EnumValue(Option), Formats.EscapeString(Expression));
                break;

            default:
                FilterUtility.ConcatenateParameter(filterParameters, Formats.EnumValue(Option));
                break;
            }

            return(FilterUtility.JoinTypeAndParameters(this, filterParameters));
        }
Пример #19
0
        /// <summary>
        /// 过滤get方式参数(url中参数)
        /// </summary>
        protected void FilterGetArgs(HttpApplication application)
        {
            System.Text.StringBuilder msg = new System.Text.StringBuilder();
            if (application != null)
            {
                String requestUrl = application.Context.Request.Url.AbsoluteUri;
                msg.Append("FilterGetArgs\r\n");
                msg.Append(requestUrl + "\r\n");
                if (requestUrl.IndexOf("?") > 0)
                {
                    NameValueCollection queryCollection = application.Context.Request.QueryString;
                    String queryString = application.Context.Request.Url.Query;
                    msg.Append(queryString + "\r\n");
                    queryString = HttpUtility.UrlDecode(queryString);
                    msg.Append(queryString + "\r\n");
                    if (FilterUtility.IsHasExceptionTags(queryString))
                    {
                        String redirectUrl, queryParams = String.Empty;
                        redirectUrl = requestUrl.Substring(0, requestUrl.IndexOf("?"));

                        foreach (String key in queryCollection.Keys)
                        {
                            if (String.IsNullOrEmpty(key))
                            {
                                continue;
                            }
                            if (FilterUtility.IsHasExceptionTags(key))
                            {
                                continue;
                            }
                            String keyValue = queryCollection[key];
                            keyValue = FilterUtility.FilterExceptionTags(keyValue);

                            queryParams += String.Format("{0}={1}&", key, HttpUtility.UrlEncode(keyValue));
                        }
                        if (!String.IsNullOrEmpty(queryParams))
                        {
                            redirectUrl += "?" + queryParams.TrimEnd(new char[] { '&' });
                        }
                        application.Context.Response.Redirect(redirectUrl);
                    }
                }
            }
            log(msg.ToString());
        }
Пример #20
0
        public override string ToString()
        {
            var filterParameters = new StringBuilder(100);

            if (Dimensions.HasValue && Dimensions.Value.Width > 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "w", Dimensions.GetValueOrDefault().Width);
            }
            if (Dimensions.HasValue && Dimensions.Value.Height > 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "h", Dimensions.GetValueOrDefault().Height);
            }
            if (Interlacing.HasValue && Interlacing != 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "interl", Interlacing);
            }
            if (!string.IsNullOrWhiteSpace(Flags))
            {
                FilterUtility.ConcatenateParameter(filterParameters, "flags", Flags);
            }
            if (InColorMatrix != VideoScalingColorMatrixType.Auto)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "in_color_matrix", Formats.EnumValue(InColorMatrix));
            }
            if (OutColorMatrix != VideoScalingColorMatrixType.Auto)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "out_color_matrix", Formats.EnumValue(OutColorMatrix));
            }
            if (InRange != VideoScalingRangeType.Auto)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "in_range", Formats.EnumValue(InRange, true));
            }
            if (OutRange != VideoScalingRangeType.Auto)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "out_range", Formats.EnumValue(OutRange, true));
            }
            if (ForceAspectRatio != VideoScalingAspectRatioType.Disable)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "force_original_aspect_ratio", Formats.EnumValue(ForceAspectRatio));
            }

            return(FilterUtility.JoinTypeAndParameters(this, filterParameters));
        }
Пример #21
0
        public override string ToString()
        {
            var filterParameters = new StringBuilder(100);

            if (Shadow.Red.Value != 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "rs", Shadow.Red);
            }
            if (Shadow.Green.Value != 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "gs", Shadow.Green);
            }
            if (Shadow.Blue.Value != 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "bs", Shadow.Blue);
            }
            if (Midtone.Red.Value != 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "rm", Midtone.Red);
            }
            if (Midtone.Green.Value != 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "gm", Midtone.Green);
            }
            if (Midtone.Blue.Value != 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "bm", Midtone.Blue);
            }
            if (Highlight.Red.Value != 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "rh", Highlight.Red);
            }
            if (Highlight.Green.Value != 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "gh", Highlight.Green);
            }
            if (Highlight.Blue.Value != 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "bh", Highlight.Blue);
            }

            return(FilterUtility.JoinTypeAndParameters(this, filterParameters));
        }
Пример #22
0
        public override string ToString()
        {
            var filterParameters = new StringBuilder(100);

            if (TransitionType != FadeTransitionType.In)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "t", Formats.EnumValue(TransitionType));
            }

            if (StartFrame.HasValue)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "s", StartFrame.GetValueOrDefault());
            }

            if (NumberOfFrames.HasValue)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "n", NumberOfFrames.GetValueOrDefault());
            }

            if (StartTime.HasValue)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "st", StartTime.GetValueOrDefault());
            }

            if (Duration.HasValue)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "d", Duration.GetValueOrDefault());
            }

            if (Alpha)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "alpha", 1);
            }

            if (!string.IsNullOrWhiteSpace(Color))
            {
                FilterUtility.ConcatenateParameter(filterParameters, "c", Color);
            }

            return(FilterUtility.JoinTypeAndParameters(this, filterParameters));
        }
Пример #23
0
        public override string ToString()
        {
            var filterParameters = new StringBuilder(100);

            if (Inputs.HasValue)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "inputs", Inputs.GetValueOrDefault());
            }

            if (Duration != DurationType.Longest)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "duration", Formats.EnumValue(Duration));
            }

            if (DropoutTransition.HasValue)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "dropout_transition", DropoutTransition.GetValueOrDefault());
            }

            return(FilterUtility.JoinTypeAndParameters(this, filterParameters));
        }
Пример #24
0
        public override string ToString()
        {
            var filterParameters = new StringBuilder(100);

            if (Dimensions.Width != 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "w", Dimensions.Width);
            }
            if (Dimensions.Height != 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "h", Dimensions.Height);
            }
            if (Offset.X != 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "x", Offset.X);
            }
            if (Offset.Y != 0)
            {
                FilterUtility.ConcatenateParameter(filterParameters, "y", Offset.Y);
            }

            return(FilterUtility.JoinTypeAndParameters(this, filterParameters));
        }
Пример #25
0
        /// <summary>
        /// 过滤post表单中参数
        /// </summary>
        protected void FilterPostArgs(HttpApplication application)
        {
            System.Text.StringBuilder msg = new System.Text.StringBuilder();
            msg.Append("FilterPostArgs\r\n");
            if (application != null)
            {
                NameValueCollection formCollection = application.Context.Request.Form;
                foreach (String key in formCollection.Keys)
                {
                    if (FilterUtility.IsHasExceptionTags(key))
                    {
                        application.Context.Response.Redirect("ErrorInfo.aspx?ErroInfo=" + HttpUtility.UrlEncode("提交表单中含有非法字符"));
                    }

                    String keyValue = formCollection[key];
                    if (FilterUtility.IsHasExceptionTags(keyValue))
                    {
                        application.Context.Response.Redirect("ErrorInfo.aspx?ErroInfo=" + HttpUtility.UrlEncode("提交表单中含有非法字符"));
                    }
                }
            }
            log(msg.ToString());
        }
Пример #26
0
        protected override RuleOutcome EvaluateRule(VoatRuleContext context)
        {
            UserSubmission submission = context.PropertyBag.UserSubmission;

            //Check if content matches spam filters
            IEnumerable <FilterMatch> result = null;

            switch (submission.Type)
            {
            case SubmissionType.Link:
                result = FilterUtility.Match(String.Concat(submission.Title, " ", submission.Url));
                break;

            case SubmissionType.Text:
                result = FilterUtility.Match(String.Concat(submission.Title, " ", submission.Content));
                break;
            }
            if (result.Any())
            {
                return(CreateOutcome(RuleResult.Denied, $"Submission does not pass filter: {result.First().Filter.Name}"));
            }

            return(Allowed);
        }