internal static UmlDataTypeSpec Convert(IdSchemeSpec idSchemeSpec) { var umlDataTypeSpec = new UmlDataTypeSpec { Stereotype = "IDSCHEME", Name = idSchemeSpec.Name, TaggedValues = new[] { new UmlTaggedValueSpec("businessTerm", idSchemeSpec.BusinessTerms), new UmlTaggedValueSpec("definition", idSchemeSpec.Definition), new UmlTaggedValueSpec("dictionaryEntryName", idSchemeSpec.DictionaryEntryName) { DefaultValue = GenerateDictionaryEntryNameDefaultValue(idSchemeSpec) }, new UmlTaggedValueSpec("identifierSchemeAgencyIdentifier", idSchemeSpec.IdentifierSchemeAgencyIdentifier), new UmlTaggedValueSpec("identifierSchemeAgencyName", idSchemeSpec.IdentifierSchemeAgencyName), new UmlTaggedValueSpec("modificationAllowedIndicator", idSchemeSpec.ModificationAllowedIndicator), new UmlTaggedValueSpec("pattern", idSchemeSpec.Pattern), new UmlTaggedValueSpec("restrictedPrimitive", idSchemeSpec.RestrictedPrimitive), new UmlTaggedValueSpec("uniqueIdentifier", idSchemeSpec.UniqueIdentifier) { DefaultValue = GenerateUniqueIdentifierDefaultValue(idSchemeSpec) }, new UmlTaggedValueSpec("versionIdentifier", idSchemeSpec.VersionIdentifier), }, }; return(umlDataTypeSpec); }
public IIdScheme UpdateIdScheme(IIdScheme idScheme, IdSchemeSpec specification) { throw new NotImplementedException(); }
public IIdScheme CreateIdScheme(IdSchemeSpec specification) { throw new NotImplementedException(); }
/// <summary> /// Updates a IDSCHEME to match the given <paramref name="specification"/>. /// <param name="idScheme">A IDSCHEME.</param> /// <param name="specification">A new specification for the given IDSCHEME.</param> /// <returns>The updated IDSCHEME. Depending on the implementation, this might be the same updated instance or a new instance!</returns> /// </summary> public IIdScheme UpdateIdScheme(IIdScheme idScheme, IdSchemeSpec specification) { return(new UpccIdScheme(UmlPackage.UpdateDataType(((UpccIdScheme)idScheme).UmlDataType, IdSchemeSpecConverter.Convert(specification)))); }
/// <summary> /// Creates a IDSCHEME based on the given <paramref name="specification"/>. /// <param name="specification">A specification for a IDSCHEME.</param> /// <returns>The newly created IDSCHEME.</returns> /// </summary> public IIdScheme CreateIdScheme(IdSchemeSpec specification) { return(new UpccIdScheme(UmlPackage.CreateDataType(IdSchemeSpecConverter.Convert(specification)))); }
private static string GenerateDictionaryEntryNameDefaultValue(IdSchemeSpec idSchemeSpec) { return(idSchemeSpec.Name); }
private static string GenerateUniqueIdentifierDefaultValue(IdSchemeSpec idSchemeSpec) { return(Guid.NewGuid().ToString()); }