diff options
Diffstat (limited to 'src/onapsdk/so/so_element.py')
-rw-r--r-- | src/onapsdk/so/so_element.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/onapsdk/so/so_element.py b/src/onapsdk/so/so_element.py index fca6ba7..68866ae 100644 --- a/src/onapsdk/so/so_element.py +++ b/src/onapsdk/so/so_element.py @@ -221,3 +221,26 @@ class OrchestrationRequest(SoElement, WaitForFinishMixin, ABC): """ return self.finished and self.status == self.StatusEnum.FAILED + + @property + def status_message(self) -> str: + """Object instantiation status information. + + It's populated by call SO orchestation request endpoint. + + Returns: + str: status message of orchestration request. + + """ + response: dict = self.send_message_json( + "GET", + f"Check {self.request_id} orchestration request status", + (f"{self.base_url}/onap/so/infra/" + f"orchestrationRequests/{self.api_version}/{self.request_id}"), + headers=headers_so_creator(OnapService.headers) + ) + try: + return response["request"]["requestStatus"]["statusMessage"] + except (KeyError, ValueError): + self._logger.exception("Invalid statusMessage.") + return "Unknown request state" |