Spaces:
Running
Running
"""Abstract interface for file storage implementations.""" | |
from abc import ABC, abstractmethod | |
from collections.abc import Generator | |
from flask import Flask | |
class BaseStorage(ABC): | |
"""Interface for file storage. | |
""" | |
app = None | |
def __init__(self, app: Flask): | |
self.app = app | |
def save(self, filename, data): | |
raise NotImplementedError | |
def load_once(self, filename: str) -> bytes: | |
raise NotImplementedError | |
def load_stream(self, filename: str) -> Generator: | |
raise NotImplementedError | |
def download(self, filename, target_filepath): | |
raise NotImplementedError | |
def exists(self, filename): | |
raise NotImplementedError | |
def delete(self, filename): | |
raise NotImplementedError | |