code: def remove(self):
          
          LOGGER.debug("Cluster.remove - " + self.name)
          if self.id is None:
              return None
          else:
              params = SessionService.complete_transactional_req({
                  'name': self.name
              })
  
              if MappingService.driver_type != DriverFactory.DRIVER_REST:
                  params['OPERATION'] = 'deleteCluster'
                  args = {'properties': params}
              else:
                  args = {'http_operation': 'GET', 'operation_path': 'delete', 'parameters': params}
  
              response = ClusterService.requester.call(args)
  
              if MappingService.driver_type != DriverFactory.DRIVER_REST:
                  response = response.get()
  
              if response.rc != 0:
                  LOGGER.warning(
                      'Cluster.remove - Problem while deleting cluster ' + self.name +
                      '. Reason: ' + str(response.response_content) + ' - ' + str(response.error_message) +
                      " (" + str(response.rc) + ")"
                  )
                  if response.rc == 500 and ArianeMappingOverloadError.ERROR_MSG in response.error_message:
                      raise ArianeMappingOverloadError("Cluster.remove", ArianeMappingOverloadError.ERROR_MSG)
                  # traceback.print_stack()
                  return self
              else:
                  return None
docs: remove this object from Ariane server
          :return: null if successfully removed else self