예제 #1
0
        private IEnumerable <Occurrence> LocateEventReferences(ReferencedPublicObject reference, Program program)
        {
            List <Occurrence> occurrences = new List <Occurrence>();
            XmlNodeList       raised      = program.Source.SelectNodes(
                string.Format("//RaiseEvent/Event/PublicObject[@comp={0} and @obj={1}]",
                              reference.ComponentId, reference.ObjectIsn));

            foreach (XmlNode raise in raised)
            {
                occurrences.Add(new EventOccurence(
                                    new PublicObject(reference.Name, reference.Type, reference.MciFile, reference.LocalId),
                                    program.Project,
                                    program.Name,
                                    program.Source.SelectSingleNode("/Application/ProgramsRepository/Programs/Task[1]/Header/@Description").Value,
                                    true));
            }

            XmlNodeList handled = program.Source.SelectNodes(
                string.Format("//LogicUnit/Event/PublicObject[@comp={0} and @obj={1}]",
                              reference.ComponentId, reference.ObjectIsn));

            foreach (XmlNode handle in handled)
            {
                occurrences.Add(new EventOccurence(
                                    new PublicObject(reference.Name, reference.Type, reference.MciFile, reference.LocalId),
                                    program.Project,
                                    program.Name,
                                    program.Source.SelectSingleNode("/Application/ProgramsRepository/Programs/Task[1]/Header/@Description").Value,
                                    false));
            }

            return(occurrences);
        }
예제 #2
0
        private IEnumerable<Occurrence> LocateEventReferences(ReferencedPublicObject reference, Program program)
        {
            List<Occurrence> occurrences = new List<Occurrence>();
            XmlNodeList raised = program.Source.SelectNodes(
                    string.Format("//RaiseEvent/Event/PublicObject[@comp={0} and @obj={1}]",
                        reference.ComponentId, reference.ObjectIsn));
            foreach (XmlNode raise in raised)
            {
                occurrences.Add(new EventOccurence(
                        new PublicObject(reference.Name, reference.Type, reference.MciFile, reference.LocalId),
                        program.Project,
                        program.Name,
                        program.Source.SelectSingleNode("/Application/ProgramsRepository/Programs/Task[1]/Header/@Description").Value,
                        true));
            }

            XmlNodeList handled = program.Source.SelectNodes(
                    string.Format("//LogicUnit/Event/PublicObject[@comp={0} and @obj={1}]",
                        reference.ComponentId, reference.ObjectIsn));
            foreach (XmlNode handle in handled)
            {
                occurrences.Add(new EventOccurence(
                        new PublicObject(reference.Name, reference.Type, reference.MciFile, reference.LocalId),
                        program.Project,
                        program.Name,
                        program.Source.SelectSingleNode("/Application/ProgramsRepository/Programs/Task[1]/Header/@Description").Value,
                        false));
            }

            return occurrences;
        }
예제 #3
0
        private IEnumerable <Occurrence> LocateModelReferences(ReferencedPublicObject reference, Program program)
        {
            List <Occurrence> occurrences = new List <Occurrence>();

            /*XmlNodeList hits = program.SelectNodes(
             *      string.Format("//PropertyList/Model[@comp={0} and @obj={1}]",
             *          reference.ComponentId, reference.ObjectIsn));
             *
             * foreach (XmlNode hit in hits)
             * {
             *  occurrences.Add(new ModelOccurence(
             *          new PublicObject(reference.Name, reference.Type, reference.MciFile),
             *          project,
             *          programFile.Name,
             *          BuildModelUsagePath(program, hit)));
             * }*/
            return(occurrences);
        }
예제 #4
0
        private IEnumerable <Occurrence> LocateReferences(ReferencedPublicObject reference, Program program)
        {
            List <Occurrence> occurrences = new List <Occurrence>();

            switch (reference.Type)
            {
            case ObjectType.DataSource:
                occurrences.AddRange(LocateDataSourceReferences(reference, program));
                break;

            case ObjectType.Event:
                occurrences.AddRange(LocateEventReferences(reference, program));
                break;

            case ObjectType.Model:
                occurrences.AddRange(LocateModelReferences(reference, program));
                break;

            case ObjectType.Program:
                occurrences.AddRange(LocateProgramReferences(reference, program));
                break;
            }
            return(occurrences);
        }
예제 #5
0
        private IEnumerable <Occurrence> LocateProgramReferences(ReferencedPublicObject reference, Program program)
        {
            List <Occurrence> occurrences = new List <Occurrence>();

            return(occurrences);
        }
예제 #6
0
 private IEnumerable<Occurrence> LocateDataSourceReferences(ReferencedPublicObject reference, Program program)
 {
     List<Occurrence> occurrences = new List<Occurrence>();
     return occurrences;
 }
예제 #7
0
 private IEnumerable<Occurrence> LocateReferences(ReferencedPublicObject reference, Program program)
 {
     List<Occurrence> occurrences = new List<Occurrence>();
     switch (reference.Type)
     {
         case ObjectType.DataSource:
             occurrences.AddRange(LocateDataSourceReferences(reference, program));
             break;
         case ObjectType.Event:
             occurrences.AddRange(LocateEventReferences(reference, program));
             break;
         case ObjectType.Model:
             occurrences.AddRange(LocateModelReferences(reference, program));
             break;
         case ObjectType.Program:
             occurrences.AddRange(LocateProgramReferences(reference, program));
             break;
     }
     return occurrences;
 }
예제 #8
0
        private IEnumerable<Occurrence> LocateModelReferences(ReferencedPublicObject reference, Program program)
        {
            List<Occurrence> occurrences = new List<Occurrence>();
            /*XmlNodeList hits = program.SelectNodes(
                    string.Format("//PropertyList/Model[@comp={0} and @obj={1}]",
                        reference.ComponentId, reference.ObjectIsn));

            foreach (XmlNode hit in hits)
            {
                occurrences.Add(new ModelOccurence(
                        new PublicObject(reference.Name, reference.Type, reference.MciFile),
                        project,
                        programFile.Name,
                        BuildModelUsagePath(program, hit)));
            }*/
            return occurrences;
        }