Skip to content

Commit 20f4657

Browse files
committed
rename BaseResourceModel to BaseModel
1 parent 27e40d9 commit 20f4657

File tree

10 files changed

+39
-43
lines changed

10 files changed

+39
-43
lines changed

python/rpdk/python/templates/models.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@
1515
)
1616

1717
from cloudformation_cli_python_lib.interface import (
18+
BaseModel,
1819
BaseResourceHandlerRequest,
19-
BaseResourceModel,
2020
)
2121
from cloudformation_cli_python_lib.recast import recast_object
2222
from cloudformation_cli_python_lib.utils import deserialize_list
@@ -39,7 +39,7 @@ class ResourceHandlerRequest(BaseResourceHandlerRequest):
3939

4040
{% for model, properties in models.items() %}
4141
@dataclass
42-
class {{ model }}(BaseResourceModel):
42+
class {{ model }}(BaseModel):
4343
{% for name, type in properties.items() %}
4444
{{ name }}: Optional[{{ type|translate_type }}]
4545
{% endfor %}

src/cloudformation_cli_python_lib/callback.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
from uuid import uuid4
55

66
from .boto3_proxy import SessionProxy
7-
from .interface import BaseResourceModel, HandlerErrorCode, OperationStatus
7+
from .interface import BaseModel, HandlerErrorCode, OperationStatus
88
from .utils import KitchenSinkEncoder
99

1010
LOG = logging.getLogger(__name__)
@@ -16,7 +16,7 @@ def report_progress( # pylint: disable=too-many-arguments
1616
error_code: Optional[HandlerErrorCode],
1717
operation_status: OperationStatus,
1818
current_operation_status: Optional[OperationStatus],
19-
resource_model: Optional[BaseResourceModel],
19+
resource_model: Optional[BaseModel],
2020
status_message: str,
2121
) -> None:
2222
client = session.client("cloudformation")

src/cloudformation_cli_python_lib/interface.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ class HandlerErrorCode(str, _AutoName):
5757
InternalFailure = auto()
5858

5959

60-
class BaseResourceModel:
60+
class BaseModel:
6161
def _serialize(self) -> Mapping[str, Any]:
6262
return {
6363
k: self._serialize_item(v)
@@ -68,7 +68,7 @@ def _serialize(self) -> Mapping[str, Any]:
6868
def _serialize_item(self, v: Any) -> Any:
6969
if isinstance(v, list):
7070
return self._serialize_list(v)
71-
if isinstance(v, BaseResourceModel):
71+
if isinstance(v, BaseModel):
7272
return v._serialize() # pylint: disable=protected-access
7373
return v
7474

@@ -77,8 +77,8 @@ def _serialize_list(self, src_list: List[Any]) -> List[Any]:
7777

7878
@classmethod
7979
def _deserialize(
80-
cls: Type["BaseResourceModel"], json_data: Optional[Mapping[str, Any]]
81-
) -> Optional["BaseResourceModel"]:
80+
cls: Type["BaseModel"], json_data: Optional[Mapping[str, Any]]
81+
) -> Optional["BaseModel"]:
8282
raise NotImplementedError()
8383

8484

@@ -91,8 +91,8 @@ class ProgressEvent:
9191
message: str = ""
9292
callbackContext: Optional[MutableMapping[str, Any]] = None
9393
callbackDelaySeconds: int = 0
94-
resourceModel: Optional[BaseResourceModel] = None
95-
resourceModels: Optional[List[BaseResourceModel]] = None
94+
resourceModel: Optional[BaseModel] = None
95+
resourceModels: Optional[List[BaseModel]] = None
9696
nextToken: Optional[str] = None
9797

9898
def _serialize(
@@ -132,7 +132,7 @@ def failed(
132132
class BaseResourceHandlerRequest:
133133
# pylint: disable=invalid-name
134134
clientRequestToken: str
135-
desiredResourceState: Optional[BaseResourceModel]
136-
previousResourceState: Optional[BaseResourceModel]
135+
desiredResourceState: Optional[BaseModel]
136+
previousResourceState: Optional[BaseModel]
137137
logicalResourceIdentifier: Optional[str]
138138
nextToken: Optional[str]

src/cloudformation_cli_python_lib/resource.py

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
from .metrics import MetricsPublisherProxy
2121
from .scheduler import cleanup_cloudwatch_events, reschedule_after_minutes
2222
from .utils import (
23-
BaseResourceModel,
23+
BaseModel,
2424
Credentials,
2525
HandlerRequest,
2626
KitchenSinkEncoder,
@@ -60,11 +60,9 @@ def wrapper(self: Any, event: MutableMapping[str, Any], context: Any) -> Any:
6060

6161

6262
class Resource:
63-
def __init__(
64-
self, type_name: str, resouce_model_cls: Type[BaseResourceModel]
65-
) -> None:
63+
def __init__(self, type_name: str, resouce_model_cls: Type[BaseModel]) -> None:
6664
self.type_name = type_name
67-
self._model_cls: Type[BaseResourceModel] = resouce_model_cls
65+
self._model_cls: Type[BaseModel] = resouce_model_cls
6866
self._handlers: MutableMapping[Action, HandlerSignature] = {}
6967

7068
def handler(self, action: Action) -> Callable[[HandlerSignature], HandlerSignature]:

src/cloudformation_cli_python_lib/utils.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
)
1616

1717
from .exceptions import InvalidRequest
18-
from .interface import Action, BaseResourceHandlerRequest, BaseResourceModel
18+
from .interface import Action, BaseModel, BaseResourceHandlerRequest
1919

2020

2121
class KitchenSinkEncoder(json.JSONEncoder):
@@ -116,9 +116,7 @@ class UnmodelledRequest:
116116
logicalResourceIdentifier: Optional[str] = None
117117
nextToken: Optional[str] = None
118118

119-
def to_modelled(
120-
self, model_cls: Type[BaseResourceModel]
121-
) -> BaseResourceHandlerRequest:
119+
def to_modelled(self, model_cls: Type[BaseModel]) -> BaseResourceHandlerRequest:
122120
# pylint: disable=protected-access
123121
return BaseResourceHandlerRequest(
124122
clientRequestToken=self.clientRequestToken,

tests/lib/callback_test.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import boto3
66
from cloudformation_cli_python_lib.callback import report_progress
77
from cloudformation_cli_python_lib.interface import (
8-
BaseResourceModel,
8+
BaseModel,
99
HandlerErrorCode,
1010
OperationStatus,
1111
)
@@ -47,7 +47,7 @@ def test_report_progress_full():
4747
HandlerErrorCode.InternalFailure,
4848
OperationStatus.FAILED,
4949
OperationStatus.IN_PROGRESS,
50-
BaseResourceModel(),
50+
BaseModel(),
5151
"test message",
5252
)
5353
session._cfn.record_handler_progress.assert_called_once_with(

tests/lib/interface_test.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
import boto3
88
import pytest
99
from cloudformation_cli_python_lib.interface import (
10-
BaseResourceModel,
10+
BaseModel,
1111
HandlerErrorCode,
1212
OperationStatus,
1313
ProgressEvent,
@@ -35,18 +35,18 @@ def bearer_token():
3535

3636
# don't call this TestModel, or pytest will try and execute it
3737
@dataclass
38-
class ResourceModel(BaseResourceModel):
38+
class ResourceModel(BaseModel):
3939
somekey: str
4040
someotherkey: str
4141

4242

4343
def test_base_resource_model__deserialize():
4444
with pytest.raises(NotImplementedError):
45-
BaseResourceModel()._deserialize({})
45+
BaseModel()._deserialize({})
4646

4747

4848
def test_base_resource_model__serialize():
49-
brm = BaseResourceModel()
49+
brm = BaseModel()
5050
assert brm._serialize() == brm.__dict__
5151

5252

tests/lib/resource_test.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
from cloudformation_cli_python_lib.exceptions import InternalFailure, InvalidRequest
88
from cloudformation_cli_python_lib.interface import (
99
Action,
10-
BaseResourceModel,
10+
BaseModel,
1111
HandlerErrorCode,
1212
OperationStatus,
1313
ProgressEvent,
@@ -106,7 +106,7 @@ def test_entrypoint_success():
106106

107107
def test_entrypoint_handler_raises():
108108
@dataclass
109-
class ResourceModel(BaseResourceModel):
109+
class ResourceModel(BaseModel):
110110
a_string: str
111111

112112
@classmethod

tests/lib/sample_model.py

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@
1717
)
1818

1919
from cloudformation_cli_python_lib.interface import (
20+
BaseModel,
2021
BaseResourceHandlerRequest,
21-
BaseResourceModel,
2222
)
2323
from cloudformation_cli_python_lib.recast import recast_object
2424
from cloudformation_cli_python_lib.utils import deserialize_list
@@ -34,7 +34,7 @@ class ResourceHandlerRequest(BaseResourceHandlerRequest):
3434

3535

3636
@dataclass
37-
class ResourceModel(BaseResourceModel):
37+
class ResourceModel(BaseModel):
3838
ListListAny: Optional[Sequence[Sequence[Any]]]
3939
ListSetInt: Optional[Sequence[AbstractSet[int]]]
4040
ListListInt: Optional[Sequence[Sequence[int]]]
@@ -89,7 +89,7 @@ def _deserialize(
8989

9090

9191
@dataclass
92-
class NestedList(BaseResourceModel):
92+
class NestedList(BaseModel):
9393
NestedListInt: Optional[bool]
9494
NestedListList: Optional[Sequence[float]]
9595

@@ -108,7 +108,7 @@ def _deserialize(
108108

109109

110110
@dataclass
111-
class AList(BaseResourceModel):
111+
class AList(BaseModel):
112112
DeeperBool: Optional[bool]
113113
DeeperList: Optional[Sequence[int]]
114114
DeeperDictInList: Optional["_DeeperDictInList"]
@@ -131,7 +131,7 @@ def _deserialize(
131131

132132

133133
@dataclass
134-
class DeeperDictInList(BaseResourceModel):
134+
class DeeperDictInList(BaseModel):
135135
DeepestBool: Optional[bool]
136136
DeepestList: Optional[Sequence[int]]
137137

@@ -150,7 +150,7 @@ def _deserialize(
150150

151151

152152
@dataclass
153-
class ADict(BaseResourceModel):
153+
class ADict(BaseModel):
154154
DeepBool: Optional[bool]
155155
DeepList: Optional[Sequence[int]]
156156
DeepDict: Optional["_DeepDict"]
@@ -171,7 +171,7 @@ def _deserialize(
171171

172172

173173
@dataclass
174-
class DeepDict(BaseResourceModel):
174+
class DeepDict(BaseModel):
175175
DeeperBool: Optional[bool]
176176
DeeperList: Optional[Sequence[int]]
177177
DeeperDict: Optional["_DeeperDict"]
@@ -192,7 +192,7 @@ def _deserialize(
192192

193193

194194
@dataclass
195-
class DeeperDict(BaseResourceModel):
195+
class DeeperDict(BaseModel):
196196
DeepestBool: Optional[bool]
197197
DeepestList: Optional[Sequence[int]]
198198

@@ -211,7 +211,7 @@ def _deserialize(
211211

212212

213213
@dataclass
214-
class SimpleResourceModel(BaseResourceModel):
214+
class SimpleResourceModel(BaseModel):
215215
AnInt: Optional[int]
216216
ABool: Optional[bool]
217217

tests/lib/utils_test.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
import pytest
66
from cloudformation_cli_python_lib.exceptions import InvalidRequest
7-
from cloudformation_cli_python_lib.interface import BaseResourceModel
7+
from cloudformation_cli_python_lib.interface import BaseModel
88
from cloudformation_cli_python_lib.utils import (
99
HandlerRequest,
1010
KitchenSinkEncoder,
@@ -110,7 +110,7 @@ def test_handler_request_serde_roundtrip():
110110

111111

112112
def test_unmodelled_request_to_modelled():
113-
model_cls = Mock(spec_set=BaseResourceModel)
113+
model_cls = Mock(spec_set=BaseModel)
114114
model_cls._deserialize.side_effect = [sentinel.new, sentinel.old]
115115

116116
unmodelled = UnmodelledRequest(
@@ -133,10 +133,10 @@ def test_unmodelled_request_to_modelled():
133133

134134

135135
def test_deserialize_list_empty():
136-
assert deserialize_list(None, BaseResourceModel) is None
137-
assert deserialize_list([], BaseResourceModel) is None
136+
assert deserialize_list(None, BaseModel) is None
137+
assert deserialize_list([], BaseModel) is None
138138

139139

140140
def test_deserialize_list_invalid():
141141
with pytest.raises(InvalidRequest):
142-
deserialize_list([(1, 2)], BaseResourceModel)
142+
deserialize_list([(1, 2)], BaseModel)

0 commit comments

Comments
 (0)