Module glean.net.ping_uploader
Classes
class CapablePingUploadRequest (request: glean.net.ping_upload_worker.PingUploadRequest)
-
Expand source code
class CapablePingUploadRequest: def __init__(self, request: PingUploadRequest) -> None: self.request = request def capable(self, func: Callable[[List[str]], bool]) -> Optional[PingUploadRequest]: if func(self.request.uploader_capabilities): return self.request return None
Methods
def capable(self, func: Callable[[List[str]], bool]) ‑> glean.net.ping_upload_worker.PingUploadRequest | None
-
Expand source code
def capable(self, func: Callable[[List[str]], bool]) -> Optional[PingUploadRequest]: if func(self.request.uploader_capabilities): return self.request return None
class PingUploader (*args, **kwargs)
-
Expand source code
class PingUploader(Protocol): def upload( self, capable_request: CapablePingUploadRequest ) -> Union[ UploadResult, UploadResult.UNRECOVERABLE_FAILURE, UploadResult.RECOVERABLE_FAILURE, UploadResult.HTTP_STATUS, UploadResult.INCAPABLE, ]: """ Upload a ping to a server. Args: capable_request (CapablePingUploadRequest): The ping upload request, locked behind a capability check. Returns: result (UploadResult): the status code of the upload response. """ pass
Base class for protocol classes.
Protocol classes are defined as::
class Proto(Protocol): def meth(self) -> int: ...
Such classes are primarily used with static type checkers that recognize structural subtyping (static duck-typing), for example::
class C: def meth(self) -> int: return 0 def func(x: Proto) -> int: return x.meth() func(C()) # Passes static type check
See PEP 544 for details. Protocol classes decorated with @typing.runtime_checkable act as simple-minded runtime protocols that check only the presence of given attributes, ignoring their type signatures. Protocol classes can be generic, they are defined as::
class GenProto(Protocol[T]): def meth(self) -> T: ...
Ancestors
- typing.Protocol
- typing.Generic
Subclasses
Methods
def upload(self,
capable_request: CapablePingUploadRequest) ‑> glean._uniffi.glean.UploadResult | glean._uniffi.glean.UploadResult.UNRECOVERABLE_FAILURE | glean._uniffi.glean.UploadResult.RECOVERABLE_FAILURE | glean._uniffi.glean.UploadResult.HTTP_STATUS | glean._uniffi.glean.UploadResult.INCAPABLE-
Expand source code
def upload( self, capable_request: CapablePingUploadRequest ) -> Union[ UploadResult, UploadResult.UNRECOVERABLE_FAILURE, UploadResult.RECOVERABLE_FAILURE, UploadResult.HTTP_STATUS, UploadResult.INCAPABLE, ]: """ Upload a ping to a server. Args: capable_request (CapablePingUploadRequest): The ping upload request, locked behind a capability check. Returns: result (UploadResult): the status code of the upload response. """ pass
Upload a ping to a server.
Args
capable_request
:CapablePingUploadRequest
- The ping upload request, locked behind a capability check.
Returns
result (UploadResult): the status code of the upload response.
class UploadResult
-
Expand source code
class UploadResult: def __init__(self): raise RuntimeError("UploadResult cannot be instantiated directly") # Each enum variant is a nested class of the enum itself. class RECOVERABLE_FAILURE: unused: "int" def __init__(self,unused: "int"): self.unused = unused def __str__(self): return "UploadResult.RECOVERABLE_FAILURE(unused={})".format(self.unused) def __eq__(self, other): if not other.is_RECOVERABLE_FAILURE(): return False if self.unused != other.unused: return False return True class UNRECOVERABLE_FAILURE: unused: "int" def __init__(self,unused: "int"): self.unused = unused def __str__(self): return "UploadResult.UNRECOVERABLE_FAILURE(unused={})".format(self.unused) def __eq__(self, other): if not other.is_UNRECOVERABLE_FAILURE(): return False if self.unused != other.unused: return False return True class INCAPABLE: unused: "int" def __init__(self,unused: "int"): self.unused = unused def __str__(self): return "UploadResult.INCAPABLE(unused={})".format(self.unused) def __eq__(self, other): if not other.is_INCAPABLE(): return False if self.unused != other.unused: return False return True class HTTP_STATUS: code: "int" def __init__(self,code: "int"): self.code = code def __str__(self): return "UploadResult.HTTP_STATUS(code={})".format(self.code) def __eq__(self, other): if not other.is_HTTP_STATUS(): return False if self.code != other.code: return False return True class DONE: unused: "int" def __init__(self,unused: "int"): self.unused = unused def __str__(self): return "UploadResult.DONE(unused={})".format(self.unused) def __eq__(self, other): if not other.is_DONE(): return False if self.unused != other.unused: return False return True # For each variant, we have `is_NAME` and `is_name` methods for easily checking # whether an instance is that variant. def is_RECOVERABLE_FAILURE(self) -> bool: return isinstance(self, UploadResult.RECOVERABLE_FAILURE) def is_recoverable_failure(self) -> bool: return isinstance(self, UploadResult.RECOVERABLE_FAILURE) def is_UNRECOVERABLE_FAILURE(self) -> bool: return isinstance(self, UploadResult.UNRECOVERABLE_FAILURE) def is_unrecoverable_failure(self) -> bool: return isinstance(self, UploadResult.UNRECOVERABLE_FAILURE) def is_INCAPABLE(self) -> bool: return isinstance(self, UploadResult.INCAPABLE) def is_incapable(self) -> bool: return isinstance(self, UploadResult.INCAPABLE) def is_HTTP_STATUS(self) -> bool: return isinstance(self, UploadResult.HTTP_STATUS) def is_http_status(self) -> bool: return isinstance(self, UploadResult.HTTP_STATUS) def is_DONE(self) -> bool: return isinstance(self, UploadResult.DONE) def is_done(self) -> bool: return isinstance(self, UploadResult.DONE)
Subclasses
- glean._uniffi.glean.UploadResult.DONE
- glean._uniffi.glean.UploadResult.HTTP_STATUS
- glean._uniffi.glean.UploadResult.INCAPABLE
- glean._uniffi.glean.UploadResult.RECOVERABLE_FAILURE
- glean._uniffi.glean.UploadResult.UNRECOVERABLE_FAILURE
Class variables
var DONE
var HTTP_STATUS
var INCAPABLE
var RECOVERABLE_FAILURE
var UNRECOVERABLE_FAILURE
Methods
def is_DONE(self) ‑> bool
-
Expand source code
def is_DONE(self) -> bool: return isinstance(self, UploadResult.DONE)
def is_HTTP_STATUS(self) ‑> bool
-
Expand source code
def is_HTTP_STATUS(self) -> bool: return isinstance(self, UploadResult.HTTP_STATUS)
def is_INCAPABLE(self) ‑> bool
-
Expand source code
def is_INCAPABLE(self) -> bool: return isinstance(self, UploadResult.INCAPABLE)
def is_RECOVERABLE_FAILURE(self) ‑> bool
-
Expand source code
def is_RECOVERABLE_FAILURE(self) -> bool: return isinstance(self, UploadResult.RECOVERABLE_FAILURE)
def is_UNRECOVERABLE_FAILURE(self) ‑> bool
-
Expand source code
def is_UNRECOVERABLE_FAILURE(self) -> bool: return isinstance(self, UploadResult.UNRECOVERABLE_FAILURE)
def is_done(self) ‑> bool
-
Expand source code
def is_done(self) -> bool: return isinstance(self, UploadResult.DONE)
def is_http_status(self) ‑> bool
-
Expand source code
def is_http_status(self) -> bool: return isinstance(self, UploadResult.HTTP_STATUS)
def is_incapable(self) ‑> bool
-
Expand source code
def is_incapable(self) -> bool: return isinstance(self, UploadResult.INCAPABLE)
def is_recoverable_failure(self) ‑> bool
-
Expand source code
def is_recoverable_failure(self) -> bool: return isinstance(self, UploadResult.RECOVERABLE_FAILURE)
def is_unrecoverable_failure(self) ‑> bool
-
Expand source code
def is_unrecoverable_failure(self) -> bool: return isinstance(self, UploadResult.UNRECOVERABLE_FAILURE)