Skip to content

Commit 0816c90

Browse files
authored
Fix a bug where a new server is run on object creation (#1592)
* Add test Signed-off-by: paul.profizi <[email protected]> * Fix for Scoping Signed-off-by: paul.profizi <[email protected]> * Fix for all Signed-off-by: paul.profizi <[email protected]> --------- Signed-off-by: paul.profizi <[email protected]>
1 parent 9d42dcd commit 0816c90

21 files changed

+77
-20
lines changed

src/ansys/dpf/core/any.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,9 @@ class Any:
3333

3434
def __init__(self, any_dpf=None, server=None):
3535
# step 1: get server
36-
self._server = server_module.get_or_create_server(server)
36+
self._server = server_module.get_or_create_server(
37+
any_dpf._server if isinstance(any_dpf, Any) else server
38+
)
3739

3840
if any_dpf is None and not self._server.meet_version("7.0"):
3941
raise errors.DpfVersionNotSupported("7.0")

src/ansys/dpf/core/collection.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,9 @@ class Collection(CollectionBase[TYPE]):
3333

3434
def __init__(self, collection=None, server=None, entries_type: type = None):
3535
# step 1: get server
36-
self._server = server_module.get_or_create_server(server)
36+
self._server = server_module.get_or_create_server(
37+
collection._server if isinstance(collection, Collection) else server
38+
)
3739
if not self._server.meet_version("8.1"):
3840
raise errors.DpfVersionNotSupported("8.1")
3941

src/ansys/dpf/core/collection_base.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,9 @@ class CollectionBase(Generic[TYPE]):
4646

4747
def __init__(self, collection=None, server: BaseServer = None):
4848
# step 1: get server
49-
self._server = server_module.get_or_create_server(server)
49+
self._server = server_module.get_or_create_server(
50+
collection._server if isinstance(collection, CollectionBase) else server
51+
)
5052

5153
# step2: if object exists, take the instance, else create it
5254
self._internal_obj = None

src/ansys/dpf/core/config.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,9 @@ class Config:
5757

5858
def __init__(self, operator_name=None, config=None, server=None, spec=None):
5959
# step 1: get server
60-
self._server = server_module.get_or_create_server(server)
60+
self._server = server_module.get_or_create_server(
61+
config._server if isinstance(config, Config) else server
62+
)
6163

6264
# step 2: get api
6365
self._api_instance = None # see _api property

src/ansys/dpf/core/custom_type_field.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,9 @@ def __init__(
9393
"""Initialize the field either with an optional field message or
9494
by connecting to a stub.
9595
"""
96-
self._server = server_module.get_or_create_server(server)
96+
self._server = server_module.get_or_create_server(
97+
field._server if isinstance(field, CustomTypeField) else server
98+
)
9799
if field is None and not self._server.meet_version("5.0"):
98100
raise errors.DpfVersionNotSupported("5.0")
99101
if unitary_type is not None:

src/ansys/dpf/core/cyclic_support.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,9 @@ class CyclicSupport:
4545
def __init__(self, cyclic_support, server=None):
4646
"""Initialize time frequency support with its `TimeFreqSupport` message (if possible)."""
4747
# step 1: get server
48-
self._server = server_module.get_or_create_server(server)
48+
self._server = server_module.get_or_create_server(
49+
cyclic_support._server if isinstance(cyclic_support, CyclicSupport) else server
50+
)
4951

5052
# step 2: get api
5153
self._api = self._server.get_api_for_type(

src/ansys/dpf/core/data_sources.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,9 @@ class DataSources:
5555
def __init__(self, result_path=None, data_sources=None, server=None):
5656
"""Initialize a connection with the server."""
5757
# step 1: get server
58-
self._server = server_module.get_or_create_server(server)
58+
self._server = server_module.get_or_create_server(
59+
data_sources._server if isinstance(data_sources, DataSources) else server
60+
)
5961

6062
# step 2: get api
6163
self._api = self._server.get_api_for_type(

src/ansys/dpf/core/data_tree.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,9 @@ def __init__(self, data=None, data_tree=None, server=None):
8484
"_holds_server",
8585
]
8686
# step 1: get server
87-
self._server_instance = server_module.get_or_create_server(server)
87+
self._server_instance = server_module.get_or_create_server(
88+
data_tree._server_instance if isinstance(data_tree, DataTree) else server
89+
)
8890

8991
if data_tree is None and not self._server.meet_version("4.0"):
9092
raise errors.DpfVersionNotSupported("4.0")

src/ansys/dpf/core/dpf_operator.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,9 @@ def __init__(self, name, config=None, server=None):
103103
self._inputs = None
104104

105105
# step 1: get server
106-
self._server = server_module.get_or_create_server(server)
106+
self._server = server_module.get_or_create_server(
107+
config._server if isinstance(config, Config) else server
108+
)
107109

108110
# step 2: get api
109111
self._api_instance = None # see _api property

src/ansys/dpf/core/field_definition.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,9 @@ class FieldDefinition:
3232

3333
def __init__(self, field_definition=None, server=None):
3434
# step 1: get server
35-
self._server = server_module.get_or_create_server(server)
35+
self._server = server_module.get_or_create_server(
36+
field_definition._server if isinstance(field_definition, FieldDefinition) else server
37+
)
3638

3739
# step 2: get api
3840
self._api = self._server.get_api_for_type(

0 commit comments

Comments
 (0)