Skip to content
14 changes: 8 additions & 6 deletions meilisearch/client.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
from meilisearch.errors import MeiliSearchError
from meilisearch.index import Index
from meilisearch.models.task import TaskInfo
from meilisearch.task import cancel_tasks, delete_tasks, get_task, get_tasks, wait_for_task
from meilisearch.task import TaskHandler


class Client:
Expand All @@ -40,6 +40,8 @@ def __init__(

self.http = HttpRequests(self.config)

self.task_handler = TaskHandler(self.config)

def create_index(self, uid: str, options: Optional[Dict[str, Any]] = None) -> Dict[str, Any]:
"""Create an index.

Expand Down Expand Up @@ -443,7 +445,7 @@ def get_tasks(
MeiliSearchApiError
An error containing details about why Meilisearch can't process your request. Meilisearch error codes are described here: https://docs.meilisearch.com/errors/#meilisearch-errors
"""
return get_tasks(self.config, parameters=parameters)
return self.task_handler.get_tasks(parameters=parameters)

def get_task(self, uid: int) -> Dict[str, Any]:
"""Get one task.
Expand All @@ -463,7 +465,7 @@ def get_task(self, uid: int) -> Dict[str, Any]:
MeiliSearchApiError
An error containing details about why Meilisearch can't process your request. Meilisearch error codes are described here: https://docs.meilisearch.com/errors/#meilisearch-errors
"""
return get_task(self.config, uid)
return self.task_handler.get_task(uid)

def cancel_tasks(self, parameters: Dict[str, Any]) -> TaskInfo:
"""Cancel a list of enqueued or processing tasks.
Expand All @@ -484,7 +486,7 @@ def cancel_tasks(self, parameters: Dict[str, Any]) -> TaskInfo:
MeiliSearchApiError
An error containing details about why Meilisearch can't process your request. Meilisearch error codes are described here: https://docs.meilisearch.com/errors/#meilisearch-errors
"""
return cancel_tasks(self.config, parameters=parameters)
return self.task_handler.cancel_tasks(parameters=parameters)

def delete_tasks(self, parameters: Dict[str, Any]) -> TaskInfo:
"""Delete a list of finished tasks.
Expand All @@ -503,7 +505,7 @@ def delete_tasks(self, parameters: Dict[str, Any]) -> TaskInfo:
MeiliSearchApiError
An error containing details about why Meilisearch can't process your request. Meilisearch error codes are described here: https://docs.meilisearch.com/errors/#meilisearch-errors
"""
return delete_tasks(self.config, parameters=parameters)
return self.task_handler.delete_tasks(parameters=parameters)

def wait_for_task(
self,
Expand Down Expand Up @@ -532,7 +534,7 @@ def wait_for_task(
MeiliSearchTimeoutError
An error containing details about why Meilisearch can't process your request. Meilisearch error codes are described here: https://docs.meilisearch.com/errors/#meilisearch-errors
"""
return wait_for_task(self.config, uid, timeout_in_ms, interval_in_ms)
return self.task_handler.wait_for_task(uid, timeout_in_ms, interval_in_ms)

def generate_tenant_token(
self,
Expand Down
9 changes: 5 additions & 4 deletions meilisearch/index.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
from meilisearch.models.document import Document, DocumentsResults
from meilisearch.models.index import IndexStats
from meilisearch.models.task import Task, TaskInfo, TaskResults
from meilisearch.task import get_task, get_tasks, wait_for_task
from meilisearch.task import TaskHandler


# pylint: disable=too-many-public-methods
Expand Down Expand Up @@ -41,6 +41,7 @@ def __init__(
"""
self.config = config
self.http = HttpRequests(config)
self.task_handler = TaskHandler(config)
self.uid = uid
self.primary_key = primary_key
self.created_at = self._iso_to_date_time(created_at)
Expand Down Expand Up @@ -165,7 +166,7 @@ def get_tasks(self, parameters: Optional[Dict[str, Any]] = None) -> TaskResults:
else:
parameters = {"indexUids": [self.uid]}

tasks = get_tasks(self.config, parameters=parameters)
tasks = self.task_handler.get_tasks(parameters=parameters)
return TaskResults(tasks)

def get_task(self, uid: int) -> Task:
Expand All @@ -186,7 +187,7 @@ def get_task(self, uid: int) -> Task:
MeiliSearchApiError
An error containing details about why Meilisearch can't process your request. Meilisearch error codes are described here: https://docs.meilisearch.com/errors/#meilisearch-errors
"""
task = get_task(self.config, uid)
task = self.task_handler.get_task(uid)
return Task(**task)

def wait_for_task(
Expand Down Expand Up @@ -216,7 +217,7 @@ def wait_for_task(
MeiliSearchTimeoutError
An error containing details about why Meilisearch can't process your request. Meilisearch error codes are described here: https://docs.meilisearch.com/errors/#meilisearch-errors
"""
task = wait_for_task(self.config, uid, timeout_in_ms, interval_in_ms)
task = self.task_handler.wait_for_task(uid, timeout_in_ms, interval_in_ms)
return Task(**task)

def get_stats(self) -> IndexStats:
Expand Down
Loading