예제 #1
0
        private List <YumlRelationshipBase> GenerateYumlRelationships(ProjectDetail projectDetail, ProjectDetailsCollection projectDetailsCollection, bool newlineForEachRelationship)
        {
            var relationships = new List <YumlRelationshipBase>();
            var detailModel   = GenerateClass(projectDetail);

            foreach (var linkObject in projectDetail.ChildProjects)
            {
                var childModel = GenerateClass(projectDetailsCollection.GetById(linkObject.Id));
                relationships.Add(new SimpleAssociation
                {
                    Parent = detailModel,
                    Child  = childModel
                });
            }

            foreach (var dllReference in projectDetail.References)
            {
                var childModel = GenerateClass(dllReference);
                relationships.Add(new SimpleAssociation
                {
                    Parent = detailModel,
                    Child  = childModel
                });
            }

            return(relationships);
        }
예제 #2
0
 private void GenerateClassDiagramRelationships(ProjectDetail projectDetail, ProjectDetailsCollection parentProjectDetailsCollection, List <YumlRelationshipBase> existingRelationships, bool newlineForEachRelationship)
 {
     AddUnqiueRelationship(existingRelationships, GenerateYumlRelationships(projectDetail, parentProjectDetailsCollection, newlineForEachRelationship));
     foreach (var linkObject in projectDetail.ChildProjects)
     {
         var detail = parentProjectDetailsCollection.GetById(linkObject.Id);
         GenerateClassDiagramRelationships(detail, parentProjectDetailsCollection, existingRelationships, newlineForEachRelationship);
     }
 }