class BlobPropertyFile(File): def __init__(self, name, blob): self.name = name # check if blob is just content or the database model class if isinstance(blob, BlobPropertyFileModel): self.blob = blob else: self.blob = BlobPropertyFileModel(content=blob) def read(self): return self.blob.content def write(self, content): self.blob.content = content self.blob.put() def close(self): raise NotImplementedError()
def _save(self, name, content): path = self.path(name) blob = BlobPropertyFileModel(key_name=path) blob.content = content.read() blob.put() return path