Example #1
0
        public virtual bool RemoveChild(IModelElementInstance element)
        {
            IModelElementInstance    childElement        = GetChild(element);
            ModelElementInstanceImpl elementInstanceImpl = (ModelElementInstanceImpl)element;

            return(elementInstanceImpl.RemoveChildElement(childElement));
        }
        protected internal virtual void PerformRemoveOperation(ModelElementInstanceImpl referenceSourceParentElement, object referenceTargetElement)
        {
            ICollection <IModelElementInstance> referenceSourceChildElements = referenceSourceParentElement.GetChildElementsByType(_referenceSourceType);

            foreach (IModelElementInstance referenceSourceChildElement in referenceSourceChildElements)
            {
                if (GetReferenceTargetElement <TTarget>(referenceSourceChildElement).Equals(referenceTargetElement))
                {
                    referenceSourceParentElement.RemoveChildElement(referenceSourceChildElement);
                }
            }
        }