(
self,
environment: Environment,
from_replica: bool = False,
)
| 1056 | return filters |
| 1057 | |
| 1058 | def _get_flags_from_cache( |
| 1059 | self, |
| 1060 | environment: Environment, |
| 1061 | from_replica: bool = False, |
| 1062 | ) -> list[typing.Any]: |
| 1063 | data: list[typing.Any] |
| 1064 | # Include request origin in cache key to isolate client vs server requests |
| 1065 | cache_key = f"{environment.api_key}:{self.request.originated_from.value}" |
| 1066 | data = flags_cache.get(cache_key) |
| 1067 | if not data: |
| 1068 | data = self.get_serializer( |
| 1069 | get_environment_flags_list( |
| 1070 | environment=environment, |
| 1071 | additional_filters=self._additional_filters, |
| 1072 | from_replica=from_replica, |
| 1073 | ), |
| 1074 | many=True, |
| 1075 | ).data |
| 1076 | flags_cache.set(cache_key, data, settings.CACHE_FLAGS_SECONDS) |
| 1077 | |
| 1078 | return data |
| 1079 | |
| 1080 | def _get_flags_response_with_identifier( |
| 1081 | self, request: Request, identifier: str |
no test coverage detected