|
12 | 12 |
|
13 | 13 | #Использовать "core" |
14 | 14 |
|
15 | | -/////////////////////////////////////////////////////////////////// |
| 15 | +/////////////////////////////////////////////////////////////////////////////// |
16 | 16 |
|
17 | 17 | Перем Лог; |
18 | 18 |
|
19 | | -/////////////////////////////////////////////////////////////////// |
20 | | - |
21 | | -Процедура ВывестиВерсию() |
22 | | - |
23 | | - Сообщить("GitSync v" + ПараметрыСистемы.ВерсияПродукта()); |
24 | | - |
25 | | -КонецПроцедуры // ВывестиВерсию() |
26 | | - |
27 | | -Функция РазобратьАргументыКоманднойСтроки() |
28 | | - |
29 | | - Парсер = ПолучитьПарсерКоманднойСтроки(); |
30 | | - Возврат Парсер.Разобрать(АргументыКоманднойСтроки); |
31 | | - |
32 | | -КонецФункции // РазобратьАргументыКоманднойСтроки |
33 | | - |
34 | | -Функция ПолучитьПарсерКоманднойСтроки() |
35 | | - |
36 | | - Парсер = Новый ПарсерАргументовКоманднойСтроки(); |
37 | | - МенеджерКомандПриложения.ЗарегистрироватьКоманды(Парсер); |
38 | | - |
39 | | - Возврат Парсер; |
40 | | - |
41 | | -КонецФункции // ПолучитьПарсерКоманднойСтроки |
| 19 | +/////////////////////////////////////////////////////////////////////////////// |
42 | 20 |
|
43 | 21 | Функция ВыполнениеКоманды() |
44 | 22 |
|
45 | | - ВывестиВерсию(); |
46 | 23 | ПараметрыЗапуска = РазобратьАргументыКоманднойСтроки(); |
47 | 24 |
|
48 | 25 | Если ПараметрыЗапуска = Неопределено ИЛИ ПараметрыЗапуска.Количество() = 0 Тогда |
49 | 26 |
|
| 27 | + ВывестиВерсию(); |
50 | 28 | Лог.Ошибка("Некорректные аргументы командной строки"); |
51 | 29 | МенеджерКомандПриложения.ПоказатьСправкуПоКомандам(); |
52 | | - Возврат МенеджерКомандПриложения.РезультатыКоманд().ОшибкаВремениВыполнения; |
| 30 | + Возврат МенеджерКомандПриложения.РезультатыКоманд().НеверныеПараметры; |
53 | 31 |
|
54 | 32 | КонецЕсли; |
55 | 33 |
|
|
61 | 39 | // это команда |
62 | 40 | Команда = ПараметрыЗапуска.Команда; |
63 | 41 | ЗначенияПараметров = ПараметрыЗапуска.ЗначенияПараметров; |
| 42 | + Лог.Отладка("Выполняю команду продукта %1", Команда); |
64 | 43 |
|
65 | 44 | ИначеЕсли ЗначениеЗаполнено(ПараметрыСистемы.ИмяКомандыПоУмолчанию()) Тогда |
66 | 45 |
|
67 | 46 | // это команда по-умолчанию |
68 | 47 | Команда = ПараметрыСистемы.ИмяКомандыПоУмолчанию(); |
69 | 48 | ЗначенияПараметров = ПараметрыЗапуска; |
| 49 | + Лог.Отладка("Выполняю команду продукта по умолчанию %1", Команда); |
70 | 50 |
|
71 | 51 | Иначе |
72 | 52 |
|
73 | 53 | ВызватьИсключение "Некорректно настроено имя команды по-умолчанию."; |
74 | 54 |
|
75 | 55 | КонецЕсли; |
76 | 56 |
|
| 57 | + Если Команда <> ПараметрыСистемы.ИмяКомандыВерсия() Тогда |
| 58 | + |
| 59 | + ВывестиВерсию(); |
| 60 | + |
| 61 | + КонецЕсли; |
| 62 | + |
77 | 63 | Возврат МенеджерКомандПриложения.ВыполнитьКоманду(Команда, ЗначенияПараметров); |
78 | 64 |
|
79 | 65 | КонецФункции // ВыполнениеКоманды() |
80 | 66 |
|
| 67 | +/////////////////////////////////////////////////////////////////////////////// |
| 68 | + |
| 69 | +Процедура ВывестиВерсию() |
| 70 | + |
| 71 | + Сообщить(СтрШаблон("%1 v%2", ПараметрыСистемы.ИмяПродукта(), ПараметрыСистемы.ВерсияПродукта())); |
| 72 | + |
| 73 | +КонецПроцедуры // ВывестиВерсию |
| 74 | + |
| 75 | +Функция ПолучитьПарсерКоманднойСтроки() |
| 76 | + |
| 77 | + Парсер = Новый ПарсерАргументовКоманднойСтроки(); |
| 78 | + МенеджерКомандПриложения.ЗарегистрироватьКоманды(Парсер); |
| 79 | + |
| 80 | + Возврат Парсер; |
| 81 | + |
| 82 | +КонецФункции // ПолучитьПарсерКоманднойСтроки |
| 83 | + |
| 84 | +Функция РазобратьАргументыКоманднойСтроки() |
| 85 | + |
| 86 | + Парсер = ПолучитьПарсерКоманднойСтроки(); |
| 87 | + Возврат Парсер.Разобрать(АргументыКоманднойСтроки); |
| 88 | + |
| 89 | +КонецФункции // РазобратьАргументыКоманднойСтроки |
| 90 | + |
81 | 91 | /////////////////////////////////////////////////////////////////// |
82 | 92 |
|
83 | 93 | Лог = Логирование.ПолучитьЛог(ПараметрыСистемы.ИмяЛогаСистемы()); |
84 | 94 | МенеджерКомандПриложения.РегистраторКоманд(ПараметрыСистемы); |
85 | 95 |
|
86 | 96 | Попытка |
87 | | - |
| 97 | + |
88 | 98 | ЗавершитьРаботу(ВыполнениеКоманды()); |
89 | | - |
| 99 | + |
90 | 100 | Исключение |
91 | | - |
| 101 | + |
92 | 102 | Лог.КритичнаяОшибка(ОписаниеОшибки()); |
93 | 103 | ЗавершитьРаботу(МенеджерКомандПриложения.РезультатыКоманд().ОшибкаВремениВыполнения); |
94 | | - |
| 104 | + |
95 | 105 | КонецПопытки; |
| 106 | + |
0 commit comments