From 1342a6e15b12573f5f40a178a3334945a41365e9 Mon Sep 17 00:00:00 2001
From: Jean-Paul Calderone <exarkun@twistedmatrix.com>
Date: Mon, 11 Nov 2019 15:56:40 -0500
Subject: [PATCH] Refactor to avoid repetition

---
 src/_zkapauthorizer/resource.py | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/src/_zkapauthorizer/resource.py b/src/_zkapauthorizer/resource.py
index c724fbc..7e411a2 100644
--- a/src/_zkapauthorizer/resource.py
+++ b/src/_zkapauthorizer/resource.py
@@ -80,6 +80,15 @@ def from_configuration(node_config, store, redeemer=None):
     return root
 
 
+def application_json(request):
+    """
+    Set the given request's response content-type to ``application/json``.
+
+    :param twisted.web.iweb.IRequest request: The request to modify.
+    """
+    request.responseHeaders.setRawHeaders(u"content-type", [u"application/json"])
+
+
 class _VoucherCollection(Resource):
     """
     This class implements redemption of vouchers.  Users **PUT** such numbers
@@ -115,7 +124,7 @@ class _VoucherCollection(Resource):
 
 
     def render_GET(self, request):
-        request.responseHeaders.setRawHeaders(u"content-type", [u"application/json"])
+        application_json(request)
         return dumps({
             u"vouchers": list(
                 voucher.marshal()
@@ -172,7 +181,7 @@ class VoucherView(Resource):
 
 
     def render_GET(self, request):
-        request.responseHeaders.setRawHeaders(u"content-type", [u"application/json"])
+        application_json(request)
         return self._voucher.to_json()
 
 
-- 
GitLab