예제 #1
0
    def get_query_result(self, params):
        """Retorna los resultados de la búsqueda de direcciones. Este método
        debe ser invocado luego de haber recorrido todo el iterador obtenido
        con 'planner_steps'.

        Se utiliza la longitud de los resultados encontrados como 'total', y
        0 como 'offset'. Esto se debe a que ninguna de las búsquedas ejecutadas
        representa correctamente el total de resultados posibles que existen (
        ya que gran parte del procesamiento se hace localmente, combinando
        resultados de las mismas).

        Args:
            params (dict): Parámetros recibidos que generaron la consulta.

        Returns:
            QueryResult: Resultados de la búsqueda de direcciones.

        """
        if not self._between_hits:
            return QueryResult.empty(params)

        # TODO: Revisar total y offset
        return QueryResult.from_entity_list(self._between_hits,
                                            params,
                                            len(self._between_hits),
                                            0)
예제 #2
0
    def get_query_result(self):
        """Retorna los resultados de la búsqueda de direcciones. En el caso de
        'AddressNoneQueryPlanner', siempre se retornan resultados vacíos.

        Returns:
            QueryResult: Resultados de la búsqueda de direcciones.

        """
        return QueryResult.empty()
예제 #3
0
    def get_query_result(self, params):
        """Retorna los resultados de la búsqueda de direcciones. En el caso de
        'AddressNoneQueryPlanner', siempre se retornan resultados vacíos.

        Args:
            params (dict): Parámetros recibidos que generaron la consulta.

        Returns:
            QueryResult: Resultados de la búsqueda de direcciones.

        """
        return QueryResult.empty(params)
예제 #4
0
    def get_query_result(self):
        """Retorna los resultados de la búsqueda de direcciones. Este método
        debe ser invocado luego de haber recorrido todo el iterador obtenido
        con 'planner_steps'.

        Se utiliza el 'total' y 'offset' de la búsqueda #3 (intersecciones)
        como metadatos de los resultados.

        Returns:
            QueryResult: Resultados de la búsqueda de direcciones.

        """
        if not self._intersection_hits:
            return QueryResult.empty()

        return QueryResult.from_entity_list(self._intersection_hits,
                                            self._intersections_result.total,
                                            self._intersections_result.offset)
예제 #5
0
    def get_query_result(self, params):
        """Retorna los resultados de la búsqueda de direcciones. Este método
        debe ser invocado luego de haber recorrido todo el iterador obtenido
        con 'planner_steps'.

        Args:
            params (dict): Parámetros recibidos que generaron la consulta.

        Returns:
            QueryResult: Resultados de la búsqueda de direcciones.

        """
        if not self._elasticsearch_result:
            return QueryResult.empty(params)

        address_hits = self._build_address_hits()
        return QueryResult.from_entity_list(address_hits,
                                            params,
                                            self._elasticsearch_result.total,
                                            self._elasticsearch_result.offset)