private void WriteGroupList(PlcSystemBlockGroup plcGroup) { WriteDebug($"WriteGroupList/3 for {plcGroup?.Name}"); foreach (PlcSystemBlockGroup grp in plcGroup?.Groups) { WriteObject(grp); } }
private void WriteGroupList(string path, PlcSystemBlockGroup plcGroup) { WriteDebug($"WriteGroupList/4 for {plcGroup?.Name}"); if (filter != null) { var npath = path + pathDelimeter; foreach (PlcSystemBlockGroup grp in plcGroup?.Groups) { var opath = npath + grp.Name; WriteDebug($"[WriteGroupList] matching the {opath} with {includePattern} and with {excludePattern}"); if (filter.IsMatch(opath)) { WriteObject(grp); } } } else { WriteGroupList(plcGroup); } }
private PlcSystemBlockGroup GetSysGroup(string path, PlcSystemBlockGroupComposition root) { char[] sep = { pathDelimeter }; string[] ugnames = path.Split(sep, StringSplitOptions.RemoveEmptyEntries); PlcSystemBlockGroupComposition ugc = root; PlcSystemBlockGroup grp = null; WriteDebug($"[GetSysGroup] path is {path}"); if (ugnames.Length > 0) { WriteDebug($"[GetSysGroup] root group is {ugnames[0]}"); foreach (String gn in ugnames) { if (ugc != null) { WriteDebug($"[GetSysGroup] group {gn} is finding"); grp = ugc.Find(gn); if (grp != null) { ugc = grp.Groups; WriteDebug($"[GetSysGroup] group {gn} is found"); } else { WriteDebug($"[GetSysGroup] group {gn} is not found"); break; } } else { grp = null; break; } } return(grp); } return(null); }