@@ -382,6 +382,7 @@ def __init__(self):
382382 self ._session_instance = None
383383 self ._base_service_instance = None
384384 self ._context = None
385+ self ._info_instance = None
385386 self ._docker_config = server_factory .RunningDockerConfig ()
386387
387388 def set_as_global (self , as_global = True ):
@@ -431,9 +432,10 @@ def info(self):
431432 ``"server_port"``, ``"server_process_id"``, ``"server_version"`` , ``"os"``
432433 and ``"path"`` keys.
433434 """
434- server_info = self ._base_service .server_info
435- server_info ["path" ] = self .ansys_path
436- return server_info
435+ if not self ._info_instance :
436+ self ._info_instance = self ._base_service .server_info
437+ self ._info_instance ["path" ] = self .ansys_path
438+ return self ._info_instance
437439
438440 def _del_session (self ):
439441 if self ._session_instance :
@@ -782,6 +784,7 @@ def _create_shutdown_funcs(self):
782784
783785 def shutdown (self ):
784786 if self .live :
787+ _ = self .info # initializing the info variable (giving access to ip and port): this can be required if start_local_server is called afterwards
785788 if self ._remote_instance :
786789 self ._remote_instance .delete ()
787790 try :
@@ -827,10 +830,7 @@ def ip(self):
827830 -------
828831 ip : str
829832 """
830- try :
831- return self .info ["server_ip" ]
832- except :
833- return ""
833+ return self .info ["server_ip" ]
834834
835835 @property
836836 def port (self ):
@@ -840,10 +840,7 @@ def port(self):
840840 -------
841841 port : int
842842 """
843- try :
844- return self .info ["server_port" ]
845- except :
846- return 0
843+ return self .info ["server_port" ]
847844
848845 @property
849846 def external_ip (self ):
@@ -1034,8 +1031,6 @@ def __init__(
10341031
10351032 self .live = False
10361033 super ().__init__ ()
1037-
1038- self ._info_instance = None
10391034 self ._own_process = launch_server
10401035 self ._local_server = False
10411036 self ._stubs = {}
@@ -1134,10 +1129,7 @@ def ip(self):
11341129 -------
11351130 ip : str
11361131 """
1137- try :
1138- return self .info ["server_ip" ]
1139- except :
1140- return ""
1132+ return self .info ["server_ip" ]
11411133
11421134 @property
11431135 def port (self ):
@@ -1147,10 +1139,7 @@ def port(self):
11471139 -------
11481140 port : int
11491141 """
1150- try :
1151- return self .info ["server_port" ]
1152- except :
1153- return 0
1142+ return self .info ["server_port" ]
11541143
11551144 @property
11561145 def external_ip (self ):
@@ -1221,14 +1210,15 @@ def local_server(self, val):
12211210
12221211 def shutdown (self ):
12231212 if self ._own_process and self .live :
1213+ _ = self .info # initializing the info variable (giving access to ip and port): this can be required if start_local_server is called afterwards
1214+ if self ._remote_instance :
1215+ self ._remote_instance .delete ()
12241216 try :
12251217 if hasattr (self , "_preparing_shutdown_func" ):
12261218 self ._preparing_shutdown_func [0 ](self ._preparing_shutdown_func [1 ])
12271219 except Exception as e :
12281220 warnings .warn ("couldn't prepare shutdown: " + str (e .args ))
12291221
1230- if self ._remote_instance :
1231- self ._remote_instance .delete ()
12321222 else :
12331223 try :
12341224 if hasattr (self , "_shutdown_func" ):
0 commit comments