|
49 | 49 |
|
50 | 50 | settings = Settings() |
51 | 51 |
|
52 | | -# application extensions |
53 | | -application_extensions_map = { |
| 52 | +# transaction extensions |
| 53 | +transaction_extensions_map = { |
54 | 54 | "transaction": TransactionExtension( |
55 | 55 | client=TransactionsClient(), |
56 | 56 | settings=settings, |
|
93 | 93 | "pagination": TokenPaginationExtension(), |
94 | 94 | } |
95 | 95 |
|
96 | | -known_extensions = { |
97 | | - *application_extensions_map.keys(), |
| 96 | +enabled_extensions = { |
98 | 97 | *search_extensions_map.keys(), |
99 | 98 | *cs_extensions_map.keys(), |
100 | 99 | *itm_col_extensions_map.keys(), |
101 | 100 | "collection_search", |
102 | 101 | } |
103 | 102 |
|
104 | | -disabled_extensions = {"transaction", "bulk_transactions"} |
| 103 | +if ext := os.environ.get("ENABLED_EXTENSIONS"): |
| 104 | + enabled_extensions = set(ext.split(",")) |
105 | 105 |
|
106 | | -enabled_extensions = ( |
107 | | - os.environ["ENABLED_EXTENSIONS"].split(",") |
108 | | - if "ENABLED_EXTENSIONS" in os.environ |
109 | | - else known_extensions - disabled_extensions |
110 | | -) |
| 106 | +application_extensions = [] |
111 | 107 |
|
112 | | -application_extensions = [ |
113 | | - extension |
114 | | - for key, extension in application_extensions_map.items() |
115 | | - if key in enabled_extensions |
116 | | -] |
| 108 | +if "transaction" in enabled_extensions: |
| 109 | + application_extensions.append( |
| 110 | + TransactionExtension( |
| 111 | + client=TransactionsClient(), |
| 112 | + settings=settings, |
| 113 | + response_class=ORJSONResponse, |
| 114 | + ), |
| 115 | + ) |
| 116 | + |
| 117 | +if "bulk_transactions" in enabled_extensions: |
| 118 | + application_extensions.append( |
| 119 | + BulkTransactionExtension(client=BulkTransactionsClient()), |
| 120 | + ) |
117 | 121 |
|
118 | 122 | # /search models |
119 | 123 | search_extensions = [ |
|
0 commit comments