Commits

Ginés Martínez Sánchez committed cf5c33e Draft

let outside world subcribe to gobj-ecosistema with a callback

  • Participants
  • Parent commits cebbc62

Comments (0)

Files changed (1)

File ginsfsm/gobj.py

                         # outside world
                         if hasattr(sub, 'callback_fn'):
                             callback = sub.callback_fn
-                            callback(oevent)    # TODO: debería convertirlo en
-                                                # en json? pues claro que sí.
-                                                # No obligues a que te conozcan
-                                                # Eso sí: que acepten 1 param.
+                            if hasattr(sub, 'callback_param'):
+                                callback_param = sub.callback_param
+                                callback(callback_param)
+                            else:
+                                callback()
+                            ## TODO: callback(oevent): debería convertir
+                            # a oevent en json? pues claro que sí.
+                            # No obligues a que te conozcan
+                            # Eso sí: que acepten 1 param.
+                            # MEJORA:
                             # Pero por otro, si ya tienen que conocer
                             # el gobj-ecosistema para poder enviar eventos.
                             # Si son casi hermanos, no estamos tratando
                             # entre los que sí se entiende, y no puede ser
                             # de otra manera, que se tengan que intercambiar
                             # los datos en formato aséptico, es decir, json.
+
+                            # Al callback no le pasamos el oevent,
+                            # él ya sabe a qué evento se ha suscrito.
+                            # Le pasamos el parámetro que él ha elegido.
                         else:
                             self.logger.error(
                                 "ERROR use_callback without callback_fn"