(self, user: FFAdminUser | APIKeyUser = None)
| 189 | self._reset_initial_state() # type: ignore[no-untyped-call] |
| 190 | |
| 191 | def delete(self, user: FFAdminUser | APIKeyUser = None) -> None: # type: ignore[assignment] |
| 192 | self.dynamo_wrapper.delete_item(self.engine_identity_model.composite_key) |
| 193 | self.engine_identity_model.identity_features.clear() |
| 194 | changeset = self._get_changes() |
| 195 | self._update_feature_overrides( |
| 196 | changeset=changeset, |
| 197 | user=user, |
| 198 | ) |
| 199 | self._reset_initial_state() # type: ignore[no-untyped-call] |
| 200 | |
| 201 | if settings.CLICKHOUSE_ENABLED: |
| 202 | from segment_membership.services import enqueue_membership_refresh |
| 203 | |
| 204 | enqueue_membership_refresh( |
| 205 | self.environment.project, |
| 206 | delay_until=( |
| 207 | timezone.now() |
| 208 | + timedelta( |
| 209 | seconds=settings.SEGMENT_MEMBERSHIP_DELETE_REFRESH_DELAY_SECONDS |
| 210 | ) |
| 211 | ), |
| 212 | ) |
| 213 | |
| 214 | def synchronise_features(self, valid_feature_names: typing.Collection[str]) -> None: |
| 215 | identity_feature_names = { |
no test coverage detected