release version 1.11.0
This commit is contained in:
		
							
								
								
									
										175
									
								
								platform-backward-compat/LICENSE.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										175
									
								
								platform-backward-compat/LICENSE.txt
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,175 @@ | ||||
|                                  ЛИЦЕНЗИЯ ОГРАНИЧЕННОГО ПРИМЕНЕНИЯ | ||||
|  | ||||
| Настоящий документ устанавливает для Пользователя условия применения Базовой (некоммерческой) | ||||
| версии лицензии для пробного использования программного обеспечения ENTAXY, принадлежащего | ||||
| Правообладателю – Обществу с ограниченной ответственностью "ЕМДЕВ" (ОГРН 1057810026658, ИНН | ||||
| 7813313860, юридический адрес: 197022, Россия, г. Санкт-Петербург, ул. Профессора Попова, | ||||
| д. 23, литера В, помещение 3Н), расположенной в сети Интернет по адресу | ||||
| https://www.emdev.ru/about (далее - Компания). | ||||
|  | ||||
| Используя или получая доступ к Программному обеспечению, или нажав «Я согласен с Условиями» | ||||
| (или аналогичную кнопку или флажок) после загрузки или установки Программного обеспечения, | ||||
| Пользователь выражает свое согласие на обязательность условий и ограничений, изложенных в | ||||
| настоящем документе, в противном случае, он должен не использовать или не получать доступ | ||||
| к Программному обеспечению. | ||||
|  | ||||
|                                     1. ТЕРМИНЫ И ОПРЕДЕЛЕНИЯ | ||||
|  | ||||
| a) ПО – Программное обеспечение, интеграционная шина «ЭНТАКСИ» (ENTAXY) в любой ее версии | ||||
| или редакции, исключительные права на которую принадлежат Правообладателю. | ||||
| b) Правообладатель (Компания) – ООО «ЕМДЕВ», ОГРН 1057810026658, ИНН 7813313860, исключительные | ||||
| права которого подтверждаются Свидетельством о государственной регистрации в Реестре программ | ||||
| для ЭВМ № 2021610848 от 19.01.2021 года. | ||||
| c) Пользователь – юридическое или физическое лицо, получившее через скачивание с сайта | ||||
| https://entaxy.ru или иным образом, дистрибутив ПО, пользующееся ПО. | ||||
| d) ИС – интеллектуальная собственность – закреплённое законом исключительное право, а также | ||||
| личные неимущественные права авторов произведений на результат интеллектуальной деятельности. | ||||
| e) Подписка – это коммерческое предложение Правообладателя, состоящее из Лицензии на использование | ||||
| ПО и доступа к технической поддержке программного обеспечения на срок Подписки. Подписка | ||||
| включает предоставление Пользователю неисключительного права использования ПО, в том числе | ||||
| получение обновлений функционала ПО и безопасности ПО, исправление ошибок ПО и получение | ||||
| патчей с обновлениями и исправлениями программного обеспечения. Подписка приобретается | ||||
| Пользователем на период времени, указанный в Сертификате. Количество подписок устанавливается | ||||
| для каждого Пользователя индивидуально в Сертификате. | ||||
| f) Сертификат – документ, выдаваемый Дистрибъютором или Авторизованным партнёром (Партнёром), | ||||
| подтверждающий факт приобретения физическим или юридическим лицом Подписки на программное | ||||
| обеспечение в ограниченном объёме и на определённый период времени. | ||||
| g) Лицензия (простая (неисключительная) – совокупность ограниченных прав использования ПО, | ||||
| предоставленных Пользователю согласно условиям Подписки. | ||||
| h) Библиотека – совокупность подпрограмм и объектов, используемых для разработки программного | ||||
| обеспечения. | ||||
| i) Исходный код – текст компьютерной программы на каком-либо языке программирования, состоящий | ||||
| из одного или нескольких файлов, который может быть прочтён человеком. | ||||
| j) Объектный код – файл (часть машинного кода) с промежуточным представлением отдельного модуля | ||||
| программы, полученный в результате обработки исходного кода, еще не связанный в полную программу. | ||||
| Это машинный код для одной конкретной библиотеки или модуля, который будет составлять готовый | ||||
| продукт. | ||||
| k) Некоммерческое использование – индивидуальное личное использование Пользователем программного | ||||
| обеспечения с целью обучения работе с Программным обеспечением, для оценки или демонстрации | ||||
| возможностей Программного обеспечения, при котором, Пользователем не извлекается коммерческая | ||||
| выгода и/или не идёт в доход денежное вознаграждение при использовании Программного обеспечения. | ||||
|  | ||||
|                     2. ДОПУСТИМЫЕ СПОСОБЫ ИСПОЛЬЗОВАНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ | ||||
|  | ||||
| 2.1. Правообладатель предоставляет Пользователю ограниченное право использования Программного | ||||
| обеспечения на условиях простой (неисключительной) лицензии в объёме, ограниченном правом | ||||
| воспроизведения полной рабочей версии программного обеспечения, новых версий программного обеспечения | ||||
| в памяти оборудования и его запуска на оборудовании в соответствии со ст. 1280 ГК РФ. | ||||
| 2.2. Право на использование Программного обеспечения, предоставляемое Пользователю, носит | ||||
| неисключительный характер. | ||||
| 2.3. Пользователю предоставляется всемирная, неисключительная, не подлежащая сублицензированию, | ||||
| лицензия на ограниченное использование Программного обеспечения. | ||||
| 2.4. Пользователь, имеющий Базовую (некоммерческую) версию лицензии для пробного использования | ||||
| имеет право приобрести Подписку на программное обеспечение. В этом случае Пользователь обязан | ||||
| обратиться в службу поддержки Правообладателя по адресу:  https://entaxy.ru/ для изменения | ||||
| вида лицензии с Базовой бесплатной версии на Подписки. | ||||
| 2.5. Срок использования скачанной Пользователем базовой (некоммерческой) версии лицензии для | ||||
| пробного использования программного обеспечения – не ограничен. | ||||
| 2.6. Использование Пользователем настоящего программного обеспечения в целях разработки, | ||||
| модификации, обновления другого ПО, принадлежащего третьим лицам, а не Правообладателю, | ||||
| без разрешения Правообладателя не допускается. | ||||
|  | ||||
|                                 3. АВТОРСКОЕ ПРАВО. | ||||
|  | ||||
| 3.1. Все авторские права, все права интеллектуальной собственности на Программное обеспечение | ||||
| и любые его копии принадлежат Правообладателю. | ||||
| 3.2. Все авторские права, все права интеллектуальной собственности в отношении любого контента, | ||||
| к которому можно получить доступ с помощью Программного обеспечения, является собственностью | ||||
| соответствующего владельца контента и защищается применимым законодательством об авторском | ||||
| праве или другими законами и договорами об интеллектуальной собственности. | ||||
| 3.3. Условия использования Программного обеспечения. | ||||
| Лицензия, предоставленная Пользователю, действительна только в том случае, если Пользователь | ||||
| придерживается следующих условий: | ||||
| 3.3.1. Принятие уведомлений об авторских правах. Пользователю запрещается удалять или изменять | ||||
| какие-либо уведомления об авторских правах или лицензиях, которые появляются при использовании | ||||
| Программного обеспечения или на нем. | ||||
| 3.3.2. Модификация. Пользователю запрещается модифицировать, изменять, декомпилировать, | ||||
| расшифровывать, дизассемблировать, переводить или реверсировать, перепроектировать | ||||
| Программное обеспечение. | ||||
| 3.3.3. Распространение. Пользователю запрещается сублицензировать, передавать право использования | ||||
| ПО или иным образом распространять или предоставлять Программное обеспечение любой третьей стороне. | ||||
| 3.3.4. SaaS. За исключением случаев, когда это разрешено Правообладателем, Пользователю запрещено | ||||
| использовать Программное обеспечение в коммерческих целях для оказания услуг третьим лицам. | ||||
|  | ||||
|                     4. ОТВЕТСТВЕННОСТЬ ПРАВООБЛАДАТЕЛЯ ПРИ НАРУШЕНИИ ПОЛЬЗОВАТЕЛЕМ ПРАВ «ИС» | ||||
|  | ||||
| 4.1. Правообладатель не несет никаких обязательств в отношении каких-либо претензий к Пользователю | ||||
| на предмет нарушения последним прав Интеллектуальной собственности, возникших в связи с | ||||
| использованием Пользователем: | ||||
| 4.1.1. Любых компонентов программного обеспечения с открытым исходным кодом, включенных в | ||||
| Программное обеспечение; | ||||
| 4.1.2. Любого нарушения правил использования Программного обеспечения, установленного условиями | ||||
| настоящего соглашения; | ||||
| 4.1.3. Любого использования Программного обеспечения в сочетании с другими ПО, оборудованием, | ||||
| или данными, не предоставленными Пользователю Правообладателем; | ||||
| 4.1.4. Любого изменения Программного обеспечения любым третьим лицом, а не Правообладателем. | ||||
|  | ||||
|  | ||||
| 5. НАСТОЯЩИМ ПРАВООБЛАДАТЕЛЬ ЗАЯВЛЯЕТ, ЧТО ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРЕДОСТАВЛЯЕТСЯ ПОЛЬЗОВАТЕЛЮ | ||||
| ПО ПРИНЦИПУ «AS IS» - «КАК ЕСТЬ». НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ ПРАВООБЛАДАТЕЛЬ НЕ ГАРАНТИРУЕТ | ||||
| И НЕ ОБЕЩАЕТ, ЧТО ПРЕДОСТАВЛЕННОЕ ИМ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ БУДЕТ ПОДХОДИТЬ ИЛИ НЕ ПОДХОДИТЬ | ||||
| ДЛЯ КОНКРЕТНЫХ ЦЕЛЕЙ ПОЛЬЗОВАТЕЛЯ, ЧТО ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ БУДЕТ ОТВЕЧАТЬ ВСЕМ КОММЕРЧЕСКИМ | ||||
| И ЛИЧНЫМ СУБЪЕКТИВНЫМ ОЖИДАНИЯМ ПОЛЬЗОВАТЕЛЯ, ЧТО ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ БУДЕТ РАБОТАТЬ | ||||
| ИСПРАВНО, БЕЗ ТЕХНИЧЕСКИХ ОШИБОК, БЫСТРО И БЕСПЕРЕБОЙНО. | ||||
|  | ||||
|                         6. ОГРАНИЧЕНИЕ ОТВЕТСТВЕННОСТИ. | ||||
| НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ ПРАВООБЛАДАТЕЛЬ ИЛИ ЕГО АФФИЛЛИРОВАННЫЕ ЛИЦА НЕ НЕСУТ ПЕРЕД ПОЛЬЗОВАТЕЛЕМ | ||||
| ОТВЕТСТВЕННОСТИ ЗА ЛЮБЫЕ ПРЯМЫЕ ИЛИ КОСВЕННЫЕ УБЫТКИ ПОЛЬЗОВАТЕЛЯ, ЕГО РАСХОДЫ ИЛИ РЕАЛЬНЫЙ УЩЕРБ, | ||||
| ВКЛЮЧАЯ, ПОМИМО ПРОЧЕГО, ПРОСТОИ; УТРАТУ БИЗНЕСА; УПУЩЕННУЮ ВЫГОДУ; НЕДОПОЛУЧЕННУЮ ПРИБЫЛЬ; | ||||
| ПОТЕРЮ ИЛИ ПОВРЕЖДЕНИЕ ДАННЫХ, ИМУЩЕСТВА И ИНОЕ. | ||||
| ОГРАНИЧЕНИЯ ПРИМЕНЯЮТСЯ НЕЗАВИСИМО ОТ ОСНОВАНИЯ НАСТУПЛЕНИЯ ОТВЕТСТВЕННОСТИ; В ТОМ ЧИСЛЕ ВСЛЕДСТВИЕ | ||||
| ДЕЙСТВИЯ ИЛИ БЕЗДЕЙСТВИЯ, НЕБРЕЖНОСТИ, УМЫСЛА, ПРЯМОГО ИЛИ КОСВЕННОГО; НЕОСТОРОЖНОСТИ; ЗАБЛУЖДЕНИЯ; | ||||
| КЛЕВЕТЫ; НАРУШЕНИЯ КОНФИДЕНЦИАЛЬНОСТИ ИЛИ ПРАВА ИНТЕЛЛЕКТУАЛЬНОЙ СОБСТВЕННОСТИ; ИЛИ ЛЮБОЕ ДРУГОЕ | ||||
| ОСНОВАНИЕ НАСТУПЛЕНИЯ ОТВЕТСТВЕННОСТИ. | ||||
|  | ||||
|                         7. ОБЯЗАННОСТЬ ПОЛЬЗОВАТЕЛЯ: | ||||
| Не осуществлять самостоятельно и (или) с привлечением третьих лиц нижеследующие действия | ||||
| (включая, но не ограничиваясь) по: | ||||
| -дизассемблированию и (или) декомпилированию (преобразованию объектного кода в исходный код) | ||||
|  Программного обеспечения; | ||||
| -модификации Программного обеспечения, в том числе вносить изменения в объектный код, исходный | ||||
| код Программного обеспечения, за исключением тех изменений, которые вносятся средствами, | ||||
| включёнными в Программное обеспечение и описанными непосредственно в документации к нему; | ||||
| -созданию условий для использования Программного обеспечения лицами, не имеющими прав на | ||||
| использование данного Программного обеспечения, включая (но не ограничиваясь) вмешательство | ||||
| третьих лиц в функционирование Программного обеспечения, предоставление третьим лицам доступа | ||||
| к исследованию и (или) замене настроек Программного обеспечения, включая его первичную установку; | ||||
| -распространению Программного обеспечения в целом или в части (включая приложенную к нему документацию). | ||||
|  | ||||
|                     8. БИБЛИОТЕКА ПО. ИСПОЛЬЗУЕМЫЕ ПРОГРАММНЫЕ СРЕДСТВА. | ||||
|  | ||||
| 8.1. Настоящим, Правообладатель заверяет, что Библиотека программного обеспечения состоит из | ||||
| лицензионных продуктов, используемых на законных основаниях, а | ||||
| именно https://entaxy.ru/libs/licenses/root-aggregated.deps. | ||||
| 8.2. Любые программные средства, применяемые Пользователем при работе с ПО, должны быть | ||||
| совместимы с библиотекой ПО, указанной в п.8.1. настоящего соглашения. | ||||
| 8.3. Перечень внешних модулей ПО, указанный в п.8.1 настоящего соглашения, может изменяться | ||||
| Правообладателем в одностороннем порядке, в зависимости от выпуска релизов программного обеспечения, | ||||
| содержащих все изменения и дополнения программного обеспечения. | ||||
|  | ||||
|                         9. ВНЕСЕНИЕ ИЗМЕНЕНИЙ В ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ. | ||||
|  | ||||
| 9.1.  Программное обеспечение, интеграционная шина «ЭНТАКСИ» (ENTAXY) является свободно распространяемым | ||||
| программным обеспечением. | ||||
| 9.2. Пользователь имеет право вносить изменения в исходный код программного обеспечения исключительно | ||||
| с согласия Правообладателя в порядке предложения изменений/правок/дополнений через механизм | ||||
| «Pull Requests» в открытом репозитории Правообладателя по адресу: https://git.entaxy.ru/entaxy/entaxy-public. | ||||
| 9.3. Любые изменения программного обеспечения, осуществляемые Пользователем без соблюдения условий | ||||
| пункта 9.2. настоящего документа, являются нарушением авторских и смежных прав Правообладателя, | ||||
| прав интеллектуальной собственности Правообладателя и влекут применение к Пользователю мер | ||||
| ответственности в соответствии с условиями настоящей Лицензии, а также применимого законодательства | ||||
| Российской Федерации. | ||||
|  | ||||
|                                 10. ЗАКЛЮЧИТЕЛЬНЫЕ ПОЛОЖЕНИЯ. | ||||
|  | ||||
| 10.1. В случае нарушения Пользователем любого из условий настоящей Лицензии, Правообладатель имеет | ||||
| право взыскать с Пользователя любые причинённые таким нарушением убытки, реальный ущерб, | ||||
| недополученную прибыль, упущенную выгоду, а также в случае нарушения Пользователем условий | ||||
| пункта 9.2 настоящего соглашения, в том числе, взыскать с Пользователя штраф в размере | ||||
| 2 000 000 (Два миллиона) рублей за каждый установленный случай несанкционированного изменения | ||||
| исходного или объектного кода Программного обеспечения «Энтакси» (Entaxy). | ||||
| 10.2. В рамках исполнения Пользователем обязательств по настоящей Лицензии, применимое | ||||
| законодательство – Российской Федерации. | ||||
| 10.3. Если какое-либо положение настоящей Лицензии будет признано судом недействительным, | ||||
| остальные положения будут продолжать своё действие, а Пользователь будет обязан продолжать | ||||
| исполнять свои обязанности в соответствии с этими положениями. | ||||
							
								
								
									
										175
									
								
								platform-backward-compat/blueprint-generator-service/LICENSE.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										175
									
								
								platform-backward-compat/blueprint-generator-service/LICENSE.txt
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,175 @@ | ||||
|                                  ЛИЦЕНЗИЯ ОГРАНИЧЕННОГО ПРИМЕНЕНИЯ | ||||
|  | ||||
| Настоящий документ устанавливает для Пользователя условия применения Базовой (некоммерческой) | ||||
| версии лицензии для пробного использования программного обеспечения ENTAXY, принадлежащего | ||||
| Правообладателю – Обществу с ограниченной ответственностью "ЕМДЕВ" (ОГРН 1057810026658, ИНН | ||||
| 7813313860, юридический адрес: 197022, Россия, г. Санкт-Петербург, ул. Профессора Попова, | ||||
| д. 23, литера В, помещение 3Н), расположенной в сети Интернет по адресу | ||||
| https://www.emdev.ru/about (далее - Компания). | ||||
|  | ||||
| Используя или получая доступ к Программному обеспечению, или нажав «Я согласен с Условиями» | ||||
| (или аналогичную кнопку или флажок) после загрузки или установки Программного обеспечения, | ||||
| Пользователь выражает свое согласие на обязательность условий и ограничений, изложенных в | ||||
| настоящем документе, в противном случае, он должен не использовать или не получать доступ | ||||
| к Программному обеспечению. | ||||
|  | ||||
|                                     1. ТЕРМИНЫ И ОПРЕДЕЛЕНИЯ | ||||
|  | ||||
| a) ПО – Программное обеспечение, интеграционная шина «ЭНТАКСИ» (ENTAXY) в любой ее версии | ||||
| или редакции, исключительные права на которую принадлежат Правообладателю. | ||||
| b) Правообладатель (Компания) – ООО «ЕМДЕВ», ОГРН 1057810026658, ИНН 7813313860, исключительные | ||||
| права которого подтверждаются Свидетельством о государственной регистрации в Реестре программ | ||||
| для ЭВМ № 2021610848 от 19.01.2021 года. | ||||
| c) Пользователь – юридическое или физическое лицо, получившее через скачивание с сайта | ||||
| https://entaxy.ru или иным образом, дистрибутив ПО, пользующееся ПО. | ||||
| d) ИС – интеллектуальная собственность – закреплённое законом исключительное право, а также | ||||
| личные неимущественные права авторов произведений на результат интеллектуальной деятельности. | ||||
| e) Подписка – это коммерческое предложение Правообладателя, состоящее из Лицензии на использование | ||||
| ПО и доступа к технической поддержке программного обеспечения на срок Подписки. Подписка | ||||
| включает предоставление Пользователю неисключительного права использования ПО, в том числе | ||||
| получение обновлений функционала ПО и безопасности ПО, исправление ошибок ПО и получение | ||||
| патчей с обновлениями и исправлениями программного обеспечения. Подписка приобретается | ||||
| Пользователем на период времени, указанный в Сертификате. Количество подписок устанавливается | ||||
| для каждого Пользователя индивидуально в Сертификате. | ||||
| f) Сертификат – документ, выдаваемый Дистрибъютором или Авторизованным партнёром (Партнёром), | ||||
| подтверждающий факт приобретения физическим или юридическим лицом Подписки на программное | ||||
| обеспечение в ограниченном объёме и на определённый период времени. | ||||
| g) Лицензия (простая (неисключительная) – совокупность ограниченных прав использования ПО, | ||||
| предоставленных Пользователю согласно условиям Подписки. | ||||
| h) Библиотека – совокупность подпрограмм и объектов, используемых для разработки программного | ||||
| обеспечения. | ||||
| i) Исходный код – текст компьютерной программы на каком-либо языке программирования, состоящий | ||||
| из одного или нескольких файлов, который может быть прочтён человеком. | ||||
| j) Объектный код – файл (часть машинного кода) с промежуточным представлением отдельного модуля | ||||
| программы, полученный в результате обработки исходного кода, еще не связанный в полную программу. | ||||
| Это машинный код для одной конкретной библиотеки или модуля, который будет составлять готовый | ||||
| продукт. | ||||
| k) Некоммерческое использование – индивидуальное личное использование Пользователем программного | ||||
| обеспечения с целью обучения работе с Программным обеспечением, для оценки или демонстрации | ||||
| возможностей Программного обеспечения, при котором, Пользователем не извлекается коммерческая | ||||
| выгода и/или не идёт в доход денежное вознаграждение при использовании Программного обеспечения. | ||||
|  | ||||
|                     2. ДОПУСТИМЫЕ СПОСОБЫ ИСПОЛЬЗОВАНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ | ||||
|  | ||||
| 2.1. Правообладатель предоставляет Пользователю ограниченное право использования Программного | ||||
| обеспечения на условиях простой (неисключительной) лицензии в объёме, ограниченном правом | ||||
| воспроизведения полной рабочей версии программного обеспечения, новых версий программного обеспечения | ||||
| в памяти оборудования и его запуска на оборудовании в соответствии со ст. 1280 ГК РФ. | ||||
| 2.2. Право на использование Программного обеспечения, предоставляемое Пользователю, носит | ||||
| неисключительный характер. | ||||
| 2.3. Пользователю предоставляется всемирная, неисключительная, не подлежащая сублицензированию, | ||||
| лицензия на ограниченное использование Программного обеспечения. | ||||
| 2.4. Пользователь, имеющий Базовую (некоммерческую) версию лицензии для пробного использования | ||||
| имеет право приобрести Подписку на программное обеспечение. В этом случае Пользователь обязан | ||||
| обратиться в службу поддержки Правообладателя по адресу:  https://entaxy.ru/ для изменения | ||||
| вида лицензии с Базовой бесплатной версии на Подписки. | ||||
| 2.5. Срок использования скачанной Пользователем базовой (некоммерческой) версии лицензии для | ||||
| пробного использования программного обеспечения – не ограничен. | ||||
| 2.6. Использование Пользователем настоящего программного обеспечения в целях разработки, | ||||
| модификации, обновления другого ПО, принадлежащего третьим лицам, а не Правообладателю, | ||||
| без разрешения Правообладателя не допускается. | ||||
|  | ||||
|                                 3. АВТОРСКОЕ ПРАВО. | ||||
|  | ||||
| 3.1. Все авторские права, все права интеллектуальной собственности на Программное обеспечение | ||||
| и любые его копии принадлежат Правообладателю. | ||||
| 3.2. Все авторские права, все права интеллектуальной собственности в отношении любого контента, | ||||
| к которому можно получить доступ с помощью Программного обеспечения, является собственностью | ||||
| соответствующего владельца контента и защищается применимым законодательством об авторском | ||||
| праве или другими законами и договорами об интеллектуальной собственности. | ||||
| 3.3. Условия использования Программного обеспечения. | ||||
| Лицензия, предоставленная Пользователю, действительна только в том случае, если Пользователь | ||||
| придерживается следующих условий: | ||||
| 3.3.1. Принятие уведомлений об авторских правах. Пользователю запрещается удалять или изменять | ||||
| какие-либо уведомления об авторских правах или лицензиях, которые появляются при использовании | ||||
| Программного обеспечения или на нем. | ||||
| 3.3.2. Модификация. Пользователю запрещается модифицировать, изменять, декомпилировать, | ||||
| расшифровывать, дизассемблировать, переводить или реверсировать, перепроектировать | ||||
| Программное обеспечение. | ||||
| 3.3.3. Распространение. Пользователю запрещается сублицензировать, передавать право использования | ||||
| ПО или иным образом распространять или предоставлять Программное обеспечение любой третьей стороне. | ||||
| 3.3.4. SaaS. За исключением случаев, когда это разрешено Правообладателем, Пользователю запрещено | ||||
| использовать Программное обеспечение в коммерческих целях для оказания услуг третьим лицам. | ||||
|  | ||||
|                     4. ОТВЕТСТВЕННОСТЬ ПРАВООБЛАДАТЕЛЯ ПРИ НАРУШЕНИИ ПОЛЬЗОВАТЕЛЕМ ПРАВ «ИС» | ||||
|  | ||||
| 4.1. Правообладатель не несет никаких обязательств в отношении каких-либо претензий к Пользователю | ||||
| на предмет нарушения последним прав Интеллектуальной собственности, возникших в связи с | ||||
| использованием Пользователем: | ||||
| 4.1.1. Любых компонентов программного обеспечения с открытым исходным кодом, включенных в | ||||
| Программное обеспечение; | ||||
| 4.1.2. Любого нарушения правил использования Программного обеспечения, установленного условиями | ||||
| настоящего соглашения; | ||||
| 4.1.3. Любого использования Программного обеспечения в сочетании с другими ПО, оборудованием, | ||||
| или данными, не предоставленными Пользователю Правообладателем; | ||||
| 4.1.4. Любого изменения Программного обеспечения любым третьим лицом, а не Правообладателем. | ||||
|  | ||||
|  | ||||
| 5. НАСТОЯЩИМ ПРАВООБЛАДАТЕЛЬ ЗАЯВЛЯЕТ, ЧТО ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРЕДОСТАВЛЯЕТСЯ ПОЛЬЗОВАТЕЛЮ | ||||
| ПО ПРИНЦИПУ «AS IS» - «КАК ЕСТЬ». НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ ПРАВООБЛАДАТЕЛЬ НЕ ГАРАНТИРУЕТ | ||||
| И НЕ ОБЕЩАЕТ, ЧТО ПРЕДОСТАВЛЕННОЕ ИМ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ БУДЕТ ПОДХОДИТЬ ИЛИ НЕ ПОДХОДИТЬ | ||||
| ДЛЯ КОНКРЕТНЫХ ЦЕЛЕЙ ПОЛЬЗОВАТЕЛЯ, ЧТО ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ БУДЕТ ОТВЕЧАТЬ ВСЕМ КОММЕРЧЕСКИМ | ||||
| И ЛИЧНЫМ СУБЪЕКТИВНЫМ ОЖИДАНИЯМ ПОЛЬЗОВАТЕЛЯ, ЧТО ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ БУДЕТ РАБОТАТЬ | ||||
| ИСПРАВНО, БЕЗ ТЕХНИЧЕСКИХ ОШИБОК, БЫСТРО И БЕСПЕРЕБОЙНО. | ||||
|  | ||||
|                         6. ОГРАНИЧЕНИЕ ОТВЕТСТВЕННОСТИ. | ||||
| НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ ПРАВООБЛАДАТЕЛЬ ИЛИ ЕГО АФФИЛЛИРОВАННЫЕ ЛИЦА НЕ НЕСУТ ПЕРЕД ПОЛЬЗОВАТЕЛЕМ | ||||
| ОТВЕТСТВЕННОСТИ ЗА ЛЮБЫЕ ПРЯМЫЕ ИЛИ КОСВЕННЫЕ УБЫТКИ ПОЛЬЗОВАТЕЛЯ, ЕГО РАСХОДЫ ИЛИ РЕАЛЬНЫЙ УЩЕРБ, | ||||
| ВКЛЮЧАЯ, ПОМИМО ПРОЧЕГО, ПРОСТОИ; УТРАТУ БИЗНЕСА; УПУЩЕННУЮ ВЫГОДУ; НЕДОПОЛУЧЕННУЮ ПРИБЫЛЬ; | ||||
| ПОТЕРЮ ИЛИ ПОВРЕЖДЕНИЕ ДАННЫХ, ИМУЩЕСТВА И ИНОЕ. | ||||
| ОГРАНИЧЕНИЯ ПРИМЕНЯЮТСЯ НЕЗАВИСИМО ОТ ОСНОВАНИЯ НАСТУПЛЕНИЯ ОТВЕТСТВЕННОСТИ; В ТОМ ЧИСЛЕ ВСЛЕДСТВИЕ | ||||
| ДЕЙСТВИЯ ИЛИ БЕЗДЕЙСТВИЯ, НЕБРЕЖНОСТИ, УМЫСЛА, ПРЯМОГО ИЛИ КОСВЕННОГО; НЕОСТОРОЖНОСТИ; ЗАБЛУЖДЕНИЯ; | ||||
| КЛЕВЕТЫ; НАРУШЕНИЯ КОНФИДЕНЦИАЛЬНОСТИ ИЛИ ПРАВА ИНТЕЛЛЕКТУАЛЬНОЙ СОБСТВЕННОСТИ; ИЛИ ЛЮБОЕ ДРУГОЕ | ||||
| ОСНОВАНИЕ НАСТУПЛЕНИЯ ОТВЕТСТВЕННОСТИ. | ||||
|  | ||||
|                         7. ОБЯЗАННОСТЬ ПОЛЬЗОВАТЕЛЯ: | ||||
| Не осуществлять самостоятельно и (или) с привлечением третьих лиц нижеследующие действия | ||||
| (включая, но не ограничиваясь) по: | ||||
| -дизассемблированию и (или) декомпилированию (преобразованию объектного кода в исходный код) | ||||
|  Программного обеспечения; | ||||
| -модификации Программного обеспечения, в том числе вносить изменения в объектный код, исходный | ||||
| код Программного обеспечения, за исключением тех изменений, которые вносятся средствами, | ||||
| включёнными в Программное обеспечение и описанными непосредственно в документации к нему; | ||||
| -созданию условий для использования Программного обеспечения лицами, не имеющими прав на | ||||
| использование данного Программного обеспечения, включая (но не ограничиваясь) вмешательство | ||||
| третьих лиц в функционирование Программного обеспечения, предоставление третьим лицам доступа | ||||
| к исследованию и (или) замене настроек Программного обеспечения, включая его первичную установку; | ||||
| -распространению Программного обеспечения в целом или в части (включая приложенную к нему документацию). | ||||
|  | ||||
|                     8. БИБЛИОТЕКА ПО. ИСПОЛЬЗУЕМЫЕ ПРОГРАММНЫЕ СРЕДСТВА. | ||||
|  | ||||
| 8.1. Настоящим, Правообладатель заверяет, что Библиотека программного обеспечения состоит из | ||||
| лицензионных продуктов, используемых на законных основаниях, а | ||||
| именно https://entaxy.ru/libs/licenses/root-aggregated.deps. | ||||
| 8.2. Любые программные средства, применяемые Пользователем при работе с ПО, должны быть | ||||
| совместимы с библиотекой ПО, указанной в п.8.1. настоящего соглашения. | ||||
| 8.3. Перечень внешних модулей ПО, указанный в п.8.1 настоящего соглашения, может изменяться | ||||
| Правообладателем в одностороннем порядке, в зависимости от выпуска релизов программного обеспечения, | ||||
| содержащих все изменения и дополнения программного обеспечения. | ||||
|  | ||||
|                         9. ВНЕСЕНИЕ ИЗМЕНЕНИЙ В ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ. | ||||
|  | ||||
| 9.1.  Программное обеспечение, интеграционная шина «ЭНТАКСИ» (ENTAXY) является свободно распространяемым | ||||
| программным обеспечением. | ||||
| 9.2. Пользователь имеет право вносить изменения в исходный код программного обеспечения исключительно | ||||
| с согласия Правообладателя в порядке предложения изменений/правок/дополнений через механизм | ||||
| «Pull Requests» в открытом репозитории Правообладателя по адресу: https://git.entaxy.ru/entaxy/entaxy-public. | ||||
| 9.3. Любые изменения программного обеспечения, осуществляемые Пользователем без соблюдения условий | ||||
| пункта 9.2. настоящего документа, являются нарушением авторских и смежных прав Правообладателя, | ||||
| прав интеллектуальной собственности Правообладателя и влекут применение к Пользователю мер | ||||
| ответственности в соответствии с условиями настоящей Лицензии, а также применимого законодательства | ||||
| Российской Федерации. | ||||
|  | ||||
|                                 10. ЗАКЛЮЧИТЕЛЬНЫЕ ПОЛОЖЕНИЯ. | ||||
|  | ||||
| 10.1. В случае нарушения Пользователем любого из условий настоящей Лицензии, Правообладатель имеет | ||||
| право взыскать с Пользователя любые причинённые таким нарушением убытки, реальный ущерб, | ||||
| недополученную прибыль, упущенную выгоду, а также в случае нарушения Пользователем условий | ||||
| пункта 9.2 настоящего соглашения, в том числе, взыскать с Пользователя штраф в размере | ||||
| 2 000 000 (Два миллиона) рублей за каждый установленный случай несанкционированного изменения | ||||
| исходного или объектного кода Программного обеспечения «Энтакси» (Entaxy). | ||||
| 10.2. В рамках исполнения Пользователем обязательств по настоящей Лицензии, применимое | ||||
| законодательство – Российской Федерации. | ||||
| 10.3. Если какое-либо положение настоящей Лицензии будет признано судом недействительным, | ||||
| остальные положения будут продолжать своё действие, а Пользователь будет обязан продолжать | ||||
| исполнять свои обязанности в соответствии с этими положениями. | ||||
							
								
								
									
										76
									
								
								platform-backward-compat/blueprint-generator-service/pom.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										76
									
								
								platform-backward-compat/blueprint-generator-service/pom.xml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,76 @@ | ||||
| <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> | ||||
|   <modelVersion>4.0.0</modelVersion> | ||||
|   <parent> | ||||
|     <groupId>ru.entaxy.platform</groupId> | ||||
|     <artifactId>platform-backward-compat</artifactId> | ||||
|     <version>1.11.0</version> | ||||
|   </parent> | ||||
|   <groupId>ru.entaxy.platform.backward-compat</groupId> | ||||
|   <artifactId>blueprint-generator-service</artifactId> | ||||
|   <packaging>bundle</packaging> | ||||
|   <name>ENTAXY :: PLATFORM :: BACKWARD COMPATIBILITY :: BLUEPRINT GENERATOR SERVICE</name> | ||||
|   <description>ENTAXY :: PLATFORM :: BACKWARD COMPATIBILITY :: BLUEPRINT GENERATOR SERVICE</description> | ||||
|    | ||||
|   <properties> | ||||
|   	<bundle.osgi.export.pkg>ru.entaxy.platform.core.blueprint.generator</bundle.osgi.export.pkg> | ||||
|   </properties> | ||||
|    | ||||
|  	<dependencies> | ||||
| 		<dependency> | ||||
| 			<groupId>org.apache.karaf</groupId> | ||||
| 			<artifactId>org.apache.karaf.util</artifactId> | ||||
| 		</dependency> | ||||
| 		<!-- dependency> | ||||
| 			<groupId>ru.entaxy.esb.platform.runtime.base</groupId> | ||||
| 			<artifactId>base-support</artifactId> | ||||
| 			<version>${project.version}</version> | ||||
| 		</dependency> | ||||
|         <dependency> | ||||
|             <groupId>com.google.code.gson</groupId> | ||||
|             <artifactId>gson</artifactId> | ||||
|         </dependency--> | ||||
| 	  	<dependency> | ||||
| 	  		<groupId>org.osgi</groupId> | ||||
| 	  		<artifactId>org.osgi.service.component.annotations</artifactId> | ||||
| 	  		<version>1.4.0</version> | ||||
| 	  		<scope>compile</scope> | ||||
| 	  	</dependency> | ||||
| 	  	<!-- dependency> | ||||
| 	  		<groupId>ru.entaxy.esb.system.core</groupId> | ||||
| 	  		<artifactId>template</artifactId> | ||||
| 	  		<version>${project.version}</version> | ||||
| 	  	</dependency--> | ||||
| 	  	<dependency> | ||||
| 	  		<groupId> | ||||
| 	  			ru.entaxy.esb.platform.runtime.base.connecting.generator | ||||
| 	  		</groupId> | ||||
| 	  		<artifactId>generator-api</artifactId> | ||||
| 	  		<version>${project.version}</version> | ||||
| 	  	</dependency> | ||||
| 	  	<dependency> | ||||
| 	  		<groupId> | ||||
| 	  			ru.entaxy.esb.platform.runtime.base.connecting.generator | ||||
| 	  		</groupId> | ||||
| 	  		<artifactId>generator-factory</artifactId> | ||||
| 	  		<version>${project.version}</version> | ||||
| 	  	</dependency> | ||||
|  	</dependencies> | ||||
|    | ||||
| 	  <build> | ||||
| 	  	<plugins> | ||||
| 		    <plugin> | ||||
| 		        <groupId>org.apache.felix</groupId> | ||||
| 		        <artifactId>maven-bundle-plugin</artifactId> | ||||
| 		        <version>${maven-bundle-plugin.version}</version> | ||||
| 		        <extensions>true</extensions> | ||||
| 		        <configuration> | ||||
| 		            <instructions> | ||||
| 		            	<Entaxy-Template-Provider>true</Entaxy-Template-Provider> | ||||
| 		            	<_dsannotations>*</_dsannotations> | ||||
| 		            </instructions> | ||||
| 		        </configuration> | ||||
| 		    </plugin> | ||||
| 	  	</plugins> | ||||
| 	  </build> | ||||
|    | ||||
| </project> | ||||
| @@ -0,0 +1,69 @@ | ||||
| /*- | ||||
|  * ~~~~~~licensing~~~~~~ | ||||
|  * blueprint-generator | ||||
|  * ========== | ||||
|  * Copyright (C) 2020 - 2025 EmDev LLC | ||||
|  * ========== | ||||
|  * You may not use this file except in accordance with the License Terms of the Copyright | ||||
|  * Holder located at: https://entaxy.ru/eula . All copyrights, all intellectual property | ||||
|  * rights to the Software and any copies are the property of the Copyright Holder. Unless | ||||
|  * it is explicitly allowed the Copyright Holder, the User is prohibited from using the | ||||
|  * Software for commercial purposes to provide services to third parties. | ||||
|  *  | ||||
|  * The Copyright Holder hereby declares that the Software is provided on an "AS IS". | ||||
|  * Under no circumstances does the Copyright Holder guarantee or promise that the | ||||
|  * Software provided by him will be suitable or not suitable for the specific purposes | ||||
|  * of the User, that the Software will meet all commercial and personal subjective | ||||
|  * expectations of the User, that the Software will work properly, without technical | ||||
|  * errors, quickly and uninterruptedly. | ||||
|  *  | ||||
|  * Under no circumstances shall the Copyright Holder or its Affiliates is not liable | ||||
|  * to the User for any direct or indirect losses of the User, his expenses or actual | ||||
|  * damage, including, downtime; loss of bussines; lost profit; lost earnings; loss | ||||
|  * or damage to data, property, etc. | ||||
|  * ~~~~~~/licensing~~~~~~ | ||||
|  */ | ||||
| package ru.entaxy.platform.core.blueprint.generator; | ||||
|  | ||||
| import java.util.HashMap; | ||||
| import java.util.Map; | ||||
|  | ||||
| public class Blueprint { | ||||
|  | ||||
|     private String name; | ||||
|     private byte[] body; | ||||
|  | ||||
|     private Map<String, Object> properties = new HashMap<>(); | ||||
|      | ||||
|     public Blueprint(String name, byte[] body) { | ||||
|         this.name = name; | ||||
|         this.body = body; | ||||
|     } | ||||
|  | ||||
|     public String getName() { | ||||
|         return name; | ||||
|     } | ||||
|  | ||||
|     public void setName(String name) { | ||||
|         this.name = name; | ||||
|     } | ||||
|  | ||||
|     public byte[] getBody() { | ||||
|         return body; | ||||
|     } | ||||
|  | ||||
|     public void setBody(byte[] body) { | ||||
|         this.body = body; | ||||
|     } | ||||
|  | ||||
|     public Map<String, Object> getProperties() { | ||||
| 		return properties; | ||||
| 	} | ||||
|  | ||||
| 	@Override | ||||
|     public String toString() { | ||||
|         return "Blueprint{" + | ||||
|                 "name='" + name + '\'' + | ||||
|                 '}'; | ||||
|     } | ||||
| } | ||||
| @@ -0,0 +1,38 @@ | ||||
| /*- | ||||
|  * ~~~~~~licensing~~~~~~ | ||||
|  * blueprint-generator | ||||
|  * ========== | ||||
|  * Copyright (C) 2020 - 2025 EmDev LLC | ||||
|  * ========== | ||||
|  * You may not use this file except in accordance with the License Terms of the Copyright | ||||
|  * Holder located at: https://entaxy.ru/eula . All copyrights, all intellectual property | ||||
|  * rights to the Software and any copies are the property of the Copyright Holder. Unless | ||||
|  * it is explicitly allowed the Copyright Holder, the User is prohibited from using the | ||||
|  * Software for commercial purposes to provide services to third parties. | ||||
|  *  | ||||
|  * The Copyright Holder hereby declares that the Software is provided on an "AS IS". | ||||
|  * Under no circumstances does the Copyright Holder guarantee or promise that the | ||||
|  * Software provided by him will be suitable or not suitable for the specific purposes | ||||
|  * of the User, that the Software will meet all commercial and personal subjective | ||||
|  * expectations of the User, that the Software will work properly, without technical | ||||
|  * errors, quickly and uninterruptedly. | ||||
|  *  | ||||
|  * Under no circumstances shall the Copyright Holder or its Affiliates is not liable | ||||
|  * to the User for any direct or indirect losses of the User, his expenses or actual | ||||
|  * damage, including, downtime; loss of bussines; lost profit; lost earnings; loss | ||||
|  * or damage to data, property, etc. | ||||
|  * ~~~~~~/licensing~~~~~~ | ||||
|  */ | ||||
| package ru.entaxy.platform.core.blueprint.generator; | ||||
|  | ||||
| import java.net.URL; | ||||
| import java.util.Map; | ||||
|  | ||||
| public interface BlueprintGenerator { | ||||
|  | ||||
|     Blueprint createBlueprint(URL templateUrl, String templateName, String systemName, Map<String, String> params) | ||||
|             throws Exception; | ||||
|  | ||||
|     Blueprint createBlueprint(String templateName, String systemName, Map<String, String> params) | ||||
|             throws Exception; | ||||
| } | ||||
| @@ -0,0 +1,113 @@ | ||||
| /*- | ||||
|  * ~~~~~~licensing~~~~~~ | ||||
|  * blueprint-generator | ||||
|  * ========== | ||||
|  * Copyright (C) 2020 - 2025 EmDev LLC | ||||
|  * ========== | ||||
|  * You may not use this file except in accordance with the License Terms of the Copyright | ||||
|  * Holder located at: https://entaxy.ru/eula . All copyrights, all intellectual property | ||||
|  * rights to the Software and any copies are the property of the Copyright Holder. Unless | ||||
|  * it is explicitly allowed the Copyright Holder, the User is prohibited from using the | ||||
|  * Software for commercial purposes to provide services to third parties. | ||||
|  *  | ||||
|  * The Copyright Holder hereby declares that the Software is provided on an "AS IS". | ||||
|  * Under no circumstances does the Copyright Holder guarantee or promise that the | ||||
|  * Software provided by him will be suitable or not suitable for the specific purposes | ||||
|  * of the User, that the Software will meet all commercial and personal subjective | ||||
|  * expectations of the User, that the Software will work properly, without technical | ||||
|  * errors, quickly and uninterruptedly. | ||||
|  *  | ||||
|  * Under no circumstances shall the Copyright Holder or its Affiliates is not liable | ||||
|  * to the User for any direct or indirect losses of the User, his expenses or actual | ||||
|  * damage, including, downtime; loss of bussines; lost profit; lost earnings; loss | ||||
|  * or damage to data, property, etc. | ||||
|  * ~~~~~~/licensing~~~~~~ | ||||
|  */ | ||||
| package ru.entaxy.platform.core.blueprint.generator; | ||||
|  | ||||
| import java.net.URL; | ||||
| import java.util.HashMap; | ||||
| import java.util.Map; | ||||
|  | ||||
| import org.osgi.service.component.annotations.Component; | ||||
| import org.osgi.service.component.annotations.Reference; | ||||
| import org.osgi.service.component.annotations.ReferenceCardinality; | ||||
| import org.slf4j.Logger; | ||||
| import org.slf4j.LoggerFactory; | ||||
|  | ||||
| import ru.entaxy.base.generator.template.Template; | ||||
| import ru.entaxy.base.generator.template.TemplateAwareGenerator; | ||||
| import ru.entaxy.base.generator.template.TemplateImpl; | ||||
| import ru.entaxy.base.generator.template.TemplateService; | ||||
| import ru.entaxy.esb.platform.runtime.base.connecting.generator.Generated; | ||||
| import ru.entaxy.esb.platform.runtime.base.connecting.generator.Generator; | ||||
| import ru.entaxy.esb.platform.runtime.base.connecting.generator.factory.GeneratorFactory; | ||||
|  | ||||
| @Component(service = {BlueprintGenerator.class}, immediate = true) | ||||
| public class BlueprintGeneratorImpl implements BlueprintGenerator { | ||||
|  | ||||
|     private static final Logger LOG = LoggerFactory.getLogger(BlueprintGeneratorImpl.class); | ||||
|     private static final String SYSTEM_NAME = "systemName"; | ||||
|  | ||||
|     @Reference(cardinality = ReferenceCardinality.MANDATORY) | ||||
|     protected TemplateService templateService; | ||||
|      | ||||
|     @Override | ||||
|     public Blueprint createBlueprint(URL templateUrl, String templateName, String systemName, Map<String, String> params) | ||||
|             throws Exception { | ||||
|     	TemplateImpl template = new TemplateImpl(); | ||||
|     	template.setTemplateName(templateName); | ||||
|     	template.setTemplateLocation(templateUrl.toString()); | ||||
|     	template.setType("ftl"); | ||||
|         return createBlueprintWithTemplate(template, systemName, params); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Blueprint createBlueprint(String templateName, String systemName, Map<String, String> params) throws Exception { | ||||
|     	Template template = templateService.getTemplateById(templateName); | ||||
|     	if (template == null) { | ||||
|     		LOG.error("Template not found: [{}]", templateName); | ||||
|     		// TODO throw exception | ||||
|     		return null; | ||||
|     	} | ||||
|         return createBlueprintWithTemplate(template, systemName, params); | ||||
|     } | ||||
|  | ||||
|     protected Blueprint createBlueprintWithTemplate(ru.entaxy.base.generator.template.Template template, | ||||
|     		String systemName, Map<String, String> params) throws Exception { | ||||
|     	TemplateAwareGenerator generator = GeneratorFactory.createGenerator(template); | ||||
|     	if (generator == null) { | ||||
|     		LOG.error("Generator not found for template: [{}]", template.getId()); | ||||
|     		// TODO throw exception | ||||
|     		return null; | ||||
|     	} | ||||
|     	addSystemParam(params, systemName); | ||||
|     	Map<String, Object> parameters = new HashMap<>(); | ||||
|     	parameters.putAll(params); | ||||
|     	Generated result = generator.generate(template,parameters); | ||||
|     	if ((result == null) || (result.getObject() == null)) { | ||||
|     		LOG.error("Generator returned null for template: [{}]", template.getId()); | ||||
|     		// TODO throw exception | ||||
|     		return null; | ||||
|     	} | ||||
|     	if (!Generated.GENERATED_TYPE_BLUEPRINT.equals(result.getType())) { | ||||
| 			LOG.error("Generator returned type [{}], while [{}] is expected for template: [{}]" | ||||
| 					, result.getType() | ||||
| 					, Generated.GENERATED_TYPE_BLUEPRINT | ||||
| 					, template.getId()); | ||||
| 			// TODO throw exception | ||||
| 			return null; | ||||
|     	} | ||||
|     	Blueprint blueprint = new Blueprint(template.getTemplateName(), result.getObject().toString().getBytes()); | ||||
|     	blueprint.getProperties().putAll(result.getProperties()); | ||||
|     	blueprint.getProperties().put("template.name", template.getTemplateName()); | ||||
|     	blueprint.getProperties().put("template.id", template.getId()); | ||||
|     	blueprint.getProperties().put("template.type", template.getType()); | ||||
|     	return blueprint; | ||||
|     } | ||||
|      | ||||
|     private void addSystemParam(Map<String, String> params, String systemName) { | ||||
|         params.put(SYSTEM_NAME, systemName); | ||||
|     } | ||||
|  | ||||
| } | ||||
| @@ -0,0 +1,39 @@ | ||||
| [#ftl attributes={"generated.type":"blueprint"}] | ||||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0" | ||||
|            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||||
|            xsi:schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0 https://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd"> | ||||
|  | ||||
|     <bean id="inConnectorCollector" class="ru.entaxy.esb.system.profile.commons.InConnectorCollector"/> | ||||
|  | ||||
|     <bean id="system-profile" class="ru.entaxy.esb.system.registry.systems.profile.impl.defaults.DefaultSystemProfile" | ||||
|           activation="eager"> | ||||
|         <property name="systemName" value="[=systemName]"/> | ||||
|         <property name="profileOutput" ref="profileOutput"/> | ||||
|     </bean> | ||||
|  | ||||
|     <bean id="profileOutput" class="ru.entaxy.esb.system.profile.commons.profile_output.ProfileOutputImpl" | ||||
|           activation="eager"> | ||||
|         <property name="systemName" value="[=systemName]"/> | ||||
|     </bean> | ||||
|  | ||||
|     <service activation="eager" auto-export="interfaces" ref="system-profile"/> | ||||
|  | ||||
|     <reference id="pooledConnectionFactory" interface="javax.jms.ConnectionFactory"/> | ||||
|  | ||||
|     <bean id="jms" class="org.apache.camel.component.jms.JmsComponent"> | ||||
|         <property name="connectionFactory" ref="pooledConnectionFactory"/> | ||||
|     </bean> | ||||
|  | ||||
|     <camelContext id="profile-[=systemName]" xmlns="http://camel.apache.org/schema/blueprint"> | ||||
|         <route> | ||||
|             <from uri="direct-vm:profile-[=systemName]-enter-point"/> | ||||
|             <log message="Message ${headers} send to bridge" loggingLevel="TRACE"/> | ||||
|             <toD uri="permission:checkSystemAccessException?objectId=${headers.X-SystemId}&subjectId=[=systemName]"/> | ||||
|             <setHeader name="NTX_DestinationPointAfterBridge"> | ||||
|                 <simple>system:[=systemName]</simple> | ||||
|             </setHeader> | ||||
|             <to uri="jms:queue:entaxy.local.out.[=origin]"/> | ||||
|         </route> | ||||
|     </camelContext> | ||||
| </blueprint> | ||||
| @@ -0,0 +1,48 @@ | ||||
| [#ftl attributes={"generated.type":"blueprint"}] | ||||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0" | ||||
|            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||||
|            xsi:schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0 https://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd"> | ||||
|  | ||||
|     <reference id="entaxy-broker" interface="org.apache.camel.Component" | ||||
|                filter="(connection.name=entaxy-broker)"/> | ||||
|  | ||||
|     <camelContext id="route-[=systemName]" xmlns="http://camel.apache.org/schema/blueprint"> | ||||
|         <route> | ||||
|             <from uri="direct-vm:profile-[=systemName]-exit-point"/> | ||||
|             <log message="Message ${headers} send to route" loggingLevel="TRACE"/> | ||||
|  | ||||
|             <when> | ||||
|                 <simple>${headers.ENTAXY_Destination} == 'nsi' | ||||
|                     && ${headers.ENTAXY_DestinationType} == null | ||||
|                 </simple> | ||||
|                 <setHeader name="NTX_NSI_Answer"> | ||||
|                     <simple>true</simple> | ||||
|                 </setHeader> | ||||
|                 <to uri="entaxy-broker:queue:entaxy.nsi.entry.point?exchangePattern=InOnly"/> | ||||
|             </when> | ||||
|  | ||||
|             <choice> | ||||
|                 <when> | ||||
|                     <simple>${headers.ENTAXY_DestinationType} == 'system.name'</simple> | ||||
|                     <toD uri="system:${headers.ENTAXY_Destination}"/> | ||||
|                 </when> | ||||
|                 <when> | ||||
|                     <simple>${headers.ENTAXY_DestinationType} == 'system-group.name'</simple> | ||||
|                     <toD uri="system-group:${headers.ENTAXY_Destination}"/> | ||||
|                 </when> | ||||
|                 <when> | ||||
|                     <simple>${headers.ENTAXY_DestinationType} == 'queue.name'</simple> | ||||
|                     <toD uri="entaxy-broker:queue:${headers.ENTAXY_Destination}"/> | ||||
|                 </when> | ||||
|                 <when> | ||||
|                     <simple>${headers.ENTAXY_DestinationType} == 'topic.name'</simple> | ||||
|                     <toD uri="entaxy-broker:topic:${headers.ENTAXY_Destination}"/> | ||||
|                 </when> | ||||
|                 <otherwise> | ||||
|                     <toD uri="system:${headers.ENTAXY_Destination}"/> | ||||
|                 </otherwise> | ||||
|             </choice> | ||||
|         </route> | ||||
|     </camelContext> | ||||
| </blueprint> | ||||
| @@ -0,0 +1,23 @@ | ||||
| { | ||||
| 	"templates":[ | ||||
| 		{ | ||||
| 			"id":"bridge-profile", | ||||
| 			/* by default: | ||||
| 			"name":"{id}", | ||||
| 			"type":"ftl", | ||||
| 			"path":"DEFAULT_PATH" | ||||
| 			"filename":"{id}" | ||||
| 			"fullname":"{id}.{type}", | ||||
| 			*/ | ||||
| 			"description":"Ftl template for bridge profile" | ||||
| 		}, | ||||
| 		{ | ||||
| 			"id":"default-route", | ||||
| 			"description":"Ftl template for default route from profile" | ||||
| 		}, | ||||
| 		{ | ||||
| 			"id":"profile", | ||||
| 			"description":"Ftl template for system profile" | ||||
| 		} | ||||
| 	] | ||||
| } | ||||
| @@ -0,0 +1,75 @@ | ||||
| [#ftl attributes={"generated.type":"blueprint"}] | ||||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0" | ||||
|            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||||
|            xsi:schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0 https://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd"> | ||||
|  | ||||
|     <reference-list id="outConnector" | ||||
|                     interface="ru.entaxy.esb.system.profile.commons.connectors.out.OutConnector" | ||||
|                     filter="(systemName=[=systemName])" availability="optional"> | ||||
|         <reference-listener ref="profileOutput" | ||||
|                             bind-method="register" unbind-method="unregister"/> | ||||
|     </reference-list> | ||||
|  | ||||
|     <reference-list id="inConnector" | ||||
|                     interface="ru.entaxy.esb.system.profile.commons.connectors.in.InConnector" | ||||
|                     filter="(systemName=[=systemName])" availability="optional"> | ||||
|         <reference-listener ref="inConnectorCollector" | ||||
|                             bind-method="register" unbind-method="unregister"/> | ||||
|     </reference-list> | ||||
|  | ||||
|     <bean id="inConnectorCollector" class="ru.entaxy.esb.system.profile.commons.InConnectorCollector"/> | ||||
|  | ||||
|     <bean id="system-profile" class="ru.entaxy.esb.system.registry.systems.profile.impl.defaults.DefaultSystemProfile" | ||||
|           activation="eager"> | ||||
|         <property name="systemName" value="[=systemName]"/> | ||||
|         <property name="profileOutput" ref="profileOutput"/> | ||||
|         <property name="inConnectorCollector" ref="inConnectorCollector"/> | ||||
|     </bean> | ||||
|  | ||||
|     <bean id="profileOutput" class="ru.entaxy.esb.system.profile.commons.profile_output.ProfileOutputImpl" | ||||
|           activation="eager"> | ||||
|         <property name="systemName" value="[=systemName]"/> | ||||
|     </bean> | ||||
|  | ||||
|     <service activation="eager" auto-export="interfaces" ref="system-profile"/> | ||||
|  | ||||
|     <reference id="pooledConnectionFactory" interface="javax.jms.ConnectionFactory"/> | ||||
|  | ||||
|     <bean id="jms" class="org.apache.camel.component.jms.JmsComponent"> | ||||
|         <property name="connectionFactory" ref="pooledConnectionFactory"/> | ||||
|     </bean> | ||||
|  | ||||
|     <camelContext id="profile-[=systemName]" xmlns="http://camel.apache.org/schema/blueprint"> | ||||
|  | ||||
|         <route> | ||||
|             <from uri="direct-vm:profile-[=systemName]-exit-dispatcher"/> | ||||
|             <log message="Message ${headers} send to profile dispatcher" loggingLevel="TRACE"/> | ||||
|             <choice> | ||||
|                 <when> | ||||
|                     <simple>${headers.NTX_NextPoint} != null</simple> | ||||
|                     <setProperty name="NTX_Tmp"> | ||||
|                         <simple>${headers.NTX_NextPoint}</simple> | ||||
|                     </setProperty> | ||||
|                     <removeHeader headerName="NTX_NextPoint"/> | ||||
|                     <toD uri="${exchangeProperty.NTX_Tmp}"/> | ||||
|                 </when> | ||||
|                 <otherwise> | ||||
|                     <to uri="direct-vm:profile-[=systemName]-exit-point"/> | ||||
|                 </otherwise> | ||||
|             </choice> | ||||
|         </route> | ||||
|  | ||||
|         <route> | ||||
|             <from uri="direct-vm:profile-[=systemName]-enter-point"/> | ||||
|             <log message="Message ${headers} send to profile output" loggingLevel="TRACE"/> | ||||
| [#--            <choice>--] | ||||
| [#--                <when>--] | ||||
| [#--                    <simple>${headers.NTX_Origin} == null</simple>--] | ||||
| [#--                    <toD uri="permission:checkSystemAccessException?objectId=${headers.X-SystemId}&subjectId=[=systemName]"/>--] | ||||
| [#--                </when>--] | ||||
| [#--            </choice>--] | ||||
|             <to uri="bean:profileOutput?method=sendTo"/> | ||||
|         </route> | ||||
|     </camelContext> | ||||
| </blueprint> | ||||
							
								
								
									
										175
									
								
								platform-backward-compat/connector-storage/LICENSE.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										175
									
								
								platform-backward-compat/connector-storage/LICENSE.txt
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,175 @@ | ||||
|                                  ЛИЦЕНЗИЯ ОГРАНИЧЕННОГО ПРИМЕНЕНИЯ | ||||
|  | ||||
| Настоящий документ устанавливает для Пользователя условия применения Базовой (некоммерческой) | ||||
| версии лицензии для пробного использования программного обеспечения ENTAXY, принадлежащего | ||||
| Правообладателю – Обществу с ограниченной ответственностью "ЕМДЕВ" (ОГРН 1057810026658, ИНН | ||||
| 7813313860, юридический адрес: 197022, Россия, г. Санкт-Петербург, ул. Профессора Попова, | ||||
| д. 23, литера В, помещение 3Н), расположенной в сети Интернет по адресу | ||||
| https://www.emdev.ru/about (далее - Компания). | ||||
|  | ||||
| Используя или получая доступ к Программному обеспечению, или нажав «Я согласен с Условиями» | ||||
| (или аналогичную кнопку или флажок) после загрузки или установки Программного обеспечения, | ||||
| Пользователь выражает свое согласие на обязательность условий и ограничений, изложенных в | ||||
| настоящем документе, в противном случае, он должен не использовать или не получать доступ | ||||
| к Программному обеспечению. | ||||
|  | ||||
|                                     1. ТЕРМИНЫ И ОПРЕДЕЛЕНИЯ | ||||
|  | ||||
| a) ПО – Программное обеспечение, интеграционная шина «ЭНТАКСИ» (ENTAXY) в любой ее версии | ||||
| или редакции, исключительные права на которую принадлежат Правообладателю. | ||||
| b) Правообладатель (Компания) – ООО «ЕМДЕВ», ОГРН 1057810026658, ИНН 7813313860, исключительные | ||||
| права которого подтверждаются Свидетельством о государственной регистрации в Реестре программ | ||||
| для ЭВМ № 2021610848 от 19.01.2021 года. | ||||
| c) Пользователь – юридическое или физическое лицо, получившее через скачивание с сайта | ||||
| https://entaxy.ru или иным образом, дистрибутив ПО, пользующееся ПО. | ||||
| d) ИС – интеллектуальная собственность – закреплённое законом исключительное право, а также | ||||
| личные неимущественные права авторов произведений на результат интеллектуальной деятельности. | ||||
| e) Подписка – это коммерческое предложение Правообладателя, состоящее из Лицензии на использование | ||||
| ПО и доступа к технической поддержке программного обеспечения на срок Подписки. Подписка | ||||
| включает предоставление Пользователю неисключительного права использования ПО, в том числе | ||||
| получение обновлений функционала ПО и безопасности ПО, исправление ошибок ПО и получение | ||||
| патчей с обновлениями и исправлениями программного обеспечения. Подписка приобретается | ||||
| Пользователем на период времени, указанный в Сертификате. Количество подписок устанавливается | ||||
| для каждого Пользователя индивидуально в Сертификате. | ||||
| f) Сертификат – документ, выдаваемый Дистрибъютором или Авторизованным партнёром (Партнёром), | ||||
| подтверждающий факт приобретения физическим или юридическим лицом Подписки на программное | ||||
| обеспечение в ограниченном объёме и на определённый период времени. | ||||
| g) Лицензия (простая (неисключительная) – совокупность ограниченных прав использования ПО, | ||||
| предоставленных Пользователю согласно условиям Подписки. | ||||
| h) Библиотека – совокупность подпрограмм и объектов, используемых для разработки программного | ||||
| обеспечения. | ||||
| i) Исходный код – текст компьютерной программы на каком-либо языке программирования, состоящий | ||||
| из одного или нескольких файлов, который может быть прочтён человеком. | ||||
| j) Объектный код – файл (часть машинного кода) с промежуточным представлением отдельного модуля | ||||
| программы, полученный в результате обработки исходного кода, еще не связанный в полную программу. | ||||
| Это машинный код для одной конкретной библиотеки или модуля, который будет составлять готовый | ||||
| продукт. | ||||
| k) Некоммерческое использование – индивидуальное личное использование Пользователем программного | ||||
| обеспечения с целью обучения работе с Программным обеспечением, для оценки или демонстрации | ||||
| возможностей Программного обеспечения, при котором, Пользователем не извлекается коммерческая | ||||
| выгода и/или не идёт в доход денежное вознаграждение при использовании Программного обеспечения. | ||||
|  | ||||
|                     2. ДОПУСТИМЫЕ СПОСОБЫ ИСПОЛЬЗОВАНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ | ||||
|  | ||||
| 2.1. Правообладатель предоставляет Пользователю ограниченное право использования Программного | ||||
| обеспечения на условиях простой (неисключительной) лицензии в объёме, ограниченном правом | ||||
| воспроизведения полной рабочей версии программного обеспечения, новых версий программного обеспечения | ||||
| в памяти оборудования и его запуска на оборудовании в соответствии со ст. 1280 ГК РФ. | ||||
| 2.2. Право на использование Программного обеспечения, предоставляемое Пользователю, носит | ||||
| неисключительный характер. | ||||
| 2.3. Пользователю предоставляется всемирная, неисключительная, не подлежащая сублицензированию, | ||||
| лицензия на ограниченное использование Программного обеспечения. | ||||
| 2.4. Пользователь, имеющий Базовую (некоммерческую) версию лицензии для пробного использования | ||||
| имеет право приобрести Подписку на программное обеспечение. В этом случае Пользователь обязан | ||||
| обратиться в службу поддержки Правообладателя по адресу:  https://entaxy.ru/ для изменения | ||||
| вида лицензии с Базовой бесплатной версии на Подписки. | ||||
| 2.5. Срок использования скачанной Пользователем базовой (некоммерческой) версии лицензии для | ||||
| пробного использования программного обеспечения – не ограничен. | ||||
| 2.6. Использование Пользователем настоящего программного обеспечения в целях разработки, | ||||
| модификации, обновления другого ПО, принадлежащего третьим лицам, а не Правообладателю, | ||||
| без разрешения Правообладателя не допускается. | ||||
|  | ||||
|                                 3. АВТОРСКОЕ ПРАВО. | ||||
|  | ||||
| 3.1. Все авторские права, все права интеллектуальной собственности на Программное обеспечение | ||||
| и любые его копии принадлежат Правообладателю. | ||||
| 3.2. Все авторские права, все права интеллектуальной собственности в отношении любого контента, | ||||
| к которому можно получить доступ с помощью Программного обеспечения, является собственностью | ||||
| соответствующего владельца контента и защищается применимым законодательством об авторском | ||||
| праве или другими законами и договорами об интеллектуальной собственности. | ||||
| 3.3. Условия использования Программного обеспечения. | ||||
| Лицензия, предоставленная Пользователю, действительна только в том случае, если Пользователь | ||||
| придерживается следующих условий: | ||||
| 3.3.1. Принятие уведомлений об авторских правах. Пользователю запрещается удалять или изменять | ||||
| какие-либо уведомления об авторских правах или лицензиях, которые появляются при использовании | ||||
| Программного обеспечения или на нем. | ||||
| 3.3.2. Модификация. Пользователю запрещается модифицировать, изменять, декомпилировать, | ||||
| расшифровывать, дизассемблировать, переводить или реверсировать, перепроектировать | ||||
| Программное обеспечение. | ||||
| 3.3.3. Распространение. Пользователю запрещается сублицензировать, передавать право использования | ||||
| ПО или иным образом распространять или предоставлять Программное обеспечение любой третьей стороне. | ||||
| 3.3.4. SaaS. За исключением случаев, когда это разрешено Правообладателем, Пользователю запрещено | ||||
| использовать Программное обеспечение в коммерческих целях для оказания услуг третьим лицам. | ||||
|  | ||||
|                     4. ОТВЕТСТВЕННОСТЬ ПРАВООБЛАДАТЕЛЯ ПРИ НАРУШЕНИИ ПОЛЬЗОВАТЕЛЕМ ПРАВ «ИС» | ||||
|  | ||||
| 4.1. Правообладатель не несет никаких обязательств в отношении каких-либо претензий к Пользователю | ||||
| на предмет нарушения последним прав Интеллектуальной собственности, возникших в связи с | ||||
| использованием Пользователем: | ||||
| 4.1.1. Любых компонентов программного обеспечения с открытым исходным кодом, включенных в | ||||
| Программное обеспечение; | ||||
| 4.1.2. Любого нарушения правил использования Программного обеспечения, установленного условиями | ||||
| настоящего соглашения; | ||||
| 4.1.3. Любого использования Программного обеспечения в сочетании с другими ПО, оборудованием, | ||||
| или данными, не предоставленными Пользователю Правообладателем; | ||||
| 4.1.4. Любого изменения Программного обеспечения любым третьим лицом, а не Правообладателем. | ||||
|  | ||||
|  | ||||
| 5. НАСТОЯЩИМ ПРАВООБЛАДАТЕЛЬ ЗАЯВЛЯЕТ, ЧТО ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРЕДОСТАВЛЯЕТСЯ ПОЛЬЗОВАТЕЛЮ | ||||
| ПО ПРИНЦИПУ «AS IS» - «КАК ЕСТЬ». НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ ПРАВООБЛАДАТЕЛЬ НЕ ГАРАНТИРУЕТ | ||||
| И НЕ ОБЕЩАЕТ, ЧТО ПРЕДОСТАВЛЕННОЕ ИМ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ БУДЕТ ПОДХОДИТЬ ИЛИ НЕ ПОДХОДИТЬ | ||||
| ДЛЯ КОНКРЕТНЫХ ЦЕЛЕЙ ПОЛЬЗОВАТЕЛЯ, ЧТО ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ БУДЕТ ОТВЕЧАТЬ ВСЕМ КОММЕРЧЕСКИМ | ||||
| И ЛИЧНЫМ СУБЪЕКТИВНЫМ ОЖИДАНИЯМ ПОЛЬЗОВАТЕЛЯ, ЧТО ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ БУДЕТ РАБОТАТЬ | ||||
| ИСПРАВНО, БЕЗ ТЕХНИЧЕСКИХ ОШИБОК, БЫСТРО И БЕСПЕРЕБОЙНО. | ||||
|  | ||||
|                         6. ОГРАНИЧЕНИЕ ОТВЕТСТВЕННОСТИ. | ||||
| НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ ПРАВООБЛАДАТЕЛЬ ИЛИ ЕГО АФФИЛЛИРОВАННЫЕ ЛИЦА НЕ НЕСУТ ПЕРЕД ПОЛЬЗОВАТЕЛЕМ | ||||
| ОТВЕТСТВЕННОСТИ ЗА ЛЮБЫЕ ПРЯМЫЕ ИЛИ КОСВЕННЫЕ УБЫТКИ ПОЛЬЗОВАТЕЛЯ, ЕГО РАСХОДЫ ИЛИ РЕАЛЬНЫЙ УЩЕРБ, | ||||
| ВКЛЮЧАЯ, ПОМИМО ПРОЧЕГО, ПРОСТОИ; УТРАТУ БИЗНЕСА; УПУЩЕННУЮ ВЫГОДУ; НЕДОПОЛУЧЕННУЮ ПРИБЫЛЬ; | ||||
| ПОТЕРЮ ИЛИ ПОВРЕЖДЕНИЕ ДАННЫХ, ИМУЩЕСТВА И ИНОЕ. | ||||
| ОГРАНИЧЕНИЯ ПРИМЕНЯЮТСЯ НЕЗАВИСИМО ОТ ОСНОВАНИЯ НАСТУПЛЕНИЯ ОТВЕТСТВЕННОСТИ; В ТОМ ЧИСЛЕ ВСЛЕДСТВИЕ | ||||
| ДЕЙСТВИЯ ИЛИ БЕЗДЕЙСТВИЯ, НЕБРЕЖНОСТИ, УМЫСЛА, ПРЯМОГО ИЛИ КОСВЕННОГО; НЕОСТОРОЖНОСТИ; ЗАБЛУЖДЕНИЯ; | ||||
| КЛЕВЕТЫ; НАРУШЕНИЯ КОНФИДЕНЦИАЛЬНОСТИ ИЛИ ПРАВА ИНТЕЛЛЕКТУАЛЬНОЙ СОБСТВЕННОСТИ; ИЛИ ЛЮБОЕ ДРУГОЕ | ||||
| ОСНОВАНИЕ НАСТУПЛЕНИЯ ОТВЕТСТВЕННОСТИ. | ||||
|  | ||||
|                         7. ОБЯЗАННОСТЬ ПОЛЬЗОВАТЕЛЯ: | ||||
| Не осуществлять самостоятельно и (или) с привлечением третьих лиц нижеследующие действия | ||||
| (включая, но не ограничиваясь) по: | ||||
| -дизассемблированию и (или) декомпилированию (преобразованию объектного кода в исходный код) | ||||
|  Программного обеспечения; | ||||
| -модификации Программного обеспечения, в том числе вносить изменения в объектный код, исходный | ||||
| код Программного обеспечения, за исключением тех изменений, которые вносятся средствами, | ||||
| включёнными в Программное обеспечение и описанными непосредственно в документации к нему; | ||||
| -созданию условий для использования Программного обеспечения лицами, не имеющими прав на | ||||
| использование данного Программного обеспечения, включая (но не ограничиваясь) вмешательство | ||||
| третьих лиц в функционирование Программного обеспечения, предоставление третьим лицам доступа | ||||
| к исследованию и (или) замене настроек Программного обеспечения, включая его первичную установку; | ||||
| -распространению Программного обеспечения в целом или в части (включая приложенную к нему документацию). | ||||
|  | ||||
|                     8. БИБЛИОТЕКА ПО. ИСПОЛЬЗУЕМЫЕ ПРОГРАММНЫЕ СРЕДСТВА. | ||||
|  | ||||
| 8.1. Настоящим, Правообладатель заверяет, что Библиотека программного обеспечения состоит из | ||||
| лицензионных продуктов, используемых на законных основаниях, а | ||||
| именно https://entaxy.ru/libs/licenses/root-aggregated.deps. | ||||
| 8.2. Любые программные средства, применяемые Пользователем при работе с ПО, должны быть | ||||
| совместимы с библиотекой ПО, указанной в п.8.1. настоящего соглашения. | ||||
| 8.3. Перечень внешних модулей ПО, указанный в п.8.1 настоящего соглашения, может изменяться | ||||
| Правообладателем в одностороннем порядке, в зависимости от выпуска релизов программного обеспечения, | ||||
| содержащих все изменения и дополнения программного обеспечения. | ||||
|  | ||||
|                         9. ВНЕСЕНИЕ ИЗМЕНЕНИЙ В ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ. | ||||
|  | ||||
| 9.1.  Программное обеспечение, интеграционная шина «ЭНТАКСИ» (ENTAXY) является свободно распространяемым | ||||
| программным обеспечением. | ||||
| 9.2. Пользователь имеет право вносить изменения в исходный код программного обеспечения исключительно | ||||
| с согласия Правообладателя в порядке предложения изменений/правок/дополнений через механизм | ||||
| «Pull Requests» в открытом репозитории Правообладателя по адресу: https://git.entaxy.ru/entaxy/entaxy-public. | ||||
| 9.3. Любые изменения программного обеспечения, осуществляемые Пользователем без соблюдения условий | ||||
| пункта 9.2. настоящего документа, являются нарушением авторских и смежных прав Правообладателя, | ||||
| прав интеллектуальной собственности Правообладателя и влекут применение к Пользователю мер | ||||
| ответственности в соответствии с условиями настоящей Лицензии, а также применимого законодательства | ||||
| Российской Федерации. | ||||
|  | ||||
|                                 10. ЗАКЛЮЧИТЕЛЬНЫЕ ПОЛОЖЕНИЯ. | ||||
|  | ||||
| 10.1. В случае нарушения Пользователем любого из условий настоящей Лицензии, Правообладатель имеет | ||||
| право взыскать с Пользователя любые причинённые таким нарушением убытки, реальный ущерб, | ||||
| недополученную прибыль, упущенную выгоду, а также в случае нарушения Пользователем условий | ||||
| пункта 9.2 настоящего соглашения, в том числе, взыскать с Пользователя штраф в размере | ||||
| 2 000 000 (Два миллиона) рублей за каждый установленный случай несанкционированного изменения | ||||
| исходного или объектного кода Программного обеспечения «Энтакси» (Entaxy). | ||||
| 10.2. В рамках исполнения Пользователем обязательств по настоящей Лицензии, применимое | ||||
| законодательство – Российской Федерации. | ||||
| 10.3. Если какое-либо положение настоящей Лицензии будет признано судом недействительным, | ||||
| остальные положения будут продолжать своё действие, а Пользователь будет обязан продолжать | ||||
| исполнять свои обязанности в соответствии с этими положениями. | ||||
							
								
								
									
										28
									
								
								platform-backward-compat/connector-storage/pom.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								platform-backward-compat/connector-storage/pom.xml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,28 @@ | ||||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> | ||||
|     <modelVersion>4.0.0</modelVersion> | ||||
|  | ||||
| 	<parent> | ||||
| 		<groupId>ru.entaxy.platform</groupId> | ||||
| 		<artifactId>platform-backward-compat</artifactId> | ||||
| 		<version>1.11.0</version> | ||||
| 	</parent> | ||||
|  | ||||
| 	<groupId>ru.entaxy.platform.backward-compat</groupId> | ||||
|     <artifactId>connector-storage</artifactId> | ||||
|     <packaging>bundle</packaging> | ||||
|     <name>ENTAXY :: PLATFORM :: BACKWARD COMPATIBILITY :: CONNECTOR :: STORAGE</name> | ||||
|     <description>ENTAXY :: PLATFORM :: BACKWARD COMPATIBILITY :: CONNECTOR :: STORAGE</description> | ||||
|  | ||||
|     <properties> | ||||
|         <bundle.osgi.export.pkg>ru.entaxy.platform.base.objects.connector.storage</bundle.osgi.export.pkg> | ||||
|     </properties> | ||||
|  | ||||
|     <dependencies> | ||||
|         <dependency> | ||||
|             <groupId>ru.entaxy.esb.system.registry.connector</groupId> | ||||
|             <artifactId>connector-impl</artifactId> | ||||
|             <version>${project.version}</version> | ||||
|         </dependency> | ||||
|     </dependencies> | ||||
| </project> | ||||
| @@ -0,0 +1,113 @@ | ||||
| /*- | ||||
|  * ~~~~~~licensing~~~~~~ | ||||
|  * connector-storage | ||||
|  * ========== | ||||
|  * Copyright (C) 2020 - 2025 EmDev LLC | ||||
|  * ========== | ||||
|  * You may not use this file except in accordance with the License Terms of the Copyright | ||||
|  * Holder located at: https://entaxy.ru/eula . All copyrights, all intellectual property | ||||
|  * rights to the Software and any copies are the property of the Copyright Holder. Unless | ||||
|  * it is explicitly allowed the Copyright Holder, the User is prohibited from using the | ||||
|  * Software for commercial purposes to provide services to third parties. | ||||
|  *  | ||||
|  * The Copyright Holder hereby declares that the Software is provided on an "AS IS". | ||||
|  * Under no circumstances does the Copyright Holder guarantee or promise that the | ||||
|  * Software provided by him will be suitable or not suitable for the specific purposes | ||||
|  * of the User, that the Software will meet all commercial and personal subjective | ||||
|  * expectations of the User, that the Software will work properly, without technical | ||||
|  * errors, quickly and uninterruptedly. | ||||
|  *  | ||||
|  * Under no circumstances shall the Copyright Holder or its Affiliates is not liable | ||||
|  * to the User for any direct or indirect losses of the User, his expenses or actual | ||||
|  * damage, including, downtime; loss of bussines; lost profit; lost earnings; loss | ||||
|  * or damage to data, property, etc. | ||||
|  * ~~~~~~/licensing~~~~~~ | ||||
|  */ | ||||
| package ru.entaxy.platform.base.objects.connector.storage; | ||||
|  | ||||
| import java.util.Date; | ||||
| import java.util.HashMap; | ||||
| import java.util.Map; | ||||
|  | ||||
| import org.osgi.service.component.annotations.CollectionType; | ||||
| import org.osgi.service.component.annotations.Component; | ||||
| import org.osgi.service.component.annotations.Reference; | ||||
| import org.osgi.service.component.annotations.ReferenceCardinality; | ||||
| import org.slf4j.Logger; | ||||
| import org.slf4j.LoggerFactory; | ||||
|  | ||||
| import com.google.gson.Gson; | ||||
| import com.google.gson.JsonObject; | ||||
|  | ||||
| import ru.entaxy.esb.system.connector.impl.ConnectorService; | ||||
| import ru.entaxy.esb.system.jpa.SystemService; | ||||
| import ru.entaxy.esb.system.management.bundle.jpa.entity.BundleEntity; | ||||
| import ru.entaxy.platform.base.objects.EntaxyObject; | ||||
| import ru.entaxy.platform.base.objects.EntaxyObjectStorage; | ||||
|  | ||||
| @Component(service = EntaxyObjectStorage.class, immediate = true) | ||||
| public class ConnectorObjectStorage implements EntaxyObjectStorage { | ||||
|  | ||||
|     private static final Logger log = LoggerFactory.getLogger(ConnectorObjectStorage.class); | ||||
|  | ||||
|     @Reference(cardinality = ReferenceCardinality.MANDATORY, collectionType = CollectionType.SERVICE) | ||||
|     protected ConnectorService connectorService; | ||||
|  | ||||
|     @Reference(cardinality = ReferenceCardinality.MANDATORY, collectionType = CollectionType.SERVICE) | ||||
|     protected SystemService systemService; | ||||
|  | ||||
|     @SuppressWarnings("serial") | ||||
|     protected Map<String, String> fieldMap = new HashMap<>() { | ||||
|         { | ||||
|             put("name", "objectId"); | ||||
|             put("version", "artifact.version"); | ||||
|         } | ||||
|     }; | ||||
|  | ||||
|     protected Map<String, String> fieldBundleMap = new HashMap<>() { | ||||
|         { | ||||
|             put("name", "bundleId"); | ||||
|             put("type", "artifact.type"); | ||||
|             put("status", "artifact.status"); | ||||
|             put("version", "artifact.version"); | ||||
|             put("url", "bundleLocation"); | ||||
|         } | ||||
|     }; | ||||
|  | ||||
|     @Override | ||||
|     public String[] getObjectTypes() { | ||||
|         return new String[] {EntaxyObject.OBJECT_TYPES.CONNECTOR}; | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Object store(Map<String, Object> data) { | ||||
|  | ||||
|         JsonObject jsonObject = new JsonObject(); | ||||
|         Gson gson = new Gson(); | ||||
|  | ||||
|         for (Map.Entry<String, String> entry : fieldMap.entrySet()) { | ||||
|             if (data.containsKey(entry.getValue())) | ||||
|                 jsonObject.add(entry.getKey(), gson.toJsonTree(data.get(entry.getValue()))); | ||||
|         } | ||||
|         JsonObject bundleJsonObject = new JsonObject(); | ||||
|         for (Map.Entry<String, String> entry : fieldBundleMap.entrySet()) { | ||||
|             if (data.containsKey(entry.getValue())) | ||||
|                 bundleJsonObject.add(entry.getKey(), gson.toJsonTree(data.get(entry.getValue()))); | ||||
|         } | ||||
|  | ||||
|         log.debug("JSON :: " + jsonObject.toString()); | ||||
|         ru.entaxy.esb.system.connector.entity.Connector connector = | ||||
|                 gson.fromJson(jsonObject, ru.entaxy.esb.system.connector.entity.Connector.class); | ||||
|         connector.setTemplateName(data.get("factoryId").toString()); | ||||
|         connector.setCreateDate(new Date()); | ||||
|         connector.setCreatedBy("admin"); | ||||
|  | ||||
|         log.debug("JSON Bundle :: " + bundleJsonObject.toString()); | ||||
|         BundleEntity bundleEntity = gson.fromJson(bundleJsonObject, BundleEntity.class); | ||||
|         connector.setBundleEntity(bundleEntity); | ||||
|         ru.entaxy.esb.system.jpa.entity.System system = systemService.getByUuid(data.get("profile").toString()); | ||||
|         connectorService.addNewConnector(system, connector); | ||||
|  | ||||
|         return null; | ||||
|     } | ||||
| } | ||||
							
								
								
									
										47
									
								
								platform-backward-compat/pom.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								platform-backward-compat/pom.xml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,47 @@ | ||||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> | ||||
|   <modelVersion>4.0.0</modelVersion> | ||||
|   <parent> | ||||
|     <groupId>ru.entaxy.esb</groupId> | ||||
|     <artifactId>root</artifactId> | ||||
|     <version>1.11.0</version> | ||||
|   </parent> | ||||
|   <groupId>ru.entaxy.platform</groupId> | ||||
|   <artifactId>platform-backward-compat</artifactId> | ||||
|   <packaging>pom</packaging> | ||||
|   <name>ENTAXY :: PLATFORM :: BACKWARD COMPATIBILITY</name> | ||||
|   <description>ENTAXY :: PLATFORM :: BACKWARD COMPATIBILITY</description> | ||||
|    | ||||
|   <dependencies> | ||||
|         <dependency> | ||||
|             <groupId>com.google.code.gson</groupId> | ||||
|             <artifactId>gson</artifactId> | ||||
|         </dependency> | ||||
| 	  	<dependency> | ||||
| 	  		<groupId>org.osgi</groupId> | ||||
| 	  		<artifactId>org.osgi.service.component.annotations</artifactId> | ||||
| 	  	</dependency>         | ||||
|         <dependency> | ||||
|         	<groupId>org.apache.felix</groupId> | ||||
|         	<artifactId>org.apache.felix.scr</artifactId> | ||||
|         </dependency> | ||||
| 	  	<dependency> | ||||
| 	  		<groupId>ru.entaxy.esb.platform.runtime.base</groupId> | ||||
| 	  		<artifactId>base-support</artifactId> | ||||
| 	  		<version>${project.version}</version> | ||||
| 	  	</dependency> | ||||
| 	  	<dependency> | ||||
| 	  		<groupId>ru.entaxy.esb.platform.runtime.base.objects-base</groupId> | ||||
| 	  		<artifactId>objects-core</artifactId> | ||||
| 	  		<version>${project.version}</version> | ||||
| 	  	</dependency> | ||||
|   </dependencies> | ||||
|    | ||||
|   <modules> | ||||
| 	  <module>blueprint-generator-service</module> | ||||
| 	  <module>profile-management-service-adapters</module> | ||||
| 	  <module>connector-storage</module> | ||||
| 	  <module>profile-storage</module> | ||||
|   </modules> | ||||
|    | ||||
| </project> | ||||
| @@ -0,0 +1,175 @@ | ||||
|                                  ЛИЦЕНЗИЯ ОГРАНИЧЕННОГО ПРИМЕНЕНИЯ | ||||
|  | ||||
| Настоящий документ устанавливает для Пользователя условия применения Базовой (некоммерческой) | ||||
| версии лицензии для пробного использования программного обеспечения ENTAXY, принадлежащего | ||||
| Правообладателю – Обществу с ограниченной ответственностью "ЕМДЕВ" (ОГРН 1057810026658, ИНН | ||||
| 7813313860, юридический адрес: 197022, Россия, г. Санкт-Петербург, ул. Профессора Попова, | ||||
| д. 23, литера В, помещение 3Н), расположенной в сети Интернет по адресу | ||||
| https://www.emdev.ru/about (далее - Компания). | ||||
|  | ||||
| Используя или получая доступ к Программному обеспечению, или нажав «Я согласен с Условиями» | ||||
| (или аналогичную кнопку или флажок) после загрузки или установки Программного обеспечения, | ||||
| Пользователь выражает свое согласие на обязательность условий и ограничений, изложенных в | ||||
| настоящем документе, в противном случае, он должен не использовать или не получать доступ | ||||
| к Программному обеспечению. | ||||
|  | ||||
|                                     1. ТЕРМИНЫ И ОПРЕДЕЛЕНИЯ | ||||
|  | ||||
| a) ПО – Программное обеспечение, интеграционная шина «ЭНТАКСИ» (ENTAXY) в любой ее версии | ||||
| или редакции, исключительные права на которую принадлежат Правообладателю. | ||||
| b) Правообладатель (Компания) – ООО «ЕМДЕВ», ОГРН 1057810026658, ИНН 7813313860, исключительные | ||||
| права которого подтверждаются Свидетельством о государственной регистрации в Реестре программ | ||||
| для ЭВМ № 2021610848 от 19.01.2021 года. | ||||
| c) Пользователь – юридическое или физическое лицо, получившее через скачивание с сайта | ||||
| https://entaxy.ru или иным образом, дистрибутив ПО, пользующееся ПО. | ||||
| d) ИС – интеллектуальная собственность – закреплённое законом исключительное право, а также | ||||
| личные неимущественные права авторов произведений на результат интеллектуальной деятельности. | ||||
| e) Подписка – это коммерческое предложение Правообладателя, состоящее из Лицензии на использование | ||||
| ПО и доступа к технической поддержке программного обеспечения на срок Подписки. Подписка | ||||
| включает предоставление Пользователю неисключительного права использования ПО, в том числе | ||||
| получение обновлений функционала ПО и безопасности ПО, исправление ошибок ПО и получение | ||||
| патчей с обновлениями и исправлениями программного обеспечения. Подписка приобретается | ||||
| Пользователем на период времени, указанный в Сертификате. Количество подписок устанавливается | ||||
| для каждого Пользователя индивидуально в Сертификате. | ||||
| f) Сертификат – документ, выдаваемый Дистрибъютором или Авторизованным партнёром (Партнёром), | ||||
| подтверждающий факт приобретения физическим или юридическим лицом Подписки на программное | ||||
| обеспечение в ограниченном объёме и на определённый период времени. | ||||
| g) Лицензия (простая (неисключительная) – совокупность ограниченных прав использования ПО, | ||||
| предоставленных Пользователю согласно условиям Подписки. | ||||
| h) Библиотека – совокупность подпрограмм и объектов, используемых для разработки программного | ||||
| обеспечения. | ||||
| i) Исходный код – текст компьютерной программы на каком-либо языке программирования, состоящий | ||||
| из одного или нескольких файлов, который может быть прочтён человеком. | ||||
| j) Объектный код – файл (часть машинного кода) с промежуточным представлением отдельного модуля | ||||
| программы, полученный в результате обработки исходного кода, еще не связанный в полную программу. | ||||
| Это машинный код для одной конкретной библиотеки или модуля, который будет составлять готовый | ||||
| продукт. | ||||
| k) Некоммерческое использование – индивидуальное личное использование Пользователем программного | ||||
| обеспечения с целью обучения работе с Программным обеспечением, для оценки или демонстрации | ||||
| возможностей Программного обеспечения, при котором, Пользователем не извлекается коммерческая | ||||
| выгода и/или не идёт в доход денежное вознаграждение при использовании Программного обеспечения. | ||||
|  | ||||
|                     2. ДОПУСТИМЫЕ СПОСОБЫ ИСПОЛЬЗОВАНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ | ||||
|  | ||||
| 2.1. Правообладатель предоставляет Пользователю ограниченное право использования Программного | ||||
| обеспечения на условиях простой (неисключительной) лицензии в объёме, ограниченном правом | ||||
| воспроизведения полной рабочей версии программного обеспечения, новых версий программного обеспечения | ||||
| в памяти оборудования и его запуска на оборудовании в соответствии со ст. 1280 ГК РФ. | ||||
| 2.2. Право на использование Программного обеспечения, предоставляемое Пользователю, носит | ||||
| неисключительный характер. | ||||
| 2.3. Пользователю предоставляется всемирная, неисключительная, не подлежащая сублицензированию, | ||||
| лицензия на ограниченное использование Программного обеспечения. | ||||
| 2.4. Пользователь, имеющий Базовую (некоммерческую) версию лицензии для пробного использования | ||||
| имеет право приобрести Подписку на программное обеспечение. В этом случае Пользователь обязан | ||||
| обратиться в службу поддержки Правообладателя по адресу:  https://entaxy.ru/ для изменения | ||||
| вида лицензии с Базовой бесплатной версии на Подписки. | ||||
| 2.5. Срок использования скачанной Пользователем базовой (некоммерческой) версии лицензии для | ||||
| пробного использования программного обеспечения – не ограничен. | ||||
| 2.6. Использование Пользователем настоящего программного обеспечения в целях разработки, | ||||
| модификации, обновления другого ПО, принадлежащего третьим лицам, а не Правообладателю, | ||||
| без разрешения Правообладателя не допускается. | ||||
|  | ||||
|                                 3. АВТОРСКОЕ ПРАВО. | ||||
|  | ||||
| 3.1. Все авторские права, все права интеллектуальной собственности на Программное обеспечение | ||||
| и любые его копии принадлежат Правообладателю. | ||||
| 3.2. Все авторские права, все права интеллектуальной собственности в отношении любого контента, | ||||
| к которому можно получить доступ с помощью Программного обеспечения, является собственностью | ||||
| соответствующего владельца контента и защищается применимым законодательством об авторском | ||||
| праве или другими законами и договорами об интеллектуальной собственности. | ||||
| 3.3. Условия использования Программного обеспечения. | ||||
| Лицензия, предоставленная Пользователю, действительна только в том случае, если Пользователь | ||||
| придерживается следующих условий: | ||||
| 3.3.1. Принятие уведомлений об авторских правах. Пользователю запрещается удалять или изменять | ||||
| какие-либо уведомления об авторских правах или лицензиях, которые появляются при использовании | ||||
| Программного обеспечения или на нем. | ||||
| 3.3.2. Модификация. Пользователю запрещается модифицировать, изменять, декомпилировать, | ||||
| расшифровывать, дизассемблировать, переводить или реверсировать, перепроектировать | ||||
| Программное обеспечение. | ||||
| 3.3.3. Распространение. Пользователю запрещается сублицензировать, передавать право использования | ||||
| ПО или иным образом распространять или предоставлять Программное обеспечение любой третьей стороне. | ||||
| 3.3.4. SaaS. За исключением случаев, когда это разрешено Правообладателем, Пользователю запрещено | ||||
| использовать Программное обеспечение в коммерческих целях для оказания услуг третьим лицам. | ||||
|  | ||||
|                     4. ОТВЕТСТВЕННОСТЬ ПРАВООБЛАДАТЕЛЯ ПРИ НАРУШЕНИИ ПОЛЬЗОВАТЕЛЕМ ПРАВ «ИС» | ||||
|  | ||||
| 4.1. Правообладатель не несет никаких обязательств в отношении каких-либо претензий к Пользователю | ||||
| на предмет нарушения последним прав Интеллектуальной собственности, возникших в связи с | ||||
| использованием Пользователем: | ||||
| 4.1.1. Любых компонентов программного обеспечения с открытым исходным кодом, включенных в | ||||
| Программное обеспечение; | ||||
| 4.1.2. Любого нарушения правил использования Программного обеспечения, установленного условиями | ||||
| настоящего соглашения; | ||||
| 4.1.3. Любого использования Программного обеспечения в сочетании с другими ПО, оборудованием, | ||||
| или данными, не предоставленными Пользователю Правообладателем; | ||||
| 4.1.4. Любого изменения Программного обеспечения любым третьим лицом, а не Правообладателем. | ||||
|  | ||||
|  | ||||
| 5. НАСТОЯЩИМ ПРАВООБЛАДАТЕЛЬ ЗАЯВЛЯЕТ, ЧТО ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРЕДОСТАВЛЯЕТСЯ ПОЛЬЗОВАТЕЛЮ | ||||
| ПО ПРИНЦИПУ «AS IS» - «КАК ЕСТЬ». НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ ПРАВООБЛАДАТЕЛЬ НЕ ГАРАНТИРУЕТ | ||||
| И НЕ ОБЕЩАЕТ, ЧТО ПРЕДОСТАВЛЕННОЕ ИМ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ БУДЕТ ПОДХОДИТЬ ИЛИ НЕ ПОДХОДИТЬ | ||||
| ДЛЯ КОНКРЕТНЫХ ЦЕЛЕЙ ПОЛЬЗОВАТЕЛЯ, ЧТО ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ БУДЕТ ОТВЕЧАТЬ ВСЕМ КОММЕРЧЕСКИМ | ||||
| И ЛИЧНЫМ СУБЪЕКТИВНЫМ ОЖИДАНИЯМ ПОЛЬЗОВАТЕЛЯ, ЧТО ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ БУДЕТ РАБОТАТЬ | ||||
| ИСПРАВНО, БЕЗ ТЕХНИЧЕСКИХ ОШИБОК, БЫСТРО И БЕСПЕРЕБОЙНО. | ||||
|  | ||||
|                         6. ОГРАНИЧЕНИЕ ОТВЕТСТВЕННОСТИ. | ||||
| НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ ПРАВООБЛАДАТЕЛЬ ИЛИ ЕГО АФФИЛЛИРОВАННЫЕ ЛИЦА НЕ НЕСУТ ПЕРЕД ПОЛЬЗОВАТЕЛЕМ | ||||
| ОТВЕТСТВЕННОСТИ ЗА ЛЮБЫЕ ПРЯМЫЕ ИЛИ КОСВЕННЫЕ УБЫТКИ ПОЛЬЗОВАТЕЛЯ, ЕГО РАСХОДЫ ИЛИ РЕАЛЬНЫЙ УЩЕРБ, | ||||
| ВКЛЮЧАЯ, ПОМИМО ПРОЧЕГО, ПРОСТОИ; УТРАТУ БИЗНЕСА; УПУЩЕННУЮ ВЫГОДУ; НЕДОПОЛУЧЕННУЮ ПРИБЫЛЬ; | ||||
| ПОТЕРЮ ИЛИ ПОВРЕЖДЕНИЕ ДАННЫХ, ИМУЩЕСТВА И ИНОЕ. | ||||
| ОГРАНИЧЕНИЯ ПРИМЕНЯЮТСЯ НЕЗАВИСИМО ОТ ОСНОВАНИЯ НАСТУПЛЕНИЯ ОТВЕТСТВЕННОСТИ; В ТОМ ЧИСЛЕ ВСЛЕДСТВИЕ | ||||
| ДЕЙСТВИЯ ИЛИ БЕЗДЕЙСТВИЯ, НЕБРЕЖНОСТИ, УМЫСЛА, ПРЯМОГО ИЛИ КОСВЕННОГО; НЕОСТОРОЖНОСТИ; ЗАБЛУЖДЕНИЯ; | ||||
| КЛЕВЕТЫ; НАРУШЕНИЯ КОНФИДЕНЦИАЛЬНОСТИ ИЛИ ПРАВА ИНТЕЛЛЕКТУАЛЬНОЙ СОБСТВЕННОСТИ; ИЛИ ЛЮБОЕ ДРУГОЕ | ||||
| ОСНОВАНИЕ НАСТУПЛЕНИЯ ОТВЕТСТВЕННОСТИ. | ||||
|  | ||||
|                         7. ОБЯЗАННОСТЬ ПОЛЬЗОВАТЕЛЯ: | ||||
| Не осуществлять самостоятельно и (или) с привлечением третьих лиц нижеследующие действия | ||||
| (включая, но не ограничиваясь) по: | ||||
| -дизассемблированию и (или) декомпилированию (преобразованию объектного кода в исходный код) | ||||
|  Программного обеспечения; | ||||
| -модификации Программного обеспечения, в том числе вносить изменения в объектный код, исходный | ||||
| код Программного обеспечения, за исключением тех изменений, которые вносятся средствами, | ||||
| включёнными в Программное обеспечение и описанными непосредственно в документации к нему; | ||||
| -созданию условий для использования Программного обеспечения лицами, не имеющими прав на | ||||
| использование данного Программного обеспечения, включая (но не ограничиваясь) вмешательство | ||||
| третьих лиц в функционирование Программного обеспечения, предоставление третьим лицам доступа | ||||
| к исследованию и (или) замене настроек Программного обеспечения, включая его первичную установку; | ||||
| -распространению Программного обеспечения в целом или в части (включая приложенную к нему документацию). | ||||
|  | ||||
|                     8. БИБЛИОТЕКА ПО. ИСПОЛЬЗУЕМЫЕ ПРОГРАММНЫЕ СРЕДСТВА. | ||||
|  | ||||
| 8.1. Настоящим, Правообладатель заверяет, что Библиотека программного обеспечения состоит из | ||||
| лицензионных продуктов, используемых на законных основаниях, а | ||||
| именно https://entaxy.ru/libs/licenses/root-aggregated.deps. | ||||
| 8.2. Любые программные средства, применяемые Пользователем при работе с ПО, должны быть | ||||
| совместимы с библиотекой ПО, указанной в п.8.1. настоящего соглашения. | ||||
| 8.3. Перечень внешних модулей ПО, указанный в п.8.1 настоящего соглашения, может изменяться | ||||
| Правообладателем в одностороннем порядке, в зависимости от выпуска релизов программного обеспечения, | ||||
| содержащих все изменения и дополнения программного обеспечения. | ||||
|  | ||||
|                         9. ВНЕСЕНИЕ ИЗМЕНЕНИЙ В ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ. | ||||
|  | ||||
| 9.1.  Программное обеспечение, интеграционная шина «ЭНТАКСИ» (ENTAXY) является свободно распространяемым | ||||
| программным обеспечением. | ||||
| 9.2. Пользователь имеет право вносить изменения в исходный код программного обеспечения исключительно | ||||
| с согласия Правообладателя в порядке предложения изменений/правок/дополнений через механизм | ||||
| «Pull Requests» в открытом репозитории Правообладателя по адресу: https://git.entaxy.ru/entaxy/entaxy-public. | ||||
| 9.3. Любые изменения программного обеспечения, осуществляемые Пользователем без соблюдения условий | ||||
| пункта 9.2. настоящего документа, являются нарушением авторских и смежных прав Правообладателя, | ||||
| прав интеллектуальной собственности Правообладателя и влекут применение к Пользователю мер | ||||
| ответственности в соответствии с условиями настоящей Лицензии, а также применимого законодательства | ||||
| Российской Федерации. | ||||
|  | ||||
|                                 10. ЗАКЛЮЧИТЕЛЬНЫЕ ПОЛОЖЕНИЯ. | ||||
|  | ||||
| 10.1. В случае нарушения Пользователем любого из условий настоящей Лицензии, Правообладатель имеет | ||||
| право взыскать с Пользователя любые причинённые таким нарушением убытки, реальный ущерб, | ||||
| недополученную прибыль, упущенную выгоду, а также в случае нарушения Пользователем условий | ||||
| пункта 9.2 настоящего соглашения, в том числе, взыскать с Пользователя штраф в размере | ||||
| 2 000 000 (Два миллиона) рублей за каждый установленный случай несанкционированного изменения | ||||
| исходного или объектного кода Программного обеспечения «Энтакси» (Entaxy). | ||||
| 10.2. В рамках исполнения Пользователем обязательств по настоящей Лицензии, применимое | ||||
| законодательство – Российской Федерации. | ||||
| 10.3. Если какое-либо положение настоящей Лицензии будет признано судом недействительным, | ||||
| остальные положения будут продолжать своё действие, а Пользователь будет обязан продолжать | ||||
| исполнять свои обязанности в соответствии с этими положениями. | ||||
| @@ -0,0 +1,131 @@ | ||||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> | ||||
|     <modelVersion>4.0.0</modelVersion> | ||||
|  | ||||
|   <parent> | ||||
|     <groupId>ru.entaxy.platform</groupId> | ||||
|     <artifactId>platform-backward-compat</artifactId> | ||||
|     <version>1.11.0</version> | ||||
|   </parent> | ||||
|  | ||||
| 	<groupId>ru.entaxy.platform.backward-compat</groupId> | ||||
|     <artifactId>profile-management-service-adapters</artifactId> | ||||
|     <packaging>bundle</packaging> | ||||
|  | ||||
|     <name>ENTAXY :: PLATFORM :: BACKWARD COMPATIBILITY :: PROFILE MANAGEMENT SERVICE ADAPTERS</name> | ||||
|     <description>ENTAXY :: PLATFORM :: BACKWARD COMPATIBILITY :: PROFILE MANAGEMENT SERVICE ADAPTERS</description> | ||||
|  | ||||
|     <properties> | ||||
|         <bundle.osgi.export.pkg> | ||||
|         	<!-- ru.entaxy.esb.platform.core.management.profile.to_remove, | ||||
|         	ru.entaxy.esb.platform.core.management.profile.to_remove.api --> | ||||
|         </bundle.osgi.export.pkg> | ||||
|         <bundle.osgi.private.pkg> | ||||
|         	ru.entaxy.esb.platform.core.management.profile.adapters | ||||
|         	<!-- ru.entaxy.esb.platform.base.management.core.utils, | ||||
|         	ru.entaxy.platform.base.support.osgi.tracker, | ||||
|         	ru.entaxy.platform.base.support.osgi.tracker.filter, | ||||
|         	ru.entaxy.esb.platform.core.management.profile.to_remove.impl* --> | ||||
|         </bundle.osgi.private.pkg> | ||||
|     </properties> | ||||
|  | ||||
|     <dependencies> | ||||
| 	  	<dependency> | ||||
| 	  		<groupId>org.osgi</groupId> | ||||
| 	  		<artifactId>org.osgi.service.component.annotations</artifactId> | ||||
| 	  		<version>1.4.0</version> | ||||
| 	  		<scope>compile</scope> | ||||
| 	  	</dependency>         | ||||
|         <dependency> | ||||
|         	<groupId>org.apache.felix</groupId> | ||||
|         	<artifactId>org.apache.felix.scr</artifactId> | ||||
|         	<version>2.1.20</version> | ||||
|         </dependency> | ||||
| 	  	<dependency> | ||||
| 	  		<groupId> | ||||
| 	  			ru.entaxy.esb.platform.runtime.base | ||||
| 	  		</groupId> | ||||
| 	  		<artifactId>base-support</artifactId> | ||||
| 	  		<version>${project.version}</version> | ||||
| 	  	</dependency> | ||||
| 	  	<!-- dependency> | ||||
| 	  		<groupId>ru.entaxy.esb.platform.runtime.base</groupId> | ||||
| 	  		<artifactId>management-core</artifactId> | ||||
| 	  		<version>${project.version}</version> | ||||
| 	  	</dependency--> | ||||
| 	  	<dependency> | ||||
| 		    <groupId>ru.entaxy.esb.platform.runtime.core.management</groupId> | ||||
| 		    <artifactId>profile-management</artifactId> | ||||
| 	  		<version>${project.version}</version> | ||||
| 	  	</dependency> | ||||
| 	  	<dependency> | ||||
| 		    <groupId>ru.entaxy.esb.system.management.profile.manager</groupId> | ||||
| 		    <artifactId>profile-manager</artifactId> | ||||
| 	  		<version>${project.version}</version> | ||||
| 	  	</dependency> | ||||
|         <dependency> | ||||
|             <groupId>ru.entaxy.esb.system.registry.systems</groupId> | ||||
|             <artifactId>system-api</artifactId> | ||||
|             <version>${project.version}</version> | ||||
|         </dependency> | ||||
|         <dependency> | ||||
| 		    <groupId>ru.entaxy.esb.system.management</groupId> | ||||
| 		    <artifactId>system-management-api</artifactId> | ||||
|             <version>${project.version}</version> | ||||
|         </dependency> | ||||
|         <dependency> | ||||
|         	<groupId> | ||||
|         		ru.entaxy.esb.system.management.connector.manager | ||||
|         	</groupId> | ||||
|         	<artifactId>connector-manager</artifactId> | ||||
|             <version>${project.version}</version> | ||||
|         </dependency> | ||||
|         <dependency> | ||||
|             <groupId>ru.entaxy.esb.system.management.bundle.jpa</groupId> | ||||
|             <artifactId>bundle-service</artifactId> | ||||
|             <version>${project.version}</version> | ||||
|         </dependency> | ||||
|         <dependency> | ||||
|         	<groupId>ru.entaxy.esb.system.registry.connector</groupId> | ||||
|         	<artifactId>connector-api</artifactId> | ||||
|         	<version>${project.version}</version> | ||||
|         </dependency> | ||||
|         <dependency> | ||||
|         	<groupId>ru.entaxy.esb.system.registry.connector</groupId> | ||||
|         	<artifactId>connector-impl</artifactId> | ||||
|         	<version>${project.version}</version> | ||||
|         </dependency> | ||||
|         <dependency> | ||||
|         	<groupId>ru.entaxy.esb.system.core.permission</groupId> | ||||
|         	<artifactId>permission-api</artifactId> | ||||
|         	<version>${project.version}</version> | ||||
|         </dependency> | ||||
|         <dependency> | ||||
|             <groupId>ru.entaxy.platform.security.jaas</groupId> | ||||
|             <artifactId>entaxy-legacy-auth-api</artifactId> | ||||
|             <version>${project.version}</version> | ||||
|         </dependency> | ||||
|         <dependency> | ||||
|         	<groupId> | ||||
|         		ru.entaxy.esb.system.management.permission.manager | ||||
|         	</groupId> | ||||
|         	<artifactId>permission-manager</artifactId> | ||||
|         	<version>${project.version}</version> | ||||
|         </dependency> | ||||
|     </dependencies> | ||||
|     <build> | ||||
|         <plugins> | ||||
|             <plugin> | ||||
|                 <groupId>org.apache.felix</groupId> | ||||
|                 <artifactId>maven-bundle-plugin</artifactId> | ||||
|                 <extensions>true</extensions> | ||||
|                 <configuration> | ||||
|                     <instructions> | ||||
|                         <_dsannotations>*</_dsannotations> | ||||
|                     </instructions> | ||||
|                 </configuration> | ||||
|             </plugin> | ||||
|         </plugins> | ||||
|     </build> | ||||
|  | ||||
| </project> | ||||
| @@ -0,0 +1,52 @@ | ||||
| /*- | ||||
|  * ~~~~~~licensing~~~~~~ | ||||
|  * profile-management-service-adapters | ||||
|  * ========== | ||||
|  * Copyright (C) 2020 - 2025 EmDev LLC | ||||
|  * ========== | ||||
|  * You may not use this file except in accordance with the License Terms of the Copyright | ||||
|  * Holder located at: https://entaxy.ru/eula . All copyrights, all intellectual property | ||||
|  * rights to the Software and any copies are the property of the Copyright Holder. Unless | ||||
|  * it is explicitly allowed the Copyright Holder, the User is prohibited from using the | ||||
|  * Software for commercial purposes to provide services to third parties. | ||||
|  *  | ||||
|  * The Copyright Holder hereby declares that the Software is provided on an "AS IS". | ||||
|  * Under no circumstances does the Copyright Holder guarantee or promise that the | ||||
|  * Software provided by him will be suitable or not suitable for the specific purposes | ||||
|  * of the User, that the Software will meet all commercial and personal subjective | ||||
|  * expectations of the User, that the Software will work properly, without technical | ||||
|  * errors, quickly and uninterruptedly. | ||||
|  *  | ||||
|  * Under no circumstances shall the Copyright Holder or its Affiliates is not liable | ||||
|  * to the User for any direct or indirect losses of the User, his expenses or actual | ||||
|  * damage, including, downtime; loss of bussines; lost profit; lost earnings; loss | ||||
|  * or damage to data, property, etc. | ||||
|  * ~~~~~~/licensing~~~~~~ | ||||
|  */ | ||||
| package ru.entaxy.esb.platform.core.management.profile.adapters; | ||||
|  | ||||
| import org.osgi.service.component.annotations.Component; | ||||
| import org.osgi.service.component.annotations.Reference; | ||||
| import org.osgi.service.component.annotations.ReferenceCardinality; | ||||
|  | ||||
| import ru.entaxy.esb.system.auth.basic.jpa.api.BasicAuthService; | ||||
| import ru.entaxy.platform.core.management.profile.support.legacy.AccountManager; | ||||
|  | ||||
| @Component(service = AccountManager.class, immediate = true) | ||||
| public class AccountManagerAdapter implements AccountManager { | ||||
|  | ||||
|     @Reference(cardinality = ReferenceCardinality.MANDATORY) | ||||
|     BasicAuthService basicAuthService; | ||||
|  | ||||
|     @Override | ||||
|     public String getAccountForSystem(String systemUuid) throws Exception { | ||||
|         return basicAuthService.getBySystem(systemUuid).get().getLogin(); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public void createAccountForSystem(String login, String password, String systemUUID, String createdBy, | ||||
|             String editedBy) throws Exception { | ||||
|         basicAuthService.saveCommon(login, password, systemUUID, createdBy, editedBy); | ||||
|     } | ||||
|  | ||||
| } | ||||
| @@ -0,0 +1,135 @@ | ||||
| /*- | ||||
|  * ~~~~~~licensing~~~~~~ | ||||
|  * profile-management-service-adapters | ||||
|  * ========== | ||||
|  * Copyright (C) 2020 - 2025 EmDev LLC | ||||
|  * ========== | ||||
|  * You may not use this file except in accordance with the License Terms of the Copyright | ||||
|  * Holder located at: https://entaxy.ru/eula . All copyrights, all intellectual property | ||||
|  * rights to the Software and any copies are the property of the Copyright Holder. Unless | ||||
|  * it is explicitly allowed the Copyright Holder, the User is prohibited from using the | ||||
|  * Software for commercial purposes to provide services to third parties. | ||||
|  *  | ||||
|  * The Copyright Holder hereby declares that the Software is provided on an "AS IS". | ||||
|  * Under no circumstances does the Copyright Holder guarantee or promise that the | ||||
|  * Software provided by him will be suitable or not suitable for the specific purposes | ||||
|  * of the User, that the Software will meet all commercial and personal subjective | ||||
|  * expectations of the User, that the Software will work properly, without technical | ||||
|  * errors, quickly and uninterruptedly. | ||||
|  *  | ||||
|  * Under no circumstances shall the Copyright Holder or its Affiliates is not liable | ||||
|  * to the User for any direct or indirect losses of the User, his expenses or actual | ||||
|  * damage, including, downtime; loss of bussines; lost profit; lost earnings; loss | ||||
|  * or damage to data, property, etc. | ||||
|  * ~~~~~~/licensing~~~~~~ | ||||
|  */ | ||||
| package ru.entaxy.esb.platform.core.management.profile.adapters; | ||||
|  | ||||
| import java.util.Map; | ||||
|  | ||||
| import org.osgi.service.component.annotations.CollectionType; | ||||
| import org.osgi.service.component.annotations.Component; | ||||
| import org.osgi.service.component.annotations.Reference; | ||||
| import org.osgi.service.component.annotations.ReferenceCardinality; | ||||
|  | ||||
| import ru.entaxy.esb.system.connector.entity.Connector; | ||||
| import ru.entaxy.esb.system.connector.impl.ConnectorService; | ||||
| import ru.entaxy.esb.system.jpa.SystemService; | ||||
| import ru.entaxy.esb.system.jpa.entity.System; | ||||
| import ru.entaxy.esb.system.management.bundle.jpa.dto.BundleDto; | ||||
| import ru.entaxy.esb.system.management.bundle.jpa.dto.BundleStatus; | ||||
| import ru.entaxy.esb.system.management.connector.manager.ConnectorManager; | ||||
| import ru.entaxy.esb.system.management.connector.manager.dto.ConnectorDto; | ||||
|  | ||||
| @Component(service = ru.entaxy.platform.core.management.profile.support.legacy.ConnectorManager.class, immediate = true) | ||||
| public class ConnectorManagerAdapter | ||||
|         implements ru.entaxy.platform.core.management.profile.support.legacy.ConnectorManager { | ||||
|  | ||||
|     @Reference(service = ConnectorManager.class, cardinality = ReferenceCardinality.MANDATORY, | ||||
|             collectionType = CollectionType.SERVICE) | ||||
|     ConnectorManager connectorManager; | ||||
|  | ||||
|     @Reference(service = SystemService.class, cardinality = ReferenceCardinality.MANDATORY, | ||||
|             collectionType = CollectionType.SERVICE) | ||||
|     SystemService systemService; | ||||
|  | ||||
|     @Reference(service = ConnectorService.class, cardinality = ReferenceCardinality.MANDATORY, | ||||
|             collectionType = CollectionType.SERVICE) | ||||
|     ConnectorService connectorService; | ||||
|  | ||||
|     @Override | ||||
|     public void addConnector(String idOrName, String connectorFactoryId, Map<String, String> parameters) | ||||
|             throws Exception { | ||||
|  | ||||
|         System system = getSystemByIdOrName(idOrName); | ||||
|         if (system == null) | ||||
|             throw new IllegalArgumentException("System not found by Id or Name [" + idOrName + "]"); | ||||
|         ConnectorDto connectorDto = new ConnectorDto(); | ||||
|         connectorDto.setConnectorParams(parameters); | ||||
|         connectorDto.setSystemUuid(system.getUuid()); | ||||
|         connectorDto.setTemplateName(connectorFactoryId); | ||||
|  | ||||
|         // FIXME remove hardcoded | ||||
|         connectorDto.setCreatedBy("admin"); | ||||
|  | ||||
|         checkBundleResult(connectorManager.installConnector(connectorDto), BundleStatus.ACTIVE); | ||||
|  | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public void removeConnector(String idOrName, String connectorName) throws Exception { | ||||
|  | ||||
|         System system = getSystemByIdOrName(idOrName); | ||||
|         if (system == null) | ||||
|             throw new IllegalArgumentException("System not found by Id or Name [" + idOrName + "]"); | ||||
|  | ||||
|         Connector connector = connectorService.getConnectorByName(connectorName); | ||||
|         if (connector == null) | ||||
|             throw new IllegalArgumentException("Connector not found by Name [" + connectorName + "]"); | ||||
|  | ||||
|         checkBundleResult(connectorManager.uninstallConnector(connector), BundleStatus.UNINSTALL); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public void startConnector(String idOrName, String connectorName) throws Exception { | ||||
|  | ||||
|         System system = getSystemByIdOrName(idOrName); | ||||
|         if (system == null) | ||||
|             throw new IllegalArgumentException("System not found by Id or Name [" + idOrName + "]"); | ||||
|  | ||||
|         Connector connector = connectorService.getConnectorByName(connectorName); | ||||
|         if (connector == null) | ||||
|             throw new IllegalArgumentException("Connector not found by Name [" + connectorName + "]"); | ||||
|  | ||||
|         checkBundleResult(connectorManager.startConnector(connector), BundleStatus.ACTIVE); | ||||
|  | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public void stopConnector(String idOrName, String connectorName) throws Exception { | ||||
|  | ||||
|         System system = getSystemByIdOrName(idOrName); | ||||
|         if (system == null) | ||||
|             throw new IllegalArgumentException("System not found by Id or Name [" + idOrName + "]"); | ||||
|  | ||||
|         Connector connector = connectorService.getConnectorByName(connectorName); | ||||
|         if (connector == null) | ||||
|             throw new IllegalArgumentException("Connector not found by Name [" + connectorName + "]"); | ||||
|  | ||||
|         checkBundleResult(connectorManager.stopConnector(connector), BundleStatus.RESOLVED); | ||||
|  | ||||
|     } | ||||
|  | ||||
|     protected System getSystemByIdOrName(String idOrName) { | ||||
|         System result = systemService.getByName(idOrName); | ||||
|         if (result == null) | ||||
|             result = systemService.getByUuid(idOrName); | ||||
|         return result; | ||||
|     } | ||||
|  | ||||
|     protected void checkBundleResult(BundleDto bundleDto, BundleStatus expectedStatus) throws Exception { | ||||
|         if ((bundleDto == null) || !expectedStatus.equals(bundleDto.getStatus())) | ||||
|             throw new Exception("Result bundle is null or in a wrong state"); | ||||
|  | ||||
|     } | ||||
| } | ||||
| @@ -0,0 +1,114 @@ | ||||
| /*- | ||||
|  * ~~~~~~licensing~~~~~~ | ||||
|  * profile-management-service-adapters | ||||
|  * ========== | ||||
|  * Copyright (C) 2020 - 2025 EmDev LLC | ||||
|  * ========== | ||||
|  * You may not use this file except in accordance with the License Terms of the Copyright | ||||
|  * Holder located at: https://entaxy.ru/eula . All copyrights, all intellectual property | ||||
|  * rights to the Software and any copies are the property of the Copyright Holder. Unless | ||||
|  * it is explicitly allowed the Copyright Holder, the User is prohibited from using the | ||||
|  * Software for commercial purposes to provide services to third parties. | ||||
|  *  | ||||
|  * The Copyright Holder hereby declares that the Software is provided on an "AS IS". | ||||
|  * Under no circumstances does the Copyright Holder guarantee or promise that the | ||||
|  * Software provided by him will be suitable or not suitable for the specific purposes | ||||
|  * of the User, that the Software will meet all commercial and personal subjective | ||||
|  * expectations of the User, that the Software will work properly, without technical | ||||
|  * errors, quickly and uninterruptedly. | ||||
|  *  | ||||
|  * Under no circumstances shall the Copyright Holder or its Affiliates is not liable | ||||
|  * to the User for any direct or indirect losses of the User, his expenses or actual | ||||
|  * damage, including, downtime; loss of bussines; lost profit; lost earnings; loss | ||||
|  * or damage to data, property, etc. | ||||
|  * ~~~~~~/licensing~~~~~~ | ||||
|  */ | ||||
| package ru.entaxy.esb.platform.core.management.profile.adapters; | ||||
|  | ||||
| import java.util.ArrayList; | ||||
| import java.util.List; | ||||
|  | ||||
| import org.osgi.service.component.annotations.CollectionType; | ||||
| import org.osgi.service.component.annotations.Component; | ||||
| import org.osgi.service.component.annotations.Reference; | ||||
| import org.osgi.service.component.annotations.ReferenceCardinality; | ||||
|  | ||||
| import ru.entaxy.esb.system.core.permission.jpa.PermissionService; | ||||
| import ru.entaxy.esb.system.core.permission.jpa.entity.Permission; | ||||
| import ru.entaxy.esb.system.jpa.SystemService; | ||||
| import ru.entaxy.esb.system.management.permission.manager.dto.PermissionDto; | ||||
| import ru.entaxy.platform.core.management.profile.support.legacy.PermissionManager; | ||||
|  | ||||
| @Component(service = PermissionManager.class, | ||||
|         immediate = true) | ||||
| public class PermissionManagerAdapter implements PermissionManager { | ||||
|  | ||||
|     @Reference(service = ru.entaxy.esb.system.management.permission.manager.PermissionManager.class, | ||||
|             cardinality = ReferenceCardinality.MANDATORY, | ||||
|             collectionType = CollectionType.SERVICE) | ||||
|     ru.entaxy.esb.system.management.permission.manager.PermissionManager permissionManager; | ||||
|  | ||||
|     @Reference(service = PermissionService.class, cardinality = ReferenceCardinality.MANDATORY, | ||||
|             collectionType = CollectionType.SERVICE) | ||||
|     PermissionService permissionService; | ||||
|  | ||||
|     @Reference(service = SystemService.class, cardinality = ReferenceCardinality.MANDATORY, | ||||
|             collectionType = CollectionType.SERVICE) | ||||
|     SystemService systemService; | ||||
|  | ||||
|     @Override | ||||
|     public List<String> getObjectPermissions(String objectId) throws Exception { | ||||
|         ru.entaxy.esb.system.jpa.entity.System system = getRequiredSystemByIdOrName(objectId); | ||||
|         List<Permission> permissions = permissionService.getAllById(system.getId(), "system"); | ||||
|         long systemId = system.getId(); | ||||
|         List<String> result = new ArrayList<>(); | ||||
|         for (Permission perm : permissions) { | ||||
|             if (perm.getObjectId() == systemId) { | ||||
|                 if ("system".equals(perm.getSubjectType())) { | ||||
|                     ru.entaxy.esb.system.jpa.entity.System s = systemService.get(Long.parseLong(perm.getSubjectId())); | ||||
|                     if (s != null) | ||||
|                         result.add(s.getName()); | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
|         return result; | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public List<String> getSubjectPermissions(String subjectId) throws Exception { | ||||
|         ru.entaxy.esb.system.jpa.entity.System system = getRequiredSystemByIdOrName(subjectId); | ||||
|         List<Permission> permissions = permissionService.getAllById(system.getId(), "system"); | ||||
|         String systemId = system.getId() + ""; | ||||
|         List<String> result = new ArrayList<>(); | ||||
|         for (Permission perm : permissions) { | ||||
|             if (perm.getSubjectId().equals(systemId)) { | ||||
|                 ru.entaxy.esb.system.jpa.entity.System s = systemService.get(perm.getObjectId()); | ||||
|                 if (s != null) | ||||
|                     result.add(s.getName()); | ||||
|             } | ||||
|         } | ||||
|         return result; | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public void createPermission(String objectId, String subjectId) throws Exception { | ||||
|         PermissionDto dto = new PermissionDto(objectId, subjectId); | ||||
|         permissionManager.createPermission(dto); | ||||
|     } | ||||
|  | ||||
|     protected ru.entaxy.esb.system.jpa.entity.System getSystemByIdOrName(String idOrName) { | ||||
|         ru.entaxy.esb.system.jpa.entity.System result = systemService.getByName(idOrName); | ||||
|         if (result == null) | ||||
|             result = systemService.getByUuid(idOrName); | ||||
|         return result; | ||||
|     } | ||||
|  | ||||
|     protected ru.entaxy.esb.system.jpa.entity.System getRequiredSystemByIdOrName(String idOrName) throws Exception { | ||||
|         ru.entaxy.esb.system.jpa.entity.System result = systemService.getByName(idOrName); | ||||
|         if (result == null) | ||||
|             result = systemService.getByUuid(idOrName); | ||||
|         if (result == null) | ||||
|             throw new IllegalArgumentException("System not found by Id or Name: [" + idOrName + "]"); | ||||
|         return result; | ||||
|     } | ||||
| } | ||||
| @@ -0,0 +1,112 @@ | ||||
| /*- | ||||
|  * ~~~~~~licensing~~~~~~ | ||||
|  * profile-management-service-adapters | ||||
|  * ========== | ||||
|  * Copyright (C) 2020 - 2025 EmDev LLC | ||||
|  * ========== | ||||
|  * You may not use this file except in accordance with the License Terms of the Copyright | ||||
|  * Holder located at: https://entaxy.ru/eula . All copyrights, all intellectual property | ||||
|  * rights to the Software and any copies are the property of the Copyright Holder. Unless | ||||
|  * it is explicitly allowed the Copyright Holder, the User is prohibited from using the | ||||
|  * Software for commercial purposes to provide services to third parties. | ||||
|  *  | ||||
|  * The Copyright Holder hereby declares that the Software is provided on an "AS IS". | ||||
|  * Under no circumstances does the Copyright Holder guarantee or promise that the | ||||
|  * Software provided by him will be suitable or not suitable for the specific purposes | ||||
|  * of the User, that the Software will meet all commercial and personal subjective | ||||
|  * expectations of the User, that the Software will work properly, without technical | ||||
|  * errors, quickly and uninterruptedly. | ||||
|  *  | ||||
|  * Under no circumstances shall the Copyright Holder or its Affiliates is not liable | ||||
|  * to the User for any direct or indirect losses of the User, his expenses or actual | ||||
|  * damage, including, downtime; loss of bussines; lost profit; lost earnings; loss | ||||
|  * or damage to data, property, etc. | ||||
|  * ~~~~~~/licensing~~~~~~ | ||||
|  */ | ||||
| package ru.entaxy.esb.platform.core.management.profile.adapters; | ||||
|  | ||||
| import javax.naming.OperationNotSupportedException; | ||||
|  | ||||
| import org.osgi.service.component.annotations.CollectionType; | ||||
| import org.osgi.service.component.annotations.Component; | ||||
| import org.osgi.service.component.annotations.Reference; | ||||
| import org.osgi.service.component.annotations.ReferenceCardinality; | ||||
|  | ||||
| import ru.entaxy.esb.system.jpa.SystemService; | ||||
| import ru.entaxy.esb.system.jpa.entity.System; | ||||
| import ru.entaxy.esb.system.management.profile.manager.ProfileManager; | ||||
| import ru.entaxy.esb.system.management.profile.manager.dto.ProfileDto; | ||||
| import ru.entaxy.esb.system.management.profile.manager.mapper.ProfileMapper; | ||||
|  | ||||
| @Component( | ||||
|         service = {ru.entaxy.platform.core.management.profile.support.legacy.ProfileManager.class}, immediate = true) | ||||
| public class ProfileManagerAdapter implements ru.entaxy.platform.core.management.profile.support.legacy.ProfileManager { | ||||
|  | ||||
|     @Reference(service = ProfileManager.class, cardinality = ReferenceCardinality.MANDATORY, | ||||
|             collectionType = CollectionType.SERVICE) | ||||
|     ProfileManager profileManager; | ||||
|  | ||||
|     @Reference(service = ProfileMapper.class, cardinality = ReferenceCardinality.MANDATORY, | ||||
|             collectionType = CollectionType.SERVICE) | ||||
|     ProfileMapper profileMapper; | ||||
|  | ||||
|     @Reference(service = SystemService.class, cardinality = ReferenceCardinality.MANDATORY, | ||||
|             collectionType = CollectionType.SERVICE) | ||||
|     SystemService systemService; | ||||
|  | ||||
|     @Override | ||||
|     public void createProfile(String id, String name, String description) throws Exception { | ||||
|         ProfileDto dto = new ProfileDto(); | ||||
|         dto.setUuid(id); | ||||
|         dto.setName(name); | ||||
|         dto.setDescription(description); | ||||
|  | ||||
|         // TODO get the user name from JMX, | ||||
|         // need to investigate, how | ||||
|         dto.setCreatedBy("admin"); | ||||
|  | ||||
|         profileManager.installProfile(dto); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public void startProfile(String idOrName) throws Exception { | ||||
|         ProfileDto dto = getProfileForSystem(getSystemByIdOrName(idOrName)); | ||||
|         if (dto == null) | ||||
|             throw new IllegalArgumentException("System/profile not found for [" + idOrName + "]"); | ||||
|         profileManager.startProfile(dto); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public void stopProfile(String idOrName) throws Exception { | ||||
|         ProfileDto dto = getProfileForSystem(getSystemByIdOrName(idOrName)); | ||||
|         if (dto == null) | ||||
|             throw new IllegalArgumentException("System/profile not found for [" + idOrName + "]"); | ||||
|         profileManager.stopProfile(dto); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public void uninstallProfile(String idOrName) throws Exception { | ||||
|         ProfileDto dto = getProfileForSystem(getSystemByIdOrName(idOrName)); | ||||
|         if (dto == null) | ||||
|             throw new IllegalArgumentException("System/profile not found for [" + idOrName + "]"); | ||||
|         profileManager.uninstallProfile(dto); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public String getProfileConfig(String idOrName) throws Exception { | ||||
|         throw new OperationNotSupportedException(); | ||||
|     } | ||||
|  | ||||
|     protected System getSystemByIdOrName(String idOrName) { | ||||
|         System result = systemService.getByName(idOrName); | ||||
|         if (result == null) | ||||
|             result = systemService.getByUuid(idOrName); | ||||
|         return result; | ||||
|     } | ||||
|  | ||||
|     protected ProfileDto getProfileForSystem(System system) { | ||||
|         if (system == null) | ||||
|             return null; | ||||
|         return profileMapper.toProfileDto(system); | ||||
|     } | ||||
| } | ||||
| @@ -0,0 +1,46 @@ | ||||
| /*- | ||||
|  * ~~~~~~licensing~~~~~~ | ||||
|  * profile-management-service-adapters | ||||
|  * ========== | ||||
|  * Copyright (C) 2020 - 2025 EmDev LLC | ||||
|  * ========== | ||||
|  * You may not use this file except in accordance with the License Terms of the Copyright | ||||
|  * Holder located at: https://entaxy.ru/eula . All copyrights, all intellectual property | ||||
|  * rights to the Software and any copies are the property of the Copyright Holder. Unless | ||||
|  * it is explicitly allowed the Copyright Holder, the User is prohibited from using the | ||||
|  * Software for commercial purposes to provide services to third parties. | ||||
|  *  | ||||
|  * The Copyright Holder hereby declares that the Software is provided on an "AS IS". | ||||
|  * Under no circumstances does the Copyright Holder guarantee or promise that the | ||||
|  * Software provided by him will be suitable or not suitable for the specific purposes | ||||
|  * of the User, that the Software will meet all commercial and personal subjective | ||||
|  * expectations of the User, that the Software will work properly, without technical | ||||
|  * errors, quickly and uninterruptedly. | ||||
|  *  | ||||
|  * Under no circumstances shall the Copyright Holder or its Affiliates is not liable | ||||
|  * to the User for any direct or indirect losses of the User, his expenses or actual | ||||
|  * damage, including, downtime; loss of bussines; lost profit; lost earnings; loss | ||||
|  * or damage to data, property, etc. | ||||
|  * ~~~~~~/licensing~~~~~~ | ||||
|  */ | ||||
| package ru.entaxy.esb.platform.core.management.profile.adapters; | ||||
|  | ||||
| import org.osgi.service.component.annotations.Component; | ||||
| import org.osgi.service.component.annotations.Reference; | ||||
| import org.osgi.service.component.annotations.ReferenceCardinality; | ||||
|  | ||||
| import ru.entaxy.esb.system.jpa.SystemService; | ||||
| import ru.entaxy.platform.core.management.profile.support.legacy.SystemManager; | ||||
|  | ||||
| @Component(service = SystemManager.class, immediate = true) | ||||
| public class SystemManagerAdapter implements SystemManager { | ||||
|  | ||||
|     @Reference(cardinality = ReferenceCardinality.MANDATORY) | ||||
|     SystemService systemService; | ||||
|  | ||||
|     @Override | ||||
|     public String getUUIDbyName(String name) throws Exception { | ||||
|         return systemService.getByName(name).getUuid(); | ||||
|     } | ||||
|  | ||||
| } | ||||
							
								
								
									
										175
									
								
								platform-backward-compat/profile-storage/LICENSE.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										175
									
								
								platform-backward-compat/profile-storage/LICENSE.txt
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,175 @@ | ||||
|                                  ЛИЦЕНЗИЯ ОГРАНИЧЕННОГО ПРИМЕНЕНИЯ | ||||
|  | ||||
| Настоящий документ устанавливает для Пользователя условия применения Базовой (некоммерческой) | ||||
| версии лицензии для пробного использования программного обеспечения ENTAXY, принадлежащего | ||||
| Правообладателю – Обществу с ограниченной ответственностью "ЕМДЕВ" (ОГРН 1057810026658, ИНН | ||||
| 7813313860, юридический адрес: 197022, Россия, г. Санкт-Петербург, ул. Профессора Попова, | ||||
| д. 23, литера В, помещение 3Н), расположенной в сети Интернет по адресу | ||||
| https://www.emdev.ru/about (далее - Компания). | ||||
|  | ||||
| Используя или получая доступ к Программному обеспечению, или нажав «Я согласен с Условиями» | ||||
| (или аналогичную кнопку или флажок) после загрузки или установки Программного обеспечения, | ||||
| Пользователь выражает свое согласие на обязательность условий и ограничений, изложенных в | ||||
| настоящем документе, в противном случае, он должен не использовать или не получать доступ | ||||
| к Программному обеспечению. | ||||
|  | ||||
|                                     1. ТЕРМИНЫ И ОПРЕДЕЛЕНИЯ | ||||
|  | ||||
| a) ПО – Программное обеспечение, интеграционная шина «ЭНТАКСИ» (ENTAXY) в любой ее версии | ||||
| или редакции, исключительные права на которую принадлежат Правообладателю. | ||||
| b) Правообладатель (Компания) – ООО «ЕМДЕВ», ОГРН 1057810026658, ИНН 7813313860, исключительные | ||||
| права которого подтверждаются Свидетельством о государственной регистрации в Реестре программ | ||||
| для ЭВМ № 2021610848 от 19.01.2021 года. | ||||
| c) Пользователь – юридическое или физическое лицо, получившее через скачивание с сайта | ||||
| https://entaxy.ru или иным образом, дистрибутив ПО, пользующееся ПО. | ||||
| d) ИС – интеллектуальная собственность – закреплённое законом исключительное право, а также | ||||
| личные неимущественные права авторов произведений на результат интеллектуальной деятельности. | ||||
| e) Подписка – это коммерческое предложение Правообладателя, состоящее из Лицензии на использование | ||||
| ПО и доступа к технической поддержке программного обеспечения на срок Подписки. Подписка | ||||
| включает предоставление Пользователю неисключительного права использования ПО, в том числе | ||||
| получение обновлений функционала ПО и безопасности ПО, исправление ошибок ПО и получение | ||||
| патчей с обновлениями и исправлениями программного обеспечения. Подписка приобретается | ||||
| Пользователем на период времени, указанный в Сертификате. Количество подписок устанавливается | ||||
| для каждого Пользователя индивидуально в Сертификате. | ||||
| f) Сертификат – документ, выдаваемый Дистрибъютором или Авторизованным партнёром (Партнёром), | ||||
| подтверждающий факт приобретения физическим или юридическим лицом Подписки на программное | ||||
| обеспечение в ограниченном объёме и на определённый период времени. | ||||
| g) Лицензия (простая (неисключительная) – совокупность ограниченных прав использования ПО, | ||||
| предоставленных Пользователю согласно условиям Подписки. | ||||
| h) Библиотека – совокупность подпрограмм и объектов, используемых для разработки программного | ||||
| обеспечения. | ||||
| i) Исходный код – текст компьютерной программы на каком-либо языке программирования, состоящий | ||||
| из одного или нескольких файлов, который может быть прочтён человеком. | ||||
| j) Объектный код – файл (часть машинного кода) с промежуточным представлением отдельного модуля | ||||
| программы, полученный в результате обработки исходного кода, еще не связанный в полную программу. | ||||
| Это машинный код для одной конкретной библиотеки или модуля, который будет составлять готовый | ||||
| продукт. | ||||
| k) Некоммерческое использование – индивидуальное личное использование Пользователем программного | ||||
| обеспечения с целью обучения работе с Программным обеспечением, для оценки или демонстрации | ||||
| возможностей Программного обеспечения, при котором, Пользователем не извлекается коммерческая | ||||
| выгода и/или не идёт в доход денежное вознаграждение при использовании Программного обеспечения. | ||||
|  | ||||
|                     2. ДОПУСТИМЫЕ СПОСОБЫ ИСПОЛЬЗОВАНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ | ||||
|  | ||||
| 2.1. Правообладатель предоставляет Пользователю ограниченное право использования Программного | ||||
| обеспечения на условиях простой (неисключительной) лицензии в объёме, ограниченном правом | ||||
| воспроизведения полной рабочей версии программного обеспечения, новых версий программного обеспечения | ||||
| в памяти оборудования и его запуска на оборудовании в соответствии со ст. 1280 ГК РФ. | ||||
| 2.2. Право на использование Программного обеспечения, предоставляемое Пользователю, носит | ||||
| неисключительный характер. | ||||
| 2.3. Пользователю предоставляется всемирная, неисключительная, не подлежащая сублицензированию, | ||||
| лицензия на ограниченное использование Программного обеспечения. | ||||
| 2.4. Пользователь, имеющий Базовую (некоммерческую) версию лицензии для пробного использования | ||||
| имеет право приобрести Подписку на программное обеспечение. В этом случае Пользователь обязан | ||||
| обратиться в службу поддержки Правообладателя по адресу:  https://entaxy.ru/ для изменения | ||||
| вида лицензии с Базовой бесплатной версии на Подписки. | ||||
| 2.5. Срок использования скачанной Пользователем базовой (некоммерческой) версии лицензии для | ||||
| пробного использования программного обеспечения – не ограничен. | ||||
| 2.6. Использование Пользователем настоящего программного обеспечения в целях разработки, | ||||
| модификации, обновления другого ПО, принадлежащего третьим лицам, а не Правообладателю, | ||||
| без разрешения Правообладателя не допускается. | ||||
|  | ||||
|                                 3. АВТОРСКОЕ ПРАВО. | ||||
|  | ||||
| 3.1. Все авторские права, все права интеллектуальной собственности на Программное обеспечение | ||||
| и любые его копии принадлежат Правообладателю. | ||||
| 3.2. Все авторские права, все права интеллектуальной собственности в отношении любого контента, | ||||
| к которому можно получить доступ с помощью Программного обеспечения, является собственностью | ||||
| соответствующего владельца контента и защищается применимым законодательством об авторском | ||||
| праве или другими законами и договорами об интеллектуальной собственности. | ||||
| 3.3. Условия использования Программного обеспечения. | ||||
| Лицензия, предоставленная Пользователю, действительна только в том случае, если Пользователь | ||||
| придерживается следующих условий: | ||||
| 3.3.1. Принятие уведомлений об авторских правах. Пользователю запрещается удалять или изменять | ||||
| какие-либо уведомления об авторских правах или лицензиях, которые появляются при использовании | ||||
| Программного обеспечения или на нем. | ||||
| 3.3.2. Модификация. Пользователю запрещается модифицировать, изменять, декомпилировать, | ||||
| расшифровывать, дизассемблировать, переводить или реверсировать, перепроектировать | ||||
| Программное обеспечение. | ||||
| 3.3.3. Распространение. Пользователю запрещается сублицензировать, передавать право использования | ||||
| ПО или иным образом распространять или предоставлять Программное обеспечение любой третьей стороне. | ||||
| 3.3.4. SaaS. За исключением случаев, когда это разрешено Правообладателем, Пользователю запрещено | ||||
| использовать Программное обеспечение в коммерческих целях для оказания услуг третьим лицам. | ||||
|  | ||||
|                     4. ОТВЕТСТВЕННОСТЬ ПРАВООБЛАДАТЕЛЯ ПРИ НАРУШЕНИИ ПОЛЬЗОВАТЕЛЕМ ПРАВ «ИС» | ||||
|  | ||||
| 4.1. Правообладатель не несет никаких обязательств в отношении каких-либо претензий к Пользователю | ||||
| на предмет нарушения последним прав Интеллектуальной собственности, возникших в связи с | ||||
| использованием Пользователем: | ||||
| 4.1.1. Любых компонентов программного обеспечения с открытым исходным кодом, включенных в | ||||
| Программное обеспечение; | ||||
| 4.1.2. Любого нарушения правил использования Программного обеспечения, установленного условиями | ||||
| настоящего соглашения; | ||||
| 4.1.3. Любого использования Программного обеспечения в сочетании с другими ПО, оборудованием, | ||||
| или данными, не предоставленными Пользователю Правообладателем; | ||||
| 4.1.4. Любого изменения Программного обеспечения любым третьим лицом, а не Правообладателем. | ||||
|  | ||||
|  | ||||
| 5. НАСТОЯЩИМ ПРАВООБЛАДАТЕЛЬ ЗАЯВЛЯЕТ, ЧТО ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРЕДОСТАВЛЯЕТСЯ ПОЛЬЗОВАТЕЛЮ | ||||
| ПО ПРИНЦИПУ «AS IS» - «КАК ЕСТЬ». НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ ПРАВООБЛАДАТЕЛЬ НЕ ГАРАНТИРУЕТ | ||||
| И НЕ ОБЕЩАЕТ, ЧТО ПРЕДОСТАВЛЕННОЕ ИМ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ БУДЕТ ПОДХОДИТЬ ИЛИ НЕ ПОДХОДИТЬ | ||||
| ДЛЯ КОНКРЕТНЫХ ЦЕЛЕЙ ПОЛЬЗОВАТЕЛЯ, ЧТО ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ БУДЕТ ОТВЕЧАТЬ ВСЕМ КОММЕРЧЕСКИМ | ||||
| И ЛИЧНЫМ СУБЪЕКТИВНЫМ ОЖИДАНИЯМ ПОЛЬЗОВАТЕЛЯ, ЧТО ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ БУДЕТ РАБОТАТЬ | ||||
| ИСПРАВНО, БЕЗ ТЕХНИЧЕСКИХ ОШИБОК, БЫСТРО И БЕСПЕРЕБОЙНО. | ||||
|  | ||||
|                         6. ОГРАНИЧЕНИЕ ОТВЕТСТВЕННОСТИ. | ||||
| НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ ПРАВООБЛАДАТЕЛЬ ИЛИ ЕГО АФФИЛЛИРОВАННЫЕ ЛИЦА НЕ НЕСУТ ПЕРЕД ПОЛЬЗОВАТЕЛЕМ | ||||
| ОТВЕТСТВЕННОСТИ ЗА ЛЮБЫЕ ПРЯМЫЕ ИЛИ КОСВЕННЫЕ УБЫТКИ ПОЛЬЗОВАТЕЛЯ, ЕГО РАСХОДЫ ИЛИ РЕАЛЬНЫЙ УЩЕРБ, | ||||
| ВКЛЮЧАЯ, ПОМИМО ПРОЧЕГО, ПРОСТОИ; УТРАТУ БИЗНЕСА; УПУЩЕННУЮ ВЫГОДУ; НЕДОПОЛУЧЕННУЮ ПРИБЫЛЬ; | ||||
| ПОТЕРЮ ИЛИ ПОВРЕЖДЕНИЕ ДАННЫХ, ИМУЩЕСТВА И ИНОЕ. | ||||
| ОГРАНИЧЕНИЯ ПРИМЕНЯЮТСЯ НЕЗАВИСИМО ОТ ОСНОВАНИЯ НАСТУПЛЕНИЯ ОТВЕТСТВЕННОСТИ; В ТОМ ЧИСЛЕ ВСЛЕДСТВИЕ | ||||
| ДЕЙСТВИЯ ИЛИ БЕЗДЕЙСТВИЯ, НЕБРЕЖНОСТИ, УМЫСЛА, ПРЯМОГО ИЛИ КОСВЕННОГО; НЕОСТОРОЖНОСТИ; ЗАБЛУЖДЕНИЯ; | ||||
| КЛЕВЕТЫ; НАРУШЕНИЯ КОНФИДЕНЦИАЛЬНОСТИ ИЛИ ПРАВА ИНТЕЛЛЕКТУАЛЬНОЙ СОБСТВЕННОСТИ; ИЛИ ЛЮБОЕ ДРУГОЕ | ||||
| ОСНОВАНИЕ НАСТУПЛЕНИЯ ОТВЕТСТВЕННОСТИ. | ||||
|  | ||||
|                         7. ОБЯЗАННОСТЬ ПОЛЬЗОВАТЕЛЯ: | ||||
| Не осуществлять самостоятельно и (или) с привлечением третьих лиц нижеследующие действия | ||||
| (включая, но не ограничиваясь) по: | ||||
| -дизассемблированию и (или) декомпилированию (преобразованию объектного кода в исходный код) | ||||
|  Программного обеспечения; | ||||
| -модификации Программного обеспечения, в том числе вносить изменения в объектный код, исходный | ||||
| код Программного обеспечения, за исключением тех изменений, которые вносятся средствами, | ||||
| включёнными в Программное обеспечение и описанными непосредственно в документации к нему; | ||||
| -созданию условий для использования Программного обеспечения лицами, не имеющими прав на | ||||
| использование данного Программного обеспечения, включая (но не ограничиваясь) вмешательство | ||||
| третьих лиц в функционирование Программного обеспечения, предоставление третьим лицам доступа | ||||
| к исследованию и (или) замене настроек Программного обеспечения, включая его первичную установку; | ||||
| -распространению Программного обеспечения в целом или в части (включая приложенную к нему документацию). | ||||
|  | ||||
|                     8. БИБЛИОТЕКА ПО. ИСПОЛЬЗУЕМЫЕ ПРОГРАММНЫЕ СРЕДСТВА. | ||||
|  | ||||
| 8.1. Настоящим, Правообладатель заверяет, что Библиотека программного обеспечения состоит из | ||||
| лицензионных продуктов, используемых на законных основаниях, а | ||||
| именно https://entaxy.ru/libs/licenses/root-aggregated.deps. | ||||
| 8.2. Любые программные средства, применяемые Пользователем при работе с ПО, должны быть | ||||
| совместимы с библиотекой ПО, указанной в п.8.1. настоящего соглашения. | ||||
| 8.3. Перечень внешних модулей ПО, указанный в п.8.1 настоящего соглашения, может изменяться | ||||
| Правообладателем в одностороннем порядке, в зависимости от выпуска релизов программного обеспечения, | ||||
| содержащих все изменения и дополнения программного обеспечения. | ||||
|  | ||||
|                         9. ВНЕСЕНИЕ ИЗМЕНЕНИЙ В ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ. | ||||
|  | ||||
| 9.1.  Программное обеспечение, интеграционная шина «ЭНТАКСИ» (ENTAXY) является свободно распространяемым | ||||
| программным обеспечением. | ||||
| 9.2. Пользователь имеет право вносить изменения в исходный код программного обеспечения исключительно | ||||
| с согласия Правообладателя в порядке предложения изменений/правок/дополнений через механизм | ||||
| «Pull Requests» в открытом репозитории Правообладателя по адресу: https://git.entaxy.ru/entaxy/entaxy-public. | ||||
| 9.3. Любые изменения программного обеспечения, осуществляемые Пользователем без соблюдения условий | ||||
| пункта 9.2. настоящего документа, являются нарушением авторских и смежных прав Правообладателя, | ||||
| прав интеллектуальной собственности Правообладателя и влекут применение к Пользователю мер | ||||
| ответственности в соответствии с условиями настоящей Лицензии, а также применимого законодательства | ||||
| Российской Федерации. | ||||
|  | ||||
|                                 10. ЗАКЛЮЧИТЕЛЬНЫЕ ПОЛОЖЕНИЯ. | ||||
|  | ||||
| 10.1. В случае нарушения Пользователем любого из условий настоящей Лицензии, Правообладатель имеет | ||||
| право взыскать с Пользователя любые причинённые таким нарушением убытки, реальный ущерб, | ||||
| недополученную прибыль, упущенную выгоду, а также в случае нарушения Пользователем условий | ||||
| пункта 9.2 настоящего соглашения, в том числе, взыскать с Пользователя штраф в размере | ||||
| 2 000 000 (Два миллиона) рублей за каждый установленный случай несанкционированного изменения | ||||
| исходного или объектного кода Программного обеспечения «Энтакси» (Entaxy). | ||||
| 10.2. В рамках исполнения Пользователем обязательств по настоящей Лицензии, применимое | ||||
| законодательство – Российской Федерации. | ||||
| 10.3. Если какое-либо положение настоящей Лицензии будет признано судом недействительным, | ||||
| остальные положения будут продолжать своё действие, а Пользователь будет обязан продолжать | ||||
| исполнять свои обязанности в соответствии с этими положениями. | ||||
							
								
								
									
										27
									
								
								platform-backward-compat/profile-storage/pom.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								platform-backward-compat/profile-storage/pom.xml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,27 @@ | ||||
| <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> | ||||
|   <modelVersion>4.0.0</modelVersion> | ||||
|  | ||||
| 	<parent> | ||||
| 		<groupId>ru.entaxy.platform</groupId> | ||||
| 		<artifactId>platform-backward-compat</artifactId> | ||||
| 		<version>1.11.0</version> | ||||
| 	</parent> | ||||
|  | ||||
| 	<groupId>ru.entaxy.platform.backward-compat</groupId> | ||||
|   <artifactId>profile-storage</artifactId> | ||||
|   <packaging>bundle</packaging> | ||||
|   <name>ENTAXY :: PLATFORM :: BACKWARD COMPATIBILITY :: PROFILE :: STORAGE</name> | ||||
|   <description>ENTAXY :: PLATFORM :: BACKWARD COMPATIBILITY :: PROFILE :: STORAGE</description> | ||||
|    | ||||
|   <properties> | ||||
|   	<bundle.osgi.export.pkg>ru.entaxy.platform.base.objects.profile.storage</bundle.osgi.export.pkg> | ||||
|   </properties> | ||||
|    | ||||
|   <dependencies> | ||||
|   	<dependency> | ||||
|   		<groupId>ru.entaxy.esb.system.registry.systems</groupId> | ||||
|   		<artifactId>system-api</artifactId> | ||||
|   		<version>${project.version}</version> | ||||
|   	</dependency> | ||||
|   </dependencies> | ||||
| </project> | ||||
| @@ -0,0 +1,112 @@ | ||||
| /*- | ||||
|  * ~~~~~~licensing~~~~~~ | ||||
|  * test-producers | ||||
|  * ========== | ||||
|  * Copyright (C) 2020 - 2025 EmDev LLC | ||||
|  * ========== | ||||
|  * You may not use this file except in accordance with the License Terms of the Copyright | ||||
|  * Holder located at: https://entaxy.ru/eula . All copyrights, all intellectual property | ||||
|  * rights to the Software and any copies are the property of the Copyright Holder. Unless | ||||
|  * it is explicitly allowed the Copyright Holder, the User is prohibited from using the | ||||
|  * Software for commercial purposes to provide services to third parties. | ||||
|  *  | ||||
|  * The Copyright Holder hereby declares that the Software is provided on an "AS IS". | ||||
|  * Under no circumstances does the Copyright Holder guarantee or promise that the | ||||
|  * Software provided by him will be suitable or not suitable for the specific purposes | ||||
|  * of the User, that the Software will meet all commercial and personal subjective | ||||
|  * expectations of the User, that the Software will work properly, without technical | ||||
|  * errors, quickly and uninterruptedly. | ||||
|  *  | ||||
|  * Under no circumstances shall the Copyright Holder or its Affiliates is not liable | ||||
|  * to the User for any direct or indirect losses of the User, his expenses or actual | ||||
|  * damage, including, downtime; loss of bussines; lost profit; lost earnings; loss | ||||
|  * or damage to data, property, etc. | ||||
|  * ~~~~~~/licensing~~~~~~ | ||||
|  */ | ||||
| package ru.entaxy.platform.base.objects.profile.storage; | ||||
|  | ||||
| import java.util.Date; | ||||
| import java.util.HashMap; | ||||
| import java.util.Map; | ||||
| import java.util.Map.Entry; | ||||
|  | ||||
| import org.osgi.service.component.annotations.CollectionType; | ||||
| import org.osgi.service.component.annotations.Component; | ||||
| import org.osgi.service.component.annotations.Reference; | ||||
| import org.osgi.service.component.annotations.ReferenceCardinality; | ||||
| import org.slf4j.Logger; | ||||
| import org.slf4j.LoggerFactory; | ||||
|  | ||||
| import com.google.gson.Gson; | ||||
| import com.google.gson.JsonObject; | ||||
|  | ||||
| import ru.entaxy.esb.system.jpa.SystemService; | ||||
| import ru.entaxy.esb.system.management.bundle.jpa.entity.BundleEntity; | ||||
| import ru.entaxy.platform.base.objects.EntaxyObject; | ||||
| import ru.entaxy.platform.base.objects.EntaxyObjectStorage; | ||||
|  | ||||
| @Component(service = EntaxyObjectStorage.class, immediate = true) | ||||
| public class SystemObjectStorage implements EntaxyObjectStorage { | ||||
|  | ||||
|     private static final Logger log = LoggerFactory.getLogger(SystemObjectStorage.class); | ||||
|  | ||||
|     @Reference(cardinality = ReferenceCardinality.MANDATORY, collectionType = CollectionType.SERVICE) | ||||
|     protected SystemService systemService; | ||||
|  | ||||
|     @SuppressWarnings("serial") | ||||
|     protected Map<String, String> fieldMap = new HashMap<>() { | ||||
|         { | ||||
|             put("uuid", "objectId"); | ||||
|             put("name", "systemName"); | ||||
|             put("description", "description"); | ||||
|             put("version", "artifact.version"); | ||||
|             put("isDefaultRoute", "useDefaultRoute"); | ||||
|         } | ||||
|     }; | ||||
|  | ||||
|     protected Map<String, String> fieldBundleMap = new HashMap<>() { | ||||
|         { | ||||
|             put("name", "bundleId"); | ||||
|             put("type", "artifact.type"); | ||||
|             put("status", "artifact.status"); | ||||
|             put("version", "artifact.version"); | ||||
|             put("url", "bundleLocation"); | ||||
|         } | ||||
|     }; | ||||
|  | ||||
|     @Override | ||||
|     public String[] getObjectTypes() { | ||||
|         return new String[] {EntaxyObject.OBJECT_TYPES.PROFILE}; | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Object store(Map<String, Object> data) { | ||||
|  | ||||
|         JsonObject jsonObject = new JsonObject(); | ||||
|         Gson gson = new Gson(); | ||||
|  | ||||
|         for (Entry<String, String> entry : fieldMap.entrySet()) { | ||||
|             if (data.containsKey(entry.getValue())) | ||||
|                 jsonObject.add(entry.getKey(), gson.toJsonTree(data.get(entry.getValue()))); | ||||
|         } | ||||
|         JsonObject bundleJsonObject = new JsonObject(); | ||||
|         for (Entry<String, String> entry : fieldBundleMap.entrySet()) { | ||||
|             if (data.containsKey(entry.getValue())) | ||||
|                 bundleJsonObject.add(entry.getKey(), gson.toJsonTree(data.get(entry.getValue()))); | ||||
|         } | ||||
|  | ||||
|         log.debug("JSON :: " + jsonObject.toString()); | ||||
|         ru.entaxy.esb.system.jpa.entity.System system = | ||||
|                 gson.fromJson(jsonObject, ru.entaxy.esb.system.jpa.entity.System.class); | ||||
|         system.setCreateDate(new Date()); | ||||
|         system.setCreatedBy("admin"); | ||||
|  | ||||
|         log.debug("JSON Bundle :: " + bundleJsonObject.toString()); | ||||
|         BundleEntity bundleEntity = gson.fromJson(bundleJsonObject, BundleEntity.class); | ||||
|         system.setBundleEntity(bundleEntity); | ||||
|         systemService.create(system); | ||||
|  | ||||
|         return null; | ||||
|     } | ||||
|  | ||||
| } | ||||
							
								
								
									
										153
									
								
								platform-backward-compat/src/main/features/features.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										153
									
								
								platform-backward-compat/src/main/features/features.xml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,153 @@ | ||||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <!-- | ||||
|   ~~~~~~licensing~~~~~~ | ||||
|   platform-backward-compat | ||||
|   ========== | ||||
|   Copyright (C) 2020 - 2025 EmDev LLC | ||||
|   ========== | ||||
|   You may not use this file except in accordance with the License Terms of the Copyright | ||||
|   Holder located at: https://entaxy.ru/eula . All copyrights, all intellectual property | ||||
|   rights to the Software and any copies are the property of the Copyright Holder. Unless | ||||
|   it is explicitly allowed the Copyright Holder, the User is prohibited from using the | ||||
|   Software for commercial purposes to provide services to third parties. | ||||
|    | ||||
|   The Copyright Holder hereby declares that the Software is provided on an "AS IS". | ||||
|   Under no circumstances does the Copyright Holder guarantee or promise that the | ||||
|   Software provided by him will be suitable or not suitable for the specific purposes | ||||
|   of the User, that the Software will meet all commercial and personal subjective | ||||
|   expectations of the User, that the Software will work properly, without technical | ||||
|   errors, quickly and uninterruptedly. | ||||
|    | ||||
|   Under no circumstances shall the Copyright Holder or its Affiliates is not liable | ||||
|   to the User for any direct or indirect losses of the User, his expenses or actual | ||||
|   damage, including, downtime; loss of bussines; lost profit; lost earnings; loss | ||||
|   or damage to data, property, etc. | ||||
|   ~~~~~~/licensing~~~~~~ | ||||
|   --> | ||||
|  | ||||
| <features name="${project.artifactId}-${project.version}" xmlns="http://karaf.apache.org/xmlns/features/v1.6.0" | ||||
|     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||||
|     xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.6.0 http://karaf.apache.org/xmlns/features/v1.6.0"> | ||||
|  | ||||
| 	<!-- platform repo --> | ||||
|     <repository>mvn:ru.entaxy.esb/platform/${project.version}/xml/features</repository> | ||||
|  | ||||
| 	<feature name="entaxy-backward-compatibility-modules" version="${project.version}"> | ||||
|  | ||||
|     	<!-- @platform --> | ||||
| 		<feature dependency="true">entaxy-platform</feature> | ||||
| 	 | ||||
| 		<feature version="${project.version}">entaxy-backward-compatibility-resources</feature> | ||||
| 	 | ||||
| 		<feature version="${project.version}">entaxy-bc-system</feature> | ||||
| 		 | ||||
| 		<feature version="${project.version}">entaxy-bc-api</feature> | ||||
| 		 | ||||
| 		<feature version="${project.version}">entaxy-bc-impl</feature> | ||||
|  | ||||
| 		<feature version="${project.version}">entaxy-bc-management</feature> | ||||
|  | ||||
| 		<feature version="${project.version}">entaxy-bc-modules</feature> | ||||
| 		 | ||||
| 	</feature>      | ||||
|      | ||||
|     <!-- will be installed in assembly --> | ||||
|     <feature name="entaxy-backward-compatibility-resources" version="${project.version}"> | ||||
| 		<configfile finalname="${karaf.etc}/scripts/entaxy.bc.shell.script" override="true"> | ||||
| 			mvn:ru.entaxy.platform/platform-backward-compat/${project.version}/script/entaxy.bc.shell | ||||
| 		</configfile>          | ||||
|     </feature> | ||||
|      | ||||
|     <feature name="entaxy-bc-system" version="${project.version}" start-level="${bundle.startlevel.system}"> | ||||
|     	<!-- @platform --> | ||||
| 		<feature dependency="true">entaxy-platform</feature> | ||||
|         <configfile finalname="${karaf.etc}/ru.entaxy.esb.cfg" override="false"> | ||||
|             mvn:ru.entaxy.esb.system/system-parent/${project.version}/cfg/ru.entaxy.esb | ||||
|         </configfile> | ||||
| 		<configfile finalname="${karaf.etc}/org.apache.felix.hc.generalchecks.BundlesStartedCheck-system.cfg" override="true"> | ||||
| 			mvn:ru.entaxy.esb.system/system-parent/${project.version}/cfg/org.apache.felix.hc.generalchecks.BundlesStartedCheck-system | ||||
| 		</configfile>  | ||||
|     	<bundle>mvn:ru.entaxy.esb.system.commons/system-commons/${project.version}</bundle> | ||||
|     	<bundle>mvn:ru.entaxy.esb.system.core/template/${project.version}</bundle> | ||||
|     </feature> | ||||
| 	 | ||||
| 	<feature name="entaxy-bc-api" version="${project.version}" start-level="${bundle.startlevel.objects}"> | ||||
|  | ||||
|     	<feature dependency="true">entaxy-bc-system</feature> | ||||
|  | ||||
| 		<bundle>mvn:ru.entaxy.platform.security.jaas/entaxy-legacy-auth-api/${project.version}</bundle> | ||||
|         <bundle>mvn:ru.entaxy.esb.system.registry.systems/system-api/${project.version}</bundle> | ||||
|         <bundle>mvn:ru.entaxy.esb.system.registry.connector/connector-api/${project.version}</bundle> | ||||
|  | ||||
|         <bundle>mvn:ru.entaxy.esb.system.core.permission/permission-api/${project.version}</bundle> | ||||
| 	     | ||||
| 	    <!--  | ||||
| 	    <capability> | ||||
|             osgi.service;objectClass=org.hibernate.SessionFactory;effective:=active; | ||||
|         </capability> | ||||
|         -->         | ||||
| 	</feature> | ||||
| 	 | ||||
| 	<feature name="entaxy-bc-impl" version="${project.version}" start-level="${bundle.startlevel.objects}"> | ||||
|  | ||||
|     	<feature dependency="true">entaxy-bc-api</feature> | ||||
|  | ||||
| 		<bundle>mvn:ru.entaxy.platform.security.jaas/entaxy-legacy-auth/${project.version}</bundle> | ||||
|  | ||||
|         <bundle>mvn:ru.entaxy.esb.system.registry.systems/system-impl/${project.version}</bundle> | ||||
|  | ||||
|         <bundle>mvn:ru.entaxy.esb.system.registry.connector/connector-impl/${project.version}</bundle> | ||||
|  | ||||
|         <bundle>mvn:ru.entaxy.esb.system.core.permission/permission-common/${project.version}</bundle> | ||||
|         <bundle>mvn:ru.entaxy.esb.system.core.permission/permission-handler/${project.version}</bundle> | ||||
|         <bundle>mvn:ru.entaxy.esb.system.core.permission/permission-component/${project.version}</bundle> | ||||
|         <bundle>mvn:ru.entaxy.esb.system.core.permission/permission-impl/${project.version}</bundle> | ||||
|  | ||||
| 		<!--  | ||||
|         <capability> | ||||
|             osgi.service;objectClass=org.hibernate.SessionFactory;effective:=active; | ||||
|         </capability> | ||||
|          --> | ||||
| 		<!--           | ||||
| 		<capability> | ||||
|             osgi.service;effective:=active;objectClass=javax.sql.DataSource;osgi.jndi.service.name=entaxy.esb.storage; | ||||
|         </capability> | ||||
| 		--> | ||||
| 	</feature> | ||||
|  | ||||
| 	<feature name="entaxy-bc-management" version="${project.version}" start-level="${bundle.startlevel.management}"> | ||||
|  | ||||
|     	<feature dependency="true">entaxy-bc-api</feature> | ||||
|     	<feature dependency="true">entaxy-bc-impl</feature> | ||||
|  | ||||
| 		<bundle>mvn:ru.entaxy.platform.backward-compat/blueprint-generator-service/${project.version}</bundle> | ||||
|  | ||||
|     	<bundle>mvn:ru.entaxy.esb.system.core.dispatcher/dispatcher/${project.version}</bundle> | ||||
|         <bundle>mvn:ru.entaxy.esb.system.management.bundle.jpa/bundle-service/${project.version}</bundle> | ||||
|  | ||||
|         <bundle>mvn:ru.entaxy.esb.system.management.bundle.manager/bundle-manager/${project.version}</bundle> | ||||
|         <bundle>mvn:ru.entaxy.esb.system.management.connector.manager/connector-manager/${project.version}</bundle> | ||||
|  | ||||
|         <bundle>mvn:ru.entaxy.esb.system.management.profile.manager/profile-manager/${project.version}</bundle> | ||||
|         <bundle>mvn:ru.entaxy.esb.system.management.bridge.profile.manager/bridge-profile-manager/${project.version}</bundle> | ||||
|         <bundle>mvn:ru.entaxy.esb.system.management.route.manager/route-manager/${project.version}</bundle> | ||||
|  | ||||
|         <bundle>mvn:ru.entaxy.esb.system.management.permission.manager/permission-manager/${project.version}</bundle> | ||||
|     	<bundle>mvn:ru.entaxy.esb.system.auth.basic.htpasswd/htpasswd/${project.version}</bundle>	 | ||||
|  | ||||
|         <bundle>mvn:ru.entaxy.esb.system.management/system-management-api/${project.version}</bundle> | ||||
|  | ||||
| 		<!--  | ||||
|         <capability> | ||||
|             osgi.service;objectClass=org.hibernate.SessionFactory;effective:=active; | ||||
|         </capability> | ||||
| 		 --> | ||||
| 	</feature> | ||||
| 	 | ||||
|     <feature name="entaxy-bc-modules" version="${project.version}" start-level="${bundle.startlevel.management}"> | ||||
| 		<bundle>mvn:ru.entaxy.platform.backward-compat/profile-management-service-adapters/${project.version}</bundle> | ||||
| 		<bundle>mvn:ru.entaxy.platform.backward-compat/profile-storage/${project.version}</bundle> | ||||
| 		<bundle>mvn:ru.entaxy.platform.backward-compat/connector-storage/${project.version}</bundle> | ||||
|     </feature> | ||||
|      | ||||
| </features> | ||||
| @@ -0,0 +1,60 @@ | ||||
| entaxy:back-comp = { | ||||
|  | ||||
| 	service = (service:get org.apache.karaf.features.FeaturesService) | ||||
|  | ||||
| 	if { $1'' equals "install" } { | ||||
| 	 | ||||
| 		# check repo | ||||
| 		_repo = (feature:repo-list | grep ru.entaxy.platform/platform-backward-compat) | ||||
| 		_repo_length = ($_repo length) | ||||
| 		if { $_repo_length'' equals "0" } { | ||||
| 			echo "Installing feature repo ru.entaxy.platform/platform-backward-compat/${project.version}" | ||||
| 			feature:repo-add mvn:ru.entaxy.platform/platform-backward-compat/${project.version}/xml/features | ||||
| 		} | ||||
| 		 | ||||
| 		_platform_feature = ($service getFeature entaxy-platform) | ||||
| 		_feature_id = $_platform_feature getId | ||||
| 		_status = ($service getState $_feature_id) toString | ||||
| 		 | ||||
| 		if { $_status equals "Uninstalled" } { | ||||
| 			echo "Entaxy Platform not found, installation aborted" | ||||
| 		} else { | ||||
| 			_bc_feature = ($service getFeature entaxy-backward-compatibility-modules) | ||||
| 			_feature_id = $_bc_feature getId | ||||
| 			_status = ($service getState $_feature_id) toString | ||||
| 			 | ||||
| 			if { $_status equals "Uninstalled" } { | ||||
| 				echo "Installing feature 'entaxy-backward-compatibility-modules'" | ||||
| 				feature:install -r -v entaxy-backward-compatibility-modules | ||||
| 				echo | ||||
| 				echo " --> DONE" | ||||
| 			} else { | ||||
| 				echo "Feature 'entaxy-backward-compatibility-modules' is already installed" | ||||
| 			} | ||||
| 			 | ||||
| 		} | ||||
| 	 | ||||
| 	} else { | ||||
| 		if { $1'' equals "uninstall" } { | ||||
| 			echo "Uninstalling feature 'entaxy-backward-compatibility-modules'" | ||||
| 			feature:uninstall -r -v entaxy-backward-compatibility-modules | ||||
| 			echo | ||||
| 			echo " --> DONE" | ||||
| 		} else { | ||||
|  | ||||
| 			_bc_feature = ($service getFeature entaxy-backward-compatibility-modules) | ||||
| 			_feature_id = $_bc_feature getId | ||||
| 			_status = ($service getState $_feature_id) toString | ||||
|  | ||||
| 			if { $_status equals "Uninstalled" } { | ||||
| 				echo | ||||
| 				echo " --> UNINSTALLED" | ||||
| 			} else { | ||||
| 				echo | ||||
| 				echo " --> INSTALLED" | ||||
| 			} | ||||
|  | ||||
| 		} | ||||
|  | ||||
| 	} | ||||
| } | ||||
| @@ -0,0 +1,5 @@ | ||||
| <!-- --> | ||||
| <configfile finalname="scripts/entaxy.bc.shell.script" override="true"> | ||||
| 	mvn:ru.entaxy.platform/platform-backward-compat/1.11.0/script/entaxy.bc.shell | ||||
| </configfile> | ||||
| <!-- --> | ||||
		Reference in New Issue
	
	Block a user