BLL.Workflows.CopyPxeBinaries.CopyFilesForProxy C# (CSharp) Метод

CopyFilesForProxy() приватный Метод

private CopyFilesForProxy ( ) : bool
Результат bool
        private bool CopyFilesForProxy()
        {
            var biosFile = Settings.ProxyBiosFile;
            var efi32File = Settings.ProxyEfi32File;
            var efi64File = Settings.ProxyEfi64File;

            foreach (var file in _ipxeBiosFiles)
            {
                if (!CopyCommand("ipxe", "proxy", "ipxe", "bios", file, file)) return false;
                if(biosFile == "ipxe" && file == "undionly.kpxe")
                    if (!CopyCommand("ipxe", "proxy", "ipxe", "bios", file, BootFile))return false;
            }
            foreach (var file in _ipxeEfiFiles)
            {
                if (!CopyCommand("ipxe", "proxy", "ipxe_efi_32", "efi32", file, file)) return false;
                if ((efi32File == "ipxe_efi" && file == "ipxe.efi") ||
                    (efi32File == "ipxe_efi_snp" && file == "snp.efi")
                    || (efi32File == "ipxe_efi_snponly" && file == "snponly.efi"))
                    if (!CopyCommand("ipxe", "proxy", "ipxe_efi_32", "efi32", file, BootFile)) return false;

            }
            foreach (var file in _ipxeEfiFiles)
            {
                if (!CopyCommand("ipxe", "proxy", "ipxe_efi_64", "efi64", file, file)) return false;
                 if ((efi64File == "ipxe_efi" && file == "ipxe.efi") ||
                    (efi64File == "ipxe_efi_snp" && file == "snp.efi")
                    || (efi64File == "ipxe_efi_snponly" && file == "snponly.efi"))
                     if (!CopyCommand("ipxe", "proxy", "ipxe_efi_64", "efi64", file, BootFile)) return false;
            }

            foreach (var file in _syslinuxBiosFiles)
            {
                if (!CopyCommand("syslinux", "proxy", "pxelinux", "bios", file, file)) return false;
                if(biosFile == "pxelinux" && file == "pxelinux.0")
                    if (!CopyCommand("syslinux", "proxy", "pxelinux", "bios", file, BootFile)) return false;
            }

            foreach (var file in _syslinuxEfi32Files)
            {
                if (!CopyCommand("syslinux", "proxy", "syslinux_efi_32", "efi32", file, file)) return false;
                if (efi32File == "syslinux" && file == "syslinux.efi")
                    if (!CopyCommand("syslinux", "proxy", "syslinux_efi_32", "efi32", file, BootFile)) return false;
            }

            foreach (var file in _syslinuxEfi64Files)
            {
                if (!CopyCommand("syslinux", "proxy", "syslinux_efi_64", "efi64", file, file)) return false;
                if (efi64File == "syslinux" && file == "syslinux.efi")
                    if (!CopyCommand("syslinux", "proxy", "syslinux_efi_64", "efi64", file, BootFile)) return false;
            }

            foreach (var file in _grubEfi64Files)
            {
                if (!CopyCommand("grub", "", "", "efi64", file, file)) return false;
                if (!CopyCommand("grub", "", "", "", file, file)) return false;
                if(efi64File == "grub" && file == "bootx64.efi")
                    if (!CopyCommand("grub", "", "", "efi64", file, BootFile)) return false;
            }

            if (
                new Helpers.FileOps().FileExists(Settings.TftpPath + Path.DirectorySeparatorChar + "boot" +
                                                 Path.DirectorySeparatorChar + "boot.sdi"))
            {
                foreach (var file in _winPEEfiFiles)
                {
                    if (!CopyCommand("winpe", "", "winpe_efi_64", "efi64", file, file)) return false;
                    if (!CopyCommand("winpe", "", "winpe_efi_32", "efi32", file, file)) return false;
                    if (efi64File == "winpe_efi")
                    {
                        if (!CopyCommand("winpe", "", "winpe_efi_64", "efi64", file, BootFile)) return false;
                    }
                    if (efi32File == "winpe_efi")
                    {
                        if (!CopyCommand("winpe", "", "winpe_efi_32", "efi32", file, BootFile)) return false;
                    }

                }
                foreach (var file in _winPEBiosFiles)
                {
                    if (file == "bootmgr.exe")
                    {
                        if (!CopyCommand("winpe", "", "winpe", "", file, file)) return false;
                    }
                    if (!CopyCommand("winpe", "", "winpe", "bios", file, file)) return false;

                    if (biosFile == "winpe" && file == "pxeboot.n12")
                    {
                        if (!CopyCommand("winpe", "", "winpe", "bios", file, BootFile)) return false;
                    }
                }
            }

            return true;
        }