protected override void ProcessRecord() { // ClearもしくはEnumRunSettingがnullの場合、デフォルト設定で再作成 if (_setting == null || Clear) { _setting = new EnumRunSetting(); _setting.SetDefaultParameter(); } if (Range == null && !string.IsNullOrEmpty(Name)) { Range[] ranges = _setting.GetRange(Name); if (ranges != null && ranges.Length > 0) { foreach (Range range in ranges) { range.StartNumber = StartNumber; range.EndNumber = EndNumber; } } else { // 存在しない場合は何もしない return; } } else if (Range != null) { // パイプラインで渡されたRangeと名前が一致している場合に上書き foreach (Range range in Range) { int index = _setting.Ranges.FindIndex(x => x.Name.Equals(range.Name, StringComparison.OrdinalIgnoreCase)); if (index >= 0) { _setting.Ranges[index] = range; } else { // 存在しない場合は何もしない return; } } } DataSerializer.Serialize <EnumRunSetting>(_setting, SettingPath); WriteObject(_setting.Ranges, true); }
protected override void ProcessRecord() { if (Version) { WriteObject("EnumRun - v" + Function.GetVersion()); } else { if (Name == null) { WriteObject(_setting.Ranges, true); } else { WriteObject(_setting.GetRange(Name), true); } } }
protected override void ProcessRecord() { if (Range == null && !string.IsNullOrEmpty(Name)) { foreach (Range range in _setting.GetRange(Name)) { _setting.Ranges.Remove(range); } } else if (Range != null) { // 名前判定せず、インスタンスの中身が一致したら削除 foreach (Range range in Range) { _setting.Ranges.Remove(range); } } DataSerializer.Serialize <EnumRunSetting>(_setting, SettingPath); }
protected override void ProcessRecord() { if (Range == null && !string.IsNullOrEmpty(Name)) { Range[] ranges = _setting.GetRange(Name); if (ranges != null && ranges.Length > 0) { // すでに同じ名前のRangeがある為、追加不可 return; } else { // 名前を指定留守場合は1つずつ追加 _setting.Ranges.Add(new Range() { Name = this.Name, StartNumber = this.StartNumber, EndNumber = this.EndNumber }); } } else if (Range != null) { foreach (Range range in Range) { if (_setting.Ranges.Any(x => x.Name.Equals(range.Name, StringComparison.OrdinalIgnoreCase))) { // すでに同じ名前のRangeがある為、追加不可 return; } else { _setting.Ranges.Add(range); } } } DataSerializer.Serialize <EnumRunSetting>(_setting, SettingPath); WriteObject(_setting); }