private bool isOwnerElements(AccessMatrixElement matrixElement) { if (isNotEmpty(ownerElements)) { foreach (AccessMatrixElement ownerElement in ownerElements) { if (matrixElement.compareElementPosition(ownerElement)) { return(true); } } } return(false); }
private bool isAdministratorElements(AccessMatrixElement matrixElement) { if (isNotEmpty(administratorElements)) { foreach (AccessMatrixElement administratorElement in administratorElements) { if (matrixElement.compareElementPosition(administratorElement)) { return(true); } } } return(false); }
private void CreateNodes(string[][] conjMatrix) { int conjMatrixLenght = conjMatrix.Length; _nodes = Enumerable .Range(0, conjMatrixLenght) .Select( i => new Node { Label = graphVertexs[i].Name, IsObject = graphVertexs[i].IsObject }) .ToList(); for (int i = 0; i < conjMatrixLenght; i++) { for (int j = 0; j < conjMatrixLenght; j++) { if (conjMatrix[i][j] != "0") { _nodes[i].Linked.Add(_nodes[j]); AccessMatrixElement matrixElement = new AccessMatrixElement(i, j); if (isAdministratorElements(matrixElement)) { _nodes[i].IsAdministrator = true; _nodes[j].IsAdministrator = true; } else if (isOwnerElements(matrixElement)) { _nodes[i].IsOwner = true; _nodes[j].IsOwner = true; } } } } ArrangeNodes(); }
public bool compareElementPosition(AccessMatrixElement element) { return(Row.Equals(element.Row) && Column.Equals(element.Column)); }