osbrain.common — osBrain common logic¶
Miscellaneous utilities.
-
class
osbrain.common.LogLevel¶ Bases:
strIdentifies the log level: ERROR, WARNING, INFO, DEBUG.
-
osbrain.common.after(delay, action, *args)¶ Execute an action after a given number of seconds.
This function is executed in a separate thread.
Parameters: - delay (float) – Number of seconds to delay the action.
- action – To be taken after the interval.
- args (tuple, default is ()) – Arguments for the action.
Returns: A timer object that can be terminated using the
stop()method.Return type: Event
-
osbrain.common.format_exception()¶ Represent a traceback exception as a string in which all lines start with a
|character.Useful for differentiating remote from local exceptions and exceptions that where silenced.
Returns: A formatted string containing an exception traceback information. Return type: str
-
osbrain.common.format_method_exception(error, method, args, kwargs)¶ Represent an exception as a formatted string that includes the name and arguments of the method where it occurred, followed by the output of
format_exception.Parameters: - error (Error) – The exception that was raised.
- method (function) – The method where the exception was raised.
- args – The arguments of the method call.
- kwargs (dict) – The keyword arguments of the method call.
Returns: The formatted string with the method call and traceback information.
Return type: str
-
osbrain.common.get_linger(seconds=None)¶ Wrapper to get the linger option from the environment variable.
Parameters: seconds (float, default is None.) – Linger seconds, in seconds. Returns: Number of seconds to linger. Note that -1 means linger forever. Return type: int
-
osbrain.common.repeat(interval, action, *args)¶ Repeat an action forever after a given number of seconds.
If a sequence of events takes longer to run than the time available before the next event, the repeater will simply fall behind.
This function is executed in a separate thread.
Parameters: - interval (float) – Number of seconds between executions.
- action – To be taken after the interval.
- args (tuple, default is ()) – Arguments for the action.
Returns: A timer object that can be terminated using the
stop()method.Return type: Event
-
osbrain.common.topic_to_bytes(topic: Union[bytes, str]) → bytes¶ Return the passed topic as a
bytesobject.
-
osbrain.common.topics_to_bytes(handlers: Dict[Union[bytes, str], Any], uuid: bytes = b'')¶ Given some pairs topic/handler, leaves them prepared for making the actual ZeroMQ subscription.
Parameters: - handlers – Contains pairs “topic - handler”.
- uuid – uuid of the SYNC_PUB/SYNC_SUB channel (if applies). For normal
PUB/SUB communication, this should be
b''.
Returns: Return type: Dict[bytes, Any]
-
osbrain.common.unbound_method(method)¶ Returns: Unbounded function. Return type: function
-
osbrain.common.unique_identifier() → bytes¶ Returns: - A unique identifier that is safe to use in PUB-SUB communication
- patterns (i.e. (does not contain the)
osbrain.agent.TOPIC_SEPARATORcharacter).
-
osbrain.common.validate_handler(handler, required)¶ Raises a ValueError exception when a required is handler but not present.