"""
NAO stub autonomous behavior component.
"""
from sic_framework.core.actuator_python2 import SICActuator
from sic_framework.core.connector import SICConnector
from sic_framework.core.message_python2 import SICMessage, SICConfMessage, SICRequest
[docs]
class NaoStubAutonomousActuator(SICActuator):
"""Stub for NAO autonomous behavior - logs actions instead of executing them."""
[docs]
@staticmethod
def get_conf():
return SICConfMessage()
[docs]
@staticmethod
def get_output():
return SICMessage
[docs]
def execute(self, request):
"""Log the autonomous request instead of executing it."""
self.logger.info("NaoStub.autonomous: {}".format(type(request).__name__))
self.logger.debug(" Request details: {}".format(request))
return SICMessage()
[docs]
def on_message(self, message):
"""Log incoming messages."""
self.logger.info("NaoStub.autonomous message: {}".format(type(message).__name__))
self.logger.debug(" Message details: {}".format(message))
[docs]
def stop(self):
"""Stop the Autonomous actuator."""
self._stopped.set()
super(NaoStubAutonomousActuator, self).stop()
[docs]
class NaoStubAutonomous(SICConnector):
component_class = NaoStubAutonomousActuator