[ELMA3] Жизненные циклы инициализации приложения ELMA
В данной статье представлен жизненный цикл инициализации приложения ELMA (рис. 1), отражающий этапы запуска и жизненные циклы построения компонентной модели. Файлы, приложенный к статье, содержат схему жизненного цикла в форматах .vsdx, .png, .svg. Для удобной работы с данной схемой рекомендуется скачать ее на свое устройство и работать локально.
Статусы запуска (EleWise.ELMA.Runtime.StartStatus):
- Running – идет запуск;
- Started – приложение запущено;
- NotActivated – приложение не активировано;
- NotStarted – приложение не запущено (произошли ошибки);
- PrerequisitesCheckFault – не пройдены некоторые предварительные проверки;
- BackupNeeded – требуется выполнить резервное копирование.
Шаг запуска (EleWise.ELMA.BPM.Mvc.Application.Orchard.StartStep):
- Beginning – начало инициализации;
- Complete – инициализация завершена, приложение работает;
- ComponentManagerLicenseError – ошибка лицензии;
- FatalError – критическая ошибка приложения;
- PrerequisitesCheckError – не пройдены некоторые предварительные проверки;
- Backup – необходимо сделать резервное копирование БД.
Жизненные циклы компонентной модели EleWise.ELMA.ComponentModel.ComponentManager.LifetimeStage:
- BeforeInit – до начала инициализации;
- Initializing – в момент вызова IInitHandler.Init;
- InitCompleting – в момент вызова IInitHandler.InitComplete;
- Initialized – после инициализации;
- Disposed – уничтожен.
Время исполнения скриптов обновления БД (EleWise.ELMA.Runtime.Db.ExecuteTime):
- OnBeforeStart – перед началом преобразования;
- OnStart – начало преобразования;
- OnTriggersDeleted – после удаления триггеров;
- OnProceduresDeleted – после удаления процедур;
- OnViewsDeleted – после удаления представлений;
- OnIndexesDeleted – после удаления индексов;
- OnForeignKeysDeleted – после удаления внешних ключей;
- OnPrimaryKeysDeleted – после удаления первичных ключей;
- OnTablesCreating – перед созданием таблиц и колонок;
- OnTablesCreated – после создания таблиц и колонок;
- OnTablesDeleting – перед удалением ненужных таблиц и колонок;
- OnTablesDeleted – после удаления ненужных таблиц и колонок;
- OnForeignKeysCreated – после создания внешних ключей;
- OnPrimaryKeysCreated – после создания первичных ключей;
- OnIndexesCreated – после создания индексов;
- OnViewsCreated – после создания представлений;
- OnProceduresCreated – после создания процедур;
- OnTriggersCreated – после создания триггеров;
- OnComplete – после завершения преобразования.