internal static UmlPackageSpec Convert(PrimLibrarySpec primLibrarySpec)
        {
            var umlPackageSpec = new UmlPackageSpec
            {
                Stereotype   = "PRIMLibrary",
                Name         = primLibrarySpec.Name,
                TaggedValues = new[]
                {
                    new UmlTaggedValueSpec("businessTerm", primLibrarySpec.BusinessTerms),
                    new UmlTaggedValueSpec("copyright", primLibrarySpec.Copyrights),
                    new UmlTaggedValueSpec("owner", primLibrarySpec.Owners),
                    new UmlTaggedValueSpec("reference", primLibrarySpec.References),
                    new UmlTaggedValueSpec("status", primLibrarySpec.Status),
                    new UmlTaggedValueSpec("uniqueIdentifier", primLibrarySpec.UniqueIdentifier)
                    {
                        DefaultValue = GenerateUniqueIdentifierDefaultValue(primLibrarySpec)
                    },
                    new UmlTaggedValueSpec("versionIdentifier", primLibrarySpec.VersionIdentifier),
                    new UmlTaggedValueSpec("baseURN", primLibrarySpec.BaseURN),
                    new UmlTaggedValueSpec("namespacePrefix", primLibrarySpec.NamespacePrefix),
                },
                DiagramType = UmlDiagramType.Class,
            };

            return(umlPackageSpec);
        }
Exemple #2
0
        public IUmlPackage CreatePackage(UmlPackageSpec spec)
        {
            var eaSubPackage = (Package)eaPackage.Packages.AddNew(spec.Name, string.Empty);

            eaSubPackage.Update(); // must update before accessing Package.Element!
            eaSubPackage.ParentID = Id;
            var eaUmlPackage = new EaUmlPackage(eaRepository, eaSubPackage);

            eaUmlPackage.Initialize(spec);
            AddToPackageDiagram(eaSubPackage);
            return(eaUmlPackage);
        }
Exemple #3
0
        public void Initialize(UmlPackageSpec spec)
        {
            eaPackage.Element.Stereotype = spec.Stereotype;
            eaPackage.Update();

            foreach (UmlTaggedValueSpec taggedValueSpec in spec.TaggedValues)
            {
                CreateTaggedValue(taggedValueSpec);
            }

            var diagram = (Diagram)eaPackage.Diagrams.AddNew(spec.Name, spec.DiagramType.ToString());

            diagram.Update();
            eaPackage.Diagrams.Refresh();
        }
Exemple #4
0
        private void Update(UmlPackageSpec spec)
        {
            eaPackage.Element.Stereotype = spec.Stereotype;
            eaPackage.Update();

            foreach (UmlTaggedValueSpec taggedValueSpec in spec.TaggedValues)
            {
                IUmlTaggedValue taggedValue = GetTaggedValue(taggedValueSpec.Name);
                if (taggedValue.IsDefined)
                {
                    taggedValue.Update(taggedValueSpec);
                }
                else
                {
                    CreateTaggedValue(taggedValueSpec);
                }
            }
        }
        public IUmlPackage CreateRootPackage(Path rootLocation, UmlPackageSpec spec)
        {
            var rootLocationPackage = eaRepository.Resolve <Package>(rootLocation);

            if (rootLocationPackage == null)
            {
                throw new ArgumentException("Invalid root location: " + rootLocation);
            }

            var eaPackage = (Package)rootLocationPackage.Packages.AddNew(spec.Name, string.Empty);

            eaPackage.Update();
            eaPackage.ParentID = rootLocationPackage.PackageID;

            var package = new EaUmlPackage(eaRepository, eaPackage);

            package.Initialize(spec);
            return(package);
        }
        internal static UmlPackageSpec Convert(BLibrarySpec bLibrarySpec)
        {
            var umlPackageSpec = new UmlPackageSpec
            {
                Stereotype   = "bLibrary",
                Name         = bLibrarySpec.Name,
                TaggedValues = new[]
                {
                    new UmlTaggedValueSpec("businessTerm", bLibrarySpec.BusinessTerms),
                    new UmlTaggedValueSpec("copyright", bLibrarySpec.Copyrights),
                    new UmlTaggedValueSpec("owner", bLibrarySpec.Owners),
                    new UmlTaggedValueSpec("reference", bLibrarySpec.References),
                    new UmlTaggedValueSpec("status", bLibrarySpec.Status),
                    new UmlTaggedValueSpec("uniqueIdentifier", bLibrarySpec.UniqueIdentifier)
                    {
                        DefaultValue = GenerateUniqueIdentifierDefaultValue(bLibrarySpec)
                    },
                    new UmlTaggedValueSpec("versionIdentifier", bLibrarySpec.VersionIdentifier),
                },
                DiagramType = UmlDiagramType.Package,
            };

            return(umlPackageSpec);
        }
Exemple #7
0
 public IUmlPackage UpdatePackage(IUmlPackage umlPackage, UmlPackageSpec spec)
 {
     ((EaUmlPackage)umlPackage).Update(spec);
     return(umlPackage);
 }