Beispiel #1
0
        public static FanoutSearchDescriptor Evaluate(string expr)
        {
            try
            {
                var fs_invocation_expr = GetFanoutSearchDescriptorExpression(expr);

                //if we could use LIKQ to match such patterns...
                var fs_callchain = GetFanoutSearchDescriptorCallChain(fs_invocation_expr);

                var fs_desc = ConstructFanoutSearchDescriptor(fs_callchain);
                var checker = new TraverseActionSecurityChecker();

                fs_desc.m_traverseActions.ForEach(_ => checker.Visit(_));

                return(fs_desc);
            }
            catch (LambdaDSLSyntaxErrorException ex)
            {
                throw new FanoutSearchQueryException(ex.Message);
            }
        }
Beispiel #2
0
        private void QueryExpressionSecurityCheck()
        {
            TraverseActionSecurityChecker checker = new TraverseActionSecurityChecker();

            m_traverseActions.ForEach(_ => checker.Visit(_));
        }