Source code for titanfe.messages

#
# Copyright (c) 2019-present, wobe-systems GmbH
#
# Licensed under the Apache License, Version 2.0 (the "License");
# found in the LICENSE file in the root directory of this source tree.
#

"""Messages within titanfe"""

from collections import namedtuple
from functools import partial
from enum import IntEnum


[docs]class MessageType(IntEnum): """Types of Messages used within titanfe""" # pylint: disable=invalid-name Packet = 20 PacketRequest = 21 ConsumerRegistration = 22
Message = namedtuple("Message", ("type", "content")) # pylint: disable=invalid-name PacketMessage = partial(Message, MessageType.Packet) PacketRequest = partial(Message, MessageType.PacketRequest) ConsumerRegistration = partial(Message, MessageType.ConsumerRegistration) BrickDescription = namedtuple( "BrickDescription", ( "flowuid", "flowname", "name", "brick_type", "brick_family", "parameters", "uid", "path_to_module", "is_inlet", "exit_after_idle_seconds", "default_port", ), ) OutputTarget = namedtuple("OutputTarget", ("name", "port", "autoscale_queue_level")) InputSource = namedtuple("InputSource", ("name", "port", "address"))