Ejemplo n.º 1
0
        public void AddData(string sectionName, string sectionValue, string sectionData)
        {
            bool found = false;

            foreach (SecEditSection secSection in Sections)
            {
                if (secSection.Name.Equals(sectionName))
                {
                    found = true;
                    SecEditValuePair secVP = new SecEditValuePair();
                    secVP.Name  = sectionValue;
                    secVP.Value = sectionData;

                    secSection.Entries.Add(secVP);
                }
            }

            if (!found)
            {
                SecEditSection secEditSecion = new SecEditSection(sectionName);

                SecEditValuePair secVP = new SecEditValuePair();
                secVP.Name  = sectionValue;
                secVP.Value = sectionData;

                secEditSecion.Entries.Add(secVP);

                Sections.Add(secEditSecion);
            }
        }
Ejemplo n.º 2
0
        public List <SecEditDiffValueInfo> Compare(SecEditSection OldSecEditSection)
        {
            List <SecEditDiffValueInfo> returnValue = new List <SecEditDiffValueInfo>();

            foreach (SecEditValuePair secItem in Entries)
            {
                bool found      = false;
                bool foundmatch = false;

                SecEditDiffValueInfo DiffItemMatch = new SecEditDiffValueInfo();

                foreach (SecEditValuePair oldsecItem in OldSecEditSection.Entries)
                {
                    if (secItem.Name.ToUpper().Trim().Equals(oldsecItem.Name.ToUpper().Trim()))
                    {
                        if (!secItem.Value.Trim().Equals(oldsecItem.Value.Trim()))
                        {
                            DiffItemMatch.Type    = SecEditDiffValueInfo.UPDATED_POLICY_ITEM;
                            DiffItemMatch.OldItem = oldsecItem;
                            DiffItemMatch.NewItem = secItem;

                            found = true;
                        }
                        else
                        {
                            foundmatch = true;
                            found      = true;
                            break;
                        }
                    }
                }

                if (found && !foundmatch)
                {
                    returnValue.Add(DiffItemMatch);
                }
                else if (!found)
                {
                    SecEditDiffValueInfo DiffItem = new SecEditDiffValueInfo();
                    DiffItem.Type    = SecEditDiffValueInfo.NEW_POLICY_ITEM;
                    DiffItem.NewItem = secItem;

                    returnValue.Add(DiffItem);
                }
            }

            foreach (SecEditValuePair oldsecItem in OldSecEditSection.Entries)
            {
                bool found = false;

                foreach (SecEditValuePair secItem in Entries)
                {
                    if (secItem.Name.ToUpper().Trim().Equals(oldsecItem.Name.ToUpper().Trim()))
                    {
                        found = true;
                    }
                }

                if (!found)
                {
                    SecEditDiffValueInfo DiffItem = new SecEditDiffValueInfo();
                    DiffItem.Type    = SecEditDiffValueInfo.DELETED_POLICY_ITEM;
                    DiffItem.OldItem = oldsecItem;

                    returnValue.Add(DiffItem);
                }
            }

            return(returnValue);
        }