Saltar al contenido principal

UrlStorageAdapter

UrlStorageAdapter define el contrato para cualquier backend de almacenamiento que guarda chunks accesibles por url.
Extiende StorageAdapter.

Esta clase es abstracta; las implementaciones reales pertenecen a la capa de infraestructura y no son usadas directamente por los consumidores del SDK.


Propiedades

NombreTipoDescripción
type"url"Identifica la categoría del adaptador.

Métodos

MétodoDevuelveDescripción
getChunkByUrl(url)Promise<Readable | null>Devuelve un stream de chunk por url.
putChunkByUrl(url, data)Promise<void>Sube un chunk desde un readable stream por url.
chunkExistsByUrl(url)Promise<boolean>Comprueba que un chunk existe por url.
deleteChunkByUrl(url)Promise<void>Elimina un chunk por url.
listChunksByUrl?(url)Promise<string[]>Opcional: lista los hashes de chunks almacenados por url.
getChunkInfoByUrl?(url)Promise<BlobInfo | null>Opcional: devuelve metadatos de chunk por url.
getRemoteIndexByUrl(url)Promise<RDIndex | null>Devuelve el rd-index.json remoto por url.
putRemoteIndexByUrl(url, index)Promise<void>Sube el rd-index.json remoto por url.

Detalles de métodos

getChunkByUrl(url)

Devuelve un readable stream de un chunk, o null si el chunk no existe por url.

Parámetros

NombreTipoDescripción
urlstringUrl que se usará para descargar el chunk deseado.

Devuelve

Promise<Readable | null>


putChunkByUrl(url, data)

Sube un chunk por url.

Parámetros

NombreTipoDescripción
urlstringUrl para subir el chunk.
dataReadableFuente de datos en stream.

Devuelve

Promise<void>


chunkExistsByUrl(url)

Comprueba si un chunk existe por url.

Parámetros

NombreTipoDescripción
urlstringUrl para comprobar si el chunk existe.

Devuelve

Promise<boolean>


deleteChunkByUrl(url)

Elimina un chunk por url si existe.

Parámetros

NombreTipoDescripción
urlstringUrl para eliminar el chunk.

Devuelve

Promise<void>


listChunksByUrl?(url)

Devuelve una lista de los hashes de chunks por url. Método opcional.

Parámetros

NombreTipoDescripción
urlstringUrl para listar chunks.

Devuelve

Promise<string[]>


getChunkInfoByUrl?(url)

Devuelve los metadatos del chunk por url. Método opcional.

Parámetros

NombreTipoDescripción
urlstringUrl para traer la info del chunk.

Devuelve

Promise<BlobInfo | null>

export interface BlobInfo {
hash: string;
size: number;
modified?: Date;
metadata?: Record<string, string>;
}

getRemoteIndexByUrl(url)

Devuelve el rd-index.json remoto desde la url dada.

Parámetros

NombreTipoDescripción
urlstringUrl para descargar el índice.

Devuelve

Promise<RDIndex | null>


putRemoteIndexByUrl(url, index)

Sube un rd-index.json al almacenamiento desde la url.

Parámetros

NombreTipoDescripción
urlstringLa url para subir el índice.
indexRDIndexEl objeto rd-index.

Devuelve

Promise<void>


Relacionado