def run(self) -> Model: try: self.validate() return FilterSetDAO.delete(self._filter_set, commit=True) except DAODeleteFailedError as err: raise FilterSetDeleteFailedError(str(self._filter_set_id), "") from err
def validate(self) -> None: self._validate_filterset_dashboard_exists() try: self.validate_exist_filter_use_cases_set() except FilterSetNotFoundError as err: if FilterSetDAO.find_by_id(self._filter_set_id): # type: ignore raise FilterSetForbiddenError( 'the filter-set does not related to dashboard "%s"' % str(self._dashboard_id)) from err raise err
def run(self) -> Model: try: self.validate() if (OWNER_TYPE_FIELD in self._properties and self._properties[OWNER_TYPE_FIELD] == "Dashboard"): self._properties[OWNER_ID_FIELD] = self._dashboard_id return FilterSetDAO.update(self._filter_set, self._properties, commit=True) except DAOUpdateFailedError as err: raise FilterSetUpdateFailedError(str(self._filter_set_id), "") from err
def run(self) -> Model: self.validate() self._properties[DASHBOARD_ID_FIELD] = self._dashboard.id filter_set = FilterSetDAO.create(self._properties, commit=True) return filter_set