Module yapapi.storage.gftp
Golem File Transfer Storage Provider
Functions
provider
def provider(
) -> AsyncContextManager[yapapi.storage.StorageProvider]
service
def service(
debug=False
) -> AsyncContextManager[yapapi.storage.gftp.GftpDriver]
Classes
GftpDriver
class GftpDriver(
*args,
**kwargs
)
Golem FTP service API.
Ancestors (in MRO)
- typing_extensions.Protocol
Methods
close
def close(
self,
*,
urls:List[str]
) -> typing_extensions.Literal['ok', 'error']
Stops exposing GFTP urls created by publish(files=[..]).
publish
def publish(
self,
*,
files:List[str]
) -> List[yapapi.storage.gftp.PubLink]
Exposes local file as GFTP url.
files
- local files to be exposed
receive
def receive(
self,
*,
output_file:str
) -> yapapi.storage.gftp.PubLink
- Creates GFTP url for receiving file.
-
output_file
-
shutdown
def shutdown(
self
) -> typing_extensions.Literal['ok', 'error']
Stops GFTP service.
After shutdown all generated urls will be unavailable.
upload
def upload(
self,
*,
file:str,
url:str
)
version
def version(
self
) -> str
Gets driver version.
PubLink
class PubLink(
/,
*args,
**kwargs
)
GFTP linking information.
Ancestors (in MRO)
- builtins.dict
Methods
clear
def clear(
...
)
D.clear() -> None. Remove all items from D.
copy
def copy(
...
)
D.copy() -> a shallow copy of D
fromkeys
def fromkeys(
iterable,
value=None,
/
)
Returns a new dict with keys from iterable and values equal to value.
get
def get(
...
)
D.get(k[,d]) -> D[k] if k in D, else d. d defaults to None.
items
def items(
...
)
D.items() -> a set-like object providing a view on D's items
keys
def keys(
...
)
D.keys() -> a set-like object providing a view on D's keys
pop
def pop(
...
)
D.pop(k[,d]) -> v, remove specified key and return the corresponding value. If key is not found, d is returned if given, otherwise KeyError is raised
popitem
def popitem(
...
)
D.popitem() -> (k, v), remove and return some (key, value) pair as a 2-tuple; but raise KeyError if D is empty.
setdefault
def setdefault(
...
)
D.setdefault(k[,d]) -> D.get(k,d), also set D[k]=d if k not in D
update
def update(
...
)
D.update([E, ]**F) -> None. Update D from dict/iterable E and F. If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]
values
def values(
...
)
D.values() -> an object providing a view on D's values