Inheritance: ICaseRepository
Ejemplo n.º 1
0
        static void Main(string[] args)
        {
            MsSqlConfiguration databaseConfiguration = MsSqlConfiguration.MsSql2008.ShowSql().
                ConnectionString(x => x.FromConnectionStringWithKey("AutomatedCaseWorker"));

            ISessionFactory sessionFactory =
                new SessionFactoryBuilder(new MappingScheme(), databaseConfiguration).Build();
            
            ISession session = sessionFactory.OpenSession();

            _caseRepository = new CaseRepository(session);
            _cases = _caseRepository.GetAllActive().ToList();
            _repository = new Repository(session);
            _twilioMessageSender = new TwilioMessageSender(_repository);
            foreach (var @case in _cases)
            {
                TimeSpan ts = DateTime.Now.Subtract(@case.LastActivity);
                if(ts.TotalMinutes>=15)
                {
                    _twilioMessageSender.Send(new OutgoingMessage(@case.CellPhoneNumber,
                                                                  String.Format("Su número de caso es {0}",
                                                                                @case.CaseNumber())));
                    _caseRepository.MarkCaseAsInactive(@case);   
                }
            }
            session.Close();
            sessionFactory.Close();
        }