public void AddPermissionInfo(PermissionInfo permissionInfo) { lock (_permissionInfos) { int capacity = 1; if (_permissionInfos != null) { capacity = _permissionInfos.Length + 1; } PermissionInfo[] tmp = new PermissionInfo[capacity]; if (_permissionInfos != null) { _permissionInfos.CopyTo(tmp, 0); } tmp[capacity - 1] = permissionInfo; _permissionInfos = tmp; } }
internal bool TrySetPermission(object item) { bool result = false; permission permission = item as permission; if (permission != null) { result = true; StringBuilder txt = new StringBuilder(); permission.Text.Each(s => { txt.Append(s); }); PermissionInfo info = new PermissionInfo(); info.Text = txt.ToString(); info.Cref = permission.cref; AddPermissionInfo(info); } return(result); }