Digibee Storage
A Digibee Integration Platform oferece várias opções para armazenamento de arquivos. O Portal de Documentação ajuda os usuários a identificar a melhor solução. Esse artigo aborda Digibee Storage.
O Digibee Storage se conecta ao storage da Digibee Integration Platform, possibilitando que sejam realizadas as seguintes operações com arquivos: List, Download, Upload e Delete.
Parâmetros
Dê uma olhada nos parâmetros de configuração do componente. Parâmetros suportados por expressões Double Braces estão marcados com (DB)
.
Operation
Operação a ser executada (Upload, Download, List ou Delete).
Upload
String
File Name (DB)
Nome do arquivo ou caminho completo (full file path) para o arquivo local, disponível apenas nas operações Download e Upload.
local-pdf-test.pdf
String
Remote File Name (DB)
Nome do arquivo remoto ou caminho relativo (ex.: tmp/file.txt) para o arquivo remoto. Este parâmetro é apresentado nas operações Download, Upload e Delete.
pdf-test.pdf
String
Page Size
Tamanho da página, ou seja, a quantidade de itens a serem retornados quando a operação List é utilizada. Se o valor não for especificado, todos os itens são retornados. Caso haja mais itens do que a quantidade determinada neste parâmetro, é possível solicitar uma segunda página (veja Page Token), a qual retorna os itens restantes. Disponível apenas se o parâmetro Operation assumir valor List.
Todos os itens retornados
Inteiro
Page Token
Token utilizado para solicitar a próxima página quando a operação List é executada. Nessa próxima página será retornada a quantidade de itens definidos no parâmetro Page Size.
N/A
String
Remote Directory
Diretório remoto base no qual será realizada a operação selecionada. Este parâmetro é apresentado nas operações List, Download, Upload e Delete.
Folder
String
Generate Download Link
Se a opção estiver ativada, um link público para download do arquivo é gerado. Este parâmetro é aplicável apenas na operação Upload.
False
Booleano
Link Expiration
Tempo para expiração do link, em milissegundos. Este parâmetro é válido apenas se a opção Generate Download Link estiver ativada.
N/A
Inteiro
Fail On Error
Se a opção estiver habilitada, a execução do pipeline com erro será interrompida; do contrário, a execução do pipeline continua, mas o resultado vai mostrar um valor falso para a propriedade "success".
False
Booleano
Fluxo de mensagens
Entrada
Não se espera nenhuma mensagem de entrada específica, mas apenas o preenchimento dos parâmetros obrigatórios que variam conforme a operação selecionada. Veja abaixo a obrigatoriedade de parâmetros para cada operação:
List: todos os parâmetros são opcionais
Download: File Name e Remote File Name
Upload: File Name e Remote File Name
Delete: Remote File Name
No caso da operação Update, o arquivo informado no parâmetro File Name precisa estar no diretório local do pipeline.
Saída
Ao executar o componente utilizando a operação List, a seguinte estrutura de JSON será gerada:
{
"content": [
{
"name": "temp//tmp/processed/file-3.txt",
"contentType": "application/octet-stream",
"contentEncoding": null,
"createTime": 1581689153448,
"bucket": "test-bucket",
"size": 10
},
{ ... }
],
"pageToken": "XXXXXXXXXXXXL3RtcC9wcm9jZXNzZWQvZmlsZS0zLnR4dA==",
"fileName": null,
"remoteFileName": null,
"remoteDirectory": "",
"success": true
}
content: um vetor (array) de objetos para cada arquivo encontrado.
name: nome do arquivo remoto.
contentType: MIME type do arquivo.
contentEncoding: encoding do arquivo, caso exista.
createTime: timestamp da data de criação do arquivo.
bucket: bucket onde o arquivo se encontra.
size: tamanho do arquivo em bytes.
pageToken: token para recuperar próxima página quando o parâmetro Page Size é informado.
fileName: nome do arquivo local.
remoteFileName: nome do arquivo remoto.
remoteDirectory: nome da pasta base remota.
success: "true" se a última operação ocorreu com sucesso.
error: surge se um erro ocorreu e o Fail on Error é "false".
Ao executar o componente utilizando as operações Download, Upload e Delete, a seguinte estrutura de JSON será gerada:
{
"fileName": "file.txt",
"remoteFileName": "tmp/iso-8859-1-test.txt",
"remoteDirectory": "",
"success": true
}
fileName: nome do arquivo local.
remoteFileName: nome do arquivo remoto.
remoteDirectory: nome da pasta base remota.
success: "true" se a última operação ocorreu com sucesso.
Digibee Storage em Ação
List - lista de arquivos
Entrada
Parâmetros
Operation: List
Remote Directory: DGB-413
Page Size: 2
Saída
{
"content": [
{
"name": "DGB-413/",
"contentType": "text/plain",
"contentEncoding": null,
"createTime": 1552394033410,
"bucket": "digibee-test-digibee-test-bucket",
"size": 11
},
{
"name": "DGB-413/iso8859-2.txt",
"contentType": "text/plain",
"contentEncoding": null,
"createTime": 1552395963553,
"bucket": "digibee-test-digibee-test-bucket",
"size": 55
}
],
"pageToken": "ChVER0ItNDEzL2lzbzg4NTktMi50eHQ=",
"fileName": null,
"remoteFileName": null,
"remoteDirectory": "DGB-413",
"success": true
}
Como é possível ver, o resultado acima retorna a propriedade pageToken com um valor de referência para a próxima página. Essa propriedade será retornada quando o parâmetro Page Size é configurado (no exemplo está definido com o valor 2) e também quando há mais arquivos a serem listados.
List - lista de vários arquivos usando paginação
Entrada
Parâmetros
Operation: List
Remote Directory: DGB-413
Page Size: 2
Page Token: ChVER0ItNDEzL2lzbzg4NTktMi50eHQ=
Saída
{
"content": [
{
"name": "DGB-413/utf-16-test.txt",
"contentType": "text/plain",
"contentEncoding": null,
"createTime": 1552394973030,
"bucket": "digibee-test-digibee-test-bucket",
"size": 70
},
{
"name": "DGB-413/utf-test.txt",
"contentType": "text/plain",
"contentEncoding": null,
"createTime": 1552394644597,
"bucket": "digibee-test-digibee-test-bucket",
"size": 55
}
],
"fileName": null,
"remoteFileName": null,
"remoteDirectory": "DGB-413",
"success": true
}
No resultado acima a propriedade pageToken não foi retornada. Isso sinaliza que não há mais arquivos a serem listados.
Download de um arquivo
Entrada
Parâmetros
Operation: Download
File Name: iso8859-2.txt
Remote File Name: iso8859-2.txt
Remote Directory: DGB-413
Saída
{
"fileName": "iso8859-2.txt",
"remoteFileName": "iso8859-2.txt",
"remoteDirectory": "DGB-413",
"success": true
}
Será realizado o download do arquivo no diretório local do pipeline.
Upload de um arquivo
Entrada
Arquivo local: file.txt
Parâmetros
Operation: Upload
File Name: file.txt
Remote File Name: file.txt
Remote Directory: DGB-413
Saída
{
"fileName": "file.txt",
"remoteFileName": "file.txt",
"remoteDirectory": "DGB-413",
"success": true
}
Upload de um arquivo gerando link para download
Entrada
Arquivo local: file.txt
Parâmetros
Operation: Upload
File Name: file.txt
Remote File Name: file.txt
Remote Directory: DGB-413
Generate A Download Link: true
Link Expiration (in ms): 604800000
Saída
{
"fileName": "file.txt",
"remoteFileName": "file.txt",
"remoteDirectory": "DGB-413",
"success": true,
"urlGenerated": "<URL TO DOWNLOAD THE FILE>"
}
Com a configuração dos parâmetros de entrada acima, o arquivo ficará disponível para download por 7 dias (604800000ms) através do link gerado na propriedade de saída urlGenerated.
Delete - Remoção de um arquivo
Entrada
Parâmetros
Operation: Delete
Remote File Name: file.txt
Remote Directory: DGB-413
Saída
{
"fileName": null,
"remoteFileName": "file.txt",
"remoteDirectory": "DGB-413",
"success": true
}
Atualizado
Isto foi útil?