Esempio n. 1
0
        private IOrderPolicyExpression applyWrapper <T>(VisitBehaviorsAction configAction)
        {
            _actions.Fill(configAction);

            _lastNodeMatch = ReorderBehaviorsPolicy.FuncForWrapper(typeof(T));

            return(this);
        }
        public void SetUp()
        {
            graph     = new BehaviorGraph();
            lastChain = graph.AddChain();
            nodes     = null;

            policy = new ReorderBehaviorsPolicy();
        }
Esempio n. 3
0
        private IOrderPolicyExpression applyWrapper <T>(VisitBehaviorsAction configAction)
        {
            _configuration.AddConfiguration(configAction, ConfigurationType.Policy);

            _lastNodeMatch = ReorderBehaviorsPolicy.FuncForWrapper(typeof(T));

            return(this);
        }
Esempio n. 4
0
        private IOrderPolicyExpression applyWrapper <T>(Func <BehaviorChain, bool> filter) where T : IActionBehavior
        {
            _configuration.AddConfiguration(new WrapAction <T>(filter));

            _lastNodeMatch = ReorderBehaviorsPolicy.FuncForWrapper(typeof(T));

            return(this);
        }
Esempio n. 5
0
            // Not unit tested and therefore, not real code yet.
            //public void MustBeBeforeBehavior<T>() where T : IActionBehavior
            //{
            //    var policy = new ReorderBehaviorsPolicy(){
            //        WhatMustBeBefore = _lastNodeMatch
            //    };

            //    policy.ThisWrapperMustBeAfter<T>();
            //    _systemPolicies.Add(policy);
            //}

            public void MustBeBeforeAuthorization()
            {
                var policy = new ReorderBehaviorsPolicy()
                {
                    WhatMustBeBefore = _lastNodeMatch
                };

                policy.ThisNodeMustBeAfter <AuthorizationNode>();
                _systemPolicies.Add(policy);
            }
Esempio n. 6
0
        /// <summary>
        /// Apply a new behavior re-ordering rule in order to force behaviors to a certain order.
        /// For example, force Authentication behaviors to always be before Authorization behaviors
        /// </summary>
        /// <param name="configure"></param>
        /// <returns></returns>
        public PoliciesExpression Reorder(Action <ReorderBehaviorsPolicy> configure)
        {
            var policy = new ReorderBehaviorsPolicy();

            configure(policy);

            _configuration.Add(policy, ConfigurationType.Reordering);

            return(this);
        }
Esempio n. 7
0
        /// <summary>
        /// Apply a new behavior re-ordering rule in order to force behaviors to a certain order.
        /// For example, force Authentication behaviors to always be before Authorization behaviors
        /// </summary>
        /// <param name="configure"></param>
        /// <returns></returns>
        public PolicyAdderExpression Reorder(Action <ReorderBehaviorsPolicy> configure)
        {
            var policy = new ReorderBehaviorsPolicy();

            configure(policy);

            Configuration.Reordering.Fill(policy);

            return(this);
        }
Esempio n. 8
0
            public void MustBeBeforeAuthorization()
            {
                var policy = new ReorderBehaviorsPolicy()
                {
                    WhatMustBeBefore = _lastNodeMatch
                };

                policy.ThisNodeMustBeAfter <AuthorizationNode>();
                _configuration.AddConfiguration(policy);
            }