def __init__(self, context, name, zmq_socket, realtime_proxies_configuration=[]): self.geom = None self._sockets = queue.Queue() self.socket_path = zmq_socket self._scenario = None self._scenario_name = None self.nb_created_socket = 0 self.lock = Lock() self.context = context self.name = name self.timezone = None # timezone will be fetched from the kraken self.publication_date = -1 self.is_up = True self.breaker = pybreaker.CircuitBreaker( fail_max=app.config['CIRCUIT_BREAKER_MAX_INSTANCE_FAIL'], reset_timeout=app.config['CIRCUIT_BREAKER_INSTANCE_TIMEOUT_S']) self.georef = georef.Kraken(self) self.planner = planner.Kraken(self) self.schedule = schedule.MixedSchedule(self) self.realtime_proxy_manager = realtime_schedule.RealtimeProxyManager( realtime_proxies_configuration) from jormungandr.autocomplete.kraken import Kraken self.autocomplete = Kraken()
def __init__( self, context, name, zmq_socket, street_network_configurations, ridesharing_configurations, realtime_proxies_configuration, zmq_socket_type, autocomplete_type, ): self.geom = None self._sockets = deque() self.socket_path = zmq_socket self._scenario = None self._scenario_name = None self.lock = Lock() self.context = context self.name = name self.timezone = None # timezone will be fetched from the kraken self.publication_date = -1 self.is_initialized = False # kraken hasn't been called yet we don't have geom nor timezone self.breaker = pybreaker.CircuitBreaker( fail_max=app.config['CIRCUIT_BREAKER_MAX_INSTANCE_FAIL'], reset_timeout=app.config['CIRCUIT_BREAKER_INSTANCE_TIMEOUT_S'], ) self.georef = georef.Kraken(self) self.planner = planner.Kraken(self) street_network_configurations = _set_default_street_network_config( street_network_configurations) self.street_network_services = street_network.StreetNetwork.get_street_network_services( self, street_network_configurations) self.ridesharing_services = [] if ridesharing_configurations is not None: self.ridesharing_services = ridesharing_service.Ridesharing.get_ridesharing_services( self, ridesharing_configurations) self.ptref = ptref.PtRef(self) self.schedule = schedule.MixedSchedule(self) self.realtime_proxy_manager = realtime_schedule.RealtimeProxyManager( realtime_proxies_configuration, self) self._autocomplete_type = autocomplete_type if self._autocomplete_type is not None and self._autocomplete_type not in global_autocomplete: raise RuntimeError('impossible to find autocomplete system {} ' 'cannot initialize instance {}'.format( autocomplete_type, name)) self.zmq_socket_type = zmq_socket_type
def __init__( self, context, # type: zmq.Context name, # type: Text zmq_socket, # type: Text street_network_configurations, ridesharing_configurations, realtime_proxies_configuration, zmq_socket_type, autocomplete_type, instance_equipment_providers, # type: List[Text] streetnetwork_backend_manager, ): self.geom = None self.geojson = None self._sockets = deque() self.socket_path = zmq_socket self._scenario = None self._scenario_name = None self.lock = Lock() self.context = context self.name = name self.timezone = None # timezone will be fetched from the kraken self.publication_date = -1 self.is_initialized = False # kraken hasn't been called yet we don't have geom nor timezone self.breaker = pybreaker.CircuitBreaker( fail_max=app.config.get(str('CIRCUIT_BREAKER_MAX_INSTANCE_FAIL'), 5), reset_timeout=app.config.get( str('CIRCUIT_BREAKER_INSTANCE_TIMEOUT_S'), 60), ) self.georef = georef.Kraken(self) self.planner = planner.Kraken(self) self._streetnetwork_backend_manager = streetnetwork_backend_manager if app.config[str('DISABLE_DATABASE')]: self._streetnetwork_backend_manager.init_streetnetwork_backends_legacy( self, street_network_configurations) self.ridesharing_services = [ ] # type: List[ridesharing_service.AbstractRidesharingService] if ridesharing_configurations is not None: self.ridesharing_services = ridesharing_service.Ridesharing.get_ridesharing_services( self, ridesharing_configurations) self.ptref = ptref.PtRef(self) self.schedule = schedule.MixedSchedule(self) self.realtime_proxy_manager = realtime_schedule.RealtimeProxyManager( realtime_proxies_configuration, self) self._autocomplete_type = autocomplete_type if self._autocomplete_type is not None and self._autocomplete_type not in global_autocomplete: raise RuntimeError('impossible to find autocomplete system {} ' 'cannot initialize instance {}'.format( autocomplete_type, name)) self.zmq_socket_type = zmq_socket_type if app.config[str('DISABLE_DATABASE')]: self.equipment_provider_manager = EquipmentProviderManager( app.config[str('EQUIPMENT_DETAILS_PROVIDERS')]) else: self.equipment_provider_manager = EquipmentProviderManager( app.config[str('EQUIPMENT_DETAILS_PROVIDERS')], self.get_providers_from_db) # Init equipment providers from config self.equipment_provider_manager.init_providers( instance_equipment_providers)