CoreFiles

public interface CoreFiles

Methods

downloadBytes

CoreDownloadResult downloadBytes(byte[] bytes, String name, boolean waitClose, boolean rewriteFile)

Метод выполняет выгрузку массива байт на клиента.

Parameters:
  • bytes – Массив байт

  • name – Имя файла.

  • waitClose – запустить файл и дождаться его закрытия. Имеет смысл когда используется Electron

  • rewriteFile – Перезаписать файл, если файл с таким же именем существует.

Returns:

Результат выгрузки

downloadFile

CoreDownloadResult downloadFile(File file, String name, boolean waitClose, boolean rewriteFile)

Метод выполняет выгрузку файла на клиента.

Parameters:
  • file – Ссылка на выгружаемый файл.

  • name – Имя файла. Если не задано, будет использовано file.getName()

  • waitClose – запустить файл и дождаться его закрытия. Имеет смысл когда используется Electron

  • rewriteFile – Перезаписать файл, если файл с таким же именем существует.

Throws:
  • ApplicationException – Если что-то пошло не так.

Returns:

Результат выгрузки

downloadStream

CoreDownloadResult downloadStream(InputStream in, String name, boolean waitClose, boolean rewriteFile)

Метод выполняет выгрузку содержимого потока на клиента.

Parameters:
  • in – Поток байт

  • name – Имя файла.

  • waitClose – запустить файл и дождаться его закрытия. Имеет смысл когда используется Electron. false

  • rewriteFile – Перезаписать файл, если файл с таким же именем существует. false

Returns:

Результат выгрузки

execShell

void execShell(String file)

Запускает на выполнение FileName через оболочку. Если задан соотв. Параметр, то ожидает завершения.

Подробнее на википедии: Работа с файлами

Parameters:
  • file – имя/путь к файлу

getPathToDir

String getPathToDir(CSIDLEnum folderConst)

Метод позволяет получить полный путь к системным папкам. !!ВНИМАНИЕ!! Метод работает только для клиента Electron. Перечисление CSIDLEnum соответствует Windows-перечисления для совместимости с Дельфи-клиентом и Паскаль-криптами.

Parameters:
  • folderConst – CSIDLEnum

Returns:

путь к папке

getTempDir

String getTempDir()

Метод возвращает путь к временному каталогу

Returns:

путь

isFileExist

boolean isFileExist(String file)

Метод проверяет существование файла

Parameters:
  • file – имя/путь к файлу

Returns:

true если существует

isFileReadOnly

boolean isFileReadOnly(String file)

Метод проверяет доступность файла к записи

Parameters:
  • file – имя/путь к файлу

Returns:

false если разрешена запись

uploadFile

CoreUploadResult uploadFile(ForwardFunctionWithArg<String, File> getFile)

Метод открывает диалог выбора файла. После нажатия кнопки “ОК”, имя выбранного файла передаётся на сервер, где вызывается метод getFile. Если getFile вернёт объект File, начнётся загрузка файла. Если getFile вернёт null, загрузка будет отменена.

var urOpt = files.uploadFile(fileName => session.fileStorage.createFile(fileName))
if (urOpt.isvoidined) {
    if (urOpt.get.success) {
        try {
            dialogs.showMessage(urOpt.get.file.getAbsolutePath)
        } finally {
            urOpt.get.file.delete()
        }
    } else {
        throw AppException(urOpt.get.error)
    }
}
Parameters:
  • getFile – Анонимная функция, возвращающая путь, куда будет сохранён загружаемый файл.

Throws:
  • ApplicationException – Если что-то пошло не так.

Returns:

Результат загрузки.

uploadFile

CoreUploadResult uploadFile(ForwardFunctionWithArg<String, File> getFile, String filePath)

Метод передаёт имя выбранного файла на сервер, где вызывается метод getFile. Если getFile вернёт объект File, начнётся загрузка файла. Если getFile вернёт null, загрузка будет отменена. Метод имеет смысл если известно расположение файла на компьютере клиента и к нему есть доступ.

Parameters:
  • getFile – Анонимная функция, возвращающая путь, куда будет сохранён загружаемый файл.

  • filePath – Путь к файлу на стороне клиента

Throws:
  • ApplicationException – Если что-то пошло не так.

Returns:

Результат загрузки.

uploadFileToTemp

boolean uploadFileToTemp(ForwardFunctionWithArg<CoreUploadResult, Boolean> acceptFile)

Открывает диалог выбора файла. При нажатии OK выполняется загрузку файла во временный каталог. По завершению загрузки файла вызывается анонимный метод acceptFile. Перед завершением метода временый файл удаляется.

Parameters:
  • acceptFile – Анонимный метод({Результат загрузки})

Throws:
  • ApplicationException – Если что-то пошло не так.

Returns:

false, если пользователь отменил загрузку, или метод acceptFile вернёт false, иначе, true.

uploadFileToTemp

boolean uploadFileToTemp(ForwardFunctionWithArg<CoreUploadResult, Boolean> acceptFile, String filePath)

Метод выполняется загрузку файла во временный каталог. По завершению загрузки файла вызывается анонимный метод acceptFile. Перед завершением метода временый файл удаляется. Метод имеет смысл если известно расположение файла на компьютере клиента и к нему есть доступ.

Parameters:
  • acceptFile – Анонимный метод({Результат загрузки})

  • filePath – Путь к файлу на стороне клиента

Throws:
  • ApplicationException – Если что-то пошло не так.

Returns:

false, если пользователь отменил загрузку, или метод acceptFile вернёт false, иначе, true.

uploadFiles

Iterator<CoreUploadResult> uploadFiles(ForwardFunctionWithArg<String, File> getFile)

Метод открывает диалог выбора файлов. После нажатия кнопки “ОК”, имена выбранных файлов передаются на сервер, где для каждого имени файла вызывается метод getFile. Если getFile вернёт объект File, начнётся загрузка файла. Если getFile вернёт null для одного из имён, загрузка будет отменена.

var ursOpt = files.uploadFiles(fileName => session.fileStorage.createFile(fileName))
if (ursOpt.isvoidined) {
    try {
        dialogs.showMessage(StringHelper.join(ursOpt.get.map(_.fileName).toArray, ";"))
    } finally {
        ursOpt.get.foreach(_.file.delete())
    }
}
Parameters:
  • getFile – Анонимная функция, возвращающая путь, куда будет сохранён загружаемый файл.

Throws:
  • ApplicationException – Если что-то пошло не так.

Returns:

Результат загрузки.

uploadFilesToTemp

boolean uploadFilesToTemp(ForwardFunctionWithArg<CoreUploadResult, Boolean> acceptFile)

Открывает диалог выбора файлов. При нажатии OK выполняется загрузку файлов во временный каталог. По завершению загрузки, для каждого файла вызывается анонимный метод acceptFile. Перед завершением метода временые файлы удаляются.

Parameters:
  • acceptFile – Анонимный метод({Результат загрузки})

Throws:
  • ApplicationException – Если что-то пошло не так.

Returns:

false, если пользователь отменил загрузку, или метод acceptFile вернёт false, иначе, true.