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

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

private CopyFilesForNonProxy ( ) : bool
Результат bool
        private bool CopyFilesForNonProxy()
        {
            var pxeMode = Settings.PxeMode;
            switch (pxeMode)
            {
                case "ipxe":
                    if (!CopyCommand("ipxe", "normal", "ipxe", "", "undionly.kpxe", BootFile)) return false;
                    break;
                case "ipxe_efi32":
                    if (!CopyCommand("ipxe", "normal", "ipxe_efi_32", "", "ipxe.efi", BootFile)) return false;
                    break;
                case "ipxe_efi_snp32":
                    if (!CopyCommand("ipxe", "normal", "ipxe_efi_32", "", "snp.efi", BootFile)) return false;
                    break;
                case "ipxe_efi_snponly32":
                    if (!CopyCommand("ipxe", "normal", "ipxe_efi_32", "", "snponly.efi", BootFile)) return false;
                    break;
                case "ipxe_efi64":
                    if (!CopyCommand("ipxe", "normal", "ipxe_efi_64", "", "ipxe.efi", BootFile)) return false;
                    break;
                case "ipxe_efi_snp64":
                    if (!CopyCommand("ipxe", "normal", "ipxe_efi_64", "", "snp.efi", BootFile)) return false;
                    break;
                case "ipxe_efi_snponly64":
                    if (!CopyCommand("ipxe", "normal", "ipxe_efi_64", "", "snponly.efi", BootFile)) return false;
                    break;
                case "pxelinux":
                    foreach (var file in _syslinuxBiosFiles)
                    {
                        if (file == "pxelinux.0")
                        {
                            if (!CopyCommand("syslinux", "normal", "pxelinux", "", file, BootFile)) return false;
                        }
                        else
                        {
                            if (!CopyCommand("syslinux", "normal", "pxelinux", "", file, file)) return false;
                        }
                    }
                    break;
                case "syslinux_efi32":
                    foreach (var file in _syslinuxEfi32Files)
                    {
                        if (file == "syslinux.efi")
                        {
                            if (!CopyCommand("syslinux", "normal", "syslinux_efi_32", "", file, BootFile)) return false;
                        }
                        else
                        {
                            if (!CopyCommand("syslinux", "normal", "syslinux_efi_32", "", file, file)) return false;
                        }
                    }
                    break;
                case "syslinux_efi64":
                    foreach (var file in _syslinuxEfi64Files)
                    {
                        if (file == "syslinux.efi")
                        {
                            if (!CopyCommand("syslinux", "normal", "syslinux_efi_64", "", file, BootFile)) return false;
                        }
                        else
                        {
                            if (!CopyCommand("syslinux", "normal", "syslinux_efi_64", "", file, file)) return false;
                        }
                    }
                    break;
                case "grub":
                    foreach (var file in _grubEfi64Files)
                    {
                        if (file == "bootx64.efi")
                        {
                            if (!CopyCommand("grub", "", "", "", file, BootFile)) return false;
                        }
                        else
                        {
                            if (!CopyCommand("grub", "", "", "", file, file)) return false;
                        }
                    }
                    break;
                case "winpe_bios32":
                    try
                    {
                        File.Copy(Settings.TftpPath + "boot" + Path.DirectorySeparatorChar + "BCDx86",
                            Settings.TftpPath + "boot" + Path.DirectorySeparatorChar + "BCD",true);
                        new FileOps().SetUnixPermissions(Settings.TftpPath + "boot" + Path.DirectorySeparatorChar + "BCD");
                    }
                    catch (Exception ex)
                    {
                        Logger.Log(ex.Message);
                        return false;
                    }
                    foreach (var file in _winPEBiosFiles)
                    {
                        if (file == "pxeboot.n12")
                        {
                            if (!CopyCommand("winpe", "", "winpe", "", file, BootFile)) return false;
                        }
                        else
                        {
                            if (!CopyCommand("winpe", "", "winpe", "", file, file)) return false;
                        }
                    }
                    break;
                case "winpe_bios64":
                    try
                    {
                        File.Copy(Settings.TftpPath + "boot" + Path.DirectorySeparatorChar + "BCDx64",
                            Settings.TftpPath + "boot" + Path.DirectorySeparatorChar + "BCD",true);
                        new FileOps().SetUnixPermissions(Settings.TftpPath + "boot" + Path.DirectorySeparatorChar + "BCD");
                    }
                    catch (Exception ex)
                    {
                        Logger.Log(ex.Message);
                        return false;
                    }
                    foreach (var file in _winPEBiosFiles)
                    {
                        if (file == "pxeboot.n12")
                        {
                            if (!CopyCommand("winpe", "", "winpe", "", file, BootFile)) return false;
                        }
                        else
                        {
                            if (!CopyCommand("winpe", "", "winpe", "", file, file)) return false;
                        }
                    }
                    break;
                case "winpe_efi32":
                    try
                    {
                        File.Copy(Settings.TftpPath + "boot" + Path.DirectorySeparatorChar + "BCDx86",
                            Settings.TftpPath + "boot" + Path.DirectorySeparatorChar + "BCD",true);
                        new FileOps().SetUnixPermissions(Settings.TftpPath + "boot" + Path.DirectorySeparatorChar + "BCD");
                    }
                    catch (Exception ex)
                    {
                        Logger.Log(ex.Message);
                        return false;
                    }
                    if (!CopyCommand("winpe", "", "winpe_efi_32", "", "bootmgfw.efi", BootFile)) return false;
                    break;
                case "winpe_efi64":
                    try
                    {
                        File.Copy(Settings.TftpPath + "boot" + Path.DirectorySeparatorChar + "BCDx64",
                            Settings.TftpPath + "boot" + Path.DirectorySeparatorChar + "BCD",true);
                        new FileOps().SetUnixPermissions(Settings.TftpPath + "boot" + Path.DirectorySeparatorChar + "BCD");
                    }
                    catch (Exception ex)
                    {
                        Logger.Log(ex.Message);
                        return false;
                    }
                    if (!CopyCommand("winpe", "", "winpe_efi_64", "", "bootmgfw.efi", BootFile)) return false;
                    break;
            }
            return true;
        }