Source code for b2sdk.transfer.outbound.outbound_source

######################################################################
#
# File: b2sdk/transfer/outbound/outbound_source.py
#
# Copyright 2020 Backblaze Inc. All Rights Reserved.
#
# License https://www.backblaze.com/using_b2_code.html
#
######################################################################

from abc import ABCMeta, abstractmethod


[docs]class OutboundTransferSource(metaclass=ABCMeta): """ Abstract class for defining outbound transfer sources. Supported outbound transfer sources are: * :class:`b2sdk.v2.CopySource` * :class:`b2sdk.v2.UploadSourceBytes` * :class:`b2sdk.v2.UploadSourceLocalFile` * :class:`b2sdk.v2.UploadSourceLocalFileRange` * :class:`b2sdk.v2.UploadSourceStream` * :class:`b2sdk.v2.UploadSourceStreamRange` """
[docs] @abstractmethod def get_content_length(self): """ Return the number of bytes of data in the file. """
[docs] @abstractmethod def is_upload(self): """ Return if outbound source is an upload source. :rtype bool: """
[docs] @abstractmethod def is_copy(self): """ Return if outbound source is a copy source. :rtype bool: """