class_docstr: :class:`ConditionalEvent` provides a common interface to an event (multiprocessing or threading event)
  that gets triggered when any of the events provided in input is triggered (OR logic)
  
  :param events_list: The list of events that compose this composable event
class_docstr_tok: [":","class",":","`","ConditionalEvent","`","provides","a","common","interface","to","an","event","(","multiprocessing","or","threading","event",")","that","gets","triggered","when","any","of","the","events","provided","in","input","is","triggered","(","OR","logic",")",":","param","events_list",":","The","list","of","events","that","compose","this","composable","event"]
code: def __init__(self, events_list):
      super().__init__()
      self.event = None
      self.event = multiprocessing.synchronize.Event(
          ctx=multiprocessing.get_context()
      )
      self.event_list = events_list
      for e in events_list:
          self._setup(e, self._state_changed)
  
      self._state_changed()
  
file_path: jina/jina/orchestrate/pods/helper.py
imports: import multiprocessing
  from copy import deepcopy
  from functools import partial
  from typing import TYPE_CHECKING
  from hubble.executor.helper import is_valid_huburi
  from hubble.executor.hubio import HubIO
  from jina.enums import PodRoleType
  from jina.parsers.helper import _update_gateway_args
label_desc: Use image node_id 1 to create a new ConditionalEvent object  with example: obj = ConditionalEvent(events_list)