docs: def save(self):
          """
          save or update this entity on Ariane server
          :return:
          """
          LOGGER.debug("InjectorUITreeEntity.save")
          if self.id and self.value and self.type:
              ok = True
  
              if InjectorUITreeService.find_ui_tree_entity(self.id) is None:  # SAVE
                  self_string = str(self.injector_ui_tree_menu_entity_2_json(ignore_genealogy=True)).replace("'", '"')
                  args = {'properties': {'OPERATION': 'REGISTER', 'TREE_MENU_ENTITY': self_string}}
                  result = InjectorUITreeService.requester.call(args).get()
                  if result.rc != 0:
                      err_msg = 'InjectorUITreeEntity.save - Problem while saving injector UI Tree Menu Entity (id:' + \
                                self.id + '). ' + \
                                'Reason: ' + str(result.response_content) + '-' + str(result.error_message) + \
                                " (" + str(result.rc) + ")"
                      LOGGER.warning(err_msg)
                      ok = False
  
              else:  # UPDATE
                  self_string = str(self.injector_ui_tree_menu_entity_2_json(ignore_genealogy=True)).replace("'", '"')
                  args = {'properties': {'OPERATION': 'UPDATE', 'TREE_MENU_ENTITY': self_string}}
                  result = InjectorUITreeService.requester.call(args).get()
                  if result.rc != 0:
                      err_msg = 'InjectorUITreeEntity.save - Problem while saving injector UI Tree Menu Entity (id:' + \
                                self.id + '). ' + \
                                'Reason: ' + str(result.response_content) + '-' + str(result.error_message) + \
                                " (" + str(result.rc) + ")"
                      LOGGER.warning(err_msg)
                      ok = False
  
              if ok and self.parent_id is not None:
                  args = {'properties': {'OPERATION': 'SET_PARENT', 'TREE_MENU_ENTITY_ID': self.id,
                                         'TREE_MENU_ENTITY_PARENT_ID': self.parent_id}}
                  result = InjectorUITreeService.requester.call(args).get()
                  if result.rc != 0:
                      err_msg = 'InjectorUITreeEntity.save - Problem while updating injector UI Tree Menu Entity (id:' + \
                                self.id + '). ' + \
                                'Reason: ' + str(result.response_content) + '-' + str(result.error_message) + \
                                " (" + str(result.rc) + ")"
                      LOGGER.warning(err_msg)
          else:
              err_msg = 'InjectorUITreeEntity.save - Problem while saving or updating ' \
                        'injector UI Tree Menu Entity (id:' + self.id + '). ' + \
                        'Reason: id and/or value and/or type is/are not defined !'
              LOGGER.debug(err_msg)