/// <summary> /// Constructor /// </summary> /// <param name="config"></param> public AppStore(Config config) : base(config) { OAuthTokenServiceClient = SingletonStore <OAuthTokenV2ServiceClient> .Get(() => new OAuthTokenV2ServiceClient(Config)); SyncSettingV2ServiceClient = SingletonStore <SyncSettingV2ServiceClient> .Get(() => new SyncSettingV2ServiceClient(Config)); ServiceBusClient = SingletonStore <SQSServiceBusClient> .Get(() => new SQSServiceBusClient(Config.ServiceBusClientConfig)); SalesforceOAuthServiceClient = new SalesforceOAuthServiceClient( Config.SalesforceOAuthServiceClientConfig ); OAuthTokenManager = new OAuthTokenManager(new OAuthTokenManagerConfig { IntegrationType = CRMIntegrationTypes.Salesforce, AWSRegionEndpoint = Config.AWSRegionEndpoint, AWSSecretKey = Config.AWSSecretKey, AWSAccessKey = Config.AWSAccessKey, AWSAccountId = Config.AWSAccountId, OAuthServiceClient = SalesforceOAuthServiceClient, SlackAlertChannel = Config.SlackAlertRefreshTokenChannel }); if (!string.IsNullOrEmpty(Config.RedisConnectionString)) { RedisDB = ConnectionMultiplexer.Connect(Config.RedisConnectionString).GetDatabase(); } RemoteDataServiceClient = SingletonStore <RemoteDataServiceClient> .Get( () => new RemoteDataServiceClient(Config) ); }
public AppStore(Config config) : base(config) { // service clients SyncSettingV2ServiceClient = SingletonStore <SyncSettingV2ServiceClient> .Get( () => new SyncSettingV2ServiceClient(Config) ); RemoteDataServiceClient = SingletonStore <RemoteDataServiceClient> .Get( () => new RemoteDataServiceClient(Config) ); ContactsServiceClient = SingletonStore <ContactsServiceClient> .Get( () => new ContactsServiceClient(new ContactsServiceConfig { ApiEndpoint = Config.ContactsServiceApiEndpoint }) ); SalesforceOAuthServiceClient = new SalesforceOAuthServiceClient( Config.SalesforceOAuthServiceClientConfig ); OAuthTokenManager = new OAuthTokenManager(new OAuthTokenManagerConfig { IntegrationType = CRMIntegrationTypes.Salesforce, AWSRegionEndpoint = Config.AWSRegionEndpoint, AWSSecretKey = Config.AWSSecretKey, AWSAccessKey = Config.AWSAccessKey, AWSAccountId = Config.AWSAccountId, OAuthServiceClient = SalesforceOAuthServiceClient, SlackAlertChannel = Config.SlackAlertRefreshTokenChannel }); // comparers SalesforceTopicMappingComparer = SingletonStore <SalesforceTopicMappingComparer> .Get( () => new SalesforceTopicMappingComparer() ); }