Skip to content

Commit c3cd1c9

Browse files
authored
fix: rename ClientEntityBase to ResourceClientBase (#532)
This rename will reduce confusion in the future when reading the code. The `ClientEntity` name does not refer to anything. This is scoped as a fix because the class is public.
1 parent 9096813 commit c3cd1c9

File tree

20 files changed

+62
-42
lines changed

20 files changed

+62
-42
lines changed

hcloud/actions/client.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
import warnings
55
from typing import TYPE_CHECKING, Any, NamedTuple
66

7-
from ..core import BoundModelBase, ClientEntityBase, Meta
7+
from ..core import BoundModelBase, Meta, ResourceClientBase
88
from .domain import Action, ActionFailedException, ActionTimeoutException
99

1010
if TYPE_CHECKING:
@@ -50,7 +50,7 @@ class ActionsPageResult(NamedTuple):
5050
meta: Meta
5151

5252

53-
class ResourceActionsClient(ClientEntityBase):
53+
class ResourceActionsClient(ResourceClientBase):
5454
_resource: str
5555

5656
def __init__(self, client: Client, resource: str | None):

hcloud/certificates/client.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
from typing import TYPE_CHECKING, Any, NamedTuple
44

55
from ..actions import ActionsPageResult, BoundAction, ResourceActionsClient
6-
from ..core import BoundModelBase, ClientEntityBase, Meta
6+
from ..core import BoundModelBase, Meta, ResourceClientBase
77
from .domain import (
88
Certificate,
99
CreateManagedCertificateResponse,
@@ -103,7 +103,7 @@ class CertificatesPageResult(NamedTuple):
103103
meta: Meta
104104

105105

106-
class CertificatesClient(ClientEntityBase):
106+
class CertificatesClient(ResourceClientBase):
107107
_client: Client
108108

109109
actions: ResourceActionsClient

hcloud/core/__init__.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
11
from __future__ import annotations
22

3-
from .client import BoundModelBase, ClientEntityBase
3+
from .client import BoundModelBase, ClientEntityBase, ResourceClientBase
44
from .domain import BaseDomain, DomainIdentityMixin, Meta, Pagination
55

66
__all__ = [
7+
"BaseDomain",
78
"BoundModelBase",
89
"ClientEntityBase",
9-
"BaseDomain",
1010
"DomainIdentityMixin",
1111
"Meta",
1212
"Pagination",
13+
"ResourceClientBase",
1314
]

hcloud/core/client.py

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
from __future__ import annotations
22

3+
import warnings
34
from typing import TYPE_CHECKING, Any, Callable
45

56
if TYPE_CHECKING:
67
from .._client import Client
78

89

9-
class ClientEntityBase:
10+
class ResourceClientBase:
1011
_client: Client
1112

1213
max_per_page: int = 50
@@ -50,14 +51,32 @@ def _get_first_by(self, **kwargs): # type: ignore[no-untyped-def]
5051
return entities[0] if entities else None
5152

5253

54+
class ClientEntityBase(ResourceClientBase):
55+
"""
56+
Kept for backward compatibility.
57+
58+
.. deprecated:: 2.6.0
59+
Use :class:``hcloud.core.client.ResourceClientBase`` instead.
60+
"""
61+
62+
def __init__(self, client: Client):
63+
warnings.warn(
64+
"The 'hcloud.core.client.ClientEntityBase' class is deprecated, please use the "
65+
"'hcloud.core.client.ResourceClientBase' class instead.",
66+
DeprecationWarning,
67+
stacklevel=2,
68+
)
69+
super().__init__(client)
70+
71+
5372
class BoundModelBase:
5473
"""Bound Model Base"""
5574

5675
model: Any
5776

5877
def __init__(
5978
self,
60-
client: ClientEntityBase,
79+
client: ResourceClientBase,
6180
data: dict,
6281
complete: bool = True,
6382
):

hcloud/datacenters/client.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
from typing import TYPE_CHECKING, Any, NamedTuple
44

5-
from ..core import BoundModelBase, ClientEntityBase, Meta
5+
from ..core import BoundModelBase, Meta, ResourceClientBase
66
from ..locations import BoundLocation
77
from ..server_types import BoundServerType
88
from .domain import Datacenter, DatacenterServerTypes
@@ -55,7 +55,7 @@ class DatacentersPageResult(NamedTuple):
5555
meta: Meta
5656

5757

58-
class DatacentersClient(ClientEntityBase):
58+
class DatacentersClient(ResourceClientBase):
5959
_client: Client
6060

6161
def get_by_id(self, id: int) -> BoundDatacenter:

hcloud/firewalls/client.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
from typing import TYPE_CHECKING, Any, NamedTuple
44

55
from ..actions import ActionsPageResult, BoundAction, ResourceActionsClient
6-
from ..core import BoundModelBase, ClientEntityBase, Meta
6+
from ..core import BoundModelBase, Meta, ResourceClientBase
77
from .domain import (
88
CreateFirewallResponse,
99
Firewall,
@@ -183,7 +183,7 @@ class FirewallsPageResult(NamedTuple):
183183
meta: Meta
184184

185185

186-
class FirewallsClient(ClientEntityBase):
186+
class FirewallsClient(ResourceClientBase):
187187
_client: Client
188188

189189
actions: ResourceActionsClient

hcloud/floating_ips/client.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
from typing import TYPE_CHECKING, Any, NamedTuple
44

55
from ..actions import ActionsPageResult, BoundAction, ResourceActionsClient
6-
from ..core import BoundModelBase, ClientEntityBase, Meta
6+
from ..core import BoundModelBase, Meta, ResourceClientBase
77
from ..locations import BoundLocation
88
from .domain import CreateFloatingIPResponse, FloatingIP
99

@@ -139,7 +139,7 @@ class FloatingIPsPageResult(NamedTuple):
139139
meta: Meta
140140

141141

142-
class FloatingIPsClient(ClientEntityBase):
142+
class FloatingIPsClient(ResourceClientBase):
143143
_client: Client
144144

145145
actions: ResourceActionsClient

hcloud/images/client.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
from typing import TYPE_CHECKING, Any, NamedTuple
55

66
from ..actions import ActionsPageResult, BoundAction, ResourceActionsClient
7-
from ..core import BoundModelBase, ClientEntityBase, Meta
7+
from ..core import BoundModelBase, Meta, ResourceClientBase
88
from .domain import Image
99

1010
if TYPE_CHECKING:
@@ -112,7 +112,7 @@ class ImagesPageResult(NamedTuple):
112112
meta: Meta
113113

114114

115-
class ImagesClient(ClientEntityBase):
115+
class ImagesClient(ResourceClientBase):
116116
_client: Client
117117

118118
actions: ResourceActionsClient

hcloud/isos/client.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
from typing import TYPE_CHECKING, Any, NamedTuple
44

5-
from ..core import BoundModelBase, ClientEntityBase, Meta
5+
from ..core import BoundModelBase, Meta, ResourceClientBase
66
from .domain import Iso
77

88
if TYPE_CHECKING:
@@ -20,7 +20,7 @@ class IsosPageResult(NamedTuple):
2020
meta: Meta
2121

2222

23-
class IsosClient(ClientEntityBase):
23+
class IsosClient(ResourceClientBase):
2424
_client: Client
2525

2626
def get_by_id(self, id: int) -> BoundIso:

hcloud/load_balancer_types/client.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
from typing import TYPE_CHECKING, Any, NamedTuple
44

5-
from ..core import BoundModelBase, ClientEntityBase, Meta
5+
from ..core import BoundModelBase, Meta, ResourceClientBase
66
from .domain import LoadBalancerType
77

88
if TYPE_CHECKING:
@@ -20,7 +20,7 @@ class LoadBalancerTypesPageResult(NamedTuple):
2020
meta: Meta
2121

2222

23-
class LoadBalancerTypesClient(ClientEntityBase):
23+
class LoadBalancerTypesClient(ResourceClientBase):
2424
_client: Client
2525

2626
def get_by_id(self, id: int) -> BoundLoadBalancerType:

0 commit comments

Comments
 (0)