/ src / python / txtai / api / responses / factory.py
factory.py
 1  """
 2  Factory module
 3  """
 4  
 5  from .json import JSONResponse
 6  from .messagepack import MessagePackResponse
 7  
 8  
 9  class ResponseFactory:
10      """
11      Methods to create Response classes.
12      """
13  
14      @staticmethod
15      def create(request):
16          """
17          Gets a response class for request using the Accept header.
18  
19          Args:
20              request: request
21  
22          Returns:
23              response class
24          """
25  
26          # Get Accept header
27          accept = request.headers.get("Accept")
28  
29          # Get response class
30          return MessagePackResponse if accept == MessagePackResponse.media_type else JSONResponse