protected internal void runTwoScriptBlockCollections(
ScriptBlock[] scriptblocksSet1,
ScriptBlock[] scriptblocksSet2,
PSCmdletBase cmdlet,
object[] parameters)
{
cmdlet.WriteVerbose(cmdlet, "preparing scriptblocks");
var scriptblocks = new List<ScriptBlock>();
try {
if (scriptblocksSet1 != null && scriptblocksSet1.Length > 0)
foreach (var sb in scriptblocksSet1)
scriptblocks.Add(sb);
if (scriptblocksSet2 != null && scriptblocksSet2.Length > 0)
foreach (var sb in scriptblocksSet2)
scriptblocks.Add(sb);
// if (null == scriptblocks || 0 == scriptblocks.Count) {
//
// cmdlet.WriteVerbose(cmdlet, "there is no any StopAction scriptblock");
//
// //throw new Exception("There are no StopAction scriptblocks, define at least one");
// cmdlet.WriteError(
// cmdlet,
// "There are no StopAction scriptblocks, define at least one",
// "NoStopActionScriptblocks",
// ErrorCategory.InvalidArgument,
// true);
// }
// cmdlet.WriteVerbose(cmdlet, "scriptblocks were prepared");
}
catch (Exception eScriptblocksPreparation) {
// cmdlet.WriteVerbose(cmdlet, "Scriptblocks are not going to be run");
//
// cmdlet.WriteVerbose(cmdlet, eScriptblocksPreparation.Message);
cmdlet.WriteError(
cmdlet,
eScriptblocksPreparation.Message,
"ScriptblocksNotPrepared",
ErrorCategory.InvalidOperation,
true);
}
//runScriptBlocks(scriptblocks, cmdlet, false);
try {
// cmdlet.WriteVerbose(cmdlet, "running scriptblocks");
//runScriptBlocks(scriptblocks, cmdlet, false, parameters);
if (null != scriptblocks && 0 < scriptblocks.Count)
runScriptBlocks(scriptblocks, cmdlet, false, parameters);
// cmdlet.WriteVerbose(cmdlet, "Scriptblocks finished successfully");
}
catch (Exception eScriptBlocks) {
// cmdlet.WriteVerbose(cmdlet, "Scriptblocks failed");
//
// cmdlet.WriteVerbose(cmdlet, eScriptBlocks.Message);
cmdlet.WriteError(
cmdlet,
eScriptBlocks.Message,
"ScriptblocksFailed",
ErrorCategory.InvalidResult,
true);
}
}