CSharpUML.MainClass.Uml2Code C# (CSharp) Метод

Uml2Code() приватный статический Метод

private static Uml2Code ( IEnumerable paths, string _target ) : void
paths IEnumerable
_target string
Результат void
        private static void Uml2Code(IEnumerable<string> paths, string _target)
        {
            foreach (string path in paths) {
                string target = _target.Length > 0 ? _target + "/" : path + "/codegen/";

                Console.WriteLine (path);
                List<IUmlObject> objects = new List<IUmlObject> ();
                Action<string> processFile = (filename) => {
                    IParser parser = new UmlParser ();
                    objects.AddRange (parser.Parse (filename));
                };
                Files.SearchFiles (path, new string[]{".uml"}, processFile);

                foreach (IUmlObject obj in objects) {
                    List<string> lines = new List<string> ();
                    lines.Add (obj.ToCSharpCode () + "\n");
                    string genfile = target + Packages.GetPackage (obj.Name).Replace (".", "/") + "/" + obj.Name.Clean () + ".cs";
                    Console.WriteLine ("Write: " + genfile);
                    Files.WriteLines (genfile, lines);
                }
            }
        }