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); }
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); }
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(); }
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); }
public IUmlPackage UpdatePackage(IUmlPackage umlPackage, UmlPackageSpec spec) { ((EaUmlPackage)umlPackage).Update(spec); return(umlPackage); }