-
Notifications
You must be signed in to change notification settings - Fork 70
/
keys.ts
83 lines (77 loc) · 3.12 KB
/
keys.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
import {BindingKey, CoreBindings} from '@loopback/core';
import {MetadataAccessor} from '@loopback/metadata';
import {DataSource} from '@loopback/repository';
import {Sequelize} from 'sequelize';
import {ReportingServiceComponent} from './component';
import {
CustomTypeConvertor,
DataSetServiceConfig,
DataStoreAdapter,
DataStoreConfiguration,
DataStoreDataTypeConversionFunctions,
IngestionHandler,
QueryUtilityInterface,
} from './interfaces';
import {IngestionMapping} from './models';
import {DataTypeMapping} from './providers/data-mappings-providers/data-type-mapping';
import {DataStoreObjectInterface} from './providers/data-store-object.provider';
import {DataSourcesService, ReportIngestionMessagingService} from './services';
export namespace ReportingServiceComponentBindings {
export const COMPONENT = BindingKey.create<ReportingServiceComponent>(
`${CoreBindings.COMPONENTS}.ReportingServiceComponent`,
);
export const DATASOURCE = BindingKey.create<DataSource>(
'datasources.ReportingCore',
);
export const REPORT_EVENT_LISTENER_METADATA = MetadataAccessor.create<
Record<string, unknown>,
ClassDecorator
>('handleRecordType');
export const CUSTOM_TYPE_CONVERTER_METADATA = MetadataAccessor.create<
Record<string, unknown>,
ClassDecorator
>('customTypeConversion');
export const DATA_STORE_ADAPTER =
BindingKey.create<DataStoreAdapter>('dataStoreAdapter');
export const INGESTION_MAPPINGS_LIST = BindingKey.create<
Record<string, IngestionMapping>
>('ingestionMappingsList');
export const MAPPING_WITHOUT_CUSTOM_LISTENERS = BindingKey.create<
Set<string>
>('mappingWithoutCustomListeners');
export const SERVICE_MAPPING =
BindingKey.create<Record<string, IngestionHandler>>('serviceMappings');
export const CUSTOM_TYPE_CONVERTER_MAPPING = BindingKey.create<
Record<string, CustomTypeConvertor>
>('customTypeConverterMappings');
export const DATA_STORE_CONFIGURATION =
BindingKey.create<DataStoreConfiguration>('config.dataStoreConfiguration');
export const DATA_SET_CONFIG = BindingKey.create<DataSetServiceConfig>(
'config.dataSetsService',
);
export const DATA_SOURCES_SERVICE = BindingKey.create<DataSourcesService>(
'services.DataSourcesService',
);
export const DATA_TYPE_MAP =
BindingKey.create<Record<string, DataTypeMapping>>('dataTypeMap');
export const DATA_STORE_SERVICE_PROVIDER =
BindingKey.create<DataStoreObjectInterface>(
'services.DataStoreObjectProvider',
);
export const REPORTING_INGESTION_MESSAGING_SERVICE =
BindingKey.create<ReportIngestionMessagingService>(
'services.ReportIngestionMessagingService',
);
export const GENERIC_DATA_TYPE_CONVERSION_FUNCTIONS =
BindingKey.create<DataStoreDataTypeConversionFunctions>(
'genericataDataTypeConversionFunctions',
);
export const S3_OBJECT_PROVIDER = BindingKey.create<AWS.S3>(
`datastores.S3ObjectProvider`,
);
export const SEQUELIZE_OBJECT_PROVIDER = BindingKey.create<Sequelize>(
`datastores.SequelizeObjectProvider`,
);
export const QUERY_UTILITY =
BindingKey.create<QueryUtilityInterface>('QueryUtility');
}