private static void PrintBase(Base baseToPrint, bool draft) { _log.Info("Print Controller printing Base: " + baseToPrint.Artifact.Name); var trimName = ModelMap.GetBaseFolderName(baseToPrint.TokenType, baseToPrint.TokenUnit, baseToPrint.RepresentationType); _outputFolder = ModelMap.FilePath + ModelMap.BaseFolder + ModelMap.FolderSeparator + trimName + ModelMap.FolderSeparator + ModelMap.Latest; _filePath = _outputFolder + ModelMap.FolderSeparator + trimName + ".docx"; try { Directory.CreateDirectory(_outputFolder); InitWorkingDocument(ModelMap.StyleSource); } catch (Exception ex) { _log.Error("Artifact Output Folder: " + _outputFolder + " cannot be created."); _log.Error(ex); return; } BasePrinter.PrintTokenBase(_document, baseToPrint, false); Utils.InsertCustomWatermark(_document, draft ? ModelMap.DraftWaterMark : ModelMap.WaterMark); Utils.AddFooter(_document, baseToPrint.Artifact.Name); Save(); }