atlos_feeder_db_storage
=======================

.. py:module:: atlos_feeder_db_storage


Submodules
----------

.. toctree::
   :maxdepth: 1

   /autoapi/atlos_feeder_db_storage/atlos_feeder_db_storage/index




Package Contents
----------------

.. py:class:: AtlosFeederDbStorage

   Bases: :py:obj:`auto_archiver.core.Feeder`, :py:obj:`auto_archiver.core.Database`, :py:obj:`auto_archiver.core.Storage`


   Base class for implementing feeders in the media archiving framework.

   Subclasses must implement the `__iter__` method to define platform-specific behavior.


   .. py:method:: setup() -> requests.Session

      create and return a persistent session.



   .. py:method:: failed(item: auto_archiver.core.Metadata, reason: str) -> None

      Mark an item as failed in Atlos, if the ID exists.



   .. py:method:: fetch(item: auto_archiver.core.Metadata) -> Union[auto_archiver.core.Metadata, bool]

      check and fetch if the given item has been archived already, each
      database should handle its own caching, and configuration mechanisms



   .. py:method:: done(item: auto_archiver.core.Metadata, cached: bool = False) -> None

      Mark an item as successfully archived in Atlos.



   .. py:method:: get_cdn_url(_media: auto_archiver.core.Media) -> str

      Return the base Atlos URL as the CDN URL.



   .. py:method:: upload(media: auto_archiver.core.Media, metadata: Optional[auto_archiver.core.Metadata] = None, **_kwargs) -> bool

      Upload a media file to Atlos if it has not been uploaded already.



   .. py:method:: uploadf(file: IO[bytes], key: str, **kwargs: dict) -> bool

      Upload a file-like object; not implemented.



