Exemplo n.º 1
0
        public PolicyInjectionSettingsNode Build()
        {
            PolicyInjectionSettingsNode node           = new PolicyInjectionSettingsNode();
            InjectorCollectionNode      injectorsNode  = new InjectorCollectionNode();
            PolicyCollectionNode        collectionNode = new PolicyCollectionNode();

            node.AddNode(injectorsNode);
            node.AddNode(collectionNode);

            foreach (InjectorData injectorData in settings.Injectors)
            {
                AddInjector(injectorData, injectorsNode);
            }
            foreach (PolicyData policyData in settings.Policies)
            {
                PolicyNode policyNode = new PolicyNode(policyData);

                AddMatchingRules(policyData, policyNode);

                AddHandlers(policyData, policyNode);

                collectionNode.AddNode(policyNode);
            }

            return(node);
        }
Exemplo n.º 2
0
        private void SetDefaultInjectorName()
        {
            InjectorCollectionNode injectorsNode = GetChildNode <InjectorCollectionNode>(node);

            if (injectorsNode != null)
            {
                if (injectorsNode.DefaultInjector != null)
                {
                    settings.Injectors.DefaultInjector = injectorsNode.DefaultInjector.Name;
                }
            }
        }
Exemplo n.º 3
0
        private void AddInjector(InjectorData injectorData, InjectorCollectionNode injectorsNode)
        {
            ConfigurationNode injectorNode =
                NodeCreationService.CreateNodeByDataType(injectorData.GetType(), new object[] { injectorData });

            if (injectorNode == null)
            {
                LogNodeMapError(injectorsNode, injectorData.GetType());
            }
            else
            {
                injectorsNode.AddNode(injectorNode);
            }
        }