Class: FileStorage

@nginstack/engine/lib/file-storage/FileStorage~ FileStorage


new FileStorage(classKey)

Classe responsável por gerenciar os arquivos vinculados a cadastros definidos por meio da classe de dados "Relações entre Cadastros e Arquivos" (-1898141863).

Parameters:
Name Type Description
classKey number

Chave da classe de dados que define as relações entre cadastros e os arquivos. Deve ser uma classe filha de "Relações entre Cadastros e Arquivos" (-1898141863).

Members


<static> StorageKind :StorageKind

Tipos de armazenamento dos arquivos.

Type:
  • StorageKind

accept :Array.<string>

Indica o tipo dos arquivos aceitos.

Type:
  • Array.<string>

cacheControl :string

Diretiva HTTP de cache que deve ser aplicada aos arquivos gerenciados por esta classe.

Type:
  • string

fileFieldName :string

Nome do campo na tabela iDataRel que armazena a chave do arquivo da Virtual File System ou da LobStorage.

Type:
  • string

linkedTableName :string

Tabela ao qual será feito o relacionamento. Ex: Recurso.

Type:
  • string

linkFieldName :string

Nome do campo na tabela iDataRel que armazena a chave do cadastro vinculado ao arquivo.

Type:
  • string

maxFiles :number

Quantidade máxima de arquivos que podem ser vinculados ao registro.

Type:
  • number

maxFileSize :number

Tamanho máximo do arquivo a ser importado em bytes.

Type:
  • number

maxTotalSize :number

Tamanho máximo em bytes de todos os arquivos vinculados ao registro.

Type:
  • number

storageClassKey :number

Chave da classe onde serão armazenados os arquivos.

Type:
  • number

storageKind :StorageKind

Tipo de armazenamento dos arquivos.

Type:
  • StorageKind

Methods


addFile(originalFileName, content, attributes)

Cria um arquivo que poderá ser posteriormente vinculado a um cadastro do sistema por meio do método #linkFile.

Parameters:
Name Type Description
originalFileName string

Nome original do arquivo. O nome que será gravado na Virtual File System e na LobStorage é um nome único gerado a partir desse nome e dos atributos do arquivo.

content string | File | MemoryStream

Conteúdo do arquivo.

attributes Object

Atributos do arquivo.

Returns:

Chave do arquivo na Virtual File System ou na LobStorage.

Type
number

defineRelationshipAsMain(fileKey, recordKey)

Define o vínculo como o principal para aquele registro, caso o tipo do vínculo tenha essa opção habilitada.

Parameters:
Name Type Description
fileKey number

Chave do arquivo.

recordKey number

Chave do registro.


findFileByName(fileName)

Verifica se já existe um arquivo com o nome informado.

Parameters:
Name Type Description
fileName string

Nome do arquivo.

See:
Returns:

Informações do arquivo caso exista um com o nome informado ou null no caso contrário. Como o arquivo encontrado pode estar vinculado a vários registros, a propriedade main sempre será falsa.

Type
FileInfo

findLinkedFiles(key [, filters])

Obtém as informações sobre os arquivos vinculados a chave informada.

Parameters:
Name Type Argument Description
key number | DBKey

Chave do registro do qual se deseja obter os arquivos vinculados.

filters Object <optional>

Indica os filtros de obtenção das informações dos arquivos. Serão retornados apenas as informações dos arquivos cujo atributos satisfaçam todos os filtros informados.

See:
Returns:

Array de objetos contendo as informações dos arquivos

Type
Array.<FileInfo>

formatUniqueFileName(originalFileName, attributes)

Complementa o nome de um arquivo com os seus atributos a fim de torná-lo único dentro de um diretório da Virtual File System ou da classe na LobStorage.

Parameters:
Name Type Description
originalFileName string

Nome original do arquivo.

attributes Object

Atributos do arquivo.

Returns:

Nome único do arquivo a ser utilizado no diretório de armazenagem na Virtual File System.

Type
string

getExtraFileAttributes(fileKey)

Obtém os atributos extras do arquivo informado.

Parameters:
Name Type Description
fileKey number

Chave do arquivo.

Returns:

Atributos extras do arquivo.

Type
Object

getFileAttributes(fileKey)

Obtém os atributos extras do arquivo informado.

Parameters:
Name Type Description
fileKey number

Chave do arquivo.

Deprecated:
  • Utilize #getExtraFileAttributes
Returns:

Atributos extras do arquivo.

Type
Object

getFileSize(fileKey)

Obtém o tamanho do arquivo.

Parameters:
Name Type Description
fileKey number

Chave do arquivo.

Returns:

URL do arquivo.

Type
string

getLinkedFilesCount(key)

Obtém a quantidade total de arquivos vinculados ao registro.

Parameters:
Name Type Description
key number | DBKey

Chave do registro do qual se deseja obter a quantidade total.

Returns:

Quantidade total de arquivos vinculados ao registro.

Type
number

getLinkedFilesSize(key)

Obtém o tamanho total em bytes de todos os arquivos vinculados ao registro.

Parameters:
Name Type Description
key number | DBKey

Chave do registro do qual se deseja obter o tamanho total.

Returns:

Tamanho total em bytes de todos os arquivos vinculados ao registro.

Type
number

linkFile(fileKey, recordKey)

Vincula uma chave de cadastro a um arquivo da Virtual File System ou da LobStorage.

Parameters:
Name Type Description
fileKey number

Chave do arquivo.

recordKey number

Chave do registro.


relationshipExists(fileKey, targetKey)

Verifica se já existe um vínculo entre o arquivo e a chave informada.

Parameters:
Name Type Description
fileKey number

Chave do arquivo.

targetKey number

Chave do registro possivelmente vinculado.

Returns:

True se existir um vínculo.

Type
boolean

tryGetFileName(fileKey)

Tenta retornar o nome do arquivo.

Parameters:
Name Type Description
fileKey number

Chave do arquivo.

Returns:

URL do arquivo.

Type
string

tryGetFileUrl(fileKey)

Tenta retornar a url do arquivo.

Parameters:
Name Type Description
fileKey number

Chave do arquivo.

Returns:

URL do arquivo.

Type
string

updateExtraFileAttributes(fileKey, attributes [, originalName])

Atualiza os atributos extras de um arquivo.

Parameters:
Name Type Argument Description
fileKey number

Chave do arquivo.

attributes Object

Atributos do arquivo.

originalName string <optional>

Nome original do arquivo.


updateFile(fileKey, content [, options])

Atualiza o conteúdo de um arquivo.

Parameters:
Name Type Argument Description
fileKey number

Chave do arquivo.

content string | File | MemoryStream

Conteúdo do arquivo.

options Object <optional>

Opções de atualização.

Properties
Name Type Argument Description
attributes Object <optional>

Atributos do arquivo.

originalFileName string <optional>

Nome original do arquivo. O nome que será gravado na Virtual File System e na LobStorage é um nome único gerado a partir desse nome e dos atributos do arquivo.


updateFileAttributes(fileKey, attributes [, originalName])

Atualiza os atributos extras de um arquivo.

Parameters:
Name Type Argument Description
fileKey number

Chave do arquivo.

attributes Object

Atributos do arquivo.

originalName string <optional>

Nome original do arquivo.

Deprecated:
  • Utilize #updateExtraFileAttributes

userHasViewPermission(fileKey [, userKey])

Verifica se o usuário tem permissão para visualizar o arquivo.

Parameters:
Name Type Argument Description
fileKey number

Chave do arquivo.

userKey number <optional>

Chave do usuário. Caso não seja informado, será verificada a permissão do usuário corrente da sessão.

Returns:

True se o usuário tiver permissão para visualizar o arquivo.

Type
boolean