Ejemplo n.º 1
0
 public void AppendRoutingTable(NxSet set)
 {
     foreach (NxSet routingSet in m_RoutingTable)
     {
         if (routingSet.Identifier == set.Identifier)
             return;
     }
     
     m_RoutingTable.Add(set);
 }
Ejemplo n.º 2
0
 public NxRoutingSet(IPolicyChannel channel, NxObjectWriter objectWriter, IResourceManager resourceManager)
 {
     m_objectWriter = objectWriter;
     m_policyChannel = channel;
     m_routingId = channel.Routing.Identifier.ToString();
     m_routingSet = new NxSet(m_routingId);
     m_routingSet.Append(new NxComment("Online routing"));
     m_resourceManager = resourceManager;
     InitialiseObjectLookups();
 }
Ejemplo n.º 3
0
 public NxPolicySet(IPolicySet policySet, ChannelType channelType)
 {
     m_ChannelType = channelType;
     NxSet policies = new NxSet("Policies");            
     List<NxParameter> parameters = NxUtils.GetAttributes(policySet);
     parameters.Add(new NxParameter("Name", policySet));            
     policies.Append(new NxEvaluate("BeforePolicy", parameters));
     policies.Append(new NxInvokeSet("C1C0D5EA-5B82-4607-AE41-D52739AA6AB1"));
     policies.Append(new NxEvaluate("AfterPolicy", parameters));
     AppendSet(policies);
 }
Ejemplo n.º 4
0
        public void AddExceptionHandler(NxSet set)
        {
            foreach (NxActionSet routingSet in m_ExceptionHandlers)
            {
                if (routingSet.Identifier == set.Identifier)
                {
                    routingSet.WriteActionSet(set);
                    return;
                }
            }

            m_ExceptionHandlers.Add(set);
        }
Ejemplo n.º 5
0
 public void AppendSet(NxSet set)
 {
     m_Sets.Add(set);
 }
Ejemplo n.º 6
0
        public void WriteActionSet(NxSet set)
        {
            NxActionSet actionSet = set as NxActionSet;
            if (null == actionSet)
                return;

            foreach (IActionConditionGroup actionCondtionGroup in actionSet.m_ActionMatrixCell.ActionConditionGroups)
            {
                m_ActionMatrixCell.ActionConditionGroups.Add(actionCondtionGroup);
            }
        }
Ejemplo n.º 7
0
        public void WritePolicy(IPolicySet policySet, ICataloguePolicy cataloguePolicy)
        {
            NxParameter catalogueNameParam = new NxParameter("Name", cataloguePolicy);
            List<NxParameter> beforeRuleParams = NxUtils.GetAttributes(cataloguePolicy as IPolicy);
            beforeRuleParams.Add(catalogueNameParam);
            NxEvaluate b4Policy = new NxEvaluate("BeforeRule", beforeRuleParams);
            NxInvokeSet invokeSet = new NxInvokeSet(cataloguePolicy.Identifier.ToString());
            NxEvaluate afterPolicy = new NxEvaluate("AfterRule", catalogueNameParam);

            foreach (NxPolicySet policyset in m_policysets.PolicySets)
            {
                NxSet rulesSet = policyset.GetPolicy(new Guid("{C1C0D5EA-5B82-4607-AE41-D52739AA6AB1}"));
                if (rulesSet == null)
                {
                    rulesSet = new NxSet("C1C0D5EA-5B82-4607-AE41-D52739AA6AB1");
                    rulesSet.Append(b4Policy);
                    rulesSet.Append(invokeSet);
                    rulesSet.Append(afterPolicy);
                    policyset.Policies.Add(rulesSet);
                }
                else
                {
                    rulesSet.Append(b4Policy);
                    rulesSet.Append(invokeSet);
                    rulesSet.Append(afterPolicy);
                }
                policyset.Policies.Add(new NxSet(cataloguePolicy.Identifier.ToString()));
            }
        }