Exemple #1
0
            private void Inspect()
            {
                if (this.authorizer == null)
                {
                    this.authorizer = this.context.QueryContext.GetApiService <IQueryExpressionAuthorizer>();
                }

                if (this.authorizer != null && !this.authorizer.Authorize(this.context))
                {
                    throw new InvalidOperationException(Resources.InspectionFailed);
                }
            }
Exemple #2
0
        /// <summary>
        /// Initializes a new instance of the DefaultQueryHandler class.
        /// </summary>
        /// <param name="sourcer">The query expression sourcer to use.</param>
        /// <param name="authorizer">The query expression authorizer to use.</param>
        /// <param name="expander">The query expression expander to use.</param>
        /// <param name="processor">The query expression processor to use.</param>
        public DefaultQueryHandler(IQueryExpressionSourcer sourcer,
                                   IQueryExpressionAuthorizer authorizer = null,
                                   IQueryExpressionExpander expander     = null,
                                   IQueryExpressionProcessor processor   = null)
        {
            Ensure.NotNull(sourcer, nameof(sourcer));

            this.authorizer = authorizer;
            this.expander   = expander;
            this.processor  = processor;
            this.sourcer    = sourcer;
        }
Exemple #3
0
            private void Inspect()
            {
                if (authorizer == null)
                {
                    authorizer = context.QueryContext.GetApiService <IQueryExpressionAuthorizer>();
                }

                if (authorizer != null && !authorizer.Authorize(context))
                {
                    throw new SecurityException("The current user does not have permission to query from the requested resource.");
                }
            }
Exemple #4
0
            public QueryExpressionVisitor(QueryContext context,
                                          IQueryExpressionSourcer sourcer,
                                          IQueryExpressionAuthorizer authorizer = null,
                                          IQueryExpressionExpander expander     = null,
                                          IQueryExpressionProcessor processor   = null)
            {
                Ensure.NotNull(sourcer, nameof(sourcer));

                this.context         = new QueryExpressionContext(context);
                this.authorizer      = authorizer;
                this.expander        = expander;
                this.processor       = processor;
                this.sourcer         = sourcer;
                processedExpressions = new Dictionary <Expression, Expression>();
            }
            private void Inspect()
            {
                if (this.authorizer == null)
                {
                    this.authorizer = this.context.QueryContext.GetApiService<IQueryExpressionAuthorizer>();
                }

                if (this.authorizer != null && !this.authorizer.Authorize(this.context))
                {
                    throw new InvalidOperationException(Resources.InspectionFailed);
                }
            }