Ejemplo n.º 1
0
        /// <summary>
        /// Processes operation authorization statement node.
        /// </summary>
        /// <param name="node">The node.</param>
        private void Process_OperationAuthorizationStatement(dynamic node)
        {
            if (node.GetBrand() == "Demand")
            {
                Demand demand = new Demand();

                // Map source location and node to object
                demand.AddMetaInfo(new SourceLocationInfo(node, context));
                context.AddObject(node, demand);

                // OperationContract
                demand.OperationAuthorization = (OperationAuthorization)NameContext.Current.Scope;

                // Text
                demand.Text = node.Text;

                // Rule
                demand.Rule = this.Process(node.Rule);
                demand.Rule.ExpectedType = BuiltInType.Bool;
            }
        }