Ejemplo n.º 1
0
        /// <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);
        }
Ejemplo n.º 2
0
        /// <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);
        }