Skip to content

Commit 948802d

Browse files
committed
feat(ports): add details
1 parent b762e23 commit 948802d

File tree

5 files changed

+19
-19
lines changed

5 files changed

+19
-19
lines changed

src/tgdb/application/output_commits.py

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,12 @@
55
from tgdb.application.ports.notifying import Notifying
66
from tgdb.application.ports.queque import Queque
77
from tgdb.application.ports.shared_horizon import SharedHorizon
8-
from tgdb.entities.transaction import (
9-
TransactionCommit,
10-
TransactionCommit,
11-
)
8+
from tgdb.entities.horizon.transaction import PreparedCommit
129

1310

1411
@dataclass(frozen=True)
1512
class OutputCommits:
16-
commit_buffer: Buffer[TransactionCommit]
13+
commit_buffer: Buffer[PreparedCommit]
1714
notifying: Notifying[Sequence[TransactionCommit]]
1815
output_commits: Queque[Sequence[TransactionCommit]]
1916
shared_horizon: SharedHorizon
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
from collections.abc import Awaitable
2+
3+
from tgdb.entities.time.logic_time import LogicTime
4+
5+
6+
class Clock(Awaitable[LogicTime]): ...

src/tgdb/application/ports/logic_clock.py

Lines changed: 0 additions & 8 deletions
This file was deleted.
Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
from abc import ABC, abstractmethod
22

3+
from tgdb.entities.horizon.transaction import Commit, ConflictError, NonSerializableWriteTransactionError
34

4-
class Notifying[ValueT](ABC):
5+
6+
type Publishable = Commit | ConflictError | NonSerializableWriteTransactionError
7+
8+
9+
class Notifying(ABC):
510
@abstractmethod
6-
async def publish(self, value: ValueT, /) -> None: ...
11+
async def publish(self, value: Publishable, /) -> None: ...
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
from abc import ABC, abstractmethod
2-
from contextlib import AbstractAsyncContextManager
1+
from abc import ABC
2+
from collections.abc import Awaitable
33

4-
from tgdb.entities.transaction_horizon import TransactionHorizon
4+
from tgdb.entities.horizon.horizon import Horizon
55

66

7-
class SharedHorizon(AbstractAsyncContextManager[TransactionHorizon], ABC): ...
7+
class SharedHorizon(Awaitable[Horizon], ABC): ...

0 commit comments

Comments
 (0)