1
0
mirror of https://github.com/bia-technologies/precommit4onec.git synced 2025-01-18 02:58:35 +02:00

Рефакторинг

This commit is contained in:
aleksey.koryakin 2019-12-13 14:42:59 +03:00
parent c29c73a3d3
commit 9c4c82e0fb
5 changed files with 67 additions and 20 deletions

View File

@ -49,7 +49,7 @@
Иначе
КаталогРепозитория = ПараметрыКоманды["-rep-path"];
УправлениеНастройками = МенеджерНастроек.ПолучитьНастройки(КаталогРепозитория, Ложь);
УправлениеНастройками = МенеджерНастроек.НастройкиРепозитория(КаталогРепозитория, Ложь);
КонецЕсли;

View File

@ -33,15 +33,15 @@
Лог = Приложение.ПолучитьЛог();
КаталогРепозитория = ПараметрыКоманды["КаталогРепозитория"];
ФайлКаталогРепозитория = Новый Файл(КаталогРепозитория);
Если НЕ ФайлКаталогРепозитория.Существует() ИЛИ ФайлКаталогРепозитория.ЭтоФайл() Тогда
КаталогИсходныхФайлов = ПараметрыКоманды["-source-dir"];
Если НЕ ПроверитьПараметрыКоманды(КаталогРепозитория, Лог) Тогда
Лог.Ошибка("Каталог репозитория '%1' не существует или это файл", КаталогРепозитория);
Возврат Приложение.РезультатыКоманд().НеверныеПараметры;
КонецЕсли;
УправлениеНастройками = МенеджерНастроек.ПолучитьНастройки(КаталогРепозитория);
УправлениеНастройками = МенеджерНастроек.НастройкиРепозитория(КаталогРепозитория);
Если МенеджерНастроек.ИспользуютсяЛокальныеНастройки() Тогда
Лог.Информация("Используем локальные настройки");
@ -49,7 +49,6 @@
Лог.Информация("Используем глобальные настройки");
КонецЕсли;
КаталогИсходныхФайлов = ПараметрыКоманды["-source-dir"];
Если Не ЗначениеЗаполнено(КаталогИсходныхФайлов) Тогда
КаталогИсходныхФайлов = "src";
@ -66,17 +65,6 @@
КонецЕсли;
КаталогРепозитория = ФайлКаталогРепозитория.ПолноеИмя;
РепозиторийGit = Новый ГитРепозиторий();
РепозиторийGit.УстановитьРабочийКаталог(КаталогРепозитория);
Если НЕ РепозиторийGit.ЭтоРепозиторий() Тогда
Лог.Ошибка("Каталог '%1' не является репозиторием git", КаталогРепозитория);
Возврат Приложение.РезультатыКоманд().НеверныеПараметры;
КонецЕсли;
НастройкиПроектов = УправлениеНастройками.ПолучитьПроектыКонфигурации();
НаборНастроек = Новый Соответствие;
@ -151,6 +139,33 @@
///////////////////////////////////////////////////////////////////////////////
Функция ПроверитьПараметрыКоманды(КаталогРепозитория, Лог)
ФайлКаталогРепозитория = Новый Файл(КаталогРепозитория);
Если НЕ ФайлКаталогРепозитория.Существует() ИЛИ ФайлКаталогРепозитория.ЭтоФайл() Тогда
Лог.Ошибка("Каталог репозитория '%1' не существует или это файл", КаталогРепозитория);
Возврат Ложь;
КонецЕсли;
КаталогРепозитория = ФайлКаталогРепозитория.ПолноеИмя;
РепозиторийGit = Новый ГитРепозиторий();
РепозиторийGit.УстановитьРабочийКаталог(КаталогРепозитория);
Если НЕ РепозиторийGit.ЭтоРепозиторий() Тогда
Лог.Ошибка("Каталог '%1' не является репозиторием git", КаталогРепозитория);
Возврат Ложь;
КонецЕсли;
Возврат Истина;
КонецФункции
Функция ПолучитьПараметрыОбработкиФайла(ИмяФайла, УправлениеНастройками, НастройкиПроектов)
ИмяОбщейНастройки = УправлениеНастройками.ИмяПоУмолчанию();

View File

@ -16,6 +16,7 @@
Перем Конфигурация; // описание конфигурации
Перем АдресКонфигурационногоФайла; // адрес нахождения конфигурационного файла
Перем ОбновлятьКонфигурацию; // флаг необходимости обновления конфигурации / затирания
///////////////////////////////////////////////////////////////////
// Программный интерфейс
///////////////////////////////////////////////////////////////////
@ -98,6 +99,7 @@
Возврат Массив;
КонецФункции
// ЗаписатьНастройку
// Записывает настройку в конфигурационный файл
//

View File

@ -2,7 +2,11 @@
Перем ГлобальныеНастройки;
Перем ИспользуютсяЛокальныеНастройки;
Функция ПолучитьНастройки(КаталогРепозитория, ВернутьГлобальныеЕслиНетЛокальных = Истина) Экспорт
///////////////////////////////////////////////////////////////////
// ПРОГРАММНЫЙ ИНТЕРФЕЙС
///////////////////////////////////////////////////////////////////
Функция НастройкиРепозитория(КаталогРепозитория, ВернутьГлобальныеЕслиНетЛокальных = Истина) Экспорт
Если ВернутьГлобальныеЕслиНетЛокальных Тогда
@ -129,6 +133,32 @@
КонецФункции
Функция ПроектыКонфигурации() Экспорт
Массив = Новый Массив;
БлокПроекты = ЗначениеНастройки("Проекты");
Если НЕ ЗначениеЗаполнено(БлокПроекты) Тогда
Возврат Массив;
КонецЕсли;
Для Каждого Элемент Из БлокПроекты Цикл
Массив.Добавить(Элемент.Ключ);
КонецЦикла;
Возврат Массив;
КонецФункции
///////////////////////////////////////////////////////////////////
// СЛУЖЕБНЫЙ ФУНКЦИОНАЛ
///////////////////////////////////////////////////////////////////
Функция ЕстьНастройкиPrecommt4onec(Настройка)
Возврат НЕ Настройка.ЭтоНовый() И Настройка.НастройкиПриложения(КлючНастройкиPrecommit()).Количество();

View File

@ -146,7 +146,7 @@
КаталогРепозитория = СоздатьТестовыйКаталог(ИмяФикстуры);
Настройки = МенеджерНастроек.ПолучитьНастройки(КаталогРепозитория);
Настройки = МенеджерНастроек.НастройкиРепозитория(КаталогРепозитория);
Возврат Настройки.НастройкиПриложения(МенеджерНастроек.КлючНастройкиPrecommit());