コード例 #1
0
 public WebhookController(IRepository <Contact> contactRepository,
                          IRepository <Client> clientRepository,
                          IContactService contactService,
                          IServerTime serverTime,
                          IExternalDataProvider externalDataProvider,
                          IContactAutoRating contactAutoRating)
 {
     this.contactRepository    = contactRepository;
     this.clientRepository     = clientRepository;
     this.contactService       = contactService;
     this.serverTime           = serverTime;
     this.externalDataProvider = externalDataProvider;
     this.contactAutoRating    = contactAutoRating;
 }
コード例 #2
0
        public BaseController()
        {
            // DI ready
            IServiceLocator locator = ServiceLocator.Current;

            _host                 = locator.GetService <IApplicationHost>();
            _dbContext            = locator.GetService <IDbContext>();
            _renderer             = locator.GetServiceOrNull <IRenderer>();
            _workflowEngine       = locator.GetServiceOrNull <IWorkflowEngine>();
            _localizer            = locator.GetService <ILocalizer>();
            _scripter             = locator.GetService <IDataScripter>();
            _messageService       = locator.GetServiceOrNull <IMessageService>();
            _userStateManager     = locator.GetServiceOrNull <IUserStateManager>();
            _externalDataProvider = locator.GetServiceOrNull <IExternalDataProvider>();
        }
コード例 #3
0
        /// <summary>
        /// Converts the current DataProvider (database object) to the appropriate IDataProvider object based on its type
        /// </summary>
        /// <param name="dbDataProvider">The database object that represents the data provider</param>
        /// <returns>The newly created IDataProvider</returns>
        public static IExternalDataProvider CreateDataProvider(CprBroker.Data.DataProviders.DataProvider dbDataProvider)
        {
            IExternalDataProvider dataProvider = Utilities.Reflection.CreateInstance <IExternalDataProvider>(dbDataProvider.TypeName);

            if (dataProvider is IExternalDataProvider)
            {
                try
                {
                    dataProvider.ConfigurationProperties = dbDataProvider.ToPropertiesDictionary(dataProvider.ToAllPropertyInfo().Select(p => p.Name).ToArray());
                }
                catch (Exception ex)
                {
                    Local.Admin.LogException(ex);
                }
            }
            return(dataProvider);
        }
コード例 #4
0
 public static void Save(IncomingPhoneNumber phoneNumber, IExternalDataProvider dataProvider)
 {
     dataProvider.IncomingPhoneNumberSave(ref phoneNumber);
 }
コード例 #5
0
 public static void Save(Call phoneCall, IExternalDataProvider dataProvider)
 {
     dataProvider.CallSave(ref phoneCall);
 }
コード例 #6
0
 public static void Save(Account account, IExternalDataProvider dataProvider)
 {
     dataProvider.AccountSave(ref account);
 }
コード例 #7
0
 /// <summary>
 /// For the given external data provider, execute the query against it and return the results
 /// </summary>
 /// <typeparam name="TQuery">Type of query</typeparam>
 /// <typeparam name="TResult">Type of return object</typeparam>
 /// <param name="iProvider">The query provider</param>
 /// <returns></returns>
 protected TResult PerformExteralDataQuery <TQuery, TResult>(IExternalDataProvider <TQuery, TResult> iProvider)
     where TQuery : IExternalDataQuery
     where TResult : IExternalDataResult
 {
     return(iProvider.Execute());
 }
コード例 #8
0
 public BookRepository(FavBooksContext context, IExternalDataProvider <Book> bookProvider) : base(context)
 {
     this.bookProvider = bookProvider;
 }