/// <summary> /// Gets the script. /// </summary> /// <param name="forProcessName">for process name</param> /// <param name="withCandidate">with candidate.</param> /// <returns> /// the 'de' tokenised script /// </returns> public string GetScript(BatchProcessName forProcessName, string withCandidate = null) { var batch = Batches.GetBatch(forProcessName); var script = batch.Scripts.First(); var failedType = !It.IsInRange(script.Type, TypeOfBatchScript.Statement); failedType .AsGuard <ArgumentException>($"script should be a statement {forProcessName}"); return(It.Has(withCandidate) ? script.Command.Replace(Token.ForSourceDataStore, withCandidate) : script.Command); }
/// <summary> /// Gets the batch. /// </summary> /// <param name="byName">by Name</param> /// <returns> /// a batch detail /// </returns> public ISQLBatch GetBatch(BatchProcessName byName, BatchOperatingYear andYear = BatchOperatingYear.All) { return(Configured.Batches.FirstOrDefault(x => x.Name == byName && x.OperatingYear == andYear)); }