Skip to content

Commit 48f3dbc

Browse files
committed
Parent MeiliSearch error class, single file and heritage
1 parent 9e86db9 commit 48f3dbc

File tree

4 files changed

+32
-24
lines changed

4 files changed

+32
-24
lines changed

meilisearch/_httprequests.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import requests
2-
from meilisearch.meilisearch_api_error import MeiliSearchApiError
3-
from meilisearch.meilisearch_communication_error import MeiliSearchCommunicationError
2+
from meilisearch.errors import MeiliSearchApiError, MeiliSearchCommunicationError
43

54
class HttpRequests:
65

meilisearch/errors.py

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
import json
2+
3+
class MeiliSearchError(Exception):
4+
"""Generic class for MeiliSearch error handling"""
5+
6+
def __init__(self, message):
7+
self.message = message
8+
super().__init__(self.message)
9+
10+
def __str__(self):
11+
return f'MeiliSearchError, {self.message}'
12+
13+
class MeiliSearchApiError(MeiliSearchError):
14+
"""Error sent by MeiliSearch API"""
15+
16+
def __init__(self, error, request):
17+
self.status_code = request.status_code
18+
if request.text:
19+
self.message = f'{json.loads(request.text)["message"]}'
20+
else:
21+
self.message = error
22+
super().__init__(self.message)
23+
24+
def __str__(self):
25+
return f'MeiliSearchApiError, HTTP status: {self.status_code} -> {self.message}'
26+
27+
class MeiliSearchCommunicationError(MeiliSearchError):
28+
"""Error stablishing a connection to MeiliSearch"""
29+
30+
def __str__(self):
31+
return f'MeiliSearchCommunicationError, {self.message}'

meilisearch/meilisearch_api_error.py

Lines changed: 0 additions & 14 deletions
This file was deleted.

meilisearch/meilisearch_communication_error.py

Lines changed: 0 additions & 8 deletions
This file was deleted.

0 commit comments

Comments
 (0)