Skip to content

Commit 1d13a69

Browse files
committed
chore: restructure src code
1 parent 0478557 commit 1d13a69

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+118
-90
lines changed

eventsourcingdb/__init__.py

Lines changed: 38 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,38 @@
1-
from .client import Client as EsdbClient
1+
from .bound import Bound, BoundType
2+
from .client import Client
3+
from .container import Container
4+
from .event import Event, EventCandidate
5+
from .errors import ClientError, CustomError, InternalError, ServerError, ValidationError
6+
from .observe_events import (
7+
ObserveEventsOptions,
8+
ObserveFromLatestEvent,
9+
IfEventIsMissingDuringObserve
10+
)
11+
from .read_events import ReadEventsOptions, ReadFromLatestEvent, IfEventIsMissingDuringRead, Order
12+
from .read_event_types import EventType, is_event_type
13+
from .read_subjects import is_subject
14+
from .write_events import Precondition, IsSubjectOnEventId, IsSubjectPristine
15+
16+
17+
__all__ = [
18+
'Bound', 'BoundType',
19+
20+
'Client',
21+
22+
'Container',
23+
24+
'Event', 'EventCandidate',
25+
26+
'EventType', 'is_event_type',
27+
28+
'is_subject',
29+
30+
'ObserveEventsOptions', 'ObserveFromLatestEvent', 'IfEventIsMissingDuringObserve',
31+
32+
'Precondition', 'IsSubjectOnEventId', 'IsSubjectPristine',
33+
34+
'ReadEventsOptions', 'ReadFromLatestEvent', 'IfEventIsMissingDuringRead', 'Order',
35+
36+
'ClientError', 'CustomError', 'InternalError', 'ServerError', 'ValidationError',
37+
38+
]

eventsourcingdb/client.py

Lines changed: 15 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -6,25 +6,20 @@
66
from http import HTTPStatus
77
import json
88

9-
from .handlers.is_heartbeat import is_heartbeat
10-
from .handlers.is_stream_error import is_stream_error
11-
from .handlers.parse_raw_message import parse_raw_message
12-
from .handlers.is_event import is_event
13-
14-
from .errors.custom_error import CustomError
15-
from .errors.internal_error import InternalError
16-
from .errors.server_error import ServerError
17-
from .errors.validation_error import ValidationError
18-
from .event.event import Event
19-
from .event.event_candidate import EventCandidate
20-
from .handlers.observe_events.observe_events_options import ObserveEventsOptions
21-
from .handlers.read_event_types.event_type import EventType
22-
from .handlers.read_event_types.is_event_type import is_event_type
23-
from .handlers.read_subjects.is_subject import is_subject
24-
from .handlers.read_events import ReadEventsOptions
25-
from .handlers.write_events import Precondition
26-
from .http_client.http_client import HttpClient
27-
from .http_client.response import Response
9+
from .is_heartbeat import is_heartbeat
10+
from .is_stream_error import is_stream_error
11+
from .is_event import is_event
12+
from .parse_raw_message import parse_raw_message
13+
from .read_events import ReadEventsOptions
14+
15+
from .errors import CustomError, InternalError, ServerError, ValidationError
16+
from .event import Event, EventCandidate
17+
from .observe_events import ObserveEventsOptions
18+
from .read_event_types import EventType, is_event_type
19+
from .read_subjects import is_subject
20+
21+
from .write_events import Precondition
22+
from .http_client import HttpClient, Response
2823

2924

3025
T = TypeVar('T')
@@ -226,7 +221,7 @@ async def run_eventql_query(self, query: str) -> AsyncGenerator[Any]:
226221

227222
if is_stream_error(message):
228223
raise ServerError(f'{message['payload']['error']}.')
229-
#pylint: disable=R2004
224+
# pylint: disable=R2004
230225
if message.get('type') == 'row':
231226
payload = message['payload']
232227

eventsourcingdb/container.py

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,6 @@ def start(self) -> 'Container':
128128
if self._container is not None:
129129
return self
130130

131-
# Fix too-many-try-statements by breaking into separate methods
132131
self._pull_or_get_image()
133132
self._cleanup_existing_containers()
134133
self._create_container()
@@ -138,25 +137,19 @@ def start(self) -> 'Container':
138137
return self
139138

140139
def _pull_or_get_image(self) -> None:
141-
"""Pull the image or use local image if available."""
142140
try:
143-
# Try to pull the latest image
144141
self._docker_client.images.pull(self._image_name, self._image_tag)
145142
except errors.APIError as e:
146-
# Handle the API error
147143
self._handle_image_pull_error(e)
148144

149145
def _handle_image_pull_error(self, error):
150-
"""Handle error when pulling image fails by checking for local version."""
151-
# Check if we already have the image locally
152146
image_name = f"{self._image_name}:{self._image_tag}"
153147
try:
154148
self._docker_client.images.get(image_name)
155149
except errors.ImageNotFound:
156-
# If the image isn't available locally either, we can't continue
157150
raise RuntimeError(
158151
f'Could not pull image and no local image available: {error}') from error
159-
# If we get here, the image exists locally, so we can continue
152+
160153
logging.warning("Warning: Could not pull image: %s. Using locally cached image.", error)
161154

162155
def stop(self) -> None:
@@ -202,7 +195,6 @@ def _wait_for_http(self, path: str, timeout: int) -> None:
202195
if time.time() - start_time >= timeout:
203196
break
204197

205-
# Extract request into a helper method to reduce try statements
206198
if self._check_endpoint_available(url):
207199
return
208200

eventsourcingdb/errors/__init__.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
from .client_error import ClientError
2+
from .custom_error import CustomError
3+
from .internal_error import InternalError
4+
from .server_error import ServerError
5+
from .validation_error import ValidationError

eventsourcingdb/errors/invalid_parameter_error.py

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

eventsourcingdb/event/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
from .event import Event
2+
from .event_candidate import EventCandidate

eventsourcingdb/handlers/__init__.py

Whitespace-only changes.

eventsourcingdb/handlers/observe_events/__init__.py

Whitespace-only changes.

eventsourcingdb/handlers/read_event_types/__init__.py

Whitespace-only changes.

0 commit comments

Comments
 (0)