/ src / python / txtai / api / factory.py
factory.py
 1  """
 2  API factory module
 3  """
 4  
 5  from ..util import Resolver
 6  
 7  
 8  class APIFactory:
 9      """
10      API factory. Creates new API instances.
11      """
12  
13      @staticmethod
14      def get(api):
15          """
16          Gets a new instance of api class.
17  
18          Args:
19              api: API instance class
20  
21          Returns:
22              API
23          """
24  
25          return Resolver()(api)
26  
27      @staticmethod
28      def create(config, api):
29          """
30          Creates a new API instance.
31  
32          Args:
33              config: API configuration
34              api: API instance class
35  
36          Returns:
37              API instance
38          """
39  
40          return APIFactory.get(api)(config)