B2024-006 - Improved memory management when performing the Refresh Transitions Amin Tool by encasing the getting of content information in Using statements. Same change was done for the method used by the Update RO Values Amin tool. #230

Merged
plarsen merged 1 commits from B2024-006_AdminTool_Memory_mangement into Development 2024-02-09 15:52:57 -05:00

View File

@ -665,10 +665,12 @@ namespace VEPROMS.CSLA.Library
{ {
TranFixCount++; TranFixCount++;
itemInfo.MyContent.FixTransitionText(traninfo, itemInfo, "Reason for Change: Transition to Non-Editable Step"); itemInfo.MyContent.FixTransitionText(traninfo, itemInfo, "Reason for Change: Transition to Non-Editable Step");
Content content = Content.Get(itemInfo.MyContent.ContentID); using (Content content = Content.Get(itemInfo.MyContent.ContentID)) //B2024-006 free up content memory when done
content.FixTransitionText(traninfo, true); {
content.Save(); content.FixTransitionText(traninfo, true);
} content.Save();
}
}
} }
if (!forceConvertToText) if (!forceConvertToText)
@ -682,10 +684,12 @@ namespace VEPROMS.CSLA.Library
forceConvertToText = true; forceConvertToText = true;
TranFixCount++; TranFixCount++;
itemInfo.MyContent.FixTransitionText(traninfo, itemInfo, "Reason for Change: Transition to External Procedure using Internal Format"); itemInfo.MyContent.FixTransitionText(traninfo, itemInfo, "Reason for Change: Transition to External Procedure using Internal Format");
Content content = Content.Get(itemInfo.MyContent.ContentID); using (Content content = Content.Get(itemInfo.MyContent.ContentID)) //B2024-006 free up content memory when done
content.FixTransitionText(traninfo, true); {
content.Save(); content.FixTransitionText(traninfo, true);
} content.Save();
}
}
} }
} }
} }
@ -701,9 +705,11 @@ namespace VEPROMS.CSLA.Library
forceConvertToText = true; forceConvertToText = true;
TranFixCount++; TranFixCount++;
itemInfo.MyContent.FixTransitionText(traninfo, itemInfo, "Reason for Change: Transition to Outside Procedure using Internal Format"); itemInfo.MyContent.FixTransitionText(traninfo, itemInfo, "Reason for Change: Transition to Outside Procedure using Internal Format");
Content content = Content.Get(itemInfo.MyContent.ContentID); using (Content content = Content.Get(itemInfo.MyContent.ContentID)) //B2024-006 free up content memory when done
content.FixTransitionText(traninfo, true); {
content.Save(); content.FixTransitionText(traninfo, true);
content.Save();
}
} }
} }
} }
@ -719,9 +725,11 @@ namespace VEPROMS.CSLA.Library
if (newText != oldText || newValue == "?") if (newText != oldText || newValue == "?")
{ {
TranFixCount++; TranFixCount++;
Content content = Content.Get(itemInfo.MyContent.ContentID); using (Content content = Content.Get(itemInfo.MyContent.ContentID)) //B2024-006 free up content memory when done
content.FixTransitionText(traninfo); {
content.Save(); content.FixTransitionText(traninfo);
content.Save();
}
} }
} }
} }
@ -966,24 +974,26 @@ namespace VEPROMS.CSLA.Library
{ {
//ShowDifference(oldText, newText); // debug - display in Visual Studio Output window //ShowDifference(oldText, newText); // debug - display in Visual Studio Output window
ROFixCount++; ROFixCount++;
Content content = Content.Get(itemInfo.MyContent.ContentID); using (Content content = Content.Get(itemInfo.MyContent.ContentID)) //B2024-006 free up content memory when done
if (roval == "?")
{ {
oldText = content.ConvertROToText(rousage, roval, roch.type, origROFst); if (roval == "?")
using (Item myitem = content.ContentItems[0].MyItem) // so that myitem does not stay in cache B2016-153
{ {
myitem.DisposeOfContent = false; // don't dispose of the contents may be needed if more than one RO needs processed - part of B2017-060 oldText = content.ConvertROToText(rousage, roval, roch.type, origROFst);
// B2016-225 (follow through) added more descriptive Annotation Type when RO is converted to text using (Item myitem = content.ContentItems[0].MyItem) // so that myitem does not stay in cache B2016-153
Annotation.MakeAnnotation(myitem, AnnotationType.GetByNameOrCreate("Link Converted To Text"), "", string.Format("RO value ({0}) converted to text", ItemInfo.ConvertToDisplayText(oldText)), null); {
myitem.DisposeOfContent = false; // don't dispose of the contents may be needed if more than one RO needs processed - part of B2017-060
// B2016-225 (follow through) added more descriptive Annotation Type when RO is converted to text
Annotation.MakeAnnotation(myitem, AnnotationType.GetByNameOrCreate("Link Converted To Text"), "", string.Format("RO value ({0}) converted to text", ItemInfo.ConvertToDisplayText(oldText)), null);
}
} }
else
{
content.FixContentText(rousage, roval, roch.type, origROFst);
}
content.UserID = Volian.Base.Library.VlnSettings.UserID;
content.DTS = DateTime.Now;
content.Save();
} }
else
{
content.FixContentText(rousage, roval, roch.type, origROFst);
}
content.UserID = Volian.Base.Library.VlnSettings.UserID;
content.DTS = DateTime.Now;
content.Save();
} }
} }
} }