MCPcopy
hub / github.com/parse-community/parse-server / loadAdapter

Function loadAdapter

src/Adapters/AdapterLoader.js:12–46  ·  view source on GitHub ↗
(adapter, defaultAdapter, options)

Source from the content-addressed store, hash-verified

10 * @returns {Object} the loaded adapter
11 */
12export function loadAdapter<T>(adapter, defaultAdapter, options): T {
13 if (!adapter) {
14 if (!defaultAdapter) {
15 return options;
16 }
17 // Load from the default adapter when no adapter is set
18 return loadAdapter(defaultAdapter, undefined, options);
19 } else if (typeof adapter === 'function') {
20 try {
21 return adapter(options);
22 } catch (e) {
23 if (e.name === 'TypeError') {
24 var Adapter = adapter;
25 return new Adapter(options);
26 } else {
27 throw e;
28 }
29 }
30 } else if (typeof adapter === 'string') {
31 adapter = require(adapter);
32 // If it's define as a module, get the default
33 if (adapter.default) {
34 adapter = adapter.default;
35 }
36 return loadAdapter(adapter, undefined, options);
37 } else if (adapter.module) {
38 return loadAdapter(adapter.module, undefined, adapter.options);
39 } else if (adapter.class) {
40 return loadAdapter(adapter.class, undefined, adapter.options);
41 } else if (adapter.adapter) {
42 return loadAdapter(adapter.adapter, undefined, adapter.options);
43 }
44 // return the adapter as provided
45 return adapter;
46}
47
48export async function loadModule(modulePath) {
49 const module = await import(modulePath);

Callers 13

getLoggerControllerFunction · 0.90
getFilesControllerFunction · 0.90
getUserControllerFunction · 0.90
getCacheControllerFunction · 0.90
getAnalyticsControllerFunction · 0.90
getDatabaseControllerFunction · 0.90
getPushControllerFunction · 0.90
constructorMethod · 0.90
ParsePubSub.jsFile · 0.90
loadAuthAdapterFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected