/// <summary>
 /// Updates a CCLibrary to match the given <paramref name="specification"/>.
 /// <param name="ccLibrary">A CCLibrary.</param>
 /// <param name="specification">A new specification for the given CCLibrary.</param>
 /// <returns>The updated CCLibrary. Depending on the implementation, this might be the same updated instance or a new instance!</returns>
 /// </summary>
 public ICcLibrary UpdateCcLibrary(ICcLibrary ccLibrary, CcLibrarySpec specification)
 {
     return(new UpccCcLibrary(UmlPackage.UpdatePackage(((UpccCcLibrary)ccLibrary).UmlPackage, CcLibrarySpecConverter.Convert(specification))));
 }
 /// <summary>
 /// Creates a CCLibrary based on the given <paramref name="specification"/>.
 /// <param name="specification">A specification for a CCLibrary.</param>
 /// <returns>The newly created CCLibrary.</returns>
 /// </summary>
 public ICcLibrary CreateCcLibrary(CcLibrarySpec specification)
 {
     return(new UpccCcLibrary(UmlPackage.CreatePackage(CcLibrarySpecConverter.Convert(specification))));
 }