예제 #1
0
 public AppCore.IOC.IContainer ActiveWebApi(System.Web.Http.HttpConfiguration httpConfig, System.Reflection.Assembly[] webApiAssemblies)
 {
     _container = new DryContainer().WithWebApi(httpConfig, webApiAssemblies);
     _container.RegisterInstance <AppCore.IOC.IContainer>(new Container(_container), reuse: Reuse.Singleton);
     Container = _container.Resolve <AppCore.IOC.IContainer>();
     return(Container);
 }
예제 #2
0
        public DataSource(AppCore.IOC.IContainer container)
        {
            _container     = container;
            _objSerializer = _container.TryResolve <AppCore.IObjectSerializer>();

            var connectionString = System.Configuration.ConfigurationManager.ConnectionStrings["Azmoon"]?.ConnectionString;
        }
예제 #3
0
 public MessageService(AppCore.IOC.IContainer container
                       , Core.SmsService.ISmsService smsService
                       , Core.MailService.IMailService mailService)
     : base(container)
 {
     _smsService  = smsService;
     _mailService = mailService;
 }
예제 #4
0
        private static void RegisterFilters(AppCore.IOC.IContainer container, HttpConfiguration httpConfig)
        {
            //regsiter Filters
            container.RegisterType(typeof(ValidationFilter));
            container.RegisterType(typeof(KamaExceptionLogger));

            //register command filters in httConfig
            httpConfig.Filters.Add(container.Resolve <ValidationFilter>());
            httpConfig.Services.Replace(typeof(IExceptionLogger), container.Resolve <KamaExceptionLogger>());
        }
예제 #5
0
 private void RegisterTimer(AppCore.IOC.IContainer container)
 {
     System.Timers.Timer _timer;
     _timer          = new System.Timers.Timer(Int32.Parse(Config.AppSettings["AutomationTimerInterval"]) * 1000);
     _timer.Elapsed += _GetTimerServices(container);
     if (Config.AppSettings["ServerType"] == "Internet")
     {
         _timer.Start();
     }
 }
예제 #6
0
 public CredentialService(AppCore.IOC.IContainer container
                          , Core.Service.IMessageService messageService
                          , Core.SmsProvider.IOutgoingService outgoingService
                          , Core.DataSource.IAccountDataSource accountDataSource)
     : base(container)
 {
     _outgoingService   = outgoingService;
     _accountDataSource = accountDataSource;
     _messageService    = messageService;
 }
예제 #7
0
        public DataSource(AppCore.IOC.IContainer container)
        {
            _container     = container;
            _logger        = _container?.TryResolve <Core.IEventLogger>();
            _objSerializer = _container?.TryResolve <AppCore.IObjectSerializer>();

            var connectionString = System.Configuration.ConfigurationManager.ConnectionStrings["SmsService"]?.ConnectionString;

            _dbPublic  = new PBL(connectionString);
            _dbMessage = new MSG(connectionString);
        }
 public SendService(AppCore.IOC.IContainer container
                    , Core.IEventLogger logger
                    , Core.DataSource.IAccountDataSource accountDataSource
                    , Core.DataSource.IConfigDataSource configDataSource
                    , Core.DataSource.IMailDataSource messageDataSource
                    , Core.DataSource.ISendTryDataSource sendTryDataSource
                    , Core.Mail.IOutgoingService mailOutgoingService
                    , Core.Service.IQueueService queueService)
     : base(container)
 {
     _logger              = logger;
     _queueService        = queueService;
     _accountDataSource   = accountDataSource;
     _configDataSource    = configDataSource;
     _messageDataSource   = messageDataSource;
     _mailOutgoingService = mailOutgoingService;
     _sendTryDataSource   = sendTryDataSource;
 }
예제 #9
0
        public void Start(AppCore.IOC.IContainer container)
        {
            var dsInterfaces = asm.GetAssembly(typeof(ds.IDataSource))
                               .GetTypes()
                               .Where(t => t.IsInterface && t != typeof(ds.IDataSource));

            var dsClasses = asm.GetAssembly(this.GetType())
                            .GetTypes()
                            .Where(t => t.IsClass && t.IsSubclassOf(typeof(DataSource)));

            foreach (var di in dsInterfaces)
            {
                var dsClass = dsClasses.FirstOrDefault(dc => di.IsAssignableFrom(dc));
                if (dsClass != null)
                {
                    container.RegisterType(from: di, to: dsClass);
                }
            }
        }
예제 #10
0
 public SendService(AppCore.IOC.IContainer container
                    , Core.IEventLogger logger
                    , Core.DataSource.IAccountDataSource accountDataSource
                    , Core.DataSource.IConfigDataSource configDataSource
                    , Core.DataSource.IMessageDataSource messageDataSource
                    , Core.DataSource.ISendTryDataSource sendTryDataSource
                    , Core.SmsProvider.IOutgoingService outgoingService
                    , Core.Service.ICredentialService credentialService
                    , Core.Service.IQueueService queueService)
     : base(container)
 {
     _logger            = logger;
     _accountDataSource = accountDataSource;
     _configDataSource  = configDataSource;
     _messageDataSource = messageDataSource;
     _outgoingService   = outgoingService;
     _sendTryDataSource = sendTryDataSource;
     _credentialService = credentialService;
     _queueService      = queueService;
 }
예제 #11
0
 private static void RegisterTools(AppCore.IOC.IContainer container)
 {
     container.RegisterType <AppCore.IObjectSerializer, Tools.ObjectSerializer>();
     container.RegisterType <Core.IEventLogger, Tools.Logger>();
     container.RegisterType <SmsService.ApiClient.Interface.ISmsServiceHostInfo, API.ServiceHost.SmsServiceHost>();
 }
 public MailService(AppCore.IOC.IContainer container
                    , ds.IMailDataSource mailDataSource)
     : base(container)
 {
     _mailDataSource = mailDataSource;
 }
예제 #13
0
 public MessageService(AppCore.IOC.IContainer container
                       , ds.IMessageDataSource messageDataSource)
     : base(container)
 {
     _messageDataSource = messageDataSource;
 }
예제 #14
0
 public AttachmentService(AppCore.IOC.IContainer container)
     : base(container)
 {
 }
예제 #15
0
        private ElapsedEventHandler _GetTimerServices(AppCore.IOC.IContainer container)
        {
            ElapsedEventHandler triggerMethod = container.Resolve <ISendService>().DoOnMainTimer;

            return(triggerMethod);
        }
 public DocumentDataSource(AppCore.IOC.IContainer container)
     : base(container)
 {
 }
예제 #17
0
 public FlowService(
     AppCore.IOC.IContainer container
     )
     : base(container)
 {
 }
예제 #18
0
 public SmsService(AppCore.IOC.IContainer container
                   , SmsServices.IMessageService messageService)
 {
     _messageService = messageService;
 }
 public AccountService(AppCore.IOC.IContainer container, ds.IAccountDataSource dataSource)
     : base(container, dataSource)
 {
 }
예제 #20
0
 public SendTryService(AppCore.IOC.IContainer container)
     : base(container)
 {
     //_messageDataSource = messageDataSource;
 }
예제 #21
0
 public ConfigDataSource(AppCore.IOC.IContainer container)
     : base(container)
 {
 }
예제 #22
0
 public AttachmentDataSource(AppCore.IOC.IContainer container)
     : base(container)
 {
 }
예제 #23
0
 public FlowDataSource(AppCore.IOC.IContainer container)
     : base(container)
 {
 }
 public SendTryDataSource(AppCore.IOC.IContainer container)
     : base(container)
 {
 }
예제 #25
0
 public Service(AppCore.IOC.IContainer container)
 {
     _container = container;
 }
예제 #26
0
 public QueueService(AppCore.IOC.IContainer container)
     : base(container)
 {
     _queue = new Library.Queue.Queue <QueueItem>("SmsService", new QueueItemSerializer(_objectSerializer));
 }
예제 #27
0
 public MessageDataSource(AppCore.IOC.IContainer container)
     : base(container)
 {
 }
예제 #28
0
 public AccountDataSource(AppCore.IOC.IContainer container)
     : base(container)
 {
 }
 public Service(AppCore.IOC.IContainer container)
 {
     _container        = container;
     _objectSerializer = container.TryResolve <AppCore.IObjectSerializer>();
 }
예제 #30
0
 public DocumentService(
     AppCore.IOC.IContainer container
     )
     : base(container)
 {
 }