/// <summary> /// Makes a shallow copy of the current DojoMembershipTemplateCollection. /// as the parent object. /// </summary> /// <returns>DojoMembershipTemplateCollection</returns> public DojoMembershipTemplateCollection Clone() { DojoMembershipTemplateCollection clonedDojoMembershipTemplate = new DojoMembershipTemplateCollection(count); lock (this) { foreach (DojoMembershipTemplate item in this) { clonedDojoMembershipTemplate.Add(item); } } return(clonedDojoMembershipTemplate); }
/// <summary> /// Makes a deep copy of the current DojoMembershipTemplate. /// </summary> /// <param name="isolation">Placeholders are used to isolate the /// items in the DojoMembershipTemplateCollection from their children.</param> public DojoMembershipTemplateCollection Copy(bool isolated) { DojoMembershipTemplateCollection isolatedCollection = new DojoMembershipTemplateCollection(count); lock (this) { if (isolated) { for (int i = 0; i < count; i++) { isolatedCollection.Add(DojoMembershipTemplateArray[i].NewPlaceHolder()); } } else { for (int i = 0; i < count; i++) { isolatedCollection.Add(DojoMembershipTemplateArray[i].Copy()); } } } return(isolatedCollection); }