/// <summary> /// this is called by an external install program (innosetup or bash script). /// need to run RunDBPatches independently this is used for the Standalone Installer (and Network installer) /// </summary> /// <returns>true if any patch was installed</returns> public Boolean PatchTheFiles() { Boolean ReturnValue = false; // this can only be called after CheckForRecentPatch if (FListOfNewPatches == null) { throw new Exception("TPatchTools.InstallPatches: need to call CheckForRecentPatch first!"); } foreach (String patch in FListOfNewPatches.GetValueList()) { // apply the patch if (!ApplyPetraPatch(patch)) { TLogging.Log("There is a problem with installing patch " + patch); return(false); } ReturnValue = true; } TLogging.Log("Patching has been finished."); return(ReturnValue); }
/// <summary> /// this is called by an external install program (innosetup or bash script). /// need to run RunDBPatches independently this is used for the Standalone Installer (and Network installer) /// </summary> /// <returns>true if any patch was installed</returns> public Boolean PatchTheFiles() { Boolean ReturnValue = false; // this can only be called after CheckForRecentPatch if (FListOfNewPatches == null) { throw new Exception("TPatchTools.InstallPatches: need to call CheckForRecentPatch first!"); } // todo: RunDBPatch for patches that have not been applied to the database yet, although the binaries have been installed already? // this is probably not necessary for network; it is done by innosetup for standalone; also see RunDBPatches foreach (String patch in FListOfNewPatches.GetValueList()) { // apply the patch if (!ApplyPetraPatch(patch)) { TLogging.Log("There is a problem with installing patch " + patch); return(false); } ReturnValue = true; } TLogging.Log("Patching has been finished."); return(ReturnValue); }