Skip to content

Commit a338dde

Browse files
committed
Fixes #534
1 parent 44ab9ae commit a338dde

File tree

1 file changed

+13
-24
lines changed

1 file changed

+13
-24
lines changed

libraries/botbuilder-core/botbuilder/core/teams/teams_helper.py

Lines changed: 13 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -12,39 +12,28 @@
1212

1313
# Optimization: The dependencies dictionary could be cached here,
1414
# and shared between the two methods.
15+
DEPENDICIES = [
16+
schema_cls
17+
for key, schema_cls in getmembers(schema)
18+
if isinstance(schema_cls, type) and issubclass(schema_cls, (Model, Enum))
19+
]
20+
DEPENDICIES += [
21+
schema_cls
22+
for key, schema_cls in getmembers(teams_schema)
23+
if isinstance(schema_cls, type) and issubclass(schema_cls, (Model, Enum))
24+
]
25+
DEPENDICIES_DICT = {dependency.__name__: dependency for dependency in DEPENDICIES}
1526

1627

1728
def deserializer_helper(msrest_cls: Type[Model], dict_to_deserialize: dict) -> Model:
18-
dependencies = [
19-
schema_cls
20-
for key, schema_cls in getmembers(schema)
21-
if isinstance(schema_cls, type) and issubclass(schema_cls, (Model, Enum))
22-
]
23-
dependencies += [
24-
schema_cls
25-
for key, schema_cls in getmembers(teams_schema)
26-
if isinstance(schema_cls, type) and issubclass(schema_cls, (Model, Enum))
27-
]
28-
dependencies_dict = {dependency.__name__: dependency for dependency in dependencies}
29-
deserializer = Deserializer(dependencies_dict)
29+
deserializer = Deserializer(DEPENDICIES_DICT)
3030
return deserializer(msrest_cls.__name__, dict_to_deserialize)
3131

3232

3333
def serializer_helper(object_to_serialize: Model) -> dict:
3434
if object_to_serialize is None:
3535
return None
3636

37-
dependencies = [
38-
schema_cls
39-
for key, schema_cls in getmembers(schema)
40-
if isinstance(schema_cls, type) and issubclass(schema_cls, (Model, Enum))
41-
]
42-
dependencies += [
43-
schema_cls
44-
for key, schema_cls in getmembers(teams_schema)
45-
if isinstance(schema_cls, type) and issubclass(schema_cls, (Model, Enum))
46-
]
47-
dependencies_dict = {dependency.__name__: dependency for dependency in dependencies}
48-
serializer = Serializer(dependencies_dict)
37+
serializer = Serializer(DEPENDICIES_DICT)
4938
# pylint: disable=protected-access
5039
return serializer._serialize(object_to_serialize)

0 commit comments

Comments
 (0)