Class AtomicFileDataAccessor

AtomicDataAccessor that uses the file system to store documents as files and containers as folders. Data will first be written to a temporary location and only if no errors occur will the data be written to the desired location.

Hierarchy

Implements

Constructors

Properties

logger: Logger = ...
resourceMapper: FileIdentifierMapper
tempFilePath: string

Methods

  • Returns metadata for all resources in the requested container. This should not be all metadata of those resources (but it can be), but instead the main metadata you want to show in situations where all these resources are presented simultaneously. Generally this would be metadata that is present for all of these resources, such as resource type or last modified date.

    It can be safely assumed that the incoming identifier will always correspond to a container.

    Parameters

    Returns AsyncIterableIterator<RepresentationMetadata>

  • Gets the Stats object corresponding to the given file path, resolving symbolic links.

    Throws

    NotFoundHttpError If the file/folder doesn't exist.

    Parameters

    • path: string

      File path to get info from.

    Returns Promise<Stats>

  • Verifies if there already is a file corresponding to the given resource. If yes, that file is removed if it does not match the path given in the input ResourceLink. This can happen if the content-type differs from the one that was stored.

    Parameters

    • link: ResourceLink

      ResourceLink corresponding to the new resource data.

    Returns Promise<void>