Skip to content

Commit 6d85060

Browse files
feat: sync remote design to client after get_active_design call (#1014)
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
1 parent a01545e commit 6d85060

File tree

2 files changed

+16
-2
lines changed

2 files changed

+16
-2
lines changed

src/ansys/geometry/core/modeler.py

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -166,17 +166,30 @@ def create_design(self, name: str) -> "Design":
166166
)
167167
return self._designs[design.design_id]
168168

169-
def get_active_design(self) -> "Design":
169+
def get_active_design(self, sync_with_backend: bool = True) -> "Design":
170170
"""
171171
Get the active design on the modeler object.
172172
173+
Parameters
174+
----------
175+
sync_with_backend : bool, default: True
176+
Whether to sync the active design with the remote service. If set to False,
177+
the active design may be out-of-sync with the remote service. This is useful
178+
when the active design is known to be up-to-date.
179+
173180
Returns
174181
-------
175182
Design
176183
Design object already existing on the modeler.
177184
"""
178185
for _, design in self._designs.items():
179186
if design._is_active:
187+
188+
# Check if sync_with_backend is requested
189+
if sync_with_backend:
190+
design._update_design_inplace()
191+
192+
# Return the active design
180193
return design
181194

182195
return None

tests/integration/test_design.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1834,5 +1834,6 @@ def test_multiple_designs(modeler: Modeler, tmp_path_factory: pytest.TempPathFac
18341834
def test_get_active_design(modeler: Modeler):
18351835
"""Return the active design from the designs dictionary of the modeler."""
18361836
design1 = modeler.create_design("Design1")
1837+
d1_id = design1.design_id
18371838
active_design = modeler.get_active_design()
1838-
assert active_design.design_id == design1.design_id
1839+
assert active_design.design_id == d1_id

0 commit comments

Comments
 (0)