Skip to content

Commit

Permalink
Remove obsolete elasticsearch related code
Browse files Browse the repository at this point in the history
  • Loading branch information
juuso-j committed Jul 17, 2023
1 parent a070d5e commit 1cdcc79
Showing 1 changed file with 0 additions and 56 deletions.
56 changes: 0 additions & 56 deletions services/api.py
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,6 @@
else:
DEFAULT_RENDERERS = ()

# This allows us to find a serializer for Haystack search results
serializers_by_model = {}

all_views = []

Expand All @@ -63,14 +61,6 @@ def register_view(klass, name, basename=None):
entry["basename"] = basename
all_views.append(entry)

if (
klass.serializer_class
and hasattr(klass.serializer_class, "Meta")
and hasattr(klass.serializer_class.Meta, "model")
):
model = klass.serializer_class.Meta.model
serializers_by_model[model] = klass.serializer_class


LANGUAGES = [x[0] for x in settings.LANGUAGES]

Expand Down Expand Up @@ -1085,52 +1075,6 @@ def list(self, request, **kwargs):
register_view(UnitViewSet, "unit")


class SearchSerializer(serializers.Serializer):
def __init__(self, *args, **kwargs):
super(SearchSerializer, self).__init__(*args, **kwargs)
self.serializer_by_model = {}

def _strip_context(self, context, model):
if model == Unit:
key = "unit"
elif model == Service:
key = "service"
else:
key = "service_node"
for spec in ["include", "only"]:
if spec in context:
context[spec] = context[spec].get(key, [])
if "only" in context and context["only"] == []:
context.pop("only")
return context

def get_result_serializer(self, model, instance):
ser = self.serializer_by_model.get(model)
if not ser:
ser_class = serializers_by_model[model]
assert model in serializers_by_model, "Serializer for %s not found" % model
context = self._strip_context(self.context.copy(), model)
ser = ser_class(context=context, many=False)
self.serializer_by_model[model] = ser
# TODO: another way to serialize with new data without
# costly Serializer instantiation
ser.instance = instance
if hasattr(ser, "_data"):
del ser._data
return ser

def to_representation(self, search_result):
if not search_result or not search_result.model:
return None
model = search_result.model
serializer = self.get_result_serializer(model, search_result.object)
data = serializer.data
data["sort_index"] = search_result._sort_index
data["object_type"] = model._meta.model_name
data["score"] = search_result.score
return data


class AccessibilityRuleView(viewsets.ViewSetMixin, generics.ListAPIView):
serializer_class = None

Expand Down

0 comments on commit 1cdcc79

Please sign in to comment.