DataAccessor that uses the file system to store documents as files and containers as folders.





logger: Logger = ...
resourceMapper: FileIdentifierMapper


  • 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.


    Returns AsyncIterableIterator<RepresentationMetadata>

  • Reads the metadata from the corresponding metadata file. Returns an empty array if there is no metadata file.


    Returns Promise<Quad[]>

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


    • path: string

      File path to get info from.

    Returns Promise<Stats>


    NotFoundHttpError If the file/folder doesn't exist.

  • 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.


    • link: ResourceLink

      ResourceLink corresponding to the new resource data.

    Returns Promise<void>

  • Helper function without extra validation checking to create a data file.


    • path: string

      The filepath of the file to be created.

    • data: Readable

      The data to be put in the file.

    Returns Promise<void>