internal static UmlClassSpec Convert(CdtSpec cdtSpec) { var umlClassSpec = new UmlClassSpec { Stereotype = "CDT", Name = cdtSpec.Name, TaggedValues = new[] { new UmlTaggedValueSpec("businessTerm", cdtSpec.BusinessTerms), new UmlTaggedValueSpec("definition", cdtSpec.Definition), new UmlTaggedValueSpec("dictionaryEntryName", cdtSpec.DictionaryEntryName) { DefaultValue = GenerateDictionaryEntryNameDefaultValue(cdtSpec) }, new UmlTaggedValueSpec("languageCode", cdtSpec.LanguageCode), new UmlTaggedValueSpec("uniqueIdentifier", cdtSpec.UniqueIdentifier) { DefaultValue = GenerateUniqueIdentifierDefaultValue(cdtSpec) }, new UmlTaggedValueSpec("versionIdentifier", cdtSpec.VersionIdentifier), new UmlTaggedValueSpec("usageRule", cdtSpec.UsageRules), }, }; var dependencySpecs = new List <UmlDependencySpec>(); if (cdtSpec.IsEquivalentTo != null) { dependencySpecs.Add(new UmlDependencySpec { Stereotype = "isEquivalentTo", Target = ((UpccCdt)cdtSpec.IsEquivalentTo).UmlClass, LowerBound = "0", UpperBound = "1", }); } umlClassSpec.Dependencies = dependencySpecs; var attributeSpecs = new List <UmlAttributeSpec>(); if (cdtSpec.Con != null) { attributeSpecs.Add(CdtConSpecConverter.Convert(cdtSpec.Con, cdtSpec.Name)); } if (cdtSpec.Sups != null) { foreach (var cdtSupSpec in cdtSpec.Sups) { attributeSpecs.Add(CdtSupSpecConverter.Convert(cdtSupSpec, cdtSpec.Name)); } } umlClassSpec.Attributes = MakeAttributeNamesUnique(attributeSpecs); return(umlClassSpec); }
internal static UmlClassSpec Convert(MaSpec maSpec) { var umlClassSpec = new UmlClassSpec { Stereotype = "MA", Name = maSpec.Name, }; var associationSpecs = new List <UmlAssociationSpec>(); if (maSpec.Asmas != null) { foreach (var asmaSpec in maSpec.Asmas) { associationSpecs.Add(AsmaSpecConverter.Convert(asmaSpec, maSpec.Name)); } } umlClassSpec.Associations = MakeAssociationNamesUnique(associationSpecs); return(umlClassSpec); }
public IUmlClass UpdateClass(IUmlClass umlClass, UmlClassSpec spec) { UpdateEaUmlClassifier((EaUmlClassifier)umlClass, spec); return(umlClass); }
public IUmlClass CreateClass(UmlClassSpec spec) { return(CreateEaUmlClassifier(spec)); }
internal static UmlClassSpec Convert(AccSpec accSpec) { var umlClassSpec = new UmlClassSpec { Stereotype = "ACC", Name = accSpec.Name, TaggedValues = new[] { new UmlTaggedValueSpec("businessTerm", accSpec.BusinessTerms), new UmlTaggedValueSpec("definition", accSpec.Definition), new UmlTaggedValueSpec("dictionaryEntryName", accSpec.DictionaryEntryName) { DefaultValue = GenerateDictionaryEntryNameDefaultValue(accSpec) }, new UmlTaggedValueSpec("languageCode", accSpec.LanguageCode), new UmlTaggedValueSpec("uniqueIdentifier", accSpec.UniqueIdentifier) { DefaultValue = GenerateUniqueIdentifierDefaultValue(accSpec) }, new UmlTaggedValueSpec("versionIdentifier", accSpec.VersionIdentifier), new UmlTaggedValueSpec("usageRule", accSpec.UsageRules), }, }; var dependencySpecs = new List <UmlDependencySpec>(); if (accSpec.IsEquivalentTo != null) { dependencySpecs.Add(new UmlDependencySpec { Stereotype = "isEquivalentTo", Target = ((UpccAcc)accSpec.IsEquivalentTo).UmlClass, LowerBound = "0", UpperBound = "1", }); } umlClassSpec.Dependencies = dependencySpecs; var attributeSpecs = new List <UmlAttributeSpec>(); if (accSpec.Bccs != null) { foreach (var bccSpec in accSpec.Bccs) { attributeSpecs.Add(BccSpecConverter.Convert(bccSpec, accSpec.Name)); } } umlClassSpec.Attributes = MakeAttributeNamesUnique(attributeSpecs); var associationSpecs = new List <UmlAssociationSpec>(); if (accSpec.Asccs != null) { foreach (var asccSpec in accSpec.Asccs) { associationSpecs.Add(AsccSpecConverter.Convert(asccSpec, accSpec.Name)); } } umlClassSpec.Associations = MakeAssociationNamesUnique(associationSpecs); return(umlClassSpec); }