private bool AcceptChangeCanExecute(object parameter) { ElementName elementName = new ElementName(_element.Fullname); elementName.AddNamePart(Name); return((Name.Length > 0) && (_application.GetElementByFullname(elementName.FullName) == null)); }
public IDsmElement AddElement(string name, string type, int?parentId) { Logger.LogDataModelMessage($"Add element name={name} type={type} parentId={parentId}"); string fullname = name; if (parentId.HasValue) { if (_elementsById.ContainsKey(parentId.Value)) { ElementName elementName = new ElementName(_elementsById[parentId.Value].Fullname); elementName.AddNamePart(name); fullname = elementName.FullName; } } IDsmElement element = FindElementByFullname(fullname); if (element == null) { _lastElementId++; element = AddElement(_lastElementId, name, type, 0, false, parentId, false); } return(element); }
public void GivenAnEmptyElementNameWhenAddPartIsCalledThenItsHasOneNamePart() { ElementName elementName = new ElementName(); elementName.AddNamePart("a"); Assert.AreEqual("a", elementName.FullName); Assert.AreEqual("", elementName.ParentName); Assert.AreEqual("a", elementName.LastNamePart); Assert.AreEqual(1, elementName.NamePartCount); Assert.AreEqual("a", elementName.NameParts[0]); }
public void GivenFilledElementNameWhenAddPartIsCalledThenItsHasOneAdditionalNamePart() { ElementName elementName = new ElementName("a.b"); elementName.AddNamePart("c"); Assert.AreEqual("a.b.c", elementName.FullName); Assert.AreEqual("a.b", elementName.ParentName); Assert.AreEqual("c", elementName.LastNamePart); Assert.AreEqual(3, elementName.NamePartCount); Assert.AreEqual("a", elementName.NameParts[0]); Assert.AreEqual("b", elementName.NameParts[1]); Assert.AreEqual("c", elementName.NameParts[2]); }
private void ImportDsiElement(IDsiElement dsiElement) { IDsmElement parent = null; ElementName elementName = new ElementName(); foreach (string name in new ElementName(dsiElement.Name).NameParts) { elementName.AddNamePart(name); bool isElementLeaf = (dsiElement.Name == elementName.FullName); string elementType = isElementLeaf ? dsiElement.Type : ""; IDsmElement element = _importPolicy.ImportElement(elementName.FullName, name, elementType, parent); parent = element; if (isElementLeaf) { _dsiToDsmMapping[dsiElement.Id] = element.Id; } } }