Exemplo n.º 1
0
        public static string Create(UMLClassDiagram classDiagram)
        {
            StringBuilder sb = new();

            using (TextWriter tw = new StringWriter(sb, CultureInfo.InvariantCulture))
            {
                ClassDiagramGenerator.Create(classDiagram, tw);
            }

            return(sb.ToString());
        }
Exemplo n.º 2
0
        public void ClassDiagram1()
        {
            UMLInterface i1     = new("", "i1", new List <UMLDataType>());
            UMLClass     class2 = new("", "ns", true, "c1", null, i1);

            class2.Properties.Add(new UMLProperty("prop1", i1, UMLVisibility.Public, ListTypes.List, false, false, false));

            i1.Methods.Add(new UMLMethod("Method1", new VoidDataType(), UMLVisibility.Public, new UMLParameter("parm1", new StringDataType())));
            class2.Methods.Add(new UMLMethod(class2, UMLVisibility.Public));

            class2.Methods.Add(new UMLMethod("Method1", new IntDataType(), UMLVisibility.Public, new UMLParameter("parm1", new StringDataType())));

            UMLClassDiagram d = new UMLClassDiagram("test", "");

            d.DataTypes.Add(i1);
            d.DataTypes.Add(class2);
            _ = PlantUMLGenerator.Create(d);
        }
Exemplo n.º 3
0
        public static void Create(UMLClassDiagram classDiagram, TextWriter writer)
        {
            writer.WriteLine("@startuml");

            writer.Write("title ");
            writer.WriteLine(classDiagram.Title);
            StringBuilder postWriter = new();

            Write(classDiagram.Package.Children, writer, postWriter, classDiagram.DataTypes);
            writer.Write(postWriter.ToString());
            writer.WriteLine();

            foreach (var nc in classDiagram.NoteConnections)
            {
                writer.Write(nc.First);
                writer.Write(' ');
                writer.Write(nc.Connector);
                writer.Write(' ');
                writer.WriteLine(nc.Second);
            }
            writer.WriteLine("@enduml");
        }
Exemplo n.º 4
0
        public async Task ClassDiagramRead1()
        {
            UMLInterface i1     = new("", "i1", new List <UMLDataType>());
            UMLClass     class2 = new("", "ns", true, "c1", null, i1);

            class2.Properties.Add(new UMLProperty("prop1", i1, UMLVisibility.Public, ListTypes.List, false, false, false));

            i1.Methods.Add(new UMLMethod("Method1", new VoidDataType(), UMLVisibility.Public, new UMLParameter("parm1", new StringDataType()),
                                         new UMLParameter("parm2", new BoolDataType()),
                                         new UMLParameter("parm3", new StringDataType(), ListTypes.IReadOnlyCollection)));
            class2.Methods.Add(new UMLMethod(class2, UMLVisibility.Public));

            class2.Methods.Add(new UMLMethod("Method1", new IntDataType(), UMLVisibility.Public, new UMLParameter("parm1", new StringDataType())));

            UMLClassDiagram d = new UMLClassDiagram("test", "");

            d.DataTypes.Add(i1);
            d.DataTypes.Add(class2);

            string s = PlantUMLGenerator.Create(d);

            _ = await UMLClassDiagramParser.ReadString(s);
        }